PCB Sent to China

Render courtesy of KiCAD’s 3D viewer

Last week I blogged that there wasn’t enough room in the robot hull for the control board. Well, I finally made it fit. I reduced the circuit a bit (I decided some of it was redundant), I used some smaller components (mainly the DC-DC converter, but also some capacitors), and I realised I could extend the board by 10mm within the existing design. I have finished the board design and sent it to JCLPCB to have it manufactured. All available digits are crossed for a positive outcome!

The board was developed in KiCAD. This is new to me, but I found it pretty easy to get the hang of. I found this video tutorial to be particularly useful.

The circuit has the following features:

  • The main controller is a Teensy 4.1 Arduino compatible. It is mounted so that it’s USB port will be exposed towards the back of the vehicle; this will make it possible to re-program it in-situ.
  • There is a JST socket which will connect to the Pi’s header. It connects the UART on the Pi to a UART in the Teensy. There are two further GPIO connections, one to indicate that the Pi is running, one to request that the Pi closes down. Power for the Pi is also provided by the connection. In operation, the Teensy combines all the robot functions which the Pi accesses via a serial protocol.
  • A LiPo protection circuit. If the LiPo voltage goes too low then this circuit can close the Pi down, then chop the power to the whole robot. The circuit expects to be connected to a 3S LiPo (which was chosen to match the AX-12 servos used).
  • Four independent 11A motor controllers for the robot drive wheels. The motors have encoders fitted, and this circuit will maintain PID control for each. This system can also be used to calibrate distances travelled.
  • An IMU (Intertial Measurement Unit). The robot uses this to understand it’s orientation in the World. It is mainly used to calibrate turns.
  • A serial connection (using the SBUS protocol) to a radio control receiver.
  • An ”implement” connector. Implements are added to the robot for some of the games. This connector presents a 3v3 serial connection and power supplies for the implements.
  • A pair of AX-12 servo bus connectors. These servos provide more torque and more control options than regular radio control servos. They are accessed via a proprietary serial protocol which the Teensy can provide via an interface on the board. The base robot uses a pair of AX-12 servos to lift the front bulldozer blade, and further servos will be used in the Eco-Disaster barrel lift.
  • An 3v3 serial interface to a further board that is mounted in the ”chin” of the robot. This board interfaces to three ToF (Time of Flight) sensors.
  • A 3v3 serial and power interface to the robot’s decorative lid. The lid will have lights and a sound system (to play the Thunderbirds theme tune). Also, the little Doofus pilot has a head turn servo.
  • A start button and a stop button interface.
  • A status LED connection.

Leave a comment