賀昌勇 張厚江 路敦民 祖漢松 王朝志
(1.北京林業(yè)大學(xué) 工學(xué)院,中國(guó) 北京 100083;2.北京中科泛華測(cè)控技術(shù)有限公司,中國(guó) 北京 100192)
目前,伺服電機(jī)常見的控制方式有單片機(jī)控制、DSP控制、ARM控制、PLC控制、PC機(jī)+運(yùn)動(dòng)控制卡等。單片機(jī)、DSP、ARM控制編程比較復(fù)雜,要從低層做起,通常需要設(shè)計(jì)和加工相應(yīng)微處理器系統(tǒng)電路板、開發(fā)周期比較長(zhǎng)、需要編程人員對(duì)微處理器控制非常熟練;PLC適用于工廠等環(huán)境比較惡劣的場(chǎng)所,而且PLC大部分用于運(yùn)動(dòng)過(guò)程比較簡(jiǎn)單、軌跡固定的工況下[1],運(yùn)動(dòng)控制卡是一種基于PC機(jī)更加柔性、更加開放式的控制方式,PC機(jī)負(fù)責(zé)人機(jī)交互界面的管理和實(shí)時(shí)監(jiān)控、而運(yùn)動(dòng)的所有細(xì)節(jié)都由運(yùn)動(dòng)控制卡來(lái)實(shí)現(xiàn),充分的將兩者結(jié)合起來(lái)——PC機(jī)強(qiáng)大的數(shù)據(jù)處理功能、運(yùn)動(dòng)控制卡對(duì)電機(jī)的精確控制,大大提高了系統(tǒng)的可靠性和準(zhǔn)確性[2],而且運(yùn)動(dòng)控制卡二次開發(fā)很方便,由此運(yùn)動(dòng)控制卡得到越來(lái)越多人的應(yīng)用。
眾所周知 NI公司(美國(guó)國(guó)家儀器公司)是測(cè)試測(cè)量的領(lǐng)頭羊,其“軟件即是儀器”、“圖形有邊,系統(tǒng)無(wú)界”的思想使測(cè)試、測(cè)量進(jìn)入了一個(gè)新的領(lǐng)域。程序采用Labview編程,它是一種真正意義上的圖形化編程語(yǔ)言,“所見即所得”,與C、Basic等文本語(yǔ)言相比,它在編程中有更詳細(xì)的提示信息,如函數(shù)的功能、參數(shù)類型等,程序員不需要記憶那些枯燥的函數(shù)信息[3]。NI公司首先將其擴(kuò)展到測(cè)試、測(cè)量最相近的領(lǐng)域——運(yùn)動(dòng)控制,早在Labview7.1版本就已經(jīng)有正式的運(yùn)動(dòng)控制模塊,NI公司相繼推出了PCI插槽、PXI插槽的運(yùn)動(dòng)控制卡,目前控制軸數(shù)最多的是8軸運(yùn)動(dòng)控制卡[4]。
PCI-7344是4軸運(yùn)動(dòng)控制卡,PCI總線傳輸效率高,支持即插即用,數(shù)據(jù)吞吐量大,是運(yùn)動(dòng)控制卡設(shè)計(jì)的主流[5]。每一軸均可以控制步進(jìn)/伺服電機(jī)是NI運(yùn)動(dòng)控制中檔產(chǎn)品之一,NI PCI-7344包括雙處理器和一個(gè)實(shí)時(shí)板載操作系統(tǒng),并具有多軸插值功能,循環(huán)更新率,有兩個(gè)68-pin VHDCI母頭的接口:Motion I/O、Digital I/O,數(shù)字I/O通道數(shù)32;PWM通道數(shù)2,最大步進(jìn)輸出率4MHZ;最大編碼器輸出率20MHZ[6]。
UMI-7774(4 軸)是用于 NI 735x、NI 734x、NI 733x運(yùn)動(dòng)控制卡和第三方驅(qū)動(dòng)器及放大器的特殊運(yùn)動(dòng)控制接口。這些接口提供了各種特性,是D Sub連接和信號(hào)隔離等工業(yè)環(huán)境的理想選擇。UMI-7774需要24V電源供電,還支持5-30V的隔離電源。其主要的特點(diǎn):可與差分編碼器連接;狀態(tài)LED用于排除連接故障;16條通用數(shù)字I/O線;24V隔離;每個(gè)軸均可用D-Sub連接;信號(hào)連接電纜68pinVHDL型;控制信號(hào)為+5v輸出,電流為1A[7]。
系統(tǒng)由研華工控機(jī)IPC-610H、運(yùn)動(dòng)控制卡PCI-7344、接線盒UMI-7774;臺(tái)達(dá)伺服驅(qū)動(dòng)器ASD-A2-1521-M、臺(tái)達(dá)伺服電機(jī)ECMAE11315RS組成。圖1為系統(tǒng)組成框圖。伺服電機(jī)的功率1.5kw、扭矩7.16N.m。
圖1 系統(tǒng)組成框圖
本系統(tǒng)采用位置控制模式,接收上位機(jī)發(fā)出的脈沖和方向的差分信號(hào),伺服電機(jī)本身具有編碼器,在伺服驅(qū)動(dòng)器內(nèi)部可以形成閉環(huán),然后編碼器的信號(hào)也可以輸出到運(yùn)動(dòng)控制卡上,與上位機(jī)的輸出信號(hào)形成閉環(huán),使得系統(tǒng)的動(dòng)態(tài)性和穩(wěn)定性大大提高[8]。NI運(yùn)動(dòng)控制卡控制的是伺服驅(qū)動(dòng)器而不是直接的伺服電機(jī),用圖形化編程語(yǔ)言的Labview編寫上位機(jī)軟件,調(diào)用運(yùn)動(dòng)控制卡的函數(shù),通過(guò)運(yùn)動(dòng)控制卡發(fā)送脈沖或模擬量實(shí)現(xiàn)對(duì)伺服驅(qū)動(dòng)器的控制。
(1)脈沖控制:驅(qū)動(dòng)器工作在位置環(huán),脈沖的多少代表走的長(zhǎng)度,發(fā)送脈沖的頻率表示速度;
(2)模擬量控制:驅(qū)動(dòng)器工作在速度環(huán)或者電流環(huán),模擬量的大小對(duì)應(yīng)電機(jī)的速度與位置。
我們選用的是脈沖控制方式:PCI-7344發(fā)送脈沖和方向信號(hào)給驅(qū)動(dòng)器,驅(qū)動(dòng)器控制電機(jī)的運(yùn)轉(zhuǎn),之所以選擇脈沖控制方式,有兩個(gè)方面的原因:
(1)可靠性比較高,不易發(fā)生飛車事故。如果采用模擬電壓控制方式的話,一般的為-10v-+10v的模擬電壓,10v對(duì)應(yīng)正向最大轉(zhuǎn)速、-10v對(duì)應(yīng)反向最大轉(zhuǎn)速,如果在控制過(guò)程中原件損壞或軟件故障,可能造成模擬電壓瞬間達(dá)到最大值,那么電機(jī)立刻就會(huì)以最高的速度運(yùn)轉(zhuǎn),很容易發(fā)生飛車,對(duì)操作人員造成傷害。
(2)抗干擾性比較好,比較適用對(duì)環(huán)境要求比較高的場(chǎng)所。數(shù)字電路的抗干擾性能是模擬電路所無(wú)法比擬的。
但是由于采用脈沖控制方式,驅(qū)動(dòng)器工作在位置控制方式,位置環(huán)在驅(qū)動(dòng)器的外部,調(diào)節(jié)PID參數(shù)不是很方便,因此控制的快速性不是很高,在本系統(tǒng)中完全能夠滿足我們的要求。
選用的臺(tái)達(dá)伺服電機(jī)是A2系列搭配高精度20-bit等級(jí)(1280000p/rev)編碼器,提升定位精度與低速運(yùn)轉(zhuǎn)穩(wěn)定度。即電機(jī)接收1280000個(gè)脈沖,電機(jī)轉(zhuǎn)動(dòng)一圈,根據(jù)公式:位置指令=指令脈沖輸入*電子齒輪比,即,在驅(qū)動(dòng)器中我們?cè)O(shè)置電子齒輪比為128,那么PCI-7344每秒發(fā)出10000個(gè)脈沖,電機(jī)就會(huì)轉(zhuǎn)動(dòng)一圈,也就是60r/min的速度運(yùn)轉(zhuǎn),脈沖的正負(fù)決定電機(jī)的正反轉(zhuǎn)。圖2是臺(tái)達(dá)伺服電機(jī)和驅(qū)動(dòng)器以及UMI-7774的電路連接圖,驅(qū)動(dòng)器的主回路和控制回路都是220V電源供電,電機(jī)和驅(qū)動(dòng)器之間通過(guò)動(dòng)力線和編碼器線相連。圖3詳細(xì)的描述了UMI-7774和臺(tái)達(dá)伺服驅(qū)動(dòng)器的連接方式,使用的是驅(qū)動(dòng)器內(nèi)部電源24V,4引腳是脈沖信號(hào),12引腳是方向信號(hào),分別與驅(qū)動(dòng)器的/pulse(脈沖信號(hào))、/sign(方向信號(hào))相連。
圖2 臺(tái)達(dá)伺服驅(qū)動(dòng)器和伺服電機(jī)以及UMI-7774接線圖
圖3 UMI-7774和臺(tái)達(dá)伺服驅(qū)動(dòng)器CN1接線圖
在硬件搭建、接線完成之后,我們使用Labview軟件在Max和程序面板中實(shí)現(xiàn)單軸的加速-勻速-減速運(yùn)動(dòng);單軸的循環(huán)往復(fù)運(yùn)動(dòng);兩軸同步等運(yùn)動(dòng)等。
圖4 單軸的加速-勻速-減速M(fèi)ax配置圖
上圖4是在Max中1-D Interactive的配置界面,按照?qǐng)D中的配置,就會(huì)實(shí)現(xiàn)單軸的加速-勻速-減速運(yùn)動(dòng),可以計(jì)算,加減速時(shí)間都是1s,電機(jī)會(huì)以60r/min的速度運(yùn)轉(zhuǎn),而且會(huì)轉(zhuǎn)動(dòng)5圈。圖5是電機(jī)運(yùn)動(dòng)的速度-時(shí)間圖,可以看出電機(jī)的加減速時(shí)間都是1s,嚴(yán)格符合速度-時(shí)間梯形運(yùn)動(dòng)軌跡。
圖5 單軸的加速-勻速-減速的速度—時(shí)間梯形圖
在程序框圖中編寫程序,如圖6,電機(jī)的運(yùn)動(dòng)方式選擇Absolute Position,我們把初始位置設(shè)為0,這樣電機(jī)每次都會(huì)從原點(diǎn)開始運(yùn)動(dòng)。往復(fù)移動(dòng)的位置,我們用數(shù)組來(lái)表示。圖7為前面板圖,在前面板中可以通過(guò)觀察滑塊的移動(dòng)實(shí)時(shí)觀察電機(jī)的運(yùn)動(dòng)位置和方向。
圖6 單軸循環(huán)往復(fù)運(yùn)動(dòng)程序框圖
圖7 單軸循環(huán)往復(fù)運(yùn)動(dòng)前面板圖(運(yùn)行時(shí))
圖8是軸的運(yùn)動(dòng)軌跡圖,而且Labview有數(shù)據(jù)存儲(chǔ)功能,我們規(guī)定一個(gè)位置為起始位置,當(dāng)設(shè)備斷電后,重新上電之后,設(shè)備會(huì)從原來(lái)斷電的位置移動(dòng)到起始位置,然后再進(jìn)行后續(xù)的運(yùn)動(dòng),這大大的提高了系統(tǒng)的精度和準(zhǔn)確性。
圖8 單軸循環(huán)往復(fù)運(yùn)動(dòng)路線示意圖
在軟件中實(shí)現(xiàn)兩個(gè)軸的同步是比較復(fù)雜的,而且有時(shí)還不好控制,并不能做到兩個(gè)軸的完全同步,大膽設(shè)想在硬件連接中解決這個(gè)問(wèn)題:也就是用PCI-7344的一個(gè)軸來(lái)同時(shí)給兩個(gè)電機(jī)發(fā)送脈沖,這樣就能做到兩個(gè)軸的同步,而且還節(jié)省了UMI-7774上的軸的數(shù)量,試驗(yàn)效果非常好,這是大膽嘗試的結(jié)果。
基于NI運(yùn)動(dòng)控制卡的伺服電機(jī)的控制方式的創(chuàng)新點(diǎn):
(1)相比于編寫程序代碼控制伺服電機(jī),這種方式采用程序框圖的方法,可讀性強(qiáng),而且前面板采用按鈕、滑動(dòng)桿可以實(shí)時(shí)顯示控制量和當(dāng)前的位置,人機(jī)界面友好[9];
(2)實(shí)現(xiàn)了上位機(jī)和下位機(jī)分層控制,充分發(fā)揮了PC機(jī)強(qiáng)大的數(shù)據(jù)處理能力、NI運(yùn)動(dòng)控制卡對(duì)伺服電機(jī)的精確控制能力;
(3)直接調(diào)用運(yùn)動(dòng)控制卡的相關(guān)函數(shù),通過(guò)Labview編程就能夠完成復(fù)雜的運(yùn)動(dòng)控制,實(shí)現(xiàn)單軸、多軸的運(yùn)動(dòng),開發(fā)時(shí)間短、大大提高了系統(tǒng)的精確性和靈活性,保證了系統(tǒng)較高的性價(jià)比[10]。
[1]賀虎成,劉衛(wèi)國(guó).電機(jī)運(yùn)動(dòng)控制及其相關(guān)技術(shù)發(fā)展研究[J].電機(jī)與控制應(yīng)用,2006(3)∶3-6.
[2]高瑞,苗長(zhǎng)云,王中偉.基于Labview的多軸運(yùn)動(dòng)控制系統(tǒng)的設(shè)計(jì)與開發(fā)[J].天津工業(yè)大學(xué)學(xué)報(bào),2008,27(6)∶58-61.
[3]阮奇楨.我和Labview.2版[M].北京航空航天大學(xué)出版社,2012.
[4]賀昌勇,張厚江,祖漢松,周盧婧,劉妍.基于虛擬儀器運(yùn)動(dòng)控制技術(shù)的現(xiàn)狀與發(fā)展趨勢(shì)[J].林業(yè)機(jī)械與木工設(shè)備,2014,42(2)∶9-12.
[5]江發(fā)潮,曹正清,肖春澤.虛擬儀器在發(fā)動(dòng)機(jī)測(cè)控系統(tǒng)中的應(yīng)用[J].拖拉機(jī)與農(nóng)用運(yùn)輸車,2002(6)∶14-16.
[6]National Instruments Corporation.NI-7340 User Manual,2003,11[Z].
[7]National Instruments Corporation.NI UMI-7774/7772 User Guide and Specifications,2003,11[Z].
[8]林新鵬.Labview的多軸數(shù)字式伺服電機(jī)控制系統(tǒng)[J].科技信息,2009,5∶101-102.
[9]趙冬梅,張賓.Labview控制步進(jìn)電機(jī)升降速[J].微計(jì)算機(jī)信息,2008,6∶105-106.
[10]王淑芳.基于虛擬儀器技術(shù)的直流伺服電機(jī)控制系統(tǒng)[J].機(jī)床與液壓,2007,35(7)∶144-146.