当前位置: 首页 > news >正文

ubuntu22.04 ros2 kobuki底盘控制全纪录

ubuntu22.04 ros2 kobuki底盘控制全纪录

  • 一、先决条件
  • 二、引言
  • 三、安装
    • 3.1、安装以下二进制依赖项
    • 3.2、使用 kobuki_keyop [Issue #21](https://github.com/ros2/teleop_twist_keyboard/issues/21) 的可选依赖项
    • 3.3、使用 kobuki_joyop 的可选依赖项
    • 3.4、新建工作空间
    • 3.5、克隆主存储库和依赖项
    • 3.6、构建系统
    • 安装依赖项xacro
    • 使用以下命令构建系统
    • 3.7、使用以下命令为 kobuki 设置 udev 规则,然后拔下并重新插入 USB 电缆。
  • 四、测试
    • 4.1、检查连接
    • 4.2、Kobuki Teleop 键盘 测试
    • 4.3、ROS使用情况
      • 带导航栈(joysitck 备份)的 Kobuki 系统启动
      • 带纵杆启动的 Kobuki 系统
      • Kobuki KeyOp 控制

一、先决条件

查询已安装的ROS/ROS2版本

printenv ROS_DISTRO

在这里插入图片描述

二、引言

目前网上关于Kobuki的教程多是在 ROS Indigo / Kinetic /Melodic 环境下操作的,但是由于个人要用到ROS2 电脑只好安装Ubuntu22.04,所以出一版 Ubuntu 22.04 ROS2 humble环境下的Kobuki操控教程。

该存储库和依赖项存储库专注于合并原始 Kobuki Base存储库上可用的所有公共分支,并将工作扩展到用于基于 kobuki 的 turtlebot 机器人的完整 ROS2 包。此外,还提供了支持 ARM64 和 AMD64 系统的 Dockerfile 和 kobuki 系统预构建容器。

Kobuki
Ubuntu 22.04
ROS humble

三、安装

3.1、安装以下二进制依赖项

sudo apt install ros-humble-angles ros-humble-diagnostics ros-humble-joint-state-publisher ros-humble-ros-testing
  • ros-humble-angles:提供角度计算工具(如弧度/角度转换、归一化角度等),常用于机器人运动学和控制模块中处理关节角度数据。
  • ros-humble-diagnostics:用于监控和诊断 ROS 系统状态(如节点健康、CPU/内存占用、传感器连接状态等),帮助开发者排查系统异常。
  • ros-humble-joint-state-publisher:发布机器人关节状态信息(如位置、速度、力矩),是机器人可视化(如 Rviz 中模型关节运动)和控制的基础组件。
  • ros-humble-ros-testing:提供 ROS 2 测试框架,支持单元测试、集成测试和性能测试,确保代码可靠性(如节点通信、消息处理逻辑验证)。

3.2、使用 kobuki_keyop Issue #21 的可选依赖项

sudo apt install xterm
  • xterm 是 X Window System(图形界面环境)下的一个终端模拟器(terminal emulator)程序。

3.3、使用 kobuki_joyop 的可选依赖项

sudo apt install ros-humble-teleop-twist-joy ros-humble-joy
  • ros-humble-teleop-twist-joy:手柄速度控制节点
    核心功能:订阅 /joy 话题的手柄数据,将其映射为机器人运动速度指令(geometry_msgs/Twist 消息),并发布到 cmd_vel 话题。
  • ros-humble-joy:手柄硬件接口驱动
    核心功能:作为手柄与 ROS 2 系统的桥梁,提供手柄按键和摇杆数据的采集与发布。

3.4、新建工作空间

mkdir -p kobuki-ros2_v2_ws/src
cd kobuki-ros2_v2_ws/src
mkdir applications devices

3.5、克隆主存储库和依赖项

cd applications 
git clone --recurse-submodules https://github.com/AIResearchLab/kobuki.git
git clone --recurse-submodules https://github.com/AIResearchLab/kobuki_dependencies.git
  • –recurse-submodules(可简写为 -r)用于递归克隆仓库及其包含的所有子模块

3.6、构建系统

安装依赖项xacro

sudo apt install ros-humble-xacro

使用以下命令构建系统

cd ../..
colcon build

3.7、使用以下命令为 kobuki 设置 udev 规则,然后拔下并重新插入 USB 电缆。

让系统稳定识别 Kobuki 的 USB 串口设备,并给 ROS2 使用合适的权限和固定名称。

✅ 建议必须执行,做一次就行。

wget https://raw.githubusercontent.com/kobuki-base/kobuki_ftdi/devel/60-kobuki.rules
sudo cp 60-kobuki.rules /etc/udev/rules.dsudo service udev reload
sudo service udev restart

四、测试

4.1、检查连接

在工作区中运行以下命令。

source ./install/setup.bash
kobuki-version-info

输出应该是:

Version Info* Hardware Version: 1.0.4* Firmware Version: 1.1.4* Software Version: 1.4.0* Unique Device ID: 98238263-926500434-1124369971

4.2、Kobuki Teleop 键盘 测试

在工作区中运行以下命令并按照屏幕上的说明进行操作

source ./install/setup.bash
kobuki-simple-keyop

4.3、ROS使用情况

带导航栈(joysitck 备份)的 Kobuki 系统启动

source ./install/setup.bash
ros2 launch kobuki kobuki_navigation.launch.py

带纵杆启动的 Kobuki 系统

source ./install/setup.bash
ros2 launch kobuki kobuki_joystick.launch.py

Kobuki KeyOp 控制

在工作区中运行以下命令以启动 kobuki 系统。

source ./install/setup.bash
ros2 launch kobuki_node kobuki_node.launch.py

在工作区中运行以下命令以使用 kobuki 键盘控制。

source ./install/setup.bash
ros2 run kobuki_keyop kobuki_keyop_node
http://www.dtcms.com/a/511519.html

相关文章:

  • 深圳网站建设外贸公司做单抗药的看什么网站好
  • 植物大战僵尸杂交版v3.12最新版本(附下载链接)
  • 云手机的安全保护措施有哪些?
  • 计算机毕业设计240—基于python+爬虫+html的微博舆情数据可视化系统(源代码+数据库)
  • 制作梦核的网站做h网站
  • 本地部署开源数据分析平台 Elastic Stack 并实现外部访问( Windows 版本)
  • 高性能组件_线程内存redis_Mysql_内存序_malloc
  • 2025年前端技术全景指南:从基础到架构的实战手册
  • RuoYi/ExcelUtil修改(导入excel表时,表中字段没有映射上数据库表字段)
  • C++ 分治 快排铺垫 三指针 力扣 75.颜色分类 题解 每日一题
  • 预测算法:股票数据分析预测系统 股票预测 股价预测 Arima预测算法(时间序列预测算法) Flask 框架 大数据(源码)✅
  • 门户网站需要多少空间如何引流被动加好友微信
  • 网站的 联系我们怎么做关键词优化难易
  • 【Java】基于 Tabula 的 PDF 合并单元格内容提取
  • Android 系统的进程模型
  • vue2实现pdf预览兼容低版本浏览器
  • Android Compose 状态的概念
  • spark组件-spark core(批处理)-rdd持久化机制
  • 安全驾驶 智在掌控|腾视科技ES06终端,为车辆运营赋能
  • el-table 表格嵌套表格
  • 云南网站建设首选才力东营注册公司
  • 非对称密码算法分析技术深度剖析及未来展望
  • Arduino IDE下载安装汉化教程(附安装包,图文并茂)
  • 本地转移新分支到新仓库
  • GaussDB慢sql信息收集和执行计划查看
  • AWS IoT Core 监控与告警优化实战报告
  • 我的第一个开源项目【IOT-Tree Server】
  • 如何选择合适的倾角传感器厂家的产品以满足物联网监测需求?
  • 基于物联网与云计算的园区能耗管理平台构建与实践
  • Markdown 用法要点