Drivetrain

We designed an H-bridge motor driver circuit with safety FET's (to prevent shorting) to create a differential drive system. This enables us to drive and steer with one system by adjusting the rotational speed of each motor.

H-bridge schematic.

The above is our H-bridge schematic for one motor. We used our bluepill to send pulse width modulation (PWM) signals which allows us to use a single digital output to produce an analog voltage by digitally controlling the percent of time that the output is high. Thus this time averaged voltage can be roughly continously variable which allows us to control the rotational speed of the motor.
From the schematic, you can see that we also used an MCT6 octo-isolator which transfers electrical signals between isolated signals through light. This was used to protect our bluepill from noise and shorts as we powered our LT1161 gate driver chip with ~9V.

There are also capacitors along the ground lines on the motor side to reduce noise. Another safety feature is in the VN2222 mosfet which acts as safety gates (when one is open the other is closed and vice versa).