1. Xbox手柄与ROS2的完美邂逅
还记得第一次用游戏手柄控制机器人的感觉吗?那种从虚拟游戏世界跨越到真实物理操控的震撼,简直让人上瘾!今天我要分享的就是如何用你手边的Xbox手柄,在短短5分钟内从控制仿真小乌龟过渡到操控真实的UGV机器人。
我最初接触这个功能时,以为会需要复杂的配置和漫长的调试,结果实测下来发现ROS2的生态已经如此完善,从仿真到实机的迁移竟然可以如此顺畅。不管你是用微雪的UGV Rover还是Jetson Orin平台,甚至是树莓派搭建的小车,这套方案都能快速适配。
最让我惊喜的是,整个流程不需要深厚的ROS2功底,只要会复制粘贴命令就能搞定。我记得第一次成功用手柄控制真实机器人移动时,那种人机一体的操控感让我兴奋了好久。下面我就把这份快乐分享给你,让你也能快速体验用手柄操控机器人的乐趣。
2. 环境准备与依赖安装
2.1 系统与ROS2基础配置
在开始之前,确保你已经在Ubuntu 22.04上安装好了ROS2 Humble。如果还没安装,可以通过官方源快速搞定:
sudo apt update
sudo apt install curl gnupg lsb-release
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
安装完整的ROS2桌面版:
sudo apt update
sudo apt install ros-humble-desktop
记得source你的环境变量,我通常会在.bashrc里添加这行,避免每次开终端都要手动source:
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.2 手柄驱动与测试工具
接下来安装手柄测试工具,这个步骤很重要,能帮我们确认系统是否正确识别了Xbox手柄:
sudo apt install joystick
插上手柄后,用这个命令测试连接状态:
ls /dev/input/js*
如果你看到类似/dev/input/js0的输出,说明系统已经识别到手柄。现在可以用jstest测试手柄的响应:
jstest /dev/input/js0
你会看到一个实时更新的界面,摇动摇杆和按下按键时,对应的数值会变化。这是我调试时必用的工具,能快速排除硬件连接问题。


2735

被折叠的 条评论
为什么被折叠?



