설정 파일
PLEM 제어 시스템의 주요 설정 파일을 설명합니다.
joint_limits.yaml
관절별 위치·속도·가속도 제한값을 정의합니다. ros2_control이 이 값을 읽어 하드웨어 명령을 제한합니다.
위치: neuromeka_robot_driver/config/{robot_type}/joint_limits.yaml
joint_limits:
joint0:
has_position_limits: true
min_position: -3.05 # rad
max_position: 3.05 # rad
max_velocity: 3.14 # rad/s
max_acceleration: 6.28 # rad/s²
joint1:
# ...
| 필드 | 타입 | 설명 |
|---|---|---|
has_position_limits | bool | 위치 제한 활성화 여부 |
min_position | double | 최소 관절 위치 (rad) |
max_position | double | 최대 관절 위치 (rad) |
max_velocity | double | 최대 관절 속도 (rad/s) |
max_acceleration | double | 최대 관절 가속도 (rad/s²) |
경고
이 값은 로봇 모델에 맞게 본사에서 사전 설정합니다. 임의로 변경하면 로봇이 물리적 한계를 초과할 수 있으므로, 변경 전 반드시 본사에 문의하세요.
controllers.yaml
ros2_control 컨트롤러 설정입니다. 어떤 컨트롤러를 로드하고, 각 컨트롤러가 어떤 관절을 제어할지 정의합니다.
위치: neuromeka_robot_driver/config/{robot_type}/controllers.yaml
controller_manager:
ros__parameters:
update_rate: 1000 # Hz
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster
joint_trajectory_controller:
type: joint_trajectory_controller/JointTrajectoryController
free_drive_controller:
type: free_drive_controller/FreeDriveController
joint_trajectory_controller:
ros__parameters:
joints:
- joint0
- joint1
- joint2
- joint3
- joint4
- joint5
state_publish_rate: 1000.0
주요 설정:
| 항목 | 설명 |
|---|---|
update_rate | 컨트롤러 업데이트 주기 (Hz). 기본 1000 Hz |
joints | 제어 대상 관절 목록. URDF의 joint 이름과 일치해야 함 |
state_publish_rate | 상태 publish 주기 (Hz) |
gripper_drivers.yaml
그리퍼 모델명과 드라이버 클래스의 매핑을 정의합니다. launch 시 gripper 파라미터에 따라 적절한 드라이버가 로드됩니다.
위치: neuromeka_integrations/config/gripper_drivers.yaml
gripper_drivers:
rg6:
driver_package: neuromeka_onrobot_driver
driver_plugin: neuromeka_onrobot_driver/RG6Driver
default_force: 40.0 # N
default_width: 160.0 # mm
| 필드 | 설명 |
|---|---|
driver_package | 드라이버가 포함된 ROS2 패키지 |
driver_plugin | pluginlib 드라이버 클래스 |
default_force | 기본 그리핑 힘 (N) |
default_width | 기본 열림 폭 (mm) |
새로운 그리퍼를 추가하려면 이 파일에 매핑을 등록하고, 해당 드라이버 패키지를 설치하면 됩니다.
파일 위치 요약
| 파일 | 패키지 | 경로 |
|---|---|---|
joint_limits.yaml | neuromeka_robot_driver | config/{robot_type}/joint_limits.yaml |
controllers.yaml | neuromeka_robot_driver | config/{robot_type}/controllers.yaml |
gripper_drivers.yaml | neuromeka_integrations | config/gripper_drivers.yaml |