Tech Explorations™ Make an Arduino remote controlled car
You made an LED to blink, played with sensors, got some motors to spin. You know your way around the Arduino IDE and have a good grasp of what the Arduino is all about
How about you turbo-boost your Arduino skills by building your own remote controlled car?
This course will take you step-by-step and show you how you can take a typical off-the-shelf (boring) RC car and convert it into an Arduino-powered super-fun lab on wheels.
I call it Ardu-auto.
With Ardu-auto, learning electronics has never been more fun. Every step of the way, you will learn practical facts and skills that will help you elsewhere in your making career. Based on an of-the-shelf cheap RC car, you will use Arduinos, components, software and prototyping techniques to build your own custom creation.
Here’s what you will learn:
- How to use proximity sensors to detect obstacles
- How to allow for two Arduinos to communicate with each other using RF24 type modules
- How to control DC motors
- How to use a Wii Nunchuck
- How to write a communications protocol
- How to modify and adapt off-the-shelf raw materials for your project
- How to integrate components into a complete system
This course is designed for people already familiar with the Arduino. If you are new to the Arduino, I strongly recommend that you first look at my other courses (Arduino Step by Step and Beginning Arduino) before attempting this project!
The Wii Nunchuck is an attachment to the Nintendo Wii main remote game controller. Although it was designed to be used connected to the Wii Remote, hackers have been using it as a stand-alone controller for their projects thanks to its great features and open architecture.
This lecture will show you how to use the Nunchuck with the Arduino
The Sketch is available on Github.
Test your knowledge, answer these questions.
In this lecture I'll show you how build a simple circuit that controls a simple DC motor.
The Sketch can be downloaded from Github.
Test your knowledge, attempt these questions.
In this lecture I will discuss the ultrasonic sensor, which is essentially a "land sonar": it emits a high frequency sound, far beyond what the human ear can hear, and waits for the echo.
The sensor I will demonstrate is the HC-SR04. You can find these on eBay for less than $2 each.
You can download the sketch for this lecture form Github.
Check your knowledge, take this quiz!
In this lecture I will show you how to use the NRF24L01+ wireless breakout module. This module makes it easy to add highly reliable and cheap wireless communications to your Arduino project.
You can download the two sketches for this lecture from Github.
The micro-controller is the “brain” of Arduauto, and you will need 2 of them: one for the remote control, and one for the car.
In this lecture, I will discuss some of the main considerations of choosing a micro-controller that will satisfy the basic requirements for each role.
We want Arduauto to be an entirely mobile system, and that means batteries. But what kind of batteries?
These days we are spoiled for choice. Not only there are many different types of batteries suitable for portable electronics, but also the Arduino boards specifically can happily work with, mostly, all of them.
In this lecture, first we’ll have a look at the viable battery technologies we could use in Arduauto.
Next, we’ll break down the system into the parts that influence the battery choice decisions, analyse their individual requirements, and select an appropriate battery for each one.
In this section, I will show you how to setup a bare minimum prototype of the final remote control car system. This prototype will be setup so that we can test two of the basic components: the two transceivers and and the Wii Nunchuck. We are not going to worry about the motors yet since those will come into play later, only after we can confirm that the instructions that are generated on the Wii controller are passed reliably to the receiver part of the system, and are acknowledged for.
This lecture is about setting up the transmitter. The next lecture is about setting up the receiver.
You can download the sketch for this lecture from Github.
Let’s move on to the receiver. We know that the transmitter will be sending packets containing 7 bytes each, and the payload for each of these bytes. The bare bones receiver, in terms of hardware, will only involve connecting the transceiver module to the Arduino.
You can download the sketch for this lecture from Github.
Great, we have the bare transmitter and receiver, let’s fire them up and make sure they work before adding any more components.
Final assembly - Hardware
This lecture discusses some issues around what kind of remote controlled car you should get that suits well this project. If you already have an old RC car, consider using that, but still review this lecture for the background info.
This lecture goes through the basic components and tools that you will need for the assembly of Ardu-auto that follows. If you don't have some of these tools (or don't want to get them/use them for safety reasons) you can still come up with alternatives that best suit your particular conditions and setup.
We are now starting to dig into the RC car. First, let's get rid of all the electronics except for the motors.
Let's connect the 2 motor wires to the motor controller.
Now we'll stick the proximity sensor to the front of the car using the hot glue gun.
We are almost done with the work on the top side of the car. In this lecture we route the wires for the motors, the sensor and the transciever module before we start work in the bottom side.
Let's recap what we have done so far before moving onto the main part of the car assembly (which is to connect all the component to the Arduino, and provide power).
Routing the ribbon cable that connects the motor controller to the Arduino.
In this lecture I show you how to connect all the car components to the Arduino Pro Mini. The Arduino is placed in the ex-battery compartment of the RC car.
The schematic for the Arduino Pro Mini, sensor, RF24 module, motor controller and batteries can be downloaded from the Downloadable Materials page.
Setup power, which includes connecting dedicated switches to the Arduino and the motor controller.
Tidy up the wire mess.
Mount the switches on the roof of the top cover, and attached the cover to the car.
Assemble the remote controller.
The schematic for the Arduino Pro Mini, Wii controller, RF24 module, and batteries can be downloaded from the Downloadable Materials page.
Final assembly - Sketch
In this section we look at the sketch for Car.
The final sketch for the car is available on Github.
In this section we look at the sketch for Remote Controller.
The final sketch for the controller is available on Github .
Let's take Ardu-auto out for a test drive. We'll look for electrical and software problems. You will have to fix these problems on your own.
Sorry about the dog noise!
In my demo, you saw that the motors are not properly connected. Pushing the joystick forward results in the car going backwards. Pushing the joystick to the left results in the car turning to the right.
How can you fix this?
At this point, the project is complete, but your work is not done. There are a lot of improvements you can make, and in this lecture I discuss some of them.
I would love to hear your ideas for more improvements!