no image
[ROS2]DeclareLaunchArgument와 LaunchConfiguration의 차이점
Launch 파일에서 DeclareLaunchArgument와 LaunchConfiguration의 사용에 있어서 차이점이 궁금했다. DeclareLaunchArgument CLI에서 Launch파일을 실행할 때 인수를 지정 가능하다. 즉 외부에서 Launch파일의 인수에 접근이 가능한 것이다.gui_arg = DeclareLaunchArgument( name='gui', default_value='True' ) default_value에 기본값을 지정해주어 Launch파일 실행 시 따로 변수를 입력해주지 않아도 되게끔 한다. 만약 default_value를 주석처리하고 코드를 실행해보면 변수가 없으므로 오류가 발생하며 직접 CLI에서 입력해주어야 한다. 주석처리 시 발생하는 오류는 다음과 같다.Runt..
2023.03.15
no image
[ROS2]teleop_keyboard.py 분석
import os import select import sys import rclpy from geometry_msgs.msg import Twist from rclpy.qos import QoSProfile os : 시스템의 정보에 접근 가능하게 해주는 모듈이다. select : 효율적인 I/O Multiplexing을 위한 모듈이다. sys : 파이썬 인터프리터를 제어하게 해주는 모듈이다. rclpy : ROS2의 핵심적인 Python API를 사용가능한 모듈이다. QoSProfile : QoS설정을 정의한다. geometry_msgs : 포인트, 벡터, 포즈와 같은 기하학적인 메세지를 제공해주는 ROS의 모듈이다. Twist : 직선속도, 각속도의 벡터 메세지이다. if os.name == 'nt'..
2022.05.06