Older blog entries for Spoons (starting at number 1)

30 Mar 2004 (updated 30 Mar 2004 at 23:08 UTC) »

I have uploaded some of the more re-useable code from my robot to my website. This currently comprises user classes for the OOPIC microcontroller, for easy control of:

  • Al Williams PAK-II floating point co-processor
  • Milford Instruments serial LCD module
  • 4QD NCC-35 motor driver board

The code is under the GPL license, so please feel free to use, modify, redistribute, tweak to your heart's content!

I intend to keep uploading any useful robotics-related code to that site, so if this interests you, do pop in and have a look. Check out the downloads page at: www.octrix.com

The robot now has two OOPIC-based CPU boards, one designed to specialise in driving the motors, and one as a master controller CPU.

The motor OOPIC board sends PWM out to the 4QD motor controller boards, and monitors the current drawn by the motors, and signals from a quadrature encoder mounted on each drive shaft.

The master controller OOPIC has RS232 interfacing electronics, and will eventually interface to a central PC/104 system running Linux, via the SCP protocol. Its job is to receive messages from the PC/104 system and route them to the appropriate board via I2C, for example to control the motors or to request sensor information.

I've also built a maths co-processor board, based on the Al Williams PAK-II, which will be used by the OOPIC boards for fast flaoting-point calculations. These are required for a PID speed control algorithm on the motor board (although not strictly necessary, floating point will make this considerably easier), and by a board yet to be built which will control a set of sonar sensors mounted on pan/tilt units. The board will use the maths co-processor to perform geometrical calculations to merge data from sonars placed at different positions around the robot.

The next job is to write and test the PID speed control software.

Share this page