MATLAB的Controlsystem工具箱提供了單輸入單輸出系統補償器的設計工具sisotool,sisotool是Single Input Single OutputToolbox的縮寫,它是MATLAB的Control system工具箱的子工具箱。要想使用sisotool必須安裝Control system工具箱。sisotool工具箱能利用根軌跡圖或開環系統的伯德圖實現控制系統補償器的設計。在設計補償器時還可以設定有關約束條件,例如阻尼比、自然頻率、超調量、幅值裕度和相位裕度等,設計後還可以顯示補償後閉環系統的階躍回響和閉環系統的頻率特性等。
在許多控制系統補償器的設計過程中,都涉及伯德圖的繪製和補償器參數的設定,如果靠人工來完成,將是一件非常費力的事情,如果採用sisotool工具箱,那么對控制系統補償器的設計將變的非常容易了。
需要注意的是,傳遞函式必須要用MATLAB提供的tf()命令生成傳遞函式,否者sisotool不識別。
然後在MATLAB工作空間中鍵入sisotool,啟動sisotool操作環境。默認視窗的左側是根軌跡的設計畫面,右側為伯德圖的設計畫面。
單擊選單File/Import...,彈出Import System Data對話框。在SISO Models列表框中選中傳遞函式,再單擊中間部分的第一個圖示→,導入系統該傳遞函式,然後單擊“OK”確認,這時視窗中將顯示該系統的開環伯德圖。
補償器的設計相對來說是比較簡便的。首先單擊選單Compensators項,從它的下拉選單中選中Edit,再選擇Edit的子項C,這時會彈出補償器編輯對話框,如圖3所示。通過添加零、極點來補償系統的性能指標。具體作法是:單擊Add Real Zero或Add Real Pole來添加零、極點,並不斷觀察系統的幅值裕量和相位裕量的數值變化情況,直到這些數值基本滿足控制系統的設計要求為止,這時在“Current Compensator”區所顯示的傳遞函式就是補償器的傳遞函式