본문 바로가기

Hardware/SBC (rasp, jetson, latte panda)

Jetson nano에 ROS2 foxy 설치하기

Jetson Nano는 Ubuntu 18.04에 대응하는 Jetpack이라는 것을 설치하게 됩니다. 그리고 우리는 그 위에 ROS1 melodic 버전을 설치하는 것이 일반적인 절차입니다.  그런데, ROS2가 인기를 끌면서, 또 Ubuntu가 20.04까지 나오면서 Foxy 혹은 그 상위버전의 ROS2를 Jetson Nano에 설치하고 싶은 분들이 많이지기 시작했습니다. 공식적으로는 불가능하죠. NVIDIA가 20.04 Ubuntu를 공식 지원하지 않는한... 그런데 만약 이미 가지고 있는 젯슨나노 보드에 단지 ROS2 Foxy를 설치해보는 것이 목적이라면, Jetpack의 기능을 다 사용하지 못하는것도 괜찮다면, 오늘 설명하는 방법도 있습니다.^^.

일단 먼저 이쪽 세계가 요즘 그렇듯 누가 이미 고맙게도 방법을 만들어 주었습니다. 구글에서 xubuntu 20.04로 검색합니다.

그러면 나타나는 nvidia forum을 찾아서 클릭합니다.

위에 보이는 Xubuntu 20.04 Focal Fossa L4T라는 글입니다. 

하단으로 페이지를 스크롤하면 링크가 있습니다.

이미지를 받아서 SD 카드에 구워야죠~

저는 Etcher라는 이미지 굽는 프로그램을 사용합니다.

이미지 선택후 SD 카드까지 선택하고 나면~

굽기만 하면 끝입니다.

이제 여기서 중요한 부분인데, 아직 다 구워진 SD카드를 젯슨나노보드에 넣지 말고 우분투가 설치된 PC에서 먼저 열어야 합니다.

열고 boot라는 폴더에서 

extlinux라는 폴더로 갑니다.

거기서 터미널을 엽니다.

여러분은 본인이 가지고 있는 젯슨나노보드의 모델을 알아야합니다. 일단, 저는 카메라 포트가 두개가 있는데, 그런 보드는 젯슨나노 B01 모델입니다. 그리고 아까 extlinux 폴더에서 한단계 상위로 가서 해당 모델 넘버가 있는 dtb 파일을 찾습니다.

그 파일 이름을 복사해 둡니다.

그리고 extlinux에 있는 파일이 설정파일 하나가 있는데 그걸 gedit로 엽니다. (sudo 명령도 사용해야 합니다.) 그리고 위 그림처럼 FDT하고 시작하는 줄을 추가해 둡니다.

그리고 나서 SD 카드를 젯슨나노 보드에 연결해서 부팅을 합니다. 그 후 설치는 그냥 다음다음 이라서 이 글에서는 생략하구요. 더 상세한 것은 이 글 하단의 유부트 영상도 같이 공개하고 있으니 확인해주세요.

그리고 젯슨 나노에서 터미널을 열어서 net-tools를 apt install 명령으로 설치합니다.

이제 ifconfig 명령으로 나의 젯슨나노의 ip를 확인합니다.

추가로 ssh도 젯슨나노에서 설치해 둡니다.

이제 ROS2 foxy 설치 안내 가이드 문서를 열어 둡니다.

아참.. 그리고 팬이 잘 안돌 수 있습니다. 위에 보이는 jetson nano fan ctl github 페이지에서 받아서 설치합니다. 그러면 

팬이 잘 구동됩니다.^^.

아무튼, 그렇게 ROS2 foxy 버전의 설치 안내대로 따라하면 됩니다.

대망의 ros-foxy-desktop도 설치합니다.^^

이제 listener 노느와 talker 노드를 테스트해보면 됩니다. 멋지게 되죠^^. 위 내용은 모두 아래 동영상에서 다루고 있습니다.

반응형