로보틱스 기술은 ROS(robot operating system)의 예와 같이 급속히 표준화되고 개방화되고 있다. ROS를 이용하면, 다양한 로보틱스 응용을 손쉽게 개발할 수 있다.
드론의 경우, Arducopter와 같은 오픈소스 기술도 많이 활용되고 있으나, ROS를 직접 드론에서 구동하기 위한 노력도 많아지고 있다. Arducopter에서 제공하는 미션 플래너 기술을 이용하면, 드론을 실시간으로 모니터링할 수 있다. 하지만, 드론의 자세, 위치, 속도를 모니터링하는 것만으로는 드론 운용에 대한 일부 유스케이스만 커버할 수 있을 뿐이다.
ROS를 잘 활용하면, 다음과 같은 유스케이스를 구현할 수 있다.
- 인프라스트럭처 시설물 센싱에 필요한 데이터를 효과적으로 캡쳐할 수 있다.
- 센싱 중 충돌할 수 있는 물체를 자동으로 피할 수 있다.
- 실시간으로 데이터를 캡쳐하면서, 데이터의 특징이나 정보를 추출해, 원격으로 서버에 전달할 수 있다.
- 드론이 캡쳐하는 데이터의 정보를 실시간으로 추적/관리할 수 있다.
1. 개요
Erle copter는 ROS가 설치된 임베디드 컴퓨터가 설치되어 있는 Erle Brain이란 제어장치를 가지고 있다.
Erle Brain을 기반으로 모든 센서, 액추에이터를 제어하고, 지상국(ground station)과 통신하여, 필요한 데이터를 주고 받을 수 있다.
다음 링크를 참고한다. 이 문헌은 UDP 방식으로 미션플래너와 Erle Brain을 연결한다.
2. Erle Brain과 노트북 USB 연결
다음 그림과 같이 USB로 Erle Brain과 노트북을 연결한다.
그럼, 장치 관리자에 가상 이더넷인 RNDIS/Ethernet Gadget 드라이버가 생긴다. 다만, 드라이버 설치가 제대로 안되는 경우가 있어, 이와 관련해서는 이 글 참조의 RNDIS 문헌을 참고해 설치해야 한다.
그럼, 다음과 같이 가상 이더넷 드라이버가 정상적으로 동작한다.
이제, 이 이더넷의 IP주소를 설정한다. Erle-Brain의 기본 IP주소를 다음과 같이 설정한다.
3. 미션 플래너 실행 및 UDP 연결
이제, 다음과 같이 미션 플래너를 실행하고, UDP모드로 설정한 후, 연결 버튼을 클릭한다.
UDP 포트 번호는 6000으로 입력한다. 그럼, 다음과 같이 연결된다 .
이제, 드론의 파라메터를 수정한다. 이 경우에는 비행 모드를 AltHold로 설정하였다.
다시 드론 전원을 껐다 키고, 미션 플래너를 연결하면, 설정값 대로 AltHold 비행 모드가 되어 있는 것을 확인할 수 있다.
4. 드론 시운전 테스트
모두 설정하였다면, 이전 글을 참고해, 모터 테스트를 해 본다.
이제 외부에서 테스트해 본다.
시운전 전 드론 LED 표시 상태
드론 호버링(hovering) 시운전 모습
아직 호버링 비행이 안정적이지는 않다. ESC(electronic speed control) 등 캘리브레이션이 필요하다.
ROS기반 드론은 다양한 센서 연동을 통한 실시간 데이터 처리와 전송이 가능하다. 무엇보다, ROS의 수많은 센서 및 액추에이터 드라이버를 공짜로 사용할 수 있다. 이는 ROS기반 드론의 큰 잠재력이다. 이런 기술을 잘 활용한다면 드론 기반의 다양한 응용 서비스를 개발할 수 있을 것이다.
참고 내용
- Erle Robotics Forum
- RNDIS 이더넷 아답터 드라이버 설치 방법
- GROUND CONTROL STATION
- Erle Brain 2 connect to Mission Planner
- Erle Robotics Erle-Copter manual
- Erle-Brain Linux Autopilot
- Erle's BeagleBone doesn't recognize telemetry
- Erle-Brain 2 with Telemetry
- 3DR UBlox GPS + Compass Module
- Radio Control is not active or turned on
- APM Planner
- OROCA Drone Firmware 설명
댓글 없음:
댓글 쓰기