《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應用 > 基于紅外技術(shù)的AGV控制
基于紅外技術(shù)的AGV控制
來源:微型機與應用2010年第17期
李 亮,詹躍東
(昆明理工大學 信息工程及自動化學院,云南 昆明 650051)
摘要: 提出一種應用發(fā)射紅外線的電視機遙控器來控制小車運行方向和速度的方法,,并設(shè)計了AGV系統(tǒng)的硬件電路和軟件程序。實驗表明,,在Windows環(huán)境下運行,通過C語言編程器AVR-GCC和其他的開放源工具,,AGV能夠很好地實現(xiàn)轉(zhuǎn)向和避障控制,。
關(guān)鍵詞: avr RC5代碼 AVR-GCC
Abstract:
Key words :

摘  要: 提出一種應用發(fā)射紅外線的電視機遙控器來控制小車運行方向和速度的方法,并設(shè)計了AGV系統(tǒng)的硬件電路和軟件程序,。實驗表明,,在Windows環(huán)境下運行,,通過C語言編程器AVR-GCC和其他的開放源工具,,AGV能夠很好地實現(xiàn)轉(zhuǎn)向和避障控制。
關(guān)鍵詞: RC5代碼,;AVR-GCC

    無線遙控是指利用無線電波,、紅外線、超聲波等作為信息傳輸?shù)妮d體,,在空間進行信息傳輸,,實現(xiàn)對目標的控制。由于紅外線的波長小于其他無線電波的波長,,因此紅外線遙控不會影響到其他電器設(shè)備,。此外,紅外線為不可見光,,對環(huán)境影響較小且具有很強的隱蔽性和保密性,,其遙控器結(jié)構(gòu)簡單、成本低廉,、抗干擾能力強,、工作性能可靠,。
    紅外遙控的小車(AGV)的技術(shù)要求:
    (1)使用遙控器控制小車所產(chǎn)生的紅外信號對周圍其他的電子電器設(shè)備不產(chǎn)生干擾,具有較好的電磁兼容性,。
    (2)在以小車為圓心,、半徑為2~4 m的范圍內(nèi),遙控器輸出命令(依靠光線條件,、障礙物,、天花板表面和安裝在設(shè)備頂端的擴展板)都會被小車檢測到,并且按規(guī)定執(zhí)行,,具有很強的信號接收能力,。
    (3)小車可根據(jù)控制器輸出命令進行各種運動,如:勻速向前向后,,向前左轉(zhuǎn)或右轉(zhuǎn),,向后左轉(zhuǎn)或右轉(zhuǎn),加速度運動,。
    (4)為保護設(shè)備安全,,通過中斷設(shè)置小車的最大速度和最大加速度,一旦超過最大速度和加速度的閾值,,小車自動停止,。
    (5)從軟件的平臺上,對于輸入程序,,需要Java 6的安裝環(huán)境,;對于Atmel單片機,WinAVR是一套可執(zhí)行的,、開放源軟件開發(fā)工具,,它允許在Windows環(huán)境下運行C語言編程器(AVR-GCC)和其他的開放源工具[1]。
1 基本原理
    遙控器選用的是普通的電視機或音響的遙控器,,其特點是價格低廉,,絕大多數(shù)都可以通過RC5進行代碼編程。首先要閱讀針對設(shè)置使用RC5代碼遙控的指南,。如果RC5代碼不在代碼表上,,可以測試一些其他的不同的廠家產(chǎn)品。其工作原理圖如圖1所示,。

    用紅外接口來傳輸IR信號,。在小車面板上安裝兩個傳輸二極管指向上面的天花板,從天花板和其他物體或視線范圍內(nèi)反射的光線進行通信,。傳送范圍限制在距離為2~4 m的室內(nèi)(依靠光線條件,、障礙物、天花板表面和安裝在設(shè)備頂端的擴展板)??梢酝ㄟ^添加更多的IR LED來擴展通信范圍,,例如通過帶有巨大電容器和一個小的串聯(lián)電阻的MOSFET來控制。同步發(fā)生的操作被task_ACS()函數(shù)所控制,,這個函數(shù)頻繁地從主函數(shù)中被調(diào)用,,目的是用來處理IR信號的接收(額外管理紅外通信的傳輸)。
2 硬件組成
2.1 硬件結(jié)構(gòu)原理

    AGV的硬件組成主要由ATMEGA32的電路板,、紅外線接收器,、遙控器以及電源等構(gòu)成,ATMEGA32電路板集成有A/D,、D/A轉(zhuǎn)換設(shè)備,,可將采集進來的模擬量轉(zhuǎn)化為數(shù)字量,通過用戶編寫的程序進行運算,。其硬件電路結(jié)構(gòu)原理圖如圖2所示,。

2.2 信號接收裝置
    信號接收裝置主要由二極管、TSOP34836芯片以及相應的電路構(gòu)成,,如圖3所示,。

3 軟件設(shè)計
    紅外線遙控器通過RC5代碼傳輸數(shù)據(jù),而RC5數(shù)據(jù)包包含了設(shè)備地址,、鍵盤編碼器和一個觸發(fā)器,。5位的設(shè)備地址告訴哪個設(shè)備(如電視機、錄像機,、或高保真音響等)被遙控器控制,。而對于本文的使用,設(shè)備地址也可以用來滿足一些單獨設(shè)備的使用,。6位的編碼器附和按鍵遙控允許傳輸其他的數(shù)據(jù),,但對于每個傳輸僅僅提供6位編碼器附和按鍵遙控。
    在AVR-GCC環(huán)境下,,RC5數(shù)據(jù)包可以通過使用void IRCOMM_sendRC5(unit8_t adr,,unit8_t data)函數(shù)[2]傳輸。其中,,adr相當于設(shè)備地址;data相當于鍵盤編碼器,。參數(shù)adr允許在重要的位(MSB)通過申請常量TOGGLEBIT來設(shè)置觸發(fā)位,,方式如下:IRCOMM_sendRC5(12|TOGGLEBIT,40)[2],;這個指令將通過地址12傳輸一個RC5數(shù)據(jù)包給設(shè)備,,激活觸發(fā)位并且以40作為數(shù)據(jù)值,如IRCOMM_sendRC5(12,40),。
    事件處理程序可以管理RC5的數(shù)據(jù)接收,,只要RC5數(shù)據(jù)包接收,事件處理程序?qū)⒆詣拥乇籺ask_ACS()函數(shù)調(diào)用,。例如寫一個程序,,程序的要求是如果機器人接收到鍵盤編碼4號鍵,小車會向左轉(zhuǎn),;接收到鍵盤編碼6號鍵則向右轉(zhuǎn),。
    對于事件處理程序規(guī)定必須相應采用void receiveRC5Data(RC5data_t rc5data)形式[2],但也可以自由地命名函數(shù),??梢酝ㄟ^IRCOMM_setRC5DataReadyHandler(receiveRC5Data)[2]函數(shù)允許記錄一個預定的事件處理程序。在這之后,,專用的函數(shù)將被每個有效的RC5接收的代碼調(diào)用,。值得一提的是:RC5data_t是專門的預定義的數(shù)據(jù)類型,包含RC5設(shè)備地址,、觸發(fā)位和鍵盤編碼(分別有對應的值),,可以通過標識符rc5data.device、rc5data.toggle_bit,、rc5data.key_code[2]就像使用變量一樣地使用這些數(shù)據(jù),。程序流程圖如圖4所示。

4 測試結(jié)果
4.1 紅外發(fā)射器電器參數(shù)

    (1)接收距離范圍內(nèi),,通過示波器測得發(fā)射器發(fā)送脈沖的參數(shù):發(fā)射器輸出波長為λ0=400 nm,。
    (2)輸出波形如圖5所示,而標準的發(fā)射器對紅外電管的要求為:波長λ=940 nm,,Δλ=60 nm,。

4.2 小車運行結(jié)果
    AGV運行時,程序會自動記錄下每個控制間隔內(nèi)得到的側(cè)向偏差e和方向偏差的數(shù)據(jù),,圖6,、圖7是根據(jù)AGV前進時在某一時間段內(nèi)的偏差記錄的曲線。

    通常紅外線遙控器遙控的對象是電視機,、影碟機及音響等設(shè)備,,本文設(shè)計實例說明,AGV或車輛裝備也可以使用紅外線通信裝置,。如果將這個實例換個角度思考,,在車輛上安裝紅外線發(fā)射器和接收器,當紅外線接收器接收到發(fā)射器發(fā)射后反彈回來的紅外線時,,就可證明前方有障礙,,這就為未來的汽車發(fā)展提供了一種可能的研究方向。當前交通事故頻繁,對社會危害嚴重,,如果將這種紅外通信技術(shù)應用于車輛的避障中,,將有可能大幅降低交通事故的發(fā)生。
參考文獻
[1] 吳啟華.基于Windows環(huán)境下AVR-GCC示例開發(fā)[J].電訊技術(shù),,2001(3):95-98.
[2] 王傳,,姜華.基于RC5代碼紅外線遙控[J].通訊技術(shù), 2001,,35(11):122-125.

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