松灵机器人scout mini小车 自主导航(1)

松灵机器人scout mini小车 自主导航

最近实验室来了个松灵机器人scout mini的底座。本着学习的目的对其进行了研究,从最基础的连接开始。

1.硬件连接准备

松灵scout mini提供了航空插头用于can串口转USB的操作。

将通讯航空插头连接到小车对应插口。然后将CAN线引出,将CAN线中的CAN_H和CAN_L分别与CAN_TO_USB适配器相连。然后打开scout mini移动机器人底盘开关,将CAN_TO_USB连接到笔记本的usb口。

具体连接方式如下图所示:

注意:一根usb to can线300 money,用的时候要小心保护

2.测试硬件与CAN通讯

设置CAN_TO_USB对应适配器,检测是否连接成功

1.启动gs_usb 内核模块

复制代码
sudo modprobe gs_usb

2.设置500k波特率适配

复制代码
sudo ip link set can0 up type can bitrate 500000  

3.如果前面没有出现错误,可以使用命令ifconfig -a查看can设备

复制代码
ifconfig -a 

4.安装并使用can-utils来测试硬件

复制代码
sudo apt install can-utils

5。使用命令监听小车底盘数据

复制代码
candump can0

如果前面都没有错,且小车打开状态,执行完candump can0后会源源不断收到小车底盘反馈的数据。

如果出现错误,拔插一下重新运行命令。

3. ROS功能包测试

松灵机器人提供了对应的ROS功能包用于二次开发。可以通过ROS依赖包直接对小车底盘进行控制。

3.1.下载ROS相关依赖

首先需要根据自己的ROS版本安装对应的依赖,我的是ubuntu18,对应的ROS为melodic

复制代码
#根据自己ROS版本更改命令
sudo apt install ros-melodic-controller-manager
sudo apt install ros-melodic-joint-state-publisher-gui
sudo apt install -y libasio-dev

3.2. 新建工作空间

新建工作空间,将代码包复制到新建工作空间下的src目录。然后进行编译

复制代码
mkdir -p scout_ws/src
cd scout_ws/src
git clone --recursive https://github.com/agilexrobotics/ugv_sdk.git
git clone https://github.com/agilexrobotics/scout_ros.git
cd ..
catkin_make

3.3 键盘控制小车移动

在测试完硬件与CAN连接成功后,松灵官方提供了键盘控制小车移动指令

连接电脑usb和小车后,打开电源,运行下面命令:

复制代码
#1)连接设备
sudo ip link set can0 up type can bitrate 500000
#2)测试接受数据
candump can0
#3)运行小车底盘的ros节点 base
cd scout_ws/
source devel/setup.bash
roslaunch scout_bringup scout_mini_robot_base.launch
#4)运行键盘控制节点
source devel/setup.bahs
roslaunch scout_bringup scout_teleop_keyboard.launch

注意:建议先用z将小车速度降低到可控范围内,并打开遥控器确保随时接手控制防止发生碰撞。再运行节点命令

终端的控制界面如下所示:

相关推荐
charlee443 小时前
最小二乘问题详解16:束平差工程实践总结
slam·鲁棒优化·sfm·束平差·外点剔除
orcasdli6 小时前
ROS1+VINS-fusion+RTAB-Map 程序部署记录
ros·slam·vio
胡摩西7 小时前
毫米级精准定位如何实现机器人自动回充:技术原理与工程实现
人工智能·机器学习·机器人·slam·室内定位·agv·roomaps
G果8 小时前
LIO-SAM 学习总结
学习·slam·点云·ros2·导航·nav2·liosam
点云SLAM13 小时前
Tracy Profiler 是目前 C++ 多线程程序实时性能分析工具
开发语言·c++·算法·slam·算法性能分析·win环境性能分析·实时性能分析工具
大江东去浪淘尽千古风流人物2 天前
【claw】 OpenClaw 的架构设计探索
深度学习·算法·3d·机器人·slam
github5actions21 天前
ROS开发实战:如何用rviz文件保存和加载你的SLAM可视化配置(附避坑指南)
ros·slam·rviz·机器人开发
元让_vincent1 个月前
DailyCoding C++ | SLAM里的“幽灵数据”:从一个未初始化的四元数谈C++类设计
开发语言·c++·slam·构造函数·类设计·激光里程计
大江东去浪淘尽千古风流人物1 个月前
【SLAM】Hydra-Foundations 层次化空间感知:机器人如何像人类一样理解3D环境
深度学习·算法·3d·机器人·概率论·slam
大江东去浪淘尽千古风流人物1 个月前
【pySLAM】pySLAM
人工智能·算法·机器学习·概率论·slam