System Identification Of MIMO

I have a mechanical system. It is a double pendulum with 2 perpendicular joints. I have a robot link attached on the first joint. It imposes forces on the system. I am trying to get state-space linear model of it. I assumed my inputs are Forces in X,Y, and Z direction, for now, I just considered accelerations of the link as inputs signal.
Output signals are a relative angular position of each joint. First joint around Z and the second joint around X.
I collected the data and extract accelerations as inputs [3] and angular positions as outputs [2].
I need to obtain state-space model. I used the System Identification Tool to extract A, B, C matrices. But the model deviates from the given data.
The objective is to get model and then apply MPC control routine.
See figures. I am looking for any insight or hints to get my model.
the difference is my inputs are imposed on the point where the person holds it.
Acceleration X
acceleration in x [input 1]
Acceleration in Y direction
acceleration in y [input 2]
acceleration in Z [input]
acceleration in Z [input 3]
output 1
angular position of first joint [output 1]
Angular position of second joint
angular position of second joint [output 2]
model vs measurements of first output signal
model vs measurements of second input

6 Comments

Hi Anas,
Can you share more about your steps you took to estimate and validate the state-space model with the System Identification toolbox? It would be good to keep in mind that the inputs you use to validate the model should not take it out of the operating region within which the estimated model is valid.
If you are not already aware you can use these documentation links to troubleshoot and validate you estimates system model:
Best,
Sid
Anas Abulehia
Anas Abulehia on 16 Nov 2020
Edited: Anas Abulehia on 16 Nov 2020
I will elaborate more about what I got. We have a motion capture system which trackes the position and orientation of 3 rigid bodies. First rigid body is the endeffector or a crane. The second two are used to get relative angular position(variables I want to control).
We gave the crane endeffector an input (destination point) while recording rigid body motions.
The inputs are the second derivative of the endeffector position[accelerations]. The output is the relative position of each joint.
Then I imported data to System Identification Toolbox but the model is not good at all.
I did not validate the model. I compared the model output with measurement which I uploaded.
I have chose simluation model in the plot.
Hi Anas,
If the model did not turn out good, we can probably look at the data you have and the steps you took to get the model with the toolbox. Can you share those reproduction steps?
Sid
A very interesting point is that when I change the settings to 1 step prediction the plot is identical with the data.
I got the recorded data. I removed the offset in outputs. Now you can find the data in the attached file. Input is our inputs 3 coloumn and output is our output 2 coloumn. The attached data needs filteration.
The objective is to obtain a feasbile state space model
Kind Regards,
Anas
Hi Anas,
The reason you acheived a good fit with the 1-step prediction method is explained in this article:
Thanks,
Debraj

Sign in to comment.

Answers (0)

Categories

Asked:

on 16 Nov 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!