Projet de l’été : Xyloberry

Cet été, nous nous sommes lancés dans un projet innovant.

Nous souhaitons faire jouer du Xylophone à un Raspberry. Ce projet implique de nombreuses disciplines pour être mené à bien :

  • De la programmation (JavaScript et Node JS), un peu de système (OS Raspbian)
  • De l’électronique pour constituer le circuit qui permettra de piloter les percuteurs (des électroaimants)
  • De la 3D afin de construire un support pour les percuteurs, à la taille du xylophone, et des électroaimants. Le support est imprimé sur une imprimante 3D

Nous avons comme objectif de présenter notre réalisation au forum des associations de Leers, en septembre. Vous pouvez suivre l’avancement du projet sur la page Facebook d’Ordileers.

Prêts à relever un défi, et à rejoindre notre équipe de “Makers” ?

Sur la photo, le prototype du support 3D et un percuteur (électroaimant).

Mindstorm, l’autoformation – 7ème séance (08/06/2008)

Nous sommes arrivés au bout des tutoriaux. En cherchant un peu sur le site web nous sommes tombés sur 2 montages intéressants. Ces montages sont intéressants car ils sont fournis chacun avec 2 programmes : un simple et un complexe. Cela va nous permettre de monter un peu dans la connaissance des possibilités du robot. Nous avons donc commencé par le montage de « boîte a bruit ». L’intérêt de ce montage réside dans l’utilisation d’un lien, dans le programme entre 2 propriétés de composant. Cela nous a permis de voir qu’il s’agissait d’une espèce de « binding ». Cela relie l’angle d’un moteur au volume d’un son. Par contre nous avons été génés par la mémoire disponible dans le robot. Pour pouvoir télécharger le programme on a dû remplacer un son par un autre plus petit. Cela fait un peu peur pour la version complexe du programme (que nous n’avons pas encore regardée). Il va être urgent de passer à un soft qui place l’IA dans le PC et non dans le robot (Visual Studio for Robotics certainement).

Mindstorm, l’apprentissage – 6ème séance (16/03/2008)

Le robot
    Dernière séance avec les tutoriaux. Dans cette séance nous avons terminé le montage et le code du Bipède. Cela s’est fait en 3 phases :

  • Phase 1 : On a ajouter la « tête » du robot. C’est à dire le sonar. Le test consistait simplement a ce que le robot reste en pause jusqu’a ce que quelque chose se place devant lui. Il dit alors un texte et réalise un demi-tour. Bon c’était plutôt un quart de tour .. certainement une erreur dans le didacticiel.
  • Phase 2 (vidéo) : Ajout des bras au robot. Au démarage il se dandine. Quand il entend du son il bouge les bras. L’un de ses bras se termine par un capteur de toucher. Il permet d’arreter le robot.
  • Phase 3 : Ajout d’un capteur de luminosité. Le programme repart de zero, il affiche simplement une face souriante ou des ZZzzz en fonction de la luminausité.
[youtube video=’iQZH4TSvIM4′ vparams=’rel=0|border=0′][/youtube]

Travail sur

Mindstorm, l’apprentissage – 5ème séance (27/01/2008)

   Avec cette scéance, nous attaquons le dernier modèle des tutoriaux. Il s’agit d’un robot bipède. C’est quelque chose de difficile à réalisé car il ne s’agit pas d’un simple « lancé » de jambe. En effet pour que le robot reste fort stable, il va trés peu décoller les pieds. Conséquement, il va devoir se déhancher ! C’est donc de nouveau un problème plutôt de type mécanique. Heureusement nous étions nombreux. En suivant le tutoriel, nous avons monter les jambes. Plus de 40 diapositives et pas des plus simples. Bref nous y sommes parvenu.
[youtube video=’k4oKe7TTIsw’ vparams=’rel=0|border=0′][/youtube]
L’étape de programmation avait les éléménts nouveaux suivant :

  • Pilotage de l’écran (affichage d’un coeur qui bat)
  • Paraléllisation (progression et animation de l’écran en même temps)

Bon … le résultat n’était pas fameux. En effet pour un danceur de smurf c’était bon mais pas pour un marcheur. S’étant apperçu que les pieds n’adhérés pas assez au sol, nous lui avant fait des semelles anti-dérapentes (des petits freins en fait) (voir figure 1). Au final c’était dû à une erreure minime dans le montage : 1 cran de déclage dans une articulation.

Mindstorm, l’apprentissage – 4ème séance (09/12/2007)

Aprés présentation aux absents du travail effectué à la scéance précédente, nous nous sommes attaqués au 3ème modèle. Il s’agit d’un scorpion! C’est un engin mobile mais pas sur roues : il marche. Le principe est fort simple : Il avance droit devant lui à l’infini (aux piles prés 😉 ). Quand un obstacle surgit dans son « champ de vision » il se met a reculer le plus vite qu’il peut. Si l’obstacle en se déplaçant vers lui plus vite que lui arrive à moins de 15cm, il pique en détendant sa queue. L’interet principal au niveau du code était la première utilisation d’une boucle.

[youtube video=’LX_TNx-wKP0′ vparams=’rel=0|border=0′][/youtube]

Ca pique ! Et encore nous avons changer les pivots pour ajouter de la resistance mécanique. Avant il piquait nettement plus fort. Nous avons fait cette modifcation pour régler un autre problème. En effet au départ quand il avancait, la resistance des pivots était trop faible et la queue se pliait/dépliait légèrement. Cela provoquer un léger déséquilibre et deviait le scorpion de sa trajectoire.

Mindstorm, l’apprentissage – 3ème séance (30/09/2007)

Aujourd’hui, nous avons repris le bras de la dernière fois mais au lieu de suivre le manuel, nous avons élaboré le programme nous mêmes. Le résultat est meilleur. Comme vous pouvez le constater sur la vidéo suivante :

[youtube video=’yNX01F-Fwl0′ vparams=’rel=0|border=0′][/youtube]

L’étape suivante consistait à mettre en place le capteur colorimétrique. C’est à dire que le robot change d’action en fonction de la couleur de la sphère.

[youtube video=’fLumOaG0gZQ’ vparams=’rel=0|border=0′][/youtube]

La balle est bleue, c’est ce qu’il attend… en conséquence il la laisse sur place après avoir dit qu’elle était bleue.

[youtube video=’WbbnuLrTHs4′ vparams=’rel=0|border=0′][/youtube]

La balle est rouge, il n’en veut pas et la retire du support après avoir dit qu’elle était rouge.

Mindstorm, l’apprentissage – 1ère séance

Cette année, le club a fait l’acquisition d’un robot en kit. Il s’agit du kit Mindstorm de Légo. C’est un kit qui comprend des moteurs (3), des capteurs (son, contact, lumière, couleur, ultrasons), un cerveau et des pièces pour attacher tout cela comme on veut. Il est livré avec un logiciel permettant d’écrire des « programmes » d’automatismes.

Notre but est pour le moment de bien comprendre comment fonctionnent les moteurs et les capteurs grâce au logiciel fourni. Dans un deuxième temps nous passerons à Microsoft Visual Studio for Robotics qui peut piloter différents robots (et plus seulement celui de Lego). Il nous permettra de faire la même chose graphiquement mais exécuté par le PC et non plus le cerveau du robot. Et enfin nous pourrons écrire en .Net les modules que nous voulons. Cela pour passer de l’automatisme à l’intelligence artificielle. Si le coeur nous en dit, peut-être réaliserons nous des extensions en électronique.

Voici le logiciel fourni par Lego
 
Notre robot n’a pas encore de nom mais cela ne nous a pas empêché, dans le cadre des activités prévues ce dimanche, de réaliser le premier modèle complet du manuel. Le but est que le robot démarre tout seul dès que l’on place un objet devant lui… Il vient alors se placer devant et attend les ordres. A la détection d’un son suffisamment fort, il referme ses pinces sur l’objet, fait demi-tour et rapporte l’objet au point de départ.

[youtube video=’RDekVVj1pjY’ vparams=’rel=0|border=0′][/youtube]

Cybot, l’origine

Les prémices de l’activité robotique datent de Cybot. Un petit robot en kit que l’on achetait pièce par pièce chez le libraire. C’était un petit robot avec moteurs et capteurs qui était capable de se déplacer sur le sol en évitant les obstacles. Il pouvait aussi suivre une ligne tracée sur le sol ou suivre un rayon lumineux. Par contre il offrait peu de possibilités en terme de développement. En fait on ne pouvait que suivre le magazine. Même si à la fin on pouvait faire un soupçon de programmation.