步進電機的單片機控制設計分析
朱球輝 中山市技師學院
步進電機已經(jīng)在工業(yè)控制中取得了極為廣泛的應用,通過單片機對電機的控制可以實現(xiàn)對其轉(zhuǎn)速進行精細的調(diào)整。本文對以單片機為基礎的步進電機控制原理進行簡要的介紹,并對控制系統(tǒng)在硬件和軟件兩方面的控制方式進行設計分析。
步進電機;單片機;控制;設計分析
步進電機的轉(zhuǎn)速以及線速度和脈沖頻率呈正相關,這是由于電機的角位移和脈沖成正比。因此通過對脈沖的改變可以實現(xiàn)對電機的控制,實現(xiàn)其迅速啟動、制動以及正反轉(zhuǎn)。步進電機控制系統(tǒng)是由驅(qū)動器、控制器和步進電機三部分構成,由于驅(qū)動器的價格極為昂貴,導致其只能在工業(yè)上得到較大的發(fā)展。但是對于普通院校的實驗研究來說有著很大的制約作用。為此對以單片機為基礎的步進電機控制電路加以研究分析,以此來降低經(jīng)濟成本。
步進電機是一種將脈沖信號轉(zhuǎn)換為位移的控制元件,在正常運轉(zhuǎn)狀態(tài)下,電機的運行位移以及轉(zhuǎn)速僅由脈沖信號的數(shù)目以及頻率決定,也就是說電機收到一個脈沖便會轉(zhuǎn)動一定的角度。電機轉(zhuǎn)動的角度受到脈沖的頻率和次數(shù)的限制,因此使用單片機對其進行控制是非常適宜的。系統(tǒng)的硬件由驅(qū)動電路、負載、單片機與顯示電路等部分組成,單片機主要作用是產(chǎn)生可以驅(qū)動電機的脈沖,同時輸送到驅(qū)動電路中,電路根據(jù)信號來實現(xiàn)對電機的方向以及轉(zhuǎn)速進行控制[1]。具體要由控制程序?qū)纹瑱C的輸出信號進行控制,使步進電機的方向發(fā)生變化,對脈沖信號頻率的改變來實現(xiàn)對電機轉(zhuǎn)速的變換。步進電機與單片機接口電路如圖1所示。
2.1 主控制器
本文中所采用的主控器是AT89C2051,因其具有能耗低、體積小、價格低廉、可靠性強等優(yōu)勢。功能上也有著極為豐富的控制指令,單片機擁有維持計算機運行的全部必備元件,片外擁有眾多的可擴展引腳,極易組裝為應用系統(tǒng)??刂破魇钦麄€系統(tǒng)進行調(diào)節(jié)與監(jiān)控的重要部分,采用AT89C2051單片機進行控制是重要的關鍵點,使用單片機不但控制簡單,而且也可以簡化硬件設計。
2.2 驅(qū)動電路
步進電機要想運行需要有脈沖信號,脈沖要能夠滿足電機對功率、電壓、電流的需求,因此要用專門的設備來進行滿足,即驅(qū)動器。驅(qū)動器的性能不但與電機有關,與驅(qū)動電路的設計也有著很大的關系。驅(qū)動方式選取CPU間接驅(qū)動的方式較為安全穩(wěn)定。驅(qū)動電路在進行選擇時可以對不同類型步進電機的特點加以分析,來對電路進行確定[2]。由于本文對步進電機要求精度高,擁有較廣泛的調(diào)節(jié)能力,因此選取驅(qū)動芯片ULN2003來進行驅(qū)動,同時利用軟件進一步完成對電機啟動、正反轉(zhuǎn)、停機的要求。
2.3 按鍵設計
圖1 步進電機與單片機接口電路
設計過程采取五個獨立按鍵模式,電機的正轉(zhuǎn)、反轉(zhuǎn)與停機三個控制按鍵分別連接在單片機P1.0、P1.1、P1.2三個接口上,此外加速與減速兩個按鍵與P3.2、P3.3接口相連。用三相反應電機,采用雙三拍模式進行控制。
2.4 顯示設計
顯示屏要顯示的是6位數(shù)字,可以采取74LS164做驅(qū)動元件,通過單片機的串行口傳送數(shù)據(jù),利用74LS164實現(xiàn)數(shù)據(jù)的串并轉(zhuǎn)換,從而節(jié)省I/O接口。采用LCD1602作為本系統(tǒng)的顯示器件。
3.1 脈沖形成
要想控制步進電機的運行,單片機要求能夠輸出具有周期變化的控制脈沖信號。首先進行高電平的輸出,經(jīng)過一段時間的延時后再進行低電平的輸出,然后再進行延時,如此反復進行。對延時時間進行控制,便可以對脈沖周期進行改變,根據(jù)電機的運行頻率來確定脈沖周期。
3.2 方向控制
在實際應用控制系統(tǒng)時要根據(jù)實際需求對步進電機的方向進行控制,步進電機的正反轉(zhuǎn)方向與通電順序以及方式有著極為緊密的聯(lián)系。上文提到了本次設計采用的是三相雙三拍的工作方式。因此在正轉(zhuǎn)時通電順序是:ABBC-CA-AB,而反轉(zhuǎn)時通電順序是:AB-ACBC-AB[3]。
3.3 速度控制
電機在轉(zhuǎn)動時進行機械運動,如果轉(zhuǎn)動速度過快會導致“失步”狀況。在進行電機速度控制時,就是對脈沖頻率以及換向周期的控制,也就是升速時脈沖頻率緩慢增加,降速時脈沖頻率緩慢下降。使用軟件控制時可以選用軟件延時、定時器延時以及更改脈沖分配等方式進行控制。
3.4 控制程序
軟件上設置標志位Flag進行電機旋轉(zhuǎn)方向的判定,之后進行相應的控制脈沖數(shù)的輸出,最后對需求的脈沖信號輸出完成與否進行判斷。
通過利用單片機來對步進電機進行控制,可以解決線路復雜的現(xiàn)象。通過軟件可以很方便控制步進電機轉(zhuǎn)速、正反轉(zhuǎn)角度和轉(zhuǎn)動頻率。此外通過對中斷方式的使用,可以實現(xiàn)對步進電機運行方式進行隨時改變的功能。該設計方案有著極強的開放性,可以通過對其電路以及程序的改變來對所有的步進電機實現(xiàn)控制。
[1]李健楠,戴青燃.設計一套基于單片機的步進電機控制系統(tǒng)[J].黑龍江科技信息,2016,10(10):46-47.
[2]賀敬.基于MCGS的51系列單片機控制步進電機的設計[J].山東工業(yè)技術,2015,03(03):195.
[3]龐秀琴.基于Atmel89C52單片機4相混合式步進電機控制系統(tǒng)設計[J].山西煤炭管理干部學院學報,2014,02(02):154-156.