2015년 9월 26일 토요일

오드로이드(ODROID) XU4 기반 ROS 설치

이 글은 ODROID XU4 기반 ROS 설치 방법을 간단히 기술한 것이다.

1. 소개
오드로이드 XU4는 8개 코어를 가진, 에너지 저효율, 초소형 컴퓨터 보드이다. 가격도 8~9만원 밖에 안한다. 명함크기로, 오픈소스 운영체제를 지원한다. 자세한 내용은 다음 링크를 참고한다.



2. 설치
정식 설치 방법은 다음과 같다 (이 방법 보다는 이미지 설치를 권장한다).

1. 우분투 15.04 설치
2016.3 현재 우분투 15.04 버전 이미지가 릴리즈되었다. 이 버전에는 Ubuntu 15.04 with MATE Desktop, OpenCV 2.4.12.1, ROS Jade(Bare Bones), OpenNI 2.2, Libfreenect, Libfreenect2, Point Cloud Library 1.7.2, Arduino IDE 가 포함되어 있다.

이미지를 다운로드 받은 후, xz압축을 푼다. 그리고, Win32 Disk Imager를 이용해, img파일을 micro SD카드에 굽는다. 그리고, SD카드를 오드로이드에 넣고, 전원을 넣는다.



그럼, 다음과 같은 화면을 볼 수 있다(모니터가 딴곳에 가 있어, 프로젝터를 사용했다). 만약, 완전히 부팅되지 않고 중간에 계속 재부팅하는 문제가 있으면 전원이 아래 스펙인지 체크해 본다.
코어가 8개라, 8개의 썸네일이 출력된다.


디폴트 사용자 및 루트 계정 로그인 아이디와 암호는 다음과 같다.

Username: odroid
Password: odroid

Username: root
Password: odroid

제대로 설치되었는 지 테스트해 보기 위해, roscore도 실행해 보고, ~/opencv-2.4.12.1/samples/python 폴더의 몇몇 예제를 실행해 본다. 몇몇 예제들은 웹캠(webcam)이 있어야 한다.

제대로 설치되었다면, 다음과 같이 정상적으로 실행된다.

그림. roscore와 opencv의 delaunay 예제 실행 모습

그림. opencv의 에지 검출 등 몇몇 예제 실행 모습

opencv의 python, python2 폴더에는 스테레오 영상에서 3차원 포인트 클라우드 추출 등 흥미로운 예제들이 많이 있으니 확인해 보길 바란다.

2. 우분투 14.04 설치
우분투 14.04 이미지 설치 방법은 이 링크를 참고한다.

1. 우분투 14.04를 설치한다.
2. ROS를 설치한다.
3. 테스트한다.

앞의 방법과 같이 SD카드로 부팅하면, 다음과 같은 화면을 볼 수 있다. roscore가 정상 실행됨을 확인할 수 있다.



3. 결론
저렴한 비용으로, 옥타콥터 초소형 컴퓨터를 사용하다니.... 이건 너무 좋은거다. 정말 다양한 것을 많이 할 수 있다. 아래 영상을 참고해 보라.





댓글 12개:

  1. 안녕하세요? 저도 XU4 기반 우분투 14.04+ ROS + OpencV를
    현하려고 하는데, 위 링크에 OS로 오드로이드를 부팅해보니

    우분투가 아닌 루분투 기반인 것 같던데,
    상관이 없나요?

    ROS를 설치하고 하는 것에 있어서 괜찮나요?

    제가 결국 하려는 것은 위에 링크가 걸려있는

    유투브 동영상과 같은 것입니다

    답글삭제
    답글
    1. 상관 없을 것 같습니다만... XU4는 호환성이 좋아서, 설치시 크게 문제는 없었습니다.

      삭제
  2. 작성자가 댓글을 삭제했습니다.

    답글삭제
  3. 안녕하세요 XU4를 시작으로 첫 오드로이드 입문자입니다. 아두이노와 연결하여 아두이노는 모터 제어를, 주요한 기능의 연산은 오드로이드로 하려는데 가능할까요? 그리고 어떤식으로 시작해야할까요...너무 질문이 광범위하지만 도음 부탁드립니드

    답글삭제
    답글
    1. 오드로이드에서 아두이노 IDE 다운로드 받아 설치하고, 아두이노와 시리얼로 연결해서, 코딩하시면 되요. 시리얼포트로 아두이노를 통해, 모터를 제어하면 됩니다. 아래는 관련 영상이고요..

      https://www.youtube.com/watch?v=g79-bIzoZzc

      동작 방식은 다음과 같습니다.
      http://www.hardkernel.com/main/products/prdt_info.php?g_code=G138760240354&tab_idx=2

      아두이노와 모터는 모터 드라이버 회로를 사서 연결하면 되고요.. 아두이노 IDE에 보시면 예제가 있을 꺼예요.

      삭제
    2. 아 우분투 15버전에서는 IDE가 존재하는데 예전에 14버전에서는 IDE가 없었고 그때도 이런식으로 하는것이 가능했던것으로 알고있습니다... 우분투에서 아두이노 IDE를 사용하는 것이 아니라 리눅스로 조금은 어렵게 접근하는 방법은 없을꺼야?

      삭제
  4. 작성자가 댓글을 삭제했습니다.

    답글삭제
  5. 그리고 만약 IDE를 사용한다면 음.... 아두이노의 IDE에서 아두이노를 작동하는것 처럼 작동이 되는것인가요???

    답글삭제
    답글
    1. 네. 설치만되면, 아두이노 동일한 방식으로 제어할 수 있습니다.

      삭제
  6. 아하.... 좋은 정보 감사합니다. 아두이노처럼 할수 있다면 그쪽 언어는 잘잡고 있으니 굉장히 쉽게 할 수 있을것 같습니다. 너무나도 감사드려요. 그러면 15버전에도 있으니 16.04 최근 릴리스 버전에도 다운로드가 가능하겠죠???

    답글삭제
  7. 혹시 가능하시다면 메일로 여러가지 여쭤보고 싶습니다....kosh09@naver.com 으로 메일 보내주시면 제가 여러가지 질문드리고 싶은데 가능할까요?ㅠㅠ

    답글삭제
  8. 혹시 가능하시다면 메일로 여러가지 여쭤보고 싶습니다....kosh09@naver.com 으로 메일 보내주시면 제가 여러가지 질문드리고 싶은데 가능할까요?ㅠㅠ

    답글삭제