• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于C51單片機(jī)智能機(jī)器人觸覺導(dǎo)航系統(tǒng)設(shè)計(jì)

    2015-05-15 10:22:56雷道仲
    電子測(cè)試 2015年8期
    關(guān)鍵詞:墻角觸覺導(dǎo)航系統(tǒng)

    雷道仲

    (湖南信息職業(yè)技術(shù)學(xué)院,湖南長沙,410200)

    1 觸須傳感器

    機(jī)完成機(jī)器人導(dǎo)航功能,直流伺服電機(jī)是機(jī)器人的行走系統(tǒng),完成各種行走動(dòng)作。

    觸覺傳感器工作原理非常簡單,其的等效電路原理圖如圖2中虛線所示[2]。傳感器在撲捉或感知外界信息是靠其裝在傳感器外面的觸須來完成,圖中的“右觸須”、“左觸須”實(shí)際上就是兩個(gè)帶觸須的觸覺型開關(guān),當(dāng)它們平時(shí)沒有觸碰到實(shí)物時(shí),它們處于常開狀態(tài);將它們一端連接到單片機(jī)的I/O控制端口上(圖中P3.2/P3.3),則對(duì)應(yīng)的端口呈現(xiàn)出高電平狀態(tài);當(dāng)胡須觸碰到物體時(shí),與它聯(lián)動(dòng)的開關(guān)因受力而閉合,從而拉低對(duì)應(yīng)的單片機(jī)端口引腳電平,單片機(jī)則通過判斷對(duì)應(yīng)引腳電平的高低來間接感知外部事件(觸須觸碰到障礙物)是否發(fā)生。

    圖1 機(jī)器人觸覺導(dǎo)航系統(tǒng)構(gòu)成框圖

    2 系統(tǒng)設(shè)計(jì)方案

    系統(tǒng)主要由單片機(jī)AT89C51、觸覺傳感器、直流伺服電機(jī)、供電電路等組成,其系構(gòu)成框圖如圖1所示。其中單片機(jī)是整個(gè)系統(tǒng)的控制核心,用來接收觸覺傳感器傳回來的外界信息,并根據(jù)信息情況作出相應(yīng)決策;控制伺服電機(jī)作出相應(yīng)動(dòng)作,如:前進(jìn)、后退或左、右轉(zhuǎn)彎等。觸覺傳感器用來感知外界障礙物,配合單片

    基金項(xiàng)目:湖南教育廳科學(xué)研究項(xiàng)目(No.12C1176)

    3 硬件電路設(shè)計(jì)

    3.1 機(jī)器人觸覺導(dǎo)航系統(tǒng)電路設(shè)計(jì)

    3.2 電路工作原理

    如圖2所示的電路工作過程如下:電路通電后,單片機(jī)P2.0與P2.1輸出伺服電機(jī)的控制信號(hào),從而引導(dǎo)機(jī)器人朝前行走,同時(shí)單片機(jī)P3.2、P3.3端口負(fù)責(zé)收集左、右觸覺傳感器采集到的信號(hào),當(dāng)左、右傳感器沒有碰到障礙物時(shí),P3.2=P3.3=1;當(dāng)某個(gè)時(shí)刻,左觸須碰到障礙物,P3.2=0;則進(jìn)入相應(yīng)左避障子程序,如:后退——右轉(zhuǎn)等,完成避障;右觸須工作過程跟左觸須類似。如同時(shí)檢測(cè)到P3.2=P3.3=0;則先后退——再掉頭往反方向走,完成避障和導(dǎo)航功能。

    4 軟件系統(tǒng)設(shè)計(jì)

    4.1 機(jī)器人觸覺導(dǎo)航系統(tǒng)程序設(shè)計(jì)

    機(jī)器人觸覺導(dǎo)航系統(tǒng)程序設(shè)計(jì)思路如下,51單片機(jī)的兩個(gè)端口P3.2和P3.3分別負(fù)責(zé)對(duì)左、右觸覺傳感器觸須進(jìn)行監(jiān)控,當(dāng)機(jī)器人前進(jìn)過程中左前方有障礙物時(shí),左邊的觸須碰到這個(gè)障礙物時(shí),P3.2引腳電平會(huì)變成低電平,程序會(huì)立刻轉(zhuǎn)至左避障函數(shù)中去執(zhí)行,只要我們?cè)谧蟊苷虾瘮?shù)中合理設(shè)置相關(guān)避障函數(shù),如:后退——右轉(zhuǎn)——再前進(jìn)等,便可以成功避開障礙,完成機(jī)器人導(dǎo)航。右觸須程序設(shè)計(jì)思路與此類似,右觸須被端口P3.3所監(jiān)控,整個(gè)系統(tǒng)主程序流程圖如圖3所示。

    圖2 機(jī)器人觸覺導(dǎo)航系統(tǒng)電路

    5 系統(tǒng)測(cè)試

    5.1 觸覺傳感器測(cè)試

    根據(jù)圖2所示的系統(tǒng)硬件電路原理圖,焊接好電路控制板,并將觸覺傳感器的兩個(gè)觸須安裝在單片機(jī)P3.2與P3.3端口上。檢查供電正常后,開機(jī)運(yùn)行。將數(shù)字萬用表打至直流20V檔,黑表筆接地,紅表筆觸碰單片機(jī)P3.2引腳,如果此時(shí)觸覺傳感器的觸須沒有碰到障礙物時(shí),萬用表在P3.2引腳應(yīng)該檢測(cè)到一個(gè)接近5V左右的高電平;觸須碰到障礙物則萬用表應(yīng)該檢測(cè)到接近0V的低電平;如果沒有檢測(cè)到相應(yīng)的電平,則說明觸覺傳感器未能正常工作。則應(yīng)逐步仔細(xì)排查電路,直至觸覺傳感器正常工作為止。

    5.2 系統(tǒng)整體調(diào)試

    根據(jù)機(jī)器人觸覺導(dǎo)航系統(tǒng)程序設(shè)計(jì)思路,在KEIL C中編寫、編譯完成相應(yīng)程序代碼,將產(chǎn)生的可執(zhí)行文件燒寫到單片機(jī)程序存儲(chǔ)器,開機(jī)運(yùn)行機(jī)器人,我們發(fā)現(xiàn)機(jī)器人在觸覺傳感器的引導(dǎo)下能夠很好規(guī)避正前方障礙物,實(shí)現(xiàn)機(jī)器人導(dǎo)航功能。但如果機(jī)器人進(jìn)入到90度的墻角時(shí),我們發(fā)現(xiàn)機(jī)器人總是左觸須觸墻,于是右轉(zhuǎn),向前行走,右觸須觸墻,于是左轉(zhuǎn),繼續(xù)前進(jìn),又碰到左墻,再次碰到右墻……,如果不是你把它從墻角拿出來,它將會(huì)一直困在墻角里而出不來。要解決這個(gè)問題,需要運(yùn)用一些編程策略對(duì)程序中作一些修改。

    基本思路是先判斷前方障礙物是不是墻角,如果確認(rèn)是墻角,那么就讓小車作一個(gè)U形轉(zhuǎn)彎,即掉頭逃離墻角,如果不是墻角,則按一般避障功能便可以解決。

    圖3 主程序流程圖

    判斷機(jī)器人進(jìn)入90度墻角的方法[1]:如果函數(shù)P3_2state()返回0,函數(shù)P3_3state()返回1;當(dāng)觸須碰到右墻時(shí),函數(shù)P3_2state()返回1,函數(shù)P3_3state()返回0;由此可推測(cè),若前方障礙物是90度墻角,那么這兩個(gè)函數(shù)返回的值彼此不相等,而且各自前后兩次返回的值也不相等,我們可以在程序中設(shè)兩個(gè)變量用來記錄兩個(gè)觸須前一次觸動(dòng)的舊狀態(tài),再與兩個(gè)觸須的當(dāng)前狀態(tài)進(jìn)行對(duì)比,如果前后兩次的狀態(tài)交替出現(xiàn),就用一個(gè)變量作為計(jì)數(shù)器記錄交替的次數(shù),若交替總數(shù)超過了程序中預(yù)先設(shè)定的閥值,就可以認(rèn)定前方的障礙物是墻角,那么就編程讓小車作一個(gè)U形轉(zhuǎn)彎,掉頭逃離墻角,同時(shí)將記錄交替次數(shù)的計(jì)數(shù)器變量復(fù)位,下面具體運(yùn)用這種思路修改的主函數(shù),使智能機(jī)器人能夠逃離墻角,修改后的主函數(shù)如下:

    void main(void)

    {

    uchar counter=1; //觸須碰撞總次數(shù)

    uchar old_R=1; //右觸須舊狀態(tài)

    uchar old_L=0; //左觸須舊狀態(tài)

    while(1)

    {

    if(P3_2state()!=P3_3state())

    {

    if((old_R!=P3_3state())&&(old_L!=P3_2state()))

    {

    counter=counter+1;

    old_R=P3_2state();

    old_L=P3_3state();

    if(counter>4)

    {

    counter=1;

    Backward();//向后

    Left_Turn();//向左

    Left_Turn();//向左

    }

    }

    else

    {按主程序流程圖避障}

    6 結(jié)束語

    實(shí)踐表明,運(yùn)用觸覺傳感器設(shè)計(jì)出的智能機(jī)器人導(dǎo)航系統(tǒng)能夠很好地規(guī)避正前方的障礙物,從而引導(dǎo)機(jī)器人完成導(dǎo)航功能;并且,觸覺傳感器具有價(jià)格低、易于控制等優(yōu)點(diǎn),因此,它是機(jī)器人或智能玩具中設(shè)計(jì)避障、導(dǎo)航功能的不二選擇。

    參考文獻(xiàn)

    [1] 秦志強(qiáng)等編著.C51單片機(jī)應(yīng)用與C語言程序設(shè)計(jì)[M].北京:電子工業(yè)出版社.,2007

    [2] 譚立新,雷道仲等編著.單片機(jī)技術(shù)及應(yīng)用[M].長沙:中南大學(xué)出版社.2013

    [3] 宋雪麗,王虎林,王毅.基于單片機(jī)的尋跡機(jī)器人的系統(tǒng)設(shè)計(jì)[J].儀表技術(shù).2009(04)

    [4] 王東峰,王會(huì)良,董冠強(qiáng)編著.單片機(jī)C語言應(yīng)用100例[M].電子工業(yè)出版社2009年3月

    猜你喜歡
    墻角觸覺導(dǎo)航系統(tǒng)
    墻角縫縫擦干凈
    幼兒100(2023年35期)2023-09-22 07:28:40
    墻角的梅花
    喚起人工觸覺 實(shí)現(xiàn)“意念控制”的假肢
    海外星云(2021年6期)2021-10-14 07:20:42
    說說“北斗導(dǎo)航系統(tǒng)”
    食的觸覺
    特別健康(2018年3期)2018-07-04 00:40:20
    “北斗”導(dǎo)航系統(tǒng)是怎樣煉成的
    一種GNSS/SINS容錯(cuò)深組合導(dǎo)航系統(tǒng)設(shè)計(jì)
    墻角數(shù)枝梅
    墻角數(shù)枝梅
    解讀全球第四大導(dǎo)航系統(tǒng)
    塔城市| 龙岩市| 汤阴县| 卫辉市| 永定县| 渝中区| 铁岭县| 奉新县| 镇平县| 泗洪县| 奉新县| 临泉县| 宜都市| 盐城市| 寿光市| 吉林市| 林甸县| 白银市| 达州市| 米脂县| 蒙山县| 罗江县| 遂昌县| 马鞍山市| 前郭尔| 长白| 泗阳县| 宣城市| 玉龙| 基隆市| 云南省| 新干县| 苍南县| 德惠市| 晋城| 宁德市| 台湾省| 苍山县| 武定县| 平泉县| 渑池县|