Let's Make Robots!

Roubot- My first one netbook controlled robot

moving on my orders, given through the internet.

This robot is piloted by me, using internet and a netbook.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

About Me and my project (you can skip this part ;-D )


First of all I want to apologize for my (bad) English. I'm 19 and I'm french.

I am student in an Institute of technology, learning sciences and measurement.

Robots have always make me dream, and a few months ago I decided to desing robots!

I would like to thanks LMR, for goving me ideas, motivation and inspiration!

But I didn't really know what to do so I made a background ( a big sheet of wood and 2 wheels with 2 continuous servos.)

I spend too much money so i didn't want to buy sensors (bad excuse I know)

And my netbook was here, lying down... I bought It because it was cheap (99€ ! ) but it was a bit uselless

But now it's usefull !

I have too much talk about me, lets talk about my robot!


Features of my "roubot"


my robot can go forward, backward, turn itself clockwise and anticlockwise.

The servos are piloted by an arduino duelaminove board, with a really simple sketch.

As input, the arduino board waits for order in the Incoming data pin.

Theses orders are sent by a small processing sketch (quite simple too) who send orders each time I press theses buttons on my keyboard: UP, DOWN, LEFT, RIGHT, CTRL (to stop the moving)

But there is a step left: I won't Follow my robot to keep in touch with my keyboard! I need to transmit orders via Wifi. So I use a VNC client, TEAMVIEWER, wich is quite easy (again!)

and allows me to have the control of my robot as if i was typing on my laptop keyboard, seeing what I could see on my laptop screen.



To fix/ to do


The mecanics is a little bit too small and too thin for the tall and the weight of my laptop.

So i need to design a new stronger one.


I have thought about some « add-ons »:

-Use 2 servo I have (non-modified, to make an arm, or a turret?)

-Add a webcam that i can move, maybe with an IR light :D

-a reload station (it's really cute to have dreams...)


Adding some photos

what you see where you are in front of my robot -left: webcam(like a mirror) -right: sketch processing (first version) 

what I see for exemple from my desktop (here with a computer not equipped with teamviewer, the framerate is better with the soft)




my robot didn't move well, so I replace the motor parts:

using this (given by the little brother of my girlfriend)

I made this: (as you can see there is a little problem: I need a third wheel!)


There are two independant motors, with H bridge and all the stuff. I just remove the RC part (it still works, I keep it for another use but there are a lot of limitations like range or speed).

So i drive the H-bridge with PWM with my arduino board but I still have problems:

-if I use PWM library of arduino (fading) it works really bad: for high value ( Ton >> Toff) it runs, but too fast and with not enough torque: It can just move without the laptop and helping it.

-if i create my own PWM sketch it works better, because the frequency is lower so the torque is maximum at start and the robot go forward, and then it stops. It works, but it jerk: sart/stop/start/stop... another problem with this solution is that the sketch is a little more hard because the arduino "focus" on the PWM (it can't do anything at the same time).


UPDATE 4dec2010


I added a third wheel, installed W7 on my laptot (not really better ^^ ) and began to use Skype. ther are some thing to fix, the most important:

Change the electromechanical part (wheels, gears and motors) still too weak for the total weight.

Change the software for a much "DIY" solution (I am currently using teamviewer and skype)


new pics of my robot:


UPDATE  23dec2010:


I use a new way to control my robot: using this http://letsmakerobots.com/node/22483 (well made ;) ) and the software Hamachi, which allows 2 computers to be connected as is they where in a local network, I can now send and receive data between a computer and my robot. The Processing sketch on my laptop doesn't need to have the focus, so I can let Skype in full screen. I have some improvements to make, but it works great :)

I am waiting for some servos to add an arm and a gripper, and to control (pan/tilt) a webcam (I won't use the built in webcam)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Welcome to LMR.  Are you using a builtin webcam on the netbook so you can truly teleoperate it?  There are some software programs such as webcamXP that can serve your webcam on a webpage.  The free version has a watermark.

I see you remote in using teamviewer, which is probably working great for you.  There is a free IP to COM port redirector software you might also find useful for acheiving a similar result.  It will basically map a USB port to an IP address with port number.  I have used this to enable a friend in a different city to turn on and off LEDs with a live video feed.  My setup used a Bluetooth USB dongle but it could have been a USB to serial cable.  Here is the link in case you are interested, the software runs great for me on Windows 7 x64 and is free:


keep up the good work, looking forward to your progress

I will keep this link, it could be usefull!

I have added some pics to explain how i use the webcam.

Unfortunately, my netbook has ubuntu as orperating system, so your soft won't be usefull for now...

I use and like TeamViewer because it is really easy: no IP adress, less configuration...

Some time ago, I've built a robot like your and after a while I've started using the net work library about what I made a little tutorial about it, have a look if you want :)


You have nice ideas for it, I really want to see them finished! 

Thank you for the tutorial, I followed your links but there is some parts I didnt understood:

are you using a LAN connection? because I wish to be able to control my robot from everywhere, and to everywhere (my laptop can use a Cell Phone connection, with a SIM card.)

And about my robot I still have some problems:

1°) My laptot is too heavy! I replace the 2 servos by an hacked part of a RC car, but it is still weak ( I use PWM to drive it, but i loose some torque I thing)

2°) The framerate of my webcam is very bad, when I watch it through the Internet. I'm wondering if I could use something like webcamXP (as rogue tell me) but for ubuntu. I didn't try the ubuntu integred VNC client, maybe I should.

But thank you, you give me precious skills to have good results without using TeamViewer (better when you Do It Yourself ;D )

I used it in a place where I hadn't internet so I had to use an adhoc wifi connection between the two computers, but when I tested the applications at home with the computers connected normally to my wifi modem network they worked as well.

I have the weight problem as well, I've built a smaller robot with some of the parts of the one I shown you but it has the same problems when turning. 

After a while I found remote control boring and I started developing some simple computer vision applications which I tested with this robot.

About the webcam, have you tried to use skype to transmit the video? I think that its image quality is really good...

Yep using skype or free equivalent would be great, because When some one will watch my robot he will see my face!. But I will have some problems with VNC:

If, on the laptop, we can see my face in fullscreen, it meens that (when i use teamviewer) i will see my face in the windows that show my laptop screen, which is useless. and worst, if i want to see what is in front of my robot I have to use skype, so i can't control my robot at the same time (skype will have the "focus" and my processing sktech won't, so it won't "read" my keyboard).

I'm not sure i am very clear, but the problem is that i must find another way to control my robot (maybe using a COM port transmitter, as rogue gave me the link?)

Tomorrow i will ask some of my teachers :)

If you use remote control applications like the ones I made you can have the application on the robot computer minimized because it will be always receiving the data from the controller and sending it to the arduino. 

So that problem is solved, you might have others using them but it is other thing ;)

Yes I didn't think that the advantage is that the receiver did not need to have the processing sketch on focus...but there still is a problem of lan configuration, I have to test it(if it don't works, I could maybe add a COM port transmitter :p ). Another question, for your last robot, using a webcam to analyse the environment, I didn't see you use "import processing.video.*;" I am new in Processing (I did not learned it at school) so I have a lot to learn, but how did you get the data from the webcam? I think you use "import JMyron.*;" instead, what are the difference between them? Because i can't use my webcam with ubuntu and processing (because i must run quick time :(... )

I am not stopping asking questions, sorry ^^


I learnt it alone, I've never learnt anything related to robotics at school... 

JMyron and video are different libraries for processing. To make that applications I found JMyron easier to use than video, that's why I used it.

I've never tested processing with ubuntu, I tried to do it last Friday but I hadn't time. 

I think that JMyron doesn't need quick time but I don't know if it works on ubuntu. But you can always try, here is the site http://webcamxtra.sourceforge.net/download.shtml

So here I am: I found JMyron lib, it works(I can't be sure), but it seems that ControlP5 do not work/exist on ubuntu! But the worst part is that I read your sketch but I am not able to tell what is ControlP5 use for! Processing is not very good on ubuntu (there is no package, only a bash script to run it... :- /  ) I think I must spend more time to learn more about all I discover, to see the implications, and how I can make work all this stuff together :) Thanks for your time, now I have some physico-chemie to do before going to sleep  8-S