vendredi 14 mars 2014

Contrôle en boucle fermée

Aujourd'hui est un grand jour...
C'est d'abord la fin de mon congé création d'entreprise. Je reprends mon travail chez SIREHNA. Cependant, le projet robokite ne s'arrête pas, car je reprends pour l'instant à mi-temps par période de 15 jours. Et donc aujourd'hui je ne travaillais pas.

J'ai pu aller encore à PlateformeC pour travailler sur le prototype.

Les actionneurs : treuils

Les capteurs


J'ai pu tester la version du code préparée hier soir.
J'ai d'abord coder un programme simplifié envoyant les ordres du joystick (captés avec pygame) pour commander les moteurs en vitesse.

J'ai ensuite modifié le code sur l'arduino pour que les moteurs contrôlent la position et l'angle de la barre en boucle fermée. Le joystick me servant à changer la position ou l'angle commandé.

Cela a bien marché et est une première (l'été dernier je n'avais commandé que l'angle). J'ai fait des réglages PID grossier (avec que du proportionnel), mais cela est suffisamment rapide et précis.

Une difficulté venait d'une des mèches qui sortait de la visseuse. Un bon coup de pince et le problème fut réglé.

Une autre difficulté fut la batterie qui finit par être déchargée à force de faire des tests. Peut-être me sera-t-il possible d'en emprunter pour en avoir plusieurs pour les tests en extérieur.

J'ai également eu des difficultés au niveau de la communication, et je n'ai pas réussi à utiliser l'interface dans le navigateur (qui marchait pourtant bien auparavant).

Enfin, le plus gros problème semble venir de l'encodeur linéaire qui perd parfois sa position, peut-être à cause d'une difficulté de gestion des priorités des "interrupts" entre softwareSerial et pinChangeInt. Je réfléchis à une redondance pour empêcher les dérives. Peut-être une webcam (12 euros) et un motif identifiable qui ne se répète pas (type code de gray, voir http://reprap.org/wiki/CamRap).

J'ai réussi à installer le programme simplifié de contrôle au joystick sur un raspberry. Cela marche tout aussi bien.

Il y a cependant parfois des comportements étranges, où les moteurs ne tournent pas alors que le joystick est poussé à fond. Les moteurs tournent lors du retour du joystick en position.

Autres avancées :
  • Montage d'un boîtier de dérivation électrique qui protégera les 4 cartes électroniques.
  • Préparation de mèches métalliques (pour remplacer éventuellement les mèches en bois).

La semaine prochaine je renforcerai les connections des moteurs à la carte avec des connecteurs Tamya


Aucun commentaire:

Enregistrer un commentaire