朱偉興, 張 建
(江蘇大學電氣信息工程學院,江蘇鎮(zhèn)江 212013)
交流永磁同步電機以其高轉(zhuǎn)矩/慣性比、高功率等優(yōu)點,在數(shù)控機床、工業(yè)機器人、醫(yī)用設備和火炮等軍工領域的應用已經(jīng)十分廣泛。在實際的工業(yè)控制領域中,一條生產(chǎn)流水線通常由多臺電機驅(qū)動,能否實現(xiàn)多臺電機的協(xié)調(diào)工作,直接關系到生產(chǎn)的可靠性和產(chǎn)品質(zhì)量,如何實現(xiàn)多電機的速度與位置同步控制已成為研究熱點。目前,在交流伺服控制系統(tǒng)中,開始采用各種新型、高性能的器件如數(shù)字信號處理器(DSP)、智能功率控制模塊等實現(xiàn)數(shù)字控制。
目前的主流控制方式有兩種。一是采用一臺DSP作為主控制器,外圍擴展則使用FPGA或者CPLD,這種方法開發(fā)難度大,開發(fā)周期長,對開發(fā)人員要求過高,且產(chǎn)品不利于一般企業(yè)尤其是小型企業(yè)的使用和維護。另一種方法則是使用多臺DSP對電機實行同步控制,該方式對DSP的實時性要求過高,且DSP相互之間可能產(chǎn)生的干擾過大,硬件電路復雜,制作困難。
鑒于以上兩種主流控制方式的局限性,迫切需要一種控制系統(tǒng),即硬件電路制作相對簡單、穩(wěn)定性好,且開發(fā)難度較低,有利于編程,可以被大多數(shù)工程人員所掌握和應用。因此,在這種背景下,本系統(tǒng)著眼于解決傳統(tǒng)控制系統(tǒng)開發(fā)難度大,開發(fā)周期長,硬件電路復雜,干擾過大的問題。
本系統(tǒng)采用了一塊TI公司推出的TMS320F2812 DSP加外圍電路來實現(xiàn)4臺交流伺服電機的位置與速度的同步控制。控制系統(tǒng)結構如圖1所示。
DSP中EVA模塊的定時器1的比較輸出引腳產(chǎn)生PWM波T1PWM來控制1號電機(主電機)的轉(zhuǎn)動,EVA模塊的定時器2的比較輸出引腳產(chǎn)生PWM波T2PWM來控制2號電機(從電機)的轉(zhuǎn)動,EVB模塊的定時器3的比較輸出引腳產(chǎn)生PWM波T3PWM來控制3號電機(從電機)的轉(zhuǎn)動,EVB模塊的定時器4的比較輸出引腳產(chǎn)生PWM波T4PWM來控制4號電機(從電機)的轉(zhuǎn)動。
系統(tǒng)的反饋信號即交流伺服電機轉(zhuǎn)子上的光電編碼器輸出信號,分別接入相應的解碼器HCTL_2021中,4路HCTL_2021解碼器的輸出信號并聯(lián)后接入DSP的GPIO口。DSP通過自帶的運算單元計算出實時的電機轉(zhuǎn)速和位置信息。以1號電機為主電機,其余3臺從電機跟隨主電機轉(zhuǎn)動。

圖1 控制系統(tǒng)結構
系統(tǒng)的硬件電路部分主要包括DSP最小系統(tǒng)電路、抗干擾電路、電平轉(zhuǎn)換電路和解碼電路等。
DSP最小系統(tǒng)主要包括DSP微處理器、供電電源電路、時鐘晶振電路和時鐘復位電路等。這里需要注意的是,如果外界環(huán)境過于復雜、干擾過大,為了保證DSP系統(tǒng)有穩(wěn)定的時鐘供應,最好采用有源時鐘。
由于工廠環(huán)境的復雜性,系統(tǒng)的穩(wěn)定性和抗干擾能力成為了系統(tǒng)設計過程中必須重點考慮的問題。本系統(tǒng)多處使用光耦并采用雙電源供電,隔絕了系統(tǒng)和外部被控制電機之間的電聯(lián)系,很大程度上提高了系統(tǒng)的穩(wěn)定性。本系統(tǒng)在4路DSP的PWM波的輸出端和電機反饋信號輸入端分別進行了光耦隔離。系統(tǒng)輸出端光耦連線圖如圖2所示。

圖2 系統(tǒng)輸出光耦
系統(tǒng)輸入端光耦連線圖如圖3所示。

圖3 系統(tǒng)輸入光耦
這樣系統(tǒng)內(nèi)部產(chǎn)生的干擾不會隨PWM波的輸出傳遞給電機,電機產(chǎn)生的干擾也不會隨著電機的輸入傳遞給系統(tǒng),達到了對干擾的隔離作用。
由于解碼器HCTL_2021和光耦輸出的信號均為5 V,而DSP的GPIO端口所能承受的電平為3.3 V,如果將HCTL_2021或光耦的輸出信號直接供給DSP,將會導致DSP使用壽命急劇縮短甚至燒壞。本系統(tǒng)充分考慮到了外部輸入信號電平問題,在解碼器HCTL_2021和輸入光耦的輸出端增加了電平轉(zhuǎn)換芯片SN74LVC4245A,該芯片的功能是將5 V輸入電平轉(zhuǎn)化為3.3 V輸出電平,從而彌補了外部電平過高,DSP難以承受的問題。電平轉(zhuǎn)換芯片SN74LVC4245A的連線圖見圖4。

圖4 電平轉(zhuǎn)換芯片
作為HCTL_2020的改良版,HCTL_2021在穩(wěn)定性和抗干擾方面都有著突出的表現(xiàn)。OE引腳為解碼器使能端,當其為低電平時,解碼器處于工作狀態(tài)。RST引腳為解碼器清零端,當其為低電平時解碼器計數(shù)值清零。電機反饋的QEP編碼信號通過CHA、CHB輸入給解碼器CHTL_2021,解碼器在輸入時鐘驅(qū)使下每捕獲到一個正電平跳變,計數(shù)值就加1。當控制器來讀取數(shù)值時就通過數(shù)據(jù)總線 D0—D7輸出,輸出高低位選擇端SEL為0時,解碼器輸出高8位;輸出高低位選擇端SEL為1時,解碼器輸出低8位。為了最大限度的節(jié)省 DSP的 GPIO引腳,本系統(tǒng)將 4塊HCTL_2021并聯(lián)后接到 DSP的 GPIO口,DSP通過軟件設置分時讀取4塊HCTL_2021內(nèi)的數(shù)值。解碼器連線如圖5所示。

圖5 HCTL_2021解碼器
由于同步控制涉及多個軸,因此多變量控制成為同步控制的主要控制方法。本系統(tǒng)選擇主從方式:1號伺服電機為主電機,2、3、4號伺服電機處于伺服控制中,它們各自的速度和位置由1號伺服電機的速度和位置所決定,也就是說,1號伺服電機軸起支配軸的作用,而2、3、4號伺服電機軸處于被支配地位,它們時刻跟蹤1號伺服電機軸的速度和位置信號。在同步控制系統(tǒng)運行過程中,2、3、4號伺服電機軸的轉(zhuǎn)速和位置信號變化必須跟隨1號伺服電機軸的速度和位置信號的變化,以此保證多伺服電機軸速度和位置的同步。在本系統(tǒng)中,采用位置控制方式,即用事件管理器模塊的定時器產(chǎn)生頻率可控的PWM波來控制伺服電機的伺服驅(qū)動器,伺服驅(qū)動器再根據(jù)位置控制命令對伺服電機進行伺服控制,PWM波的頻率控制電機的轉(zhuǎn)速,PWM波的個數(shù)控制電機轉(zhuǎn)過的位置。設多伺服電機軸編碼器輸出脈沖數(shù)偏差值為e(k),在k時刻電機的實際反饋轉(zhuǎn)速分別為u1(k)、u2(k)、u3(k)、u4(k)。各伺服電機軸同步速度偏差值:

根據(jù)不同的設計要求可設定多伺服電機軸編碼器脈沖輸出數(shù)允許偏差值的最大變化范圍Δmax,當e(k)≤eM時,系統(tǒng)不需要進行調(diào)節(jié)控制,當e(k)>eM時,需要進行調(diào)節(jié)控制。本系統(tǒng)PID控制器由TMS320F2812通過軟件實現(xiàn),以TMS320F2812芯片中的CPU0定時器產(chǎn)生20 ms的定時中斷,在中斷程序中,計算這20 ms中各伺服電機的編碼器輸出脈沖數(shù),然后將采集的各伺服電機軸的轉(zhuǎn)速和位置信號與1號伺服電機軸的轉(zhuǎn)速和位置信號進行比較,求出偏差值e(k)。模擬PID控制器中比例調(diào)節(jié)器,對偏差做出瞬間快速反應和補償。控制算法軟件流程,當e(k)>eM時,調(diào)節(jié)器立即產(chǎn)生控制作用,使控制量朝著使偏差變小的方向變化,控制作用的強、弱取決于比例系數(shù)Kp,積分調(diào)節(jié)器的作用是把偏差累積的結果作為其輸出。在調(diào)節(jié)過程中,只要有偏差e(k)>eM,積分器的輸出就會不斷變大,直至誤差e(k)<eM輸出才能維持某一常量,使系統(tǒng)在速度指令信號不變的條件下趨于穩(wěn)態(tài)。微分調(diào)節(jié)器的作用是阻止偏差的變化,偏差變化越快,微分調(diào)節(jié)器的輸出也越大。本系統(tǒng)的軟件處理采用增量式調(diào)節(jié):

式中:Δu(k)——1號伺服電機控制量增量,其中i=2,3,4;
u1(k)、ui(k)、ui(k-1)、ui(k-2)——分別是k、k-1、k-2時刻1號伺服電機及i號電機軸的編碼器輸出脈沖采樣值;
Kp——比例系數(shù);
Ki——積分系數(shù),Ki=KpT∑i;
Kd——微分系數(shù),Kd=KpT∑d;
T——采樣周期;
∑i——積分時間常數(shù);
∑d——微分時間常數(shù)。
值得注意的是,此處eM(最大誤差量)需根據(jù)電機不同的運轉(zhuǎn)速度而設定不同的值,速度越高,eM的值應該越大,從而才能保證系統(tǒng)的穩(wěn)定。
本系統(tǒng)軟件實現(xiàn)程序按功能主要分為同步起動部分和采用了PID算法的自動糾正誤差部分。
為了實現(xiàn)4臺電機在任意時刻的位置都是相同的,同步起動4臺電機成為了必然。電機每次轉(zhuǎn)到其固有零點時就會發(fā)出一條高電平信號Z,這就為實現(xiàn)4電機同步起動提供了可能。將4臺電機的Z信號輸出端分別接到DSP的4個捕獲引腳,當DSP的任意一個捕獲引腳捕捉到高電平跳變時,就立即停止該路的PWM波輸出,伺服電機就會立即停止在該電機的固有零點處。當4臺電機都停在各自的固有零點處時,延遲一定時間后,再同時起動,這樣就實現(xiàn)了多電機的同步起動。同步起動程序的流程圖如圖6所示。

圖6 同步起動程序
電機在運轉(zhuǎn)過程中每轉(zhuǎn)一圈將輸出2 500個QEP編碼脈沖,將每一路編碼脈沖經(jīng)過光耦隔離后送入到HCTL_2020的信號輸入端CHA、CHB進行解碼計數(shù)。HCTL_2020有 D0、D1、D2、D3、D4、D5、D6、D7 八個輸出端,一個復位端 RST,一個使能端OE,一個高低位選擇端SEL。本系統(tǒng)在軟件上采用中斷方式分時讀取GPIO上4塊計數(shù)器的計數(shù)結果。以讀取第一塊HCTL_2020芯片上的數(shù)據(jù)為例:配置DSP的CPU定時器0,使其每隔150 μs產(chǎn)生一次周期中斷TINT0,程序進入中斷讀取4塊計數(shù)器的計數(shù)結果。首先置計數(shù)器1的低電平有效使能端OE1=0(在此過程中禁止其余3塊芯片的使能端,分別置它們?yōu)?),然后,先令其高低位選擇端SEL1=0,讀取該芯片的高8位;再令SEL1=1,再讀取其低8位,再將其轉(zhuǎn)化為十進制,保存到變量date1中。可以用類似的方法讀取其余3塊HCTL_2020上的數(shù)據(jù),分別存放在變量date2、date3、date4中。特別注意:由于數(shù)字電路的電平轉(zhuǎn)換需要一定的時間,所以在改變控制信號的電平后需要延遲一定時間,等其真正穩(wěn)定。由于電機轉(zhuǎn)速=60×電子齒輪比×輸入脈沖頻率/每個電機旋轉(zhuǎn)脈沖數(shù),讀取電機轉(zhuǎn)速后根據(jù)上述公式將其轉(zhuǎn)化為脈沖頻率,分別保存在fq1、fq2、fq3、fq4中。本系統(tǒng)以第一臺電機為主電機,其余3臺電機為從電機,分別算出3臺從電機與主電機之間的脈沖頻率差值 Δfq1,Δfq2,Δfq3,然后將差值送入PID函數(shù)中進行調(diào)節(jié)。再將PID調(diào)節(jié)返回值送入控制器輸入部分,調(diào)節(jié)PWM波輸出的頻率。糾正誤差的程序流程如圖7所示。

圖7 自動糾正誤差程序
系統(tǒng)硬件和軟件調(diào)試完成后,選擇韓國MECPAPION公司的交流伺服電機,依照廠方產(chǎn)品設計要求確定了4臺伺服電機的型號分別為APM-SE12MDK、APM-SE09MDK、APM-SE09MDK、APM-SE06MDK,并在負載條件下進行了不同轉(zhuǎn)速的同步運行試驗。根據(jù)系統(tǒng)的精度要求,運行參數(shù)的設置分別為eM=6;n1=200 r/min;eM=6,n1=300 r/min;eM=8,n1=400;eM=10,n1=500 r/min;eM=15,n1=800 r/min;eM=15,n1=900 r/min;eM=20,n1=1 000 r/min。試驗結果表明該系統(tǒng)穩(wěn)定、可靠、安全,運行狀態(tài)良好,完全可以實現(xiàn)設計目標的要求。
[1]CLARKE D W.Application of generalized predictive control to industrial processes[J].IEEE Control Systems Magazine,1988,8(2):49-55.
[2]TEXAS INSTRUMENTS.TMS320F28xDSP serial communication interface(SCI)reference guide[G].2003.
[3]蘇奎峰,呂強.TMS320F2812原理與開發(fā)[M].北京:電子工業(yè)出版社,2005.
[4]萬山明.TMS320F281X DSP原理及應用實例[M].北京:北京航空航天大學出版社,2007.