Dual Motor Controller Circuit Board

This page shows details of the construction of the circuit board for the dual motor controller prototype shown on the previous page. The result of this effort will be used in the robot rover I will build shortly. Although the circuit could be used to interface to any 2-motor hardware, the design is biased toward a 2-wheel differential drive system. This board provides for 2-channels of PWM speed control, direction control via relays, and speed feedback via an optical chopper and cleanup circuit. The relays and FETs can handle several amps of current, although this is not necessary for the motors I am currently using, and the wiring would probably melt long before the mechanical or solid-state devices fail.

Here is the layout drawing for the board:

Headers, relays, and sockets in place:

Most of the short connections:

The passive components and rest of the short connections:

Note: Make sure to connect all unused inputs of CMOS ICs (such as the 74AC14 Schmitt Trigger chip used at upper left) to V+ or V-, or they may create considerable spontaneous noise.

The longer connections:

The transistors and ICs... everything done!:

Board size is ~85x95 mm:

Back of the board:

The final completed layout, showing a few corrections from the initial layout:

The completed circuit board in action. Only one side of the board (1 motor) is currently hooked up. Motor power is from 12 V batteries. The control and feedback interface is powered by the 5 V microcontroller board. The microcontroller (Atmel AVR ATMega32) is optically isolated from the motor electronics:

Table and plot of motor speed vs. PWM duty cycle (255 is 100%) for both directions:

I am particularly pleased by the good control at the slower speeds. The rotating device provides a small friction load which is non-constant due to warps in the wheel, and actually squeaks a bit while it turns. Although the device is not very much like an actual robot, the motor is not freewheeling.

Next to do are:

  1. Replace the serial cable with a Bluetooth radio.
  2. Replace the microcontroller development board with a custom circuit board, using another Syntax PC board, and a 9 V battery.

At that point, all the electronics for the robot will be complete, and I can begin to work on the chassis.

İSky Coyote 2006