Linux를 실행하고 Linux에 사용할 수있는 실시간 패치가 있다는 것을 알고 있습니다. 그 패치가 작동합니까?
누구든지 Raspberry Pi에서 다른 실시간 운영 체제를 사용해 보셨습니까?
아이디어는 시간이 중요한 규제 및 제어 작업에 보드를 사용하는 것입니다.
Linux를 실행하고 Linux에 사용할 수있는 실시간 패치가 있다는 것을 알고 있습니다. 그 패치가 작동합니까?
누구든지 Raspberry Pi에서 다른 실시간 운영 체제를 사용해 보셨습니까?
아이디어는 시간이 중요한 규제 및 제어 작업에 보드를 사용하는 것입니다.
답변:
RaspberryPi 에서 Xenomai 를 실행하는 데 관심이있을 수 있습니다 . 여기 에서이를 수행하는 방법에 대한 자습서를 찾을 수 있습니다. 간단히 말해서, Xenomai는 사용자 정의 Linux 커널 (커널 소스에 적용해야하는 패치 제공)을 생성하여 실시간 커널 인 다른 커널 (Xenomai 코어)을 실행할 수있는 프로젝트입니다. 이를 통해 드라이버를 작성할 필요없이 광범위한 하드웨어에서 Xenomai 응용 프로그램을 실행할 수 있습니다 (Linux는 매우 다양한 하드웨어에서 작업하기 때문에). 이를 통해 몇 가지 다른 RT API를 사용하여 RT 사용자 공간 응용 프로그램을 작성할 수 있습니다.
Linux 커널에서 활성화 PREEMPT_RT
는 제한된 지연 시간과 실시간 API를 제공합니다. 구성 외에 PREEMPT_RT
의 SCHED_FIFO
와 SCHED_RR
정책도 선택해야합니다. 또한 응용 프로그램은 적절한 API를 호출하거나 적절한 유틸리티를 사용하여 실시간 매개 변수를 설정해야합니다.
프리 전자 교육 에 따르면 , PREEMPT_RT는 실시간 기능을 커널에 제공하는 프로젝트였습니다. 2.6.33 및 3.0 커널 스트림으로 완전히 접혔습니다. 모든 것을 찾을 수있는 문서를 참조하십시오.
기본적으로 Linux 커널에 실시간 기능을 제공하는 두 가지 방법이 있습니다.
PREEMPT_RT
프로젝트를 수정하십시오 .RTLinux
, RTAI
,와 Xenomai
. ( Aedos
로는 Avio
아래에 언급?)편집하다:
RT PREEMPT patch
에 의해 잉고 몰 나르가 함께 사용 High Resolution Timers
(HRT) 커널이 달성 할 수 있도록 지원 하드 리얼 타임 기능을. 현재, 그 지원은 3.4.11 커널에 도달 하고 "좋은 소식"은 패치가 "축소되고"있다는 것입니다. 여기 에서 적용하고 사용하는 방법에 대한 훌륭한 자습서를 찾을 수 있습니다 .
Wyolum 은 쌓을 수있는 방식으로 Pi의 상단에 맞도록 aLaMode (Almond Pi라고 함)를 사용합니다. 실시간 클록이 있고 aTiny 328을 사용하며 GPIO Real UART / 전원 공급 장치이며 다양한 방식으로 플래시 가능합니다. Arduino가 실시간 인터럽트로 실행되는 동안 Pi는 원하는대로 웹 서버 / 데이터베이스를 수행 할 수 있기 때문에 좋습니다.
내가 본 최고의 솔루션 은 Heber 의 X10i-Raspberry Pi 용 실시간 제어 보드입니다 .
X10i는 모든 PC 시스템에서 USB를 통해 여러 입력 / 출력을 제어 할 수있는 강력하고 안전한 범용 컨트롤러입니다. Heber는 이제 프로그래머, 발명가 및 개발자가 PC에서 외부 세계와 더 쉽게 연결할 수 있도록 다양한 프로그래밍 언어로 지원합니다.
위의 링크는 훌륭하고 광범위한 문서를 제공하며 최신 버전의 Debian for Pi로 드라이버를 최신 상태로 유지하려고합니다.
다음은 Xenomai로 실행되는 Raspberry Pi 에 관한 기사 (Google Translate에서 프랑스어로 번역)입니다 .
RODOS는 또 다른 옵션입니다. 독일 항공 우주 센터와 몬테네그로 교수 팀과 학생들이 개발 한 오픈 소스 프로젝트입니다.
C ++을 사용하고 객체 지향 방식으로 완전히 작성되었으며 ARM7, Atmel AVR, STM32 / Cortex-M3, Xilinx, Raspberry Pi :), ...
내가 잘못하지 않으면 현재 위성 TET 및 LoTTo 컴퓨터에서 사용됩니다.
물론 두 가지 장점을 모두 발휘하기 위해 Linux에서 (가능하면) 실행하는 것이 좋습니다.하지만 Linux가 올바른 API를 제공 할 수 있는지 확실하지 않기 때문에 REAL TIME 질문이 남아 있습니다.
RODOS를 받으려면 Sergio Montenegro 교수 또는 DLR (German Aerospace Center)에 메시지를 작성해야합니다.
리눅스 외에도 실시간 운영 체제가 있습니다. 오픈 소스에서 매우 인기있는 것은 ChibiOS / RT입니다.
완전 휴대용, 오픈 소스, 초소형, 초고속 RTOS (실시간 운영 체제)
간략한 소개는 http://chibios.org/dokuwiki/doku.php?id=chibios:documents:introduction에 있습니다. 리눅스와 다르면 다음을 읽을 수도 있습니다.
ChibiOS / RT를 독특한 디자인으로 만들기 위해 설명하고 디자인해야 할 디자인 선택이 있습니다. 그 자체로는 전혀 새로운 것이 없지만 전체가 흥미 롭습니다.
또는 아닙니다. 당신이 그것을 좋아한다면-파이 실험은 https://github.com/steve-bate/ChibiOS-RPi 에서 경험할 가치가 있습니다 .
Raspberry PI 실험을위한 ChibiOS 포크.
저자는 좋은 가이드를 추가합니다
http://www.stevebate.net/chibios-rpi/GettingStarted.html
개인적으로, rtos에 관해서는, 리눅스는 평범한 나라의 요구를 위해 크로스 알파인 장비를 운반하는 것과 같습니다. 필요 없을 수도 있습니다. 파이조차도 너무 많을 수 있습니다. 더 적은 무게에 대해서는 http://forum.arduino.cc/index.php?topic=144715.0 을 확인하십시오 :)
RT_PREEMPT_FULL이 포함 된이 Hypriot Raspbian 버전을 참조하십시오.
http://www.ehu.eus/ehusfera/pablogn/2016/01/20/real-time-kernel-for-the-raspberry-sbc/