Étape 8: contrôle
Maintenant que vous avez votre robot delta, vous voudrez faire faire quelque chose.
Comme je l’ai dit précédemment, que vous aurez probablement vos propres préférences quant à quel microcontrôleur vous souhaitez utiliser ; dans mon cas c’était un STM32 Discovery Board.
Le schéma ci-joint illustre les différents modules que j’ai créé pour ce projet et qui les périphériques qu’ils contrôlent.
Je crois que les différents modules sont assez soi explicatives et j’espère que vous les trouverez bien commenté si vous essayez de les suivre.
Peut-être le plus intéressant module est le module de commande du robot (robot.c). Le code se traduit par un X, Y, Z coordonner en trois angles correspondants de servo.
Pourrait être la source des coordonnées XYZ
Un ordinateur via USB/RS232.
Un joystick, contrôleur de la Wii ou système Kinect (ce serait vraiment cool).
Une séquence fixe de postes.
Une position calculée basée sur une autre entrée (horloge (mon cas), caméra, etc.).
Dans le code, vous trouverez un certain nombre de paramètres qui sont utilisés pour les calculs. Peu importe quel système de mesure linéaire vous utiliser aussi longtemps que vous êtes compatible. Les angles sont en radians.
Longueur de bras inférieur - la longueur du centre du palonnier de commande vers le Centre des deux ball studs mixtes.
Longueur de la partie supérieure du bras - la longueur entre les centres des deux billes douilles mixtes.
Offset de base - la distance entre le centre de la base jusqu'à un point situé directement sous le centre de corne de servo.
Fin actionneur deport - la distance entre le centre de l’actionneur de la fin du Centre des deux rotules sur chaque bras.
Les coordonnées XYZ sont définie comme
X la distance vers servo 1 depuis le centre de la base.
Y la distance perpendiculaire à X dans le plan de la base.
Z la distance sur le plan formé par le palonnier trois centres.
Il y a une chose supplémentaire ; Il n’est pas possible de mettre en place l’avant-bras tel que le point neutre de chaque servo correspond exactement à un angle de 90 degrés. Vous aurez besoin d’introduire un paramètre d’étalonnage pour chaque servo. Dans mon cas, j’ai utilisé trois potentiomètres et calculer un angle d’étalonnage basé sur la valeur de l’ADC mesurée pour chacun d’eux.