賀煉滔
【摘 要】目前,步進(jìn)電機(jī)在工業(yè)生產(chǎn)、科研領(lǐng)域得到了越來越廣泛的應(yīng)用,而對步進(jìn)電機(jī)控制系統(tǒng)的研究也逐步深入。本文闡述了LabVIEW的特點(diǎn)及虛擬儀器系統(tǒng)的結(jié)構(gòu),并介紹了步進(jìn)電機(jī)及控制原理,最后采用虛擬儀器開發(fā)軟件LabVIEW進(jìn)行開發(fā),設(shè)計(jì)了步進(jìn)電機(jī)控制系統(tǒng),取得了較好的效果,可供業(yè)界人士參考。
【關(guān)鍵詞】LabVIEW;虛擬儀器系統(tǒng);步進(jìn)電機(jī);控制模型
【中圖分類號】TU85【文獻(xiàn)標(biāo)識碼】A【文章編號】1672-5158(2013)07-0395-01
近幾年來,步進(jìn)電機(jī)在工業(yè)生產(chǎn)、科研領(lǐng)域得到了越來越廣泛的應(yīng)用,它可以快速完成啟動、轉(zhuǎn)動(正、反轉(zhuǎn))和制動一系列動作。傳統(tǒng)上控制步進(jìn)電機(jī)的方法通常是用單片機(jī)或邏輯電路來實(shí)現(xiàn)。但是這些方法都有著先天的不足—繁瑣的線路、可改性不強(qiáng)而且編程語言比較復(fù)雜。因此,將虛擬儀器技術(shù)應(yīng)用于步進(jìn)電機(jī)的控制,初步了解和掌握虛擬儀器軟件平臺LabVIEW的編程方法,有著重要的現(xiàn)實(shí)意義。
1 LabVIEW的特點(diǎn)及虛擬儀器系統(tǒng)的結(jié)構(gòu)
1.1 LabVIEW語言
LabVIEW采用軟件領(lǐng)域較為流行的面向?qū)ο蟮目梢暬幊谭椒?,使用這些軟件開發(fā)系統(tǒng)可使系統(tǒng)開發(fā)人員將精力集中在系統(tǒng)的設(shè)計(jì)中,而不是軟件的設(shè)計(jì)細(xì)節(jié)上。
LabVIEW是美國NI公司利用虛擬儀器技術(shù)開發(fā)的32位,主要面向計(jì)算機(jī)測控領(lǐng)域的虛擬儀器軟件開發(fā)平臺。LabVIEW同時(shí)也是一種功能強(qiáng)大的圖形編程語言,但它與傳統(tǒng)的文本編程語言(如C語言)不同,采用了一種基于流程圖的圖形化編程形式,因此也被稱為G語言(graphical language)。使用這種語言編程時(shí),基本上不寫程序代碼,取而代之的是流程圖,在進(jìn)行原理研究、設(shè)計(jì)、測試并實(shí)現(xiàn)系統(tǒng)時(shí),這種圖形化的編程形式,方便了非軟件專業(yè)的工程師快速編制程序,可以大大提高工作效率。LabVIEW也不同于傳統(tǒng)文本式的編程語言的順序執(zhí)行方式,而是采用了數(shù)據(jù)流的執(zhí)行方式,這種方式要求程序僅在各節(jié)點(diǎn)已獲得它的全部數(shù)據(jù)后才執(zhí)行。
1.2 虛擬儀器系統(tǒng)的結(jié)構(gòu)
虛擬儀器通常是由計(jì)算機(jī)、一定的硬件和應(yīng)用軟件三部分構(gòu)成。虛擬儀器的基本構(gòu)成由硬件和軟件兩大部分組成,如圖1所示。
在系統(tǒng)設(shè)計(jì)中,采用DAQ(數(shù)據(jù)采集卡)作為數(shù)據(jù)采集系統(tǒng),通過LabVIEW虛擬儀器軟件在計(jì)算機(jī)上編寫程序?qū)?shù)據(jù)信號進(jìn)行采集,采集的數(shù)據(jù)可通過文件的形式保存起來,便于以后進(jìn)行數(shù)據(jù)分析處理。
2 步進(jìn)電機(jī)及其控制
步進(jìn)電機(jī)是一種將脈沖信號轉(zhuǎn)換為相應(yīng)角位移或直線位移的電磁機(jī)械裝置,步進(jìn)電機(jī)因具有轉(zhuǎn)子慣量低、定位精確度高、無積累誤差、控制簡單等特點(diǎn),在現(xiàn)代工業(yè)中得到廣泛的應(yīng)用。步進(jìn)電機(jī)已成為機(jī)電一體化和運(yùn)動控制領(lǐng)域的主要執(zhí)行元件之一。由于受脈沖的控制,其轉(zhuǎn)子的角位移量和速度嚴(yán)格地與輸入脈沖的數(shù)量和脈沖頻率成正比。改變通電順序可改變步進(jìn)電機(jī)的旋轉(zhuǎn)方向;改變通電頻率可改變步進(jìn)電機(jī)的轉(zhuǎn)速。
2.1 步進(jìn)電機(jī)的控制模型
三相步進(jìn)電機(jī)可以工作在單三拍、雙三拍或六拍狀態(tài),但出于對運(yùn)行平穩(wěn)性、減小步距角和噪音等方面的考慮,三相式步進(jìn)電機(jī)通常采用的是三相六拍的工作方式,即通電方式為A-AB-B-BC-C-CA-A的形式。根據(jù)以上步進(jìn)電機(jī)的工作原理,結(jié)合實(shí)際應(yīng)用中對步進(jìn)電機(jī)的控制,其具體的控制要求如下。
(1)正反轉(zhuǎn)控制
要求在停機(jī)狀態(tài)時(shí),能夠?qū)崿F(xiàn)步進(jìn)電機(jī)的正轉(zhuǎn)或反轉(zhuǎn)起動;在運(yùn)行過程中可以實(shí)現(xiàn)步進(jìn)電機(jī)的正反轉(zhuǎn)切換。
(2)運(yùn)行速度調(diào)節(jié)
通過對步進(jìn)電機(jī)輸入脈沖頻率的調(diào)節(jié)來實(shí)現(xiàn):在停機(jī)狀態(tài)時(shí),能夠?qū)崿F(xiàn)步進(jìn)電機(jī)的高速起動或低速起動,降速過程是升速過程的逆過程;在運(yùn)行過程中可以實(shí)時(shí)改變步進(jìn)電機(jī)的旋轉(zhuǎn)速度。
(3)操作方式可選
出于對實(shí)際工作環(huán)境復(fù)雜多變的考慮,在設(shè)計(jì)此控制系統(tǒng)時(shí),對步進(jìn)電機(jī)提出了更高的要求,它能夠提供手動控制和自動運(yùn)行兩種工作方式。①手動控制方式:即實(shí)現(xiàn)步進(jìn)電機(jī)的點(diǎn)動運(yùn)行,操作人員通過按脈沖輸出按鈕,來控制步進(jìn)電機(jī)的旋轉(zhuǎn)速度和轉(zhuǎn)動位置。在運(yùn)轉(zhuǎn)的過程中可以靈活控制步進(jìn)電機(jī)的旋轉(zhuǎn)方向。②自動運(yùn)行方式:步進(jìn)電機(jī)按照起動前設(shè)定的運(yùn)行頻率和旋轉(zhuǎn)方向自動運(yùn)行,在運(yùn)行過程中可以隨時(shí)改變運(yùn)行頻率和旋轉(zhuǎn)方向,也能夠暫停步進(jìn)電機(jī)運(yùn)行,通過停止按鈕可以結(jié)束整個(gè)運(yùn)行。
(4)實(shí)現(xiàn)定步旋轉(zhuǎn)
操作人員可設(shè)定一個(gè)角度,當(dāng)步進(jìn)電機(jī)旋轉(zhuǎn)到這個(gè)位置時(shí)就自動停轉(zhuǎn),并且在運(yùn)行過程中可以隨時(shí)設(shè)定停轉(zhuǎn)位置,在電機(jī)停轉(zhuǎn)后,可以再次起動運(yùn)行,從上次停止的位置繼續(xù)旋轉(zhuǎn)。
(5)自動保護(hù)功能
若長時(shí)間內(nèi)無人操作,系統(tǒng)能夠自動停止。節(jié)約電能,防止意外事故發(fā)生。
2.2 控制方式的數(shù)學(xué)模型
由上述三相反應(yīng)式步進(jìn)電機(jī)的工作原理可知,步進(jìn)電機(jī)采用三相六拍的工作方式時(shí),若按照A-AB-B-BC-C-CA-A的通電順序給A、B、C三相提供輸入脈沖,步進(jìn)電機(jī)就沿逆時(shí)針方向旋轉(zhuǎn),每步轉(zhuǎn)過的角度是1.5度。如果實(shí)現(xiàn)步進(jìn)電機(jī)反向旋轉(zhuǎn),只需要按照改變步進(jìn)電機(jī)的通電相序即可。
3 基于Labview的步進(jìn)電機(jī)控制程序設(shè)計(jì)與仿真
根據(jù)對步進(jìn)電機(jī)的具體控制要求,結(jié)合程序設(shè)計(jì)的一般方法。系統(tǒng)分為六個(gè)功能模塊:正反轉(zhuǎn)控制模塊;運(yùn)行頻率設(shè)置模塊;手動控制模塊;自動運(yùn)行模塊;定步旋轉(zhuǎn)模塊;輸出顯示模塊。然后根據(jù)各模塊的功能設(shè)計(jì)子VI。并通過主程序調(diào)用各個(gè)子VI,完成整個(gè)系統(tǒng)的設(shè)計(jì),最后通過仿真調(diào)試,完善控制要求。
根據(jù)系統(tǒng)的軟件流程圖及其功能,設(shè)計(jì)控制系統(tǒng)的前面板如圖2。前面板分為輸入控制和輸出控制部分。輸入控制部分設(shè)置有兩組布爾量指示燈控件,分別用來顯示正反轉(zhuǎn)時(shí)三相輸出控制序列;兩個(gè)選擇開關(guān)控件用來選擇工作方式手動運(yùn)行或自動運(yùn)行;數(shù)值輸入控件用來設(shè)置和更改步進(jìn)電機(jī)運(yùn)行時(shí)的頻率值;五個(gè)按鈕開關(guān)控件,用來控制步進(jìn)電機(jī)的運(yùn)行動作。
輸出控制部分用來顯示被控制步進(jìn)電機(jī)的運(yùn)行參數(shù)。數(shù)字波形顯示圖控件,用來顯示一個(gè)周期(即六拍)內(nèi)A、B、C三相的輸出波形;數(shù)值顯示框控件,用來反饋步進(jìn)電機(jī)當(dāng)前的旋轉(zhuǎn)步數(shù)和角度;布爾指示燈用來顯示A、B、C三相的電流通斷情況;圓盤形數(shù)字指示器控件,用來模擬步進(jìn)電機(jī)轉(zhuǎn)軸的旋轉(zhuǎn)方向和轉(zhuǎn)動位置;同時(shí)還可通過輸入控件設(shè)置定旋轉(zhuǎn)角度的數(shù)值,通過控制步進(jìn)電機(jī)的運(yùn)行角度控制步進(jìn)電機(jī)的位置。
步進(jìn)電機(jī)控制系統(tǒng)的程序框如圖3。
其編程的具體實(shí)現(xiàn)步驟見圖4。
4 結(jié)束語
虛擬儀器技術(shù)為我們提供了一種全新的設(shè)計(jì)思路,實(shí)踐證明,通過LabVIEW編程可以很方便的實(shí)現(xiàn)對步進(jìn)電機(jī)的驅(qū)動控制,并且人機(jī)交互性強(qiáng),界面友好。經(jīng)過仿真運(yùn)行,該系統(tǒng)在精度上能滿足控制要求,同時(shí)還可以使得步進(jìn)電機(jī)更穩(wěn)定運(yùn)行。
參考文獻(xiàn)
[1] 李光提;李淑君;李汝莘.步進(jìn)電機(jī)的虛擬儀器控制系統(tǒng)[J].山東農(nóng)業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2009年01期
[2] 高波;孫聞;張旋.步進(jìn)電機(jī)原理與控制簡介[J].科技致富向?qū)В?2011年20期