« IllustraBot2 » : différence entre les versions

De Kernel Fablab Lannion
Ligne 143 : Ligne 143 :
* Nicolas
* Nicolas


[[Category:Projet]]
[[Category:Projet]] [[Category:IllustraBot2]]

Version du 21 janvier 2014 à 20:05

20140106 125232.jpg

Il revient et il a plus de dents !!

Présentation

Concept.svg

Un an après IllustraBot, les Bell Labs relancent une expérimentation 4G. Il est temps de le faire évoluer !

Cette fois, l'idée générale est de commander un bras robotisé à l'aide des mouvements d'un téléphone.

Architecture

Archi.png

Matériel

  • un bras robotisé : don du Lycée Le Dantec
  • une beagleboard / clef+sim 4G : don des Bell Labs
  • 6 drivers moteur pas à pas : (au moins 2) à acheter
  • un smartphone 4G : don Alcatel-Lucent

TODO Bras

  • reverser la carte de détection : claude, nico
  • tester les moteurs :jerome, claude , nico, ...
    • etat des moteurs ( numéro en fonction connectique - connectique à 4 fils pour tous les moteurs )
      • moteur 1 : axe vertical - OK
      • moteur 2 : épaule : 8 fils couplage en 2x2 - défectueux => nécessite une inspection des bobines 1 par 1
      • moteur 3 : coude : 8 fils couplage en 2x2 - OK
      • moteur 4 : rotation main gauche - OK
      • moteur 5 : rotation main droit - OK
      • moteur 6 : fermeture main - OK
    • NB : attention les moteurs de la pince 5-6 et 4-6 doivent fonctionner ensemble pour garder l'ouverture constante....
  • designer carte de connexion : jerome
    • voir carte controle moteur de la fraisseuse CNC
  • regarder IO beaglebone black : ??
  • mettre au propre le schéma robot : claude, OK
  • commande de 2+ drivers moteurs
  • classeur de documentation : jerome
  • taper alu: cedric

Logiciel

Commande du bras

3 axes de commande avec le gyroscope :

Exemples :

TODO

  • Cedric: [ANDROID] repartir du projet Illustrabot 1er du nom, et intégrer la détection des capteurs gyro avec conversion en gcode ( commande Gcode à définir avec l'équipe beagleboard)
  • préparer forge logicielle : jerome, OK
  • définir protocole de communication : Jérôme, en cours IllustraBot2:protocole
  • Étudier une solution basée sur LinuxCNC : FX

Code source

kernel 3.8.x

Les pins des connecteurs P8 et P9 peuvent avoir plusieurs fonctions : on parle de mode. Cela est configuré via un mux.

Avec les kernel 3.8.x la configuration de ce mux a drastiquement changé (pour unifier tous les arm). Il faut maintenant utiliser des Device Tree Overlay (dto).

Quelques liens très utiles :

Le package debian device-tree-compiler n'est pas bon voir ici

wget -c https://raw.github.com/RobertCNelson/tools/master/pkgs/dtc.sh
chmod +x dtc.sh
./dtc.sh

Voici un petit aide mémoire des commandes à passer pour appliquer un device tree overlay :

export SLOTS=/sys/devices/bone_capemgr.9/slots
export PINS=/sys/kernel/debug/pinctrl/44e10800.pinmux/pins
export PINMUX=/sys/kernel/debug/pinctrl/44e10800.pinmux/pinmux-pins
dtc -O dtb -o motor_test-1-00A0.dtbo -b 0 -@ motor_test-1.dts # compiler le fichier source
cp motor_test-1-00A0.dtbo /lib/firmware/ # copier vers le répertoire de firmware
echo motor_test-1 > $SLOTS # appliquer l'overlay
cat $SLOTS # vérifier son application
 ...
 8: ff:P-O-L Override Board Name,00A0,Override Manuf,motor_test-1
egrep "830|834" $PINS # vérifier le mode des pins
 pin 12 (44e10830) 00000007 pinctrl-single 
 pin 13 (44e10834) 00000007 pinctrl-single
egrep "830|834" $PINMUX # vérifier la réservation des pins
 pin 12 (44e10830): helper.15 (GPIO UNCLAIMED) function pinmux_motor group pinmux_motor
 pin 13 (44e10834): helper.15 (GPIO UNCLAIMED) function pinmux_motor group pinmux_motor
echo -8 > $SLOTS # remove overlay

Évolutions possibles

  • Docteur maboule ?
  • construction 3D -> maison pour les enfants : comme ça

Bilbiographie / documentation

Photos

Participants

Non exhaustif :

  • Jérôme
  • Claude
  • Fx
  • David
  • Cédric
  • Julien
  • Nicolas