Just out of curiosity...
How will the robot rise if it is in a initial horizontal position? Alone I think, will not!
Anyway, JOE is very impressive!
The PBP in my opinion is a little slow for the required math.
Ioannis
Just out of curiosity...
How will the robot rise if it is in a initial horizontal position? Alone I think, will not!
Anyway, JOE is very impressive!
The PBP in my opinion is a little slow for the required math.
Ioannis
Last edited by sayzer; - 24th January 2007 at 08:42.
"If the Earth were a single state, Istanbul would be its capital." Napoleon Bonaparte
Ioannis,
I don't think Joe can stand from a horisontal position on it's own. If I ever get mine to work it will hopefully be something like this one:
http://www-robotics.cs.umass.edu/Res...uBot/uBot.html
In one of the videos they show how it recovers from its "resting" position. Very cool and stable two wheeler.
The math seems to range from rather complicated to extremly complicated. Since my mathskills are rather (very, in this case) limited I'm aming for complicated at the most. I'm confident it CAN be done with PBP i just have to understand HOW it works.
I have quadrature encoders mounted on the wheels and I'm thinking I can calculate the robots acceleration by comparing current speed with previous speed and subtract that from the acceleromter reading ending up with 'pure' tilt. My concern now is that the resolution of the encoders are to low. But hopefully I'll be able to understand this Kalman thing any year now..... ;-/
Atleast it's a fun project :-)
/Henrik Olsson.
I don't know if anyone has investigated this one
http://www.circuit-ed.com/accel.htm
Might be worth a try for the angle part and not toooo much $.
soo..from reading the nuts n volts article, i think the PBP is fast enough. After all, PBP gets compled into ASM, even bloated ASM will run pretty well at 40mhz with only a few tasks, right? this is the advantage of picbasic over parallax..
the nuts n volts december 2006 article pretty much spells it out.. in c though.. they use a RTOS as well.. real time operating system.. this is a type of OS with direct control of hardware. windows is not RTOS, linux is, for example..
the october 2006 article, which i cannot find covers the math, probably in pretty easy to understand terms.. i suggest you look for that... otherwise why not teach yourself the mathematics you need? how hard can it be? brak it into bits... find the main equation and do your best to understand it, then look at some code... the code will look much different...
ive never tried this type of project, but there are a ton of resources.. i watched a video of some really stable 2-wheelers.. off roading, over curbs, etc... also a relaly cute one that could follow children wearing red and had very compelling movement characteristics due to the PID correction being a bit coarse... it dipped and swayed with the child...
anyways... they list these resources:
www.geology.csmu.edu/~dpa-www/robo/nbot
http://autopilot.sourceforge.net/gallery.html
barello.net/Robots/gyrobot/index.htm
jormundgand.net/projects/crunch/
sparfkun.com
--------------------
Ronf,
Thank you for that link, good price on that one! But it is a acceleromter so it won't work (on it's own) for sensing tilt in a dynamic enviroment. I have the sensor hardware covered, accelerometer and gyro, it's how to combine the two readings into one stable tilt angle that is the problem/exercise.
Vacpress,
Thank you! The Kalman code that I posted IS from the NV article. They in turn probably got it from the AutoPilot project on Sourcforge, it's written by Trammell Hudson at Rotomotion. They supposedly used to make low cost IMU's but seems to have moved on to bigger high dollar things.
It was indeed the nBot that got me started on this. I have since looked at everything I could find on the net.
What you say about learning the math is what I'm trying to do here ;-) If someone already had ported it PBP it would be easier (relative term) to understand it than from the C code from Rotomotion.
It seems that some get away by just integrating the rate gyro signal but that doesn't work to good with my sensor, which is the ADXRS150 that I got from www.sparkfun.com
I took the same route as the nBot creator and started by balancing a pole on top of a stable (non tilting) platform. So I have the PID code for driving the motors once I have stable tilt angle feeding the PID regulator.
This is a complex project, motivation and time comes and goes but i WILL make it work, someday.... ;-)
Thanks guys!
/Henrik Olsson.
Hi Henrik,
Why not work first on a simplified version of
the self-balancing robot?
==========================================
Version 1: (For flat surfaces only / indoor).
Use a Sharp infrared sensors to measure the distance to
the floor and uses that information to deduce tilt angle.
==========================================
==========================================
Version 2: (For flat and inclined surfaces).
Encoders + rate gyro
==========================================
Try the second version of the self-balancing robot only when
version one works as expected. I am sure that you will
able to re-use part of the code and experience developed
during the realization of the first version.
Best regards,
Luciano
Last edited by Luciano; - 25th January 2007 at 10:52.
Bookmarks