R1 R0S 원격 구동


ROS가 설치된 PC를 Robot에 설치하고 같은 무선 라우터에 연결된 원격 Host PC에 ROS가 설치되어있으면 ROS를 원격으로 연결하여 구동할 수 있습니다.


 

[ROS 설정하기]



  • omo_r1_gazebo 패키지는 가제보 환경에서 omo_r1을 동작시킬 수 있습니다.
  • 해당 패키지를 이용해서 실제 로봇을 이용하기 전에 slam과 navigation을 시험해 볼 수 있습니다.





[실행]


HOST PC의 .bashrc 설정


HOST PC의 IP 주소를 확인합니다. HOST PC의 IP주소가 “192.168.1.23” 인 경우



          

          $ ifconfig 

          wlo1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500 

          inet 192.168.1.23  netmask 255.255.255.0  broadcast 192.168.1.255 

          inet6 ##################  prefixlen 64  scopeid 0x20<link> 

          ether ##################  txqueuelen 1000  (Ethernet) 

          RX packets 523729  bytes 421964779 (421.9 MB) 

          RX errors 0  dropped 0  overruns 0  frame 0 

          TX packets 335162  bytes 39447419 (39.4 MB) 

          TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0 



  • HOME 폴더의 .bashrc를 에디터로 열고 파일의 끝에 다음과 같이 추가합니다.


          

          $ gedit ~/.bashrc 

          ... 

          export ROS_MASTER_URI=http://192.168.1.23:11311 

          export ROS_HOSTNAME=192.168.1.23 



  • 이제 source 명령으로 bash에 load합니다.


          

          $ source ~/.bashrc 



ROBOT PC의 .bashrc 설정


HROBOT PC의 IP주소가 "192.168.1.24"인 경우 아래와 같이 SSH 명령으로 로봇에 접근합니다.



          

          $ ssh r1@192.168.1.24 



  • 기본 패스워드는 1 입니다.
  • HOME 폴더의 .bashrc를 에디터로 열고 다음을 추가합니다.
  • ROS_MASTER_URI의 주소는 HOST PC의 IP로 ROS_HOSTNAME은 ROBOT PC의 IP 주소로 설정합니다.


          

          $ nano ~/.bashrc 

          ... 

          export ROS_MASTER_URI=http://192.168.1.23:11311 

          export ROS_HOSTNAME=192.168.1.24 



  • 이제 이 파일을 bash에 load합니다.


          

          $ source ~/.bashrc 





[ROS로 로봇 조작하기]


Teleop Keyboard를 사용하여 키보드로 조종하기


HOST PC에서 roscare 실행



          

          $ roscore 



  • 새로운 터미널을 열고 SSH를 통해 로봇으로 접근합니다


          

          $ ssh r1@192.168.1.24 



  • 다음 명령어를 입력하여 motor를 기동합니다.


          

          다음 명령어를 입력하여 motor를 기동합니다. 



  • 이제 다른 터미널에서 teleop keyboard 를 실행합니다.


          

          $ roslaunch omo_r1_teleop omo_r1_teleop_key.launch 



  • 그러면 아래와 같은 상태가 됩니다.
  • 좌측은 HOST PC, 우측은 ROBOT PC입니다.



  • 이제 좌측 하단의 터미널에 커서를 놓고 키보드로 로봇을 조작할 수 있습니다.조작명령은 다음과 같습니다.
    • w: 전진
    • x: 후진
    • a: 좌회전
    • d: 우회전
    • s: 정지