ROS를 Raspberry Pi에서 실행할 수 있습니까?


28

ROS를 Raspberry Pi에서 실행할 수 있습니까 ?

ROS는 다른 컴퓨터, 다른 컴퓨터에서 다른 작업을 수행하는 동일한 코어의 다른 코어가있는 컴퓨터 네트워크에서 실행되도록 사임되었습니다. 그 기계 중 하나가 라즈베리 파이가 될 수 있습니까?

동글을 사용하여 WiFi를 통해 주 PC와 통신하면서 모바일 로봇 에서 EtherCAT 마스터 로 R-Pi를 사용하는 것을 고려하고 있습니다.

  • R-Pi가 ROS를 전혀 실행할 수 있습니까?
  • R-Pi에 1kHz 서 보링을 수행하기에 충분한 처리 성능이 있습니까?
  • WiFi 연결을 통해 호스트에서 일부 서 보링을 실행할 수 있습니까?

답변:


16

공식 RaspberryPi 운영 체제는 데비안 버전이지만 웹 사이트 에는 ArchLinux 버전도 있습니다 .

크로스 플랫폼에 대한 ROS의 주장에도 불구하고 현재 공식적으로 우분투 만 지원합니다. 그러나 ros.org 에 따르면 다음 OS에 대해 실험적인 설치가 이루어 졌습니다 .

  • OS X (홈 브루)
  • 페도라
  • 젠투
  • 오픈 수세
  • 데비안
  • 아치 리눅스
  • 윈도우

직접적인 경험이 없지만 (내 두 Pis가 수치스럽게 모퉁이에 앉아 있습니다) ros.org에는 빠르고 더러운 설정 가이드가 있습니다.

answers.ros.org에 비슷한 지침이 있습니다 .

문제가 발생하면 RaspberryPi 포럼 도 도움이 될 수 있습니다. 물론 SE는 자체 PI.SE 를 보유하고 있습니다 (@Jivings 및 @ppumkin에게 상기시켜 주셔서 감사합니다).

그렇지 않으면 Google "ros raspberry pi"만 있으면 더 많은 정보를 찾을 수 있습니다.


IMO, Debian이 Raspberry Pi에 더 적합합니다. Linux Kernel의 다른 특징과는 달리 커뮤니티 관점에서 더 쉽고 더 나은 지원을받을 수 있다고 생각합니다.
DogEatDog 1

3
@DogEatDog 동의하지 않습니다. 아치도 매우 잘 지원됩니다. 또한, 뻔뻔한 플러그를 여기에; 이 질문의 모든 라즈베리 파이 문제 는 공식 포럼뿐만 아니라 라즈베리 파이 에서도 감사하게 받아 들여질 것 입니다.
Jivings

@Jivings 나는 RaspberryPi.SE를 확인하는 것을 잊었다 고 믿을 수 없다 ... ROS에 대한 빠른 검색은 지금까지 어떤 결과도 포기하지 않지만 ;-)
ThomasH

@ThomasH - 마 당신은 당신이 와서 당신의 대답에 링크를 추가 할 수 있다고 생각 PI.SE 우리는이 올바른지으로 가능성이 일부 solutions.I은 당신의 답변을 편집 할 수있는 거기 원하지 않는 답변으로 충당되었다.
Piotr Kula

ROS는 BSD에서 실행되기 때문에-FreeBSD의 최신 릴리스까지 지원되지 않습니다. 물론 ROS 소스는 최신 BSD 코드에서도 실행되어야합니다. (- 미래에 충당 더 많은 지원이 있어야한다, 그래서 BCM의 비디오 드라이버는 오픈 소스를 가고 PS는) 그것은 모든 하드 플로트와 브로드에 의해 특정의 ARM에 대한 몇 가지 드라이버 업데이트로는 할 일
피오트르 쿨라

6

로봇 공학은 모든 의존성이 작동 할 때만 큼 어렵습니다. 마지막으로 필요한 것은 호환되지 않는 구성 요소 또는 지원되지 않는 조합에서 발생하는 추가 문제입니다.

나는 이것을 조금 살펴 보았고 여기 내 발전이있었습니다.

Raspberry Pi는 ARM CPU가 이전 명령어 세트 (ARM v6이라고 생각하십니까?)를 사용하기 때문에 Ubuntu를 지원하지 않으며 Ubuntu 팀은 2009 년에 이와 같은 지원을 중단했습니다.

비글 본은 여러면에서 라즈베리 파이와 유사하며 새로운 명령어 세트를 가지고 있으므로 우분투를 실행할 수 있습니다. 그러나 '최고의 Ubuntu ARM 배포판은 Linaro 프로젝트에서 나오고 있으며 구형 TI OMAP 3 프로세서를 사용하기 때문에 비글 본에 대한 지원이 몇 가지 수정되었습니다 (마지막 Linaro 12.03). 진행).

다음 단계는 현재 지원되는 최신 OMAP 4 프로세서를 사용하는 TI 팬더 보드를 살펴 보는 것이지만 가격은 200 달러에 가까워졌습니다.

그러나 이제 Ubuntu가 공식적으로 Nexus 7 용으로 출시되었습니다. Nexus 7은 200 달러로 Raspberry Pi가 제공하는 모든 것을 제공합니다. Raspberry Pi를 사용하더라도 충전기, Wi-Fi 어댑터, 저장 카드 및 케이블을 추가하면 35 달러보다 100 달러에 가깝게 올라가므로 Nexus 7이 훨씬 좋습니다.

마지막으로, 비 실시간 OS에서 1 khz 신호를 출력하려고 시도하지 마십시오. PJRC Teensy (Arduino 클론)와 같은 저렴한 마이크로 컨트롤러를 연결하고 간단한 실시간 작업을 처리하십시오. 이런 식으로 저렴한 시간에 민감한 작업에 저렴한 CPU를 사용할 수 있습니다. 다수의 타이머를 지원하는 16MHz에서 작은 AVR MCU는 이와 같은 6 가지 작업을 문제없이 처리 할 수 ​​있습니다.


1
Nexus 7에서 멋진 아이디어로 Ubuntu로 로봇을 실행하십시오! 우연히 이런 식으로 넥서스를 사용하는 로봇 공학 프로젝트를 알고 있습니까?
bit-pirate

5

이 질문은 ThomasH잘 대답 했지만 쿼드 콥터를 랩톱 에 무선 테 더링 할 가능성을 제안하고 싶습니다 . 즉, 쿼드 콥터를위한 멋지고 빠른 무선 (wifi ?, bluetooth?) 통신 프로토콜을 작성한 다음 노트북에서 무거운 CPU 작업을 수행하면서 명령 및 센서 쿼리를 R-PI로 전송합니다. 우리는 많은 구현을 시도했으며 모든 소형 로봇에 대해 유사한 설정을 설정했습니다. 또한 거의 모든 턱 드롭 쿼드 콥터 구현이 이런 식으로 설정됩니다. 그것은 인생을 쉽게하고 속도를 희생하지 않고 큰 타격 라이브러리를 사용할 수 있습니다.

솔직히 말하면 쿼드 콥터는 어쨌든 랩톱의 무선 범위를 벗어나지 않을 것입니다.


분명히 여기에서 "무거운 CPU 기능"이라고 말하면 SLAM 또는 컴퓨터 비전과 같은 많은 수의 크 런칭과 관련된 높은 수준의 컨트롤을 의미합니다. 저수준 비행 제어는 무선 연결을 통해 실현할 수 없을 정도로 실시간으로 충분히 높은 주파수에서 발생해야합니다.
yoos

서보 출력에서와 같이 비행 제어는 온보드 전자 장치에 의해 생성되어야합니다. 그러나 원하는 로터 속도와 같은 비행 명령 은 테더 PC에 의해 생성 될 있지만 (블루투스는 놀랍습니다) R-Pi에서 실행할 수있는 이유는 없습니다. 그런 경우, 다음 예 "무거운 CPU 물건"높은 수준의 계획, 다중 차량 조정, SLAM, CV 등을 말한다
조쉬 밴더가 후크


4

실험용 저장소는 Raspbian 용 ROS Groovy 패키지 (wheezy)로 채워졌으며 사용 지침은 여기에서 찾을 수 있습니다.

http://www.ros.org/wiki/groovy/Installation/Raspbian

이 리포지토리에는 350 개 이상의 패키지가 있으며 새로운 Rspbian 설치시 몇 분 안에 핵심 ROS 패키지를 설치할 수 있습니다.


2

나는 rosserial 프로젝트를 조사 할 것이다 . 기본적으로 컴퓨터의 ROS 노드와의 직렬 통신을 위해 Arduino 용 코드를 생성합니다. 다른 프로토콜을 사용하여 Pi와 호스트 컴퓨터간에 통신 할 수 있도록 Raspberry Pi로 변환 할 수 있습니다.


2

예. 확실한. 우리는 오랫동안이 일을 해왔습니다.
ROS는 "OS"가 아니며 크지 않습니다. "raspbian"에서 잘 돌아가는 "미들웨어"일뿐입니다.
우리는 공식 raspbian을 사용하여 굽기 때문에 ( "안정적인"환경에서 작업 할 수 있기를 바랍니다) ROS를 소스로 컴파일합니다. 여기에 (운동 용) 단계별 링크는 다음과 같습니다
http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Kinetic%20on%20the%20Raspberry%20Pi
당신이 ros_comm 또는 데스크탑을 시도 할 수 있습니다.
ros_comm을 시도한 후 나중에 다른 패키지를 추가했습니다.


1
Ubuntu Mate를 사용하고 패키지에서 ROS를 설치하지 않는 이유는 무엇입니까?
FooTheBar

Ubuntu Mate는 Pi2 및 Pi3의 라즈베리에서 ARM 칩에서 느리게 실행되기 때문입니다. Raspbian은 라이트 데비안이며 ARM 칩에서 정말 잘 작동합니다. @FooBar
Nick Qian

그것에 대한 소스가 있습니까? 속도 문제가 발생하지 않았습니다.
FooTheBar

라즈 비안을 선택한 후 더 이상 시도하지 않았습니다. 어쩌면 지금은 Ubuntu Mate dist가 라즈베리에 더 좋고 원활하게 사용됩니다. 우분투에서는 소프트웨어 관리가 좋기 때문에 다시 시도하고 싶습니다. 그러나 GPIO는 어떻습니까? 새로운 bersion 또한 GPIO 지원이 아마도 우분투, 난 .... 모르겠어요
닉 키안에게

1
테스트하지 않으면 왜 느리다고 말합니까?
FooTheBar


1

다른 (오래된) 대답에서 말한 것과 달리 , Raspberry Pi 2 Model B로 Raspbian 또는 Ubuntu 에서 ROS를 성공적으로 실행했습니다 .

Ubuntu를 계속 사용하면 Ubuntu를 사용할 수 있습니다. Ubuntu를 사용하여 Raspberry 카메라 모듈에 액세스 할 수 없었지만 뛰어난 패키지 관리 및 ROS와의 호환성에서 주요 이점을 볼 수 있습니다. 이상한 새로운 ROS 기능이 필요하십니까? sudo aptitude install패키지 만 있으면 모든 준비가 완료된 것입니다.


0

Ubuntu Mate 를 운영 체제로 사용하여 Raspi에 ROS를 설치 한 경험이 있습니다 . 기본적으로 일반적인 우분투 운영 체제이지만 팔 장치에 있습니다. 사전 빌드 된 바이너리를 통해 ROS를 설치할 수 있습니다. 더 이상 일반 우분투 랩톱을 구성 할 필요가 없습니다. 공식적으로 지원되지 않는 Pi 버전이 하나 있음을 알고 있습니다 (3B 이상이라고 생각합니다. 설치 후 고맙습니다). 누군가 내가 Google 검색 한 포럼 게시물에서 해당 문제를 해결하는 방법을 알아 냈습니다.


포럼 게시물 링크?
drerD

우분투 메이트를 다운로드 할 수 있도록 이미 웹 사이트에 링크되어 있습니다. ROS를 설치하는 것은 일반적인 우분투 머신처럼 말 그대로 간단합니다. 포럼 게시 링크가 필요한 이유를 모르겠습니다. 개인 저장소에 대한 학교 프로젝트 (ROS 소스 코드는 공개되지 않음) 였지만 우분투 메이트는 공개적으로 사용할 수 있습니다. 다른 더 구체적인 링크가 있습니다.
thatrobotguy


-2

예,

여기에서 다운로드를 찾으십시오.

http://answers.ros.org/question/200504/raspbian-jessie-ros-indigo-download-image/

C-Berry TFT 디스플레이 용 프레임 버퍼 드라이버 포함


죄송합니다. Martin, 그러나 링크 전용 답변 만 Stack Exchange에서 실제로 도움이되지는 않습니다. 페이지에서 관련 정보를 인용하면 (CC-BY-SA 라이센스가 있음) 답변이 훨씬 유용 할 것이며, 투표 결과가 떨어질 수 있습니다. 반대로.
Mark Booth
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.