版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
機(jī)器人程序設(shè)計(jì)(C語(yǔ)言)新工科建設(shè)之路·機(jī)器人技術(shù)與應(yīng)用系列選擇結(jié)構(gòu)程序設(shè)計(jì)一機(jī)器人紅外導(dǎo)航第六章使用紅外發(fā)射器和接收器探測(cè)道路紅外前燈在機(jī)器人上建立的紅外探測(cè)物體系統(tǒng)在許多方面就像汽車的前燈系統(tǒng)。使用紅外發(fā)射器和接收器探測(cè)道路紅外二極管發(fā)射紅外光,如果機(jī)器人前面有障礙物,紅外光從物體反射回來,相當(dāng)于機(jī)器人眼睛的紅外檢測(cè)(接收)器,檢測(cè)到反射回的紅外光,并發(fā)出信號(hào)來表明檢測(cè)到從物體反射回紅外光。機(jī)器人的大腦——單片機(jī)AT89S52基于該傳感器的輸入控制伺服電機(jī)。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)01本任務(wù)將搭建并測(cè)試紅外線發(fā)射和檢測(cè)器對(duì)。本章需要用到的新部件如圖6-2所示。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)元器件清單(1)紅外檢測(cè)器,2個(gè)。(2)IRLED(帶套筒),2個(gè)。(3)470Ω電阻,2個(gè)。(4)連接線,若干。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)搭建紅外前燈電路板的每個(gè)角安裝一個(gè)IR組(IRLED和檢測(cè)器)。(1)斷開主板和伺服系統(tǒng)的電源。(2)在教學(xué)板上建立如圖6-3所示的電路,可參考實(shí)物連接圖,如圖6-4所示。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)搭建紅外前燈搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)搭建紅外前燈測(cè)試紅外檢測(cè)器讓每個(gè)IRLED探測(cè)器組工作的關(guān)鍵是發(fā)送1ms頻率為38.5kHz的紅外信號(hào),然后立刻將IR探測(cè)器的輸出存儲(chǔ)到一個(gè)變量中。例如,它發(fā)送38.5kHz信號(hào)給連接到P1_3的IR發(fā)射器,然后用整型變量irDetectLeft存儲(chǔ)連接到P1_2的IR探測(cè)器的輸出上。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)測(cè)試紅外檢測(cè)器for(counter=0;counter<38;counter++)P1_3=1;delay_nus(13);P1_3=0;delay_nus(13);irDetectLeft=P1_2state();搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)例程:TestLeftlrPair.c(1)打開教學(xué)板的電源。(2)輸入、保存并運(yùn)行程序TestLeftIrPair.c。(3)保持機(jī)器人與通信電纜的連接,因?yàn)樾栌谜{(diào)試終端來測(cè)試IR組。(4)放一個(gè)物體,如手或一張紙,距離左側(cè)IR組2~3cm處,見圖6-1。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)例程:TestLeftlrPair.c(5)驗(yàn)證:放一個(gè)物體在IR組前時(shí),調(diào)試終端是否會(huì)顯示“irDetecfLeft=0”?將物體移開時(shí),它是否顯示“irDetectLeft=1”(如圖6-5所示)?(6)如果調(diào)試終端顯示的是預(yù)料的值,沒發(fā)現(xiàn)物體,則顯示1;發(fā)現(xiàn)物體,則顯示0,轉(zhuǎn)到例程后的“該你了”部分。(7)如果調(diào)試終端顯示的不是預(yù)料的值,試試按排錯(cuò)部分的步驟進(jìn)行排錯(cuò)。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)排錯(cuò)①如果調(diào)試終端顯示的不是預(yù)料的值,檢查電路和輸入的程序。②如果總是得到0,甚至當(dāng)沒有物體在機(jī)器人前面時(shí)也是0,可能是附近的物體反射了紅外光。③如果機(jī)器人前面沒有物體時(shí),絕大多數(shù)時(shí)間讀數(shù)是1,但偶爾是0,這可能是附近的熒光燈的干擾。關(guān)掉附近的熒光燈,重新測(cè)試。搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)排錯(cuò)搭建并測(cè)試IR發(fā)射和探測(cè)器對(duì)函數(shù)延時(shí)的不精確性如果把KeiluVision4IDE安裝在C盤,將在C:\ProgramFiles\Keil\C51\INC目錄下發(fā)現(xiàn)頭文件“INTRINS.H”。這個(gè)頭文件中聲明了一個(gè)空函數(shù)_nop_(void),它能準(zhǔn)確延時(shí)一個(gè)機(jī)器周期,即約1μs。探測(cè)和避開障礙物02探測(cè)和避開障礙物有關(guān)IR檢測(cè)器的趣事是它們的輸出與觸須的輸出非常相像。沒有檢測(cè)到物體時(shí),輸出為高電平;檢測(cè)到物體時(shí),輸出為低電平。本任務(wù)是更改程序RoamingWithWhiskers.c,使它適合IR檢測(cè)器。探測(cè)和避開障礙物進(jìn)行IR探測(cè)時(shí)要使用AT89S52的4個(gè)引腳:P1_2、P1_3、P3_5和P3_6。探測(cè)和避開障礙物宏定義宏定義的一般形式為:#define標(biāo)識(shí)符字符串探測(cè)和避開障礙物改變觸須程序,使其適合IR檢測(cè)和躲避下一個(gè)例程與RoamingWithWhiskers.c相似:更改旁邊的名稱和描述,加入兩個(gè)變量來存儲(chǔ)IR檢測(cè)器的狀態(tài)。intirDetectLeftintirDetectRight探測(cè)和避開障礙物改變觸須程序,使其適合IR檢測(cè)和躲避下一個(gè)例程與RoamingWithWhiskers.c相似:更改旁邊的名稱和描述,加入兩個(gè)變量來存儲(chǔ)IR檢測(cè)器的狀態(tài)。intirDetectLeftintirDetectRight探測(cè)和避開障礙物改變觸須程序,使其適合IR檢測(cè)和躲避設(shè)計(jì)一個(gè)函數(shù)voidIRLaunch(unsignedcharIR)來進(jìn)行紅外發(fā)射。voidIRLaunch(unsignedcharIR)intcounter;if(IR=='L')//左邊發(fā)射for(counter=0;counter<38;counter++)LeftLaunch=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_0;LeftLaunch=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();nop_(0);_nop_();_nop_();_nop_(0;_nop_();_nop_();探測(cè)和避開障礙物改變觸須程序,使其適合IR檢測(cè)和躲避if(IR=='R')//右邊發(fā)射for(counter=0;counter<38;counter++)RightLaunch=1;_nop_();_nop_();_nop_();_nop_();nop_();_nop_();nop_();nop_();nop_();nop_();_nop_();_nop_();RightLaunch=0;_nop_(;_nop_();_nop_();_nop_();_nop_();_nop_(;nop_();_nop_();nop_();_nop_();_nop_();_nop_();探測(cè)和避開障礙物改變觸須程序,使其適合IR檢測(cè)和躲避例程:RoamingWithlr.c(1)打開教學(xué)板的電源。(2)保存并運(yùn)行程序。(3)機(jī)器人的運(yùn)動(dòng)與運(yùn)行程序RoamingWithWhiskers.c時(shí)相比,是不是除了不需接觸,其他都非常像。高性能的IR導(dǎo)航03高性能的IR導(dǎo)航在每個(gè)脈沖之間采樣,以避免碰撞探測(cè)障礙物很重要的一點(diǎn)是在機(jī)器人撞到它之前給機(jī)器人留有繞開它的空間。如果前方有障礙物,機(jī)器人會(huì)使用脈沖命令避開,然后探測(cè),如果物體還在,再使用另一個(gè)脈沖來避開它。機(jī)器人能持續(xù)使用電機(jī)驅(qū)動(dòng)脈沖和探測(cè),直到它繞開障礙物,它會(huì)繼續(xù)發(fā)送向前行走的脈沖。高性能的IR導(dǎo)航在每個(gè)脈沖之間采樣,以避免碰撞例程:FastIrRoaming.c輸入、保存并運(yùn)行程序FastIrRoaming.c。高性能的IR導(dǎo)航在每個(gè)脈沖之間采樣,以避免碰撞高性能的IR導(dǎo)航在每個(gè)脈沖之間采樣,以避免碰撞高性能的IR導(dǎo)航在每個(gè)脈沖之間采樣,以避免碰撞高性能的IR導(dǎo)航在每個(gè)脈沖之間采樣,以避免碰撞高性能的IR導(dǎo)航FastIrRoaming.c是如何工作的這個(gè)程序使用稍微不同的方法來使用驅(qū)動(dòng)脈沖。除了兩個(gè)存儲(chǔ)IR檢測(cè)器輸出的狀態(tài),它還使用兩個(gè)整型變量來設(shè)置發(fā)送的脈沖持續(xù)時(shí)間。intpulseLeft,pulseRight;intirDetectLeft,irDetectRight;高性能的IR導(dǎo)航do...while語(yǔ)句在C語(yǔ)言中,直到型循環(huán)控制語(yǔ)句是“do...while”,它的一般形式為:do語(yǔ)句while(表達(dá)式);俯視的探測(cè)器04俯視的探測(cè)器到目前為止,當(dāng)機(jī)器人探測(cè)到前面有障礙物時(shí),主要使機(jī)器人做避讓動(dòng)作。也有一些場(chǎng)合,當(dāng)沒有檢測(cè)到障礙物時(shí),機(jī)器人也必須采取避讓動(dòng)作。(1)斷開主板和伺服系統(tǒng)的電源。(2)使R組向外向下,如圖6-6所示。俯視的探測(cè)器俯視的探測(cè)器(1)卷裝黑色聚氯乙烯絕緣帶,19mm寬。(2)一張白色招貼板,56cm×71cm。推薦材料俯視的探測(cè)器(1)如圖6-7所示,建立一塊有絕緣帶邊界的場(chǎng)地。使用至少3條絕緣帶,絕緣帶邊之間連接緊密,沒有白色露出來。(2)用1k2(或2kQ)電阻代替圖6-3中的R3(R4),這樣就減少了通過IRLED的電流,從而降低了發(fā)射功率,使機(jī)器人在本任務(wù)中看得近一些。用絕緣帶模擬桌子的邊沿俯視的探測(cè)器用絕緣帶模擬桌子的邊沿俯視的探測(cè)器邊沿探測(cè)編程編程使機(jī)器人在桌面行走而不會(huì)走到桌邊,只需修改程序FastfrRoaming.c中的if..else語(yǔ)句。主要的修改是,當(dāng)iDetectLeft和irDetectRight的值都是0時(shí),表明在桌子表面檢測(cè)到物體(桌面),機(jī)器人向前行走。俯視的探測(cè)器邊沿探測(cè)編程例程:AvoidTableEdge.c(1)打開程序FastIrRoaming.c并另存為AvoidTableEdge.c。(2)修改它使其與下面例程匹配。(3)打開主板與電機(jī)的電源。(4)在帶絕緣帶邊框的場(chǎng)地上測(cè)試程序。俯視的探測(cè)器AvoidTableEdge.c是如何工作的在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度危化品物流配送與倉(cāng)儲(chǔ)服務(wù)合同3篇
- 2025年度科技創(chuàng)新項(xiàng)目試用合作全新試用協(xié)議3篇
- 2025年度寵物店寵物用品定制生產(chǎn)與銷售權(quán)轉(zhuǎn)讓協(xié)議3篇
- 2025年度文化產(chǎn)業(yè)融資合同范本集3篇
- 二零二五年度綠色環(huán)保產(chǎn)業(yè)市場(chǎng)拓展?fàn)I銷策劃合同3篇
- 2025年度內(nèi)架承包與施工噪聲及光污染控制協(xié)議3篇
- 2025年度智能網(wǎng)聯(lián)汽車制造企業(yè)整體轉(zhuǎn)讓協(xié)議版3篇
- 二零二五年度展會(huì)現(xiàn)場(chǎng)展臺(tái)搭建與物料租賃合同2篇
- 養(yǎng)殖業(yè)產(chǎn)業(yè)鏈金融支持2025年度合作協(xié)議3篇
- 2025年度海外空間科學(xué)與技術(shù)留學(xué)合同
- 2024-2025學(xué)年寒假致學(xué)生家長(zhǎng)的一封信(安全版)
- 浙江省杭州市2023-2024學(xué)年高一上學(xué)期1月期末英語(yǔ)試題 含解析
- 衛(wèi)生部手術(shù)分級(jí)目錄(2023年1月份修訂)
- 管線管廊布置設(shè)計(jì)規(guī)范
- 招聘與錄用選擇題
- 《工資、薪金的個(gè)人所得稅的計(jì)算》教學(xué)設(shè)計(jì)
- 周視瞄準(zhǔn)鏡的初步設(shè)計(jì)-北京理工大學(xué)-光電學(xué)院小學(xué)期作業(yè)
- Writing寫作教學(xué)設(shè)計(jì)
- 心房起搏電極的位置選擇ppt課件
- 上海市寶山區(qū)2019屆高三英語(yǔ)一模含答案
- 《數(shù)與形》教學(xué)反思
評(píng)論
0/150
提交評(píng)論