It's a full H bridge.
A 1/2 bridge would be a high side and low side driver connected together to one motor lead. Usually half-bridge driver chips are common and you can build either a H bridge, 3-phase bridge, bipolar stepper, etc. out of several of them, or use them as general-purpose high or low side spare outputs. They're also used to control recirculation in solenoids (so the high side and low side alternate when recirculation is on, but the high side doesn't come on when recirculation is off).
A full H bridge has a half bridge connected to each side of a brushed motor (with the motor facing with its leads to each side in a schematic, this forms an 'H'). With this arrangement, the motor can be switched between off (both sides connected to ground or +batt), positive (m+ connected to batt and m- connected to ground), or reverse. So the motor can be PWM'd to any voltage between battery and the inverse of battery.
To save on PWM channels (this arrangement could require 4 PWM channels if built with discrete MOSFETS), some bridge chips have control inputs which are arranged to allow simpler H bridge control. One example has an input for each 1/2 bridge which selects + or -, and two enable inputs which shut down the bridge entirely (or turn on both of the ground FETs in some versions). For sign-magnitude rectification you can set the Enable and one of the bridge control pins as GPIO and the other bridge control pin as PWM. Depending on which half the GPIO 1/2 bridge is set to, determines the direction of the motor, and PWMing the other half determines the PWM voltage. For locked anti-phase, you need two synchronized PWM channels which alternate (so during the 'on' period the motor would be connected to + and -, and the 'off' period it's connected backwards, instead of both sides to ground or +batt during the 'off' period). Two enable inputs are provided so an external ASIC or logic circuit (e.g. processor watchdog or power supply monitor) can shut down the bridge independent of the micro.
With two full H bridges you can drive a bipolar stepper motor. In this case, each H bridge is connected to one winding. When stepping, the windings are turned on in either direction or off. This can be done with a lot of GPIO pins and a SW routine called at each step, or an eTPU function to generate the step outputs (this requires an eTPU channel for each pin, which would be 4).
H bridges are also useful for more than just ETC throttles, really new engines are using them for other valves like new EGR valves, VNT turbos, and even turbo wastegates for more precise control. You can also have multiple ETC throttles (e.g. one per bank or truly individual throttles). I'm stuck with the older 565 ECU because it has 3 H bridges, the newer modules only have 1.
For the majority of ETC failures, the solution is not to shutoff the engine but to go into 'power free' mode where the throttle power is removed but the engine still runs at the throttle spring position. This is usually enough to drive at a low speed.
You can either go with basic ETC where there's just a table between the pedal and the throttle, possibly with overrides (e.g. we have an override when in DFSO to increase throttle request by about 25% to reduce engine braking), or 'torque-based' control. With torque based control, the pedal input is converted into a torque (in Nm) and it is passed to the engine management which calculates everything required to hit that torque. Throttle is a side effect of this calculation, it can also use spark advance, F/A ratio, etc. as necessary and depending on engine limits (e.g. min spark advance for EGT, lean limit, rich limit, max torque at this altitude and RPM, ...). In general throttle is the main output, but for supercharged engines the throttle and supercharger bypass together control the torque (bypass is open until throttle gets to near wide-open, then bypass takes over to control engine with boost).
Torque control requires some model-based engine control, especially for airflow. You could do some rudimentary torque-based control by mapping pedal values to desired MAP or charge without fully converting to torque. If you have throttle flow data vs TPS you can solve back for TPS required for target MAF using a few nozzle flow equations. The TPS request will vary based on RPM since TPS is a flow not a charge. This will also require a throttle upstream pressure sensor for boosted engines.
_________________ "Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack
"Any sufficiently advanced technology is indistinguishable from magic" ~Arthur C. Clarke
|