@TheBeefBaron Matlab is used to implement the controller algorithm, and to generate RTW code to run on a target computer. The modeling is done with euler parameters(by hand if you want), but that's a whole other masters degree.
@oyvindbjo Nah the math is the easy part! Did you use the transfer functions in MATLAB, or did you use simulink? And the RTW code you mention, is that creating a C code that you run on a microcontroller or do you have a separate computer and are using the 9-pin DIN connections as input and output signals? Did you specify the inputs and outputs you were connecting to in MATLAB or did you have to modify the code it output? Sorry for all the questions I'm sure you're busy with school.
@TheBeefBaron Simulink is used, but since the system is nonlinear almost all math are implemented in S-functions. The system is controlled by a target pc that runs the real-time operating system QNX, with a custom device driver to interface an IO card. Code that runs on the target pc is generated by RTW wich gives you c-code. To link the RTW c-code with the QNX device drivers you need to make S-functions in Simulink. In a way you modify the c-code but you do it through S-functions....
This is why I love science :) It might be pendulums this time, but who can possibly guess what it might be with even more advanced computers, robots, and innovations? My generation is gonna have a blast!
Holy shit! I thought both double-pendulum and Furuta were hard enough by themselves...
How high up does the control law actually go in this case? Intuition says in steady state, it has to be something like fourth order or above. And what's the amount of feedback?
I don't even want to guess how you get it to self-erect...
@ssyreeni There are several controllers: swing-up controller of the first rod, then a balancing controller of the first rod. These two controllers doesn't care about the second rod, it's just noise, so a four state controller is used. For the swing up of the second rod and balancing of the whole system six state controllers are used
The system uses a 1.5KW motor, so quite dangerous......
The jitters are a result of several problems. Quantization is one of them. There is also Delay in the acquisition system, delay from computation of the controller algorithm and flexibility in the rods.
The choice of balancing controller which uses full state feedback with high gain on the angular velocitys, is a problem since this states isn't measured and the estimation used in this video imposes delay(and inherently does feedback of vibrations).
This is serious stuff man! Congrats!
RicardoATBarbosa 10 months ago
Very very cool!
funkboxing 10 months ago
HOORAY SCIENCE! But seriously, what software did you use to model and control that? It's very neat.
TheBeefBaron 1 year ago
@TheBeefBaron Matlab is used to implement the controller algorithm, and to generate RTW code to run on a target computer. The modeling is done with euler parameters(by hand if you want), but that's a whole other masters degree.
oyvindbjo 1 year ago
@oyvindbjo Nah the math is the easy part! Did you use the transfer functions in MATLAB, or did you use simulink? And the RTW code you mention, is that creating a C code that you run on a microcontroller or do you have a separate computer and are using the 9-pin DIN connections as input and output signals? Did you specify the inputs and outputs you were connecting to in MATLAB or did you have to modify the code it output? Sorry for all the questions I'm sure you're busy with school.
TheBeefBaron 1 year ago
@TheBeefBaron Simulink is used, but since the system is nonlinear almost all math are implemented in S-functions. The system is controlled by a target pc that runs the real-time operating system QNX, with a custom device driver to interface an IO card. Code that runs on the target pc is generated by RTW wich gives you c-code. To link the RTW c-code with the QNX device drivers you need to make S-functions in Simulink. In a way you modify the c-code but you do it through S-functions....
oyvindbjo 1 year ago
@oyvindbjo Cool thanks I might try playing with something like this. I could use a refresh on some controls work.
TheBeefBaron 1 year ago
That is pretty damn impressive!!!
nlReWout 1 year ago
its amazing science really. but i wonder, whats the use of a machine like this?
andresdelvado 1 year ago
@andresdelvado sooooooo many uses from programmes like this u can make self stabilising .....anythings heheh
relentlessaddict98jm 1 year ago
This is why I love science :) It might be pendulums this time, but who can possibly guess what it might be with even more advanced computers, robots, and innovations? My generation is gonna have a blast!
scottycanes 1 year ago
Holy shit! I thought both double-pendulum and Furuta were hard enough by themselves...
How high up does the control law actually go in this case? Intuition says in steady state, it has to be something like fourth order or above. And what's the amount of feedback?
I don't even want to guess how you get it to self-erect...
ssyreeni 2 years ago
@ssyreeni There are several controllers: swing-up controller of the first rod, then a balancing controller of the first rod. These two controllers doesn't care about the second rod, it's just noise, so a four state controller is used. For the swing up of the second rod and balancing of the whole system six state controllers are used
The system uses a 1.5KW motor, so quite dangerous......
oyvindbjo 1 year ago
Wow!
ettienneclaase 2 years ago
very interesting pendulum system. i had never seen it before. so many underactuated variables (passive degrees of freedom).
Kolyubin 2 years ago
Double pendulums are always relevant. Gotta love them!
noissez 2 years ago
Pretty neat...
youdoxie 2 years ago
Impressive!
BorisCorr 2 years ago
very nice
csikjarudi 3 years ago
Most impressive! Congratulations!
cpu088 3 years ago
The jitters are due to quantization?
The jitters are a result of several problems. Quantization is one of them. There is also Delay in the acquisition system, delay from computation of the controller algorithm and flexibility in the rods.
The choice of balancing controller which uses full state feedback with high gain on the angular velocitys, is a problem since this states isn't measured and the estimation used in this video imposes delay(and inherently does feedback of vibrations).
oyvindbjo 3 years ago
That's pretty impressive...
The jitters are due to quantization?
goWrite 3 years ago