Résumé des épisodes précédents et résolution par approximation successive "manuelle" mais sans CAO :
Soit quatre roues dentées R1 à R4 aux formes et dimensions trouvées grâce à Filengrene. Une roue motrice R2 de 12 dents est montée sur un moteur pas-à-pas piloté par un microcontrôleur. On veut pouvoir retrouver une position donnée de la roue centrale R1 de 15 dents portant une aiguille. Pour ce faire, les mouvements de R2 sont également transmis par une roue de 24 dents (le nombre 24 est sans importance du point de vue fonctionnel), à une roue opaque comportant un trou judicieusement placé pour obstruer ou laisser passer la lumière infra rouge d'une "fourche optique", de sorte que le microcontrôleur puisse détecter cette position. Ainsi, quand R1 à fait un tour complet, R4 a également fait un tour complet, mais dans le sens inverse (ce sens n'a aucune importance).
En plus d'obtenir le dessin des 3 jeux de roues {R1-R2}, {R2-R3}, {R3-R4}, Filengrene nous donne les trois distances D1, D2 et D3 entre les axes des roues.
L'ensemble physique constitue une horloge équipée de trois moteurs et donc de trois fourches optiques. Un autre groupe de roues est représenté "en fantôme" sur la Fig_1.png, le troisième est la juste symétrie du premier groupe. L'observation du groupe en fantôme permet de comprendre pourquoi X4 vaut 2xD1. Cet objectif de disposition doit être atteint afin de simplifier grandement le câblage des fourches optiques qui seront alors soudées sur un circuit imprimé.
Le problème est qu'il n'est pas possible de placer les roues au hasard, car en plus d'être aux bonnes distances les unes des autres, elles doivent être engrenées aussi parfaitement que possible. Pour "ajuster" l'engrènement des roues, il est possible de jouer sur un angle noté δ1, et l’ordonnée de l'axe de R4, notée Y4.
Les lecteurs qui auront suivi ce thread depuis le début auront remarqué que l'approche des positionnements corrects se faisait dans un des derniers posts en utilisant un logiciel de CAO pour résoudre le problème de géométrie. Un bon ami a résolu ce problème pour moi de façon très didactique et j'ai ainsi pu inclure le résultat de son travail dans le tableau (Chiclayo.ods joint) antérieurement posté, ce qui fait que les bonnes positions peuvent être trouvées sans utiliser la CAO. Dans le tableau, les "constantes" sont placées dans les premières ligne du haut, et le reste de tableau montre les essais d'approches. α3 est le décalage angulaire à donner à R3 pour qu'elle engrène R2, quand son angle β2 est 0 (Inspirez vous de la roue en fantôme de la fig_4.png pour comprendre). Il y avait deux lignes par essai parce qu’il faut résoudre une équation du second degré (genre Y = aX²+bX+c pour ceux qui se souviennent), et il y a deux solutions mais une seule est applicable. J'ai noté δ2a et δ4a la première solution et δ2b et δ4b la seconde. Les valeurs obtenues utilisées sont indiquées dans une des cellules, par exemple la cellule M6, pour le premier essai) indique la solution utilisée ("Sol.a" ou "sol.b").
Pour finir, la rotation β3 de la roue R3 est calculée puis on calcule le modulo de cet angle par l'angle entre deux dents, noté EquA. Le même type de calcul est fait sur la roue R4 (ça change d'un essai à l'autre si vous approximez en jouant sur Y4) et est appelé EquB pour finalement donner l'"erreur d'engrènement" ΔEqu, qui doit être au plus prêt de zéro.
NOTE : Attention : δ est delta minuscule et Δ est delta majuscule, or LibreOffice (pour le moins) a tendance à placer la première lettre d'un libellé en majuscule, en roman comme en grec : relisez bien si vous manipulez le contenu des cellules.
Également joint, le texte de résolution du problème de géométrie de mon ami (ci-desous), ainsi que son tableau de vérification (Machupicchu.ods)…
-------------------------------
Bon, passons au problème.... (il n'est pas sûr que mes lettres grecques
ß et µ avec la convention Unicode sur clavier suisse soient visibles
dans le mail)
Sur le dessin joint (machupicchu parce que ça doit y ressembler), tu
peux empiler les segments de façon horizontale (H) ou verticale (V):
Equation H:
BH + AE = BG + FD
Equation V:
AH + GC = DE + CF
Ces 2 équations s'expriment en fonction de ß1, ß2, ß4, D1, D2, D3 et Y4.
En exprimant ß2 en fonction des autres inconnues dans l'une des
équations et le remplaçant par cette valeur dans l'autre, on a une
équation liant ß4 à ß1, D1, D2, D3 et Y4 (sans ß2). De la même manière
en exprimant ß4 en fonction des autres inconnues dans l'une des
équations et le remplaçant par cette valeur dans l'autre, on a une
équation liant ß2 à ß1, D1, D2, D3 et Y4 (sans ß4).
Valeur des segments:
BH = D1.cos(pi - ß1) = - D1.cos(ß1)
AE = 2.D1
BG = D2.cos(ß2)
FD = D3.cos(pi - ß4) = - D3.cos(ß4)
AH = D1.cos(ß1 - pi/2) = D1.sin(ß1)
GC = D2.sin(ß2)
DE = Y4
CF = D3.sin(pi - ß4) = D3.sin(ß4)
D'où les équations:
Equation H:
- D1.cos(ß1) + 2.D1 = D2.cos(ß2) - D3.cos(ß4)
qui donne pour ß4:
équation Hß4:
ß4 = arccos( (D2/D3 . cos(ß2)) + (D1/D3 . (cos(ß1) - 2)) )
ou pour ß2:
équation Hß2:
ß2 = arccos( (D3/D2 . cos(ß4)) + (D1/D2 . (2 - cos(ß1))) )
Equation V:
D1.sin(ß1) + D2.sin(ß2) = Y4 + D3.sin(ß4)
qui donne pour ß4:
équation Vß4:
ß4 = arcsin( (D1/D3 . sin(ß1)) + (D2/D3 . sin(ß2)) - (Y4/D3) )
ou pour ß2:
équation Vß2:
ß2 = arcsin( - (D1/D2 . sin(ß1)) + (D3/D2 . sin(ß4)) + (Y4/D2) )
En remplaçant ß2 par sa valeur donnée dans l'équation Vß2 dans
l'équation Hß4, on obtient:
ß4 = arccos( (D2/D3 . cos(arcsin( - (D1/D2 . sin(ß1)) + (D3/D2 .
sin(ß4)) + (Y4/D2) ))) + (D1/D3 . (cos(ß1) - 2)) )
En remplaçant ß4 par sa valeur donnée dans l'équation Vß4 dans
l'équation Hß2, on obtient:
ß2 = arccos( (D3/D2 . cos(arcsin( (D1/D3 . sin(ß1)) + (D2/D3 . sin(ß2))
- (Y4/D3) ))) + (D1/D2 . (2 - cos(ß1))) )
Chacune de ces deux équations doivent pouvoir se programmer sur ordi et
se résoudre par approximations successives... (fastidieux, je suppose
que tu l'as déjà fait).... c'est vraiment compliqué....
Par contre, on peut simplifier en mettant les équations H et V au carré.
Au préalable, on va prendre de nouvelles constantes M et N, fonctions
uniquement de D1, Y4 et ß1:
M = - D1.cos(ß1) + 2.D1 = D1.(2 - cos(ß1))
et N= Y4 - D1.sin(ß1)
De cette manière, les équations H et V s'écrivent simplement:
Hsimp :
M = D2.cos(ß2) - D3.cos(ß4)
Vsimp :
N = D2.sin(ß2) - D3.sin(ß4)
Mettons les équations Hsimp et Vsimp au carré:
M^2 = D2^2 .cos^2 (ß2) - 2.D2.D3.cos(ß2).cos(ß4) + D3^2 .cos^2 (ß4)
N^2 = D2^2 .sin^2 (ß2) - 2.D2.D3.sin(ß2).sin(ß4) + D3^2 .sin^2 (ß4)
D'abord on additionne ces deux équations :
M^2 + N^2 = D2^2 .cos^2 (ß2) - 2.D2.D3.cos(ß2).cos(ß4) + D3^2 .cos^2
(ß4) + D2^2 .sin^2 (ß2) - 2.D2.D3.sin(ß2).sin(ß4) + D3^2 .sin^2 (ß4)
puis on utilise les formules de trigo:
M^2 + N^2 = D2^2 - 2.D2.D3.(cos(ß2).cos(ß4) + sin(ß2).sin(ß4)) + D3^2
qui donne :
M^2 + N^2 = D2^2 - 2.D2.D3.cos(ß4 - ß2) + D3^2
puis:
ß4 - ß2 = arccos( (D2^2 + D3^2 - M^2 - N^2 )/(2.D2.D3) )
si on pose:
µ = arccos( (D2^2 + D3^2 - M^2 - N^2 )/(2.D2.D3) )
cela nous donne ß4 en fonction de ß2 ou ß2 en fonction de ß4:
ß4 = ß2 + arccos( (D2^2 + D3^2 - M^2 - N^2 )/(2.D2.D3) ) = ß2 + µ
ß2 = ß4 - arccos( (D2^2 + D3^2 - M^2 - N^2 )/(2.D2.D3) ) = ß4 - µ
On peut ensuite remplacer ß4 par ß2+µ dans l'équation Hsimp et la
résoudre en fonction de ß2 (ou remplacer ß2 par ß4-µ dans l'équation
Hsimp et la résoudre en fonction de ß4). On pourrait aussi utiliser
Vsimp pour l'une ou l'autre variante, mais on a déjà fait une opération
(c.a.d. l'addition des carrés) donc une seule opération est possible.
Dans Hsimp :
M = D2.cos(ß2) - D3.cos(ß4) = D2.cos(ß2) - D3.cos(ß2 + µ)
soit (en utilisant les formules de trigo):
M = (D2 - D3.cos(µ)).cos(ß2) + D3.sin(ß2).sin(µ)
Pour résoudre cette équation le mieux est l'analytique en utilisant les
formules de l'arc moitié :
t = tg(ß2/2)
avec : cos(ß2) = (1-t^2 ) / (1+t^2 ) et sin(ß2) = 2.t / (1+t^2 )
ça donne :
M.(1+t^2 ) = (D2 - D3.cos(µ)).(1-t^2 ) + D3.(2.t).sin(µ)
d'où :
t^2 . (M + D2 - D3.cos(µ)) - 2t . (D3.sin(µ)) + M - D2 + D3.cos(µ)
C'est une équation du second degré avec variable t (=tg(ß2/2)) qui va
nous donner ß2. ß4 s'obtient en additionnant µ.
---------------------------------------------
Note: ce site était bien fait, mais il a été bien dégradé, en particulier en supprimant la possibilité de modifier son propre post. Il apparaît clairement pourquoi dans mon dernier post (Cat83 : ce sont les clicks qui rapporte). Merci aux amis et adieu usinage.com.