王文明 董紹江 劉娟等
摘 要:研究機器人體系結構的目的是簡化機器人系統的設計和開發。隨著機器人控制和功能的日益復雜化,機器人體系已硬件結構的設計越來越受到重視,其中通過步進電機驅動器來控制系統行走機構是重點。所以研究步進電機的控制系統,對提高機器人控制精度和響應速度具有重要意義。
關鍵詞:STC89C52 步進電機 ULN2003驅動
中圖分類號:TM307.1 文獻標識碼:A 文章編號:1672-3791(2014)07(a)-0233-01
1 設計方案
本設計的目的是以單片機為核心設計出一個單片機控制步進電機的控制系統。本系統采用STC89C52作為控制單元,通過鍵盤實現對步進電機轉動方向及轉動速度的控制,并且將步進電機的轉動用四個LED燈指示。
2 硬件選擇
目前常用的步進電機有三類如表1所示。
通常電機的轉子為永磁體,當電流流過定子繞組時,定子繞組產生一矢量磁場。該磁場會帶動轉子旋轉一角度,使得轉子的一對磁場方向與定子的磁場方向一致。當定子的矢量磁場旋轉一個角度。轉子也隨著該磁場轉一個角度。每輸入一個電脈沖,電動機轉動一個角度前進一步。它輸出的角位移與輸入的脈沖數成正比、轉速與脈沖頻率成正比。改變繞組通電的順序,電機就會反轉。所以可用控制脈沖數量、頻率及電動機各相繞組的通電順序來控制步進電機的轉動。在本設計中采用常用的永磁式步進電機。
STC89C52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統可編程Flash存儲器。使用高密度非易失性存儲器技術制造,與工業80C51產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統可編程,亦適于常規編程器。在單芯片上,擁有靈巧的8位CPU和在系統可編程Flash,使得STC89C52為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。STC89C52具有以下標準功能:8k字節Flash,256字節RAM,32位I/O口線,看門狗定時器,2個數據指針,三個16位定時器/計數器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。在本設計采用STC89C52單片機。
ULN2003工作電壓高,工作電流大,灌電流可達500mA,并且能夠在關態時承受50V的電壓,輸出還可以在搞負載電流并行運行。在本設計中采用ULN2003作為驅動。
3 軟件設計
應用系統中的應用軟件是根據系統功能要求設計的,本系統中,軟件設計要求做到以下幾點。
(1)軟件結構清晰,簡捷,流程合理。
(2)各功能程序實現模塊化。
(3)程序存儲區,數據存儲區要合理規劃,既能節約內存容量,又使操作方便。
(4)運行狀態實現標志化管理。各個功能程序運行狀態,運行結果以及運行要求都要設置狀態標志以便查詢,程序轉移,控制都可通過狀態標志條件來控制。
4 硬件連接
連接好硬件電路,上電復位,程序開始運行。
(1)此時步進電機不轉動,LED不顯示;按下啟停鍵,步進電機開始轉動,LED數碼管顯示數值當前數值,即當前步進電機的轉速為25轉/分。
(2)此時每按下加速鍵一次,LED亮的個數值加1,步進電機轉動速度相應增加;此時每按下減速鍵一次,LED亮的個數值減1,步進電機轉動速度相應減少;此時若按下方向控制鍵,步進電機立即向相反方向轉動,轉動速度保持不變。
參考文獻
[1] 宋錦河.步進電機控制系統的快速實現[J].鄂州大學學報,2004(10):4-6.
[2] 黃堅,自動控制原理及其應用[M].北京:高等教育出版社,2004:124-126.
[3] 徐薇莉,曹柱中.控制理論與設計[M].上海:上海交通大學出版社,2003:87-88.