首页 > 其他分享 >松灵机器人scout mini小车 自主导航(1)

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

时间:2024-07-08 15:32:01浏览次数:18  
标签:mini 小车 sudo 松灵 scout ROS

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

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

1.硬件连接准备

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

图片名称

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

img

注意:一根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将小车速度降低到可控范围内,并打开遥控器确保随时接手控制防止发生碰撞。再运行节点命令
终端的控制界面如下所示:
img

标签:mini,小车,sudo,松灵,scout,ROS
From: https://www.cnblogs.com/binbin2002/p/18289866

相关文章

  • MinIO
    MinIO基于ApacheLicensev2.0开源协议的对象存储服务,可以做为云存储的解决方案用来保存海量的图片,视频,文档。由于采用Golang实现,服务端可以工作在Windows,Linux,OSX和FreeBSD上。配置简单,基本是复制可执行程序,单行命令可以运行起来。MinIO兼容亚马逊S3云存储服务接口,非常适合......
  • mini-lsm通关笔记-字符相关操作
    本文捋一下mini-lsm中的字符相关操作[u8]Vec<u8>BytesBufKeySliceKeyBytes[u8]和Vec<u8>这两个是rust内置的数据类型。[u8]:切片本身并不拥有数据,而是引用了数据。它由一个指向数组开始处的指针和一个表示数组长度的计数器组成。[u8]类型通常写作&[u8],这是因为切片通......
  • 题解:CF1256D Binary String Minimizing
    贪心。数据范围\(n\le10^{6}\),因此我们要用时间复杂度为\(\mathcal{O}\left(n\right)\)的算法来解决这个问题。思路从左至右扫一遍序列,如果遇到\(10\),则要将这个\(0\)交换到前面的位置。由于是字典序最小,\(0\)应该尽量在最高位。现在需要知道这个\(0\)被交换到哪......
  • 如何通过minIO在后端实现断点续传
     首先是黑马的媒资管理模块流程图:前端负责计算媒资文件的MD5值,同时对媒资文件进行分块。后端需要以下几个接口:1.检查分块是否存在(传入参数为视频唯一标识信息与块信息):检查当前分块是否已经上传至minIO。即通过前端传来的MD5值与chunk的具体值,进入minIO进行核对,如何有那么就是......
  • MinIO使用记录
    探索MinIO:高性能、分布式对象存储解决方案注:本文除代码外多数为AI生成最近因为有项目需要换成AmazonS3的云存储,所以把之前做过的minio部分做一个记录,后面也会把基于这版改造的S3方法发出来记录。MinIO简介MinIO是一款高性能、分布式对象存储服务器,设计用于在大规模环境中......
  • Minimum_jerk参考代码
    1.参考代码importnumpyasnpimportmatplotlib.pyplotaspltfromcvxoptimportmatrix,solversdefgenQk(T_down,T_up):Q=np.zeros((6,6))Q[3][4]=72*(T_up**2-T_down**2)Q[3][5]=120*(T_up**3-T_down**3)Q[4][5]=360*(T_up*......
  • windows terminal 中运行 miniconda 和 pip 的虚拟环境
    pip创建的虚拟环境使用命令python-mvenvhf创建虚拟环境后,在激活时,会遇到一个错误,原因是powershell启动了严格的审查脚本策略。这个错误信息表明你尝试在PowerShell中运行一个脚本(具体是激活一个虚拟环境),但是你的系统设置阻止了未经签名的脚本的执行。PowerShell有一个叫......
  • springboot集成minIO
    文件系统:负责管理和存储文件的系统软件。操作系统通过文件系统提供的接口去存取文件,用户通过操作系统访问磁盘上的文件minIO:轻量级服务分布式文件系统,适合存储非机构化数据。采用去中心化共享架构,结点之间是对等关系。 端口号为9000,初次登录账号密码都是minioadmin minIO中......
  • 《企业实战分享 · 对象存储服务OSS、S3、MinIO》
    ......
  • 打包警告:chunk common [mini-css-extract-plugin]Conflicting order between:
    1.问题webpage5打包告警:chunkcommon[mini-css-extract-plugin]Conflictingorderbetween:2.解决方案:-vue.config.js配置//vue.config.jsmodule.exports={//...,css:{extract:{ignoreOrder:true},}};或者:调整组件引入的顺序3.......