99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

電子設計 ? 作者:電子設計 ? 2018-09-23 11:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

摘要: 采用新型的超聲波傳感器,設計并開發(fā)基于ARM9 與嵌入式linux 為平臺的輪式移動機器人平臺的下的未知環(huán)境的避障導航系統(tǒng)。本文重點介紹該超聲波傳感器的實現(xiàn)原理以及在機器人平臺中的整個軟件實現(xiàn)流程以及控制機器人行走的實現(xiàn)方法。

1 引言

在項目開發(fā)中采用從英國進口的SRF05 超聲波傳感器,它的回波反饋與測距方式與通常使用的超聲波傳感器相比較特別, 在ARM中實現(xiàn)也稍有難度, 但該傳感器精度很高可達到1cm, 因此用該傳感器去掉了用于近距離測距的紅外測距模塊節(jié)約了硬件資源。

該機器人的最小系統(tǒng)為,觸摸屏模塊,超聲波模塊,攝像頭圖像采集模塊,直流電機閉環(huán)控制系統(tǒng),在整個系統(tǒng)中測距是最總要的一環(huán),它直接影響電機運行距離的精度,在有效范圍內的圖像采集控制。整個系統(tǒng)都是在ARM9 與linux 平臺中完成,每個模塊都是用設備驅動的方式實現(xiàn)使得模塊的控制更加方便。

2 SRF05 超聲波測距方法

提供一個10us 的脈沖觸發(fā)超聲波傳感器,SRF05 會發(fā)出8 個周期的頻率為40khz 的超頻脈沖,此時在echo 也是就回波口上的電平變?yōu)楦撸藭r定時器開始計時,等到echo 變?yōu)榈碗娖阶C明有障礙物此時停止計時,高脈沖的寬度有測距的距離成正比,該超聲波的有效測距范圍為1cm~4m, 因此如果沒有障礙物或障礙物大于4m,echo 依然會變?yōu)榈碗娖酱藭r定時器的時間為30ms, 因此在測距時定時器的周期應大于30ms 這樣才能有效測距。

原理如圖1 所示。

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

3 超聲波測距軟件實現(xiàn)

如圖2 為超聲波測距的流程圖。

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

3.1 回波檢測的采集方法

超聲波的回波的檢測是個難點, 因為在ARM中一個端口設置中斷只能設置一種觸發(fā)方式, 如果設為上升沿觸發(fā)可以打開定時器定時但無法捕獲下降沿,也就無法關閉定時器,從而不能測距, 因此用軟件的方式實現(xiàn)。首先設置兩個時間延遲函數(shù)usdelay()和msdelay(),這樣可以在給出高脈沖10us 后等超聲波觸發(fā)再打開定時期計時,在設置一個外部中斷eint1 接到超聲波傳感器的echo 口并設置為下降沿觸發(fā),等下降沿來臨關閉定時器讀出值既為脈寬的時間長度,然后根據(jù)障礙物的距離=(ECHO高電平的時間)* 聲納速度/2 得出距離。空氣中v 與溫度關系:v=331.5√1+T/273 m/s,T 為攝氏溫度。一般情況下超聲波速近似聲速,在室內溫度影響下取約343.2m/s.

3.2 超聲波觸發(fā)的實現(xiàn)

利用數(shù)字示波器精確設計一個軟件計時函數(shù)usdelay (),具體實現(xiàn)如下。

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

則usdelay(1)既為10us,該函數(shù)用于在給出激發(fā)高脈沖后延續(xù)10us 然后關脈沖。

還要設計一個msdelay()用于控制整個測距周期的時間值。

msdelay(1000)在主函數(shù)數(shù)中用于延遲1s,這樣定時器可以完全有足夠的回波檢測時間同時也不會對其它三路超聲波信號造成干擾。

如下所示。

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

3.3 超聲波回波檢測的實現(xiàn)

回波檢測計算脈寬的時間需要用到定時器和外部中斷,外部中斷接超聲波的echo 并設置為下降沿觸發(fā)。定時器的初始化如下。

rTCFG0=0x9595; //預分頻值為95

rTCFG1=0x00000; //分割值1/2

rTCNTB0=10000; /

根據(jù)T=[TCNTB0*(TCFG0+1)*(1/TCFG1)]/50MHZ 得出定時器的周期為60ms 在這個時間段里足以計算回波時間。

外部中斷1 初始化如下

rGPFCON=0xaa; //GPF1 設置為EINT1

rINTMOD=0x0; //設置為普通中斷

rGPFUP=0xf; //禁止GPF0 上拉電阻

pISR_EINT1=(unsigned)Eint1Handler; //建立中斷向量

EnableIrq(BIT_EINT1); //使能中斷

rEXTINT0 =0x492; // EINT1 下降沿觸發(fā)

根據(jù)T=[TCNTB0*(TCFG0+1)*(1/TCFG1)]/50MHZ 得出定時器的周期為60ms 在這個時間段里足以計算回波時間。

3.4 在外部中斷中計算機距離

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

3.5 循環(huán)控制與輪詢測距

由于超聲波之間有干擾,采用輪詢的方式依次打開超聲波,每次只測一個,這樣可以有效地避免干擾,為了提高實時性可以控制定時器周期,比如設置為35ms,這樣四路超聲波輪詢一次大約為140ms,足以滿足實時要求。

4 機器人控制的實現(xiàn)

圖3 為利用超聲波的反饋信息控制機器人直流電機閉環(huán)系統(tǒng)的總體結構圖。

利用超聲波傳感器在ARM9與linux平臺中實現(xiàn)移動機器人導航的設計

linux 系統(tǒng)中超聲波傳感器為只讀的字符設備,具體應用為在應用程序下打開超聲波設備,然后在驅動中測距,測得的數(shù)據(jù)傳到應用程序,應用程序中有超聲波的避障算法,根據(jù)算法判斷障礙物的位置給直流電機控制信號進行避障導航。

觸摸屏中的圖形界面中含有機器人的指令設置, 可以設置運行速度,圖像采集與超聲波模塊的打開與關閉,是否開啟機器人模糊算法運行軌跡還是使用普通的PID 調節(jié), 這使得機器人有很多種方案可以選擇。

機器人的每一次行為都是根據(jù)超聲波傳感器測得的值和當前機器人運行的即時速度來來給出將要運行的時間, 在遇到障礙物時(0

5 結論

本文采用新型的超聲波傳感器,在ARM9 與嵌入式linux 為平臺的移動機器人上實現(xiàn)了超聲波的測距, 并利用超聲波傳感器控制運動系統(tǒng)和圖像采集系統(tǒng)。該機器人目前已經成功應用與本項目的開發(fā)并取得良好的效果。

本文創(chuàng)新點:采用一種精度高的新型超聲波傳感器,用軟件方法克服了它在ARM9 中不利于檢測回波的問題,成功應用于移動機器人的運行軌跡控制, 使得機器人無論在行走和圖像采集的即時性上都得到了很大的高。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2565

    文章

    52999

    瀏覽量

    767392
  • 機器人
    +關注

    關注

    213

    文章

    29737

    瀏覽量

    212861
  • Linux
    +關注

    關注

    87

    文章

    11511

    瀏覽量

    213795
  • 超聲波
    +關注

    關注

    63

    文章

    3140

    瀏覽量

    141398
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于超聲波傳感器的自主移動機器人的探測系統(tǒng)

    實現(xiàn)的。視覺、紅外、激光、超聲波傳感器都在移動機器人中得到實際應用。超聲波傳感器以其性價比高、
    發(fā)表于 01-19 13:45

    Labview My RIO 移動機器人

    移動機器人機械結構和電氣部分安裝完成?;镜碾姍C,傳感器等信號調試已經完成。 由于是第一次使用Labview開發(fā)移動機器人,目前水平還不夠,遇到了問題,如何利用編碼
    發(fā)表于 08-21 12:20

    超聲波傳感器機器人中的應用

    、垂直的反射名義下進行的。但對于移動機器人很難保證其自身運動姿態(tài)的穩(wěn)定性,采用超聲波傳感器固定在移動機器人車身的探測方式,當移動機器人偏離平
    發(fā)表于 08-09 15:19

    基于超聲波傳感器的自主移動機器人探測系統(tǒng)

    的信息而實現(xiàn)的。視覺、紅外、激光、超聲波傳感器都在移動機器人中得到實際應用。超聲波傳感器以其性
    發(fā)表于 11-02 16:04

    超聲波傳感器機器人避障中有什么作用

    高、硬件實現(xiàn)簡單等優(yōu)點,移動機器人感知系統(tǒng)中得到了廣泛的應用。但是超聲波傳感器也存在一定的局限性,主要是因為波束角大、方向性差、測距的不穩(wěn)
    發(fā)表于 02-27 23:29

    基于ARM9的DF-1機器人傳感器系統(tǒng)設計

    感知外部環(huán)境信息和自身狀態(tài),獲得反饋信息,實現(xiàn)系統(tǒng)的閉環(huán)控制。目前仿人機器人中應用的傳感器種類繁多,例如視覺傳感器、電子羅盤、加速度計和
    發(fā)表于 06-21 07:04

    家庭移動機器人避障常用傳感器及相關技術

    移動機器人機器人的重要研究領域,人們很早就開始移動機器人的研究。世界上第一臺真正意義上的移動機器人是斯坦福研究院(SRI)的人工智能中心于1966年到1972年研制的,名叫Shake
    發(fā)表于 05-14 08:15

    如何實現(xiàn)移動機器人的設計?

     移動機器人利用導航技術,獲得機器人的目前所處的位置,結合傳感器技術對周圍外界環(huán)境(障礙物等)作實時探測,并根據(jù)環(huán)境提供的信息規(guī)劃一條可行路
    發(fā)表于 11-23 15:08

    移動機器人超聲波測距功能設計

    ,在有效范圍內的圖像采集控制。整個系統(tǒng)都是ARM9linux 平臺中完成,每個模塊都是用設備驅動的方式實現(xiàn)使得模塊的控制更加方便。2
    發(fā)表于 10-08 09:41

    怎么實現(xiàn)三路超聲波避障移動機器人平臺的設計?

    怎么實現(xiàn)三路超聲波避障移動機器人平臺的設計?
    發(fā)表于 11-10 07:00

    【科普】干貨!帶你從0了解移動機器人(三) ——自主導航系統(tǒng)及上位機軟件設計與實現(xiàn)

    傳感器數(shù)據(jù)獲取環(huán)境信息,規(guī)劃路徑并選擇最優(yōu)路徑到達目的地的算法。運動控制算法是指移動機器人在到達目的地后,根據(jù)傳感器數(shù)據(jù)調整方向和速度的算法。這些算法需要在移動機器人的控制
    發(fā)表于 06-28 09:36

    超聲波移動機器人導航設計方法

      摘要: 采用新型的超聲波傳感器,設計并開發(fā)基于ARM9 與嵌入式linux平臺的輪式移動機器人平
    發(fā)表于 05-11 15:06 ?2978次閱讀
    <b class='flag-5'>超聲波</b><b class='flag-5'>移動機器人</b><b class='flag-5'>導航</b>設計方法

    ARM-Linux平臺移動機器人傳感器檢測數(shù)據(jù)讀取

    使用嵌入式技術設計移動機器人控制時,要求Linux操作系統(tǒng)下管理硬件資源。故以移動機器人上配置的典型接近
    發(fā)表于 01-08 14:33 ?0次下載
    <b class='flag-5'>ARM-Linux</b><b class='flag-5'>平臺</b>上<b class='flag-5'>移動機器人</b>的<b class='flag-5'>傳感器</b>檢測數(shù)據(jù)讀取

    采用超聲波移動機器人導航設計方法[圖]

    摘要: 采用新型的超聲波傳感器,設計并開發(fā)基于ARM9 與嵌入式linux平臺的輪式移動機器人平臺
    發(fā)表于 01-17 22:39 ?505次閱讀

    基于DSP和CAN總線實現(xiàn)移動機器人超聲測距系統(tǒng)的軟硬件設計

    移動機器人實現(xiàn)在未知和不確定環(huán)境下運行,必須具備自動導航和避障功能。移動機器人導航系統(tǒng)中,
    的頭像 發(fā)表于 10-18 07:49 ?6236次閱讀
    基于DSP和CAN總線<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>移動機器人</b><b class='flag-5'>超聲</b>測距系統(tǒng)的軟硬件設計