ROS2 Joystick Teleop#
What you’ll do
ROS2에서 웹 조이스틱 노드로 명령 입력(
/cmd_vel)을 만들어 차량을 움직여 봅니다.
Prerequisites
/dev/ttyKMC준비(권장): Linux Port Setup
Next
참고
차량을 조이스틱으로 조작해봅시다
주의
초기 테스트는 바퀴가 공중에 뜬 상태(또는 아주 낮은 속도)에서 진행하세요.
1. 차량 노드 실행#
ros2 run kmc_hardware_driver_node kmc_hardware_driver_observe_node \
--ros-args -p port:=/dev/ttyKMC -p baud:=115200 -p battery_hz:=1.0
2. 웹 조이스틱 노드 실행#
kmc_web_joystick_node는 웹 페이지에서 입력을 받아 /cmd_vel을 publish합니다(ROS2 명령 입력).
2.1 PC에서 로컬로 접속#
ros2 run kmc_hardware_driver_node kmc_web_joystick_node
접속: http://127.0.0.1:8080
2.2 휴대폰/다른 기기에서 접속#
ros2 run kmc_hardware_driver_node kmc_web_joystick_node \
--ros-args -p bind_address:=0.0.0.0 -p http_port:=8080
같은 Wi-Fi에 연결된 장치에서 http://<차량_IP>:8080로 접속합니다. 방화벽이 있으면 8080 포트를 허용해야 합니다.
3. 주기 설정(선택)#
ros2 run kmc_hardware_driver_node kmc_web_joystick_node \
--ros-args -p publish_hz:=100.0 -p rate_publish_hz:=2.0
publish_hz:/cmd_velpublish 주기 (\(\mathrm{Hz}\))rate_publish_hz: rate 토픽 갱신 주기 (\(\mathrm{Hz}\))
추가 설정
http://<차량_IP>:8080/?send_hz=1000
send_hz를 링크에 추가하여 속도를 조정할 수 있습니다.#
4. 토픽#
Publish
/cmd_vel(ROS2 명령 입력)/cmd_vel_tx_rate_hz/driver_rx_rate_hz
Subscribe
/vehicle_speed(rate 계산용)