鹽城工業(yè)職業(yè)技術(shù)學(xué)院機電工程學(xué)院 王麗麗
基于嵌入式系統(tǒng)的電機調(diào)速控制系統(tǒng)設(shè)計
鹽城工業(yè)職業(yè)技術(shù)學(xué)院機電工程學(xué)院 王麗麗
本系統(tǒng)基于 ARM2410-S 嵌入式系統(tǒng),控制直流電機與步進電機調(diào)速,通過鍵盤作為控制輸入信號端,通過鍵盤上輸入命令,來控制直流電機和步進電機的轉(zhuǎn)向、轉(zhuǎn)速,軟件的開發(fā)平臺采用的是 RedHatLinux9.0。系統(tǒng)控制程序分為主程序、直流電機控制程序、步進電機控制程序以及鍵盤控制程序等。通過調(diào)試,嵌入式控制系統(tǒng)較好地實現(xiàn)了直流電機與步進電機轉(zhuǎn)向、轉(zhuǎn)速控制。
嵌入式控制系統(tǒng);直流電機;步進電機;調(diào)速控制
嵌入式系統(tǒng)是基于計算機技術(shù),以應(yīng)用為中心,其軟硬件可配置,對功能、可靠性、成本、體積、功耗有嚴格約束的一種專用系統(tǒng)。直流電機是由直流電源驅(qū)動,具有很好的回轉(zhuǎn)特性和輸出效率,和相同功率的一般交流電機相比,具有更強的扭矩和過載能力。步進電機是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步進電機只有周期性的誤差而無累積誤差等特點,使得其在速度、位置等控制領(lǐng)域的應(yīng)用十分廣泛和簡單。
本控制系統(tǒng)為直流電機和步進電機的調(diào)速系統(tǒng),基于ARM2410-S嵌入式系統(tǒng)平臺,將鍵盤作為控制輸入端,從鍵盤上輸入命令來控制直流電機和步進電機的轉(zhuǎn)向、轉(zhuǎn)速。其中,軟件的開發(fā)平臺選用的是 RedHatLinux9.0。本程序設(shè)計主要分為直流電機控制和步進電機控制。系統(tǒng)整體設(shè)計流程圖如圖1所示。
圖1 系統(tǒng)整體設(shè)計流程圖
3.1 主程序設(shè)計
通過主程序的編寫控制整個系統(tǒng)的流程:進入系統(tǒng)后,軟件首先進行鍵盤初始化,打開鍵盤的端口,并在PC機上提示要輸入的控制量來選擇直流電機控制或步進電機控制。此程序中設(shè)定選擇控制量 1為直流電機控制,選擇控制量2為步進電機控制。
若選擇直流電機控制,則通過提示輸入控制命令,輸入控制電機的轉(zhuǎn)速,輸入完成后,再根據(jù)提示輸入控制命令,實現(xiàn)電機正轉(zhuǎn)或是反轉(zhuǎn),此程序中設(shè)定選擇控制量 1為電機正轉(zhuǎn),選擇控制量 2為電機反轉(zhuǎn)。功能實現(xiàn)之后跳出程序,關(guān)閉鍵盤。
圖2 主函數(shù)流程圖
若選擇步進電機控制,同直流電機控制一樣,通過提示輸入控制命令,輸入控制電機的轉(zhuǎn)動角度,輸入完之后,再根據(jù)提示輸入控制命令,實現(xiàn)電機正轉(zhuǎn)或是反轉(zhuǎn),此程序中設(shè)定選擇控制量1為電機正轉(zhuǎn),選擇控制量2為電機反轉(zhuǎn)。功能實現(xiàn)之后跳出程序,關(guān)閉鍵盤。主函數(shù)流程圖如圖2所示。
3.2 鍵盤控制程序設(shè)計
鍵盤在本控制系統(tǒng)中起到了控制命令輸入的作用,該鍵盤是由鍵盤芯片 ZLG7289 控制的,鍵盤芯片返回的字符需要經(jīng)過簡單的處理才能變成我們想要的鍵值。鍵盤程序流程如圖3所示。
圖3 鍵盤程序流程圖
3.3 直流電機控制程序設(shè)計
嵌入式系統(tǒng)中,直流電機擁有自身的驅(qū)動函數(shù) dc-motor.o,在編寫時為在主函數(shù)中調(diào)用方便,簡化為 一 個 直 流 電 機 的 打 開 函 數(shù) int open_dc()和一個入口參數(shù)的控制函數(shù) intdc_motor(intsetpwm),入口參數(shù)為一個帶正負號的電機轉(zhuǎn)速控制量。
3.4 步進電機控制程序設(shè)計
嵌入式系統(tǒng)中,步進電機同直流電機一樣擁有自身的驅(qū)動函數(shù)step-motor.o,在編寫時為在主函數(shù)中調(diào)用方便,簡化為一個直流電機的打開函數(shù) intopen_dc()和一個入口 參 數(shù) 的 控 制 函 數(shù) intstep_motor (intwz),入口參數(shù)為一個帶正負號的電機轉(zhuǎn)速控制量。
本系統(tǒng)采用嵌入式控制系統(tǒng),基于 ARM2410-S 嵌入式平臺,運用鍵盤作為控制命令輸入端,鍵盤是由鍵盤芯片 ZLG7289 控制,軟件的 開 發(fā) 平 臺 采 用 的 是 RedHat Linux9.0,通過調(diào)試,系統(tǒng)較好地實現(xiàn)了對直流電機與步進電機的轉(zhuǎn)向、轉(zhuǎn)速控制。
[1]王寧.基于嵌入式系統(tǒng)的開放式教育機器人控制器[D].鄭州大學(xué)碩士論文,2007.5.
[2]郭天祥.新概念 51 單片機 C語言教程[M].北京:電子工業(yè)出版社,2008.
[3]王暉.基于 MCS-51 單片機的設(shè)計調(diào)試與原理[J].現(xiàn)代電子技術(shù),2006,29(8):113-114.