C504單片機在步進電機控制方面的應(yīng)用
摘要:C504是德國SIEMENS公司生產(chǎn)的單片微控制器,文中介紹了C504單片機在步進電機控制方面的應(yīng)用,給出了利用C504的資源優(yōu)勢,經(jīng)過一定的擴展來對步進電機進行控制的控制系統(tǒng)結(jié)構(gòu)及方法,另外,該控制系統(tǒng)還具有人機對話功能和較高的性能價格比。
本文引用地址:http://2s4d.com/article/244611.htm關(guān)鍵詞:C504 步進電機 CCU 步距角
步進電機是一種脈沖電機,它是一種能將脈沖信號轉(zhuǎn)換為角位移的數(shù)模轉(zhuǎn)換器,可廣泛用于無需反饋控制而要求有精確位置的場合,為了改善步進電機的工作特性以及減少硬件電路的連接,近幾年來多采用單片機對其控制,但由于各類單片機的功能、容量和價格不同,因而其性能和成本也各不相同。鑒于C504單片機在電機控制方面的獨特結(jié)構(gòu)和大容量、低價格的特點,本文將介紹以C504控制芯片為核心的步進電機控制系統(tǒng),并在滿足性能要求的前提下,實現(xiàn)了人機對話,從而使整個系統(tǒng)具有較高的性能價格比。
1 步進電機 控制系統(tǒng)結(jié)構(gòu)及功能
1.1 系統(tǒng)結(jié)構(gòu)
步進電機控制系統(tǒng)的結(jié)構(gòu)框圖如圖1所示,它主要由單片機控制系統(tǒng)、光電耦合電路、驅(qū)動電路及檢測、保護電路組成。系統(tǒng)中的步進電機采用三相步進電機,它有A、B、C三個勵磁線圈,可工作于三相單三拍、雙三拍及六拍方式下。為了減小步距角,可對三相勵磁線圈采用單雙相輪流通電的方式,通電次序為A-AB-B-BC-C-CA,以構(gòu)成三相六拍分配方式,步進電機的步距角為:60/Z(度),其轉(zhuǎn)速由單片機所輸出的脈沖來控制,當控制脈沖的頻率發(fā)生變化時,轉(zhuǎn)速也發(fā)生變化。
為了能有足夠的功率驅(qū)動步進電機和具有較高的效率,作為控制信號與執(zhí)行元件之間橋梁的驅(qū)動電路,采用以大功率場效應(yīng)管作為功放管的恒流斬波驅(qū)動電路形式,可以使電機在工作時具有較大的為矩和較好的矩頻特性。該系統(tǒng)可把C504單片機CCU單元輸出的三相彼此間隔為T/3的脈沖信號進行放大以驅(qū)動電機,從而實現(xiàn)三相六拍的通電次序并能夠運行。由C504單片機組成的控制系統(tǒng)主要完成對整個系統(tǒng)的控制檢測和保護,它在輸出一定頻率的脈沖信號的同時,還能隨時接受過電流檢測電路的信號及時封鎖控制脈沖信號,從而實現(xiàn)對步進電機的保護。
1.2 鍵盤/顯示電路
為了滿足工作需要,該控制系統(tǒng)設(shè)計有鍵盤/顯示電路,它利用C504外接的可編程I/O接口芯片8279來構(gòu)成44鍵盤和四位的LED顯示器,以實現(xiàn)人機對話和對頻率及步數(shù)的顯示,從而完成對清零、復位、啟動、停止、上升、下降、頻率、步數(shù)、單步、時間、正轉(zhuǎn)、反轉(zhuǎn)、三拍/六拍等功能的設(shè)置。設(shè)計時,通過選取8279的四根SL0~3控制鍵盤的列線電四根SR0~3作為行線,8279的輸出B0~3和A0~3作為數(shù)據(jù)口,鍵盤采用逐列掃描查詢方式工作,顯示器采用軟件譯碼動態(tài)掃描顯示方式。這種設(shè)計操作方便、可靠。
1.3 保護電路及抗干擾措施
為了對場效應(yīng)管和步進電機進行保護,系統(tǒng)除了C504的內(nèi)部硬保護電路以外,還設(shè)置了過壓、過流保護電器,從而提高了系統(tǒng)的抗干擾能力;它們的工作原理為:取相應(yīng)的電壓和電流信號送到由運算放大器接成的比較器與給定值進行比較,比較結(jié)果一方面經(jīng)與門送到C504的CTRAP端,一方面送到鎖存器。若發(fā)生故障,則使CRTAP處于低電平,通過控制CCU的初始化寄存器,使控制端邏輯處于封鎖狀態(tài),以封鎖向外輸出的脈沖,并使場效應(yīng)管處于截止狀態(tài),從而完成對步進電機的保護。最后,再通過CCU的控制寄存器的狀態(tài)字使系統(tǒng)進入復位狀態(tài),并進行故障判斷和故障代碼顯示以便維修。
為了防止干擾對系統(tǒng)運行造成影響,在C504的內(nèi)部設(shè)置有一個15位可編程看門狗定時單元和RC振蕩器看門狗電路,它們可分別對軟件運行和晶振源的頻率進行監(jiān)控;若發(fā)生程序跑飛或死機,可通過15位可編程看門狗定時單元計數(shù)的溢出來使CPU自動進入復位狀態(tài)和休眠等待狀態(tài);若系統(tǒng)工作頻率不正常,也可通過RC振蕩器看門狗電路控制,也可使CPU自動進入復位狀態(tài)和休眠等待狀態(tài);RC振蕩器看門狗電路框圖如圖2所示,它的工作原理為:當系統(tǒng)工作時,CPU通過控制總線將P3.2端的命令字送到RC振蕩器和晶振源,并使它們同時運行,以向外提供各自的時鐘脈沖,然后經(jīng)頻率比較器進行比較后輸出。若晶振源的頻率大于RC振蕩器5分頻的頻率時,則頻率比較器的輸出為低電平,這時控制邏輯單元被封鎖,系統(tǒng)接受到晶振源的時鐘脈沖而正常工作;若控制邏輯頻率因其它因素小于RC振蕩器的5分頻時,頻率比較器的輸出為高電平,控制邏輯單元被開放而使CPU進入復位狀態(tài),這樣可防止數(shù)據(jù)丟失和非正常運行,從而提高了系統(tǒng)自身的抗干擾能力。
1.4 三相控制脈沖信號的產(chǎn)生
按照電機的工作需要,若完成三相/六拍的通電方式,則必須為驅(qū)動電路提供三路周期為T、脈寬為T/2或2T/3、相位彼此相差T/3的驅(qū)動信號,也就是要求單片機控制系統(tǒng)控制要能夠產(chǎn)生這樣的控制信號。具體過程為:CPU由數(shù)據(jù)總線和內(nèi)部地址總線通過暫存鎖存器向周期寄存器、控制寄存器、方式選擇寄存器、初始化寄存器等寫入命令和數(shù)據(jù),并把來自晶振兩發(fā)頻的時鐘脈沖信號送到受周期寄存器控制的預分頻單元,再把它變?yōu)橐欢ㄖ芷诘拿}沖送到被賦予定值的捕捉定時器,然后按每個狀態(tài)周期增1計數(shù)。當與賦值相等時,再按每個狀態(tài)周期減1計數(shù)或刷新重新計數(shù)以把時鐘脈沖轉(zhuǎn)化為一定周期的三角波,再送到被賦予不同比較值的三個比較器進行比較,將輸入波形調(diào)制為三路一定周期、相位彼此相差T/3的方波脈沖輸出,經(jīng)接口控制邏輯單元向外輸出三路周期為T、脈寬為T/2或2T/3、相位彼此相差T/3的驅(qū)動信號。如果改變了周期寄存器的賦值,也就改變了控制信號的周期,從而改變了步進電機的轉(zhuǎn)速。
2 系統(tǒng)軟件設(shè)計
為保證系統(tǒng)安全可靠地啟動與運行,該系統(tǒng)的軟件采用啟動與運行雙循環(huán)檢測的控制方案,其主程序流程如圖3所示。啟動前檢測循環(huán)首先完成對驅(qū)動電路電壓和電流的檢測。運行控制循環(huán)主要完成對鍵盤各鍵命令的處理,其中包括初始化程序、自診斷程序、鍵盤掃描程序、清零程序、復位及顯示程序、運行程序、停止及顯示程序、上升及下降程序、頻顯程序、步顯程序、時間顯示程序、單步運行程序、正轉(zhuǎn)及反轉(zhuǎn)選擇程序、三相/六拍程序等,并對故障實行單獨處理及顯示。
3 結(jié)論
本文介紹的步進電機控制系統(tǒng),通過合理利用C504單片機的自身功能及相應(yīng)的擴展電路,便可用很少的機時來完成對步時電機的控制,該系統(tǒng)結(jié)構(gòu)簡單,并具有故障自動保護和抗干擾保護功能,能夠完成多種功能信息顯示及人機對話等功能,經(jīng)實際使用證明,該系統(tǒng)運行可靠、性能優(yōu)良。
評論