999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ROS的服務機器人關鍵技術研究與實現

2019-12-19 02:07:13孫弋張松
軟件 2019年11期

孫弋 張松

摘? 要: 針對服務機器人服務業務的無監督實現問題,設計并實現了一種基于ROS(機器人操作系統)的智能服務機器人系統。該系統包括管理中心、機器人本體和客戶端,采用基于ROS系統的node節點分布式架構。管理中心由服務器組成,管理中心是任務管理與執行調度的核心組成部分,負責對系統內各種資源進行管理和調度,機器人本體使用高性能核心處理器搭載環境傳感器,通過基于EKF(擴展卡爾曼濾波)的SLAM算法解決移動機器人導航問題,客戶端與機器人本體的信息交互采用基于rosbridge的節點通信技術。機器人系統通過語音交互技術實現了語音自主導航。本設計在實驗室環境采用Turtlebot機器人進行實際測試,測試結果表明本方案可以初步實現機器人基礎服務場景中的自主定位與導航及語音控制功能。

關鍵詞: ROS;自主導航;服務機器人;人機交互

【Abstract】: Aiming at the unsupervised implementation of service robot service business, an intelligent service robot system based on ROS (Robot Operating System) is designed and implemented. The system includes management center, robot ontology and client, and adopts node node distributed architecture based on ROS system. Robot ontology uses high-performance core processor to carry environmental sensors. SLAM algorithm based on EKF (Extended Kalman Filter) is used to solve the navigation problem of mobile robots. Rosbridge-based node communication technology is used for information interaction between client and robot ontology. Robot system realizes speech autonomous navigation through voice interaction technology. The design uses Turtlebot robot to test in the laboratory environment. The test results show that the scheme can initially realize autonomous positioning, navigation and voice control functions in the basic service scenario of the robot.

【Key words】: ROS; Autonomous navigation; Service robot; Human-computer interaction

0? 引言

隨著人工智能和物聯網技術的發展,服務機器人在服務行業開始得到廣泛應用,服務機器人成為節約人力和經濟成本,解決老齡人口護理等方面的一種可行方案[1],服務機器人在特定場景下的應用成為當前機器人應用研究領域的難點和重點,美國卡耐基梅隆大學與Intel公司共同研制出助老助殘的服務機器人,可以完成擺放桌椅、端茶端菜等基本的日常生活服務[2],文獻[3]研制的Care-O-bot4機器人為應對多樣性的環境而采用了模塊化設計,通過自身的攜帶傳感器識別特定人員的手勢或者語音來完成相應的指定任務。上海交通大學研制出“交龍”餐廳仿人雙臂移動服務機器人利用人臉識別技術[4]可以和語音交互[5]。同時該機器人搭載激光雷達? 可用于室內自主定位與導航[6],可用于餐廳和展覽館。本文針對服務機器人在服務場景中自主導航? 及語音交互技術進行了分析,并設計實現了基于ROS[7]的服務型機器人以滿足在不同場景下完成服務任務。

1? 系統設計方案

服務機器人系統主要功能由管理中心、機器人本體和客戶端實現,如圖1所示。管理中心由服務器組成、機器人本體采用高性能處理器作為主控板,嵌入式計算單元作為從控制器。主控制板負責各個子模塊,包括控制機器人運動底盤的運動功能實現,機載傳感器數據采集及處理、系統各功能模塊的數據交互及通信及服務業務的管理與實現等,從控制器負責運動底盤相關傳感器數據采集與處理和電機的實時控制等;客戶端系統主要負責服務對象在服務區域內服務任務的管理和人機交互界面的設計與實現,具體開發過程中,各模塊硬件以及軟件部分進行模塊化開發,為今后的更新和后續升級提供? 便利。

(1)管理中心:管理中心由服務器承載,負責將服務機器人的任務信息進行持久化及任務調度規劃。在系統運行期間,因此數據持久化的實現對機器人的任務管理與調度、系統性能分析等具有重要的意義。

(2)機器人主控模塊:即機器人的處理中心。本機器人采用interi5來實現。主要接收服務對象的請求命令、任務;機器人根據設定任務自主的導航和速度控制,并自主導航到指定服務區域。

(3)定位模塊:本文中定位模塊采用IMU模塊,達到機器人準確的移動到指定位置區域。

(4)避障模塊:為了避免機器人在運動過程中發生故障或碰撞,保障安全性,本系統在機器人上搭載激光雷達和碰撞檢測模塊,進行障礙物判斷實時避障。

(5)運動驅動模塊:主要由電機驅動器和兩個大功率直流減速電機組成。驅動模塊根據主控制器發送控制命令驅動電機運動。

(6)客戶端系統:客戶端由平板電腦承載,實現觸摸、語音等人機交互,從而提高用戶體驗。

2? 軟件系統設計

系統軟件主要包含三個部分,分別為管理中心、服務機器人系統和客戶端。機器人控制系統軟件主要負責服務機器人的動作自主導航,完成服務功能;客戶端界面主要負責顧客的位置信息、發送請求服務指令等。

2.1? 管理中心

管理中心包括訪問用戶管理模塊、服務管理模塊以及任務調度模塊。其主要功能有:

(1)信息管理:信息管理包含了對用戶的信息管理及服務業務的信息管理,常見有插入記錄、刪除記錄、更新記錄、清除數據和查詢記錄等。

(2)服務任務的調度:通過獲取和處理任務請求信息:負責提取請求(Request)中的信息,并根據請求類型調用相應邏輯處理函數;完成任務調? ?度規劃返回響應(Response),管理中心設計如圖2所示。

2.2? 機器人本體軟件設計

機器人接受的消息主要包括目標點坐標信息及機器人交互信息,機器人接受服務請求后明確目標點坐標信息后導航系統根據環境進行機器人的導航,并將導航的處理結果以轉速和轉矩的方式發送到運動控制層;運動控制層控制電機的轉動,實現運動的控制,使機器人移動到目標點。服務機器人工作流程圖如圖3所示。

服務機器人導航過程中可能需要對原始地圖據處理,且可能會遇到一些靜態和動態障礙物,需要實時獲取機器人位置信息以及障礙物位置信息,并對這些障礙物進行避讓。本文使用自適應蒙特卡洛定位算法(AMCL),AMCL是自主移動機器人在二維環境下的基于概率的定位系統,它主要使用粒子濾波對機器人在已知的地圖中進行定位。導航時機器人首先會進行全局路徑規劃,從而計算出移動機器人從出發點到目標點的運動路線。路徑規劃是通過Dijkstra最短路徑的算法實現。導航過程中的局部路徑規劃會對局部進行避障的規劃,其實現的算法是動態窗口法(Dynamic Windows Approach)[8],最終機器人依照局部的最優路徑運動,通過對路徑的分解融合,生成實時環境中的運動控制序列發布給里程計,讓移動機器人進行自主導航。

2.3? 客戶端軟件設計

客戶端作為服務機器人系統的一部分,為了有效的完成與機器人之間的交互就需要客戶端的機器人配合一起使用,如圖4所示用戶通過客戶端與后

臺通信完成登錄及授權等業務內容后,客戶端將會把該用戶的位置的信息發送到機器人。同時客戶端能顯示機器人所在的位置。機器人在接收到請求后會對請求做出響應,如自動導航到指定的位置等。

本項目中使用了語音識別、義識別、語音合成等功能模塊。配合了ROS機器人操作系統,同時使用離線與在線功能結合的方式構建整個語音交互系統活,更加智能的與機器人進行交互。

3? 關鍵技術

服務機器人的在服務區完成自主導航的同步定位與建圖技術,客戶端節點,管理中心節點,機器人節點之間的通信技術,用戶與機器人語音交互技術等復雜多任務的處理是實現服務機器人業務能力關鍵,因此需采用分布式的系統管理架構對各個節點進行管理,機器人操作系統(Robot Operating? System)是一個應用于機器人上的操作系統,通過點對點的設計讓機器人的進程可以分別獨立運行,適用于機器人這種多任務的復雜場景。

3.1? 分布式系統框架

ROS作為一款次級操作系統,運行與Linux之上提供類似于操作系統的功能。ROS的分布式架構,使得每個程序運行節點都是獨立的,且可根據要求使其獨立或松耦合運行。程序運行時,所有進程以及所進行的數據處理,將會通過一種點對點的網絡形式表現出來,主要包括:節點(node)、節點管理器(Master)、消息(message)、主題(topic)、服務(service)。

(1)節點(Node):表示可執行任務程序。在ROS中每一個節點負責一個任務,從而對每個節點實現松散耦合,不同的節點可以構成成一個完整的系統。

(2)節點管理器(Master):主要用于管理節點的名稱注冊和查找。同時可以設置節點之間的通信。

(3)消息(Message)是節點之間通信的內容,消息包含一個節點到另一個節點的信息數據。

(4)主題(Topic):表示消息通信媒介。每條消息發布到相應的主題,主題對其名稱和內容進行識別。節點可以通過訂閱某個主題,接收來自其他節點的消息。

(5)服務(Service):是節點間另一種通信方式,在ROS中,發布主題時,正在發送的數據能夠以多對多的方式交互。但要求請求和回復是成對的消息結構時需要通過服務來進行。

3.2? 同時定位與地圖構建(SLAM)技術

移動機器人SLAM問題是移動機器人在陌生環境中,通過外部傳感器(如測距傳感器和深度傳感器等)開始采集周圍環境信息。然后將里程計采集到的機器人數據和外部傳感器采集到的環境信息相融合構建環境地圖,最后通過構建好的環境地圖來實現移動機器人的自定位。基于EKF的SLAM算法能夠很好地處理不確定信息,可用來處理移動機器人導航問題。整個擴展卡爾曼SLAM(EKF—SLAM)算法的過程可分為下列四個過程:預測、觀測、數據關聯、更新。其中定義A、H分別是f、h對X偏導的雅可比矩陣:

3.3? 機器人系統通信技術

機器人的服務能力是通過組件之間通信交互,rosbridge是ROS官方為開發者提供的ROS與非ROS通信功能包,rosbridge主要包含兩個部分,Rosbridge Protocol和Rosbridge Implementation。其中Protocol部分提供了非ROS系統和ROS系統通信的具體格式,包括話題的訂閱,消息的發布,服務的調用,參數的設置和獲取,圖片信息的傳遞等等,Implementation部分是rosbridge的具體實現。

ROS的通信核心是節點,由服務節點發出話題,其他節點進行訂閱,來完成數據交換。如圖5所示,rosbridge忽略掉ROS內部通信規則,提升了抽象級別,內部用topic和services完成通信,在外部用JSON數據格式進行通信,目前支持的外部協議有websocket、TCP以及UDP[9]計中使用基于TCP協議的rosbridge。

3.4? 語音交互技術

系統獲得語音識別結果后,利用本地相對粗糙的語言模型預先對說話人的意圖進行推理,如果本地推理機接受推理,則會通過資源搜索模塊對本地資源進行調度以作出相應的決倘若無法在本地解析出說話人的意圖,則轉向云端后臺接入語音云服務,最終將結果返回。語音合成將返回的文本信息轉換成音頻輸出。

4? 系統測試

本文采用Turtlebot兩輪差分式運動機器人作為實驗平臺,使用Inter i5作為核心處理器,機器人上搭載思嵐公司激光雷達rplidear A1作為視覺傳感器模塊。

客戶端與機器人通過Rosbridge完成websocke連接然后按照協議接收或者發送ROS消息將地圖顯示在客戶端(如圖7)。

(2)自主導航功能

在客戶端點擊目標點A,會將目標點A的位置信息發送到機器人,機器人在接受到目標點信息后將進行自主導航,同時客戶端可以實時顯示機器人導航的位置信息如圖10所示。機器人使用Dijkstra算法規劃的全局路徑,在實驗環境中設置動態未知障礙物,會顯示局部規劃路徑功能。局部規劃路徑如圖8紅線所示。

從調試結果來看,在機器人行駛過程中,行人走到機器人前方阻止機器人行駛,圖中紅色軌跡是遇到動態障礙物后的軌跡,和全局路徑有一定的偏差,但可以正常到達目標點,可以看出在局部路徑規劃中機器人能夠完成對未知動態障礙物的避障。

(3)語音交互實現

在語音交互模式下,系統開啟后會進入語音喚醒監聽狀態,機器人會等待用戶使用預設關鍵詞來開啟語音交互功能。當語音狀態喚醒后,機器人會進入語音識別監聽狀態,該狀態下,會根據用戶的不同語音指令來開啟相應的語音服務,本實驗以尋找商品為例,當機器人接收到用戶語音指令信息后,機器人將啟動機器人導航模塊,包括機器人路徑規劃等,帶領用戶到達商品的所在位置如圖10所示。

5? 結論

針對服務機器人服務業務的需求及關鍵技術,本文將機器人開發技術、物聯網技術、語音識別技術等多項前沿的技術進行整合,綜合實現信息之間的高效地連接,實現了一種基于ROS的分布式管理的服務機器人系統。在管理中心實現了對用戶和任務的管理,基于rosbridge客戶端實現了基礎業務中的機器人位置信息交互及與控制中心服務信息交互,通過語音交互技術實現了用戶語音控制機器人,同時機器人本體實行了自主導航功能,測試結果表明本方案可以初步滿足機器人基礎場景中業務服務功能。為滿足不同業務場景下的機器人服務任務奠定了基礎。

參考文獻

[1]于清曉. 輪式餐廳服務機器人移動定位技術研究[D]. 上海: 上海交通大學, 2013.

[2]Srinivasa S S, Ferguson D, Helfrich C J, et al. HERB: a home exploring robotic butler[J]. Autonomous Robots, 2010, 28(1): 5-20.

[3]Kittmann R, Frohlich T, Schafer J, et al. Let me introduce myself: I am Care-O-bot4, a gentleman robot[J]. Mensch and Computer 2015-Proceedings, 2015: 223-232.

[4]Liu. M, Li S, Shan S, et al. AU-inspired Deep Networks for Facial Expression Feature Learing[J]. Neurocompting, 2015, 159(C): 126-136.

[5]譚耀. 基于語音控制的移動機器人控制系統設計與實現[D]. 哈爾濱: 哈爾濱工業大學, 2012: 50-55.

[6]張文. 基于多傳感器融合的室內機器人自主導航方法研究[D]. 中國科學技術大學, 2017.

[7]左軒塵, 韓亮亮, 莊杰, 等. 基于ROS的空間機器人人機交互系統設計[J]. 計算機工程與設計, 2015(12): 3370-3374.

[8]張華. 基于ROS的自主移動機器人系統設計與實現[D]. 哈爾濱: 哈爾濱工業大學, 2016.

[9]金光, 江先亮. 無線網絡技術教程(第三版)[M]. 清華大學出版社, 2017.

[10]王瑤, 曾慶寧, 毛維. 低信噪比環境下語音端點檢測改進方發[J]. 技術, 2018, 37(5): 457-467.

主站蜘蛛池模板: 亚洲va精品中文字幕| 一区二区三区在线不卡免费| 久久大香伊蕉在人线观看热2| 亚洲熟女中文字幕男人总站| 91美女在线| 国产成+人+综合+亚洲欧美| 一级在线毛片| 91po国产在线精品免费观看| 四虎永久在线视频| 亚洲va在线观看| 国产SUV精品一区二区| 国产精品人人做人人爽人人添| 国产小视频在线高清播放 | 一本大道无码日韩精品影视| 无码中文字幕乱码免费2| av尤物免费在线观看| 亚洲欧美另类中文字幕| 极品国产在线| 日韩精品免费一线在线观看| 日本精品视频一区二区 | 91成人在线免费观看| 国产自在线拍| 亚洲va视频| 五月婷婷导航| 日韩亚洲高清一区二区| 久久黄色影院| 亚洲色图欧美激情| 青青久久91| 国产成人1024精品下载| 在线欧美a| 亚洲国产成人麻豆精品| 爱做久久久久久| 精品欧美日韩国产日漫一区不卡| 亚洲伊人天堂| 亚洲熟女中文字幕男人总站| 亚洲人成人伊人成综合网无码| 欧美成人亚洲综合精品欧美激情| 国产一区二区福利| 亚洲第一成年免费网站| 国产办公室秘书无码精品| 91成人在线免费视频| 亚洲一区精品视频在线| 国产一在线观看| 婷婷中文在线| 国产区成人精品视频| 欧美另类视频一区二区三区| 国产va在线| 国产jizzjizz视频| 91麻豆国产在线| 精品国产美女福到在线不卡f| 国产精品男人的天堂| 亚洲一区无码在线| 天堂中文在线资源| 国产精品伦视频观看免费| 久久天天躁狠狠躁夜夜躁| 亚洲无码电影| 亚洲综合色婷婷| 久久久精品久久久久三级| 国产福利微拍精品一区二区| 九九热精品在线视频| 日韩中文精品亚洲第三区| 日韩 欧美 国产 精品 综合| 91青青在线视频| 一级在线毛片| 国外欧美一区另类中文字幕| 亚洲无码不卡网| 色吊丝av中文字幕| 国产99在线| 在线观看亚洲国产| 成人亚洲国产| 国产无遮挡裸体免费视频| 91成人在线观看| 99精品免费欧美成人小视频| 日韩精品一区二区三区免费| 国产清纯在线一区二区WWW| 亚洲床戏一区| 国产成人精品日本亚洲77美色| 亚洲国产欧美中日韩成人综合视频| 国产一区二区免费播放| 成人福利在线看| 黄色网页在线观看| 国产高清无码麻豆精品|