姜 霖,譚錫聯(lián),鄒 濤,徐亨成
(1.空軍第一航空學(xué)院 航空儀電工程系,河南 信陽(yáng)464000;2.防空兵學(xué)院 高炮系,河南 鄭州450052)
正弦控制信號(hào)是某型裝備隨動(dòng)系統(tǒng)性能檢測(cè)必不可少的控制信號(hào),其一般由機(jī)電模擬的正弦機(jī)產(chǎn)生,該種方法存在設(shè)備舊、體積大、造價(jià)高和控制不便等缺陷[1]。隨著數(shù)字技術(shù)的發(fā)展,正弦信號(hào)逐漸由計(jì)算機(jī)控制的數(shù)字/自整角信號(hào)模塊產(chǎn)生,但此種方法也存在著造價(jià)高的問(wèn)題。為適應(yīng)隨動(dòng)系統(tǒng)檢測(cè)的需要,采用步進(jìn)電機(jī)控制自整角機(jī)生成了正弦控制信號(hào)。步進(jìn)電機(jī)是一種性能良好的數(shù)字化執(zhí)行元件,廣泛應(yīng)用于各類(lèi)開(kāi)環(huán)控制系統(tǒng)中。該步進(jìn)電機(jī)控制自整角機(jī)生成正弦信號(hào)的方法充分利用了步進(jìn)電機(jī)數(shù)字化的特性,為正弦信號(hào)的控制帶來(lái)了較大的靈活性,且具有實(shí)現(xiàn)容易、造價(jià)低廉的特點(diǎn)。
在單片機(jī)中實(shí)時(shí)計(jì)算正弦曲線較為困難,因此一般采用離散化方法,事先計(jì)算某些離散點(diǎn),再用折線或直線擬合[2]。一種可行的方法是將正弦函數(shù)按時(shí)間間隔均勻劃分為n段,如圖1所示。圖中,Δt表示均勻時(shí)間段。
式中,T表示用戶(hù)設(shè)定的正弦信號(hào)的周期。
圖1 正弦曲線離散過(guò)程
通過(guò)正弦曲線表達(dá)式計(jì)算出每個(gè)時(shí)間段的步進(jìn)電機(jī)步進(jìn)速率。
式中,A表示均勻時(shí)間段內(nèi)正弦信號(hào)的振幅;A*用戶(hù)設(shè)定的正弦信號(hào)振幅。
步進(jìn)電機(jī)的步進(jìn)速率是通過(guò)其線圈電源導(dǎo)通時(shí)間的長(zhǎng)短控制的。因此,步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度可在單片機(jī)的控制下按正弦規(guī)律變化,步進(jìn)電機(jī)再帶動(dòng)自整角機(jī)轉(zhuǎn)子轉(zhuǎn)動(dòng),由自整角機(jī)產(chǎn)生與轉(zhuǎn)子轉(zhuǎn)動(dòng)相同的正弦控制信號(hào)。步進(jìn)電機(jī)的控制涉及到諸多時(shí)間參數(shù),而利用單片機(jī)的定時(shí)器可協(xié)調(diào)這些時(shí)間參數(shù),所以步進(jìn)電機(jī)的執(zhí)行動(dòng)作最終落實(shí)到了單片機(jī)定時(shí)器的溢出率上。而步進(jìn)電機(jī)步進(jìn)半步所需的時(shí)間為
式中,tb表示一個(gè)步進(jìn)電機(jī)步進(jìn)一個(gè)半步所需的時(shí)間;θb表示步進(jìn)電機(jī)的步距角;A*是設(shè)定的正弦信號(hào)的振幅;則溢出率為
通過(guò)式(1)~式(4)計(jì)算出單片機(jī)定時(shí)器溢出率ty,并通過(guò)一定的格式發(fā)送至步進(jìn)電機(jī)控制電路。
由上述分析可看出:當(dāng)n越大時(shí),通過(guò)直線或折線擬合出的曲線則越接近正弦曲線,但由于步進(jìn)電機(jī)對(duì)數(shù)字量有一個(gè)固定的反應(yīng)時(shí)間,所以n的取值有一定限制。觀察正弦曲線易知n的取值跟正弦曲線的周期有一定關(guān)系,文中n值的取值算法如下
式中,T表示正弦信號(hào)的周期;k表示一個(gè)比例系數(shù),經(jīng)反復(fù)的試驗(yàn)得出k=250時(shí)既能保證正弦曲線的離散足夠精細(xì),又能使步進(jìn)電機(jī)不失真地反映數(shù)字量。
圖2給出了方法實(shí)現(xiàn)的硬件原理圖,主要包括控制、光耦隔離和執(zhí)行部分。
圖2 步進(jìn)電機(jī)控制的硬件原理圖
單片機(jī)89C2051通過(guò)串口接收上位機(jī)軟件計(jì)算出正弦數(shù)據(jù),然后通過(guò)P3.4、P3.5、P3.3這3個(gè)I/O口對(duì)步進(jìn)電機(jī)進(jìn)行控制,由于步進(jìn)電機(jī)運(yùn)行是在脈沖供電工作下的感性負(fù)載,所以自感干擾較強(qiáng)烈,為抑制干擾,采取了光耦隔離的方法。由圖可知單片機(jī)每個(gè)輸出腳對(duì)應(yīng)了步進(jìn)電機(jī)的一相線圈,單片機(jī)按照一定規(guī)律拉低3個(gè)輸出腳,便可使步進(jìn)電機(jī)的對(duì)應(yīng)相導(dǎo)通,使步進(jìn)電機(jī)轉(zhuǎn)動(dòng)。
上位機(jī)軟件采用C++Builde編寫(xiě),軟件主要功能是將用戶(hù)設(shè)定的基本參數(shù)的正弦信號(hào)離散化,計(jì)算出均勻時(shí)間段里步進(jìn)電機(jī)的速率和單片機(jī)定時(shí)器溢出率,并按照協(xié)議數(shù)據(jù)格式進(jìn)行打包,將相應(yīng)規(guī)律的指令和數(shù)據(jù)通過(guò)串口進(jìn)行發(fā)送。
由于在步進(jìn)電機(jī)的控制中對(duì)時(shí)間的要求較高,所以最終的控制環(huán)節(jié)采取了與硬件結(jié)合更緊密的匯編語(yǔ)言進(jìn)行編程[3]。
圖3 步進(jìn)電機(jī)控制流程圖
步進(jìn)電機(jī)停轉(zhuǎn)時(shí)仍需控制,主要有兩個(gè)原因:首先,步進(jìn)電機(jī)是一種功率元件,線圈在工作時(shí)發(fā)熱量大,所以不能長(zhǎng)時(shí)間使電機(jī)的某一相或幾相通電,由此會(huì)導(dǎo)致電機(jī)過(guò)熱而燒毀。即使當(dāng)電機(jī)無(wú)需輸出時(shí),也要有選擇地給步進(jìn)電機(jī)的某相或某幾相通斷電。其次,若停轉(zhuǎn)時(shí)不進(jìn)行處理,長(zhǎng)時(shí)間的保持步進(jìn)電機(jī)的某個(gè)狀態(tài)會(huì)使步進(jìn)電機(jī)的某相或某幾相累積過(guò)大的電感,當(dāng)要切換到下一狀態(tài)時(shí),由于積累的電感會(huì)對(duì)突然斷電的某相或某幾相產(chǎn)生力矩,使步進(jìn)電機(jī)向預(yù)定方向的反方向轉(zhuǎn)動(dòng)一個(gè)角度,若需將轉(zhuǎn)換狀態(tài)的磁場(chǎng)建立起時(shí),定子和轉(zhuǎn)子的位置已不再一致,便會(huì)導(dǎo)致失步[4-6]。
步進(jìn)電機(jī)線圈控制脈沖的最佳導(dǎo)通時(shí)間因電機(jī)型號(hào)而異,不同的步進(jìn)電機(jī)有其最合適的線圈通電時(shí)間,經(jīng)反復(fù)試驗(yàn),文中使用的常州電機(jī)廠生產(chǎn)的45BC340E型步進(jìn)電機(jī)的線圈通電時(shí)間約為530μs時(shí),電機(jī)可工作于最佳狀態(tài):既不會(huì)因通電時(shí)間過(guò)短而失步,又不會(huì)因通電時(shí)間長(zhǎng)而過(guò)熱。
圖4描述了當(dāng)步進(jìn)電機(jī)工作時(shí),控制脈沖與步進(jìn)電機(jī)定子線圈上工作電壓的關(guān)系。
圖4 步進(jìn)電機(jī)工作曲線圖
從圖中可看出:當(dāng)步進(jìn)電機(jī)停轉(zhuǎn)時(shí),電路中仍存在規(guī)則的控制脈沖;而實(shí)際上步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的時(shí)間較少,可控制的時(shí)間參數(shù)為停轉(zhuǎn)時(shí)間,停轉(zhuǎn)的時(shí)間越長(zhǎng),步進(jìn)電機(jī)速率越小。若利用程序控制步進(jìn)電機(jī)停轉(zhuǎn)的時(shí)間按照正弦規(guī)律變化時(shí),步進(jìn)電機(jī)便通過(guò)機(jī)械鉸鏈將該種轉(zhuǎn)動(dòng)規(guī)律傳遞至自整角機(jī)上,從而形成正弦工作狀態(tài)。
步進(jìn)電機(jī)控制同步機(jī)生成正弦信號(hào)的方法控制靈活、實(shí)現(xiàn)簡(jiǎn)單,對(duì)實(shí)驗(yàn)室條件下的同步機(jī)教學(xué)與研究具有積極意義,但該方法中涉及的傳遞環(huán)節(jié)較多,正弦信號(hào)也并非直接生成,如何更精確地?cái)M合正弦信號(hào)仍值得進(jìn)一步的研究。
[1] 王鴻鈺.步進(jìn)電機(jī)控制技術(shù)入門(mén)[M].上海:同濟(jì)大學(xué)出版社,1990.
[2] 宋戈,黃鶴松,員玉良,等.51單片機(jī)應(yīng)用開(kāi)發(fā)范例大全[M].北京:人民郵電出版社,2010.
[3] 孫曉云,郭立煒,孫會(huì)琴.基于Lab Windows/CVI的虛擬儀器設(shè)計(jì)與應(yīng)用[M].北京:電子工業(yè)出版社,2005.
[4] 李發(fā)海,王巖.電機(jī)與拖動(dòng)基礎(chǔ)[M].北京:清華大學(xué)出版社,2000.
[5] 花同.步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)[J].電子工程設(shè)計(jì),2011,19(15):13-15.
[6] 莊瑞榮,吳先球.基于LabVIEW的步進(jìn)電機(jī)控制[J].現(xiàn)代電子技術(shù),2012,35(4):202-204.