STEP1. 노트북에 google VNC 설치하기
- 아래 첨부파일 다운로드 및 Zip파일 압축해제
- 구글 확장 프로그램(chrome://extensions/)에서 '압축해제된 확장 프로그램 로드' 클릭 후 압축 해제한 폴더 선택 및 등록
STEP2. 로봇 전원 연결 및 실행
- 라즈베리파이에 전원을 연결합니다. UCP는 Basic로봇과는 다르게 라즈베리파이 모니터가 연결되어 있으므로 그냥 전원만 켜시면 됩니다.
- 우분투 바탕화면이 나온 이후, 노트북을 이용하여 구글 앱스(chrome://apps)에서 Chrome VNC Viewer 클릭하여 실행
- 원격할 PC의 ip주소:포트번호 입력 (만약 연결이 되질 않는다면 라즈베리파이의 터미널 창에 ifconfig를 입력한 후 ip주소 확인)
192.168.0.3:5900
192.168.0.8:5900
이 둘 중 하나로 기억하고 있습니다.
STEP3. PS4 블루투스 연결
- 블루투스 동글 삽입 후 PS4 블루투스 연결
Step1. Bluetooth 연결
- Raspberry Pi USB 포트에 Bluetooth 동글을 연결합니다.
- PS4의 "SHARE" 버튼과 "PS4" 버튼을 동시에 눌러 페어링 모드로 진입합니다. (LED가 빠르게 반짝임)
- 우분투의 bluetooth 설정창으로 가서 Wireless Controller를 연결합니다.
(PS4에서 파란색 LED가 나타난다면 정상 연결 된 것)
- joystick 제어 실행
$ roscore
$ roslaunch md md.launch
$ rosrun rosserial_python serial_node.py __name:=arduino _port:=/dev/ttyACM0 _baud:=57600
$ rosrun joy joy_node
$ cd ~/catkin_ws/src/PS4_Joystick_teleop_Mobile_Robots_ROS_Python
$ python Joyteleop_turtlebot3.py
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
STEP4. USB 포트 재연결
- ttyUSB*는 모터드라이버(ttyUSB0), ydlidar(ttyUSB1), IMU(심볼릭 링크를 지정하였으므로 상관없음) 으로 설정되어 있습니다.
- ttyUSB*가 변경되어있을 수 있으므로 모터드라이버를 첫번째, lidar를 두번째, IMU센서를 세번째로 삽입하여줍니다.
- 마지막으로 아두이노를 연결해줍니다.
(이렇게 했는데도 오류가 난다면, 다시 재푸팅하는것을 추천드립니다.)
STEP5. 터미널창에 명령어 입력하여 실행
- 터미널창 각각의 명령어를 입력
- joystick 제어 실행
$ roscore
$ roslaunch md md.launch
$ rosrun rosserial_python serial_node.py __name:=arduino _port:=/dev/ttyACM0 _baud:=57600
$ rosrun joy joy_node
$ cd ~/catkin_ws/src/PS4_Joystick_teleop_Mobile_Robots_ROS_Python
$ python Joyteleop_turtlebot3.py
- 두번째 명령어 실행 이후, Emergency switch를 off시켜주면, 터미널 창에서 전원이 약 280 정도로 나오는 것을 확인할 수 있습니다.
STEP6. 작동 확인
- PS4의 ㅁ버튼을 누른상태로 조이스틱을 움직이면 로봇이 작동
- 세모버튼을 누른상태로 조이스틱을 움직이면 로봇이 더 빠르게 작동
- 좌우 제어는 아직 설정을 안해놔서 민감할 수 있으므로 조심히 제어하셔야합니다.
'작업 일기' 카테고리의 다른 글
라즈베리파이 4에 Ubuntu 20.04 설치 (0) | 2022.08.10 |
---|---|
rosserial 통신으로 LED 제어하기 (간단한 LED STATUS) (0) | 2022.08.03 |
Basic Robot 실행 방법 정리본 (0) | 2022.07.27 |
rosserial을 이용하여 로봇 이동 시 LED 자동 제어 (0) | 2022.07.01 |
ekf_localization (Wheel + IMU odometry) (0) | 2022.06.21 |