楊 鑒
(岳陽市污水處理監(jiān)督中心,湖南 岳陽,414000)
步進電機是機電控制的一種執(zhí)行機構(gòu),又叫脈沖電機,它可分為旋轉(zhuǎn)式和直線式兩類。其主要用途是將電脈沖信號轉(zhuǎn)換為直線(角)位移的開環(huán)電磁裝置[1]。當步進電機驅(qū)動器收到一個脈沖信號[2],就能將指令脈沖轉(zhuǎn)換成步進電機的不連續(xù)旋轉(zhuǎn),從而驅(qū)動電機輸出軸沿著預(yù)定的方向轉(zhuǎn)動相應(yīng)的角度。
步進電機的轉(zhuǎn)角可通過驅(qū)動器的脈沖個數(shù)來控制,其轉(zhuǎn)速與脈沖頻率成正比[3],電機能夠快速地起動、制動和反轉(zhuǎn),在一定頻率范圍內(nèi)各種運行方式都能方便地任意改變,且不丟步。這樣,通過控制脈沖個數(shù)和脈沖頻率,就能使執(zhí)行機構(gòu)達到準確定位和實時調(diào)速的目的。步進電動機一般可分為分永磁式、反應(yīng)式和混合式三種類型。
通常步進電動機的驅(qū)動電路是根據(jù)脈沖控制信號進行工作的[4],而脈沖控制信號又是由單片機產(chǎn)生的。
(1)換相順序:通常步進電機通電換相的過程也被稱之為“脈沖分配”[5],以步進電動機的常用三相六拍工作方式為例,如其各相通電順序為A→AB→B→BC→C→CA→A→AB→……,就應(yīng)該按照這一通電順序來分別準確地控制A、B、C 三相六拍方式的通斷。
(2)步進電機轉(zhuǎn)向確定:規(guī)定給定工作方式是正序通電方式換相,如以四相四拍方式為例,即A→B→C→D→A→B→……,那么步進電動機就應(yīng)當正轉(zhuǎn)運行;假如給定按反序換相通電方式,則步進電動機就相應(yīng)反轉(zhuǎn)。
(3)步進電機速度控制:步進電機的步進時間是離散的,步進電動機速度控制就是控制步進電機產(chǎn)生步進動作時間[6]。步進電機速度控制即是控制進給脈沖的頻率,當調(diào)整發(fā)出的單片機脈沖頻率信號,這樣即可對步進電機進行調(diào)速控制[7]。
常見的兩坐標步進電動機控制系統(tǒng),可通過CNC 裝置配合組成經(jīng)濟型數(shù)控系統(tǒng)控制,也可采用點動方式運行,形成自我體系控制系統(tǒng)。典型的XY 兩坐標步進電動機控制系統(tǒng)的應(yīng)用框圖如下圖1 所示。
圖1 典型XY 兩坐標步進電機控制系統(tǒng)應(yīng)用框圖
通常,兩坐標步進電機控制常常采用工業(yè)微機(IPC)或計算機數(shù)控裝置(CNC)作為主機系統(tǒng),用來接受控制指令,以及輸入、存儲數(shù)控程序,并對數(shù)控程序指令進行譯碼、邏輯分析、插補運算等操作處理,然后以步進脈沖的形式輸出。
依據(jù)上述工作原理及方式選擇,并結(jié)合考慮方式選擇開關(guān)的“點動”功能,通過單片機為核心控制的XY 兩坐標步進電機的控制系統(tǒng)原理圖如下圖2 所示。
圖2 XY 兩坐標步進電機控制系統(tǒng)原理圖
當方式選擇開關(guān)選擇“自動”工作方式時,單片機接收到IPC 或數(shù)控裝置外部發(fā)出的進給數(shù)據(jù)脈沖信號,X 軸、Y 軸進行軟件環(huán)形脈沖分配后,分別輸出到相應(yīng)X 軸、Y 軸對應(yīng)的功率放大器,去控制驅(qū)動步進電機的實時運行狀態(tài)[8-9]。而當方式選擇開關(guān)選擇“點動”工作方式時,此時的單片機就會依據(jù)“點動”開關(guān)按鈕狀態(tài),能夠按照一定的周期自行分配脈沖,并輸出到相應(yīng)的功率放大器,去驅(qū)動控制步進電機對應(yīng)的工作運行狀態(tài)。
XY 兩坐標步進電機單片機控制系統(tǒng)的硬件電路實現(xiàn)原理圖如下圖3 所示。
圖3 XY 兩坐標步進電機單片機控制系統(tǒng)硬件原理圖
單片機選用AT89C52 芯片,該芯片是一個低電壓、高性能CMOS 8 位單片機,內(nèi)含8KB 的E2PROM,采用工業(yè)標準的C51 內(nèi)核,其中P1 口作為輸入,它與工作方式選擇按鈕以及和點動開關(guān)相聯(lián),P1 接收低8 位地址;P2 口作為輸出節(jié)拍脈沖,P2 口送出高8 位地址數(shù)據(jù),分別用以控制X軸、Y 軸的兩個步進電機繞組通電和換相的順序;P3 口為8 位雙向I/O,用來接受來自數(shù)控裝置外部的進給脈沖信號和方向信號,脈信號分別加到P3口的P3.2、P3.3 端子,外部中斷發(fā)生在脈沖下降沿處。SB1 為單片機復(fù)位按鈕,系統(tǒng)采用12MHz 晶振。
為提高信號傳輸可靠性和防止外部干擾,通過光電隔離接口,接受來自計算機數(shù)控裝置CNC的0~15mA 電流脈沖信號。P2 口的輸出經(jīng)光電隔離模塊OP11~OP14 和OP21~OP24 后,利用驅(qū)動型單電源功率放大電路,加到晶體管VT11~VT14和VT21~VT24 的基極,通過基極驅(qū)動電路,經(jīng)晶體管功率放大后,再驅(qū)動X、Y 軸兩坐標的步進電機L11~L14 和L21~L24 繞組[7]。在圖3 中,VD11、VD21 為續(xù)流二極管,R113、R213 為繞組限流電阻。
根據(jù)AT89C52 單片機控制系統(tǒng)硬件電路原理圖,可以歸納得出該單片機I/O 端口功能及分配如下表1 所示。
表1 I/O 端口功能及分配
當中斷系統(tǒng)功能工作于自動方式時,開啟外部中斷INT1、INT0,對應(yīng)其每一個進給脈沖都能引起一次外部中斷,并由中斷服務(wù)來實現(xiàn)進給動作程序控制。當中斷系統(tǒng)功能工作于點動方式時,脈沖頻率為100Hz、即周期為10ms,定時/計數(shù)器0工作于方式1,相應(yīng)定時10ms 中斷,就能實現(xiàn)開關(guān)量和點動控制的25ms 延時抖動功能。
以系統(tǒng)控制軟件的總體結(jié)構(gòu)主程序、二個外部中斷服務(wù)程序INT1、INT0 為例進行說明,系統(tǒng)控制軟件流程圖如圖4~圖6 所示:
圖4 系統(tǒng)控制軟件主程序流程圖
圖5 外部中斷INTI 流程圖
圖6 外部中斷INT0 流程圖
步進電機控制系統(tǒng)設(shè)計硬件采用一片AT89C52 單片機,其具有低電壓、高性能的特點,無須外擴程序存儲器,可直接驅(qū)動光電耦合器。軟件設(shè)計充分利用中斷處理功能,可實現(xiàn)并行執(zhí)行多程序,充分發(fā)揮多任務(wù)、實時控制的軟件功能。
本文將AT89C52 單片機用于XY 兩坐標步進電動機的控制系統(tǒng),從步進電機的控制方法、控制系統(tǒng)的總體設(shè)計要求上,分析了XY 兩坐標步進電機單片機控制系統(tǒng)的硬件電路實現(xiàn)原理,結(jié)合提出了控制系統(tǒng)的軟件設(shè)計方案,并給出了步進電動機的四相四拍AT89C52 單片機控制的具體實現(xiàn)方法,通過實踐試驗,取得了成功。
湖南工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報2021年4期