簡體   English   中英

如何在Matlab中使用系統矩陣獲得多輸入多輸出系統的傳遞函數

[英]How to get transfer function of multi input-multi output system using system Matrices in Matlab

在這里,我有多輸入多輸出系統的矩陣矩陣D不為零 ),我想采用該模型的傳遞函數 尺寸A [9 * 9]

A = [-6.932e-2,17.41,-36.75,0,0,0,-6.0660,-31.54,0;
    -1.435e-4,2.719e-2,-1.411e-3,3.467e-1,0,-9.380e-1,7.139e-2,-1.691e-2,0;
    -4.537e-4,1.870e-3,-2.025e-1,0,1,0,-4.688e-2,7.563e-3,0;
    -1.304e-4,-7.179,-4.916e-1,-6.172e-1,-3.689e-2,7.631e-1,0,0,0;
    2.297e-5,0,-8.667e-1,4.393e-2,-1.947e-1,-2.026e-2,0,0,0;
    1.964e-5,4.263e-2,-1.329e-2,1.233e-3,1.579e-2,-1.600e-1,0,0,0;
    0,0,0,1,1.941e-1,2.771e-1,0,6.258e-2,0;
    0,0,0,0,8.192e-1,-5.736e-1,-5.612e-2,0,0;
    0,0,0,0,6.055e-1,8.648e-1,0,2.006e-2,0]

size  B = [9*4]

B = [0,0,-7.560,9.067e-4;
     -6.952e-3,1.293e-2,0,0;
     0,0,-3.425e-2,-9.577e-7;
     4.249,5.989e-1,0,0;
     0,0,-1.796,0;
     -7.287e-2,-2.877e-1,0,0;
     0,0,0,0;
     0,0,0,0;
     0,0,0,0]

size  C = [7*9]

C = [0,-5.758e-1,0,0,0,0,0,0,0;
     0,0,0,1,0,0,0,0,0;
     0,0,0,0,0,1,0,0,0;
     0,0,1,0,0,0,0,0,0;
     0,1,0,0,0,0,0,0,0;
     0,0,0,0,1,0,0,0,0;
     0,2.719e-2,-1.411e-3,3.467e-1,0,-9.380e-1,7.139e-2,0,0]

size D = [7*4]

D = [-1.298e-1,-1.610e-1,0,0;
     0,0,0,0;
     0,0,0,0;
     0,0,0,0;
     0,0,0,0;
     0,0,0,0;
     -6.952e-3,1.293e-2,0,0]

如何使用Matlab獲得該模型的傳遞函數?

您可以使用ss命令從系統矩陣創建狀態空間模型。 D不為零並不重要,因為MATLAB使用ss創建模型時會使用標准格式:

模型 (圖片來自Wikipedia.org

方程

所以你用

sys = ss(A,B,C,D);

並讀出傳遞函數:

tf(sys)

它返回一個7x4 tf對象,其中包含從每個輸入到每個輸出的傳遞函數。

注意:您在此處發布的矩陣A是不正確的:在某些行中有太多零,但是我認為這是一個簡單的復制粘貼錯誤。 刪除它們后,這可以正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM