How to save calculated value into Simulink workspace
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Tomas
am 9 Jul. 2015
Kommentiert: Tomas
am 16 Jul. 2015
Hello,
I have got a question about the State-Space block. I would like to use one of the output values as a coefficient for matrix A .
That means following - I want to calculate y ; demux the output signal; grab the last calculated value and save it into the Simulink workspace as a constant btS (eventually overwrite the initial value which was set in Model properties->Callbacks->InitFcn); use it in the other calculation step.
Unfortunately the To Workspace block doesnt work because it writes the value after the calculation stopped. Is there any way how to do that?
Principle is shown on following figure.

Thank you
0 Kommentare
Akzeptierte Antwort
Sebastian Castro
am 10 Jul. 2015
The easiest thing to do when your system is nonlinear (as in your case) is not to use a State-Space block. Instead, if possible, try decompose your system into foundational blocks like Integrator, Add/Subtract, Gain, etc. blocks.
This way, you can easily feed that output signal back into a Product block without having to do any "hacking" with the workspace.
In fact, you could just take those matrices and implement the state-space math using matrix operations and one Integrator block. That is, xdot = A*x + B*u and y = C*x + D*u. Then, you could use an Assignment block to keep tuning a particular element of A using that one output element.
- Sebastian
3 Kommentare
Sebastian Castro
am 15 Jul. 2015
Yes! All of these multiplications can be done by plain Simulink blocks.
If your matrix is constant (as will be the case for your B, C, D matrices), you can use a Gain block and set its Multiplication parameter accordingly.
If your matrix is not constant (as is the case with your A matrix), you can use a Product block, which also has a Multiplication parameter that you can set for matrix multiplication.
Now, as far as how to create matrices, I'd refer to this link:
- Sebastian
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Foundation and Custom Domains finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
