Maker Pro

Build a Smartphone-Controlled Pipe Robot With Arduino

May 25, 2016 by Muhammed Azhar

This smartphone-controlled robot is simple and cheap to make, and easy to program to boot.


The thought of making a toy robot must have crossed the minds of many children and the child in many adults. So what stopped you from making it? Technical difficulty? No worries. I have got just the tutorial for you. Here I will show you how to make a cheap two wheeled Arduino bluetooth robot. You can make this toy robot using a PVC pipe and joints (for making the body). It is simple to make and easy to program. The robot is heaps of fun to play with and many more functions can be added to it. My design makes it unique and different from other Arduino bluetooth robots. I made this toy robot not just for fun. I have plans to add an accelerometer, a camera, and some other small sensors to it. This will allow us to use this robot in various fields. This robot is only a basic design. My next plan is to upgrade this robot to v2.0 when I purchase the MPU 6050.

Potential Applications

1. Disaster management This toy robot has a simple design, only two wheels and a cylindrical shape. It can travel in most terrains and dangerous areas.

2. Military purposes It looks more like a piece of PVC pipe than a military spy gadget. This means we can use it as a spying agent to capture images and other data.
3. Home Surveillance This simple toy robot can double as a home surveillance machine if connected to the internet.

How Does the Smartphone-Controlled Robot Work?

The toy robot consists of the chasis (PVC), electronics that are neatly concealed within it and a smartphone app to control it. The main electronic components are:

  1. Arduino (Brain of the robot)
  2. Bluetooth Transceiver (For communication with Smartphone app)

The app given in the list software requirements allows you to give commands to the toy robot via Bluetooth communication. The signals sent from the smartphone are received at the robot end by a Bluetooth transceiver(HC-06/05). These signals are used by the Arduino to control the signals sent to the motor driver IC. This decides the rotation of either wheel. The LEDs are also controlled similarly using the app. The robot also has an ON/OFF switch.

Let's Start Drilling

Make a large hole in the center of each cap(closer). This is for placing the motors on each side. Also, drill 5 small holes around the periphery for placing the LEDs(use 4.5mm drilling bit) as shown in the figure. After placing. connect the 5 red LED's in parallel mode and solder it. Take the input wire for giving power to the LED set. Then connect the motor and screw it using the bolt.

Drill holes for motor shaft and LEDs

Insert motor in groove and tighten with bolt.

Drill five holes for fixing LEDs around the pipe and insert the white LEDs. Connect them in parallel and take the power cable out. Do this for both the pipes.

As shown in the diagram on right side, insert two 9V batteries(with clips) into one of the pipes and insert it into one end cap. From this side, you will have 5 pairs of supply wires coming out (end cap LEDs, pipe LEDs, motor and two batteries). Join this piece to the PVC coupler (middle piece) and take out all the wires from the open end as shown in diagram. You have now completed one side of the toy robot. Now join the second PVC pipe to the other end cap and take out the 3 pairs of supply wires (end cap LEDs, Pipe LEDs and motor). The next step is to put in the electronics for controller.

You can also use any other rechargeable batteries with/above 9 volt and 2 ah current (with same size or less).

Circuits and Electronics

Make a shield for placing the Arduino board after cutting the perfboard in round manner. Solder the female and male pins to use the required pins of the Arduino. Try to cut the perfboard and L293d module in round shape, same as the inner diameter of PVC pipe. This will help to fit it inside the pipe and avoid wastage of space.

Insert the Arduino into the socket. Then connect the Bluetooth module, LM7805 regulator IC, and L293d motor controller as shown in the circuit diagram below. Now we can see that there are two cables coming out of the board with 4 wires, these are going to be connected with the motor shield and the LEDs. I got the white cables from an old DVD player.

Wiring Instructions

Bluetooth module:

- "TX of Bluetooth Module" goes to "RX of Arduino"
- "RX of Bluetooth Module" goes to "TXof Arduino"
- "VCC of Bluetooth Module" goes to "5v of Arduino"
- "GND of Bluetooth Module" goes to "GND of Arduino"
- The State & Key pins of the BT modules are unused.

Motor controller:
- "C1-A of motor controller" goes to "PIN 8 of Arduino"
- "C1-B of motor controller" goes to "PIN 7 of Arduino"
- "C2-A of motor controller" goes to "PIN 6 of Arduino"
- "C2-B of motor controller" goes to "PIN 5 of Arduino"

- "Positive leg of red LEDs" goes to "PIN 10 of Arduino"
- "Positive leg of red LEDs" goes to "PIN 13 of Arduino"

- "Positive Terminal of battery" goes to "+v input of lm7805 regulator IC "
- "Negative Terminal of battery" goes to "Ground pin of lm7805 regulator IC "
- "Ground pin of lm7805 regulator IC " goes to "GND of Arduino"
- "+v output pin of lm7805 regulator IC " goes to "RAW of Arduino"

By the end of connection, the boards should look something like this. You can now stick the Arduino shield and the motor driver back to back using hot glue as shown in the third part of the figure below.

Programming the Toy Robot

And now, we need to program it. I am using the FTDI parallel to serial converter to program the Arduino pro. If you don’t have this converter, go through this instructable to program our robot using Arduino UNO.

Click here to download the program. Upload the sketch (.ino file) to Arduino pro mini. Feel free to edit it.

[NOTE: When saving, if you see .tmp as the file ext, rename it to 'Arduino_pipe_bot.ino']

In next step insert the electronic parts into the PVC pipe. You can wind the extra length of the jumper wires around the Bluetooth to save space.

Connect the remaining cables with the LEDs. After connecting all white LEDs and red LEDs together, connect the board with the battery and let’s put the board facing the motor controller into one section(where coupling is not included). In the last image we can see there is very little space on either side of the 9 volt battery and this is the place for bluetooth module and for lm7805 regulator. Now we have completed the wiring of all electronic parts. The main thing to be noted here is that the space available inside the PVC is very small. So we have to utilize all the small spaces remaining after connecting the battery and motors inside the PVC pipes. The last step is to add a switch to the toy robot. Make a rectangular cut on the pipe in the size of your switch and hot glue it after making the connection. Stick all the pieces of PVC together and you will have some thing that looks like this.

Zap on the wheels to the motor shafts, switch on the LEDs and you are good to go!!

The end result!! Your PipeBot

You can watch my PipeBot in action over here:

Related Content


You May Also Like