Throttle Control

The mechanical throttle linkage will be replaced by an electrically actuated system. A conventional throttle pedal will be used, but will have a simple spring to provide the appropriate tension. A linear potentiometer will be used as a throttle pedal position sensor.

The TWM Induction system has a separate throttle body for each cylinder, each of which has a butterfly valve that must be opened and closed as the throttle pedal is depressed. The four throttle bodies on each side of the engine are connected axially so that all four open and close together. A lever (approximately 1" long) mounted between the front and back two throttle bodies on each side connects to the other side of the engine through a connecting rod. This allows the butterflies on the two sides to operate together. Normally, the throttle cable is also connected to the lever on one side and pulls the butterflies open. Torsion springs are used to provide spring force to close the butterflies although these provide inadequate force to close them quickly, particularly with the throttle cable attached.

Our plan is to mount a geared motor between the two rows of throttle bodies. A lever on its output shaft (of the same length as the levers on the butterfly valve shafts) will connect to the connecting rod between the two rows of throttle bodies. We also plan to redesign this connecting rod to use ball bearings where it connects to the levers to reduce friction.

We've selected a brushless DC servo-motor from Faulhaber which is capable of delivering 6.67oz-in of torque at 22,000 RPM. This motor is designed to run at 100% duty cycle. Connected to this motor is a planetary gearhead with 134:1 reduction ratio. This gearhead operates at 60% efficiency. With the gearhead, the motor will be capable of sweeping the 75 degrees (from full closed to full open throttle) of throttle body butterfly valve travel in approximately 100 ms (taking into account acceleration and deceleration at the beginning and end of travel). Available torque at this speed is over 30 inch-pounds, well more than enough to open and close the butterflies.

Brushless DC motors differ from conventional DC motors in that the coil acts as the stationary stator and the magnets rotate. This provides two key advantages over brush-type motors - reliability is much higher since there are no brushes to wear out, and the motor is easier to cool since the heat producing coils are on the outside of the motor. The disadvantage is that they must be electronically commutated, making motor control considerably more complex and expensive.

We've decided to use a motor controller produced by Faulhaber specifically for this motor in order to reduce our design complexity. The motor controller uses an analog input signal to control motor speed and direction.

Our throttle control circuit will consist of two BasicX-24 microcontrollers. One will be programmed to implement the real-time servo loop with the throttle position sensor and the motor controller. In other words, it will accept commands from the other processor to set the throttle at a specific percentage and will send signals to the motor controller to adjust the throttle position to reach and hold that throttle open percentage. This is a little more complicated than it sounds since the processor must control the motor speed to provide smooth acceleration and optimal throttle response, and must prevent the throttle motor from overshooting the goal and from hitting the limits of full open and full closed.

The second microcontroller will be programmed to implement the various functions we have planned. These include:

Throttle pedal position mapping for casual and aggressive driving. For aggressive driving, the throttle pedal position will map linearly to the throttle opening and throttle response will be as fast as possible. For casual driving, the throttle response will be slowed slightly, and a non-linear mapping curve will be applied to the throttle pedal position so that more pedal motion is required for the same increment in throttle position at the low end of the curve).

Cruise control. We will probably implement "hold speed" as the only cruise control function, which will be disabled when the brake or clutch is engaged. This will adjust throttle position as necessary to maintain a constant engine RPM. Pressing the throttle pedal to a position which would result in a higher throttle will override the cruise control, but will not disengage it.

Valet mode. This will limit the throttle to some fixed percentage of maximum (probably around 30%) and will also be useful for new drivers learning to drive such a powerful car.

Downshift rev matching. This is the most interesting and potentially useful feature. A button on the steering wheel will cause the throttle to increase until the engine revs match the calculated revs for the current speedometer speed. The revs will be maintained for up to 2 seconds or until the clutch is disengaged, at which time the throttle will slowly back off until the throttle pedal is depressed enough to cause a higher throttle input. We had originally planned to have the microcontroller estimate the gear based on RPMs required and current speed, but we came up with a relatively easy way to add micro-switches to the shift lever to determine the shift lever position exactly.

One of the concerns we've had regarding electronic throttle control is that there are so many failure modes that could cause the throttle to stop working. It would obviously be bad if the throttle were stuck on. So, we've come up with two "fail-safe" circuits which will kill the engine if the throttle control system fails. The Electromotive TEC-II includes a switched input which is normally connected to the Ignition switch. In our case, we will connect in series with a relay which will be opened in the event of throttle failure.

Microcontroller failure. Each of the two microcontrollers will be coded to run a real-time processing loop. The exact time is TBD, but the specified target is 10ms. As part of this est 10ms loop, the processor will trigger an "I'm alive" output signal. This signal, from each of the two processors, will clock a counter. Every 50ms, this counter will be checked and cleared, and if either processor has failed to issue the correct number of triggers (+/- one count), the ignition system will be turned off, stalling the engine.

Closed loop failure. To test for a hard failure in the entire system, we need to include the motor controller, motor, linkage, and throttle position sensor in the equation. The throttle position sensor will connect to a high pass filter followed by an integrator which will determine how much change has occurred in the throttle position every 50ms. If this does not exceed a predetermined amount, it will be assumed that the throttle system is no longer functional and the ignition system will be turned off. To insure that this circuit does not incorrectly sense a failure when the throttle has simply not changed, a small (almost imperceptible) amount of throttle modulation (throttle dither?) will be added by the microcontroller if the throttle position would not have changed for some other reason.

The fail-safe circuits will be implemented with the minimum number of components using very simple analog and digital circuits to reduce the odds of circuit failure here. All circuits will be potted and shock mounted to reduce the chance of failure due to vibration.