Chapter 647. ROS2 토픽과 메시지 (ROS2 Topics and Messages) Chapter 647. ROS2 토픽과 메시지 (ROS2 Topics and Messages) 647.1토픽 기반 통신의 개념과 원리 647.2발행-구독(Publish-Subscribe) 패턴 647.3토픽 이름 규칙과 명명 규약 647.4토픽의 네임스페이스와 리매핑 647.5토픽의 상대 경로와 절대 경로 647.6발행자(Publisher) 생성과 구성 647.7rclcpp에서의 발행자 생성 647.8rclpy에서의 발행자 생성 647.9구독자(Subscriber) 생성과 구성 647.10rclcpp에서의 구독자 생성 647.11rclpy에서의 구독자 생성 647.12발행자와 구독자의 매칭 메커니즘 647.13토픽 발견(Discovery) 프로토콜 647.14메시지(Message) 정의와 구조 647.15ROS2 인터페이스 정의 언어(IDL) 647.16.msg 파일 형식과 문법 647.17기본 자료형(Primitive Types) 647.18배열과 시퀀스 자료형 647.19고정 길이 배열과 가변 길이 배열 647.20상수(Constants) 정의 647.21기본값(Default Values) 설정 647.22중첩 메시지(Nested Messages) 647.23메시지 헤더(std_msgs/Header)와 타임스탬프 647.24표준 메시지 패키지(std_msgs) 647.25기하학 메시지 패키지(geometry_msgs) 647.26Pose, PoseStamped, PoseWithCovariance 메시지 647.27Twist, TwistStamped, TwistWithCovariance 메시지 647.28Transform, TransformStamped 메시지 647.29센서 메시지 패키지(sensor_msgs) 647.30Image 메시지 647.31CameraInfo 메시지 647.32PointCloud2 메시지 647.33LaserScan 메시지 647.34Imu 메시지 647.35NavSatFix 메시지 647.36JointState 메시지 647.37진단 메시지 패키지(diagnostic_msgs) 647.38시각화 메시지 패키지(visualization_msgs) 647.39Marker와 MarkerArray 메시지 647.40내비게이션 메시지 패키지(nav_msgs) 647.41Odometry 메시지 647.42OccupancyGrid 메시지 647.43Path 메시지 647.44형상 메시지 패키지(shape_msgs) 647.45궤적 메시지 패키지(trajectory_msgs) 647.46고유 인터페이스 패키지(unique_identifier_msgs) 647.47커스텀 메시지 정의와 생성 절차 647.48커스텀 메시지 패키지 구성 647.49rosidl 메시지 생성기의 동작 원리 647.50C++용 메시지 코드 생성(rosidl_generator_cpp) 647.51Python용 메시지 코드 생성(rosidl_generator_py) 647.52메시지 직렬화(Serialization) 메커니즘 647.53CDR(Common Data Representation) 직렬화 647.54메시지 역직렬화(Deserialization) 메커니즘 647.55QoS(Quality of Service) 정책과 토픽 647.56QoS 신뢰성(Reliability) 정책 647.57QoS 내구성(Durability) 정책 647.58QoS 이력(History) 정책 647.59QoS 수명(Lifespan) 정책 647.60QoS 마감(Deadline) 정책 647.61QoS 활성(Liveliness) 정책 647.62QoS 프로파일 사전 정의(Default, SensorData, SystemDefault) 647.63QoS 호환성(Compatibility) 규칙 647.64QoS 불일치 이벤트 처리 647.65토픽의 프로세스 내 통신(Intra-Process Communication) 647.66프로세스 내 통신의 제로 카피(Zero-Copy) 전달 647.67공유 메모리(Shared Memory) 전송 647.68LoanedMessage를 이용한 메모리 대여 647.69토픽 통계(Topic Statistics) 수집 647.70메시지 필터(Message Filters) 개론 647.71시간 동기화 필터(TimeSynchronizer) 647.72근사 시간 동기화 필터(ApproximateTimeSynchronizer) 647.73콘텐츠 필터링 토픽(Content Filtered Topic) 647.74토픽 대역폭 관리와 스로틀링 647.75대용량 메시지 전송 전략 647.76이미지 메시지의 효율적 전송(image_transport) 647.77압축 이미지 전송(CompressedImage) 647.78포인트 클라우드 메시지의 효율적 전송 647.79메시지 타입 해싱과 호환성 검증 647.80토픽 모니터링과 디버깅 도구 647.81ros2 topic CLI 명령어 활용 647.82ros2 interface CLI 명령어 활용 647.83rqt_topic을 이용한 시각적 모니터링 647.84rosbag2를 이용한 토픽 데이터 기록 647.85rosbag2를 이용한 토픽 데이터 재생 647.86토픽 기반 시스템 설계 패턴 647.87멀티캐스트와 유니캐스트 전송 방식 647.88토픽 보안과 접근 제어 647.89다중 도메인 간 토픽 브리징 647.90ROS1-ROS2 토픽 브리지(ros1_bridge) 647.91대규모 시스템에서의 토픽 구조화 전략 647.92토픽 성능 최적화와 지연 시간 분석