Étape 1: Mathématiques : conversion de position du crayon à angles de servo
Cette section explique comment la position du curseur de la souris sur l’écran de l’ordinateur est convertie dans les angles pour les servomoteurs pour la fin de l’écriture des bras articulés reproduit le mouvement du curseur de la souris.
Il n’est pas nécessaire de comprendre cela pour terminer avec succès l’intructable, que je vais vous donner les éléments de code qui mettent en œuvre de la conversion de la position du curseur à angles de servomoteur.
Analyser un servomoteur unique
Si nous analysons une installation avec un seul bras et servomoteur (figure ci-dessus) :
Appeler O l’origine de notre référentiel. Il est placé sur l’axe de rotation du servomoteur.
Appeler P le point que nous voulons atteindre sur le plan de l’écriture, ou position du stylo.
Call (x, y) les coordonnées du P.
Appel a la longueur des segments de bras. (Note : si tous les segments du bras sont de longueur égale, les calculs sont beaucoup plus faciles).
Appelez J la position de l’articulation où les segments de deux bras sont connectés.
Appelez r la distance OP: r = (x ² + y²)1/2
Appelez θl’angle entre l’axe des x et les OP: θ = atan2(y,x)
Dans le triangle de peuplement :
La distance OJ = a
La distance JP = un
Appelez φ l’angle PÔJ : φ = acos (r / (2 a))
Appel α l’angle qui doit être nourris au servomoteur pour atteindre la position P :
α = θ + φ
Α = atan2(y,x) + acos ((x ² + y²)1/2 / (2 a))
Notez que cet angle d’alimentation à un servomoteur unique ne limitera pas position du stylo jusqu'à un point. Il obligera J à un seul point, mais laissera P libre de se déplacer sur un cercle de rayon un autour de J. ajout que deuxième servomoteur nous permettra de limiter la position de P plus.
Ajouter le deuxième servomoteur
Nous pouvons répéter les calculs réalisés dans le paragraphe précédent, sauf que cette fois le point que nous voulons atteindre P, est considéré dans le référentiel du deuxième servomoteur, qui est décalé de la référentielle nous avons utilisé plus tôt.
Appelons d la distance entre les axes des deux servomoteurs.
Les coordonnées de P dans le référentiel du deuxième servomoteur sont: (x + d, y)
La configuration des armoiries de la deuxième servomoteur est similaire mais en sens inverse, afin que nous trouvons :
Appel α2 l’angle qui doit être nourris au deuxième servomoteur pour atteindre la position P:
α2 = θ2 - φ2
Α2 = atan2(y,x+d) - acos (((x+d) ² + y²)1/2 / (2 a))
Nourrir les angles α et α2 pour les deux servomoteurs obligera P pour être à l’intersection de deux cercles = deux points. Nous pouvons limiter le domaine de P, de telle sorte que la plume est initialement placée à la première de ces deux points et n’ont jamais la chance de passer à l’autre point d’intersection.
De cette façon nous pouvons pleinement contrôler la position du stylet en alimentant deux angles pour les servomoteurs.
Les images ci-dessus montrent les formes du domaine accessible sur le plan de l’écriture pour différentes valeurs de longueur de bras (un) et servomoteur offset (d).