SLAMWARE ROS SDK的基础架构、部署方法和应用示例介绍

描述

ROS作为机器人行业应用最广泛的基础架构之一,是很多用户开发机器人应用的首选框架,如果要在基于ROS开发的系统中集成思岚科技的机器人底盘或者SLAMKit建图定位解决方案,有什么最便捷的方法呢?ROS SDK就是为此而生。本文将为您介绍ROS SDK的基础架构、部署方法和应用示例。

ROS SDK通过内部SDK连接机器人或SLAMKit软件,并作为一个独立的ROS节点运行。ROS SDK可发布标准的激光雷达、定位、地图、传感器数据等消息,同时订阅设置机器人位姿、开始/暂停建图、重定位、移动等控制命令。整体架构如下图所示:

机器人

在本次Slamware ROS SDK 入门引导教程中,你将:

掌握如何下载和安装相应版本的ROS SDK包

了解如何部署和开发SLAMWARE ROS SDK

了解相关的topic功能列表

开发环境需求

基于Ubuntu 16.04操作系统,并装有ROS软件包。

硬件需求

为使用ROS SDK,您需要一台基于Slamware的移动机器人,开启并配置合适的IP地址。slamware_ros_sdk_server_node节点启动后将尝试连接该机器人。

下载和安装SDK

由于ROS和Ubuntu系统有较强的耦合性,且不同版本之间会存在兼容性问题,因此我们推荐用户根据下表安装对应的版本。

Ubuntu系列版本 ROS版本代号 默认GCC版本
16.04 Kinetic GCC5.4
18.04 Melodic GCC7
20.04 Noetic(ROS1)
Foxy(ROS2)
GCC9

我们提供的ROS SDK支持ROS1和ROS2,支持aarch64和x86_64双平台,以及不同的GCC版本,如下所示:

机器人

* 相关版本可至思岚官网下载

Slamware ROS SDK包含了您开发过程中可能会用到的资源、代码,其目录结构组织如下:

目录 说明
docs 参考文档
scr 源码
--slamware_ros_sdk ROS SDK源码包
--slamware_sdk SDK相关头文件与库文件

部署和示例

以x86_64平台的Ubuntu20.04系统为例,将下载到的slamware_ros_sdk_linux-x86_64-gcc9.tar.gz解压后的目录结构如下:

机器人

1、编译

进入slamware_ros_sdk_linux_x86_64_gcc9目录,并执行cakin_make(ROS2则是colcon build)即可

2、配置工作空间系统环境         

 

source devel/setup.bash

 

3、启动节点

若移动机器人处于AP模式,连接机器人WIFI,启动节点。

 

roslaunch slamware_ros_sdk slamware_ros_sdk_server_node.launch ip_address:=192.168.11.1

 

通过rviz查看机器人位姿、地图和激光观测。

 

roslaunch slamware_ros_sdk view_slamware_ros_sdk_server_node.launch

 

机器人

节点说明

点击文末“
slamware_ros_sdk_server_node节点
发布地图、机器人位姿与状态信息,接收控制指令

功能列表

相关topic列表如下:

机器人




审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分