loading

Make a simple platform and give mobility to your computer

FeaturedContest Winner
Picture of Make a simple platform and give mobility to your computer
DSC_2322.jpg
A computer is a very handy thing to use in your robots.

If you start listing all the features that can be used for robotic purposes you'll find that it is cheaper to buy a netbook than buying LCD, wifi and bluetooth modules, cameras, speech synthesizer modules, keypads, memory card readers, speakers and many other stuff.

Thats why I decided to make this platform to my netbook.  To let the computer control the motors, I tried two different ways: Firstly I used a arduino duemilanove with two motor driver boards , but then I found that it would be much easier if I just used a motoruino .

With this I could create lots of different applications that let my computer follow certain colors, follow human faces, detect flames, drive around the house avoiding walls, be remote controlled through the internet or using a wiimote, and the list of possibilities is almost endless. 

I have been developing this application, presented on the movie, which is called ComputerOnWheelsController.
You can learn more and download it at its page: http://www.franciscodias.net/applications/openframeworks/computer-on-wheels-controller

 
Or, if you prefer processing, you can find and download some examples that I've already done at my website: http://www.franciscodias.net/processing-applications

 
Remove these adsRemove these ads by Signing Up

Step 1: Gather the materials

Picture of Gather the materials
IMG_7840.JPG
Arduino+L293D_bb.png
This is what you'll need:
    - 1x Box
    - 2x Motors, wheels  and supports
    - 1x Third wheel
    - 1x Battery pack 
    - Some wires and jumpers

And...

  If you decide to use the motoruino you'll also need:
     - Motoruino
     - FDTI Cable

...or...

  If you prefer the arduino you'll need:
     - Arduino
     - USB A/B Cable
     - Dual Motor Driver, I used these . You can use whatever you want, for example, the L293D is very easy to use. Check the attached breadboard image.

Step 2: Prepare the box

Picture of Prepare the box
IMG_7808.JPG
IMG_7844.JPG
Let's prepare the box to fit our needs:

Cut the holes that you need for the USB cable and for the wheels.
I heated a knife in the stove to do that easily, and it was like slicing butter.

Step 3: Attach the wheels

Picture of Attach the wheels
IMG_7857.JPG
Place the wheels on the motors' hubs and tighten their screws.

Attach also the third wheel on its place.

Step 4: Place everything inside the box

If you use the motoruino you have to connect the wires from the motors and  the battery to the respective screw terminals.
If you have doubts check this page: http://www.guibot.pt/using-the-motoruino/  .
Then you have to connect the usb cable, if you're using one with the FTDI chip embedded just connect it dirrectly to the board, if you're using an adapter board like me put it in place and connect the usb cable to it.
Make sure you're connecting it the right way, you may have to connect it faced down.


If you decided to use my boards, connect the battery wires and the motors to the motor controller boards, as it is show on the images.
Connect the 5V of the arduino to the boards, and the jumpers which come from the PWM outputs of the arduino.
They are two for each motor to be possible to control the speed of rotation on both directions of rotation.


If you use a L293D in a breadboard, check the attached image.

  If use other controllers, check their datasheet.


Now the hardware part is DONE!

Step 5: Upload the sketch to the arduino

Picture of Upload the sketch to the arduino
Download the attached file, open it with the Arduino Software , read it if you desire, choose the serial port and the board, and upload it to your board.
_56910PWM.zip408 bytes

Step 6: Test it!

Picture of Test it!
Open the serial monitor window and see what happens when you send the following commands:
    - 'w' move forward
    - 's' move backward
    - 'a' spin to the left
    - 'd' spin to the write
    - 'g' stop
  

Step 7: Open your imagination!

Picture of Open your imagination!
ColorTrackerV3PrtSc.PNG
WallAvpoderPrtSc.PNG
FaceTrackerPrtSc.PNG
prt sc frietracker.PNG
Now that you have your platform working, start creating applications for it!

I'm currently developing ComputerOnWheelsController which is an application supposed to be simple to implement and use with robots connected in some way to a computer, like this one.
You can learn more and download it at its page: http://www.franciscodias.net/applications/openframeworks/computer-on-wheels-controller

I've also created some with processing , which is a very easy language to learn, specially you you already know  how to program in arduino.
You can have a look and download them here: http://www.franciscodias.net/processing-applications
Always remember to check the available Serial port on your computer, in my case is COM19, but this is different from system to system.

Here is again the demonstration of the color tracking one: 
1-40 of 92Next »

to make it smaller replace the laptop with a raspberry pi

rsangeethk3 years ago
heiiii.... dont you need TTL logic converter... like max232???????? when connecting laptop with the microcintroller??????
XicoMBD (author)  rsangeethk3 years ago
The Arduinos that used have a FDTI chip ;-)
but im using a third party board with h-bridge....!!! which one is best for usart!!!
XicoMBD (author)  rsangeethk3 years ago
Is it arduino based?
noooo.. its not arduino based! and do you have the same code for avr studio.. or any hexfile of this code?????? if yes plzz share it!!!
XicoMBD (author)  rsangeethk3 years ago
I only have the arduino code, but it is very very simple.
It should be easy for you to replicate it. It only has to receive the chars from the serial port and actuate the motors accordingly.
Try to search for serial port communication examples...
sabari10003 years ago
Hey Guys... I'm using Arduino Diecimila... Selected correct Board and Serial port... But still i can't upload the program.I'm getting the following Error

***avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51***
i'm searching in lots of Forums for 6 days but still i cant find the solution... can anyone help me out of this... Thanks in Advance...
Same thing has happened to me repeatedly with my uno i have no idea what to do.
MRedu3 years ago
Insane! I've seen some amazing things here on instructables but this is by far my favourite!

I wanna give this a go i've always been into robots. But i don't know where to get all the parts from... (i'm in the UK).
XicoMBD (author)  MRedu3 years ago
Thanks for the comment :D
You can get the motoruino directly from guibot (http://www.guibot.pt/motoruino/), just leave them a message.
The rest of the parts aren't so specific, you can get any motors, battery and wheels. You should be able to find this kind of thing on ebay, for example.

If you're interested, I've been collaborating in the development of a similar platform, but much more powerful and capable: http://magabot.cc/dp/magabot. Have a look :)
MRedu XicoMBD3 years ago
Cool Thanks!
karan133 years ago
i want a short help from u .is there any way i can controll this robo with psp a well as tag laptop's camera as to psp's screen
plese help ,as i want this to exebit this bot in exebition.
thanx
XicoMBD (author)  karan133 years ago
XicoMBD (author)  karan133 years ago
osalomak4 years ago
What this mean? What I did wrong?


avrdude: stk500_getsync( ): not in sync: resp=0x00 
avrdude: stk500_disable ( ): protocol error, expect=0x14, resp=0x51
error.jpg
XicoMBD (author)  osalomak4 years ago
I'm not sure. When I have that error I usually disconnect the board from the PC and reconnect it again.
But try to go to that link and see if it is useful.
My broblem was board choice...
My Motoruino board works with Arduino Duemilanove...
I first try choose Arduino Diecimila, but it's not accept that...
guibot osalomak4 years ago
Hello!

Assuming it might be the FTDI cable please confirm that you are connecting the black cable on the same side where it says GND.

Confirm also you are selecting "Arduino Duemilanove or Nano w/ ATmega328".

Please let me know if it worked.


osalomak guibot4 years ago
Yeah! It's working now... :)
guibot osalomak4 years ago
Great!! ;)
XicoMBD (author)  osalomak4 years ago
Like I told you before, I choose the "Arduino Duemilanove or Nano w/ ATmega328".

Are you sure that the problem isn't from the FTDI cable?
Yeah, my bad... I have dyslexia... :D
And "broblem" mean problem... :b
But now everything working perfectly...
FTDI cable working very well too. :)
Now I try to do that same project without laptop... 
Some kind of wireless thing... I post some pictures later... 
i have another idea to use ic l298d motor drivers
what correct ?


plz reply
L298 Board Manual.JPG
XicoMBD (author)  Avadhut.Deshmukh4 years ago
On the picture you have a L298N. But yes, you can use it.
i have L298N motor board 1 in 2 dc geared motor !!!

my robot started working thank you
XicoMBD (author)  Avadhut.Deshmukh4 years ago
Nice!
Send me some photos or videos so I can post them on this 'ible ;)
osalomak4 years ago
Thanks for informations! :)

My project is almost same as yours, but I add mouse controlled servos for webcam's rotation...

http://www.youtube.com/watch?v=lFvQRWXX24U
osalomak4 years ago
what software you used to programming Motoruino..?
Can I use Arduino software to programming Motoruino...? :)
XicoMBD (author)  osalomak4 years ago
Yes, of course ;)
Have a look here: http://www.guibot.pt/faq/#caracteristicas
"Besides the lack of the usb connection (you will need a TTL-USB converter described below), the Motoruino is 100% compatible with the Arduino Diecimila, including the pin position, so you can attach any compatible arduino Shield."

On the arduino IDE you just have to choose "Arduino Duemilanove or Nano w/ ATmega328".
karan134 years ago
while creating face tracker ,i am comming across some problem i have added
pface detect
pface detect.dll
controlp5
jmyron
jmyron.dll
and folowed every step respectively but on the message bar an error is coming
that-............................./pfacedetect.dll -cannot find dependent file .
i am using win 7 32-bit. can u tell me where i am going wrong .
thankyou
XicoMBD (author)  karan134 years ago
I'm not sure if it works with 7, I've only tested with XP. Where have you added that files?
karan13 XicoMBD4 years ago
i have addrd these files in the skech
karan134 years ago
does versions effect the making of application
XicoMBD (author)  karan134 years ago
I don't know
karan134 years ago
which version of processing r u using
XicoMBD (author)  karan134 years ago
1.2.1
karan134 years ago
hai my robo started working thank you man..............i want to know that is there any way we can control robot through our voice
XicoMBD (author)  karan134 years ago
Cool!
Post a video here if you can :)
Yes, I've found this (https://code.google.com/p/ofxasr/) but I haven't had any time to integrate it with the COWC (ComputerOnWheelsController) application.
I may be able to do it next week when I finish my exams, but try to do it yourself!
crxksa4 years ago
forgive me if i am slily
where did you buy the motor
;)
1-40 of 92Next »