Introduction: Wireless Robot V2 (Support WiFi & Bluetooth)
Step 1: Car Structure
I get The motors ,gear box and tires from two broken car kids toys from Scrap market nearby , they cost me about 10$ and I connect them using din rail and plastic as shown in the pictures.
Step 2: Connection Digram
Using the Serial pins of ATMEGA16 MCU is The Concept of this circuit and it consist from :
1- H-Bridge Motor driver using two L298.
2- Atmega16 MCU.
3- LEDs Driver using ULN2003.
4- Serial Bluetooth Module.
5- Serial-To-Ethernet converter.
6- WiFi Wireless access point.
7- Easy N surveillance IP cam.
8- 12 Volt battery with 7809 & 7805 voltage regulator for router and IP cam .
9- 6 Volt Battery for motors.
Step 3: H-Bridge Circuits
two L298 dual H-bridge driver connected as shown in the pictures .
the motors working on 6 volt with 2.4 Amp. maximum current for each.
L298 Data sheet attached.
Step 4: LED Driver
ULN2003 Darlington transistor arrays is a fast solution and provide 7 output.
The circuit shown in attached picture.
Datasheet attached.
.
Attachments
Step 5: Controller Circuit
The source code debugged by ATMEL AVR studio 4 with AVR MKII ISP .
The Scenario of the code depending on:
1-Enabling the RX/TX of ATMEGA16 MCU.
2-Sending the ASCII code from the PC or Tablet .
3-Translate the ASCII code by the MCU to a specific output in port A and port C.
The fuse bit for 16 Mhz external frequency resonator should be set to :High: 0xC9 , Low: 0xFF as shown in the attached picture.
Code:
/*
ATmega16 16MHz external frequency resonator
Baud Rate 9600 No Parity,1 Stop Bit,Flow Control:None
*/
#include <avr/io.h>
#include <inttypes.h>
#include <util/delay.h>
void USARTInit(uint16_t ubrr_value)
{
//Set Baud rate
UBRRL = ubrr_value;
UBRRH = (ubrr_value>>8);
UCSRC=(1<<URSEL)|(3<<UCSZ0); // Set Asynchronous mode,No Parity ,1 StopBit
UCSRB=(1<<RXEN)|(1<<TXEN); //Enable The receiver and transmitter
}
char USARTReadChar()
{
while(!(UCSRA & (1<<RXC)))
{
// do nothing
}
return UDR;
}
void USARTWriteChar(char data)
{
while(!(UCSRA & (1<<UDRE)))
{
//do nothing
}
UDR=data;
}
void main()
{
DDRC=0xff;
DDRA=0xff;
char data;
USARTInit(103); //for 16Mhz and baud 9600 UBRR = 103 and for baud 19200 UBRR = 51
while(1)
{
data=USARTReadChar();
if (data==0x71){PORTC=0b10000000;USARTWriteChar('Q');} //q in ascii
if (data==0x77){PORTC=0b00001001;USARTWriteChar('w');} //w in ascii Forward
if (data==0x65){PORTC=0b01000000;USARTWriteChar('e');} //e in ascii
if (data==0x61){PORTC=0b00000011;USARTWriteChar('A');} //a in ascii Left
if (data==0x73){PORTC=0b00000000;USARTWriteChar('s');} //s in ascii Stop
if (data==0x64){PORTC=0b00001100;USARTWriteChar('d');} //d in ascii Right
if (data==0x7A){PORTC=0b00100000;USARTWriteChar('z');} //z in ascii
if (data==0x78){PORTC=0b10000110;USARTWriteChar('x');} //x in ascii Backward
if (data==0x99){PORTC=0b11110000;USARTWriteChar('c');} //c in ascii
if (data==0x69){PORTC=0b00001001;_delay_ms(200);PORTC=0b00000000;} //i in ascii Forward
if (data==0x6A){PORTC=0b00000011;_delay_ms(200);PORTC=0b00000000;} //j in ascii Left
if (data==0x6C){PORTC=0b00001100;_delay_ms(200);PORTC=0b00000000;} //l in ascii Right
if (data==0x6B){PORTC=0b00000110;_delay_ms(200);PORTC=0b00000000;} //k in ascii Back
if (data==0x31){PORTA=0b00000001;USARTWriteChar('1');} //1 in ascii //2 LED On
if (data==0x32){PORTA=0b00000010;USARTWriteChar('2');} //2 in ascii //4 LED on
if (data==0x33){PORTA=0b00000111;USARTWriteChar('3');} //3 in ascii //6 LED on
if (data==0x34){PORTA=0b00001000;USARTWriteChar('4');} //4 in ascii //Red LED on
if (data==0x35){PORTA=0b00010000;USARTWriteChar('5');} //5 in ascii
if (data==0x36){PORTA=0b00100000;USARTWriteChar('6');} //6 in ascii
if (data==0x37){PORTA=0b01000000;USARTWriteChar('7');} //7 in ascii
if (data==0x38){PORTA=0b10000000;USARTWriteChar('8');} //8 in ascii
if (data==0x39){PORTA=0b00000000;USARTWriteChar('9');} //9 in ascii //All Off
else {}
}
}
Step 6: Serial to Ethernet Converter
I get the module from below website :
http://en.usr.cn/USRCN/RS232-serial-to-ethernet-converter-tcp-ip-module
Connect:
VDD to 5 Volt.
GND to negative.
RX to TX of ATmega16.
TX to RX of Atmega16.
CFG :Normal Mode when connected to positive , Configuration mode when connected to negative.
Also RS232 to TTL module required to configure this module .
You can download all the documents from the mentioned website.
For this Project I configure the setting for the converter as below:
Work Mode : TCP/IP clinet.
Module IP : 192.168.1.2
Subnet Mask:255.255.255.0
Default gateway :192.168.1.1 (Access point IP).
Parity/data/stop :None /8/1
Destination IP :192.168.1.3 (Laptop IP).
Destination Port: 8234.
Baud Rate : 9600
Step 7: Com-Redirector Software
Com-Redirector software used to create Virtual com in the Laptop because there is no direct physical connection to the laptop ,you can also use virtual serial ports emulator software from http://www.eterlogic.com/Downloads.html
Putty or hyper terminal software can be used to send information through this virtual serial port.
please watch the video for more information .
Step 8: Serial Bluetooth Module
I get the Slave Mode Serial Bluetooth module from below web site(all document included):
Pass Key:1234
http://www.elechouse.com/elechouse/index.php?main_page=product_info&cPath=90_91&products_id=603
About the software you can download android Bluetooth Controller software from android market ,its amazing software and easy to use.
https://play.google.com/store/apps/details?id=apps.BT&hl=en
Step 9: Switch Selector
in the end I connect a selector switch to select the wireless mode (WiFi or Bluetooth).

Participated in the
Instructables Design Competition
70 Comments
9 years ago on Introduction
sir can you please say me how to draw the data flow diagram for this robot??
9 years ago on Introduction
Hey, Sorry to ask but please.. can you mention the links of these items which are sold on online international shopping websites.. the links you mentioned is not delivered in my country(India)...for ex. Amazon, Flipkart, Snapdeal, Ebay.
ThankYou
(mustafa.saifee@live.com)
10 years ago on Introduction
Hi Husham Samir, you're project wonderful(Wireless Robot V2), i want to create it, can i have pdf and program this project. please send article to my email:mohsennoruzi@gmail.com. thankyou
10 years ago on Introduction
dear sir
nice and great work. i like to test this project, can i get PDF file of this full project?
please can you send it to my email. my Email is Indrajith105@gmail.com. thank you,
best regards
10 years ago on Step 6
hi
instead of using serial to ethernet converter, i'm using serial to usb and usb to ethernet combo. But i still don't know how to send control values from putty to the microcontroller for the controlling part. Can you help me plz?
Reply 10 years ago on Introduction
okay explain more how did you connect these two things together and how you connected to MCU.
for putty and how to send Information ,I previously told you to read the below tutorial from extreme electronic , every things mentioned there .
http://extremeelectronics.co.in/avr-tutorials/using-the-usart-of-avr-microcontrollers-reading-and-writing-data/
10 years ago on Step 7
How to send control the rover by putty? what values do i have to input in putty to move the rover? i saw your video but couldn't understand it. Help please!
10 years ago on Step 7
from where did you download this com redirector software?
Reply 10 years ago on Introduction
CD included with the converter
Reply 10 years ago on Introduction
but isn't the software free for download
Reply 10 years ago on Introduction
well I get it free when I bought the converter.
Reply 10 years ago on Introduction
Which converter?
Reply 10 years ago on Introduction
I'm sorry to bother you, but can u please send me the com redirector software as a zip file to my mail id.I will be highly grateful to you if you did.
Reply 10 years ago on Introduction
Step 6: Serial to Ethernet Converter
10 years ago on Introduction
I bought a TP-LINK wireless N ADSL2+ modem router for the wi-fi access point. I just want to know how to give a portable power supply for the router that will be placed on the rover.
Reply 10 years ago on Introduction
First of all check the DC voltage needed in your wireless TP link.
in my case TP link took 9 volt 1 Amp so I use L7809CT voltage regulator TO-3 type
http://www.alldatasheet.com/datasheet-pdf/pdf/22664/STMICROELECTRONICS/L7809CT.html
Reply 10 years ago on Introduction
Can you help me in configuring the router?
Reply 10 years ago on Introduction
read the quick manual for this router
set the wireless as access point (AP) and put an SSID name for it.
10 years ago on Introduction
I am stuck with pairing of Bluetooth module and mobile android app.
It is asking pass key again and again
Reply 10 years ago on Introduction
Hi if you are using the same bluetooth module ,the pass key is 1234
if it didn't work check the web site belong for this bluetooth module.