齊山成,劉海華,劉 毅
(河南工學(xué)院 電氣工程與自動(dòng)化學(xué)院,河南 新鄉(xiāng) 453003)
步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)換為機(jī)械角位移的機(jī)電元件,具有易精確控制、無(wú)累計(jì)誤差、成本低廉等優(yōu)點(diǎn),在運(yùn)動(dòng)控制系統(tǒng)中應(yīng)用廣泛。步進(jìn)電機(jī)作為運(yùn)動(dòng)控制系統(tǒng)中的執(zhí)行機(jī)構(gòu),其機(jī)械角位移和轉(zhuǎn)速分別與輸入的脈沖個(gè)數(shù)和頻率成正比。對(duì)輸入脈沖的精確控制至關(guān)重要,相應(yīng)的軟硬件設(shè)計(jì)一直都是步進(jìn)電機(jī)控制的重點(diǎn)研究方向。目前,市面上的運(yùn)動(dòng)控制板卡多為通用型單軸控制板卡,難以滿足具有特定需求的多軸系統(tǒng)控制[1]。隨著嵌入式技術(shù)的快速發(fā)展,DSP控制芯片的性能有了大幅提升,將DSP用于多軸運(yùn)動(dòng)控制系統(tǒng)中,不僅可以提高實(shí)時(shí)性和可靠性,而且能夠降低系統(tǒng)成本。本文設(shè)計(jì)了一款多軸運(yùn)動(dòng)控制系統(tǒng),該系統(tǒng)以DSP為控制核心,采用正弦細(xì)分和恒流斬波并用的驅(qū)動(dòng)方法,實(shí)現(xiàn)步進(jìn)電機(jī)的閉環(huán)控制,通過(guò)直線插補(bǔ)算法和圓弧插補(bǔ)算法實(shí)現(xiàn)多軸聯(lián)動(dòng)。此外,通過(guò)數(shù)碼管顯示步進(jìn)電機(jī)的實(shí)時(shí)轉(zhuǎn)速和SCI串行總線將轉(zhuǎn)速信息上傳至上位機(jī),實(shí)現(xiàn)多軸運(yùn)動(dòng)控制的遠(yuǎn)程監(jiān)控。所設(shè)計(jì)的多軸運(yùn)動(dòng)控制系統(tǒng)能夠?qū)崿F(xiàn)多軸步進(jìn)電機(jī)的獨(dú)立啟停、轉(zhuǎn)速控制、正反轉(zhuǎn)控制、轉(zhuǎn)速顯示、上位機(jī)通信等功能,具有控制穩(wěn)定、價(jià)格低廉等優(yōu)點(diǎn)。
本文所設(shè)計(jì)的基于DSP的多軸運(yùn)動(dòng)控制系統(tǒng)的原理框架如圖1所示。系統(tǒng)采用TI公司生產(chǎn)的專用電機(jī)控制DSP芯片TMS320F2812作為控制核心,實(shí)現(xiàn)對(duì)三臺(tái)步進(jìn)電機(jī)的控制。系統(tǒng)硬件電路主要由數(shù)模轉(zhuǎn)換電路、恒流斬波電路、功率驅(qū)動(dòng)采樣電路、SPI接口電路、SCI接口電路等組成。上位機(jī)通過(guò)SCI串行通信,將步數(shù)給定、啟停、正反轉(zhuǎn)、細(xì)分選擇等信號(hào)發(fā)送至DSP,而DSP則向上位機(jī)反饋各個(gè)軸電機(jī)的轉(zhuǎn)速。DSP自行產(chǎn)生脈沖信號(hào),并實(shí)現(xiàn)環(huán)形分配,同時(shí)給出細(xì)分電流的數(shù)字給定信號(hào),經(jīng)數(shù)模轉(zhuǎn)換器AD7528轉(zhuǎn)換為模擬信號(hào),與采樣電路采得的繞組電流進(jìn)行比較, 經(jīng)SG3525實(shí)現(xiàn)恒流斬
圖1 基于DSP的多軸運(yùn)動(dòng)控制系統(tǒng)的原理框架
波,產(chǎn)生功率驅(qū)動(dòng)芯片LMD18201所需的PWM信號(hào),在電流相序信號(hào)的共同作用下,最終驅(qū)動(dòng)各個(gè)軸步進(jìn)電機(jī)轉(zhuǎn)動(dòng)[2-3]。
多軸運(yùn)動(dòng)控制系統(tǒng)采用TMS320F2812作為主控芯片,主要實(shí)現(xiàn)如下功能:(1)DSP響應(yīng)并執(zhí)行各個(gè)軸電機(jī)的啟停、正反轉(zhuǎn)及細(xì)分選擇信號(hào),三軸電機(jī)互不影響,可獨(dú)立運(yùn)動(dòng),也可以同步運(yùn)行;(2)DSP向外部輸出步進(jìn)電機(jī)控制信號(hào),包括八路細(xì)分電流給定信號(hào)、電流相序信號(hào)以及功率驅(qū)動(dòng)芯片的制動(dòng)信號(hào);(3)實(shí)現(xiàn)過(guò)溫保護(hù);(4)步進(jìn)電機(jī)單軸運(yùn)動(dòng)的實(shí)現(xiàn),即電機(jī)的定位和加減速實(shí)現(xiàn);(5)利用SPI同步串行通信,實(shí)現(xiàn)各個(gè)軸電機(jī)的轉(zhuǎn)速顯示;(6)利用SCI異步串行通信,實(shí)現(xiàn)上下位機(jī)的通信。
本文采用正弦細(xì)分和恒流斬波并用的驅(qū)動(dòng)方法對(duì)步進(jìn)電機(jī)進(jìn)行控制,該方法是一種電流控制技術(shù),給定的電流為正弦形階梯信號(hào),給定電流信號(hào)與繞組電流比較,通過(guò)恒流斬波電路,實(shí)現(xiàn)電流的閉環(huán)控制。正弦細(xì)分電流的數(shù)字給定由DSP給出,通過(guò)AD7528轉(zhuǎn)換為模擬信號(hào),恒流斬波電路通過(guò)集成模塊SG3525實(shí)現(xiàn),正弦細(xì)分恒波斬流電路原理如圖2所示。
圖2 正弦細(xì)分恒流斬波電路原理
AD7528輸出的模擬電流信號(hào)經(jīng)運(yùn)放LM358轉(zhuǎn)換為模擬電壓信號(hào),該信號(hào)作為SG3525的同相端輸入,而反相端輸入為經(jīng)A、B相電流采樣轉(zhuǎn)換得到的繞組電壓。
SG3525主要用來(lái)產(chǎn)生PWM波,它輸出的PWM波的最大占空比為50%,為了擴(kuò)大占空比,將兩路信號(hào)經(jīng)過(guò)邏輯或,最終產(chǎn)生PWM波的占空比在4%—96%之間[4]。當(dāng)繞組電流變小即反饋減小時(shí),SG3525輸出的PWM波占空比增大,最終導(dǎo)致繞組電流增加;反之,占空比減小,繞組電流減小。
單軸運(yùn)動(dòng)包括電機(jī)的加、減速運(yùn)動(dòng)和定位實(shí)現(xiàn)。系統(tǒng)采用EVA、EVB里的周期中斷作為三個(gè)軸電機(jī)的脈沖源。本文采用梯形加減速模式,通過(guò)改變各自的周期值實(shí)現(xiàn)。
根據(jù)位移長(zhǎng)短的不同,梯形加減速控制有以下三種方式:短距離控制(方式一)——以接近啟動(dòng)頻率運(yùn)行,只有恒速階段;中短距離控制(方式二)——只有加減速過(guò)程,速度曲線是三角形;中長(zhǎng)距離控制(方式三)——不僅有加減速過(guò)程,還有恒速過(guò)程,速度時(shí)間曲線是標(biāo)準(zhǔn)的梯形曲線。而定位則是電機(jī)按照設(shè)定的步數(shù),自行判斷梯形加減速的方式,最終實(shí)現(xiàn)電機(jī)的定位。
單軸運(yùn)動(dòng)控制流程圖如圖3所示,采用查表法對(duì)速度進(jìn)行控制,把事先計(jì)算好的周期值放在一個(gè)數(shù)組中,這些數(shù)值的獲得是通過(guò)頻率和轉(zhuǎn)速之間的關(guān)系再加上梯形控制曲線計(jì)算得來(lái)。用查表法簡(jiǎn)化了運(yùn)算過(guò)程,同時(shí)也提高了效率。
圖3 單軸運(yùn)動(dòng)實(shí)現(xiàn)流程圖
上面介紹了控制系統(tǒng)單軸運(yùn)動(dòng)的實(shí)現(xiàn),現(xiàn)對(duì)二軸聯(lián)動(dòng)的插補(bǔ)算法進(jìn)行詳細(xì)的介紹。本文采用最小偏差法實(shí)現(xiàn)插補(bǔ)[5-7],基本原理是選取變化快的坐標(biāo)軸作為連動(dòng)坐標(biāo),然后按偏差最小的原則判斷其他坐標(biāo)軸是否運(yùn)動(dòng)。
3.2.1 直線插補(bǔ)算法
為獲得最小偏差,直線插補(bǔ)算法對(duì)步進(jìn)電機(jī)進(jìn)給方向作了以下規(guī)定:設(shè)目標(biāo)直線AB位于第一象限,起點(diǎn)O(0,0),終點(diǎn)Z(xZ,yZ)。當(dāng)xZ≥yZ時(shí),向x方向或?qū)蔷€方向偏差小的方向進(jìn)給;當(dāng)xZ xZy-yZx=0 (1) 設(shè)加工點(diǎn)M(x,y),直線的偏差函數(shù)為: F=xZy-yZx (2) 進(jìn)給Δx時(shí), F(Δx)=xZy-yZ(x+1)=F-yZ (3) 進(jìn)給(Δx,Δy)時(shí), F(Δx,Δy)=xZ(y+1)-yZ(x+1) =F+xZ-yZ (4) 令f=F(Δx)+F(Δx,Δy),f為偏差比較函數(shù),將式(3)、式(4)代入得: f=2F+xZ-2yZ (5) 若f≥0,說(shuō)明F(Δx)≤F(Δx,Δy)進(jìn)給Δx;若f<0,說(shuō)明F(Δx)>F(Δx,Δy)進(jìn)給(Δx,Δy)。根據(jù)f的符號(hào),便可確定下一步的進(jìn)給方向。 下面利用Matlab軟件對(duì)最小偏差法直線插補(bǔ)算法進(jìn)行編程仿真,在理論上對(duì)該算法進(jìn)行驗(yàn)證。設(shè)第一象限直線AB起點(diǎn)坐標(biāo)A(0,0),終點(diǎn)坐標(biāo)B(8,5),利用Matlab軟件進(jìn)行直線插補(bǔ)模擬,對(duì)應(yīng)的直線插補(bǔ)圖形如圖4的折線所示。 圖4 最小偏差法生成的直線AB 3.2.2 圓弧插補(bǔ)算法 現(xiàn)以圓心在原點(diǎn)的逆時(shí)針圓弧為例,說(shuō)明最小偏差法圓弧插補(bǔ)原理。圓的方程為: x2+y2=R2 (6) 設(shè)加工點(diǎn)M(x,y),F(x,y)為加工點(diǎn)M(x,y)的偏差函數(shù),令: F(x,y)=x2+y2-R2 (7) 任一時(shí)刻加工點(diǎn)的偏差函數(shù)為: Fn=F(xn,yn) (8) Fn+1(Δy)=xn2+(yn+1)2-R2=Fn+2yn+1 (9) Fn+1(-Δx,Δy)=(xn-1)2+(yn+1)2-R2 =Fn-2xn+2yn+2 (10) 則偏差比較函數(shù)為: fn(x,y)=Fn+1(Δy)+Fn+1(-Δx,+Δy) =2Fn-2xn+4yn+3 (11) 若fn(x,y)≥0,則應(yīng)走(-Δx,+Δy)步,否則,走+Δy步。根據(jù)fn的符號(hào),便可確定下一步的進(jìn)給方向。 圖5 最小偏差法生成的圓弧 3.3.1 SPI同步串行通信 為使電機(jī)的轉(zhuǎn)速顯示更加直觀明了,設(shè)計(jì)系統(tǒng)時(shí)采用了LED數(shù)碼顯示方式,通過(guò)按鍵選擇各軸向的電機(jī),就可以顯示各個(gè)軸的轉(zhuǎn)速。顯示的實(shí)現(xiàn)通過(guò)SPI同步串行通信來(lái)完成。 3.3.2 SCI異步串行通信 本文采用DSP自帶的SCI串行通信接口,可以減少DSP的I/O口使用,也節(jié)約了資源,使控制器更加可靠[8-9]。上位機(jī)接收采用中斷方式進(jìn)行,發(fā)送則采用查詢方式。 同時(shí),采用VB6.0專業(yè)版提供的功能強(qiáng)大的ActiveX控件MSCOMM實(shí)現(xiàn)微機(jī)與DSP的通信。圖6為步進(jìn)電機(jī)多軸控制的通信界面圖。 圖6 上下位機(jī)通信界面圖 圖7為研制的多軸控制器工作時(shí)的圖片,數(shù)碼管顯示Z軸步進(jìn)電機(jī)的轉(zhuǎn)速為200r/min,旁邊的指示燈顯示電機(jī)為正轉(zhuǎn)。由程序可以實(shí)現(xiàn)選擇顯示任意一臺(tái)電機(jī)的轉(zhuǎn)速,電機(jī)轉(zhuǎn)向的顯示與轉(zhuǎn)速的顯示是同步的,指示燈亮?xí)r表示電機(jī)正轉(zhuǎn),反之,電機(jī)為反轉(zhuǎn)。 圖7 多軸控制器圖 圖8 二相電流相序圖 圖8為X軸二相混合式步進(jìn)電機(jī)的A、B兩相電流相序信號(hào)。由相序波形圖知,電機(jī)實(shí)現(xiàn)了四步一循環(huán)的運(yùn)行方式。本文電機(jī)的運(yùn)行為雙四拍運(yùn)行,即AB-/AB-/A/B-A/B,整步時(shí)換相。該運(yùn)行方式可以充分利用電動(dòng)機(jī)的容量,從而增大輸出轉(zhuǎn)矩。 圖9為Y軸電機(jī)的A、B兩相繞組4細(xì)分電流經(jīng)LM358轉(zhuǎn)換后的兩相繞組電壓信號(hào),可以看出兩者互錯(cuò)一定的角度,具體到本系統(tǒng)中為90°,電壓可達(dá)128細(xì)分。 圖9 由4細(xì)分電流轉(zhuǎn)換的電壓波形圖 實(shí)驗(yàn)結(jié)果表明,本文所設(shè)計(jì)的多軸步進(jìn)電動(dòng)機(jī)運(yùn)動(dòng)控制系統(tǒng)不論是在硬件電路上,還是在軟件設(shè)計(jì)上,都達(dá)到了基本的性能要求,同時(shí)集成度高、可移植性好。利用DSP對(duì)多軸步進(jìn)電機(jī)進(jìn)行控制,實(shí)現(xiàn)簡(jiǎn)單,控制靈活,整個(gè)控制系統(tǒng)具有豐富的接口和通訊功能,在機(jī)器人控制、數(shù)控等領(lǐng)域具有廣闊的應(yīng)用前景。3.3 串行通信
4 實(shí)驗(yàn)結(jié)果及分析
5 結(jié)語(yǔ)