久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

立即注冊 登錄
返回首頁

uid:156214的個人空間

日志

最強干貨|ROS與RPLIDAR結合使用說明及問題匯總

已有 1138 次閱讀2017-9-7 15:29 | ROS, RPLIDAR

隨著科學技術的不斷發展,服務機器人等諸多智能產品逐漸進入人們的視線,不管是家庭中常見的掃地機器人、還是商場里的導購機器人,要讓他們智能化的完成任務,智能移動與導航是不可或缺的關鍵技術。 

ROS作為機器人軟件平臺,能為異質計算機集群提供類似操作系統的功能,在研究機器人行走等方面起著重要的作用。Llidar作為機器人定位導航的核心傳感器,在機器人自主行走、定位導航方面扮演著重要角色。兩者的結合使用,使得機器人自主定位導航效果更佳。

1. rplidar產品簡介

RPLIDARSLAMTEC—思嵐科技自主研發的激光雷達,目前有A1A2兩款成熟的商業激光雷達產品。兩款產品均可從官網獲取相應的SDK和開發指導文檔。

 A1的測距范圍為0.2~6米,360°全角度測量,每秒掃描2K個點,掃描頻率5~10hz可調

A2的測距范圍為0.15~8米,360°全角度測量,每秒掃描4K個點,掃描頻率5~15  hz可調

 

官方針對rplidar雷達,給出的SDK中提供了相應的frame_grabe可視化測試界面。具體操作流程如下:

1)設備管理器找到對應串口

 

 

2)打開frame_grabe,選擇對應端口查看

 

3frame_grabber界面

詳細資料請參閱官網,包括:

簡介與規格書(Datasheet)、開發套裝使用手冊、通訊接口協議與應用手冊、SDK 用戶手冊。

2. rplidarROS package rplidar_ros介紹

rplidar_ros是國內第一款面向全球ROS開發者推出相應package的激光雷達,其低廉的價格大大推動了激光雷達在ROS中的使用,為國內服務機器人的移動導航和避障相關技術的發展和人才儲備起了很大的推動作用

   ROS之所以能夠很好的在開發者中間推廣起來,就是它建立了一套通用的通訊框架,不同的開發者只需要按照一定的通訊協議,關注相應的數據接口,完成每個模塊的功能就OK,大大避免了機器人重復造輪子的繁瑣過程。

任何一個ROS生態里面的package,往往只需找到相應的wikigithub頁面,就可以清楚的了解其數據接口和內部的實現

2.1 rplidar_ros wiki

wiki主要包含對應rplidar產品功能和package接口和參數的說明和相應的使用流程介紹,以及當前ros生態支持的版本信息。

 

2.2 rplidar_ros github

rplidar_rosgithub主要包含package對應的源碼和package的版本管理和開發者問題對話。

issueopen|closed: 里面主要包含開發者關于rplidar_ros使用的相關問題的對話,如果開發者在使用某個package遇到問題都可以現在此搜索是否有相關問題的解釋與解決方法;

pull request:相關使用者針對原有代碼的改進,希望加入到本倉庫,以提高或增強相應的功能

wiki: 包含更加具體的說明和使用介紹commitbranchreleasecontributorsrplidar_ros開發迭代的記錄

2.3 rplidar_ros消息機制

rplidar_ros的在ROS里面的通訊接口,主要有1個話題(topic) /scan2個服務(servicestop_motorstart_motor./scan主要用于向外部發送雷達數距消息(message),消息格式采用的是sensor_msgs/LaserScan,像避障或slam功能模塊對應的ROS package就需要調用這個話題的雷達數據完成建圖或避障的功能。stop_motorstart_motor主要是用于客戶端調用服務器端關閉和啟動雷達的接口,使系統可以依據需要選擇關閉和開啟雷達


rplidar_ros給出的rplidar.launch實際使用中依據具體的使用往往關注的參數有 端口號(serial_port)、坐標系名稱(frame_id)、正反裝(inverted)。

2.4 rplidar_ros坐標系說明:

rplidar是按照順時針旋轉,SDK數據輸出是帶距離和角度信息的左手系數據,rplidar_ros輸出已經將其轉化為右手坐標系輸出。雷達數據坐標系參照雷達數據線的位置(A2/形狀(A1)和下面的圖示判斷。

 

 

2.5  rplidar_ros啟動說明:

首先要查看插上rplidar后對應端口權限(每次插拔都要賦予一次權限):

ls -l /dev |grep ttyUSB

sudo chmod 666 /dev/ttyUSB0

如果沒有讀寫權限,需要添加其讀寫權限(每次插拔都要賦予一次權限)

 sudo chmod 666 /dev/ttyUSB0

每次這樣插拔都要添加權限很麻煩,可以試試添加設備的udev規則,賦予符合相應規則的設備端口固定權限和端口名稱的映射。執行相應的rplidar端口映射的腳本

./scripts/create_udev_rules.sh

啟動rplidar_ros節點,并在rviz中顯示出雷達數據:

 $ roslaunch rplidar_ros view_rplidar.launch

matlab2016版本當前還提供了ROS的功能接口,我們也可以通過matlab參看激光數據。

 

3. 搭建帶rplidar的機器人系統:

前面詳細介紹了rplidar_ros package的相應功能,如果我要在一臺機器人本體上使用激光雷達需要怎么設置呢?其實在ROS里利用已有package搭建系統實現基本功能你只需要關注好topic/serviceTF frame是否協調起來。TFROS里面主要的概念,它維護著每個數據對應坐標系之間的位姿變換關系。要搭建帶rplidar的機器人ROS系統, 你就需要依據實際安裝信息統一好rplidar坐標系與機器人本體base坐標系的變換關系。實現這種變換關系主要有三種

3.1 通過模型的URDF文件的方式

在已知的機器人模型的URDF中添加描述雷達的joint和描述在機器人本體上的link。下面是曾在turtlebot仿真模型添加rplidar模型的urdf設置。

3.2 TF靜態變換static_transform_publisher方式:

在機器人啟動的launch文件添加靜態TF變換的信息即可,

<node name="base2laser" pkg="tf" type="static_transform_publisher" args="0.07 0 0 0 0 0 1 /base_link /laser 50"/>

3.3 通過rqt/tf_echo查看TF tree的構建情況:

 

4. 利用RPLIDARROS環境建圖:

 

4.1 當前開源的2D激光雷達slamROS package主要有:

gmapping 

ros-perception/slam_gmapping 
ros-perception/openslam_gmapping  

Hector     

tu-darmstadt-ros-pkg/hector_slam

karto 

ros-perception/slam_karto  
ros-perception/open_karto  
skasperski/navigation_2d

cartographer

    googlecartographer/cartographer  

    googlecartographer/cartographer_ros 

 

4.2  TF treegmapping為例)

 

 

4.3 rqt_graphgmapping為例)

4.4 slam建圖效果:

搭建系統取決統一好topic/servicetf的接口名稱,系統運行效果就取決于里面的算法實現,可能變現在具體的啟動配置文件的參數設置和內部算法實現,那就需要查看相應論文和代碼中涉及的算法原理和算法實現。

 

 

5. rplidar相關問題匯總與說明

 

5.1  樹莓派等單板系統出現雷達無法啟動,請檢查是否是供電不足導致的問題

5.2  rplidar_ros啟動前需要設置端口權

5.3  rplidar原始數據輸出是非固定角度增量的輸出形式,rplidar_ros輸出是修正式固定角度增量輸出的數據格式

5.4 當前版本的rplidar_ros發出的激光數據中的ntenstity數據是fake的無效數據,不建議在實際中使用

5.5 rplidar_ros 360全角度輸出的rplidar驅動,如有固定角度需求,請自行添加角度濾波的節點

5.6   使用過程中如有問題,先自行檢查端口權限,tf_treerqt_graph是否正常,如還是有問題,返回windows系統檢查官方驅動是否有問題;


如上述自檢均沒發現問題,但仍運行不正常,可附上檢查的信息以及難點一起發送至support@slamtec.com郵箱,我們將及時為各位小伙伴們解答!


路過

雞蛋

鮮花

握手

雷人

評論 (0 個評論)

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

返回頂部
主站蜘蛛池模板: 亚洲欧美一区二区在线观看 | 日日操操 | 国产精品色婷婷久久58 | 国产成人福利在线观看 | 欧美三级在线 | av先锋资源 | 久青草影院 | 8x国产精品视频一区二区 | 亚洲一区中文 | 九九伦理电影 | 综合网在线 | 亚洲午夜电影 | 一道本一区二区 | 成人av免费在线观看 | 欧美自拍日韩 | 国精久久 | 九九久久国产精品 | 九九综合九九 | 好姑娘影视在线观看高清 | 国内精品久久久久久影视8 最新黄色在线观看 | 美女久久久久久久久 | 午夜视频一区二区三区 | 日本中文字幕一区 | 日韩在线综合 | 中文字幕视频在线观看 | 久久一区 | 日本高清在线一区 | 精品网| 久久新视频 | 91高清视频在线 | 欧美日韩视频一区二区 | 蜜桃视频在线观看免费视频网站www | 亚洲精品一 | 亚洲一区二区在线电影 | www.天天操.com | 荷兰欧美一级毛片 | 久在线 | 91在线精品秘密一区二区 | 国产午夜精品一区二区三区在线观看 | 午夜在线视频一区二区三区 | 亚洲午夜久久久 |