Subject:
|
Re: Walkers
|
Newsgroups:
|
lugnet.robotics
|
Date:
|
Thu, 15 Feb 2001 03:40:43 GMT
|
Original-From:
|
Eric Covington <olingo@home.+AvoidSpam+com>
|
Viewed:
|
764 times
|
| |
| |
Some years back a couple of guys at work made a double inverted pendulum,
which is like balancing another pencil on top of the pencil on your finger,
though it worked in only one dimension. I don't know too much about it,
except that they had position sensors at each of the joints, and (I think)
derived rate and acceleration from those. The control algorithm was
developed in a mainframe based control systems program called "Control-C"
which nowadays has been pretty much replaced by Matlab. They used
full-state feedback (hence the need for rate and acceleration). The
algorithm was (likely) done in analog electronics. Since I've only been
lurking on this list a little while, and have yet to get any mindstorm stuff
to play with, I don't know if the hardware is capable of doing something as
complicated.
In terms of the walker - if you had a good position sensor and a pendulum,
you might be able to do a similar algorithm, though the inertia of the
pendulum adds some more dynamics to the system.
Some ramblings....
Eric Covington
----- Original Message -----
From: Boorman, Mathew <mathew.boorman@admiral.com.au>
To: <sjbaker1@airmail.net>; <lego-robotics@crynwr.com>
Sent: Wednesday, February 14, 2001 4:41 PM
Subject: RE: Walkers
> So much for a simple PID, or even just a P solution!
> Sounds like a cool thing to try with lego, slightly easier toy to demo to
> people and kids.
> IF the physicas is very complex it might be pushing the RCX to do the maths
> though, at least using bytecode.
>
> Maybe I should balance the pendulum on top of the robot for just a bit more
> challenge!
>
> As far as the IR sensor was concerned I figured it would have a fair way of
> the centre line of the robot, but I have not looked into the sensitivity of
> those suckers to caluculate exactly how far out it needs to be. Aiming the
> sensor offset from vertical, say about 45 deg should give it better
> sensitivity too.
>
> m@
>
> -----Original Message-----
> From: Steve Baker [mailto:sjbaker1@airmail.net]
> Sent: Wednesday, 14 February 2001 15:13
> To: Boorman, Mathew
> Cc: lego-robotics@crynwr.com
> Subject: Re: Walkers
>
>
> "Boorman, Mathew" wrote:
> >
> > A problem with any 'pendulum' based system will have is that they are
> > effected by the movement of the robot.
> > > From a robot which attempted to balance using 2 wheels I found...
> >
> > From stationary start falling forward...
> > detect pendulum swinging forward
> > accelerate to bring upright again
> > pedulum is pushed back by acceleration
> > detect 'upright', stop
> > fall over really, really hard!
>
> Well, I think your software has to be able to predict (mathematically)
> what will happen to the robot and the pendulum as it accellerates the
> motor.
>
> You can't rely on the simple "if pendulum in middle all is well" thing.
>
> You need to know the accelleration you applied, the torque that'll apply
> to the robot, the consequent rate of rotation, etc. In short, your software
> has to do the physics to predict what it's actions should produce and
> only use the pendulum to confirm that the error in your calculations
> are not adding up too far in either direction.
>
> I've seen a device demonstrated that consisted of a lever with a free-
> swinging pendulum connected one end - with a motor at the other end
> of the lever. There were rotation sensors at the motor and the fulcrum
> of the pendulum. (This wasn't a Lego device) The software was able to
> jiggle the motor about until both lever and pendulum were
> pointed straight up - and to balance them there indefinitely.
> You could even push the pendulum with quite a bit of force to
> try to knock it over and the system would catch it and rebalance
> the system within a small fraction of a second. The entire thing
> was completely hypnotic because it worked with more speed and
> precision than you'd think possible. It was the robotic equivelent
> of balancing a pencil point-down on the tip of your finger without
> moving your arm...and then letting someone try to knock it off your
> finger without losing it!
>
> This was done by emulating the physics of the system in software
> and applying the precise amount of force theoretically needed to
> exactly halt the pendulum in the vertical position. By recomputing
> this solution about 500 times a second and adjusting the speed of
> the motor accordingly, the system could have the pendulum appear
> to stop dead in the correct position.
>
> I wish I could recollect where I'd seen that - I think it was some
> college student's term-paper project shown at a local science fair.
>
> > A gyro would eliminate that, although I suspect building a compact lego one
> > would be tricky.
>
> Whilst a gyro helps to prevent the robot from falling, it also makes it
> harder to correct any tilt you do accumulate. However, it may just give
> you more time to react which could be a net win.
>
> > As an alternative I am thinking of using an IR distance sensor to measure
> > the lean by measuring the distance to the ground.
>
> It would have to be pretty sensitive. A few degrees of tilt won't produce
> a measurable difference in the distance to the ground - so it'll be a
> very insensitive detector of small amounts of tilt.
>
> --
> Steve Baker HomeEmail: <sjbaker1@airmail.net>
> WorkEmail: <sjbaker@link.com>
> HomePage : http://web2.airmail.net/sjbaker1
> Projects : http://plib.sourceforge.net
> http://tuxaqfh.sourceforge.net
> http://tuxkart.sourceforge.net
> http://prettypoly.sourceforge.net
> http://freeglut.sourceforge.net
>
>
|
|
1 Message in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
Active threads in Robotics
|
|
|
|