黃金磊,趙毅飛,李 巖
(河南職業(yè)技術(shù)學(xué)院,鄭州450000)
電子與計(jì)算機(jī)技術(shù)的飛速發(fā)展,帶來自動(dòng)化集成控制發(fā)展的越發(fā)迅速[1]。作為運(yùn)動(dòng)控制領(lǐng)域的一種關(guān)鍵執(zhí)行部件,步進(jìn)電動(dòng)機(jī)因其控制系統(tǒng)實(shí)現(xiàn)簡單、定位精度高等優(yōu)點(diǎn),在各行業(yè)都有廣泛的應(yīng)用。可編程序控制器(以下簡稱PLC)具有的模塊化結(jié)構(gòu)、精確的數(shù)據(jù)處理、控制功能豐富、高性價(jià)比、高可靠性、操作方便等優(yōu)點(diǎn),逐漸取代傳統(tǒng)的繼電器控制,成為目前工業(yè)控制中應(yīng)用非常廣泛的一種裝置。
本文采用西門子公司生產(chǎn)的S7-200 PLC 實(shí)現(xiàn)對三相六拍步進(jìn)電動(dòng)機(jī)的控制。通過PLC 的高速脈沖輸出,利用軟件實(shí)現(xiàn)修改高速脈沖頻率的策略來控制電機(jī)的高、中、低檔三速;并通過移位指令按照步進(jìn)電動(dòng)機(jī)的工作順序來控制電機(jī)的正轉(zhuǎn)和反轉(zhuǎn)。該控制系統(tǒng)的主要技術(shù)要求如下:1)系統(tǒng)可實(shí)現(xiàn)電機(jī)的正反轉(zhuǎn)起動(dòng);2)運(yùn)行過程中,不需要停機(jī)就可以實(shí)現(xiàn)正反轉(zhuǎn)切換;3)電機(jī)的運(yùn)行速度分為高、中、低速三檔,并可以通過手動(dòng)進(jìn)行變速;4)任意位置停機(jī)后,再次起動(dòng)均從A 相起動(dòng)。
步進(jìn)電動(dòng)機(jī)是一種將電脈沖信號轉(zhuǎn)換成直線位移或者角位移的執(zhí)行部件[2]。當(dāng)電機(jī)接收到一個(gè)脈沖時(shí),步進(jìn)電動(dòng)機(jī)輸出軸會(huì)轉(zhuǎn)過一個(gè)固定的角度(步距角)。不改變電機(jī)的電脈沖方向及勵(lì)磁狀態(tài),電機(jī)軸固定在某一個(gè)位置而保持停止?fàn)顟B(tài)。步進(jìn)電動(dòng)機(jī)的速度與輸入到電機(jī)的脈沖頻率成正比,而其旋轉(zhuǎn)角度的大小正比于單位時(shí)間內(nèi)的電脈沖數(shù)量,三相繞組的導(dǎo)通和關(guān)斷順序決定了電機(jī)的轉(zhuǎn)動(dòng)方向。所以,在使用PLC 控制步進(jìn)電動(dòng)機(jī)時(shí),為了實(shí)現(xiàn)對電機(jī)的轉(zhuǎn)動(dòng)角度、轉(zhuǎn)速和旋轉(zhuǎn)方向的控制,就必須實(shí)現(xiàn)電機(jī)接收的脈沖數(shù)量、繞組導(dǎo)通順序及脈沖頻率的控制[3]。目前使用廣泛的是兩相和四相步進(jìn)電動(dòng)機(jī),其缺點(diǎn)是振動(dòng)和噪聲大;而三相和五相電動(dòng)機(jī)更有優(yōu)勢,但是五相電機(jī)的驅(qū)動(dòng)系統(tǒng)比三相電機(jī)復(fù)雜,而三相電機(jī)控制系統(tǒng)具有更高的性價(jià)比。
從步進(jìn)電動(dòng)機(jī)的工作原理及工作方式可以看出,要實(shí)現(xiàn)對步進(jìn)電動(dòng)機(jī)的控制就要產(chǎn)生符合要求的脈沖。通過控制輸入電機(jī)的脈沖順序,從而實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)三相繞組供電的依次導(dǎo)通和關(guān)斷,形成交變的旋轉(zhuǎn)磁場,完成電機(jī)的旋轉(zhuǎn)運(yùn)動(dòng)。因此要實(shí)現(xiàn)PLC 控制步進(jìn)電動(dòng)機(jī),PLC 要滿足以下兩個(gè)要求:1)PLC 的輸出具有實(shí)時(shí)刷新技術(shù),使得PLC 的脈沖輸出信號頻率可以達(dá)到數(shù)kHz 甚至更高,以提高系統(tǒng)的響應(yīng)速度,保證電機(jī)具有快速動(dòng)態(tài)響應(yīng)能力。2)步進(jìn)電動(dòng)機(jī)工作時(shí)脈沖電壓可以達(dá)到幾十伏、電流幾安培,為了保證控制部分有足夠的驅(qū)動(dòng)能力,PLC 的輸出要選用大功率晶體管形式[4]。西門子S7-200 系列PLC 本身具有高速脈沖發(fā)生器和大功率晶體管輸出,可以滿足本設(shè)計(jì)的技術(shù)要求,因此選其作為核心控制器,實(shí)現(xiàn)對步進(jìn)電動(dòng)機(jī)的控制??刂圃砜驁D如圖1 所示。
圖1 步進(jìn)電動(dòng)機(jī)的PLC 直接控制
步進(jìn)電動(dòng)機(jī)控制系統(tǒng)如圖2 所示。
圖2 典型的步進(jìn)電動(dòng)機(jī)控制系統(tǒng)
隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,有多種方案可以實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)的控制和驅(qū)動(dòng),按照控制體系可以分為以下三種結(jié)構(gòu)[3,8]:
(a)硬件結(jié)構(gòu)
硬件結(jié)構(gòu)如圖3 所示。步進(jìn)電動(dòng)機(jī)控制系統(tǒng)由硬件電路脈沖發(fā)生器和硬件脈沖分配器、驅(qū)動(dòng)器三部分組成。這種控制系統(tǒng)的優(yōu)點(diǎn)是運(yùn)行速度快;缺點(diǎn)也很明顯,電路復(fù)雜,功能簡單,系統(tǒng)升級和維護(hù)工作困難。
圖3 硬件結(jié)構(gòu)控制
(b)軟件結(jié)構(gòu)
如圖4 所示,控制系統(tǒng)由軟件脈沖發(fā)生器和分配器、驅(qū)動(dòng)器組成。由單片機(jī)或者DSP 通過編程實(shí)現(xiàn)軟件脈沖發(fā)生器和分配器。采用這種控制結(jié)構(gòu)時(shí),上位機(jī)一般是通用PC、工控機(jī)、PLC 等。這種控制方案的優(yōu)點(diǎn)是控制電路簡單,可以實(shí)現(xiàn)非常復(fù)雜的功能,但是對控制器的CPU 性能要求較高。
圖4 軟件結(jié)構(gòu)控制
(c)軟硬件結(jié)構(gòu)
如圖5 所示,該控制系統(tǒng)由軟件脈沖發(fā)生器和硬件脈沖分配器及硬件驅(qū)動(dòng)器組成。通過脈沖分配芯片實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)的通電換相控制。這種控制系統(tǒng)具有電路結(jié)構(gòu)簡單、容易實(shí)現(xiàn)復(fù)雜的功能的優(yōu)點(diǎn),同時(shí)對CPU 的性能要求不高。
圖5 軟硬件結(jié)構(gòu)控制
本文采用的PLC 控制方案屬于軟件結(jié)構(gòu)。由PLC 實(shí)現(xiàn)控制系統(tǒng)和驅(qū)動(dòng)器的功能。通過PLC 程序?qū)崿F(xiàn)脈沖發(fā)生器和分配器的功能,對步進(jìn)電動(dòng)機(jī)進(jìn)行控制。同時(shí)PLC 的輸出直接驅(qū)動(dòng)步進(jìn)電動(dòng)機(jī),從而實(shí)現(xiàn)電機(jī)的旋轉(zhuǎn)。
圖6 為步進(jìn)電動(dòng)機(jī)的一相驅(qū)動(dòng)電路。另外兩相與該電路相同。該電路的工作原理:當(dāng)控制信號1PH 為低電平時(shí),三極管截止,電路輸出高電平,光耦不導(dǎo)通,電機(jī)的三相繞組中無電流流過;當(dāng)1PH變?yōu)楦唠娖綍r(shí),T1 導(dǎo)通,光耦動(dòng)作,向T2,T3 提供電流,使其導(dǎo)通,繞組流過電流。在驅(qū)動(dòng)電路的設(shè)計(jì)中,為了滿足電機(jī)繞組靜態(tài)時(shí)大約2 A 的電流,由T2,T3 組成達(dá)林頓管,增加其驅(qū)動(dòng)能力[8]。
圖6 步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)電路
西門子S7-200 具有最大頻率為10 kHz 的高速脈沖發(fā)生器和高速計(jì)數(shù)器,完全滿足步進(jìn)電動(dòng)機(jī)的控制要求[6]。系統(tǒng)的控制圖如圖7 所示。
圖7 PLC 直接驅(qū)動(dòng)電機(jī)
繞組控制程序?qū)崿F(xiàn)以下功能:通過脈沖分配控制步進(jìn)電動(dòng)機(jī)三相繞組的通電順序,從而形成旋轉(zhuǎn)磁場,使電機(jī)正向或反向轉(zhuǎn)動(dòng)。三相六拍的步進(jìn)電動(dòng)機(jī)的工作順序?yàn)锳-AB-B-BC-C-CA-A 時(shí),電機(jī)正轉(zhuǎn);當(dāng)工作順序?yàn)锳-AC-C-CB-B-BA-A 時(shí),電機(jī)反轉(zhuǎn)。步進(jìn)電動(dòng)機(jī)前進(jìn)一步,繞組控制程序中計(jì)算的步數(shù)減1,當(dāng)六步執(zhí)行完畢,計(jì)數(shù)器為零,停止脈沖分配,等待下一次動(dòng)作的開始。由于步進(jìn)電動(dòng)機(jī)屬于感性負(fù)載,繞組電阻非常小,為了避免脈沖電流過大造成損壞,應(yīng)用中需要串聯(lián)限流電阻,以保證步進(jìn)電動(dòng)機(jī)的安全。完成步進(jìn)電動(dòng)機(jī)的控制主要有繞組導(dǎo)通控制和轉(zhuǎn)速控制兩部分,分別接PLC 輸入的I0.0 ~I(xiàn)0.5 和輸出的Q0.1 ~Q0.3[4-5]。如圖8 所示。
圖8 S7-200 PLC I/O 點(diǎn)分配圖
程序流程圖如圖9 所示。首先,程序進(jìn)行初始化操作,清除寄存器,然后選擇步進(jìn)速度,電機(jī)正反轉(zhuǎn)方向選擇,產(chǎn)生移位脈沖,輸出脈沖控制步進(jìn)電動(dòng)機(jī),計(jì)算六拍計(jì)數(shù)器數(shù)值,進(jìn)行計(jì)數(shù)器判斷,如果計(jì)數(shù)器到,進(jìn)行移位寄存器賦值,否則繼續(xù)運(yùn)行。
圖9 步進(jìn)電動(dòng)機(jī)運(yùn)行時(shí)的程序框圖
以步進(jìn)電動(dòng)機(jī)的控制流程圖為依據(jù),結(jié)合控制的技術(shù)要求,將程序分成四個(gè)子程序進(jìn)行編程:1)高中低三檔速度選擇;2)電機(jī)運(yùn)行命令控制,包括電機(jī)的起動(dòng)和停止及正反轉(zhuǎn)控制;3)移位寄存器賦值計(jì)算處理;4)A/B/C 三相輸出控制。子程序測試完成后,進(jìn)行系統(tǒng)的調(diào)試和完善,達(dá)到最終的控制要求[7]。
實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)的不同轉(zhuǎn)速及三相繞組的導(dǎo)通控制所對應(yīng)的PLC I/O 定義如表1 所示。
表1 I/O 地址對應(yīng)表
電機(jī)的步進(jìn)控制通過PLC 的移位指令完成。設(shè)定MW0 為移位器存器,表2 列出了各寄存器的初始值。
表2 MW0 寄存器初始值
三相六拍步進(jìn)電動(dòng)機(jī)每前進(jìn)一個(gè)步距角,即前進(jìn)一拍,六拍完成后重新計(jì)數(shù)。根據(jù)步進(jìn)電動(dòng)機(jī)的動(dòng)作要求可以得出電機(jī)的繞組控制邏輯表,如表3所示。
表3 繞組通斷邏輯表
根據(jù)表3 設(shè)計(jì)步進(jìn)電動(dòng)機(jī)的梯形圖程序。部分程序如圖10、圖11 所示。程序編寫完成后,編譯無誤,將程序下載到PLC 中,即可運(yùn)行。
圖10 速度控制程序
圖11 步進(jìn)電機(jī)脈沖計(jì)數(shù)
步進(jìn)電動(dòng)機(jī)低速起動(dòng)時(shí),按下I0.2 且上升沿觸發(fā),在低速回路中串入中速信號I0.1 和高速信號I0.0 的常閉觸點(diǎn)形成互鎖,然后使用MOVE 指令將100 傳送給移位寄存器VW200。步進(jìn)電動(dòng)機(jī)正轉(zhuǎn)時(shí),按下按鈕I0.3,同時(shí)回路中串入的反轉(zhuǎn)信號I0.4 的常閉觸點(diǎn),形成互鎖,保證電機(jī)正轉(zhuǎn)時(shí)反轉(zhuǎn)不能起動(dòng)。停止時(shí),可以隨時(shí)按下按鈕I0.5,電機(jī)在任何位置都會(huì)停止運(yùn)行。為確保正反轉(zhuǎn)時(shí)電機(jī)都可以從A 相起動(dòng),不產(chǎn)生累積誤差,正反轉(zhuǎn)信號和計(jì)數(shù)器C0 并聯(lián)將數(shù)值通過移位指令傳給寄存器MW0,從而控制電機(jī)的步距角。并通過計(jì)數(shù)器C0 起動(dòng)M3.0。當(dāng)計(jì)數(shù)器C0 計(jì)到6 次時(shí),復(fù)位計(jì)數(shù)器重新計(jì)數(shù)。VW100 的值不一樣,PLC 發(fā)出不同頻率的脈沖信號,步進(jìn)電動(dòng)機(jī)在不同轉(zhuǎn)速下轉(zhuǎn)動(dòng)。M2.0 得電閉合一次,計(jì)數(shù)器就計(jì)數(shù)一次,當(dāng)計(jì)數(shù)到六次的時(shí)候,計(jì)數(shù)器停止動(dòng)作,M3.0 對計(jì)數(shù)器進(jìn)行復(fù)位。通過監(jiān)視MW0 可以判斷PLC 的輸出狀態(tài)和電機(jī)的運(yùn)行狀態(tài)。中速和高速的控制方式同低速。
為了驗(yàn)證程序的正確性,搭建了如圖12 所示的應(yīng)用測試系統(tǒng)。步進(jìn)電動(dòng)機(jī)采用浙機(jī)科技有限公司生產(chǎn)的110BYG350。將PLC 程序下載到S7-200中,首先將PLC 切換到運(yùn)行狀態(tài),同時(shí)打開軟件的程序狀態(tài)監(jiān)控功能,并在狀態(tài)表中選擇地址VW100,MW0 進(jìn)行狀態(tài)監(jiān)控。為了觀察電機(jī)的旋轉(zhuǎn)方向和旋轉(zhuǎn)角度的準(zhǔn)確性,在步進(jìn)電動(dòng)機(jī)軸端安裝有角度盤。試驗(yàn)中,當(dāng)分別按下正轉(zhuǎn)和反轉(zhuǎn)按鈕時(shí),電機(jī)按照對應(yīng)的方向進(jìn)行旋轉(zhuǎn)。電機(jī)旋轉(zhuǎn)過程中,在程序中對高、中、低三檔速度對應(yīng)的數(shù)字量輸入信號強(qiáng)制觸發(fā),電機(jī)分別以對應(yīng)的轉(zhuǎn)速進(jìn)行旋轉(zhuǎn),且電機(jī)轉(zhuǎn)速平穩(wěn)。在任意狀態(tài)下,強(qiáng)制清零信號有效,電機(jī)立刻停止運(yùn)轉(zhuǎn)。經(jīng)過系統(tǒng)的測試,證明該方案達(dá)到了設(shè)計(jì)輸入要求,滿足使用要求。
圖12 系統(tǒng)測試與驗(yàn)證平臺(tái)
本文充分利用S7-200 可編程序控制器具有的高速脈沖輸出功能、方向信號功能,通過PLC 程序并與外部硬件相結(jié)合,精確地實(shí)現(xiàn)對步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)速控制。通過控制PLC 的數(shù)字量輸出和高速脈沖信號的輸出頻率,實(shí)現(xiàn)對步進(jìn)電動(dòng)機(jī)繞組的導(dǎo)通控制和正反轉(zhuǎn)切換。PLC 功能日益強(qiáng)大,可以利用它方便地實(shí)現(xiàn)電機(jī)速度和位置控制,從而使步進(jìn)電動(dòng)機(jī)滿足各種復(fù)雜場合工作的需要。該方案體現(xiàn)了自動(dòng)化控制的先進(jìn)水平,促進(jìn)了機(jī)電一體化技術(shù)的發(fā)展。
[1] 王鴻枉.步進(jìn)電機(jī)控制技術(shù)入門[M].上海:同濟(jì)大學(xué)出版社,1990:72-77.
[2] SEUNG-KI S.電機(jī)傳動(dòng)系統(tǒng)控制[M].張永昌,李正鵬,譯.北京:機(jī)械工業(yè)出版社,2013.
[3] 劉寶廷.步進(jìn)電機(jī)及其驅(qū)動(dòng)控制系統(tǒng)[M]. 哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1997.
[4] 廖常初.PLC 編程及應(yīng)用[M].4 版. 北京:機(jī)械工業(yè)出版社,2014.
[5] 隋振有.電氣控制與PLC 應(yīng)用快速入門[M]. 北京:中國電力出版社,2014.
[6] 向曉漢.S7-200 PLC 基礎(chǔ)及工程應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2014.
[7] 王阿根.西門子S7-200 PLC 編程實(shí)例精解[M]. 北京:電子工業(yè)出版,2011.
[8] 坂本正文.步進(jìn)電機(jī)應(yīng)用技術(shù)[M]. 王自強(qiáng),譯. 上海:科學(xué)出版社,2010.