VIO ROS 패키지 실행

저작권: 쿼드(QUAD) 드론연구소 https://smartstore.naver.com/maponarooo

Auterion VIO ROS 패키지설치

Auterion VIO ROS 패키지를 Jetson Nano에 설치 합니다. (제공된 SD카드 이미지에는 이미 설치되어 있습니다.)

참고.

git clone https://github.com/Auterion/VIO.git

A uterion에서 제공하던 소스가 삭제되어 다운로드가 되지 않을 수 있습니다.

네이버 "쿼드(QUAD) 드론연구소" 카페 교재 게시판에서 소스를 직접 다운로드 하시기 바랍니다.

cd ~/catkin_ws/src
git clone https://github.com/Auterion/VIO.git
cd ~/catkin_ws
catkin_make px4_realsense_bridge
source ~/catkin_ws/devel/setup.bash
cd ~/catkin_ws/src/VIO/launch/

bridge_mavros.launch 파일 수정

실행 파일의 연결 옵션을 UART 포트 디바이스명과 GCS IP로 수정 합니다.

Jetson Nano의 GPIO UART 포트는 /dev/ttyTHS1 입니다.

"gcs_url"을 설정하면 별도의 텔레메트리 장치 없이 네트워크 UDP:14550 포트로 원격 PC의 GCS와 연결 합니다.

gedit bridge_mavros.launch
## bridge_mavros.launch 파일 수정 <-- Jetson Nano, Raspberry Pi
<launch>
  <arg name="ns" default="/"/>
  <arg name="fcu_url" default="serial:///dev/ttyUSB0:921600" />
  <arg name="gcs_url" default="udp://:14855@192.168.0.3:14550" />

TF 설정 지침

  • base_linkcamera_pose_frame 의 변환은 ROS 실행 파일 사이의 정적 변환을 게시하여 카메라 방향을 지정해야 합니다.

  • 파일 위치 : ~/catkin_ws/src/VIO/launch/bridge.launch

    <node pkg="tf" type="static_transform_publisher" name="tf_baseLink_cameraPose"
        args="0 0 0 0 1.5708 0 base_link camera_pose_frame 1000"/>

    이는 카메라 ROS camera_pose_frame와 base_link프레임을 MAVROS 드론 프레임에 연결하는 정적 변환입니다.

    • 처음 세 개는 비행 컨트롤러 중심에서 카메라까지의 x,y,z 변환을args 미터 단위로 지정합니다 . 예를 들어, 카메라가 컨트롤러 앞쪽 10cm, 위쪽 4cm에 있는 경우 처음 세 숫자는 [0.1, 0, 0.04,...]입니다.

    • 다음 세 개는 args라디안 단위로 회전을 지정합니다(요(yaw), 피치(pitch), 롤(roll)). 즉, [... 0, 1.5708, 0]피치가 90°(지면을 향함) 아래로 내려가는 것을 의미합니다. 정면을 바라보는 것은 [... 0 0 0]이 될 것입니다.

px4_realsense_bridge 패키지 실행

px4_realsense_bridge 패키지를 실행한 후 기체를 이륙 시킵니다. (반드시 VIO를 위한 PX4 기체 세팅이 완료된 이후)

## 실행 (mavros와 px4_realsense_bridge 동시 실행됨)

$ source ~/catkin_ws/devel/setup.bash

$ roslaunch px4_realsense_bridge bridge_mavros.launch

데모 영상

Last updated