自主式移動機器人系統(tǒng)是指根據(jù)指令任務及環(huán)境信息進行自主路徑規(guī)劃,并且在任務執(zhí)行過程中不斷采集局部環(huán)境信息,做出決策,從而實現(xiàn)安全行駛并準確到達目標地點的智能系統(tǒng)。本文以LPC2119為控制核心,介紹了一種輪式移動機器人的設計方案。該機器人系統(tǒng)應用超聲傳感器、光敏傳感器、碰撞傳感器采集外部環(huán)境信息,采用PTR2000實現(xiàn)移動機器人與計算機通信,從而實現(xiàn)現(xiàn)場信息的反饋和計算機控制命令的發(fā)送。
LPC2119是Philips公司推出的支持實時仿真和跟蹤的ARM7TDMI-S微處理器,嵌入128KB高速Flash存儲器。它采用3級流水線技術(shù),取指、譯碼和執(zhí)行同時進行,能夠并行處理指令,提高CPU運行速度。由于其具有非常小的尺寸和極低的功耗,非常適合小型化應用。片內(nèi)多達64KB的SRAM,具有較大的緩沖區(qū)規(guī)模和強大的處理能力。LPC2119內(nèi)部集成2個CAN控制器、2個32位定時計數(shù)器和4個ADC單元電路。
1硬件結(jié)構(gòu)
控制器LPC2119主要用來產(chǎn)生2路PWM信號以及處理傳感器信息,實現(xiàn)對小車的智能控制。本系統(tǒng)采用IR2110作為H橋電路驅(qū)動芯片,用4片STP60NE06搭接H橋電路驅(qū)動直流電機,并利用光電編碼器檢測電機轉(zhuǎn)速;采用16路超聲傳感器系統(tǒng)作為系統(tǒng)的避碰和簡單測距;采用光敏傳感器實現(xiàn)機器人對光源的感知和尋找;采用碰撞傳感器感知碰撞,使機器人能做出急時處理;采用無線通信芯片PTR2000實現(xiàn)機器人與計算機的無線通信。
1.1電機的PWM控制
IR2110是美國IR(InternationalRectifier)公司推出的一種雙通道、高壓、高速的功率器件柵極驅(qū)動的單片式集成驅(qū)動器。它把驅(qū)動高壓側(cè)和低壓側(cè)MOSFET或IGBT所需的絕大部分功能集成在一個高性能的封裝內(nèi),外接很少的分立元件即能提供極快的開關速度和極低的功耗。其特點在于:將輸入邏輯信號轉(zhuǎn)換成同相位低阻抗輸出驅(qū)動信號,可驅(qū)動同一橋臂上的2路輸出,驅(qū)動能力強,響應速度快;工作電壓較高,可達600V;內(nèi)設欠壓封鎖;成本低、易于調(diào)試;電路芯片體積小,為DIP14封裝。高壓側(cè)驅(qū)動采用外部自舉電容上電,與其他IC驅(qū)動電路相比,在設計上大大減少了驅(qū)動變壓器和電容的數(shù)目,降低了產(chǎn)品成本,減小了體積,提高了系統(tǒng)的可靠性。這種適用于驅(qū)動功率MOSFET和IGBT的自舉式集成電路,在電源變換、電機調(diào)速等功率驅(qū)動領域中獲得了廣泛的應用。
LPC2119單片機的PWM功能建立在標準定時器上,它具有32位的定時控制器及預分頻控制器、7個匹配控制器,可實現(xiàn)6個單邊PWM或3個雙邊PWM輸出,也可以使用這兩種類型的混合輸出。此系統(tǒng)使用端口PWM0和PWM1輸出兩路PWM信號,分別控制移動機器人的2個驅(qū)動電機。PWM信號經(jīng)過光電耦合器形成兩路相位相差180°的信號加到IR2110的HIN和LIN引腳上,實現(xiàn)對同一橋臂上的兩個MOSFET開關的控制,原理如圖1所示。
HIN為高電平期間,Q1、Q4導通,在直流電機上加正向工作電壓;HIN為低電平期間,LIN端輸入高電平,Q2、Q3導通,在直流電機上加反向工作電壓。因此電樞上的工作電壓是雙極性矩形脈沖波形。由于機械慣性的作用,矩形脈沖電壓的平均值決定電動機的轉(zhuǎn)向和轉(zhuǎn)速。
1.2超聲傳感器系統(tǒng)
為減輕控制器LPC2119的負擔,超聲傳感器系統(tǒng)由Atmel公司的AT89C1051單片機控制。1051單片機是含有一個1KB可編程E2PROM的高性能微控制器,它與工業(yè)標準MCS-51的指令和引腳兼容。它為很多嵌入式控制應用提供了一個高度靈活、有效的解決方案。AT89C1051有以下特點:1KB的E2PROM、128B的RAM、15根I/O線、2個16位定時/計數(shù)器、5個二級向量中斷結(jié)構(gòu)、1個全雙向的串行口且內(nèi)含精密模擬比較器和片內(nèi)振蕩器,具有4.25~5.5V的電壓工作范圍及24MHz工作頻率,同時還具有加密陣列的二級程序存儲器加鎖、掉電和時鐘電路等。此外,AT89C1051還支持兩種軟件設置的電源節(jié)電方式。空閑時,CPU停止,而RAM、定時/計數(shù)器、串行口和中斷系統(tǒng)繼續(xù)工作。掉電時,保存RAM的內(nèi)容,但振蕩器停振以禁止芯片其他功能,直到下一次硬件復位。
1051控制每60ms發(fā)送一路超聲波,檢測回波時間,并完成距離的計算。這樣16路超聲波循環(huán)檢測一次約為1s,在常溫時超聲波的速度約為344m/s,可以計算出障礙物的距離,最后將超聲波傳感器編號及距離信息傳送給LPC2119。
超聲波發(fā)射及接收子系統(tǒng)如圖2所示。1051利用P1.0引腳向外發(fā)送40kHz的脈沖信號,此信號作為4-16譯碼器74HC154的使能信號,引腳P1.1~P1.4作為譯碼信號,分別對應編號0~15的超聲波傳感器。此信號經(jīng)過9013放大后推動換能器產(chǎn)生40kHz的超聲波信號。
LM567是一片鎖相環(huán)電路,其5、6腳外接的電阻和電容決定了內(nèi)部壓控振蕩器的中心頻率f2,f2≈1/1.1RC。其1、2腳分別通過電容器接地,形成輸出濾波網(wǎng)絡和環(huán)路單級低通濾波網(wǎng)絡。2腳所接電容決定鎖相環(huán)路的捕捉帶寬:電容值越大,環(huán)路帶寬越窄。LM567的工作電壓為4.75~9V,工作頻率從直流到500kHz,靜態(tài)工作電流約8mA。
超聲子系統(tǒng)基本功能為:當接收器接收到超聲波回波時,產(chǎn)生交流小信號,此信號經(jīng)過LM358組成2級放大電路后,幅值達25mV以上。當LM567的3腳輸入幅度≥25mV、頻率為40kHz的信號時,8腳由高電平變成低電平,此低電平信號被連接到1051的INT0引腳產(chǎn)生中斷信號。1051在超聲波發(fā)送時啟動定時器,在INT0中斷時關閉定時器,由此可以得到超聲波的傳播時間,并計算出障礙物距離。
應用本系統(tǒng)對測量范圍為30~400cm的平面物體做了多次測量發(fā)現(xiàn),其最大誤差為0.5cm,且重復性好。如果加大超聲波發(fā)射的驅(qū)動電流,接收部分的放大電路再加一級,可以使檢測距離增大到600cm。
1.3無線通信子系統(tǒng)
此系統(tǒng)選用微小型、低功耗、19.2kbps的無線收發(fā)MODEM芯片PTR2000實現(xiàn)機器人與計算機的無線通信。該芯片的工作頻率為國際通用的數(shù)傳頻段433MHz,采用FSK調(diào)制,可連接到計算機的RS232接口。系統(tǒng)采用的通信協(xié)議如下:
?。坶_始字符][數(shù)據(jù)1][數(shù)據(jù)2]……[校驗和][結(jié)束字符]
將PTR2000的DO、DIN引腳分別與LPC2119的TXD0(13引腳)和RXD0(14引腳)相連,作為串行通信的通道。CS為PTR2000模塊的頻率選擇信號;PWR為模塊節(jié)能引腳,正常工作為高電平。TXEN是模塊發(fā)射接收控制,由LPC2119的I/O口控制。PTR2000是收發(fā)一體的集成芯片,采用3.3V供電,可以與LPC2119無縫連接。PTR2000作為發(fā)射端與PC機相連時,需要通過一個電平轉(zhuǎn)換器(本文為MAX3232)轉(zhuǎn)換成RS-232電平。PLC2119可以通過把輸出口置1或清0將無線收發(fā)模塊PTR2000設置為發(fā)送或接收狀態(tài);可通過VB的MSComm控件的RTSEnable屬性實現(xiàn)對計算機串口的控制。
1.4光敏傳感器子系統(tǒng)
機器人使用的光敏傳感器為硫化鎘光電管(CDS)。硫化鎘光電管的電阻值隨著照射的表面光的多少而變化,光線越強,電阻值越小。硫化鎘光電管通常也稱為光敏電阻。CDS的電阻值對較少的光線就能產(chǎn)生較大的變化,是機器人系統(tǒng)較為常用的一種光敏傳感器。在機器人車體上平均分布8個同樣的光敏傳感器,感知機器人周圍的光強變化。通過采集各傳感器的輸出電壓,由軟件算法確定機器人的路徑,使機器人總是朝光線更強的方向行走,實現(xiàn)對光源的尋找。
將一個精密電阻與CDS器件串聯(lián),該電阻起分壓作用,將CDS器件的電阻值轉(zhuǎn)換成應對模/數(shù)轉(zhuǎn)換器件(ADC)適當?shù)碾妷褐?。CDS器件的分壓輸出給ADC,隨后電壓值轉(zhuǎn)換為數(shù)字值。當更多的光線照在CDS器件上時,其電阻和ADC上輸出的電壓值都會減小。一般取這個精密電阻的阻值與CDS器件的最大電阻值相等。
2軟件編程
因任務不同,系統(tǒng)的軟件設計有所不同。本移動機器人系統(tǒng)的任務是在已知大小且光線較暗的封閉環(huán)境中自主尋找光源。
系統(tǒng)軟件在啟動后先進行系統(tǒng)的自檢和初始化,然后進行路徑的規(guī)劃。先橫向遍歷整個環(huán)境,如果發(fā)現(xiàn)光源,機器人停止運動,等待命令;如果沒有找到光源,再縱向遍歷整個環(huán)境,如果發(fā)現(xiàn)光源,機器人停止運動;如果還是沒有找到,就顯示出錯信息。當超聲波子系統(tǒng)發(fā)現(xiàn)前方有障礙物或機器人與障礙物發(fā)生碰撞時,將產(chǎn)生外部中斷,終止程序的運行,控制器LPC2119將收到障礙物距離或碰撞信息,并由此重新規(guī)劃路徑,由此實現(xiàn)機器人的自主運行。
本設計是一個基于ARM7微處理器的車載嵌入式系統(tǒng),不僅滿足了移動機器人控制系統(tǒng)的要求而且為機器人的轉(zhuǎn)型應用提供了良好的技術(shù)支持。在此基礎上可以加入各種先進的控制算法,實現(xiàn)移動機器人的智能化。
評論
查看更多