單片機機器人設(shè)計
輪式移動機器人是機器人研究領(lǐng)域的一項重要內(nèi)容.它集機械、電子、檢測技術(shù)與智能控制于一體。在各種移動機構(gòu)中,輪式移動機構(gòu)最為常見。輪式移動機構(gòu)之所以得到廣泛的應(yīng)用。主要是因為容易控制其移動速度和移動方向。因此.有必要研制一套完整的輪式機器人系統(tǒng)。并進行相應(yīng)的運動規(guī)劃和控制算法研究。筆者設(shè)計和開發(fā)了基于5l型單片機的自動巡線輪式機器人控制系統(tǒng)。
2 控制系統(tǒng)總體設(shè)計
機器人控制系統(tǒng)由主控制電路模塊、存儲器模塊、光電檢測模塊、電機及舵機驅(qū)動模塊等部分組成,控制系統(tǒng)的框圖如圖1所示。
3 主控制模塊設(shè)計
3.1 CPLD設(shè)計
在機器人控制系統(tǒng)中.需要控制多個電動機和行程開關(guān).還要進行光電檢測.如果所有的任務(wù)都由AT89S52型單片機來完成.CPU的負擔就會過重。影響系統(tǒng)的處理速度。因此擴展1個CPLD.型號為EPM7128。它屬于.MAX7000系列器件。包括2個通用1/0口.2個專用I/O口,專用I/O口可作為每個宏單元和輸入輸出引腳的高速控制信號(時鐘、清除和輸出使能等),電動機的。PWM信號也由其產(chǎn)生。
EPM7128的引腳排列如圖2所示。MlP—M4P引腳的輸出為PWM脈寬調(diào)制信號,M1FB—M4FB引腳為電機的方向控制信號,P00一P07接單片機的PO口,100一1015為擴展的2個通用I/O口,SIl—S17引腳為行程開關(guān)輸入信號,LI11一LI17引腳為光電探頭輸入信號。CPLD的編程用VHDL語言,產(chǎn)生1路PWM信號的部分程序源代碼如下:
單片機采用24MHz的晶體振蕩器,ALE信號的頻率fALE=f16=6MHz,最終輸出PWM信號的引腳MlP的頻率為:
調(diào)節(jié)這個信號的占空比可以使直流電動機獲得O-255級的轉(zhuǎn)速。
評論