06-04-2010 10:08 AM
Okay, now that the challenge has been going for a little while, here are a few questions:
How many people (and who) are working on solutions for the challenge? Either put a quick post here, or send me an email so I can get an idea of the number of active participants.
Did requiring the CD&SIM module stop anybody from looking at the challenge? If so, I could post a version that doesn't use the CD&SIM module just so people could see what the challenge entails before downloading/installing the CD&SIM module. The CD&SIM module definitely will help with parts of the challenge.
Anybody have any comments, questions, thoughts, anything? Usually challenges generate a lot of dialog between competitors...
Bruce
06-04-2010 10:54 AM
Bruce,
I hope to enter, but have not had any time to even look at it yet.
Probably Ben scared everyone off. But we know he is a big teddy bear.
Lynn
06-04-2010 11:23 AM
06-04-2010 11:34 AM
Just a question but whats the use to code this when there is already a example on the website of NI itself?
Secondly is a double pendulum also okay :P?
06-04-2010 11:47 AM
06-04-2010 12:56 PM
WouterG,
Is this an NI example? I couldn't find it anywhere on the web site. Could you post a link? I would like to see how it works, especially the swing up. This application looks significantly different than the challenge, so it won't do much other than provide ideas.
Bruce
06-04-2010 02:53 PM - edited 06-04-2010 02:57 PM
I'm sure it was somewhere on the NI website. I know it has because I was working with the 3D picture control for my pendulum, and the application is a example for how the use the 3D picture control in labVIEW. But here is the same application on a non-ni website; http://cnx.org/content/m12977/latest/
It doesn't include however the swing up and swing down I notice but that can be implemented pretty easy. Just put a sinus as a setpoint for the position of the little car with a PD as the regulator, and up goes your pendulum. Furthermore the VI uses the old 3D picture controls from labVIEW not the new ones which are now standard in labVIEW, this can be fixed however very easily.
06-04-2010 03:04 PM
The CD&SIM toolkit is useful and it does have a cart and rod example, located at:
..\LabVIEW 2009\examples\Control and Simulation\Case Studies\Mechatronics\Inverted Pendulum\Linear Inverted Pendulum Simulation.vi
.. on my computer
However this (like all the examples) has an explicitly solved state-space for theta=0 (upright), so we're going to have to do a little math to solve it for the other stable (theta=180deg[pi]). The challenge will come in the optimization of transitioning from upright to hanging.
An intriguing challenge that has a lot of subtleties as I continue to look at it.
-Mello
06-04-2010 04:21 PM
Mello,
Actually, I was nice to everybody - I already derived the linearized versions for the simulation. They can be found within the simulation, just under the formula node used for the non-linear calculations. All you have to do is convert them to state-space matrices...
I agree the tough part of the challenge is an efficient swing up and swing down routines, although tuning the stable portions does take a little bit of effort.
For those people that want to start with the easy part, just set the initial conditions to all zero. This will start you with an inverted pendulum, and all you have to do is keep it upright. After you get that working, start on the swing up.
Bruce
06-04-2010 04:29 PM - edited 06-04-2010 04:33 PM
As said for the swing up you just use a PD controller with a sinus as a setpoint. It's the most basic attempt but in my experiments with my pendulum from my post it is also the most effective one, using difficult controllers only will give you headaches. For the steadiness you just use a PID controller.
But there is also a lot of info on the web about this topic.
I think I will try to compete if I find the time but my prio number is finishing my own system since it's my graduation project. I wish everyone good luck!