ROS2 응용
시스템 구성: ubuntu22.04
ROS2 버전: humble
ROS2 환경 설정
- 다운로드 소스 업데이트
PowerShell
sudo apt update- ros2 다운로드 명령 입력
PowerShell
wget http://fishros.com/install -O fishros && . fishros가상 머신에 디바이스 연결
- 디바이스 확인
PowerShell
ll /dev/ttyUSB*- 포트 매핑 생성
PowerShell
sudo gedit /etc/udev/rules.d/99-serial-imu.rules- 매핑 파일 내용 작성
PowerShell
KERNEL=="ttyUSB*", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", MODE:="0777", SYMLINK+="imu-serial"- 저장 후 종료, 명령 실행으로 규칙 적용
PowerShell
sudo udevadm triggerPlain
sudo service udev reloadPlain
sudo service udev restart- 검증
PowerShell
ll /dev/imu-serial준비된 압축 패키지 가져오기
飞书 같은 레벨 디렉터리에 있음IMU_ROS2.zip
파일 전송 소프트웨어로 가상 머신에 전송
IMU_Library 라이브러리 설치
PowerShell
# 下载解压IMU_ROS2压缩文件后,进入到IMU_Library目录下,运行setup.py
cd IMU_ROS2/IMU_Library
# 安装库及其依赖
pip install -e .
# 或使用setup.py安装
python setup.py installpython 관련 라이브러리 설치
PowerShell
sudo pip3 install pyserial
sudo pip3 install smbus2ROS2 프로젝트 빌드
- ~/IMU_ROS2 디렉터리로 복귀
PowerShell
cd IMU_ROS2
colcon build --symlink-install- 작업 디렉터리 ~/IMU_ROS2을 환경 변수에 추가
PowerShell
# 编辑 ~/.bashrc
sudo gedit ~/.bashrc
# 把下面命令写到末尾
source ~/IMU_ROS2/install/setup.bash컴파일 성공 후 다음 명령으로 imu_ros2 기능 패키지에 실행 파일이 있는지 확인합니다 ros2 pkg executables imu_ros2
ROS2 노드 시작
PowerShell
source install/setup.bash
ros2 run imu_ros2 imu_publisherIMU 데이터 출력
- 새 터미널을 열고 imu 토픽 확인
PowerShell
ros2 topic list- /imu/data 토픽 데이터 출력
PowerShell
ros2 topic echo /imu/data- 새 터미널을 열고 msg 토픽 확인
PowerShell
ros2 topic echo /imu/magRViz2 시각화
- 명령 실행으로 rviz 시각화 인터페이스 열기
PowerShell
ros2 launch imu_ros2 imu_visualization.launch.py자주 묻는 질문
- 노드 시작 시 실패하면 다음 명령을 시도하세요
PowerShell
# 在~/IMU_ROS2目录下运行
source install/setup.bash
# 端口号问题
sudo chmod 666 /dev/imu-serial
