彭 翾,孟 婥,孫以澤
(東華大學(xué) 機(jī)械工程學(xué)院,上海 201620)
步進(jìn)電機(jī)作為一種典型的機(jī)電控制一體化元件組件,它將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蛘咧本€位移。步進(jìn)電機(jī)的脈沖頻率與轉(zhuǎn)速的特性使其與開環(huán)控制系統(tǒng)能很好地結(jié)合,故而在工業(yè)領(lǐng)域得到了廣泛應(yīng)用。隨著步進(jìn)電機(jī)的發(fā)展,它的控制策略也在不斷地發(fā)生變化,這些控制算法有PID控制、模糊控制、智能控制、自適應(yīng)控制等。智能控制和矢量控制應(yīng)用于較為復(fù)雜的控制,控制精確、高效,但是成本較高,對(duì)系統(tǒng)穩(wěn)定性的要求也比較高。一般不太復(fù)雜的系統(tǒng)主要采用PID控制、自適應(yīng)控制,但是自適應(yīng)控制需要與其他控制方式結(jié)合才可以使性能最大化,PID控制可以與其他任何控制方式配合,充分發(fā)揮雙方的效果,但是由于其參數(shù)的不確定性使其對(duì)電機(jī)控制有一定局限性[1-2]。
本文以控制步進(jìn)電機(jī)系統(tǒng)速度為目的,把PID控制和現(xiàn)代控制有機(jī)結(jié)合,構(gòu)建一般情況下適合于步進(jìn)電機(jī)控制要求的專家PID控制算法,基于24HD320D8這款步進(jìn)電機(jī),設(shè)計(jì)了2條專家規(guī)則調(diào)整PID算法參數(shù),給出一種專家PID控制器,通過仿真說明本算法對(duì)步進(jìn)電機(jī)速度的控制作用。
實(shí)現(xiàn)步進(jìn)電機(jī)的研究和控制需要建立它的數(shù)學(xué)模型,如圖1所示為步進(jìn)電機(jī)數(shù)學(xué)模型。步進(jìn)電機(jī)涉及電氣和機(jī)械2個(gè)部分,以這2個(gè)部分建立其數(shù)學(xué)模型,其中假設(shè)電氣部分的磁路不飽和且線性化,將其等效為具有混合式步進(jìn)電機(jī)拓?fù)涮匦缘碾娐罚粰C(jī)械部分由阻尼系數(shù)和慣性力矩的狀態(tài)矢量模型來描述。

圖1 步進(jìn)電機(jī)數(shù)學(xué)模型Fig.1 Model of stepping motor
依據(jù)圖1步進(jìn)電機(jī)模型建立兩相混合式步進(jìn)電機(jī)的數(shù)學(xué)模型。考慮繞組電氣部分的影響,步進(jìn)電機(jī)在工作時(shí)會(huì)產(chǎn)生反電動(dòng)勢,步進(jìn)電機(jī)繞組的反電動(dòng)勢與轉(zhuǎn)子角速度、轉(zhuǎn)子產(chǎn)生的磁場和定子繞組的匝數(shù)有關(guān),忽略匝數(shù)的影響,磁場的大小可以反應(yīng)轉(zhuǎn)子產(chǎn)生扭矩的大小,根據(jù)磁路的法拉第電磁感應(yīng)定律得出混合式步進(jìn)電機(jī)A、B相反電動(dòng)勢為

式中:Km為電機(jī)轉(zhuǎn)矩常數(shù);θ為轉(zhuǎn)子的機(jī)械角度;ω為轉(zhuǎn)子角速度;Zr為每一個(gè)轉(zhuǎn)子級(jí)齒數(shù)。
繞組A、B的電阻和自感相同,忽略高次諧波,根據(jù)歐姆定律得出A、B相電壓為

式中:R為A、B兩相電阻;L為A、B的自感;iA和iB分別為電機(jī)兩相電流;LM為電機(jī)相繞組之間的互感;分別為A、B相電流的變化率。
假設(shè)電機(jī)轉(zhuǎn)矩恒定,電機(jī)轉(zhuǎn)矩對(duì)于電機(jī)內(nèi)部表現(xiàn)為A、B相電磁轉(zhuǎn)矩相加再減去電機(jī)本身的定位轉(zhuǎn)矩,即

式中:Te為電機(jī)轉(zhuǎn)矩即電機(jī)內(nèi)部輸出的轉(zhuǎn)矩。
根據(jù)物理學(xué)公式得出電動(dòng)機(jī)與負(fù)載之間的運(yùn)動(dòng)方程為

式中:J為轉(zhuǎn)動(dòng)慣量;B為制動(dòng)阻尼常量;TL為負(fù)載轉(zhuǎn)矩。
將式(1)~式(5)代入式(6),可得

步進(jìn)電機(jī)的數(shù)學(xué)模型比較復(fù)雜,涉及參數(shù)眾多,根據(jù)所需要研究的對(duì)象不同可以得到不同的傳遞函數(shù)[3]。給步進(jìn)電機(jī)輸入脈沖信號(hào)使其執(zhí)行相應(yīng)的工作,假設(shè)希望步進(jìn)電機(jī)轉(zhuǎn)過角度θ1,但是它卻轉(zhuǎn)過了θ2,則可知步進(jìn)電機(jī)的傳遞函數(shù)為

假設(shè)步進(jìn)電機(jī)單相勵(lì)磁,無負(fù)載,由式(3)、式(4)、式(6)可得步進(jìn)電機(jī)運(yùn)動(dòng)方程為

假設(shè)轉(zhuǎn)子達(dá)到平衡位置時(shí)θ˙=0,轉(zhuǎn)子由于慣性產(chǎn)生了細(xì)微的振蕩為單相勵(lì)磁,所以電流不變,增量 δθ=θ2-θ1:

由于系統(tǒng)響應(yīng)的時(shí)間沒有差別,式(12)可以作為步進(jìn)電機(jī)速度的傳遞函數(shù)[4]。本文選用步進(jìn)電機(jī)的型號(hào)為24HD320D8,其電機(jī)參數(shù)如表1所示。

表1 步進(jìn)電機(jī)24HD320D8的性能參數(shù)Tab.1 Performance parameter of stepping motor 24HD320D8

式(13)是在研究轉(zhuǎn)速的基礎(chǔ)上推導(dǎo)的步進(jìn)電機(jī)的傳遞函數(shù)。
對(duì)于典型的控制過程,運(yùn)用比例(P)、積分(I)和微分(D)的PID控制是比較理想的,它具有控制簡單、易實(shí)現(xiàn)、適用面廣、控制參數(shù)相互獨(dú)立、參數(shù)的選定比較容易等優(yōu)點(diǎn),尤其在電機(jī)控制的研究中,希望控制方法既可以滿足性能期望,又可以降低系統(tǒng)的復(fù)雜程度,以提高系統(tǒng)可靠性并且降低成本,所以電機(jī)控制多采用PID控制。
PID控制器控制調(diào)整的實(shí)現(xiàn)方法有很多種,例如模糊PID、單神經(jīng)元PID等。這些方法的優(yōu)點(diǎn)是結(jié)構(gòu)簡單,但需要實(shí)時(shí)權(quán)值優(yōu)化,算法整體復(fù)雜度較高。若可以根據(jù)控制經(jīng)驗(yàn),設(shè)計(jì)出幾條專家規(guī)則用來調(diào)整PID控制,從而給出一種專家PID控制器,可能會(huì)是實(shí)現(xiàn)步進(jìn)電機(jī)速度控制的一種有效辦法。
專家PID控制的實(shí)質(zhì)是基于受控對(duì)象和控制規(guī)律的各種知識(shí),無須知道被控對(duì)象的精確模型,利用專家經(jīng)驗(yàn)來設(shè)計(jì)PID參數(shù)。專家PID控制是一種直接型專家控制器[5]。圖2所示為根據(jù)上述傳遞函數(shù)進(jìn)行實(shí)驗(yàn)所得出的速度階躍響應(yīng)曲線。
根據(jù)式(13)計(jì)算其傳遞函數(shù)為

圖2 步進(jìn)電機(jī)速度階躍響應(yīng)曲線Fig.2 Step response curve of stepping motor speed
對(duì)圖2中各點(diǎn)做如下說明,B點(diǎn)、D點(diǎn)、F點(diǎn)目標(biāo)值為90 r/min,C點(diǎn)為 110 r/min,E點(diǎn)為 84 r/min,G點(diǎn)為95 r/min。
在圖 2 中,AB,CD,EF,……區(qū)域,誤差朝絕對(duì)值減小的方向變化,此時(shí),可采取等待措施,相當(dāng)于實(shí)施開環(huán)控制;BC,DE,F(xiàn)G,……區(qū)域,誤差朝絕對(duì)值增大的方向變化,此時(shí),可根據(jù)誤差的大小分別實(shí)施較強(qiáng)或一般的控制作用,以擬制動(dòng)態(tài)誤差[6-7]。
令e(k)表示離散化的當(dāng)前采樣時(shí)刻的誤差值,在這里所指的是轉(zhuǎn)速的誤差,即實(shí)際轉(zhuǎn)速與期望轉(zhuǎn)速的差值。 e(k-1),e(k-2)分別表示前一個(gè)和前 2個(gè)采樣時(shí)刻的誤差值,則有

根據(jù)誤差及其變化進(jìn)行如下分析:設(shè)定限值M1、M2,M1的值用來控制誤差的超調(diào)量,取值規(guī)則是取略小于誤差極大值的同比大小;M2的值用來控制誤差朝絕對(duì)值增大方向變化時(shí)控制作用施加值的大小,取值規(guī)則取略小于誤差極小值的同比大小,M1>M2>0;em(k)為誤差 e 的第 k 個(gè)極值;u(k)為第 k次控制器的輸出;u(k-1)為第k-1次控制器輸出;k1為增益放大系數(shù),k1>1;k為控制周期的序號(hào) (自然數(shù));ε為任意小的正實(shí)數(shù)。
2)當(dāng)e(k)Δe(k)>0或Δe(k)=0 時(shí),說明誤差在朝誤差絕對(duì)值增大方向變化,或誤差為一常值,未發(fā)生變化。


3)當(dāng)e(k)Δe(k)<0、e(k)Δe(k-1)>0 或者Δe(k)=0時(shí)。說明誤差的絕對(duì)值朝減小的方向,或者已經(jīng)達(dá)到平衡狀態(tài)。此時(shí),可考慮采取保持控制器輸出不變。
4)當(dāng)e(k)Δe(k)<0、e(k)Δe(k-1)<0 時(shí),說明誤差處于極值狀態(tài)。如果此時(shí)誤差的絕對(duì)值大,即可考慮實(shí)施較強(qiáng)的控制作用,即


仿真實(shí)驗(yàn)希望反應(yīng)轉(zhuǎn)速控制性能為超調(diào)很小、響應(yīng)過程盡量平穩(wěn)、快速。實(shí)驗(yàn)主要基于轉(zhuǎn)速階躍響應(yīng)圖區(qū)域制定的規(guī)則,運(yùn)用專家PID算法對(duì)PID的參數(shù)進(jìn)行調(diào)整,得出轉(zhuǎn)速階躍響應(yīng)圖和誤差響應(yīng)圖,和常規(guī)PID的控制進(jìn)行比較得出本算法的優(yōu)勢[8]。
用常規(guī)的PID控制方法進(jìn)行步進(jìn)電機(jī)的仿真,P、I、D的值根據(jù)所要求的轉(zhuǎn)矩2 N·m及所要達(dá)到的轉(zhuǎn)速 90 r/min,可設(shè) kP=0.6,kI=0.03,kD=0。
參數(shù)M1、M2的設(shè)定主要是根據(jù)圖2中各個(gè)區(qū)域的極值大小來確定,在誤差絕對(duì)值逐漸變小的AB、CD、EF區(qū)域,可以根據(jù)規(guī)則1,實(shí)施開環(huán)控制,由于A點(diǎn)是轉(zhuǎn)速變化到最小的極值,依據(jù)A點(diǎn)的轉(zhuǎn)速設(shè)定開環(huán)控制閾值M1,其對(duì)目標(biāo)值的同比百分?jǐn)?shù)為則可設(shè)定M1=0.8;而對(duì)于BC,DE,F(xiàn)G區(qū)域,誤差逐漸變大,可以根據(jù)規(guī)則2,在到達(dá)G點(diǎn)時(shí)已經(jīng)快要趨于平穩(wěn),所以根據(jù)G點(diǎn)的轉(zhuǎn)速來設(shè)定控制閾值M2,其對(duì)目標(biāo)值的同比百分?jǐn)?shù)為0.055,則可設(shè)定M2=0.06。而參數(shù)中k1的確定就需要根據(jù)系統(tǒng)所要完成的控制效果來設(shè)定,經(jīng)過多次仿真實(shí)驗(yàn)將其值設(shè)為k1=3,根據(jù)設(shè)定參數(shù)的大小進(jìn)行Matlab仿真實(shí)驗(yàn),得出曲線如圖3、圖4所示。
如圖3、圖4所示,專家PID控制器轉(zhuǎn)速的階躍響應(yīng)和誤差調(diào)整時(shí)間約為0.05 s,控制過程平穩(wěn)、快速、超調(diào)較小,而普通PID控制器轉(zhuǎn)速的階躍響應(yīng)和誤差調(diào)整時(shí)間為0.1 s,控制過程中轉(zhuǎn)速會(huì)出現(xiàn)波動(dòng)和超調(diào)的現(xiàn)象。實(shí)驗(yàn)結(jié)果表明,專家PID控制器對(duì)步進(jìn)電機(jī)的速度可以實(shí)現(xiàn)平穩(wěn)快速的控制,控制性能良好。

圖3 普通PID控制和專家PID控制階躍響應(yīng)比較曲線Fig.3 Comparison of the step response curves of common PID control and expert PID control

圖4 普通PID控制和專家PID控制誤差響應(yīng)比較曲線Fig.4 Comparison of the error response curves of common PID control and expert PID control
針對(duì)復(fù)雜的步進(jìn)電機(jī)系統(tǒng)控制的問題,以控制步進(jìn)電機(jī)的轉(zhuǎn)速為目的,本文研究了步進(jìn)電機(jī)轉(zhuǎn)速的專家PID控制方法。提出了一種簡單的專家PID控制方法,對(duì)步進(jìn)電機(jī)加速特性適應(yīng)能力強(qiáng)。通過仿真實(shí)驗(yàn),與普通PID控制方法相比,所提專家PID控制方法高效、控制效果好,易于采用較低檔次的單片機(jī)等器件實(shí)現(xiàn),為步進(jìn)電機(jī)的應(yīng)用提供了一種可選的控制方法。
[1]潘健,劉夢薇.步進(jìn)電機(jī)控制策略研究[J].現(xiàn)代電子技術(shù),2009,32(15):143-145.
[2]劉寶志.步進(jìn)電機(jī)的精確控制方法研究[D].山東:山東大學(xué),2010.
[3]徐文強(qiáng),閆劍虹.二相混合式步進(jìn)電動(dòng)機(jī)傳遞函數(shù)模型推導(dǎo)[J].空間電子技術(shù),2011(3):50-53.
[4]李錫文,姜德美,謝守勇.步進(jìn)電動(dòng)機(jī)加速運(yùn)行控制研究[J].微電機(jī),2007(10):45-47.
[5]鄒乾.兩相混合式步進(jìn)電機(jī)的模糊PI控制方法研究[D].浙江:浙江大學(xué),2010.
[6]史敬灼,劉玉.超聲電機(jī)簡單專家PID速度控制[J].中國電機(jī)工程學(xué)報(bào),2013,33(36):120-125.
[7]Kim W,Choi I,Chung C.Microstepping with PI feedback and feedforward for permanent magnet stepper motors[J].ICCASSICE,2009(8):306-607.
[8]堵杰,林小玲.MATLAB在異步電機(jī)仿真中的應(yīng)用[J].微特電機(jī),2001(1):19-21.