亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ROS的機(jī)器人導(dǎo)航系統(tǒng)架構(gòu)設(shè)計

        2017-10-21 23:17:54李勝
        電腦知識與技術(shù) 2017年20期
        關(guān)鍵詞:導(dǎo)航架構(gòu)設(shè)計機(jī)器人

        李勝

        摘要:目前,由于機(jī)器人的快速發(fā)展,在機(jī)器人開發(fā)中,代碼復(fù)用和模塊化的需求越來越強(qiáng)烈,構(gòu)建一個靈活性較高的機(jī)器人架構(gòu)成為一個研究熱點(diǎn)?;赗OS框架,以主控制器(樹莓派3B)+嵌入式控制板(STM32控制板)為基礎(chǔ)設(shè)計了一種可用于機(jī)器人多傳感器組合導(dǎo)航的系統(tǒng)架構(gòu),為廣大機(jī)器人研究人員提供了一套切實(shí)可行的多傳感器組合導(dǎo)航方案。

        關(guān)鍵詞:機(jī)器人操作系統(tǒng)(ROS);機(jī)器人;導(dǎo)航;架構(gòu)設(shè)計;節(jié)點(diǎn)

        1概述

        隨著“工業(yè)4.0”蜚聲全球,“智能化”也成為受到普遍認(rèn)同的、未來各行各業(yè)發(fā)展的大趨勢?!吨袊圃?025》規(guī)劃的出臺,更是使各種智能化技術(shù)得到了長足的發(fā)張。機(jī)器人技術(shù)作為智能化最為顯著的代表,更是如此,機(jī)器人技術(shù)已從傳統(tǒng)的工業(yè)領(lǐng)域拓展到教育娛樂、醫(yī)療服務(wù)等諸多領(lǐng)域中。而移動機(jī)器人是進(jìn)行機(jī)器人教育與研究最常用的平臺。目前,關(guān)于對機(jī)器人的研究大部分都集中在底層運(yùn)動控制器結(jié)構(gòu)和算法上,對于構(gòu)建上層應(yīng)用軟件架構(gòu)的研究較少。由于機(jī)器人技術(shù)的快速發(fā)展,代碼復(fù)用和模塊化需求越來越強(qiáng)烈。機(jī)器人操作系統(tǒng)(ROS)很好地適應(yīng)這種需求,在機(jī)器人研究的許多方面都得到了運(yùn)用,如文獻(xiàn)中基于ROS實(shí)現(xiàn)的地圖構(gòu)建與導(dǎo)航,文獻(xiàn)中提到的基于ROS實(shí)現(xiàn)的自主服務(wù)機(jī)器人等。本文詳細(xì)介紹ROS的主要特點(diǎn),并結(jié)合實(shí)際情況設(shè)計出一套基于ROS架構(gòu)的便于調(diào)試與維護(hù)的機(jī)器人導(dǎo)航系統(tǒng)架構(gòu)。

        2ROS基礎(chǔ)

        機(jī)器人操作系統(tǒng)(Robot Operating System,ROS)是一個面向機(jī)器人的開源元操作系統(tǒng)fopen-source,meta-operating sys-tem)。它能夠提供類似傳統(tǒng)操作系統(tǒng)的諸多功能,如硬件抽象、底層設(shè)備控制、進(jìn)程間消息傳遞和程序包管理等。其主要的特點(diǎn)包括5點(diǎn):點(diǎn)對點(diǎn)設(shè)計、多語言支持、精簡與集成、工具包豐富、免費(fèi)并且開源。

        ROS機(jī)器人軟件操作平臺,是由斯坦福大學(xué)fStanford Artifi-cial Intelligence Laboratory)和Willow Garage公司之間的合作開發(fā),2008年之后,就單獨(dú)由WillowGarage來推動ROS的發(fā)展了。

        節(jié)點(diǎn),消息,話題,服務(wù)是ROS系統(tǒng)中經(jīng)常用到的概念,基于這些概念,ROS可以實(shí)現(xiàn)程序進(jìn)程間的消息傳遞,管理硬件、底層的功能。

        1)節(jié)點(diǎn)

        節(jié)點(diǎn)主要執(zhí)行計算處理。ROS被設(shè)計為細(xì)粒度的模塊化的系統(tǒng);一個機(jī)器人控制系統(tǒng)通常有很多節(jié)點(diǎn)組成。本文采用的ROS框架中,相機(jī)數(shù)據(jù)節(jié)點(diǎn)用來獲取二維碼信息f包括偏移角度和偏移距離等),陀螺儀節(jié)點(diǎn)用來獲取角度數(shù)據(jù),編碼器用來獲取里程數(shù)據(jù),數(shù)據(jù)處理節(jié)點(diǎn)用來融合各個傳感器數(shù)據(jù),而機(jī)器人控制節(jié)點(diǎn)將數(shù)據(jù)處理的結(jié)果轉(zhuǎn)換為機(jī)器人的狀態(tài)。

        2)消息

        消息是數(shù)據(jù)在ROS中的表現(xiàn)形式,是節(jié)點(diǎn)之間的通信內(nèi)容。不管是來自傳感器的數(shù)據(jù),還是算法的運(yùn)算結(jié)果,都可以定義為消息。一個消息可以是一個簡單的數(shù)據(jù)類型,也可以是自定義數(shù)據(jù)類型,同時,消息還支持嵌套的結(jié)構(gòu)。

        3)話題

        消息以一種發(fā)布/訂閱的方式傳遞。識別消息內(nèi)容的名稱則叫做話題。話題發(fā)布節(jié)點(diǎn)和話題訂閱節(jié)點(diǎn)彼此獨(dú)立,不需要檢測對方的存在性和狀態(tài),發(fā)布節(jié)點(diǎn)只負(fù)責(zé)在特定的話題上發(fā)布消息,而訂閱節(jié)點(diǎn)也只需要通過訂閱特定話題來獲得消息數(shù)據(jù)。有可能多個節(jié)點(diǎn)發(fā)布同一話題,也有可能多個節(jié)點(diǎn)訂閱同一話題。有點(diǎn)類似于圍繞共同主題的多人聊天室,每個人都可以自由地發(fā)表或者獲取符合主題要求的信息。

        4)服務(wù)

        在ROS系統(tǒng)里,服務(wù)定義為一對消息結(jié)構(gòu),服務(wù)器響應(yīng)客戶機(jī)的請求,彌補(bǔ)了基于話題的發(fā)布/訂閱模型不適用于同步傳輸模式的缺陷。

        3硬件系統(tǒng)設(shè)計

        如圖2所示,該機(jī)器人采用六輪底盤結(jié)構(gòu),前后兩對輪子為從動輪,用以維持小車平衡,中間那兩只輪子為驅(qū)動輪和舵輪,分別由一個電機(jī)驅(qū)動,通過兩驅(qū)動輪的差速實(shí)現(xiàn)轉(zhuǎn)向。中間兩輪各配備一個編碼器,會對輪子的滾動進(jìn)行計數(shù),用以計算里程。

        機(jī)器人硬件控制系統(tǒng)如圖3所示,由主控制器、ARM控制器、智能相機(jī)、陀螺儀、直流電機(jī)組成。主控制器采用開源卡片電腦樹莓派3B,搭載主頻為1.2GHz,內(nèi)含4個ARM Cortex A53核心64位架構(gòu)的BCM2837處理器,配備1G內(nèi)存、板載802.11b/g/n Wi-Fi和板載藍(lán)牙4.1。安裝Ubuntu MATE 16.04 LTS操作系統(tǒng)和ROS(kinetic版本)。由于樹莓派3B開發(fā)板并沒有串口,采用USB轉(zhuǎn)串口的方式與智能相機(jī)、陀螺儀以及嵌入式控制板進(jìn)行串口通信。嵌入式控制板采用高性能、低成本、低功耗的ARM Cortex-M3內(nèi)核的STM32芯片。編碼器采用計數(shù)器接口與嵌入式控制板(sTM32)連接與通信。嵌入式控制板(STM32)通過設(shè)定電壓值驅(qū)動電機(jī)運(yùn)轉(zhuǎn)。智能相機(jī)通過掃描二維碼經(jīng)過特定算法處理獲取機(jī)器人的偏移和偏角。陀螺儀獲取角度信息,兩編碼器可以獲取到機(jī)器人兩輪各自的里程,處理后可以得到偏移和偏角信息。

        4軟件框架設(shè)計

        在各種操作系統(tǒng)中,ubuntu對ROS支持最好,主控制器樹莓派3B安裝的是使用Mate桌面系統(tǒng)的ubuntu版本buntumate操作系統(tǒng)。該ROS版本采用官方推薦的kinetic版本。監(jiān)控計算機(jī)安裝與kinetic版本匹配的ubuntul6.06操作系統(tǒng)。在安裝完桌面完整版的ROS后,ROS系統(tǒng)框架已經(jīng)建立并創(chuàng)建一個連接所有進(jìn)程的網(wǎng)絡(luò)和安裝了常用的功能包和庫。

        主控制器樹莓派開發(fā)板相對于ARM控制器STM32控制板數(shù)據(jù)處理能力要強(qiáng),盡可能將運(yùn)算復(fù)雜,工作量大的任務(wù)交由主控制器來進(jìn)行。與底層硬件通信方面,嵌入式比較有優(yōu)勢。將與底層硬件通信較多的任務(wù)(電機(jī)驅(qū)動、傳感器數(shù)據(jù)采集等)交給ARM控制器。另外,由于智能相機(jī)以及陀螺儀的數(shù)據(jù)都是封裝好的,并且采用的是非常常見的串口通信,可以直接連接主控制器。endprint

        機(jī)器人的軟件框架構(gòu)建在ROS系統(tǒng)之上,使用了ROS系統(tǒng)的特性,將軟件框架分成多個獨(dú)立的模塊化程序,也就是“節(jié)點(diǎn)”。每個節(jié)點(diǎn)處理具體控制任務(wù)的某一部分。如果需要,這些節(jié)點(diǎn)可以獨(dú)立于控制任務(wù)的其他節(jié)點(diǎn)被編寫、編譯和啟動。通過ROS的“話題(Topic)”機(jī)制,節(jié)點(diǎn)與節(jié)點(diǎn)之間以點(diǎn)對點(diǎn)的方式交換消息、共享內(nèi)存等等。機(jī)器人的系統(tǒng)使用TCP/IP通訊,實(shí)現(xiàn)節(jié)點(diǎn)間的數(shù)據(jù)傳輸和機(jī)器人的遠(yuǎn)程控制。

        該機(jī)器人軟件系統(tǒng)框架如圖4所示,主要分為人機(jī)交互、傳感器數(shù)據(jù)采集、數(shù)據(jù)優(yōu)化、運(yùn)動控制四部分。

        1)人機(jī)交互

        人機(jī)交互節(jié)點(diǎn)主要功能是為方便用戶配置機(jī)器人參數(shù),控制機(jī)器人運(yùn)動以及監(jiān)控機(jī)器人狀態(tài)。

        2)傳感器數(shù)據(jù)采集

        傳感器數(shù)據(jù)采集節(jié)點(diǎn)包括相機(jī)數(shù)據(jù)采集節(jié)點(diǎn)、陀螺儀數(shù)據(jù)采集節(jié)點(diǎn)和編碼器數(shù)據(jù)采集節(jié)點(diǎn)。相機(jī)數(shù)據(jù)采集節(jié)點(diǎn)借助官方Serial包通過串口通信獲取智能相機(jī)通過掃描地面二維碼提供的機(jī)器人偏移和偏角信息;陀螺儀數(shù)據(jù)采集節(jié)點(diǎn)獲取陀螺儀提供的偏角信息;編碼器數(shù)據(jù)采集節(jié)點(diǎn)獲取編碼器提供的偏移和偏角信息。這些數(shù)據(jù)采集節(jié)點(diǎn)將從傳感器處獲取到的信息發(fā)布成相關(guān)的話題信息供數(shù)據(jù)處理節(jié)點(diǎn)訂閱。智能相機(jī)和陀螺儀內(nèi)置處理板,會通過串口發(fā)送具有指定格式的數(shù)據(jù),主控制器可以直接通過USB轉(zhuǎn)串口通信獲得。編碼器由ARM控制器管理,編碼器通過ARM控制器和主控制器的串口通信獲得。

        3)數(shù)據(jù)優(yōu)化

        智能相機(jī)在掃描到二維碼時,才會有相機(jī)數(shù)據(jù)供運(yùn)動控制節(jié)點(diǎn)調(diào)用,因?yàn)檫@樣的局限性,更多的時候只能依靠編碼器和陀螺儀的數(shù)據(jù)。與相機(jī)數(shù)據(jù)不同,編碼器和陀螺儀數(shù)據(jù)隨時可以供運(yùn)動控制節(jié)點(diǎn)調(diào)用。相機(jī)數(shù)據(jù)存在時,數(shù)據(jù)優(yōu)化節(jié)點(diǎn)將相機(jī)數(shù)據(jù)、陀螺儀數(shù)據(jù)、編碼器數(shù)據(jù)進(jìn)行加權(quán)優(yōu)化;相機(jī)數(shù)據(jù)不存在時,則將陀螺儀數(shù)據(jù)和編碼器數(shù)據(jù)進(jìn)行卡爾曼濾波算法優(yōu)化;無論相機(jī)數(shù)據(jù)是否存在,經(jīng)過數(shù)據(jù)優(yōu)化后,都將得到一個較為科學(xué)合理的機(jī)器人偏移和偏角信息。

        4)運(yùn)動控制

        運(yùn)動控制節(jié)點(diǎn)是整個軟件框架中最基礎(chǔ)的部分,它實(shí)現(xiàn)了軟件信息到硬件信息的轉(zhuǎn)換功能,具體來說,就是將數(shù)據(jù)優(yōu)化節(jié)點(diǎn)提供的偏差和偏角信息通過串口通信發(fā)送給嵌入式控制板,嵌入式控制板對收到的信息作出響應(yīng),依據(jù)期望速度,根據(jù)偏移和偏角信息計算出為修正該偏差和偏角左右輪電機(jī)分別所需的速度,最終轉(zhuǎn)化為左右輪電機(jī)的實(shí)際電壓。同時,并通過PID算法對左右輪電機(jī)轉(zhuǎn)速進(jìn)行精確控制,確保機(jī)器人按指定的速度和方向運(yùn)動。

        5結(jié)論

        本文基于開源機(jī)器人操作系統(tǒng)ROS設(shè)計了一個機(jī)器人導(dǎo)航系統(tǒng)架構(gòu)。在該架構(gòu)下,首先對多種傳感器進(jìn)行數(shù)據(jù)采集,然后進(jìn)行多傳感器組合導(dǎo)航的數(shù)據(jù)優(yōu)化處理,以實(shí)現(xiàn)精準(zhǔn)的控制機(jī)器人運(yùn)動。本文為廣大機(jī)器人研究人員,尤其是多傳感器組合導(dǎo)航研究人員提供了一套切實(shí)可行方案。在本文設(shè)計的機(jī)器人架構(gòu)之上,可以進(jìn)行自主導(dǎo)航等更復(fù)雜應(yīng)用的研究。endprint

        猜你喜歡
        導(dǎo)航架構(gòu)設(shè)計機(jī)器人
        基于安全性需求的高升力控制系統(tǒng)架構(gòu)設(shè)計
        基于快速檢索功能于GPS地圖導(dǎo)航的運(yùn)用
        為現(xiàn)代農(nóng)業(yè)“導(dǎo)航”
        基于激光導(dǎo)航路徑識別的電力巡檢智能機(jī)器人設(shè)計
        智能手機(jī)菜譜軟件的設(shè)計
        科技視界(2016年4期)2016-02-22 12:01:22
        機(jī)器人來幫你
        認(rèn)識機(jī)器人
        機(jī)器人來啦
        認(rèn)識機(jī)器人
        對稱加密算法RC5的架構(gòu)設(shè)計與電路實(shí)現(xiàn)
        中文字幕一区乱码在线观看| 国产麻豆精品一区| 白丝美女被狂躁免费视频网站| 亚洲欧美日韩精品香蕉| 西西少妇一区二区三区精品| 伊人狼人大香线蕉手机视频| 亚洲第一女人的天堂av| 欧美老妇牲交videos| av鲁丝一区鲁丝二区鲁丝三区 | 中文人妻无码一区二区三区信息| 亚洲色偷拍一区二区三区| 日韩中文字幕无码av| 五十路一区二区中文字幕| 少妇高潮久久蜜柚av| 精品国产品香蕉在线| 尤物在线精品视频| 成人性做爰aaa片免费看| 人妻夜夜爽天天爽三区麻豆AV网站| 欧美日韩亚洲国产千人斩| 久国产精品久久精品国产四虎 | 久久最黄性生活又爽又黄特级片| 青青久在线视频免费视频| 不卡的av网站在线观看| 国产亚洲精品美女久久久| 黑人巨大videos极度另类| 国产午夜精品久久久久99| 亚洲每天色在线观看视频| 午夜一区二区三区福利视频| 男女视频在线观看一区| 东京道一本热中文字幕| 亚洲羞羞视频| 欧洲AV秘 无码一区二区三 | 国内精品久久久久久久亚洲 | 日本成熟妇人高潮aⅴ| 一区二区三区国产黄色| 国产果冻豆传媒麻婆精东| 人妻无码αv中文字幕久久琪琪布| 国产精品一区二区久久乐下载| 国产精品一区二区久久毛片| 青青草亚洲视频社区在线播放观看 | 精品人妻无码一区二区三区蜜桃一 |