去年7月,思岚科技推出了业内首款激光建图雷达SLAMTEC Mapper,赢得了市场的高度肯定,它与传统的激光雷达有所不同,内置了SLAM实时地图构建和定位功能,在手持情况下,可直接对外输出高品质地图数据及定位坐标信息,不仅适用于机器人的导航定位,在环境测绘及手持测量等多个领域都能使用。
作为一款激光建图雷达,建图能力必定是其最大的亮点之一,经实测,SLAMTEC Mapper激光建图雷达能在复杂场景中完成十万平方米的高品质建图,不论是在家用、商用、还是轻工业等场景中,均可轻松实现地图的构建。
说的再多,不如实例演示,以下是在一个134m*111m的地下停车场的建图效果展示:
在手持模式下,SLAMTEC Mapper完全不受人工走动带来的颠簸及轻微晃动,同样能实现高品质的建图效果。
SLAMTEC Mapper在手持状态下建图
最终建好的地图展示
当然,SLAMTEC Mapper的高品质建图,不仅体现在室内,在室外强光直射的环境中,其建图能力依旧稳定,以下是室外建图效果展示:
室外建图展示
室外最终建图效果
SLAMTEC Mapper的高品质建图主要是基于思岚科技自主研发的第三代SLAM算法,在长走廊、环路较多、相似等场景下,它能及时清除局部区域的累计误差,做到地图修正及主动探测闭环。
了解完这款高品质建图雷达后,我们再来看看,SLAMTEC Mapper激光建图雷达结合ROS又该如何获取地图及定位数据,并将其用于ROS的其他组件中进行机器人开发和应用。以下主要分为环境准备、创建ROS工作区间、启动SLAMTEC Mapper、运行这四个步骤:
1、环境准备
开发环境 :
基于Ubuntu 16.04操作系统,并装有ROS软件包。
硬件需求:
为使用ros sdk,您需要一台SLAMTEC Mapper设备或者基于 SLAMWARE导航定位系统的移动机器人,开启并配置合适的IP地址。slamware_ros_sdk_server_node节点启动后将尝试连接该机器人。
slamware_ros_sdk_server_node节点启动后将尝试连接该机器人
下载&安装SDK:
在前序步骤准备就绪后,请在思岚科技官方网站【www.slamtec.com】的【下载与支持】页面,下载适合您平台的ROS SDK并解压至本地。
下载安装后,Slamware ROS SDK包含了您开发过程中可能会用到的资源、代码,其目录结构组织如下:
2、ROS工作空间创建
创建ROS工作空间:
将存放源码的src放入一个空的工作目录,如:catkin_ws,使用catkin工具初始化工作空间
cd catkin_ws/src
catkin_init_workspace
编译:
cd ..
catkin_make
配置工作空间系统环境:
source devel/setup.bash
为了以后不要每次都输入上面这个source命令,把该命令写入.bashrc中,这样每次启动terminal就会自动source啦。
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
查看下ROS_PACKAGE_PATH环境变量,看你的工作空间是否正确包含进去了。
echo $ROS_PACKAGE_PATH
3、启动SLAMTEC Mapper
拿到SLAMTEC Mapper后,套件如下,以M1M1为例,安装步骤如下:
4、运行
SLAMTEC Mapper上电运行之后,在Linux系统下连接SLAMWARE —XXXX的Wifi,然后连接启动节点。
XXX具体参照设备下方的二维码纸贴条,如35388D
>>> 如果搜索不到SLAMWARE —— XXXX设备号的话,请稍等片刻,或者尝试重新连接。
启动节点:
若移动机器人处于AP模式,连接机器人WIFI,启动节点。
roslaunch slamware_ros_sdk slamware_ros_sdk_server_node.launch ip_address:=192.168.11.1
如果正常的话,即可通过RViz界面查看到正常画面。
通过RViz查看:
roslaunch slamware_ros_sdk view_slamware_ros_sdk_server_node.launch
最后,我们看下SLAMTEC Mapper在RViz中的建图效果,该地图还可进行放大、缩小、移动等操作。