ROS( Robot Operating System),機(jī)器人操作系統(tǒng)。它的目標(biāo)是為機(jī)器人軟件開(kāi)發(fā)者提供一個(gè)靈活的框架,其中包含一系列的工具、庫(kù)和約定。同時(shí),ROS還可以為異質(zhì)計(jì)算機(jī)集群,提供了類似操作系統(tǒng)的中間件。
思嵐的自主定位導(dǎo)航方案作為機(jī)器人開(kāi)發(fā)不可或缺的一部分,一直以來(lái)注重和ROS生態(tài)的建設(shè)。之前,思嵐實(shí)現(xiàn)了ROS與RPLIDAR 的結(jié)合,詳情可戳:ROS與RPLIDAR結(jié)合使用說(shuō)明及問(wèn)題匯總
而原先SLAMWARE一直是一個(gè)相對(duì)獨(dú)立的系統(tǒng),現(xiàn)在我們發(fā)布了ROS驅(qū)動(dòng),更進(jìn)一步的擁抱ROS,結(jié)合配套的ROS驅(qū)動(dòng),產(chǎn)生的地圖和定位數(shù)據(jù)可無(wú)縫集成到ROS環(huán)境中。
今天小嵐將教你如何一步步將SLAMTEC Mapper結(jié)合ROS,獲取建圖雷達(dá)產(chǎn)生的地圖和定位數(shù)據(jù),并將其用于ROS的其他組件中進(jìn)行機(jī)器人開(kāi)發(fā)和應(yīng)用。
本教程分為四步:環(huán)境準(zhǔn)備、創(chuàng)建ROS工作區(qū)間、啟動(dòng)SLAMTEC Mapper、運(yùn)行
下面,就讓我們按照上面的步驟,讓SLAMTEC Mapper在ROS上運(yùn)行,全面兼容ROS。
1、環(huán)境準(zhǔn)備
開(kāi)發(fā)環(huán)境 :
基于Ubuntu 16.04操作系統(tǒng),并裝有ROS軟件包。
硬件需求:
為使用ros sdk,您需要一臺(tái)SLAMTEC Mapper設(shè)備或者基于 SLAMWARE導(dǎo)航定位系統(tǒng)的移動(dòng)機(jī)器人,開(kāi)啟并配置合適的IP地址。slamware_ros_sdk_server_node節(jié)點(diǎn)啟動(dòng)后將嘗試連接該機(jī)器人。
下載&安裝SDK:
在前序步驟準(zhǔn)備就緒后,請(qǐng)?jiān)谒紞箍萍脊俜骄W(wǎng)站【www.gs1888.com】的【下載與支持】頁(yè)面,下載適合您平臺(tái)的ROS SDK并解壓至本地。
下載安裝后,Slamware ROS SDK包含了您開(kāi)發(fā)過(guò)程中可能會(huì)用到的資源、代碼,其目錄結(jié)構(gòu)組織如下:
2、ROS工作空間創(chuàng)建
創(chuàng)建ROS工作空間:
將存放源碼的src放入一個(gè)空的工作目錄,如:catkin_ws,使用catkin工具初始化工作空間
cd catkin_ws/src
catkin_init_workspace
編譯:
cd ..
catkin_make
配置工作空間系統(tǒng)環(huán)境:
source devel/setup.bash
為了以后不要每次都輸入上面這個(gè)source命令,把該命令寫(xiě)入.bashrc中,這樣每次啟動(dòng)terminal就會(huì)自動(dòng)source啦。
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
查看下ROS_PACKAGE_PATH環(huán)境變量,看你的工作空間是否正確包含進(jìn)去了。
echo $ROS_PACKAGE_PATH
3、啟動(dòng)SLAMTEC Mapper
拿到SLAMTEC Mapper后,套件如下,以M1M1為例,安裝步驟如下:
4、運(yùn)行
SLAMTEC Mapper上電運(yùn)行之后,在Linux系統(tǒng)下連接SLAMWARE —XXXX的Wifi,然后連接啟動(dòng)節(jié)點(diǎn)。
XXX具體參照設(shè)備下方的二維碼紙貼條,如35388D
>>> 如果搜索不到SLAMWARE —— XXXX設(shè)備號(hào)的話,請(qǐng)稍等片刻,或者嘗試重新連接。
啟動(dòng)節(jié)點(diǎn):
若移動(dòng)機(jī)器人處于AP模式,連接機(jī)器人WIFI,啟動(dòng)節(jié)點(diǎn)。
roslaunch slamware_ros_sdk slamware_ros_sdk_server_node.launch ip_address:=192.168.11.1
如果正常的話,即可通過(guò)RViz界面查看到正常畫(huà)面。
通過(guò)RViz查看:
roslaunch slamware_ros_sdk view_slamware_ros_sdk_server_node.launch
最后,我們看下SLAMTEC Mapper在RViz中的建圖效果如何。
得到的這份地圖可以放大、縮小、移動(dòng)、調(diào)整3D視角,總之,按照你想操作的一切去操作。
關(guān)鍵字:SLAMTEC Mapper