티스토리 친구하기

본문 바로가기

Topic

(4)
ROS2 service [Understanding services] Goal: command line tools를 이용한 ROS2 services에 대해 배운다. Tutorial level: Beginner Time: 10 minutes Background Services는 ROS graph 내에서 node 간에 communication 하는 방법이다. Services는 topic의 publisher - subscriber 모델과는 달리 call-and-reponse 모델을 기반으로 한다. Topic이 data stream을 subscribe 하고 지속적인 업데이트를 받을 수 있도록 한 반면, Services는 오직 client에 의해 명시적으로 call(요청) 할 때에만 data를 제공한다. Prerequisites - 이 tutorial에서 언급된 Nodes와 Top..
ROS2 humble Writing a simple publisher and subscriber (Python) Background 이 튜토리얼에서는 문자열 메시지에 있는 정보를 topic을 통해 서로 주고받는 node들을 생성하는 방법에 대해 설명합니다. 여기서 사용하는 example은 "talker"와 "listener" 시스템입니다. "talker" 노드는 데이터를 publish하고 "listener" 노드는 topic을 subscribe 해서 데이터를 수신합니다. 본 튜토리얼은 Python으로 진행됩니다. prerequisites 이전 튜토리얼에서는, 어떻게 workspace와 pakage를 만드는지 배웠습니다. Python의 전체적인 이해가 필수적인건 아니지만, 기본적인 이해가 있으면 좋습니다. Task 1 Create a package ros2 command가 작동하도록, 터미널을 열고 ROS2 inta..
ROS2 topic 2 [ROS2 토픽 2] 5. ros2 topic info `ros2 topic info` 명령어는 지정된 ROS 2 토픽에 대한 세부 정보를 출력합니다. 이 명령어를 사용하면 선택한 토픽의 이름, 메시지 유형, 토픽이 발행되는 노드의 이름 등을 확인할 수 있습니다. 예를 들어, `ros2 topic info /my_topic` 명령어는 `/my_topic` 토픽에 대한 정보를 출력합니다. 결과에는 토픽의 name, 토픽이 사용하는 메시지 Type, 발행자(Publisher) 노드의 이름 등이 포함됩니다. 이 정보는 토픽이 어떤 종류의 데이터를 전달하고 있는지, 어떤 노드가 해당 토픽을 사용하고 있는지 등을 파악하는 데 도움을 줍니다. `ros2 topic info` 명령어를 사용하여 ROS 2 토픽에 대한 정보를 확인하면 시스..
ROS2 Node [ROS2 노드] ROS2 그래프(Graph)는 로봇 시스템의 구성 요소 간 통신 및 데이터 교환을 관리하는 ROS2의 핵심 개념 중 하나입니다. ROS2 그래프는 다음과 같은 구성 요소로 이루어져 있습니다. 1. 노드(Node) 실행 가능한 프로세스(executable process)로, ROS2 그래프 상에서 통신하는 단위입니다. 노드는 토픽(topic), 서비스(service), 액션(action) 등을 이용하여 다른 노드와 데이터를 주고받습니다. 2. 토픽(Topic) 노드 간에 비동기식으로 데이터를 주고받는 메커니즘입니다. 하나의 토픽은 하나 이상의 발행자(publisher)와 하나 이상의 구독자(subscriber)로 구성됩니다. 3. 서비스(Service) 노드 간에 동기식으로 데이터를 주고받는 메커니즘입니다..