Système d'exploitation Raspberry Pi pour la robotique

11

Existe-t-il un système d'exploitation pour le Raspberry Pi spécialement conçu pour exécuter des applications robotiques? Ou un système d'exploitation dont le but est d'optimiser juste pour exécuter quelques programmes spécifiques?

Je travaille avec un Arduino depuis un certain temps maintenant. En ce qui concerne l'efficacité, il est logique pour moi de simplement télécharger un ensemble spécifique de commandes et d'avoir le matériel nécessaire pour gérer cela, et ne pas avoir à se soucier de l'exécution d'un système d'exploitation à part entière. Est-il possible de faire quelque chose comme ça sur un Raspberry Pi?

Golmschenk
la source

Réponses:

7

Vous demandez deux choses différentes. 1) Y a-t-il un système d'exploitation spécifique à la robotique, et 2) Est-il possible de faire un contrôle au niveau matériel sur un R-Pi sans déconner avec un système d'exploitation. Il s'agit en quelque sorte d'une fausse dichotomie, car un système d'exploitation est un avantage, pas un coût, à moins que vous ne soyez sévèrement contraint pour la puissance de traitement.

Les microcontrôleurs (Arduino) sont conçus pour gérer des choses critiques en temps et généralement seulement une ou deux choses critiques en temps. Ils sont parfaits pour faire tourner les roues, etc. En ce qui concerne la planification de haut niveau, un langage / bibliothèques de haut niveau sont très utiles. Tout comme les applications multithreads, etc. C'est là que votre système d'exploitation entre en jeu. Sans plus de détails sur votre projet, je ne peux pas vous aider à décider quelle est la meilleure solution: Arduino ou R-Pi.

Pour répondre 1: Oui, faites simplement une recherche sur Google.

Pour répondre 2: Oui, les interfaces matérielles IO sont disponibles pour coder les API. Mais vous aurez besoin de (vouloir) quelque chose comme ceci:

Vous -> OS -> microcontrôleur -> matériel.

Voir cette excellente réponse

Josh Vander Hook
la source
Bonjour Josh, si vous souhaitez créer un lien vers une réponse (ou une question), il est préférable de cliquer sur le lien de partage en dessous de cette réponse (ou question) car ces liens sont permanents. L'URL que vous avez utilisée dans votre lien "Cette excellente réponse" est à la page de la question et n'est pas portable, elle peut donc se casser si le titre de la question change. Je suppose que vous faisiez plutôt référence à cette réponse .
Mark Booth
4

D'après votre question, ce qui pourrait vous intéresser, c'est un RTOS pour microcontrôleurs. Un très populaire est FreeRTOS , qui a apparemment été porté sur Raspberry Pi .

georgebrindeiro
la source
0

Vous pouvez utiliser un Linux simplifié (sans X-Windowing et d'autres utilitaires graphiques dont un robot peut ne pas avoir besoin). Raspian-Lite est l'un de ces systèmes d'exploitation.

Ensuite, il existe un certain nombre de cadres de robot qui fonctionneront sur le Raspberry Pi. Ils fonctionnent sous le système d'exploitation Linux.

ROS (le Robot Operating System) est l'un des frameworks les plus populaires, mais aussi le plus compliqué à apprendre. Comme Peter Parker l'a appris: Avec Great Power vient une grande courbe d'apprentissage. :)

ROS est écrit en C ++, mais est accessible dans un certain nombre de langages, dont Java et Python.

Gobot . Il s'agit d'un framework écrit dans le langage Go. Il possède un certain nombre de capteurs et de cartes que le framework connaît. Vous pouvez mettre l'intelligence principale sur un grand ordinateur et utiliser une carte plus petite avec une connexion sans fil sur le robot. Gobot a des projets frères (Artoo - utilise Ruby et Cylon.js - utilise JavaScript).

Go est un langage de type C assez facile à utiliser, créé par Google. Je pense à lui comme BASIC de C (Aller à C comme BASIC est à Fortran). Il se compile très rapidement.

Je pense à démarrer un port Rust de Gobot (Rust est encore un autre langage de type C similaire à Go, mais il a été conçu pour être aussi sûr que possible. De nombreuses erreurs de pointeur communes à C / C ++ sont détectées par le compilateur Rust .

NomadMaker
la source