[ROS2] EP2. Package에서 Topic 구독하기

김희상·2024년 7월 8일

ROS2

목록 보기
2/17
post-thumbnail

  • OS : Ubuntu 22.04
  • ROS 2 Humble
  • Gazebo 11

1. 토픽 구독

1. my_subscriber.py 추가

import rclpy as rp
from rclpy.node import Node
from turtlesim.msg import Pose

class TurtlesimSubscriber(Node):

	def __init__(self):
		super().__init__('turtlesim_subscriber')
		self.subscription = self.create_subscription(
				Pose,
				'/turtle1/pose',
				self.callback,
				10)
		self.create_subscription # prevent unused variable warning

	def callback(self, msg):
		print("X : ", msg.x, ", Y : ", msg.y)

def main():
	rp.init()

	turtlesim_subscriber = TurtlesimSubscriber()
	rp.spin(turtlesim_subscriber)

	turtlesim_subscriber.destroy_node()
	rp.shutdown()

if __name__ == '__main__':
	main()

2. setup.py에 추가

3. turtlesim 실행

4. 방금 만든 노드 실행

5. rqt_graph 실행

  • turtlesim 실행 -> 발행판 pose 토픽을 turtlesim_subscriber에서 구독

코드 추가 → 빌드 → 환경 읽기


profile
3D 모델러의 개발 도전기

0개의 댓글