目前顯示的是有「MATLAB」標籤的文章顯示全部
[matlab練習] 實作離散系統之單位步階響應 (差分方程與轉移函數)

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 解題步驟 Step1.設定取樣時間 上升時間/10  or  上升時間/6   Step2.設定所有值的初始值設為0 時間等於0時,系統是靜態的,所以所有值的初始值設為0。 Step3.設定參考輸入 (reference input)與迭代次數 本例設 1.0 Step4.使用差分方程求解 要留意的地方為,matlab是從1開始算,因此最後要繪製時間為0時,要記得減一。 Step5.畫出響應圖 使用差分方程求解出的響應圖 使用轉移函數求解出的響應圖 1.…

閱讀完整內容
matlab控制器設計 總覽

圖片來源: <unsplash>   matlab入門 基礎matlab學習筆記 Simulink基礎操作筆記 [matlab練習] 實作Notch Filter 控制器設計 控制系統規格 [matlab練習]用Simulink實作控制器回授模擬 根軌跡繪圖筆記 [matlab練習]繪製奈式圖與波德圖 [matlab練習] 設計滿足規格的相位領先(Phase-Lead)控制器 [matlab練習] 設計滿足規格的相位落後(Phase-Lag)控制器 離散系統 [matlab練習] 差分方程實作 [matlab練習] 離散系統的狀態方…

閱讀完整內容
[matlab練習] 類比控制器離散化設計---使用極零點匹配(matched)方法

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 解題步驟 Step1.設定取樣時間 上升時間/10  or  上升時間/6   Step2.受控體離散化 一定會使用  ZOH(Zero-Order Hold) 。 先求受控體轉移函數,使用 tf() 指令。 得到連續系統的受控體,使用 c2d() 指令,將系統離散化。c2d()指令的參數順序: 原來系統、取樣時間、離散化的方法 。 獲得離散的轉移函數後,使用 tfdata() 指令之功能為將轉移函數之分子和分母抽出來。"v"…

閱讀完整內容
[matlab練習] 類比控制器離散化設計(使用Trapezoid方法)

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 解題步驟 Step1.設定取樣時間 上升時間/10  or  上升時間/6   Step2.受控體離散化 一定會使用ZOH(Zero-Order Hold)。 先求受控體轉移函數,使用tf()指令。 得到連續系統的受控體,使用 c2d()指令,將系統離散化。c2d()指令的參數順序:原來系統、取樣時間、離散化的方法。 獲得離散的轉移函數後,使用tfdata()指令之功能為將轉移函數之分子和分母抽出來。"v"參數表示以向量形式呈現。…

閱讀完整內容
[matlab練習] 類比控制器離散化設計(使用Backward方法)

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 解題步驟 Step1.設定取樣時間 上升時間/10  or  上升時間/6   Step2.受控體離散化 一定會使用ZOH(Zero-Order Hold)。 先求受控體轉移函數,使用tf()指令。 得到連續系統的受控體,使用 c2d()指令,將系統離散化。c2d()指令的參數順序:原來系統、取樣時間、離散化的方法。 獲得離散的轉移函數後,使用tfdata()指令之功能為將轉移函數之分子和分母抽出來。"v"參數表示以向量形式呈現。…

閱讀完整內容
[matlab練習] 類比控制器離散化設計(使用Forward方法)

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 解題步驟 Step1.設定取樣時間 上升時間/10  or  上升時間/6   Step2.受控體離散化 一定會使用 ZOH(Zero-Order Hold) 。 先求受控體轉移函數,使用tf()指令。 得到連續系統的受控體,使用 c2d()指令,將系統離散化。c2d()指令的參數順序:原來系統、取樣時間、離散化的方法。 獲得離散的轉移函數後,使用tfdata()指令之功能為將轉移函數之分子和分母抽出來。"v"參數表示以向量形式呈…

閱讀完整內容
[matlab練習] 實作零階等效離散化之系統步階響應

1.matlab解法 1.1 m檔案 --- clc %清除命令視窗 clear all %清除所有環境變數 A = [0 1; -10 -1.8]; B = [0; 1]; C = [1 0]; D = 0; Ts = 1; %取樣時間 G = ss(A, B, C, D); %建立連續系統之狀態方程 G3 = c2d(G, Ts); %將連續系統離散化,指令為c2d figure('name', 'Zero Order Hold') step(G, G3) --- 1.2 重點摘要 1.如果是…

閱讀完整內容
[matlab練習] 實作離散系統轉移函數之步階響應

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 m檔案 --- clc %清除命令視窗 clear all %清除所有環境變數 num = [0.6321 -0.6321]; den = [1 -1 0.6321]; Ts = 1; %取樣時間 G2 = tf(num, den, Ts); %tf()為建立轉移函數的指令 figure('name', 'Transfer Equation') step(G2) --- 1.2 輸出波形 --- #離散系統 #轉移函數…

閱讀完整內容
[matlab練習] 離散系統的狀態方程實作

來源:曾傳蘆老師<控制器設計與應用> 1.matlab解法 1.1 m檔案 --- clc %清除命令視窗 clear all %清除所有環境變數 A = [0 1; -0.16 -1]; B = [1; 1]; C = [1 0]; D = 0; Ts = 1; %取樣時間 G1 = ss(A, B, C, D, Ts); %ss()為建立狀態方程的指令 figure('name', 'Dynamic Equation') step(G1) --- 1.2 重點摘要  1.使用ss(…

閱讀完整內容
[matlab練習] 差分方程實作

來源:曾傳蘆老師<控制器設計與應用> 1. Simulink 解法 1.1參數設定 Sampling time (取樣時間) 設 1 。 u(k-2) 的 Initial value (初始值) 設 1。 2.2 輸出波型 2. matlab解法  2.1 m檔案 --- clc %清除命令視窗 clear all %清除所有環境變數 u(1) = 1; u_2 = 1; %u(0)=1,因為matlab index從1開始,因此用變數代替u(0) for k = 2:10     u(k) = u(k-1) + u_2…

閱讀完整內容
[matlab練習] 設計滿足規格的相位領先(Phase-Lead)控制器

設計一相位領先控制器,使閉迴路系統滿足以下條件: Kv >= 12 PM >= 40度 --- 解題步驟 Step1. 求 K 值 K = 12 Step2. 求系統相位邊限(PM)  值 (phi_l) 將K = 12代入未補償系統,以matlab求之,程式如下: clc clear all k = 12; num = k; den = [1 1 0]; G = tf(num, den) margin(G) 從圖得知,Pm = 16.4 deg ( ph_l = 16.4 ), Wn = 3.39 Step3.求最…

閱讀完整內容