Arduino Muscle Car
Convert a cheap, dumb RC truck into an autonomous “smart” auto
Muscle Car Orangutan Installation
If you’re looking for an easy way to add DC motor control to your next Arduino project, look no further than the Orangutan LV-168 Robot Controller by Pololu. Equipped with two bidirectional, low-voltage, H-bridge motor controls, this ATmega168 board can handle many of the tasks that are typically sought by Arduino DIYers. Plus you won’t have to monkey around with lots of complex programming, either. Pololu offers a complete suite of Arduino libraries that provide easy-to-use high-level commands for tweaking every nook and cranny of the LV-168 board.
In addition to the two motor control outputs, the LV-168 features eight plug-and-use I/O ports, two LEDs (red and green), an 8×2 LCD, a programmable buzzer, three user-definable push-buttons, an analog potentiometer, and an onboard temperature sensor. Supporting these impressive hardware features are six Orangutan-specific Arduino libraries. Just import the appropriate library include link into your project and you can play Bach on the buzzer, display a room’s ambient temperature on the LCD, or drive the motor outputs forward and reverse.
As a demonstration of the simplicity of use and the powerful command structure exhibited by the Orangutan LV-168, we modified an inexpensive RC truck into a self-contained, “smart” robot cruiser capable of driving around a room, avoiding obstacles, playing a tune, flashing its lights, and displaying the room temperature.
Want to try your own Orangutan? Just download our Arduino sketch, load it on an Orangutan, wire up the truck, and away you go.
TIME: 1 HOUR
- Orangutan LV-168 robot controller (Pololu #775; $59.95)
- Sharp GP2D120 IR sensor (Mouser #852-GP2D120XJ00F; $9.74)
- Nikko Hummer 1:32 RC Truck (RadioShack #60-250; $7.97)
- Hookup wire (RadioShack #278-1224; $5.99)
NOTE: In order to program your Orangutan, you will need an AVR ISP programmer (e.g., Atmel AVRISP MkII).
Muscle Car LCD
- Follow Pololu’s extensive setup instructions for configuring the Arduino programming environment to use the Orangutan LV-168 robot controller.
- Open the RC truck and disconnect the wires for the drive motor and the steering magnet.
- Solder two wires to the positive (+) and negative (-) battery pack terminals of the RC truck. These wires should be routed outside the truck and inserted into the power input terminals of the Orangutan.
- Route the drive motor wires and the steering magnet wires outside the truck and attach them to the LV-168’s “motor 1” and “motor 2” outputs, respectively. I was unable to get the magnetic steering control on our truck to work properly. Therefore, I elected to permanently “fix” a slight right turn into the front steering wheel’s alignment.
- Mount the Sharp GP2D120 IR sensor in I/O line C4 of the Orangutan.
- Insert two AA batteries into the truck and turn on the LV-168’s power switch. The blue power LED should illuminate. If you don’t see the power LED, check your wiring from the car to the Orangutan.
- Connect an AVR ISP programmer to your PC. Start the Arduino programming environment and copy our sketch to your PC. Download the muscle car sketch onto the Orangutan. Disconnect the RC truck from the AVR ISP programmer. Set the RC truck on the floor and press the power switch.
Muscle Car Robot
This tricked-out ride will play a tune, display a splash screen, flash its lights, then dart around the room. Both the room temperature and the distance measured with the Sharp sensor are displayed on the LCD. When an object closer than 30cm is detected by the sensor, the motor speed is reduced and the Hummer is driven in reverse. This “backing up” action will continue until the path in front of the truck is clear of obstacles. Happy trails.