4WD platform


Few months back I was working on a “table-top” robotic platform and I posted some stuff about various parts of the project. Never posted a picture on how actually looks…

4wd 002

 

I started this project as I always wanted to have a compact development platform that I can use to test or develop new features on my desk fast and not wasting time, resources and energy building a “final” solution that is very inconvenient to to use for testing and debugging and may need to change it several times.

Since i try to make all my code as much as possible generic, separating the low level MCU access by using as much as possible macros, whatever I write on LPC12xx will work on LPC17xx or even AVR with minimal or no changes.

So back to my toy…

Is a small board (10×8 cm) with everything self-contained:
– 1 LPC1225 (Cortex M0, 8 Kbytes RAM, 64 Kbytes FLASH);
– 1 32 Kbytes I2C EEPROM;
– 4 Quadrature Encoders;
– 4 Micro-gearbox Motors (100:1);
– 4 H-bridges to drive them (2 Amps per motor at peak);
– MPU-650 as Accelerometer and Gyro (3+3);
– 1 XBee socket (can be used for Bluetooth, WiFi or XBee);
– 1 LDO for 5v and 1 LDO for 3.3;
– 4 headers for IR proximity sensors;
– 4 LED for directions, 1 on each corner;
– 1 I2C header;
– 1 SPI header;
– 2 UART headers (1 shared with XBee socket);
– 1 2×5 JTAG header.

4wd 001

Most of the basic functionality is working:
– PWM control for each of 4 motors;
– PID control for each motor;
– Over-current monitoring;
– Store configuration data to EEPROM:
– Support for MPU-650, calculate yaw, roll and pitch angles;
– Serial communication with host over XBee/WiFi;
– Battery monitoring;
– Support for Over-The-Air firmware update.

Is still in prototype stage, already redesigned the layout and fix some initial design issues to get it more compact and have space to fit the battery on top of the PCB also added SPI RAM support for maps (?), no GPS though. Anyway, the newer version will be able to take an extension board on top, for future development…

When I’ll have time will connect one of my CTS modules and write some code to get it running.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s