This project is a Dual DC motor driver compatible with Rosie platform. It includes both: the hardware design of an Arduino shield and the firmware to use it.
To have up and running this project you will need:
- Arduino UNO (or any other with the ATMega328 microcontroller)
- DC motor(s) with encoder
- Manufacture the shield
- PID speed control
- USB communication protocol
- Low-pass filtering in the encoders signal
- No support for quadrature encoders
- No information about the current consumption
Note: New versions of the board will solve both limitations.
- Buy all components in component_list.txt
- Print the dual layer PCB using top.pdf and bottom.pdf
- Soldier the components as shown in silk.pdf
Note: We produce this board in Cuba without Hardware Stores or Online Shopping. Believe us, is not that hard.
- The driver is compatible with any DC motor with operating voltage below 24V. You will need to plug 5 wires:
- Motor (+)
- Encoder Signal
- Encoder GND
- Encoder VCC
- Motor (-)
Note: We made all the tests of this controller using this kind of motors.
You can easily test the driver by selecting 'ArduinoMD' in your robot profile inside rosie. Otherwise you can use the driver standalone using the script 'ArduinoMD.py' contained in the rosie project.
If you want to change this design you will probably need the hardware schematics. Take a look at schematics.bmp.