Wednesday, April 25, 2007

Self Navigating Microbric Viper Robot



Hey folks,

After several days of hard work, I've managed to turn my Microbric Viper robot into an intelligent mobile robot, which moves around my house and avoids obstacles along its way! This time, I've mounted a laser based obstacle detector on top of a servo. So, now the robot is able to scan its surroundings before making a move. This project is still based on the principles working behind my autonomous RC car project. However, unlike the autonomous RC car, now more than half of the robot's brain resides within the robot itself. The part of the brain which lies in my computer makes only one crucial decision of whether it is safe to move forward or not. Based on this Yes/No decision, the robot decides how it should maneuver itself in order to avoid the obstacle in front of it. For example, if the computer detects an obstacle, it tells the robot to stop. Then, the robot starts scanning the area by rotating the obstacle detector. During the scan, if the computer finds a place with no obstacles in close range, it tells the robot to move forward again. Check out the video above to see it in action!



I've made some hardware modifications on the Viper robot for attaching the laser pointer. Watch the video below. In this video, I'm controlling the Viper robot (and its laser pointer), with a TV remote!:



The Iguanaworks IR transmitter I used in my previous project charges up a capacitor in order to provide a range of up to 10-meters. This time, however, I wasn't getting very good mileage with the computer I was using. So, I built my own parallel port controlled IR transmitter using a DVD remote which came with my PS2. :) I'm using a simple, parallel port controlled transistor switch for turning the remote on and off. On receiving any IR pulse from the computer, the robot takes action. Yeah, I admit that its a bit of an overkill, but I had to do it!



Wow..this project was kinda difficult! I really had to work hard on it and my ass is really burning.....AARRRRGGHHHH.....I feel tired..I think I'll be taking a short break. :)

Keep sending me your thoughts and ideas. I really appreciate them. In the meantime, I'll be enjoying life... :)


- Ashish

Share/Bookmark

39 comments:

Scott Hanselman said...

Wow, great stuff!

Ashish Derhgawen said...

:)

Anonymous said...

You need to possibly look into getting a military contract. with a camera added, this is the kind of disposable robot that the military would be interested in, I think.

Andrew said...

Fantastic work it looks very efficient. Is it possible to use a faster servo? because i can imagine it would be able to go even faster if you were to improve that, you could gather data very quickly then.

Kevin said...

hi, nice project!

i was wondering, is the computer still analysing the webcam picture?

do you send that picture to the computer over IR?

Anonymous said...

Very nice :)
I would also add an oscillator mirror in front of the laser beam, so that the robot would scan whether it can keep moving forward and fit into an opening - without rotating the camera.
By the way, why did you choose to place camera/pointer onto its own servo? Why not just use the wheels to turn the unit in place?

Justin said...

Two Words

How-To!

Anonymous said...

oh yes military contact - thats nice - let's build killing machines which can find the way autonomous! :(

maybe this is robot can help blind people.
i think there are many many better use cases than military uses

Ashish Derhgawen said...

Using servos to rotate the camera makes it more efficient. My autonomous RC car didn't have a servo, so I had to rotate the whole unit for rotating the obstacle detector.

To Andrew - The servo I'm using can go much faster...I kept it slow..but I guess I can speed it up a bit. :)

To Kevin - Yes, the computer is still analyzing images..but the camera doesn't send images over IR :)

To Justin - I dunno..this project is a bit hardware specific. If you have a Microbric Viper robot...let me know....and I'll email you the details. :)

Jean said...

Hey, great job !!!

Here's an idea for you :
Have you planned to add a "cartographic software" that would build a map of the traversed areas ?!

Ashish Derhgawen said...

Hey, thats a very cool idea!

Anonymous said...

Very nice project, i've benn playing with the idea or doing something similar but using cams to "look" at roads and determine edges to navigate a car.....but i'm just peicing the info together....i'm going to get a viper could you email ideas\info plz....xttrensia@yahoo.com

-MiKe- said...

I am not sure how your webcam/pointer set-up works. If it were possible I would bounce the laser off a rotating mirror, similar to the bar code scanners at the checkout, and keep the webcam mounted stationary. Have it off by default, and use a pezo and a detector for preliminary detection of obstacles (would use less energy). If an obstacle is detected, spin up the mirror and turn on the laser.

Just an idea.

mekanixz said...

hey there!nice work you're doing!
are we going to see code and/or details?
if you prefer mailing instead of publishing,here's my address mekanixz[at]gmaildotcom
either way i'm gratefull
;)

mekanixz said...

can you give some details about the camera?is it a wifi one?pls respond to my previous post.

Ropske said...

great stuff m8

how much does this cost?

do you sell one?
greetz

Ashish Derhgawen said...

Visit http://www.microbric.com

James said...

Ive just got a microbric viper robot and am having trouble programming even the simplest of things (like to make one of the LEDs flash!). I cannot click on the 'program' button; it is grayed out.
I have connected the viper to a newish computer (XP home) which i bought about 4 yrs ago. But i still cant press the program button even on my new computer (I cannot connect the viper to this computer because it does not have a 9 pin port.

Do you program you modified viper robot using 'BasicMicro IDE' or do you use something different?

Plz can you post me some tips on this page or email me at 'matty_boughen@hotmail.co.uk'

Thx and good luck with future projects!!!

Ashish Derhgawen said...

James: I have sent you an email. Check it out.

Ashish

Anonymous said...

Hi Ashish i have just purchased a Viper robot am trying to copy your project is it possable to get the code for this and some idea how you get the servo working.

tony811@hotmail.com
cheers

James said...

Hi it's James again. I've learnt how to do all of the things in the manual (Microbric Viper), and i was wondering how you program the robot to do other things, especially with hardware not included in the set. Do you know where i could find he whole dictionary of the basic atom words?

Sorry i keep on asking you stuff very simple to you, but i'm really stuck on how you make the codes to do things you want them to do.=]

Please email me at matty_boughen@hotmail.co.uk

Anonymous said...

have you ever thought about leaving instructions?! I'm only 11 but it would be AWSOME to have the instructions and programing information. E-mail me. My e-mail is alikidn@yahoo.com



(P.S. you are awsome)

albert said...

Hey Ashish, this is awsome! Is the conection between the computer and the viper wire-less? If so, do you need a antena or deos the viper (or any of the other materials come with it)? Keep up the good work.:)


e-mail me: alikidn@yahoo.com:)

albert said...

Where did you get the laser because I cant find it anywere and also is the survo conectedto the viper, or directly to the computer?




e-mail me: alikidn@yahoo.com

Rosie said...

This is a great site. Thank you for your information. I THANK YOU I SALUTE YOU IT,S A AMZING SITE.

Dan said...

hey ashish that is a awesome project your doing, im gonna be buying the viper pretty soon, and i was thinking that maybe you should try to make it use tracks instead of wheels so that it can go over more terrain, my email is

slauterno1@aol.com if you want to send me anything, but yeah keep up the good work man

Akeey said...

hi Ashish...i am ankit...doing masters at california state university...i did a great job...i am working on kinda similar robot but its vision guided...and i am trying to figure out how could u move the whole body of robot and also the light..i mean the laser thing....instead of that i am using webcam in my robot which will compare color of some object and will pick it from any random position seen by robot....

please tell me what kinda motor and mechanism u have used to turn the robot when it find obstacles???

Akeey said...

lol sorry...YOU* did a great job....

santhoshkumar said...

hai ashish.dis is santhosh
nw i started making robots in my way,as my new project is quite similar to ur sound controlled robot but diffr from u by as i used transistrs in place of m.c's........and one request from me is i nhai.....ashish
jus eed some technical support from u ......wil u help me?
if possible

santhoshkumar said...

santhoshsanu@gmail.com ismy id

manu said...

HI ASHISH
is it possible to make an obstacle avoidance robot using Ai2?
if possible will u guide me to do it?
pls reply my id is manumurali20@gmail.com

manu said...

how does the servo in ur project work?
reply my id is manumurali20@gmail.com

Jacob said...

That's crazy dude!! fun with RC's, haha - I love it! man you are super swift at this stuff PE

Anonymous said...

hi there...i would just like to know if your codes are shown in your blogs or can you show your codes specially on this one which i'm interested into...with this self navigating microbic viper robot...i'm hoping if you could respond immediately...a million thanks ahead for you...good day ",

Anonymous said...

hi ashish this project of yours is totaly awesome and really fits well with my proposed proj. in our school.
i was hoping if you could email me the codes for this specific project of yours...i have proposed a project very much the same with this...i named it a 'maze navigating robocar' with the same concept that it will avoid obstacles only that the venue is in 'maze' form and the robocar must be able to get out of the maze...this project is for the completion of my course since it's my last yr in college...i was hoping if you could also give me some ideas for my project...i'm leaving my email-add...i'm sincerely hoping for your help...thanks a lot

here's my email.add: lds_matildo@yahoo.comsynoba

Anonymous said...

hi ashish this project of yours is totaly awesome and really fits well with my proposed proj. in our school.
i was hoping if you could email me the codes for this specific project of yours...i have proposed a project very much the same with this...i named it a 'maze navigating robocar' with the same concept that it will avoid obstacles only that the venue is in 'maze' form and the robocar must be able to get out of the maze...this project is for the completion of my course since it's my last yr in college...i was hoping if you could also give me some ideas for my project...i'm leaving my email-add...i'm sincerely hoping for your help...thanks a lot

here's my email.add: lds_matildo@yahoo.com

gucci princy tote bag said...

Very nice project, i've benn playing with the idea or doing something similar but using cams to "look" at roads and determine edges to navigate a car.

dJb@b@i said...
This comment has been removed by the author.
dJb@b@i said...

hey ashish! awesome work back there.....i was wondering if you could actually mail me the necessary details and the range finding software that you used,would be a great help!
id-djbabai.debjyoti@gmail.com