Society of Robots - Robot Forum

Electronics => Electronics => Topic started by: Somchaya on April 10, 2007, 02:37:50 PM

Title: Pole-balancing Robot
Post by: Somchaya on April 10, 2007, 02:37:50 PM
So, this is just an idea that I've been throwing around in my head for a while..

I'm thinking of building (over summer) an omni-directional robot that balances a pole in its center.. I think I've got the workings of the omnidirectional part worked out, but I've no experience with gyroscopes or accelerometers..

I've read a little about them online, and it seems that to be able to detect the angle of the pole, I'll need to integrate the readings from the gyroscope, or double integrate the readings from the accelerometers? Is there an easier way to do this? Integrating seems like it would create a lot of errors in the long run..

Also, if I want the pole to be able to fall in both the x and y directions, will I need to somehow convert the readings from the gyroscope/acclerometer? It seems like the readings of the sensors wouldn't necessarily be in the x-y axis of the robot, since they'll probably be placed near the top of the pole, and I'd need to convert those into the robot's frame. But, that requires knowing the angle of the pole, so it seems like it's going in a circle.. Any suggestions here?

I'm kind of hoping someone will say "all you need to do is X" ;D If there's an easier way to detect the orientation of the pole besides using a gyroscope/accelerometer, that'd be great! The only alternative I've thought of so far is to use 2 or more cameras statically placed in the room to detect the pole and report its angle to the robot, but that approach seems pretty unwieldy and not very elegant..

Edit: another question: this actually belongs more in the mechanics section, but how would I actually go around attaching a pole to a robot that'll allow the pole to fall in the x-y axes?
Title: Re: Pole-balancing Robot
Post by: dunk on April 10, 2007, 05:19:43 PM
so the accelerometer/rate gyro combonation is usually used in segway style self balancing robots.

since the angle of your base will always be the same (ie, paralell to the ground) and you are just trying to measure the angle between it and the stick, what about encoders round the pivot point?

dunk.
Title: Re: Pole-balancing Robot
Post by: nanob0t on April 10, 2007, 05:53:17 PM
This sounds like an awesome idea.  Unfortunately, I do not know how to use gyros or accelerometers.  I am interested in learning also.  I'll do some research, and report what I find.
Title: Re: Pole-balancing Robot
Post by: Brandon121233 on April 10, 2007, 05:56:33 PM
Unfortunately my gut feeling tells me even with this data from the sensors, your in for a ton of geometry, and trig.
Title: Re: Pole-balancing Robot
Post by: zamboniman60 on April 10, 2007, 08:48:55 PM
Well, if you don't need fine measurements, you could use a small tube with a ball bearing in it, and two contacts at one end. Then position it within your robot so that when the robot is straight up and down, the tube is angled slightly so that the ball bearing settles at one end. You'd just need to position 3 of these tubes in your robot, and it could detect which direction it had fallen in when it fell somewhat.
Title: Re: Pole-balancing Robot
Post by: Somchaya on April 10, 2007, 09:58:37 PM
so the accelerometer/rate gyro combonation is usually used in segway style self balancing robots.

since the angle of your base will always be the same (ie, paralell to the ground) and you are just trying to measure the angle between it and the stick, what about encoders round the pivot point?

dunk.

Hmm, the encoders idea sounds pretty feasible, especially if I limit the pole to falling in one axis only, which will make it easier to construct as well.. I guess I'll let the idea bounce around my head for a while and see what comes out  :)
Title: Re: Pole-balancing Robot
Post by: ed1380 on April 10, 2007, 11:30:14 PM
Would something like this work http://www.societyofrobots.com/robotforum/index.php?topic=640.0
Title: Re: Pole-balancing Robot
Post by: trigger on April 10, 2007, 11:33:44 PM
If the pole can fall in any direction, then I believe that controlling it is impossible.  Even with a perfect feedback filter, it cannot be done because the system is inherently unstable.  This is different from the Segway, which can only fall over in a finite number of directions.

I could be wrong of course.  I've totally forgotten the math since I took my feedback control class, oh, six or seven years ago.  ;D
Title: Re: Pole-balancing Robot
Post by: Somchaya on April 11, 2007, 06:20:31 AM
Hmm.. I didn't think about that.. I guess I'll ask my feedback controls prof and see how it goes.. It does seem like it could be controlled properly though with a feedback system.. eg, if it falls along the x axis, go to the left, if it falls along the y axis, go forward.. but I may be wrong about it.. I haven't considered the math of it at all yet  ;D
Title: Re: Pole-balancing Robot
Post by: ed1380 on April 11, 2007, 01:40:10 PM
There is only 2 axises it can fall on. so each part of the microcontroller controls that axis
Title: Re: Pole-balancing Robot
Post by: jsmoker on April 12, 2007, 12:45:51 PM
Yeah,  you just have the two axis of tilts.  I would go for the encoders.  I did a similar project for a controls lab class with pendulum.  We had to swing up a hanging pendulum from a pivot arm and balance it in an inverted direction.  We got a pretty rock solid result with just the encoders.  I'd imaging a 2D case wouldm't be too much different. Your dynamics in each direction are uncoupled so it seems it'd just be a superpostion of cases. I have a vid somewhere. I'll try to find it when I get home.
Title: Re: Pole-balancing Robot
Post by: DanME on April 14, 2007, 01:01:55 AM
Hello, I am new to this forum but this might help you.


http://meeng.technion.ac.il/Studies/Undergraduate/majors/Halevi/REVADIM_megamot.pdf

go to pages 9 through 13.

 Israel has some of the best robotics technology in the world next to Japan and USA.

Hope this helps!

     - Dan
Title: Re: Pole-balancing Robot
Post by: Somchaya on April 14, 2007, 07:47:08 AM
Ohhh... that's a pretty cool idea, using a touch screen as a sensor like that!

From the looks of it, I'll probably be using encoders since it seems to be the most direct way of obtaining the tilt.. Hope I actually get around to building the robot though! :)

Edit: I went to look at the diagram again, and it seems they have another sensor (with arrows) connected to an ADC besides the touch screen electronics. Do you know what sensor they might be referring to here?
Title: Re: Pole-balancing Robot
Post by: DanME on April 14, 2007, 05:21:31 PM
Yes i see what you mean, there is no label for the sensor. I believe a lot of this stuff is proprietary so they won't tell us everything about it.


Anyway, good luck.


     - Dan
Title: Re: Pole-balancing Robot
Post by: Tsukubadaisei on April 19, 2007, 07:40:00 AM
Hey, I've seen a robot that resembles somehow the one you want to build in newscientist. Try researching more about this oneball-balence-robot.  I believe you might get some clues about how to balance a long and tall object over a mechatronical device.

http://www.newscientisttech.com/article/dn9720-ballbalancing-robot-refuses-to-roll-over.html

Good luck with your project, you will need it.
Title: Re: Pole-balancing Robot
Post by: Admin on May 02, 2007, 05:52:16 PM
(sorry for late reply, still backlogged on messages since my trip)

Quote
this actually belongs more in the mechanics section, but how would I actually go around attaching a pole to a robot that'll allow the pole to fall in the x-y axes?
have you considered hacking a video game joystick?
Title: Re: Pole-balancing Robot
Post by: Somchaya on May 02, 2007, 07:25:13 PM
Oh hmmmm, that's a great idea! I'll have to look into that..