For the A4WD1 Robot platform project presented here, I decided to skip the Sabertooth 2X12 R/C Regenerative Dual Channel Motor Controller, and build a dual H-Bridge board to control the motors. The reason I did this was because the Sabertooth requires a UART connection, and I had none available.
An H-bridge is an electronic circuit which enables a voltage to be applied across a load in either direction.
One single H-Bridge can be used to control a DC motor. By applying voltage in either direction (+/- or -/+) that is reversing the polarity, we can have the motor run forward or backward.
The robot I'm currently working on uses a differential system, so there are two sets of motors that can run both forward (and the robot goes forward), backward (resulting in backward movement) or one moves forward and the other backward that would make the robot turn (either left or right). To control the both sets, a dual h-bridge board was required. This design is based on my previous h-bridge, available here.
A quick test:
PCB available here: hbridge
H-Bridge can limit the motor current
Resistors R1, R2, R5 and R6 can be used to control the amount of current available to the motors. Using the default 1K value, there might not be enough current to allow steering (turning around while standing by using the differential system):
Changing the resistors to lower 150 Ohm values, produces a completely different result: more current is available to the motors, expressed in higher torque and the steering movement is successfully executed:
So keep this in mind when building your own. Controlling the current is a great feature to use when we want to limit the amount of current available to the load. We can use it to avoid overheating or for other applications.
But for this particular construction, the motors need the extra current to allow turning the robot correctly.