MW-AHRS-X1 관련 문의 > Module_Forum

본문 바로가기
사이트 내 전체검색

Module_Forum

MW-AHRS-X1 관련 문의

페이지 정보

profile_image
작성자 fjfjfj
댓글 1건 조회 27회 작성일 25-03-20 14:36

본문

구매한 Sensor:MW-AHRS-X1

사용 환경: ros2 humble, linux

개발 언어: c++

https://idea.synology.me/bbs/board.php?bo_table=ahrs&wr_id=571
https://idea.synology.me/bbs/board.php?bo_table=ahrs&wr_id=593

위 두 게시글을 보고 colcon build는 됐지만,
https://github.com/ntrexlab/2th_NtrexAHRS_lib_ROS/tree/main
실행은 위 깃허브에서 다운받아 ros2_example의 파일을 사용했습니다. 런치파일을 실행했을 때 첫 번째 사진과 같은 오류가 발생해 런치파일을 humble버전과 맞게 변경한 후 다시 실행해보니, 두 번째 사진과 같은 오류 코드가 발생합니다. 어떻게 해결해야할까요?

변경한 런치파일 코드는 다음과 같습니다.

#!/usr/bin/python3

import os

from ament_index_python.packages import get_package_share_directory
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument
from launch.conditions import IfCondition
from launch.substitutions import LaunchConfiguration
from launch_ros.actions import Node
from launch_ros.actions import LifecycleNode

def generate_launch_description():
   
    config_dir = get_package_share_directory('stella_ahrs')
    config_file = os.path.join(config_dir, 'config', 'config.yaml')

    rviz_config_file = LaunchConfiguration('rviz_config_file')
    use_rviz = LaunchConfiguration('use_rviz')
   
    declare_rviz_config_file_cmd = DeclareLaunchArgument(
        'rviz_config_file',
        default_value=os.path.join(config_dir, 'rviz', 'imu_test.rviz'),
        description='Full path to the RVIZ config file to use')

    declare_use_rviz_cmd = DeclareLaunchArgument(
        'use_rviz',
        default_value='True',
        description='Whether to start RVIZ')

    rviz_cmd = Node(
        condition=IfCondition(use_rviz),
        package='rviz2',
        executable='rviz2',
        name='rviz2',
        arguments=['-d', rviz_config_file],
        output='screen')

    # ???? LifecycleNode의 인자 수정
    driver_node = LifecycleNode(
        package='stella_ahrs',
        executable='stella_ahrs_node',  # ⬅ 'node_executable' 대신 'executable'
        name='stella_ahrs_node',  # ⬅ 'node_name' 대신 'name'
        namespace='/',  # ⬅ 'node_namespace' 대신 'namespace'
        output='screen',
        emulate_tty=True
    )

    return LaunchDescription([
        declare_rviz_config_file_cmd,
        declare_use_rviz_cmd,
        rviz_cmd,
        driver_node,
    ])

댓글목록

profile_image

최고관리자님의 댓글

최고관리자 작성일

안녕하세요.

아이디어 로봇입니다.

현재 발생하신 에러는 rviz2에서 발생하고 있는 것으로 확인됩니다.

launch 파일 코드에서 rviz를 실행하는 부분을 주석 처리한 후 실행이 되는지 확인 부탁 드립니다.

회원로그인

회원가입