observability staircase form for MIMO system
조회 수: 18 (최근 30일)
이전 댓글 표시
I have a problem with 'obsvf',I used this function to decomposes the state-space system with matrices A,C,B as below into the observability staircase form but the result isnot correct,why? A= [-1.0817,0.0477,-0.3793,-0.2781,1.0423,0.1548,-0.0242,0.4453;1.6776,-0.0384,0.7005,-0.0995,-0.5439,-0.0698,0.0345,0.4453;-1.0103,0.0448,-0.4566,-0.2778,1.1249,-0.0698,-0.0093,0.4453;3.8207,-0.5175,1.2384,0.0208,-0.5604,-0.0698,0.0601,-1.6810; 1.6725, 0.0309,0.6954,-0.0989,-361.5704,-0.0698, 0.0601,0.4453;1.6725, 0.0309,0.6954, -0.0989,-0.5604,-361.0798,0.0601,0.4453; 1.6725,0.0309,0.6954,-0.0989,-0.5604,0.0698,-360.9499, 0.4453; 1.6725, 0.0309,0.6954,202.8811,-0.5604,-0.0698,0.0601,-360.5647]; B=[0,0,0,0;0,0,0,0;0,0 ,0,0;0,0,0,0;361.0100,0,0,0;0,361.0100,0,0;0,0,361.0100,0; 0,0,0,-505.4200]; C=[0,0,0,0,3.3046,0,0,0; 0,0,0,0,0,2.2460e-01,0,0; 3.8641e-02,3.8641e-02,3.8641e-02,4.0534e-03,0,0,1.7949e-01,0; 5.4840e-01,5.4840e-01,5.4840e-01,5.7526e-02,0,0,0,2.1263; 2.8517e+01,2.8517e+01,2.8517e+01,2.9914,0,0,0,0; 0,0,0,4.0161e-01,0,0,0,0; 5.5978e-01,-4.9640e-01,-4.9640e-01,0,0,0,0,0; -1.5096e-01,9.0522e-01,-1.5096e-01,0,0,0,0,0; -4.0881e-01,-4.0881e-01,6.4737e-01,0,0,0,0,0; -9.0922e-04,-2.5509e-03,2.0460e-03,0,0,0,6.1523e-03,-5.1355e-03]; [Abar,Bbar,Cbar,T,k]= obsvf(A,B,C); sum(K)=8; but Ob = obsv(A,C); rank(Ob)=4 why????????????????
댓글 수: 0
답변 (2개)
Rajiv Singh
2012년 10월 26일
OBSV reference page has this tip:
obsv is here for educational purposes and is not recommended for serious control design. Computing the rank of the observability matrix is not recommended for observability testing. Ob will be numerically singular for most systems with more than a handful of states. This fact is well documented in the control literature. For example, see section III in http://lawww.epfl.ch/webdav/site/la/users/105941/public/NumCompCtrl.pdf
So rank test of Ob is not going to be reliable. Note that OBSVF uses a tolerance of 10*n*norm(a,1)*eps, when not specified. This is about 1.0064e-12 for your example. Now if you check rank with this tolerance rank(Ob, 1.0064e-12), you get a value of 8 which agrees with sum(k).
댓글 수: 0
Azzi Abdelmalek
2012년 10월 26일
- obsvf: gives you another state representation (observable forme)
- obsv(A,C) returns the observability matrix [C; CA; CA^2 ...]
They are completly differents
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Computations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!