Você está perguntando duas coisas diferentes. 1) Existe um sistema operacional específico para robótica e 2) É possível executar o controle no nível de hardware em um R-Pi sem mexer com um sistema operacional. Essa é uma espécie de falsa dicotomia, pois um sistema operacional é um benefício, não um custo, a menos que você esteja severamente limitado ao poder de processamento.
Os microcontroladores (Arduino) são projetados para lidar com coisas críticas em termos de tempo e, geralmente, apenas uma ou duas vezes críticas. Eles são ótimos para girar as rodas, etc. Quando se trata de planejamento de alto nível, uma linguagem / bibliotecas de alto nível são muito úteis. Assim como os aplicativos multithread, etc. É aqui que o seu sistema operacional entra. Sem mais detalhes sobre o seu projeto, não posso ajudá-lo a decidir qual é o melhor ajuste: Arduino ou R-Pi.
Para responder 1: Sim, basta pesquisar no Google.
Para responder 2: Sim, as interfaces de hardware IO estão disponíveis para codificar APIs. Mas você precisará (quer) algo como isto:
Você -> SO -> microcontrolador -> hardware.
Veja esta excelente resposta
Da sua pergunta, o que você poderia estar interessado é um RTOS para microcontroladores. Um muito popular é o FreeRTOS , que aparentemente foi portado para o Raspberry Pi .
fonte
Você pode usar um Linux simplificado (sem o X-Windowing e outros utilitários gráficos que um robô pode não precisar). Raspian-Lite é um desses sistemas operacionais.
Existem várias estruturas de robô que serão executadas no Raspberry Pi. Eles são executados no sistema operacional Linux.
O ROS (o sistema operacional do robô) é uma das estruturas mais populares, mas também a mais complicada de aprender. Como Peter Parker aprendeu: Com grande poder vem uma grande curva de aprendizado. :)
O ROS é escrito em C ++, mas pode ser acessado em várias linguagens, incluindo Java e Python.
Gobot . Esta é uma estrutura escrita na linguagem Go. Ele possui vários sensores e placas que a estrutura conhece. Você pode colocar a inteligência principal em um computador grande e usar uma placa menor com uma conexão sem fio no robô. O Gobot tem projetos irmãos (Artoo - usa Ruby e Cylon.js - usa JavaScript).
Go é uma linguagem semelhante ao C, fácil de usar, criada pelo Google. Penso nisso como o BASIC de C (Go é C como BASIC é Fortran). Compila muito rapidamente.
Estou pensando em iniciar uma porta Rust do Gobot (Rust é outra linguagem semelhante ao C semelhante ao Go, mas foi projetada para ser o mais segura possível ao tipo. Muitos erros de ponteiro comuns ao C / C ++ são capturados pelo compilador Rust .
fonte