《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于單片機和CPLD的自動巡線輪式機器人控制系統(tǒng)
基于單片機和CPLD的自動巡線輪式機器人控制系統(tǒng)
摘要: 設(shè)計了一種自動巡線輪式行走機器人控制系統(tǒng),采用AT89S52型單片機作為主控CPU,,外加一個復雜可鳊程邏輯器件(CPID)協(xié)助CPU處理數(shù)據(jù),,擴展了程序參數(shù)存儲器,能夠進行檢測引導線和直流電機,、舵機的PWM控制,。
關(guān)鍵詞: avr AT89S52 機器人 CPLD MAX7000系
Abstract:
Key words :

       1 引言

      
輪式移動機器人是機器人研究領(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所示,。

住控制系統(tǒng)的結(jié)構(gòu)框圖


       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信號的部分程序源代碼如下:

   

基于單片機的自動巡線輪式機器人控制系統(tǒng)設(shè)計圖示

 

CPLD的封裝及引腳排列


       單片機采用24MHz的晶體振蕩器,,ALE信號的頻率fALE=f16=6MHz,最終輸出PWM信號的引腳MlP的頻率為:

             基于單片機的自動巡線輪式機器人控制系統(tǒng)設(shè)計圖示

調(diào)節(jié)這個信號的占空比可以使直流電動機獲得O-255級的轉(zhuǎn)速,。
       3.2  機器人運行參數(shù)存儲器的擴展   

       機器人運行路徑和動作可以根據(jù)比賽情況的不同而發(fā)生變化,,這樣,每改變1次運行參數(shù)就必須對單片機的Flash進行1次擦寫,。為了解決這一問題.擴展了程序參數(shù)存儲器,,用來存放機器人的運行路徑和動作參數(shù).擴展電路如圖3所示。

存儲器擴展電路


       其中IC1為24LC08B,是I2E總線的串行E2PROM存儲器,,最多能夠存儲lK字節(jié)的數(shù)據(jù),。IC2為MAX3232型電平轉(zhuǎn)換器,其內(nèi)部有1個電源電壓變換器,,可以將計算機的電平轉(zhuǎn)換為標準TTL電平,,實現(xiàn)計算機與單片機之間通過串行口傳輸數(shù)據(jù),使單片機完成對24/LC08B的數(shù)據(jù)存儲操作,。單片機運行時,,直接從24LC08中讀取機器人的運行參數(shù),控制機器人運行,。

       4 光電檢測模塊設(shè)計

       4.1 光電檢測過程

      
設(shè)計光電檢測模塊是為了讓機器人能夠檢測地面上的白色引導線,。光電檢測電路主要包括發(fā)射部分和接收部分,其原理如圖4所示,。

光電檢測過程

       發(fā)射部分的波形調(diào)制采用了頻率調(diào)制方法,。由于發(fā)光二極管的響應(yīng)速度快,其工作頻率可達幾MHz或十幾MHz,,而檢測系統(tǒng)的調(diào)制頻率在幾十至幾百kHz的范圍內(nèi),,能夠滿足要求。光源驅(qū)動主要負責把調(diào)制波形放大到足夠的功率去驅(qū)動光源發(fā)光,。光源采用紅外發(fā)光二極管,,工作頻率較高,適合波形為方波的調(diào)制光的發(fā)射,。   

       接收部分采用光敏二極管接收調(diào)制光線,,將光信號轉(zhuǎn)變?yōu)殡娦盘枴_@種電信號通常較微弱,,需進行濾波和放大后才能進行處理,。調(diào)制信號的放大采用交流放大的形式,可使調(diào)制光信號與背景光信號分離,,為信號處理提供方便,。調(diào)制信號處理部分對放大后的信號進行識別,判斷被檢測對象的特性,。因此,,此模塊的本質(zhì)是將“交流”的、有用的調(diào)制光信號從“直流”的,、無用的背景光信號中分離出來,,從而達到抗干擾的目的。

       4.2  光電探頭   

       光電探頭安裝在機器人底盤前部,,共設(shè)置了5個檢測點,。從理論上講,檢測點越多、越密,,識別的準確性與可靠性就越高,,但是硬件的開銷與軟件的復雜程度也相應(yīng)的增加。采用該巡線系統(tǒng)保證了檢測的精確度

 

,,節(jié)約了硬件的開銷,。發(fā)光二極管發(fā)出的調(diào)制光經(jīng)地面反射到光敏二極管。光敏二極管產(chǎn)生的光電流隨反射光的強弱而線性變化,。把這種變化檢測出來,,就可以判斷某一個檢測點是否在白色引導線的上方,從而判斷機器人和白色引導線的相對位置,。

       5  電機驅(qū)動模塊

       機器人的驅(qū)動件主要是電機和舵機,,都可以采用PWM進行調(diào)速與控制。根據(jù)脈沖編碼器的反饋信號,,對機器人的運動狀態(tài)進行實時控制,。直流伺服電機的控制原理如圖5所示。調(diào)節(jié):PWM的信號就能夠快速調(diào)節(jié)舵機的轉(zhuǎn)角,,從而實現(xiàn)機器人的方向控制,。

 

直流伺服器的控制原理


       6  結(jié)束語

      
基于5l型單片機的自動巡線輪式機器人控制系統(tǒng)運行平穩(wěn)可靠,抗干擾能力強,,不僅滿足了機器人大賽的設(shè)計要求,,同時也為智能機器人搭建了良好的控制平臺。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。