跳到主要内容

轮臂手柄控制说明

1. 概述

本文档说明如何使用手柄控制轮臂机器人,包括三种控制模式及其切换方式。

2. 下位机部署

2.1 下位机分支编译

  • 下位机分支: yang/zjy/lb-mpc-deliver-add-s61
catkin clean 
catkin config -DCMAKE_ASM_COMPILER=/usr/bin/as -DCMAKE_BUILD_TYPE=Release
catkin build humanoid_controllers
catkin build grab_box ar_control pytrees_actions kuavo_deploy

⚠️ 注意: 如果没有 kuavo_deploy 包,需要从 embodied 仓库拉取并直接放入 control 的 src 目录下。

2.2 下位机启动(站立)

下位机需要开启4个终端来完成基础站立功能:

终端1 - 加载机器人控制器

cd kuavo-ros-control
sudo su
source devel/setup.bash
roslaunch humanoid_controllers load_kuavo_real_wheel.launch joystick_type:=bt2pro

终端3 - SSH连接并重启服务

密码: 133233

ssh -oKexAlgorithms=+diffie-hellman-group14-sha1 \
-oHostKeyAlgorithms=+ssh-rsa \
-oCiphers=+aes128-cbc,3des-cbc \
ucore@192.168.26.22

sudo systemctl restart urobot.service

3. 控制模式

系统提供三种控制模式:

  1. cmd_vel 模式
  2. cmd_vel_world 模式
  3. 躯干控制模式(cmd_lb_torso_pose)

4. 遥控器按键说明

  1. 手柄顶部按键示意图

    controller_top

    图中标注了手柄顶部的按键位置,包括:

    • LT(Left Trigger):左扳机键
    • LB(Left Bumper):左肩键
    • RT(Right Trigger):右扳机键(图中用红色框标注)
    • RB(Right Bumper):右肩键
  2. 手柄正面按键示意图

    controller_front

    图中显示了手柄正面的按键布局,包括:

    • 左摇杆:位于左上方的蓝色摇杆
    • 右摇杆:位于右下方的蓝色摇杆
    • D-pad:方向键
    • ABXY按钮:位于右上方的功能按钮(A、B、X、Y)
    • BACK键:位于左侧的功能键
    • START键:位于右侧的功能键

5. 模式切换

切换按键组合

目标模式按键组合说明
cmd_velLB + A键(BUTTON_STANCE)切换到 cmd_vel 模式
cmd_vel_worldLB + Y键(BUTTON_WALK)切换到 cmd_vel_world 模式
躯干控制LB + B键(BUTTON_TROT)切换到躯干控制模式

默认模式

系统启动时默认模式为 cmd_vel 模式。

其他功能按键

按键功能说明
BACK键杀掉程序紧急停止功能

6. 模式详细说明

6.1 cmd_vel 模式 / cmd_vel_world 模式

话题/cmd_vel/cmd_vel_world

控制方式

摇杆操作控制参数功能说明
左摇杆上下方向(X轴)linear.x前进/后退线速度
左摇杆左右方向(Y轴)linear.y左右移动线速度
右摇杆左右方向(Yaw轴)angular.z绕Z轴旋转角速度

死区:0.05(摇杆输入值小于死区时视为0)

6.2 躯干控制模式(cmd_lb_torso_pose)

话题/cmd_lb_torso_pose

控制方式

此模式下需要配合按键使用摇杆进行控制。

按键组合摇杆操作控制参数功能说明注意事项
LB + 左摇杆上下方向linear.x躯干X位置需要按住LB键才触发控制,松开LB键时保持当前值
LB + 右摇杆上下方向linear.z躯干Z位置需要按住LB键才触发控制,松开LB键时保持当前值
RB + 右摇杆左右方向angular.z躯干Yaw角度需要按住RB键才触发控制,松开RB键时保持当前值
RB + 左摇杆上下方向angular.y躯干Pitch角度需要按住RB键才触发控制,松开RB键时保持当前值
RT键--复位功能按下RT键时,所有躯干控制量清零(复位到初始位置),按下瞬间触发复位,复位后可以继续使用其他控制

死区:0.05

特殊说明

  • 进入躯干控制模式时,系统会自动切换到MPC的ArmOnly模式
  • 退出躯干控制模式时,系统会恢复之前的MPC模式
  • 所有控制值采用积分方式:摇杆为正则增加,为0则保持不变,为负则减小
  • 按下RT键可以快速复位所有躯干控制量到初始位置

7. 视频演示

演示视频: 手柄遥控视频

8. 使用提示

  1. 模式切换:使用LB键配合A/Y/B键进行模式切换,切换时会有控制台输出提示
  2. 死区处理:摇杆输入值小于0.05时会被视为0,避免微小抖动
  3. 躯干控制
    • 在躯干控制模式下,需要按住对应按键才能调整控制值,松开按键后保持当前值
    • 控制值采用积分方式:摇杆为正则增加,为0则保持不变,为负则减小
    • 按下RT键可以快速复位所有躯干控制量到初始位置
  4. 紧急停止:按下BACK键可以杀死程序
  5. 模式切换:模式切换前要保证手柄控制量为0,且保持2秒钟,之后才能进行模式切换