CLEB-G-02A Camera ROS2 사용자 가이드
Revision History for Document
Rev | Date | Description |
---|---|---|
1.0 | 2024-12-18 | Initial Draft |
Overview
이 문서는 CLEB-G-02A 에 장착 가능한 6채널 카메라를 지원하는 ROS2 패키지의 설치 및 사용법을 설명한다.
지원 버전
설치 및 사용법
FAKRA 포트 별 카메라 매칭
ROS2 패키지의 사용에 앞서 FAKRA 포트 별 카메라 매칭에 대해 설명한다.
CLEB-G-02A는 4개의 Fakra cable를 연결할 수 있는 Mini Fakra 포트가 총 2개 존재한다.
사용자가 바라보는 기준 우측 포트의 우측 하단부터 시계 반대 방향으로 채널 순서가 정해진다.
현재 CLEB-G-02A에서 지원하는 CLSC-G-01X 카메라는 각 포트 별 3채널씩 총 6채널 디스플레이를 지원하므로 아래와 같이 카메라를 체결해야 한다.
ROS2 드라이버 설치
ros 환경 세팅을 한다.
source /opt/ros/humble/setup.bash
ros_v4l2_camera 패키지를 다운 받는다.
mkdir -p ~/ros_v4l2_camera/src
cd ~/ros_v4l2_camera/src
git clone --branch humble https://github.com/canlab-co/ros_v4l2_camera.git
더 나은 이미지 전송 성능을 얻으려면 공유 메모리 전송이 활성화된 FastDDS를 사용하는 것이 좋다. 먼저
fastdds.xml
구성 파일을 적절한 디렉터리에 복사한다.
cd ~/ros_v4l2_camera/src/ros_v4l2_camera
cp fastdds.xml ~/
sudo vi ~/.bashrc를 열어 다음 두 줄을 추가 시켜 준다.
source ~/.bashrc 명령어를 입력해 터미널을 시작할 때 상기 내용이 적용 될 수 있도록 한다.
위 방법을 진행하지 않을 경우 데이터 이미지 데이터 전송 성능 저하가 나타날 수 있다.
빌드를 진행한다.
빌드 에러시 처리
*rosdep: command not found* 시 → sudo apt install python3-rosdep 진행
*colcon: command not found* 시 → sudo apt install python3-colcon-common-extensions 진행
ros_v4l2_camera 를 실행시키기 위해 환경 설정을 진행한다.
ros_v4l2_camera 실행한다.
cam 파라미터를 생략할 시 기본값은 6이며, 연결된 카메라 채널의 수에 맞게 입력할 수 있다.
하단의 CLEB-G-02A Camera ROS2 사용자 가이드 | ⬜ 카메라 채널 수 커스터마이즈 방법 참고.
카메라 채널 수 커스터마이즈 방법
CLEB-G-02A는 최대 카메라 6채널을 지원한다.
기본값인 6채널이 아닌 원하는 수의 카메라 채널을 디스플레이하고 싶다면, 아래 예시를 참고하면 된다.
예시는 카메라 4채널을 사용할 때이다.
launch 파일을 실행할 때 cam 파라미터의 값을 4로 입력한다.
프레임 레이트
하단의 표는 cam 파라미터의 값(카메라 채널 디스플레이 수)에 따른 프레임 레이트를 정리한 내용이다.
cam 파라미터 | 6 | 5 | 4 | 3 | 2 | 1 |
---|---|---|---|---|---|---|
fps | 27 ~ 28 | 28 ~ 29 | 30 | 30 | 30 | 30 |
launch 로 실행하지 않고 1채널만(node 1개만) 실행하고자 할 경우 아래 명령을 사용한다.
결과
영상을 보기 위해서 ROS에서 제공하는 툴인 rqt 나 rviz2 를 사용하면 된다.
RQT
rqt를 실행한다.
RVIZ2
rviz2를 실행한다.
Topic Hz
6채널 카메라에 대해서 topic hz를 확인하면 다음과 같다.