LoCoBot快速入门教程-遥控手柄控制(ROS2)

该软件包可用于控制Interbotix X系列LoCoBot中任何漫游车的运动 通过蓝牙使用索尼 PS3 或 PS4 控制器的家庭。在此演示中,“手臂”(如果配备)和 “平移/倾斜”伺服系统在“位置”控制模式下工作,夹持器在“PWM”模式下工作,底座 在“速度”控制模式下运行。请参阅下面的操纵杆按钮图,了解如何操作 机器人。具体来说,一些操纵杆控件操纵单个关节,而其他操纵杆控件则操纵单个关节 用于对所有关节进行“反向运动学”,以获得机器人的末端执行器 (定义为“ee_gripper_link”)像在笛卡尔空间中一样移动。这是使用 modern_robotics 西北大学提供的代码库。

结构

xslocobot_joy_flowchart_ros2.png

如上所示, interbotix_xslocobot_joy 包构建在 interbotix_xslocobot_control 包。要熟悉 interbotix_xslocobot_control 包,请查看其自述文件。描述其他节点 下面:

 

喜悦 - 通用 Linux 操纵杆的 ROS 驱动程序;它从索尼PS3或PS4读取数据 控制器操纵杆通过蓝牙发布 sensor_msgs/喜悦 消息到 /<robot_name>/commands/joy_raw 主题

xslocobot_joy - 负责原始阅读 sensor_msgs/喜悦 来自 /<robot_name>/commands/joy_raw 主题并将其转换为 洛可机器人乔伊 消息;这 使代码更具可读性,并允许用户在以后非常轻松地重新映射按钮。新的 然后将消息发布在 ./<robot_name>/commands/joy_processed topic

xslocobot_robot - 负责阅读 洛可机器人乔伊 来自 /<robot_name>/commands/joy_processed 主题和发布接头、夹持器和平移/倾斜 命令到 xs_sdk 节点;而“腰部”关节则通过PS3 / PS4直接控制 操纵杆,其他按钮允许使用所有手臂关节执行位置IK操作。它还 将速度命令发布到移动底座。

 

用法

使用 配对控制器 指南,在终端中键入以下内容(假设 控制没有激光雷达的locobot_wx250s机器人):

ros2 launch interbotix_xslocobot_joy xslocobot_joy.launch.py robot_model:=locobot_wx250s

屏幕中可能会出现一条红色错误消息,指出 . 这是正常现象,不会影响操纵杆操作。要进一步自定义启动文件,请访问 运行时,请看下表:Couldn't open joystick force feedback!

 

要了解操纵杆按钮如何映射到控制机器人,请查看图表和表格下面:

ps31.jpg