반응형

ROS2 Foxy Fitzroy

 

패키지 노드(publisher) 만들기

 

 

1) ~/robot_ws/src/test1234/setup.py 확인

  1. 위의 경로 파일 재확인
    1. 내용을 모른다면 다시 1편으로
    2. hostramus.tistory.com/112\
 

ROS2 패키지 만들기 - 1 (패키지 생성)

ROS2 FOXY Fitzroy ROS2에서 패키지를 만들기 위한 방법 1) 패키지 생성 cd ~/robot_ws/src ros2 pkg create [패키지명] --build-type ament_python 이전에 만들어 놓은 ROS2 워크스페이스 src에 [패키지명]으로..

hostramus.tistory.com

 

2) 빌드

cd ~/robot_ws
colcon build --symlink-install
  1. 패키지를 생성했으니 빌드
    1. 패키지 생성 꼭 빌드 해야 사용이 가능
    2. --symlink-install
      1. 옵션 사항
      2. 빌드 후 파이썬 파일 수정을 해도 재빌드가 필요 없음
        1. 같은 파일 내에 수정일때 적용
        2. 빌드시 관련 파일(파이썬 등)을 링크로 연결하기에 쉽게 수정이 가능
        3. 결론.. 쓰면 편함

 

3) 노드 환경설정

. ~/robot_ws/install/local_setup.bash

#또는

source ~/robot_ws/install/local_setup.bash
  1. 노드 환경설정
    1. 그냥 한번 입력하면 별 반응도 없이 끝
    2. 출력되는 메세지조차 없음

 

4) 노드 실행

ros2 run test1234 hello_pub
  1. publisher 실행
    1. [INFO]: Published message: Hello World: 1
      1. 위와같이 1초에 하나씩 출력
ros2 run test1234 hello_sub
  1. subscriber 실행
    1. [INFO]: Received message: Hello World: 1
      1. 위와 같은 형식으로 출력
      2. 메세지가 날아올때만 출력

위와 같이 실행되면 완료

 

5) 문제 해결

  1. ros2 run test1234 hello_sub를 실행시켰으나 무반응
    1. 1번 setup.py의 entry points 내용 확인
    2. publisher와 subscriber의 파이썬 파일 확인
      1. 토픽명이 일치하는지 확인
    3. 코드의 오타 확인
  2. hello_suv등의 패키지를 찾지 못함 (탭을 눌렀으나 자동완성이 안되는 경우)
    1. source ~/robot_ws/install/local_setup.bash 실행한 후 확인

 

 

아래 출처의 내용을 수정 변경하였습니다.

개인적 공부를 위해 올린 글로 공부하실분은 아래 링크의 글을 참고하시기 바랍니다.

출처 : 오로카 카페 (cafe.naver.com/openrt/24450)

반응형

+ Recent posts