목록전체 글 (159)
Priceless

ROS에서 노드 간 원격 통신 ROS에서 노드 간 서로 통신하면서 협업한다 노드는 OS의 도움을 받아 하드웨어 장치를 제어하고, 노드들은 마스터의 도움을 받아 메시지를 주고 받는다 다른 디바이스 사이에서 네트워크로 통신한다(TCP/UDP) 통신 프로토콜 - XMLRPC 프로토콜: 노드들이 마스터와 통신할 때 사용한다 - TCPROS 프로토콜: 각 노드간 통신할 때 사용한다 원격 통신 예제 구동 구성 여러 publisher 노드가 teleop key를 발행하고 다른 하드웨어에서 master core를 실행하고 subscribe한다 호스트 PC turtle_teleop_key 다른 디바이스 turtlesim_node 환경 설정 IP 주소 설정 ~/.bashrc을 수정한다 가장 아래에 내용을 추가한다 ... ..

ROS 커스텀 메시지를 통한 통신 msg 파일 추가 메시지를 구성하는 폴더를 추가하여 cd roscd mkdir msg # 메시지 폴더 생성 cd msg 메시지를 구성하는 타입을 저장하는 msg 파일을 추가한다 my_msg.msg string first_name string last_name int32 age int32 score string phone_number int32 id_number 커스텀 메시지 선언 패키지 파일 내에 있는 package.xml 파일을 수정한다 태그를 추가할 수 있는 영역 가장 아래에 다음 코드를 추가한다 message_generation message_runtime 이후 CMakeLists.txt를 수정한다 CMakeLists 파일은 패키지 파일 내에 존재하며, 공백은 2칸..

ROS 1:1 통신 노드 통신을 위한 패키지 만들기 전체 구성 teacher 노드(publisher)에서 student 노드(subscriber)로 my_topic 토픽을 전송하는 구조 노드를 통한 전송을 하기 위한 package 구조는 아래와 같다 package 생성 msg_send 라는 새로운 package를 만든 후 package 파일 내에 launch 폴더를 만들고 새롭게 생성된 package를 빌드한다 catkin_create_pkg msg_send std_msgs rospy cd msg_send mkdir launch cm # catkin_make node와 topic을 생성하는 코드 topic을 발행하는 파이썬 코드를 작성한다 teacher.py #!/usr/bin/env python3 im..