- Keyboard
- Joystick (DS3, DS4, XBOX, Wii Remote, Mad Catz F.L.Y.5 Stick)
- Bluetooth module with embedded board
- Android APP
- Web Tools
- 조이스틱 관련 패키지 설치 (바이너리 설치, 삭제, 소스코드 설치 등)
$ sudo apt install joystick jstest-gtk ros-kinetic-joy
$ sudo apt purge ros-kinetic-teleop-twist-joy
$ cd ~/catkin_ws/src
$ git clone https://github.com/robotpilot/teleop_twist_joy.git
$ cd ~/catkin_ws && catkin_make
- 블루투스 관리 툴(예: blueberry 또는 blueman)을 실행한다.
- DS3,4의 PS(버튼10번) 버튼을 누른다: 페어링 모드 진입
- USB로 DS3,4와 컴퓨터를 유선으로 연결한다.
- 블루투스 관리 툴(예: blueberry 또는 blueman)에서 페어링 허가 여부를 물으면 허락한다.
- USB 연결을 제거 후, DS3,4의 PS(버튼10번) 버튼을 누르고 블루투스 관리 툴에서 DS3,4를 찾아 블루투스로 연결한다.
- 하기의 joystick configuration tool로 키를 확인하고, Calibration 기능을 통해 모든 축과 버튼을 셋팅한다.
$ jstest-gtk
- 유선 XBOX 조종기는 USB로 컴퓨터와 유선으로 연결한다.
- 하기의 joystick configuration tool로 키를 확인하고, Calibration 기능을 통해 모든 축과 버튼을 셋팅한다.
$ jstest-gtk
- 유선 Mad Catz F.L.Y.5 Stick (이하 FLY5) 조종기는 USB로 컴퓨터와 유선으로 연결한다.
- 하기의 joystick configuration tool로 키를 확인하고, Calibration 기능을 통해 모든 축과 버튼을 셋팅한다.
$ jstest-gtk
- 기본 키맵으로는 R1(DS) 또는 RB(XBOX)가 enable 버튼이고, axis #1이 병진속도 / axis #3이 회전속도 키로 맵핑해두었음
- 자세한 키맵 및 설정 변경은 하기 내용 참고.
- ds3.config.yaml
- ds4.config.yaml
- xobx.config.yaml
- fly5.config.yaml
- joystick device -> joy_node (joy, sensor_msgs/Joy) -> teleop_twist_joy (cmd_vel, geometry_msgs/Twist)
$ roslaunch teleop_twist_joy teleop.launch joy_config:=ds3
or
$ roslaunch teleop_twist_joy teleop.launch joy_config:=ds4
or
$ roslaunch teleop_twist_joy teleop.launch joy_config:=xbox
or
$ roslaunch teleop_twist_joy teleop.launch joy_config:=fly5
$ rosrun turtlesim turtlesim_node
$ roslaunch teleop_twist_joy teleop.launch joy_config:=ds3 __ns:=turtle1
or
$ roslaunch teleop_twist_joy teleop.launch joy_config:=ds4 __ns:=turtle1
or
$ roslaunch teleop_twist_joy teleop.launch joy_config:=xbox __ns:=turtle1
or
$ roslaunch teleop_twist_joy teleop.launch joy_config:=fly5 __ns:=turtle1