Autres Trouver deux fractions dont la somme vaut une fraction

GUGUSSE2

XLDnaute Occasionnel
Bonjour,

J'ai EXCEL 2007 et j'aimerai résoudre le problème suivant :

La raison :
Lorsque l'on veut usiner un engrenage par exemple (de N dents), on utilise un diviseur, appareil qui effectue i/K tours à chaque tour de manivelle;
Pour rendre les choses plus précises, devant la manivelle, on place un disque comportant des cercles de trous (exemple, plateau "A" : 15,16,17,18,19 et 20 trous).
La manivelle peut donc faire des tours complets mais aussi des fractions de tours.

exemple : 19 divisions à réaliser avec un diviseur au 1/90°.
90/19 = 4,73... = 4 tours + 0,7368 tours.
0,7368 t correspondent à 14/19.
Pour réaliser la pièce, il faudra tourner la manivelle de 4 tours + avancer de 19 espaces sur le cercle de 19 trous chaque fois que l'on voudra réaliser une dent.
(4 + 14/19) x 4 x 19 = 360° (la "division" est exacte) (le "4" correspond au nombre de degrés imposé à la broche du diviseur lorsque la manivelle fait 1 tour (360/90) ).

Mais avec ces trois plateaux (ces 18 cercles de trous), toutes les divisions ne sont pas réalisables.
Pour y remédier, on utilise la division composée (le résultat n'est pas toujours exact !) :
On effectue un certain nombre de tours "entiers" + une fraction de tour sur un cercle + (ou -) une autre fraction de tour sur un autre cercle.
Exemple :
61 divisions avec un diviseur au 1/90° : faire 1 tour + 16 espaces sur le cercle de 49 trous + 7 espaces sur le cercle de 47 trous.
(1 + 16/49 + 7/47) x 4 x 61 = 360,014 ° (la "division" est approchée).

Le problème :
(**) Le problème est donc de trouver deux fractions dont la somme (ou la différence) est égale à une fraction (la partie fractionnaire de K/N) (avec une erreur à ne pas dépasser).

(++) J'ai récupéré sur le net un programme EXCEL qui semble donner le résultat, mais beaucoup de formules manquent, il y en a partout (qui ne servent pas toutes !) et je ne comprends pas la démarche du calcul.

.
Est-ce que quelqu'un est capable de m'aider à comprendre ce programme EXCEL (++) ou connaît le moyen de résoudre le problème (**)?

Désolé d'avoir été "long" dans la présentation du problème, mais il fallait que vous assimiliez l'utilisation du diviseur avec un ou deux disques.

D'avance merci.
Cordialement,
GUGUSSE2
 

Pièces jointes

  • IndexRT.xls
    43 KB · Affichages: 16

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour.
A rien, un résidu. Je l'ai collé en macro au cas où . Mais le résultat n'est pas satisfaisant.
Je suis revenu à ma solution de bourrin. Je travaille dessus.
Le problème c'est que la solution serait donnée ( si ça marche ) en 30 secondes. Est ce rédhibitoire ?
De toute façon je continue. Ne jamais se mettre à genoux devant un mur, il semble encore plus haut !
 

eriiic

XLDnaute Barbatruc
Bonjour à tous,

Une question peut-être saugrenue (j'ai un peu de mal à visualiser ta machine à tailler les pignons ;) )
Tu as 4,73 tours à faire, le but du jeu étant de trouver les 0.73 par somme (ou différence) de fractions.
Mathématiquement parlant, 4.73 c'est aussi 5 - 0.27
Donc est-il possible que les 2 plateaux utilisés le soit en négatif ?
Ce qui reviendrait à faire 5 tours moins 0.27
Juste histoire de ne pas éliminer à tort des solutions plus précises.
eric
 

GUGUSSE2

XLDnaute Occasionnel
Donc est-il possible que les 2 plateaux utilisés le soit en négatif ?
Ce qui reviendrait à faire 5 tours moins 0.27
Juste histoire de ne pas éliminer à tort des solutions plus précises.
Exact ! cela ouvre de nouvelles possibilités (et double le travail !
D'un fichier de 1,7 Mo (sylvanu) on passe à 3,4 Mo !

Ce qu'il faut éviter, c'est de tourner dans un sens pour un plateau et dans l'autre sens pour le deuxième plateau car à ce moment, le jeu vis-roue tangente (ce qui fait le rapport 40:1 ou 90:1) intervient dans la précision de l'indexage !
Il faut préférer les rotations dans le même sens et ainsi, je keu n'intervient pas.

Le mettre chez un hébergeur (google drive par exemple) et mettre le lien de téléchargement pour que celui qui veux le voir y ait accès.
D'un autre coté, tout le monde (celui des usineurs intéressés pas ce programme) ne pourra peut-être pas l'exploiter sur son ordinateur (ça va "ramer" !).

Est il possible d'installer plusieurs plateaux à la fois ou ne peut il y en avoir qu'un seul ?
Le problème était posé pour "trouver deux fractions égales ...", donc deux plateaux diviseurs !
Mais beaucoup de divisions ne nécessite qu'un seul plateaux.
Il n'est guère possible de monter plus de deux plateaux sur un diviseur (problème d'interférences entre les pointeaux et les alidades et d'accès aux trous.
Après, il existe la division différentielle, mais là, il faut un diviseur prévu pour, car c'est la rotation de la broche qui (rétroactivement) fait tourner grâce à des engrenages le plateau à trous pour corriger la différence.
C'est un autre problème pour calculer le train d'engrenage qui n'a pas lieu de figurer ici.
 

eriiic

XLDnaute Barbatruc
Ce qu'il faut éviter, c'est de tourner dans un sens pour un plateau et dans l'autre sens pour le deuxième plateau car à ce moment
Je ne vois pas bien ce que ça recouvre, tu peux développer ?
Mon idée est d'explorer les plateaux 2 à 2, et pour chaque plateau aller de -K/x à +K/x pour mémoriser la somme la plus proche de l'objectif.
Si possible parle avec des exemples en terme de somme/diff de fractions autorisées ou interdites.
 
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Gugusse j'ai trouvé pour être rapide et peu lourd. Passer tout en VBA. Voir fichier joint.
Par contre, bizarrement il y a des engrenages que je n'arrive pas à tailler . Pour des divisions de 9,10,15,18,30,45.
Bizarre. As tu une explication ?
 

Pièces jointes

  • PlateauDiviseurEngrenagesParVBA.xlsm
    27.2 KB · Affichages: 3

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir, ci joint la V3, il y avait un bug qui explique les erreurs vues dans la précédente version.
On arrive à une erreur < 0.035° pour un tour entre des division qui vont de 4 à87. Et c'est rapide, moins de 100ms sur mon vieil I5.
Gugusse, est ce que ça te vas ?
 

Pièces jointes

  • PlateauDiviseurEngrenagesParVBA(V3).xlsm
    28.6 KB · Affichages: 2

GUGUSSE2

XLDnaute Occasionnel
Je ne vois pas bien ce que ça recouvre, tu peux développer ?
Si tu tournes la manivelle (le pointeau devant le disque à trou) dans un sens, la vis (liée à cette manivelle) va faire tourner la broche (liée à la roue tangente) (de 1/40 ou 1/90) de son angle.
Si après avoir fait cette rotation (avec le premier disque) tu tournes dans l'autre sens avec le deuxième disque, une partie de cet angle va servir à rattraper le jeu qui existe au niveau du système roue tangente-vis sans fin et ne sera donc pas communiqué à la broche (liée à la roue tangente).

Si possible parle avec des exemples en terme de somme/diff de fractions autorisées ou interdites.
Il n'y a pas de sommes ou de différences interdites !
2 + 7/3 + 4/49 est bon,
1 - 5/6 - 16/28 est bon,
0 + 5/6 - 17/28 est à éviter !

Pour des divisions de 9,10,15,18,30,45.
Il est très rare qu'un amateur taille des pignons de moins de 13 dents car il y a des interférences entres les dents des pignons qui engrènent ensemble et il faut un déport de denture.
Ce n'est pas à la portée d'un amateur et la question de tailler de tels pignons ne se pose pas.

Pour division = 9 :
90/9 = 10 ==> il faut faire 10 tours de manivelle quelque soit le plateau.
40/9 = 4 4/9==> il faut faire 4 tours de manivelle + 8 trous sur le plateau de 18 trous.
Pour division = 10 :
90/10 = 9 ==> il faut faire 9 tours de manivelle quelque soit le plateau.
40/10 = 4 ==> il faut faire 4 tours de manivelle quelque soit le plateau.
Pour division 15 :
90/15 = 6 ==> il faut faire 6 tours de manivelle quelque soit le plateau.
40/15 = 2 10/15 ==> il faut faire 2 tours de manivelle + 10 trous sur le plateau de 15 trous.
Pour division 18 :
90/18 = 5 ==> il faut faire 5 tours de manivelle quelque soit le plateau.
40/18 = 2 + 4/18 ==> il faut faire 2 tours de manivelle + 4 trous sur le plateau de 18 trous.
Pour division 30 :
90/30 = 3 ==> il faut faire 3 tours de manivelle quelque soit le plateau.
40/30 = 4/3 ==> il faut faire 1 tours de manivelle + 5 trous sur le plateau de 15 trous.
Division 45 :
90/45 = 2 ==> il faut faire 2 tours de manivelle quelque soit le plateau.
40/45 - 8/9 ==> il faut tourner de manivelle de 16 trous sur le plateau de 18 trous.

Je ne suis pas suffisamment au point en VBA pour te dire ce qui ne va pas !

Le fichier tout en VBA ne travaille qu'avec un seul plateau
La division directe (avec un seul plateau) est à la portée de n'importe qui "sur le tas" (voir exemples plus haut).
Le plus dur (voire impossible) est de déterminer les actions à faire avec eux plateaux.
Mais le programme capable de trouver les solutions avec deux plateaux trouvera à fortiori les solutions ne nécessitant qu'un plateau !

Est-ce que ça a un sens de prendre le trou 15 du plateau 15 ?
Cela à un sens, mais c'est absurde : cela revient à faire un tour complet et la taille du cercle (son nombre de trou) importe peu. C'est inutile.

Il n'est peut-être pas inutile de vous montrer comment se fait la division avec deux plateaux :
1573930259836.png
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Le tableau ne sert à rien, c'était juste pour le test. Tu peux le virer aunsi que le graphique. Le but était d'estimer l'erreur en fonction de toutes les valeurs de Division.
Ensuite les résultats sont dans la partie bleue. Et je n'ai pas ton vocabulaire, hier je ne connaissais même pas le plateau diviseur.:)
J'ai mis Ligne pour désigner le cercle où il y a les trous. Je ne sais pas comment tu appelles ça. Quand il y a Ligne 15, ca pointe le cercle qui a 15 trous.
Nb trous c'est le nombre de trous dun déplacement.
"Il faudrait pouvoir changer le rapport du diviseur. ". Je pensais que le standard était 90°. Je vais le rajouter.
"Indiquer sur la feuille le nombre de trous disponibles et le rapport. " ?? Le nombre de trous sur le plateau, en fait sa définition ?
Je vais modifier le code pour que l'utilisateur puisse rajouetr un plateau facilement.
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 173
Messages
2 085 937
Membres
103 052
dernier inscrit
nizar0007