主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

直流モーター制御

この例では,設定点コマンドに追従し,負荷外乱に対する感度を下げるための,3つの直流モーター制御手法を比較します。

  • フィードフォワード指令

  • 積分フィードバック制御

  • 等レギュレーター

直流モーターモデルの詳細は,“入門”のモデル作成についての記載を参照してください。

問題の定義

電機子制御の直流モーターでは,印加電圧Vaによってシャフトの角速度wが制御されます。

この例では,負荷変動(モーター負荷に抗するトルクの変化)に対する感度wを下げる,2つの直流モーター制御の手法を示します。

直流モーターの簡易モデルを上図に示しています。トルクTdは,負荷変動をモデル化します。このような変動によって誘発される速度変化を最小限に抑えなければなりません。

この例では,以下の物理参数をします。

R = 2.0;%欧姆L = 0.5;%亨利公里= 0.1;%转矩常数Kb = 0.1;反电动势常数Kf = 0.2;%nms.J = 0.02;% kg.m ^ 2 /秒^ 2

最初に2つの入力(Va, Td)と1つの出力(w)を使用して,直流モーターの状態空間モデルを作成します。

h1 = tf(km,[l r]);%电枢h2 = tf(1,[J Kf]);% eqn运动DCM = SS(H2)* [H1,1];% w = h2 * (h1*Va + Td)dcm =反馈(dcm, Kb, 1, 1);%关闭回电动势循环

メモ:モデルの次数を最小限に抑えるために状態空間形式を使用して計算します。

ここで,電圧Vaのステップ変化に対する角速度応答をプロットします。

stepplot (dcm (1));

プロットを右クリックし,[特性:整定時間]を選択して,整定時間を表示します。

フィードフォワード直流モーター制御の設計

この簡単なフィードフォワード制御構造を使用すると,角速度wを所定の値w_refに設定できます。

フィードフォワードゲインKffはVaからwへの直流ゲインの逆数に設定する必要があります。

凯萨= 1 / dcgain (dcm (1))
凯萨= 4.1000

負荷変動を考慮してフィードフォワード設計を評価するには,変動Td = -0.1 nm (t = 5からt = 10秒の間)として,ステップコマンドw_ref = 1に対する応答をシミュレートします。

t = 0:0.1:15;td = -0.1 *(t> 5&t <10);%负载干扰U = [ones(size(t));Td];% w_ref=1 and Tdcl_ff = dcm * diag([Kff,1]);%添加前馈增益cl_ff。InputName = {“w_ref”“Td”};cl_ff。OutputName =' w ';h = lsimplot (cl_ff, u, t);标题(“设定值跟踪和干扰抑制”)传说('cl \ _ff'%注释情节线([5,5],[。2,3]);线([10、10],[。2,3]);文本(7.5,升至,{“干扰”“T_d = -0.1 nm”},...“变性”“中间”“水平的”“中心”“颜色”“r”);

明显に,フィードフィードフォワード制御でで负荷负荷変にうまく対处できませませ。

フィードバック直流モーター制御の設計

次に,以下のフィードバック制御構造を試してみます。

定常偏差をゼロにするには,以下の形式の積分制御を使用します。

C (s) = K / s
其中k是要确定的。

開ループ1 / s *转移(Va - > w)に適用される根軌跡法を使用すれば,ゲインKを決めることができます。

H = rlocusplot(tf(1,[1 0]) * dcm(1));setoption (h,“FreqUnits”“rad / s”);-15年xlim ([5]);ylim (15) (-15);

曲曲をクリックて,ゲイン値と关键词をを読み取り适切な选択はは読み取り読み取り适切选択,k = 5です.siso设计ツールに,このようなは使,このようなに使使できるguががされてい(详细,ヘルプsisotoolを参照)。

この新しい設計を,同じテストケースの最初のフィードフォワード設計と比較します。

K = 5;C = tf(K,[1]);%补偿器K / scl_rloc = feedback(dcm * append(C,1),1,1);h = lsimplot (cl_ff cl_rloc, u, t);cl_rloc。InputName = {“w_ref”“Td”};cl_rloc。OutputName =' w ';标题(“设定值跟踪和干扰抑制”)传说(“前馈”'反馈w / rlocus''地点'“西北”

根軌跡設計の方が負荷外乱の抑制に適しています。

等直流モーター制御の設計

さらに性能を改善するために,以下のようなフィードバック構造に対する線形2次制御器等)の設計を試してみます。

等スキームでは,誤差の積分のほかに,状態ベクトルx =(我,w)を使用して駆動電圧Vaを合成します。その結果,電圧は以下のような形式になります。

Va = K1 * w + K2 * w/s + K3 * i
其中I为电枢电流。

良好な外乱の抑制を得るために,コスト関数を使用して大きい積分誤差を抑制します。たとえば以下のコスト関数があります。

$ $ C = \ int ^ \ infty_0 (20 q (t) ^ 2 + \ω(t) ^ 2 + 0.01 v_a (t) ^ 2) dt $ $

ここで,

$$ q(s) = \omega(s)/s。$$

このコスト关节なlqrゲインは,以下のように计算れれ。

Dc_aug = [1;Tf (1,[1 0])] * dcm(1);%增加输出w/s到直流电机模型K_lqr = lqry(dc_aug,[1 0;0 20],0.01);

次に,シミュレーション目的の闭ループモデルを导出します。

P = augstate (dcm);%的输入:Va, Td输出:w xC = K_lqr * append(tf(1,[1 0]),1,1);%补偿器,包括1/sol = p *附加(c,1);%开环CL =反馈(OL,眼(3),1:3,1:3);闭合反馈回路cl_lqr = CL(1,[4]);%提取转移(w_ref,Td)->w

これは3つの直流モーター制御設計の閉ループボード線図を比較するプロットです。

bodeplot (cl_ff cl_rloc cl_lqr);

曲曲をし,システムを特定する,データデータ调べます。

直流モーター制御設計の比較

最後に,シミュレーションテストケースで直流モーター制御の3つの設計を比較します。

h = lsimplot(cl_ff,cl_rloc,cl_lqr,u,t);标题(“设定值跟踪和干扰抑制”)传说(“前馈”“反馈(rlocus)”的反馈等方面)'地点'“西北”

等補償器では自由度が高くなるため,負荷外乱が最も効果的に抑制されます(ここで扱った直流モーター制御の3つの設計の中で)。