作為工業領域廣泛應用的控制電機,步進電機具有出色的開環性能,易于實現數字化、智能化控制。步進電機組成的控制系統具有結構簡單、性能穩定、造價便宜等特點,在工業控制領域中得到了廣泛的應用。單片機對步進電機的控制成本低、操作靈活,在步進電機的控制中得到了廣泛的應用。本文以AT89C52單片機作為控制器設計一種新型的兩相混合式步進電機的控制系統。
控制系統主要由單片機、鍵盤、顯示、驅動、PC上位機等5個模塊組成,其中PC上位機用于編寫及燒錄程序。控制器通過相應的IO接口,將控制指令發送至驅動電路,可以控制步進電機的運行,完成系統的伺服控制。
控制系統可實現以下功能:(1)控制步進電機的啟動和停止、運行方向、運行速度。(2)顯示步進電機的運行狀態、方向、轉速。(3)通過軟件實現細分控制。圖1為控制系統總體結構圖。
圖1 控制系統總體結構圖
3.1 單片機模塊
單片機模塊主要由AT89C52單片機及外圍濾波、電源管理、晶振和復位電路組成。AT89C52單片機具有8KB內存的可編程可擦除只讀存儲器,便于反復的進行程序的編寫。電源管理電路提供的3.5V和5V電壓分別給單片機、晶振、LED和控制電路供電。12MHZ的晶振給單片機提供時鐘信號。單片機的串口用于和PC上位機的通信以及燒錄軟件程序。P1口控制驅動電路開關管的通斷。P0和P2口控制LCD1602和LED組成的顯示模塊。P3口檢測鍵盤信號及外部中斷信號。
3.2 鍵盤及顯示模塊
控制系統設置了5位獨立按鍵組成的鍵盤模塊以及由LCD1602和5位LED組成的顯示模塊。通過鍵盤可以對步進電機進行正轉、反轉、加速、減速、停止功能的操作。步進電機運行時的狀態信息可以通過顯示模塊直觀的顯示出來。圖2為鍵盤及顯示模塊硬件原理圖。
鍵盤模塊的特點在于用單片機的兩個外部中斷來控制步進電機進行加、減速,即每引入一次外部中斷,步進電機加/減速一次。正轉、反轉、停止按鍵分別由單片機的P3.0、P3.1、P3.4口引入。加速、減速按鍵分別由單片機的P3.2和P3.3口引入。
LCD1602的數據/命令選擇端、讀寫選擇端、使能信號分別接在單片機的P2.0、P2.1、P2.2口上,數據口接在單片機的P0口上。LCD1602可以顯示步進電機的5種運行狀態以及運行速度。5位LED通過74LS138接在單片機的P2.3—P2.5口上,5位LD分別用于表示步進電機的正轉、反轉、加速、減速、停止5種運行狀態。
圖2 鍵盤及顯示模塊硬件原理圖
3.3 驅動模塊
控制系統的電機驅動模塊采用雙極性驅動的方式。雙極性驅動是指步進電機線圈中電流的流動方向不是單向的,即繞組中的電流有時沿某一方向流動,有時沿相反的方向流動。雙極性驅動電路可以同時驅動四線式或六線式的兩相混合式步進電機。
控制系統所選用的二相混合式步進電機工作時的額定電壓為12V,繞組的阻值為1.5Ω,額定電流為8A。由于該步進電機工作時的電流較大,因此需要選擇額定電流較大的功率開關管,否則步進電機工作時較大的工作電流產生的熱效應極易燒毀開關管。功率開關管BUW49工作時的額定電壓為80V,額定電流為30A,屬于高電流型功率開關管,因此完全能夠滿足需要。
根據步進電機的工作原理,當控制電路給驅動電路發出相應的脈沖信號時,電機繞組的通電順序為A+B+→A-B+→A-B-→A+B-,其4個狀態按順序進行循環,電機則正向轉動。若相序變為A+B-→A-B-→A-B+→A+B+,電機則逆向轉動。
因此,當單片機AT89C52的引腳P1.0至P1.7輸出的脈沖時序依次為10011001→01101001→01100110→10010110時,控制各個開關管依次導通,產生相應的正向通電時序,從而驅動步進電機正向旋轉。同樣,當單片機的引腳輸出的脈沖時序相反時,電機則反向旋轉。圖3為驅動電路硬件原理圖。
圖3 驅動電路硬件原理圖
控制系統的硬件原理圖由電子技術虛擬仿真軟件Proteus 7.5進行仿真,仿真時兩相混合式步進電機的參數按照控制系統所選用的步進電機實際參數設置。經過仿真得出該系統能夠實現對步進電機的正/反轉、停止、加/減速的控制,并且控制非常靈敏、工作可靠、不會出現誤操作。
步進電機在運行時的運行狀態、速度參數以及按鍵的操作狀態能夠以英文的形式非常直觀的顯示在LCD1602和5位LED上。通過分析仿真時虛擬示波器測出的A、B兩相的繞組電壓波形得知,步進電機在系統仿真運行的過程中具有良好的動態響應。圖4為控制系統整體硬件原理圖。
圖4 控制系統整體硬件原理圖
4.1 步進電機工作方式
由于按雙四拍方式工作時步進電機不容易失步,并且控制精度較高,因此步進電機采用雙四拍的工作方式。這種工作方式每次都有兩相繞組導通,兩相繞組處在相同的電壓之下,以A+B+→A-B+→A-B-→A+B-(或反向)方式導通。當A、B繞組完成一次通電循環以后,磁場旋轉一周,轉子則前進一個步距角。
4.2 運行方向控制
步進電機的運行方向由其內部繞組的通電順序及通電方式決定。由于兩相雙四拍步進電機不容易失步,控制精度比較高,所以本文采用兩相雙四拍的工作方式對步進電機進行控制。
對于兩相雙四拍工作方式:
兩相雙四拍控制模型如表3.1所示。
表3.1 兩相雙四拍控制模型
4.3 運行速度控制
控制步進電機的運行速度,實際上是控制驅動脈沖的發出頻率或換相周期。即在加速的過程中,使驅動脈沖的發出頻率升高;在減速的過程中,使驅動脈沖的發出頻率降低。對驅動脈沖頻率的控制可以通過軟件延時和硬件中斷的方式來實現。
軟件延時是指根據所需的延時時間常數編寫一個延時子程序,當CPU執行延時子程序時,系統達到延時的目的。采用軟件延時方式,CPU一直被占用,使得CPU的利用率降低。
可編程的硬件定時器可以對系統的時鐘脈沖進行計數,計數值可以通過編程的方式設定。當計數到預定的脈沖數時,定時器產生中斷信號,系統得到所需的延時時間。定時器延時可以提高CPU的利用率。
4.4 系統程序設計
系統程序設計的思想是:
圖5 系統程序結構圖
在實驗中本系統選57HS56DF101TK-01混合式步進電機作為控制對象。該步進電機為兩相四線步進電機,步距角為1.8°,額定電流為8A,靜轉矩為10Kg·cm。圖6為控制系統實物圖。
圖6 控制系統實物圖
實驗時,測得電機繞組阻值Rs為1.5Ω,系統選擇12V直流電源供電,符合步進電機的要求。圖7為步進電機運行時A相的電壓波形圖。圖8為步進電機的靜態矩角特性曲線圖。
圖7 步進電機A相電壓圖
圖8 步進電機矩角特性曲線圖
實驗結果說明,本控制系統在步進電機的運行過程中可以實現對步進電機的運行控制,改變步進電機的工作狀態,控制精確,能夠較好的滿足工作要求。
本文基于AT89C52單片機設計的兩相混合式步進電機控制系統具有體積小、可靠性高、功能豐富、造價便宜等特點,適用范圍廣,具有很強的實用價值和經濟價值。
(編自《電氣技術》,原文標題為“基于AT89C52單片機的步進電機控制系統研究”,作者為何沖、王淑紅 等。)