摘要:在科技快速發(fā)展的背景下,現(xiàn)階段應(yīng)用的步進(jìn)電機(jī)所配置的齒輪箱、直線運(yùn)動(dòng)執(zhí)行裝置等較為先進(jìn),能實(shí)現(xiàn)難度較大、復(fù)雜程度較高的線性運(yùn)動(dòng),這使步進(jìn)電機(jī)得到了廣泛應(yīng)用與快速發(fā)展。在步進(jìn)電機(jī)控制系統(tǒng)中,單片機(jī)具有至關(guān)重要的作用,作為核心部件,其性能質(zhì)量會(huì)對(duì)步進(jìn)電機(jī)的整體性能質(zhì)量造成直接影響。所以,為保證步進(jìn)電機(jī)功能正常發(fā)揮,需要合理設(shè)計(jì)單機(jī)片控制系統(tǒng)。基于此,主要探究了步進(jìn)電機(jī)的單片機(jī)控制系統(tǒng)設(shè)計(jì),以期為相關(guān)人員提供參考。
關(guān)鍵詞:步進(jìn)電機(jī)單片機(jī)控制系統(tǒng)PC上位機(jī)
中圖分類號(hào):TP368
DesignandResearchofOne-ChipComputerControlSystemforSteppingMotors
LIUZhongnanCHENGYi’anZHANGXiaoying
ShanxiJinzhongInstituteofTechnology,Jinzhong,ShanxiProvince,030600China
Abstract:Inthecontextofrapidtechnologicaldevelopment,thegearboxesandlinearmotionexecutiondevicesequippedwithsteppingmotorscurrentlyusedarerelativelyadvanced,whichcanachievedifficultandcomplexlinearmotion.Thishasledtothewidespreadapplicationandrapiddevelopmentofsteppingmotors.Inthesteppingmotorcontrolsystem,one-chipcomputerplaysacrucialrole.Asacorecomponent,itsperformancequalitywilldirectlyaffecttheoverallperformance&nbfb4070125fafd156d498bfc30129455f322c996921c9264c7f2e29749fa5d986sp;qualityofthesteppermotor.So,inordertoensurethenormalfunctioningofthesteppingmotor,itisnecessarytodesignareasonableone-chipcomputercontrolsystem.Basedonthis,thisarticlemainlyexploresthedesignofaone-chipcomputercontrolsystemforsteppingmotors,inordertoprovidereferenceforrelevantpersonnel.
KeyWords:Steppingmotor;One-chipcomputer;Controlsystem;PCuppercomputer
在當(dāng)今時(shí)代,步進(jìn)電機(jī)的應(yīng)用較為廣泛,如應(yīng)用步進(jìn)電機(jī)驅(qū)動(dòng)機(jī)器人、應(yīng)用步進(jìn)電機(jī)驅(qū)動(dòng)軟磁盤、應(yīng)用步進(jìn)電機(jī)驅(qū)動(dòng)機(jī)械加工設(shè)備等,其驅(qū)動(dòng)電路具有微型化特點(diǎn)。2000年前后,步進(jìn)電機(jī)的驅(qū)動(dòng)控制開(kāi)始以芯片為主,這使驅(qū)動(dòng)裝置體積顯著減小,整機(jī)性能質(zhì)量得到有效提高。而后隨著步進(jìn)電機(jī)的發(fā)展,又提出了較多驅(qū)動(dòng)控制方法,其中較為常用的是單片機(jī)與芯片相結(jié)合的驅(qū)動(dòng)控制方式。但在實(shí)際應(yīng)用中,這種方式的驅(qū)動(dòng)控制形式較為單一,且需要結(jié)合程序的不同做出改變。所以,為加強(qiáng)步進(jìn)電機(jī)性能質(zhì)量,相關(guān)人員應(yīng)加大對(duì)步進(jìn)電機(jī)單片機(jī)控制系統(tǒng)設(shè)計(jì)的研究力度。
1步進(jìn)電機(jī)概述
步進(jìn)電機(jī)通常由多個(gè)部件構(gòu)成,其結(jié)構(gòu)復(fù)雜程度較高,且各部件之間聯(lián)系較為緊密,其中包括軸承、轉(zhuǎn)子鐵芯、定子鐵芯、磁鋼以及繞組絕緣等。在步進(jìn)電機(jī)結(jié)構(gòu)中,繞在定子齒槽上的金屬絲被稱為繞組、線圈或相,當(dāng)其處于運(yùn)行狀態(tài)時(shí),主要由驅(qū)動(dòng)器結(jié)合邏輯電路與接收的控制脈沖信號(hào),對(duì)繞組方向進(jìn)行控制,以保證繞組良好通電。在步進(jìn)電機(jī)正向通電時(shí),其可正向旋轉(zhuǎn),而在步進(jìn)電機(jī)反向通電時(shí),其可反向旋轉(zhuǎn),且在運(yùn)行過(guò)程還可結(jié)合實(shí)際需求對(duì)運(yùn)行狀態(tài)進(jìn)行鎖定。
以兩相步進(jìn)電機(jī)為例,當(dāng)通電勵(lì)磁同步作用在兩相繞組上時(shí),其輸出軸通常會(huì)處于兩種狀態(tài):靜止和鎖定,且保持最大力矩,在任一相繞組出現(xiàn)電流改變的情況下,步進(jìn)電機(jī)會(huì)在現(xiàn)階段旋轉(zhuǎn)方向的基準(zhǔn)上旋轉(zhuǎn)一步。同時(shí),在繞組電流發(fā)生改變而產(chǎn)生變向勵(lì)磁的情況下,步進(jìn)電機(jī)會(huì)在現(xiàn)階段旋轉(zhuǎn)方向的基準(zhǔn)上持續(xù)旋轉(zhuǎn)步進(jìn),往往具有較高的運(yùn)行精度。
在步進(jìn)電機(jī)運(yùn)行過(guò)程中,為保證運(yùn)行質(zhì)量,需要有效控制位置與脈沖信號(hào)。一方面,步進(jìn)電機(jī)以基本步距角為依據(jù)進(jìn)行轉(zhuǎn)動(dòng),且這個(gè)步距角為固定不變的,通常包括1.2°和1.8°兩種形式;另一方面,在步進(jìn)電機(jī)運(yùn)行階段,脈沖信號(hào)的電壓會(huì)反復(fù)改變,需要具備精度較高的定位模塊,通過(guò)控制器精準(zhǔn)發(fā)送脈沖信號(hào)以準(zhǔn)確控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)角度與速度。此外,針對(duì)步進(jìn)電機(jī)而言,較為重要的兩點(diǎn)分別是停止位置保持與閉環(huán)伺服控制。在步進(jìn)電機(jī)繞組通電時(shí),在停止位置保持的作用下,其會(huì)保持力矩,換而言之,即使不具備機(jī)械剎車,也能在停止?fàn)顟B(tài)保持。在步進(jìn)電機(jī)上融合應(yīng)用伺服控制技術(shù),能優(yōu)化步進(jìn)電機(jī)結(jié)構(gòu),使其運(yùn)行效率顯著增強(qiáng),提高控制系統(tǒng)的智能化水平[1]。
2步進(jìn)電機(jī)的單片機(jī)控制系統(tǒng)設(shè)計(jì)分析
2.1硬件電路設(shè)計(jì)
在設(shè)計(jì)基于單片機(jī)的控制系統(tǒng)前,應(yīng)對(duì)步進(jìn)電機(jī)控制系統(tǒng)要求進(jìn)行全面分析,立足整體角度,統(tǒng)籌規(guī)劃設(shè)計(jì)方案,以保證設(shè)計(jì)的合理性、科學(xué)性。步進(jìn)電機(jī)控制系統(tǒng)通常由多個(gè)部分構(gòu)成,具體包括單片機(jī)、PC上位機(jī)以及驅(qū)動(dòng)模塊等。在步進(jìn)電機(jī)控制系統(tǒng)中,主要通過(guò)PC上位機(jī)實(shí)現(xiàn)控制功能。在設(shè)計(jì)時(shí),為有效保護(hù)單片機(jī),針對(duì)單片機(jī)與步進(jìn)電機(jī),一般需要采取過(guò)流保護(hù)措施,在兩者之間設(shè)置過(guò)流保護(hù)電路。步進(jìn)電機(jī)控制系統(tǒng)的復(fù)雜程度較高,在硬件電路設(shè)計(jì)過(guò)程應(yīng)重點(diǎn)設(shè)計(jì)單片機(jī)模塊、LED模塊、驅(qū)動(dòng)模塊3個(gè)部分。
2.1.1單片機(jī)模塊
在具體設(shè)計(jì)時(shí),應(yīng)結(jié)合控制系統(tǒng)要求選擇合適的單片機(jī),并合理確定外圍濾波、晶振等?,F(xiàn)階段,可選用MSP430FG4618單片機(jī),其配置相對(duì)較高,能有效達(dá)到步進(jìn)電機(jī)的存儲(chǔ)要求,一方面,其內(nèi)部設(shè)有116kBFlash;另一方面,其內(nèi)部設(shè)有8kBRAM。同時(shí),可選用兩種晶振,分別是頻率為8kHz晶振、頻率為32kHz晶振,而這兩種晶振的使用價(jià)值更高。在步進(jìn)電機(jī)運(yùn)行過(guò)程中,為高效、精準(zhǔn)改變其運(yùn)行狀態(tài),分別對(duì)P1端口與P2端口進(jìn)行設(shè)置,基于跳入中端服務(wù)程序,在判斷按鍵狀態(tài)的情況下,以判斷結(jié)果為依據(jù),對(duì)步進(jìn)電機(jī)運(yùn)行狀態(tài)予以調(diào)整改變。此外,在步進(jìn)電機(jī)處于運(yùn)行狀態(tài)時(shí),為有效發(fā)揮PC上位機(jī)的控制功能對(duì)步進(jìn)電機(jī)進(jìn)行控制,需要設(shè)計(jì)控制模塊,通過(guò)此模塊有效控制兩者之間的通信。
2.1.2LED模塊
人機(jī)對(duì)話功能是步進(jìn)電機(jī)控制系統(tǒng)的必備功能。為實(shí)現(xiàn)這一功能,可在具體設(shè)計(jì)時(shí)采用LED數(shù)碼管,并運(yùn)用按鈕矩陣鍵盤,支持步進(jìn)電機(jī)操作人員通過(guò)手動(dòng)方式對(duì)此功能進(jìn)行操作。當(dāng)步進(jìn)電機(jī)控制系統(tǒng)處于運(yùn)行狀態(tài)時(shí),操作人員可利用鍵盤輸入步進(jìn)電機(jī)的轉(zhuǎn)向數(shù)據(jù)、轉(zhuǎn)速數(shù)據(jù)以及啟停數(shù)據(jù)等,由LED數(shù)碼管將步進(jìn)電機(jī)運(yùn)行過(guò)程的轉(zhuǎn)向信息、轉(zhuǎn)速信息等動(dòng)態(tài)展示出來(lái)。同時(shí),在設(shè)計(jì)環(huán)節(jié),對(duì)單片機(jī)的工作量予以考慮,盡可能將其工作負(fù)荷降低,并采用集中控制方式,對(duì)鍵盤與LED數(shù)碼管進(jìn)行控制,保證前者輸入效果與后者輸出效果。此外,結(jié)合單片機(jī)控制系統(tǒng)設(shè)計(jì)需求,可在設(shè)計(jì)鍵盤輸入方式時(shí),設(shè)計(jì)防抖動(dòng)功能,以防出現(xiàn)鍵盤誤觸的現(xiàn)象[2]。
2.1.3驅(qū)動(dòng)模塊
在單片機(jī)控制系統(tǒng)硬件電路設(shè)計(jì)中,驅(qū)動(dòng)模塊設(shè)計(jì)難度較大,其原因在于驅(qū)動(dòng)模塊需要實(shí)現(xiàn)較多功能。在設(shè)計(jì)時(shí),首先,對(duì)脈沖分配器進(jìn)行合理選擇,具體可采用PMM8713脈沖分配器,其集成電路性能較強(qiáng),具有較高的驅(qū)動(dòng)能力,脈沖電流能達(dá)到20mA,不僅能在三相步進(jìn)電機(jī)中應(yīng)用,也能在四相步進(jìn)電機(jī)中應(yīng)用,可同時(shí)滿足兩種步進(jìn)電機(jī)的運(yùn)行要求。其次,對(duì)激勵(lì)方式進(jìn)行合理確定?,F(xiàn)階段,常用激勵(lì)方式較多,具體需要根據(jù)實(shí)際情況而定,無(wú)論是三相步進(jìn)電機(jī),還是四相步進(jìn)電機(jī),都可采用1相激勵(lì)方式、2相激勵(lì)方式以及1~2相激勵(lì)方式。同時(shí),在輸入方式的選擇上,可選擇單時(shí)鐘方式與雙時(shí)鐘方式,無(wú)論何種方式,都具備正反轉(zhuǎn)控制功能、輸入脈沖監(jiān)視功能等多樣化功能,能充分滿足實(shí)際需求[3]。
2.2程序軟件設(shè)計(jì)
在程序軟件設(shè)計(jì)環(huán)節(jié),主要包括兩項(xiàng)內(nèi)容:一是單片機(jī)程序軟件設(shè)計(jì);二是PC上位機(jī)模塊設(shè)計(jì)。相比之下,前者的設(shè)計(jì)難度較大,為保證單片機(jī)控制系統(tǒng)功能的有效發(fā)揮,需要對(duì)此部分內(nèi)容加大重視。
2.2.1單片機(jī)程序軟件
在單片機(jī)控制系統(tǒng)運(yùn)行中,會(huì)產(chǎn)生脈沖信號(hào),為對(duì)脈沖信號(hào)進(jìn)行有效處理,可運(yùn)用定時(shí)器以實(shí)現(xiàn)中斷反應(yīng),對(duì)步進(jìn)電機(jī)的步數(shù)、圈數(shù)予以準(zhǔn)確計(jì)算,以計(jì)算結(jié)果為依據(jù)進(jìn)行高效控制、準(zhǔn)確控制。單片機(jī)程序軟件運(yùn)行流程主要包括四個(gè)環(huán)節(jié),一是啟動(dòng)并初始化;二是按鍵中斷;三是取鍵值并顯示;四是方向鍵處理。如果在此過(guò)程中,出現(xiàn)按鍵未中斷的情況,則持續(xù)初始化,單片機(jī)向控制模塊傳遞控制指令,并通過(guò)LED數(shù)碼管,將步進(jìn)電機(jī)的轉(zhuǎn)向數(shù)據(jù)、轉(zhuǎn)速數(shù)據(jù)等實(shí)時(shí)顯示出來(lái)。在設(shè)計(jì)單片機(jī)程序軟件時(shí),需要為P1端口與P2端口設(shè)計(jì)不同的功能,以此實(shí)現(xiàn)功能的針對(duì)性。例如:可為P1端口設(shè)計(jì)關(guān)閉程序軟件的功能,通過(guò)推入堆線的方式對(duì)步進(jìn)電機(jī)進(jìn)行控制,使其停止;可為P2端口設(shè)計(jì)中斷功能,以此發(fā)揮轉(zhuǎn)向控制功能與轉(zhuǎn)速控制功能等[4]。
2.2.2PC上位機(jī)模塊
在具體設(shè)計(jì)中,應(yīng)保證PC上位機(jī)模塊具有良好控制功能,能實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)運(yùn)行情況的有效控制。具體可采用MSP430單片機(jī),其內(nèi)部設(shè)有USART模塊,發(fā)揮此模塊的作用,能與PC上位機(jī)建立良好通信關(guān)系,并通過(guò)PC上位機(jī)串口,向單片機(jī)傳送控制指令,以此實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。在控制指令被單片機(jī)接收后,可在預(yù)設(shè)模塊臨時(shí)存放控制指令,并針對(duì)控制指令與Flash的中斷程序入口地址進(jìn)行對(duì)比,如果得到一致結(jié)果,則中斷,進(jìn)而控制步進(jìn)電機(jī)。但在設(shè)計(jì)過(guò)程中,需要注意的是,應(yīng)采用頻率為8kHz的晶振啟動(dòng)PC上位機(jī),并結(jié)合實(shí)際需求對(duì)波特率進(jìn)行合理設(shè)置。在設(shè)計(jì)完成后,應(yīng)對(duì)單片機(jī)控制系統(tǒng)功能予以檢測(cè),例如:對(duì)步進(jìn)電機(jī)輸出轉(zhuǎn)矩進(jìn)行測(cè)算,明確靜轉(zhuǎn)矩最大值,并通過(guò)生成曲線圖的形式,直觀呈現(xiàn)靜轉(zhuǎn)矩最大值與電流的相關(guān)性,以此對(duì)單片機(jī)控制系統(tǒng)設(shè)計(jì)的可行性、科學(xué)性進(jìn)行綜合評(píng)估。
2.2.3STC89C52單片機(jī)控制系統(tǒng)軟件設(shè)計(jì)
以STC89C52單片機(jī)為例,在其程序軟件設(shè)計(jì)上,首先,需要在步進(jìn)電機(jī)通電后復(fù)位,并初始化處理各項(xiàng)參數(shù);其次,需要決定是否向程序軟件傳送數(shù)據(jù),在決定向程序軟件傳送數(shù)據(jù)的情況下,驅(qū)動(dòng)子程序軟件;在無(wú)須向程序軟件傳送數(shù)據(jù)的情況下,保證程序處在初始態(tài)勢(shì)。在設(shè)計(jì)主程序時(shí),需要按照以下流程進(jìn)行:一是開(kāi)始,初始化處理程序軟件;二是確定是否進(jìn)行數(shù)據(jù)傳送;三是驅(qū)動(dòng)子程序;四是結(jié)束[5]。
步進(jìn)電機(jī)的單片機(jī)控制系統(tǒng)程序軟件需要具備三項(xiàng)功能。首先,位置控制功能。為實(shí)現(xiàn)位置的精確轉(zhuǎn)換,需要對(duì)步進(jìn)電機(jī)運(yùn)行距離與絕對(duì)位置兩項(xiàng)參數(shù)進(jìn)行控制。其次,轉(zhuǎn)速控制功能。通常情況下,可運(yùn)用3種方法來(lái)控制步進(jìn)電機(jī)的速度,一是軟件延遲法;二是定時(shí)器控制法,發(fā)揮定時(shí)器作用,控制脈沖周期;三是延時(shí)法,延時(shí)處理子程序,以此對(duì)步進(jìn)電機(jī)進(jìn)行控制。相比之下,定時(shí)器控制法更為有效,其無(wú)須過(guò)多CPU,且不影響步進(jìn)電機(jī)運(yùn)行,在定時(shí)器處于運(yùn)行狀態(tài)時(shí),能在發(fā)生故障問(wèn)題的瞬間實(shí)現(xiàn)相位的智能化中斷,以此控制步進(jìn)電機(jī)轉(zhuǎn)速,這種方式可起到良好的控制效果[6]。最后,加速、減速控制功能。通過(guò)分析步進(jìn)電機(jī)運(yùn)行狀態(tài)下的運(yùn)行頻率能發(fā)現(xiàn),無(wú)論是處于運(yùn)行狀態(tài),還是處于停機(jī)狀態(tài),對(duì)頻率都具有一定的要求。在步進(jìn)電機(jī)運(yùn)行過(guò)程中,其轉(zhuǎn)速需要低于系統(tǒng)轉(zhuǎn)速,以此保證穩(wěn)定運(yùn)行并在終點(diǎn)停止。一般而言,步進(jìn)電機(jī)的啟動(dòng)頻率相對(duì)較低,需要單片機(jī)控制系統(tǒng)發(fā)揮作用對(duì)步進(jìn)電機(jī)的加速、減速進(jìn)行控制。所以在軟件設(shè)計(jì)階段,應(yīng)合理編程,記錄、存儲(chǔ)步進(jìn)電機(jī)每一步的速度,生成加速曲線、減速曲線,進(jìn)而以實(shí)際速度要求為依據(jù)進(jìn)行計(jì)算,對(duì)步進(jìn)電機(jī)予以控制[7]。
3結(jié)語(yǔ)
具體而言,為保證步進(jìn)電機(jī)功能的正常發(fā)揮,相關(guān)人員應(yīng)在明確步進(jìn)電機(jī)結(jié)構(gòu)與工作原理的基礎(chǔ)上,對(duì)單片機(jī)控制系統(tǒng)進(jìn)行合理設(shè)計(jì):首先,合理設(shè)計(jì)系統(tǒng)硬件電路;其次,合理設(shè)計(jì)系統(tǒng)程序軟件;最后,合理設(shè)計(jì)系統(tǒng)電源電路?,F(xiàn)階段,針對(duì)單片機(jī)控制系統(tǒng)的研究逐漸增多,為進(jìn)一步擴(kuò)大步進(jìn)電機(jī)應(yīng)用范圍,還應(yīng)持續(xù)深入研究,對(duì)單片機(jī)控制系統(tǒng)的設(shè)計(jì)要求進(jìn)行全面掌握,以使步進(jìn)電機(jī)總體性能質(zhì)量提升。
參考文獻(xiàn)
[1] 梁曉宇.步進(jìn)電動(dòng)機(jī)步距角誤差測(cè)試系統(tǒng)解決方案實(shí)現(xiàn)[J].計(jì)量與測(cè)試技術(shù),2023,50(9):49-51.
[2] 李瑾,楊昌永.基于51單片機(jī)的步進(jìn)電機(jī)調(diào)速控制風(fēng)扇系統(tǒng)設(shè)計(jì)[J].機(jī)械工程與自動(dòng)化,2023(2):173-175,178.
[3] 譚人銘,張仁杰,江濤.基于STM32的步進(jìn)電機(jī)位置閉環(huán)控制系統(tǒng)設(shè)計(jì)[J].黑龍江工業(yè)學(xué)院學(xué)報(bào)(綜合版),2023,23(1):58-62.
[4] 孟寶星,王成勤.基于三角函數(shù)擬合的改進(jìn)型S型加減速算法設(shè)計(jì)[J].裝備制造技術(shù),2023(8):21-27.
[5] 王磊.基于速度給定曲線的步進(jìn)電機(jī)控制方法的研究[D].內(nèi)蒙古科技大學(xué),2021.
[6] 金波,楊俊,唐宇翔.基于DSP的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)研究[J].通信電源技術(shù),2022,39(5):21-23.
[7] 孟婥孫,志軍,杜誠(chéng)杰,等.基于改進(jìn)自適應(yīng)遺傳算法的小徑短繩自動(dòng)打捆機(jī)步進(jìn)電機(jī)PID控制[J].東華大學(xué)學(xué)報(bào)(自然科學(xué)版),2024(1):63-69.