1983 Porsche 911 SC Targa

Monday, May 19, 2014

Controlling a Blower

I mounted a blower to force cooling air through the motor.
 Blower and intake filter.

The motor screen on the commutator side is replaced with a solid band with duct flange.

Motor and duct, viewed from below.

Now I need a way to control the blower. One option is to use a relay to turn the blower on when the ignition switch is turned on. Another way is to use a programmable speed controller to continuously vary the speed of the blower motor. Guess which option I used? Here is the speed controller:

I need to use a microcontroller to program the speed of the blower speed controller. A microcontroller is a small computer on a chip. It can read signals, do basic math and logic, output 0 to 5 volt signals, and tell time (really). 

The Arduino is connected to the temperature sensor that comes built in to the WarP 9 motor. The sensor is a thermistor – a special resistor that changes resistance as the temperature changes. The Arduino measures the resistance of the thermistor, and I programmed a conversion routine to convert the resistance to temperature based on the curve provided by the thermistor manufacturer.

The Arduino compares the measured temperature to a target temperature – I selected 120 degrees F as my target – to determine the required fan speed. I’m using a feedback control loop, called PID. The Arduino sends a signal to the blower speed controller.

I also connected one of my dash gauges to the Arduino. The gauge once displayed oil level, but now will be displaying motor temperature. The Arduino sets the output signal to the transistor to set the gauge needle based on the measured motor temperature.

My friend Ryan is converting a Volkswagen Beetle to electric. He is going to rig up a similar motor blower for his project. So we took over the kitchen, honed our soldering skills, and turned our ideas into reality.

I call the result “The Octopus” because there are eight bundles of wires going everywhere.

I installed the system and took a few test drives to see how everything is working. I plotted motor temperature and blower fan speed for a 15 minute drive. About 5 minutes into the drive, the motor temperature reached 120 degrees F. I programmed the system to wait until blower program speed is at 40% before turning on the blower. The blower doesn’t push much air below this speed. After the 15 minute drive, I let the car sit with the blower running to see how long it would take to cool down. I had been hoping for a little bit more cooling capacity. It looks like the blower will be turning at full speed once the motor reaches 120 degrees. The ambient air temperature that day was 90 degrees.


  1. Joey,

    Do you have the spec sheet on the thermistor in the Warp 9? I thought it was just an on off that gave an indication when the motor reached a certain temperature but if it can be hooked to a meter, it would be great to monitor motor temperature on one of the temperature meters sold on light objects. A wire could be hooked up off of the contactor in the meter to drive one of the lights in the instrument cluster of my Fiero.



  2. The shop manual for the warp motor specifies the thermistor. Here is the WarP shop manual: http://www.go-ev.com/PDFs/Shop_Manual2.pdf

    Here is the datasheet for the thermistor - KTY84/130,113:

    I haven't searched, but I've heard that this sensor doesn't match up well with stock temp sensors. A $25-30 Arduino Uno can read, convert and drive a standard gauge fairly well.