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...
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. ...
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 shee...
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-Send...
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.
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?
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/
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!
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.
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
Hi sameer, When i'm using your code , its showing assembly failed. Does that mean that there's something wrong with the code or something wrong with what i did?
in project type you should chose AVR GCC . go to below article in and see the pictures in step 5. http://www.instructables.com/id/Bipolar-Stepper-Motor/
Hi you are using xboard 2.0 from extreme electronic web site and there is a full tutorial explain how to use USART in below : http://extremeelectronics.co.in/avr-tutorials/using-the-usart-of-avr-microcontrollers-reading-and-writing-data/ if you make the above test successfully ,you can just add additional command to make the motors on. also below tutorial represent your project and its Xboard 2.0 http://extremeelectronics.co.in/avr-projects/pc-controlled-robot/ don't confuse your self between two web site ,just use the web site that compatible with your circuit which is extreme electronic and when you finish remove the serial wires and connect them to the serial to Ethernet converter in order to make it wireless. about the error I test this code again on 14 april-2013 and there is no problem in the code (check my comment in that date and see the build result). check you might forget the bracket while you copy the code.
I don't know ,I didn't use this type before but the programmer used with AVR studio to burn ATMEGA MCU STK500 & STK 600 (Development Kit). or ISP (in system programer ) like AVR MKII ISP or JTAG MKII
the best suggestion ,the cheapest and the fastest is to buy arduino development kit and program your MCU directly without a programmer device because there is a USB built in the development kit ,so there is no need to buy a programmer device . also the code in arduino much easier from AVR studio and you will get better support and solution in the websites . after programming your MCU you can remove it and put it in your circuit or you can keep it in the development kit and use it as your circuit because its cheap. search in youtube on (arduino tutorial ) and you will see how many things you will be able to do with this kit.
you can use AVR studio to burn your MCU. check the pictures in step5 for the below articles ,it will give you some guide line: http://www.instructables.com/id/Bipolar-Stepper-Motor/
for the programable device I use AVRISP MKII if you use arduino development kit you will not need any thing from these ,you can directly connect the usb and burn your MCU.
in AVR studio 4 click on build or F7 it will show you 2 warning below (just ignore them ): Build started 14.4.2013 at 18:56:31 avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT test1.o -MF dep/test1.o.d -c ../test1.c In file included from ../test1.c:8: d:/winavr-20100110/lib/gcc/../../avr/include/util/delay.h:85:3: warning: #warning "F_CPU not defined for " ../test1.c:43: warning: return type of 'main' is not 'int' avr-gcc -mmcu=atmega16 -Wl,-Map=test1.map test1.o -o test1.elf avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature test1.elf test1.hex avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex test1.elf test1.eep || exit 0 avr-objdump -h -S test1.elf > test1.lss
then click compile (Alt-F7) then go to build -export make file . it will generate the HEX file
don't forget to set the fuse bit according to what you have in your circuit (external frequency resonator or crystal clock ) ,any mistake in this step you will lose your MCU.
hello sameer... I've got a few more questions for you- 1. i'm planning on adding an ultrasonic hurdle detector to my rover..do i neet some extra lines of codes for that too...? 2. I'm using a xboard 2.0 from extremeelectronics.com as the pcb board on my rover but it only has a single L298 dual h-bridge driver and i need to control 4 motors...If i add one more L298 driver will it work? 3.Will ur code be compatible with the xboard 2.0?
1- yes ,you will need extra code for ultrasonic and it will be more complicated ,so I suggest you to finish the first step then think about ultrasonic. 2-I didn't work with xboard 2.0 ,so I don't know but if there are a free four I/O pin in MCU ,you can connect additional L298 circuit but you have to ask the person who design the board. 3- I don't know but in case you want to try ,just be careful for clocking issue, I am using External frequency resonator (4 pin) not crystal (2 pin) ,so the fuse bit will be different and any mistake in this step you will lose your MCU.
One more question... Is it necessary to use Cisco Linksys WRT54GL Wireless-G Broadband Linux Router or can i go with any other because i have to hack into it, right?
in my case I use TP link wireless router . you can use any other wireless if you have the (serial to Ethernet converter) ,if you don't have this converter you have to go with the old way by hacking cisco linksys.
when you press button (w) and release this button the motor will move forward and it will not stop till you press and release Button S .this is not good because if you lose the wireless connection with the car and the car already take forward order ,so you will not be able to stop it and the car will keep moving out of control. if you press (i) button and keep pressing the car will go forward and once you release the button the car will stop after the delay ,so in this case if you lose wireless connection the car will stop automatically.
Hi Samir, Thanks for your reply. I am doing this as my final year project and i'm quite stuck with this title. Also i'm new in programming and would be highly obliged if u could explain the first few lines of the code. Thank you
hi. i just wanted to know if this is the full code or just a section of it.??...I'm doing the same project and i have no idea about programming...Please help
Hi , yes ,this is the full code ,but if you are new in programming I suggest you to start with arduino development kit in order to not stuck in hardware connection problem ,also the code for arduino much easier for serial port setting from this one , just search for (arduino serial port) in youtube ,you will find amazing tutorials ,it will able you to finish the electronic and software code part within one day. .
... the robot looks really cool... but what is it for? why does it have wifi and bluetooth (unless that's a speaker on top?)? what "motors, gear box, and tires" did you get? is there something i need to look for, specifically? is there a preferred toy car model to get or one to avoid? what gave you the idea to build this robot? what can it do? is there something to be aware of - what happens if i use the remote opener for the garage door?
i can't follow this instructable - my technical skills are fine as long as i know what i'm doing but my diagram skills are minimal at best unless someone explains what it is i'm looking at.
Thank you. what is it for? well I will say it is a surveillance robot. why does it have wifi and bluetooth (unless that's a speaker on top?)? The robot controlled by the laptop or tablet using the WiFi or Bluetooth as a transmitting media ,so its not self controlled robot. what "motors, gear box, and tires" did you get? is there something i need to look for, specifically? is there a preferred toy car model to get or one to avoid? in my country we don't have a specific market for robots ,so I visit the scrap market and use what I found ,Nothing specific. what gave you the idea to build this robot? what can it do? this is my hobby and I'm trying to develop my self in this field. what happens if i use the remote opener for the garage door? I didn't understand this question ,I need more explanation.
If you need to start with something organized ,I suggest you to start with NXT robot from lego or EZ-robot as suggested by the robotmaker comment above.
oh, i don't necessarily need to start with something organized - but without a back story, it's difficult to know if the finished object is actually doing what it's supposed to do (know what i mean?).
about the remote opener, i was thinking about when my sister bought a new house and had a wireless doorbell put in. every time someone called on the neighbours, her doorbell would ring, too, as the doorbells were both on the same frequency. if it's a surveillance robot, it'd be a bit awkward to have it start spinning in random circles every time the neighbour opens his garage door to leave for work....!
OK I will try to make a brief scenario to explain ,please just follow the diagram in step 2 : for example I press w in my laptop keyboard in putty software 1- the letter w will send to virtual port software ,this software will send it through Wifi to access point in the robot. 2-the access point will send this signal to ethenet to serial converter to convert the signal from TCP/IP to TTL RX/TX. 3- now the signal reach to TX/RX of Atmega16 microcontroller ,in the MCU code ,there is a condition ,If you receive w ,send output to port C which is connected to motor driver and make the motor move forward. about the wireless door ring ,it work on frequency 315MHZ or 433.92MHZ ,and the WiFi frequency 2.4 Ghz ,so there is no conflict will happened between the devices.
looks very good,i make robots all the time might look in to EZ-ROBOT BOARD it has bluetooth and can add wireless it have many ports for sensors ,h-bridges,servo and lot more and with camera easy to program also
The electric motors and transmissions used in the 14.4 to 18 volt cordless tools also work great for robotics. Have you figured out how to make your robot crawl up and down stairs or even steeper angles of 45 Degrees without flipping over ??
Using cordless tool motors looks a great idea ,I didn't think about it before and I believe I will use it for my next robot. Thank you for sharing this information.
I work in the maintenance department of a factor so I have access to the scrap cordless drills and screw guns they toss out when they break. Believe it or not , the Dewalt brand tools do last the longest in very high usage production environment. We have tried others like Bosch and they do okay also but don't last quite as long as the Dewalt brands. I have also scored lots of extra battery packs and have learned how the split them apart and replace the bad cells in them to get some more life out of the packs before all of the charging cycles are used up and the cells degrade to the point of nothing. I literally have buckets full of the electric motors and transmissions for my projects. They also work great in RC toys if you can find the speed controllers that will handle the start up current from these little motors. The drill motors also have their own cooling fans built into them to get air through them. The new brushless motors ones are better but cost a lot more and are harder to find. You don't have to worry about the brushes wearing out on those .
if you believe that you can do it ,you will do it , also studying each step individually will make it easier than make it in one shot. So it will need time to learn not to be smart. Thank you.
Thank you well there is a little different between the right tire rubber and left tire cause this problem ,so its so easy to turn right but to turn left I should click forward then right Continuously ,so I will try to fix this problem physically ,if not solved ,I will try to solve it from the software.
Thank you . About the differences from the previous version : 1- Bluetooth module added to the new version. 2- the power consumption improved for the new version by using smaller motors . 3- Better H-bridge driver and no relays in the circuit ,so PWM can be implemented. 4-excellent resolution and response for the new IP cam . 5- LED driver added .
PDF Downloads As a Pro member, you will gain access to download any Instructable in the PDF format.
You also have the ability to customize your PDF download.
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?
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/
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
set the wireless as access point (AP) and put an SSID name for it.
It is asking pass key again and again
if it didn't work check the web site belong for this bluetooth module.
go to below article in and see the pictures in step 5.
http://www.instructables.com/id/Bipolar-Stepper-Motor/
you are using xboard 2.0 from extreme electronic web site and there is a full tutorial explain how to use USART in below :
http://extremeelectronics.co.in/avr-tutorials/using-the-usart-of-avr-microcontrollers-reading-and-writing-data/
if you make the above test successfully ,you can just add additional command to make the motors on.
also below tutorial represent your project and its Xboard 2.0
http://extremeelectronics.co.in/avr-projects/pc-controlled-robot/
don't confuse your self between two web site ,just use the web site that compatible with your circuit which is extreme electronic and when you finish remove the serial wires and connect them to the serial to Ethernet converter in order to make it wireless.
about the error I test this code again on 14 april-2013 and there is no problem in the code (check my comment in that date and see the build result).
check you might forget the bracket while you copy the code.
or i have to use any other burner
STK500 & STK 600 (Development Kit).
or ISP (in system programer ) like AVR MKII ISP or JTAG MKII
the best suggestion ,the cheapest and the fastest is to buy arduino development kit
and program your MCU directly without a programmer device because there is a USB built in the development kit ,so there is no need to buy a programmer device .
also the code in arduino much easier from AVR studio and you will get better support and solution in the websites .
after programming your MCU you can remove it and put it in your circuit or you can keep it in the development kit and use it as your circuit because its cheap.
search in youtube on (arduino tutorial ) and you will see how many things you will be able to do with this kit.
check the pictures in step5 for the below articles ,it will give you some guide line:
http://www.instructables.com/id/Bipolar-Stepper-Motor/
for the programable device I use AVRISP MKII
if you use arduino development kit you will not need any thing from these ,you can directly connect the usb and burn your MCU.
Which software should i use to burn avr????
I tried in AVR STUDIO 4, but there are 2 warnings in it.
Is there any other way to burn avr
it will show you 2 warning below (just ignore them ):
Build started 14.4.2013 at 18:56:31
avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT test1.o -MF dep/test1.o.d -c ../test1.c
In file included from ../test1.c:8:
d:/winavr-20100110/lib/gcc/../../avr/include/util/delay.h:85:3: warning: #warning "F_CPU not defined for "
../test1.c:43: warning: return type of 'main' is not 'int'
avr-gcc -mmcu=atmega16 -Wl,-Map=test1.map test1.o -o test1.elf
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature test1.elf test1.hex
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex test1.elf test1.eep || exit 0
avr-objdump -h -S test1.elf > test1.lss
AVR Memory Usage
----------------
Device: atmega16
Program: 576 bytes (3.5% Full)
(.text + .data + .bootloader)
Data: 0 bytes (0.0% Full)
(.data + .bss + .noinit)
Build succeeded with 2 Warnings...
then click compile (Alt-F7)
then go to build -export make file .
it will generate the HEX file
don't forget to set the fuse bit according to what you have in your circuit (external frequency resonator or crystal clock ) ,any mistake in this step you will lose your MCU.
I've got a few more questions for you-
1. i'm planning on adding an ultrasonic hurdle detector to my rover..do i neet some extra lines of codes for that too...?
2. I'm using a xboard 2.0 from extremeelectronics.com as the pcb board on my rover but it only has a single L298 dual h-bridge driver and i need to control 4 motors...If i add one more L298 driver will it work?
3.Will ur code be compatible with the xboard 2.0?
2-I didn't work with xboard 2.0 ,so I don't know but if there are a free four I/O pin in MCU ,you can connect additional L298 circuit but you have to ask the person who design the board.
3- I don't know but in case you want to try ,just be careful for clocking issue, I am using External frequency resonator (4 pin) not crystal (2 pin) ,so the fuse bit will be different and any mistake in this step you will lose your MCU.
Is it necessary to use Cisco Linksys WRT54GL Wireless-G Broadband Linux Router or can i go with any other because i have to hack into it, right?
you can use any other wireless if you have the (serial to Ethernet converter) ,if you don't have this converter you have to go with the old way by hacking cisco linksys.
here why are the keys i,j,k and l used with a delay function and no write function and q,e,z,c keys in ascii used...
if you press (i) button and keep pressing the car will go forward and once you release the button the car will stop after the delay ,so in this case if you lose wireless connection the car will stop automatically.
Thanks for your reply. I am doing this as my final year project and i'm quite stuck with this title. Also i'm new in programming and would be highly obliged if u could explain the first few lines of the code.
Thank you
yes ,this is the full code ,but if you are new in programming I suggest you to start with arduino development kit in order to not stuck in hardware connection problem ,also the code for arduino much easier for serial port setting from this one ,
just search for (arduino serial port) in youtube ,you will find amazing tutorials ,it will able you to finish the electronic and software code part within one day. .
sunshiine
thank you
i can't follow this instructable - my technical skills are fine as long as i know what i'm doing but my diagram skills are minimal at best unless someone explains what it is i'm looking at.
what is it for? well I will say it is a surveillance robot.
why does it have wifi and bluetooth (unless that's a speaker on top?)?
The robot controlled by the laptop or tablet using the WiFi or Bluetooth as a transmitting media ,so its not self controlled robot.
what "motors, gear box, and tires" did you get? is there something i need to look for, specifically? is there a preferred toy car model to get or one to avoid?
in my country we don't have a specific market for robots ,so I visit the scrap market and use what I found ,Nothing specific.
what gave you the idea to build this robot? what can it do?
this is my hobby and I'm trying to develop my self in this field.
what happens if i use the remote opener for the garage door?
I didn't understand this question ,I need more explanation.
If you need to start with something organized ,I suggest you to start with NXT robot from lego or EZ-robot as suggested by the robotmaker comment above.
about the remote opener, i was thinking about when my sister bought a new house and had a wireless doorbell put in. every time someone called on the neighbours, her doorbell would ring, too, as the doorbells were both on the same frequency. if it's a surveillance robot, it'd be a bit awkward to have it start spinning in random circles every time the neighbour opens his garage door to leave for work....!
for example I press w in my laptop keyboard in putty software
1- the letter w will send to virtual port software ,this software will send it through
Wifi to access point in the robot.
2-the access point will send this signal to ethenet to serial converter to convert the signal from TCP/IP to TTL RX/TX.
3- now the signal reach to TX/RX of Atmega16 microcontroller ,in the MCU code ,there is a condition ,If you receive w ,send output to port C which is connected to motor driver and make the motor move forward.
about the wireless door ring ,it work on frequency 315MHZ or 433.92MHZ ,and the WiFi frequency 2.4 Ghz ,so there is no conflict will happened between the devices.
might look in to EZ-ROBOT BOARD it has bluetooth and can add wireless
it have many ports for sensors ,h-bridges,servo and lot more and with camera
easy to program also
Thanks for sharing this info.
i design many many robots and have over 70 at home
Have you figured out how to make your robot crawl up and down stairs or even steeper angles of 45 Degrees without flipping over ??
Thank you for sharing this information.
Believe it or not , the Dewalt brand tools do last the longest in very high usage production environment.
We have tried others like Bosch and they do okay also but don't last quite as long as the Dewalt brands.
I have also scored lots of extra battery packs and have learned how the split them apart and replace the bad cells in them to get some more life out of the packs before all of the charging cycles are used up and the cells degrade to the point of nothing.
I literally have buckets full of the electric motors and transmissions for my projects.
They also work great in RC toys if you can find the speed controllers that will handle the start up current from these little motors.
The drill motors also have their own cooling fans built into them to get air through them.
The new brushless motors ones are better but cost a lot more and are harder to find.
You don't have to worry about the brushes wearing out on those .
also studying each step individually will make it easier than make it in one shot.
So it will need time to learn not to be smart.
Thank you.
This is a great solution for control over wifi, well done.
well there is a little different between the right tire rubber and left tire cause this problem ,so its so easy to turn right but to turn left I should click forward then right Continuously ,so I will try to fix this problem physically ,if not solved ,I will try to solve it from the software.
I mean, that's why I'm here!
:P
About the differences from the previous version :
1- Bluetooth module added to the new version.
2- the power consumption improved for the new version by using smaller motors .
3- Better H-bridge driver and no relays in the circuit ,so PWM can be implemented.
4-excellent resolution and response for the new IP cam .
5- LED driver added .