SCOUT 的ROS PACKAGE 介绍和使用

news/2024/12/5 5:48:03/

在这里插入图片描述
​松灵课堂又开课啦!!!通过上节课内容(如何通过开源SDK控制SCOUT?),我们知道通过开源SDK,客户可以快速通过指令的形式与小车底盘进行控制,省去客户自主适配协议的过程,省去客户开发的过程。这节课,我们来聊一聊SCOUT的ROS PACKAGE 介绍和使用。

松灵课堂 | SCOUT 的ROS PACKAGE 介绍和使用

前期准备

■ 硬件准备
● CANlight can通讯模块 X1
● Thinkpad E490 笔记本电脑 X1
● AGILEX SCOUT 2.0 移动机器人底盘 X1
● AGILEX SCOUT 2.0 配套遥控器FS-i6s X1
● AGILEX SCOUT 2.0 顶部航空插座 X1
在这里插入图片描述

ROS package 说明

● scout_bringup: launch and configuration files to start ROS nodes

● scout_base: a ROS wrapper around Scout SDK to monitor and control the robot

● scout_sdk: Scout SDK customized for ROS

● scout_msgs: scout related message definitions

● (scout_ros: meta package for the Scout robot ROS packages)

下图是是整个ros package的一个基本框架说明,或许它可以帮助你理解整个ros package内部是如何工作的,他们之间是相互联系的。其中最底层的是移动机器人底盘,它通过can或者usart实现运行在计算平台的sdK进行基本信息的获取,具体可以根据scout_sdk了解更多信息,进而对scout_sdk,仿真部分是基于Webots,构建起的仿真环境。
在这里插入图片描述
其中上图中紫色部分是包含在这个ros-package中的部分。

通讯接口设置

设置串口

通常来说,usb转串口设备在Linux或者Ubuntu系统中会被自动识别为“/dev/ttyUSB0” 或者看起来类似的设备,这个可以通过指令查询。

$ ls -l /dev/ttyUSB*

如果在打开设备的操作过程中出现了"… permission denied …"的错误,有可能因为权限的原因造成的,您需要向您的用户帐户授予端口访问权限,可以通过如下指令:

$ sudo usermod -a -G dialout $USER

需要重新登录账户才能使刚刚的操作生效。

配置 CAN-TO-USB适配器

  1. 设置CAN转USB适配器,启用gs_usb内核模块(本指令需要搭配相应的硬件设备才可以使用,需要Linux内部版本>4.5)
$ sudo modprobe gs_usb
  1. 设置can设备参数
$ sudo ip link set can0 up type can bitrate 500000
  1. 如果在前面的步骤中没有发生错误,您可以使用以下指令查看can设备
$ ifconfig -a

在这里插入图片描述
4. 安装和使用can-utils来测试硬件

$ sudo apt install can-utils
  1. 测试指令
# receiving data from can0
$ candump can0
# send data to can0
$ cansend can0 001#1122334455667788

文件中提供了 "./scripts"文件夹里的两个脚本以便于设置。您可以在首次安装时运行“ ./setup_can2usb.bash”,并在每次拔出和重新插入适配器时运行“ ./bringup_can2usb.bash”以启动设备。

ROS package 的基础使用

  1. 安装 ROS packages 依赖
 $ sudo apt install ros-melodic-teleop-twist-keyboard

如果你使用是 Kinetic版本,把上述指令中的“melodic” 改成 “kinetic” 即可。

  1. 将scout ros package 下载至的您的catkin 工作空间,并编译
    (下面的操作是假定你的catkin编译工作空间在: ~/catkin_ws/src 目录下)
$ cd ~/catkin_ws/src
$ git clone https://github.com/westonrobot/scout_ros.git
  1. 由于本教程中不涉及仿真内容,故需要将webots 部分文件及其包含的代码删除。其文件为scout_webots_sim,将其删除即可。

  2. 编译scout ros

$ cd ..
$ catkin_make

在这里插入图片描述
5. 启动 ROS nodes
● 开始 the base node

$ roslaunch scout_bringup scout_minimal.launch

在这里插入图片描述
如果您选择用串口:

$ roslaunch scout_bringup scout_minimal_uart.launch

● 启动 keyboard tele-op节点

$ roslaunch scout_bringup scout_teleop_keyboard.launch

在这里插入图片描述
安全注意事项:
键盘默认命令值很高,请确保在开始使用键盘控制机器人之前降低速度命令!必要时,请准备好遥控器以接管控制。

本次课堂给大家初步介绍了 ROS 和 ROS package 的基础使用,大家可以通过这节课学习到如何使用键盘控制底盘,给底盘发送指令。下一节课,我们将给大家讲解 SCOUT 在 ROS 环境下的仿真,看到SCOUT更多的开发可行性。


http://www.ppmy.cn/news/232573.html

相关文章

【空心杯四旋翼TinyLeaf】介绍

写在最前: 时间过得很快,转眼我就要毕业了,本科四年中,实验室的学长学弟都给我非常多的帮助,我也在很多开源项目中学习到很多。作为开源精神的受益者,我觉得也应该把自己的工作分享给大家。 我一直对飞行器…

Prometheus V2仿真开发套件全新上市,实现一键启动仿真

产品介绍: Prometheus仿真开发套件是阿木实验室为Prometheus仿真以及matlab仿真专门打造的一款小型X86计算主机,预装仿真所需环境及全部资源,搭载Prometheus地⾯站和Prometheus仿真启动器,⽀持到⼿即用,能够帮助开发者…

算法题:按字符串中的数字大小排序,python实现

要求:给定一个句子,句子中的每个单词都包含一个数字,要求根据该数字大小对原句子重新排序。 测试用例如下: "pyt3hon h1as s5ome po7wer functi9ons" --> "h1as pyt3hon s5ome po7wer functi9ons" "…

redis6.2.6安装

目录 1、将安装包上传到Linux系统 2、查看是否安装gcc环境 3、解压redis安装包 4、进入目录号cd /opt/redis-6.2.6进行make编译以及make install安装即可 5、判断是否安装成功 6、如何启动 6.1、前台打开(不推荐),关了之后就不能操作了 6…

精通Java数组的艺术:从初学者到高手的进阶之路(一)

⭐ 数组⭐ 数组的定义⭐ 创建数组和初始化⭐ 数组常见操作⭐ 数组的遍历⭐ for-each 循环⭐ 数组的拷贝⭐ java.util.Arrays 类 ⭐ 数组 数组的概念 ⭐ 数组的定义 数组是相同类型数据的有序集合。其中,每一个数据称作一个元素,每个元素可以通过一个索引…

联发科有没有高端处理器_联发科处理器哪些好 2019联发科处理器排名

导语:联发科处理器在智能数码上是经常能听见的,而其处理器在不断的革新中也有着很强劲的性能,那么联发科处理器到底哪些品质是比较不错的呢?下面排行榜123网就整理了2019联发科处理器排名给您作为参考! 一、联发科 MT6771V 联发科 MT6771V在2019联发科处理器排名中综合的性…

苹果处理器排行_最新 iOS 性能排行榜,你的设备落伍了吗?

iOS性能排行 近日国内知名跑分软件安兔兔,发布了三月份的 iOS 设备性能排行榜,虽然安兔兔的跑分一直被人质疑不准确,很娱乐。 但毕竟是国内最大且唯一的老牌跑分软件,其得出的综合跑分还是值得参考的。 以下截图来自 安兔兔 官网&…

处理器排行_2020新电脑处理器排行榜

虽然电脑重要硬件设备大家都非常的关心,但是最关注的就是电脑的CPU处理器的性能情况,那么2020年的CPU天梯图排行榜有哪些呢?如果不知道的朋友,情况小编给您分享的十大CPU排行榜吧。 下面是2020新电脑处理器排行榜: CPU性能天梯图…