< >
Home » Turtlebot4快速入门教程_视频版 » TurtleBot4快速入门教程-PS4手柄控制(含视频)

TurtleBot4快速入门教程-PS4手柄控制(含视频)

TurtleBot4快速入门教程-PS4手柄控制

说明:

  • 本教程主要介绍如何使用PS4手柄控制TB4
  • 注意:只有TurtleBot 4标准版的附带有PS4手柄,TurtleBot 4 Lite并不配有PS4手柄

相关设备

操作步骤

  • 默认情况下,手柄已预先和树莓派配对好

  • 机器人启动之后,按一下手柄中间的HOME键启动手柄,手柄会自行配对,配对成功会亮蓝灯

请输入图片描述

  • 默认情况下,joy_teleop节点已设置开机运行。如果其没有自动启动,可手动启动该节点

  • [TurtleBot SBC] ssh到树莓派,手动启动joy_teleop节点

$ ros2 launch turtlebot4_bringup joy_teleop.launch.py
[INFO] [launch]: All log files can be found below /home/ubuntu/.ros/log/2022-08-09-07-53-32-749667-ubuntu-4329
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [joy_linux_node-1]: process started with pid [4331]
[INFO] [teleop_node-2]: process started with pid [4333]
[teleop_node-2] [INFO] [1660031613.717859099] [TeleopTwistJoy]: Teleop enable button 4.
[teleop_node-2] [INFO] [1660031613.718043634] [TeleopTwistJoy]: Turbo on button 5.
[teleop_node-2] [INFO] [1660031613.718072300] [TeleopTwistJoy]: Linear axis x on 1 at scale 0.200000.
[teleop_node-2] [INFO] [1660031613.718105614] [TeleopTwistJoy]: Turbo for linear axis x is scale 0.500000.
[teleop_node-2] [INFO] [1660031613.718127762] [TeleopTwistJoy]: Angular axis yaw on 0 at scale 0.500000.
[teleop_node-2] [INFO] [1660031613.718147799] [TeleopTwistJoy]: Turbo for angular axis yaw is scale 1.900000.
[joy_linux_node-1] [WARN] [1660031613.771284756] [joy_linux_node]: Couldn't open joystick force feedback: Bad file descriptor
[joy_linux_node-1] [INFO] [1660031613.771599640] [joy_linux_node]: Opened joystick: /dev/input/js0. deadzone_: 0.050000.
  • 控制机器人移动时,需要按住L1键或者R1键,再操纵左摇杆

  • L1键,机器人将会以正常速度移动;按R1键,机器人将会以二倍速度移动

注意:TB4的底盘不支持持续后退操作

手柄其他键位说明

  • HOME键:手柄连接上树莓派后,轻按HOME键,TB4将会进行自动充电操作;长按HOME键,TB4将会进行脱离充电桩操作
  • L2键:沿着左边墙壁移动10秒
  • R2键:沿着右边墙壁移动10秒
  • 右侧四键靠右的O键:启动/关闭底盘电机;底盘电机关闭时,底盘无法移动且开关键上的光环会变橙色
#          L1                                       R1
#          L2                                       R2
#       _=====_                                  _=====_
#      / _____ \                                / _____ \
#    +.-'_____'-.------------------------------.-'_____'-.+
#   /   |     |  '. (SHARE)        (OPTIONS) .'  |  _  |   \
#  / ___| /|\ |___ \                        / ___| /_\ |___ \      
# / |      |      | ;                      ; | _         _ ||
# | | <---   ---> | |                      | ||_|       (_)||      
# | |___   |   ___| ;                      ; |___       ___||
# |\    | \|/ |    /  _      ____      _   \    | (X) |    /|           
# | \   |_____|  .','" "',  (HOME)  ,'" "', '.  |_____|  .' |
# |  '-.______.-' /       \        /       \  '-._____.-'   |
# |               |  LJ   |--------|  RJ   |                |
# |              /\       /        \       /\               |
# |             /  '.___.'          '.___.'  \              |
# |            /                              \             |
#  \          /                                \           /
#   \________/                                  \_________/
  • 如果使用的是TB4标准版,通过手柄可以选择且启动底盘上方显示屏的功能应用

  • 通过左侧方向键的上下键来进行选择,然后按右侧四键靠下的X键来确认

  • 默认配置下,底盘上方显示屏的功能应用有以下几种

  # Dock:自动充电
  # Undock:脱离充电桩
  # Wall Follow Left:沿着左边墙壁移动10秒
  # Wall Follow Right:沿着右边墙壁移动10秒
  # Power:关机
  # EStop:启动/关闭底盘电机

手动配对手柄 方法一:

  • 在系统界面上,点击Settings设置

请输入图片描述

  • 点击Bluetooth蓝牙

请输入图片描述

  • 同时按住PS4手柄上的home键和SHARE按钮,直到指示灯开始闪烁

请输入图片描述

  • Wireless Controller就是PS4手柄,点击Wireless Controller

请输入图片描述

  • 这样就说明连接上了

请输入图片描述

请输入图片描述

  • 此时手柄已连接,并且手柄上的指示灯将变为蓝色

手动配对手柄 方法二:

默认情况下,TurtleBot 4 Lite的树莓派上并没有安装蓝牙的软件包,需要远程连上树莓派执行 sudo bluetooth.sh命令后重启树莓派,然后按照以下配置方式配对手柄

  • 如果换了新手柄或需无法自行配对,可根据以下配置方式配对手柄

  • [TurtleBot SBC] 远程进入pi4后,启动bluetoothd CLI界面

$ sudo bluetoothctl --agent=NoInputNoOutput
  • 输入scan on 并按回车

  • 同时按住手柄上的home键和SHARE按钮,直到指示灯开始闪烁

请输入图片描述

  • 在终端中查找要找到具有类似于A0:5A:5C:DF:4D:7FMAC地址的蓝牙手柄设备

  • 在终端中输入 trust MAC_ADDRESS,将 MAC_ADDRESS 替换为蓝牙手柄的MAC地址

  • 然后,输入pair MAC_ADDRESS

  • 最后,输入connect MAC_ADDRESS

  • 此时终端中应输出手柄已连接的信息,并且手柄上的指示灯将变为蓝色

  • 输入exit 退出终端

  • 测试是否能正常控制机器人

演示视频

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: none