Simulateur robotique autonome (ou capable de l'être)

13

Je suis un ingénieur logiciel qui fait du bénévolat dans un organisme sans but lucratif qui initie les jeunes filles à la technologie. Nous avons récemment parlé de méthodes pour introduire ces enfants dans le monde de la robotique, et je suis curieux de savoir quels types d'options à faible coût nous avons.

Une idée très intéressante serait d'avoir un simulateur en ligne ou (plus préférablement) un simulateur autonome hors ligne avec lequel nous pouvons construire et programmer des robots simples. Peut-être rien de plus que de faire glisser des composants ensemble, puis de programmer les interactions entre ces composants.

Quelle (s) solution (s) existe-t-il que je pourrais être en mesure d'utiliser dans notre sensibilisation?

Sampson
la source
D'après mon expérience, un robot d'apparence moyenne qui ne fonctionne pas reçoit beaucoup plus d'attention (en tant que robot) qu'un robot à l'air cool à part entière dans un simulateur. Tant qu'il n'est pas réel, il peut aussi bien s'agir d'un jeu d'ordinateur ou d'un dessin animé pour tous les enfants.
Shahbaz
Nous avons besoin d'un simulateur pour que les filles puissent réellement apprendre des concepts de programmation et les mettre en pratique. Le simulateur n'a pas besoin d'être joli - il ne peut s'agir que de formes géométriques grossières. C'est le code qui compte.
Sampson

Réponses:

7

Stage et Gazebo sont des simulateurs 2D et 3D open source respectivement. Ils sont créés et maintenus par le projet Player . Ils sont très faciles à utiliser et disposent de nombreuses cartes et robots prédéfinis. Selon l'expérience de votre public, vous devrez peut-être faire un peu de travail (par exemple, créer des fichiers de configuration et les classes principales).

Ils ont également quelques avantages supplémentaires. Tout d'abord, tant que vous créez votre code de contrôle principal sous forme de plug-ins de lecteur, ils peuvent être facilement adaptés à de vrais robots. Deuxièmement, il existe un grand nombre de plug-ins déjà conçus pour fonctionner avec du matériel réel. Troisièmement, ils travaillent avec ROS .

DaemonMaker
la source
4

C'est peut-être un peu cher (75 CHF) mais je suggère quand même Colobot . C'est un environnement agréable, presque comme un jeu, où les robots doivent aider les humains à rendre une base spatiale habitable. Les robots sont programmés par les enfants tandis que des tâches de plus en plus complexes sont effectuées. Le programme enseigne les principes fondamentaux de la programmation d'une manière amusante et orientée vers les objectifs.

rics
la source
3

La robotique Microsoft est GRATUITE et comprend un simulateur . Ce n'est pas exactement l'environnement le plus facile au monde, mais il est robuste et approprié à la vraie robotique. Je pense qu'avec une certaine implication des enseignants pour organiser les choses à l'avance, cela pourrait être utilisable. Il existe un `` package '' de simulateur pour LEGO, Neato et certains autres robots, et ils peuvent être programmés en C # ou dans un langage de glisser-déposer visuel.

Encore une fois, je pense qu'il faudrait un peu de travail à l'avance pour le rendre facile à utiliser pour les jeunes, mais ce ne serait pas si difficile et ce serait mon approche compte tenu de vos besoins. Je dirais qu'en ce qui concerne la complexité, cet environnement (Windows) par rapport à un environnement Linux avec Gazebo / ROS, l'environnement Windows serait légèrement moins compliqué, bien que la plupart de ces éléments soient, espérons-le, cachés lors des travaux de préparation.

Spiked3
la source
2

RobotC dispose d'un simulateur , bien que les deux soient des produits à certains prix. Cependant, ils sont très orientés vers les jeunes étudiants et l'éducation. Ce serait la voie la plus simple et la plus appropriée si les coûts ne sont pas un facteur de blocage ( environ 100 $ par licence pour les deux pour un seul utilisateur, 300 $ pour 6 utilisateurs, 600 $ pour 30 utilisateurs ).

Si vous achetez la version étudiante ROBOTC pour MINDSTORMS NXT de LEGO le prix peut être de 49 $ pour chacun ou 40 $ (plus de 20 licences)

Spiked3
la source
2

V-Rep (Virtual Robot Experimentation Platform) semble être assez large dans les types de simulations qu'il peut faire. Il est gratuit à des fins éducatives et est livré avec une large gamme d'outils. Vous pouvez jeter un œil à cette vidéo YouTube pour une démonstration.

Shahbaz
la source
1

Ce n'est peut-être pas un simulateur robotique complet, mais nous utilisons la CAO 3D, Autodesk Inventor, beaucoup pour les simulations. Habituellement, nous créons une interface pour la CAO similaire à ce que nous voulons qu'elle soit pour le matériel. De cette façon, nous pouvons utiliser le modèle CAO comme prototype virtuel pour:

  • Détectez rapidement les erreurs de conception. Collisions, pas assez de coups, etc.
  • Il a également été utile pour trouver des compensations à des erreurs telles que des erreurs d'alignement. En utilisant le CAD, nous pouvons modéliser différentes erreurs une par une et tester nos compensations. Il est commode de pouvoir introduire des erreurs importantes avec un signe connu.
  • Le CAD donne également des réponses sur des choses telles que les moments d'inertie.
  • Nous utilisons également le modèle CAO pour générer le programme de l'équipement.
Johan Larsson
la source
Corrigez-moi si je me trompe, mais la CAO se concentre beaucoup sur la modélisation correcte du matériel et de la physique, et encore moins sur la programmation du robot. L'OP s'intéresse à l'enseignement de la programmation, pas de l'ingénierie, donc je pense qu'un système de CAO ne résout pas son problème
ThomasH
@ThomasH nous avons eu un certain succès de programmation à l'api de la CAO et de cette façon avons pu faire beaucoup de développement. Dois-je supprimer?
Johan Larsson
1
Pas besoin de supprimer. Ce n'est pas une mauvaise réponse simplement parce que je pense que ce n'est pas un bon choix pour le PO. Le vote propulse généralement la réponse la plus appropriée au sommet de toute façon, et le PO acceptera celle qui a le plus aidé. Mais le vôtre pourrait toujours intéresser quelqu'un avec un problème similaire qui rencontre cette question
ThomasH
1

Vous voudrez peut-être consulter " MindRover ". Il est ancien et plus difficile à trouver maintenant, car le site Web d'origine est disparu, mais peut toujours être trouvé sur Ebay ou Amazon . Bien que axé sur le jeu / la mission, il s'agissait de choisir parmi une palette de composants de robot, de les placer sur un châssis, puis de les câbler. Il était vraiment bien fait pour un jeu et pouvait être utilisé pour explorer des concepts simples à semi-avancés. Quelques captures d'écran ici: http://images.google.com/images?q=mindrover .

Si vous recherchez quelque chose d'un peu plus sérieux avec des capacités réelles, vous voudrez peut-être consulter FlowStone for Education . Je ne l'ai pas utilisé, mais je crois que c'est un environnement de programmation visuelle idéalement adapté au travail de type robotique.

Enfin, bien qu'il ne s'agisse pas d'un logiciel ou d'une simulation, j'ai récemment rencontré un commentaire sur reddit par phblj concernant une technique pour introduire la programmation , et je pensais que c'était vraiment bon (et surtout adaptable à la programmation robotique). Citation:

Excellent exemple d'ordinateurs que j'ai fait avec des enfants: un enfant a dû être le "programme" et a donné des instructions sur la façon de faire un sandwich au beurre d'arachide et à la gelée, mais ils ne pouvaient pas regarder mes actions. J'étais l'ordinateur et j'ai suivi exactement les instructions. L'hilarité en a résulté. (Ne pas retirer le couvercle de la barre d'arachide, ne pas sortir le pain de la boîte dans laquelle je l'avais). Après une minute, un autre enfant est venu et a essayé. Ils sont allés un peu plus loin, mais ont quand même pataugé. «Mettez le beurre d'arachide sur le pain» a fait que le pot était assis sur le pain, etc. Il a fallu plusieurs enfants, mais finalement nous l'avons eu. Si vous avez un assistant, demandez-lui d'écrire les instructions comme il est dit, en créant le «programme».

Vous pouvez entrer dans les explications, alors, mais ce qui est vraiment resté, c'est que les enfants étaient chacun "plus intelligents qu'un ordinateur". Mais ces ordinateurs étaient vraiment, vraiment rapides à suivre les instructions. Ils avaient donc besoin d'utiliser leur intelligence et la vitesse des ordinateurs, et ... de la programmation!

Kaliatech
la source