Multi-dimensional State-Space model in Simulink
조회 수: 7 (최근 30일)
이전 댓글 표시
As a result from a certain model, I get a 3x3 SS. There are three inputs (Acceleration x, Acceleration y, Acceleration rz) and three outputs (Pressure x, Pressure y, Pressure rz).
However, I only know how to implement one of the 9 (3x3) SS representation (for example acceleration x to pressure x) in the `State-Space' block.I know how to mux and demux the acceleration and pressures.
So my question is: How do I get the 3x3 SS in one `State-Space' block?
댓글 수: 0
답변 (2개)
Jonathan Epperl
2014년 1월 8일
If you have the state-space description of you 3 x 3 system, why don't you just enter it into the parameters of the state-space block? It accepts matrices for B, C and D, not just vectors. The only obstacles I can imagine is that you might not be able to enter 0 for D, but it would have to be zeros(3,3).
댓글 수: 0
Thijs
2014년 1월 9일
댓글 수: 1
Jonathan Epperl
2014년 1월 9일
Makes a little more sense now. It sounds like you need to 'assemble' it all into one system. As a primitive example:
You have a system dxdt = Ax + Bu, y = Cx +Du and another one dqdt = Fq+Gr, s = Hq + Jr.
You can combine them into one system by defining z'=[x q], v'=[u r], w'=[y s] (so just stacking the signals) and A1 = blkdiag(A,F), B1 =blkdiag(B, G) and so on to obtain dzdt = A1*z + B1*v and w = C1*z + D1*w.
At least I think so ;)
I'm not sure whether that's such a great idea though. Before you had 9 A-matrices, 21 x 21 each, so 9*21^2=3,969 elements to be stored. If you stack the states to get a single system, the size of the A-matrix will be 9*21 x 9*21, which are 35,721 elements.
참고 항목
카테고리
Help Center 및 File Exchange에서 General Applications에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!