文/謝利軍 鄭慶華
LabVIEW是NI公司研發(fā)的一種用于虛擬儀器設(shè)計(jì)的圖形化編程軟件, 現(xiàn)已被廣泛用于工業(yè)自動(dòng)化控制和測(cè)試領(lǐng)域。DAQmx是NI公司的一套與LabVIEW兼容的數(shù)據(jù)采集驅(qū)動(dòng),集成了豐富的應(yīng)用程序編程接口(API)和VI函數(shù)等開發(fā)工具。
步進(jìn)電機(jī)是一種使用數(shù)字脈沖信號(hào)控制轉(zhuǎn)軸進(jìn)行機(jī)械角位移的電機(jī),數(shù)字脈沖的頻率和數(shù)量決定了電機(jī)的轉(zhuǎn)速和轉(zhuǎn)角。步進(jìn)電機(jī)是現(xiàn)代數(shù)字程序控制系統(tǒng)中的主要執(zhí)行元件,由于其控制方式簡(jiǎn)單、運(yùn)行可靠,在各種工業(yè)控制場(chǎng)合已得到廣泛的應(yīng)用。
本文控制系統(tǒng)硬件主要基于NIcDAQ9188機(jī)箱搭建,使用數(shù)字輸出模塊完成對(duì)步進(jìn)電機(jī)驅(qū)動(dòng)的信號(hào)輸出,使用數(shù)字輸入模塊檢測(cè)運(yùn)行限位開關(guān)狀態(tài),使用通訊模塊完成對(duì)絕對(duì)值編碼器實(shí)時(shí)數(shù)值的讀取。運(yùn)動(dòng)執(zhí)行器由步進(jìn)電機(jī)、滑塊和導(dǎo)軌組成,電機(jī)通過傳動(dòng)齒輪和皮帶帶動(dòng)滑塊在導(dǎo)軌上做往復(fù)運(yùn)動(dòng)。
本系統(tǒng)組成如圖1所示。計(jì)算機(jī)機(jī)作為系統(tǒng)的上位機(jī)運(yùn)行虛擬儀器軟件,并通過以太網(wǎng)與NI-cDAQ9188機(jī)箱進(jìn)行數(shù)據(jù)交換;機(jī)箱上掛載的NI9472用于向步進(jìn)電機(jī)驅(qū)動(dòng)發(fā)送方向和脈沖信號(hào)以控制步進(jìn)電機(jī)運(yùn)動(dòng);NI9425用于實(shí)時(shí)檢測(cè)導(dǎo)軌上的限位開關(guān)狀態(tài),以確?;瑝K只在導(dǎo)軌的安全行程內(nèi)運(yùn)行;絕對(duì)值編碼器與步進(jìn)電機(jī)為同軸安裝,用于實(shí)時(shí)檢測(cè)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)角度,即滑塊位置;NI9862模塊則用于與編碼器通訊,周期地查詢后者的當(dāng)前數(shù)值。
本試驗(yàn)系統(tǒng)選用了NI公司的NI-cDAQ9188機(jī)箱、NI9472數(shù)字輸出模塊、NI9425數(shù)字輸入模塊和NI9862 CAN接口模塊。NI-cDAQ9188是一款8插槽NI CompactDAQ以太網(wǎng)機(jī)箱,其工作溫度范圍、抗沖擊和振動(dòng)特性均非常適用于復(fù)雜的工業(yè)控制環(huán)境。表1為本試驗(yàn)選用的采集模塊參數(shù)。
表1:模塊參數(shù)
表2:控制基本參數(shù)
圖1:系統(tǒng)組成
步進(jìn)電機(jī)選擇型號(hào)為FM86128SJT03的三相混合式步進(jìn)電機(jī),該電機(jī)的步距角為1.2o,電機(jī)扭矩7N·m,額定電流3A。選用的驅(qū)動(dòng)型號(hào)為FMDT220A48NOM,供電電壓AC220V,電流設(shè)定選擇3A,驅(qū)動(dòng)細(xì)分精度選擇5000脈沖/轉(zhuǎn)。
位置傳感器選擇Baumer公司的GXP5W多圈絕對(duì)值編碼器,單圈精度13位,多圈精度16位,滿足滑塊全行程運(yùn)行位置的測(cè)量,通訊協(xié)議為CANopen協(xié)議。
系統(tǒng)控制時(shí)序如圖2所示。
首先上位機(jī)界面通過輸入控件獲取電機(jī)的轉(zhuǎn)動(dòng)角度,然后系統(tǒng)循環(huán)檢測(cè)正/反轉(zhuǎn)按鈕是否被觸發(fā)。正反轉(zhuǎn)按鈕被觸發(fā)后,系統(tǒng)輸出控制信號(hào)至電機(jī)驅(qū)動(dòng)控制電機(jī)運(yùn)行。同時(shí)系統(tǒng)循環(huán)監(jiān)測(cè)電機(jī)運(yùn)行位置和限位開關(guān)狀態(tài)以修正輸出的控制信號(hào)。最后,系統(tǒng)在判斷已經(jīng)抵達(dá)目標(biāo)位置或觸發(fā)了限位開關(guān)的條件下,結(jié)束此次運(yùn)行。
系統(tǒng)的位置控制分為了兩個(gè)階段:粗定位階段和精定位階段。在粗定位階段,系統(tǒng)按照設(shè)定的初速和加速度勻加速至最大速度,再經(jīng)過恒速運(yùn)行和相應(yīng)的勻減速過程后,電機(jī)速度降至設(shè)定低速運(yùn)行。加速時(shí)間、恒速時(shí)間和減速時(shí)間則根據(jù)設(shè)置的轉(zhuǎn)動(dòng)角度先行計(jì)算。在粗定位階段電機(jī)將完成98%左右的轉(zhuǎn)動(dòng),即在粗定位階段控制器向電機(jī)驅(qū)動(dòng)輸出的脈沖數(shù)量為理論運(yùn)行所需數(shù)量的98%。在精定位階段,則采用PID控制方式控制電機(jī)低速運(yùn)行至指定位置。試驗(yàn)中的控制參數(shù)數(shù)值如表2所示,脈沖頻率變化過程如圖3所示。
圖2:系統(tǒng)控制時(shí)序
圖3:脈沖頻率變化過程示意圖
控制系統(tǒng)的輸出信號(hào)為方向信號(hào)和脈沖信號(hào)。程序中首先使用NI-DAQmx中的“創(chuàng)建”虛擬通道函數(shù)完成兩路信號(hào)的創(chuàng)建,接著使用 “開始”任務(wù)函數(shù)啟動(dòng)輸出任務(wù)。然后,在控制循環(huán)主體中使用“寫入”函數(shù)完成對(duì)方向信號(hào)值的寫入,使用“屬性節(jié)點(diǎn)寫入”函數(shù)完成脈沖頻率的更新。最后,在控制循環(huán)結(jié)束后使用“任務(wù)清除”函數(shù)清除輸出任務(wù)。為了確保在脈沖信號(hào)輸出有效前先建立方向信號(hào),需要將方向信號(hào)通道 “開始”函數(shù)的錯(cuò)誤輸出接入脈沖信號(hào)通道“創(chuàng)建”函數(shù)的錯(cuò)誤輸入。整理后的輸出信號(hào)任務(wù)程序見圖4所示。
系統(tǒng)的輸入信號(hào)為兩個(gè)常開限位,未觸發(fā)時(shí)輸入信號(hào)為邏輯0,觸發(fā)后信號(hào)為邏輯1。輸入信號(hào)任務(wù)的設(shè)計(jì)與輸出信號(hào)任務(wù)相近,主要使用了“創(chuàng)建”、“開始”、“讀取”和“清除”函數(shù)構(gòu)建。整理后的輸入信號(hào)任務(wù)程序見圖5所示。
位置檢測(cè)任務(wù)調(diào)用了NI-XNET函數(shù)庫(kù),創(chuàng)建了一個(gè)幀輸出任務(wù)和一個(gè)幀輸入任務(wù),輸出任務(wù)用于發(fā)送讀取請(qǐng)求幀,輸入任務(wù)用于接收編碼器返回的結(jié)果幀。請(qǐng)求幀的組包和結(jié)果幀的解析都依照編碼器的CAN OPEN傳輸協(xié)議設(shè)計(jì)。整理后的位置檢測(cè)檢測(cè)任務(wù)程序見圖6所示,圖中的位置數(shù)據(jù)解析使用了VI子程序。
圖4:輸出信號(hào)任務(wù)設(shè)計(jì)程序框圖
圖5:輸入信號(hào)任務(wù)設(shè)計(jì)程序框圖
圖6:位置檢測(cè)任務(wù)設(shè)計(jì)程序框圖
由于滑塊移動(dòng)精度受傳動(dòng)機(jī)構(gòu)影響較大,所以本試驗(yàn)只以步進(jìn)電機(jī)轉(zhuǎn)動(dòng)角度作為控制對(duì)象進(jìn)行研究。因?yàn)椴竭M(jìn)電機(jī)驅(qū)動(dòng)細(xì)分?jǐn)?shù)設(shè)定為5000脈沖/轉(zhuǎn),即電機(jī)轉(zhuǎn)動(dòng)精度可以達(dá)到360 o/5000=0.072 o,而位置傳感器的測(cè)量精度為360 o/(2^13)≈0.044 o,所以理論上電機(jī)轉(zhuǎn)動(dòng)精度控制可以做到±0.072 o以內(nèi)。
測(cè)試過程中,利用編碼器的實(shí)時(shí)位置求取電機(jī)的轉(zhuǎn)速表明電機(jī)轉(zhuǎn)速變化基本與圖3所示頻率變化一致。如果系統(tǒng)輸出脈沖的初始頻率過大或者頻率加速過大,滑塊運(yùn)行過程中步進(jìn)電機(jī)會(huì)出現(xiàn)失步現(xiàn)象。但由于系統(tǒng)使用位置反饋對(duì)電機(jī)進(jìn)行閉環(huán)控制,電機(jī)的最終轉(zhuǎn)動(dòng)精度達(dá)到了設(shè)計(jì)要求。
本文應(yīng)用LabVIEW和DAQmx設(shè)計(jì)步進(jìn)電機(jī)控制軟件的過程,充分利用了二者圖形化編程直觀、便捷的優(yōu)勢(shì)。結(jié)合NI公司的采集設(shè)備,能夠迅速完成步進(jìn)電機(jī)控制測(cè)試平臺(tái)的搭建。測(cè)試平臺(tái)具備可靠性高、可維護(hù)性高的特點(diǎn),為后續(xù)進(jìn)一步的運(yùn)動(dòng)控制研究提供了基礎(chǔ)和參考。