Courbe à rayon progressif

  • Auteur de la discussion ELPicos
  • Date de début
E

ELPicos

Apprenti
Bonjour, j'ai une petite pièce à faire usiner et je suis passé voir les usines CNC de mon environ et personne ne peut réaliser le projet pour faute de plans incomplet, j'inclus un petit croquis de la pièce.
Le rayon en partant du centre a 12mm et il progresse en se resserrant à 9mm à la sortie de la pièce, à la sortie on a 12.4mm de largeur, il manque la hauteur du concave, mais comment l'obtenir?

Merci de votre aide!

Jean-Luc

Courbe Rayon Progressif 004.jpg
 
E

Edmond96

Ouvrier
Bonjour,
effectivement le croquis est incomplet. Il n'y a que 3 cotes, le rayon de 12, celui de 9 et la largeur de 12,4. Et je n'ai pas compris ce que tu appelles la hauteur du concave.
J'ai essayé de dessiner ta demande en utilisant les propriétés de tangence pour palier aux cotes manquantes et je n'arrive même pas à raccorder tes rayons de 9 et de 12 pour tenir dans la cote de 12,4...
Je pense que si tu veux faire fabriquer, il te faut te demander si déjà avec tes explications tu peux le dessiner correctement, et quand la réponse sera positive, faire un dessin le traduisant (sans parler de tolérances d'usinage on n'en est pas là). Là quelqu'un pourra te fabriquer ta pièce.
Pour le moment il n'y a clairement pas assez d'indications.
 
E

ELPicos

Apprenti
Bonjour, l'image dans mon premier message est en fait un bloc en aluminium sur lequel sera déposé un papier sablé qui servira à entretenir les procédés ou tips de queue de billard, normalement les tips sont d'un rayon régulier, je veux profiler des tips à rayon progressifs, plus plat au centre et à rayon augmentant en allant vers le bord de la queue.
J'ai donc à la place redessiné la queue cette fois-ci, on a les 2 points de de départ des 2 rayons, je l'ai fait à l,échelle 3X plus grand que réel, selon moi la hauteur qu'il manque soit entre le point X et la ligne de jonction des rayons et du diamètre 12.4MM pourrait très bien être la distance entre les 2 points de départs des rayons.
Il y a une façon certainement de le calculer, peut-être par la trigonométrie, c'est très loin derrière moi ces maths là!

Merci de me répondre.


R3 002.jpg
 
J

Jmr06

Compagnon
Le rayon en partant du centre a 12mm et il progresse en se resserrant à 9mm à la sortie
Tout est dans la "progression". Qu'est-ce que cela veut dire "il progresse" ? Si c'est 2 rayons successifs, c'est plus facile de raisonner, il n'y a moins de difficultés. Et tu vois facilement que selon là où tu places la transition entre les 2 rayons, tu as une pronfondeur différentes.
En claire, il n'y a pas de solution unique.
Pour une FAO, j'ai l'impression que ce n'est pas simple de faire un truc progressif avec des rayons. Une courbe analytique serait plus simple. Je propose une ellipse.

Edite : j'ai édité le message, suite au poste précédent qui a croisé le mien !
 
Dernière édition:
S

SULREN

Compagnon
Bonjour,
Chacun éprouve une difficulté face à la formulation du problème.

Pour moi la hauteur du concave est la distance entre le fond du creux et le plan de l'extrémité du cylindre.
Par contre il manque un élément clé: le rayon est progressif en fonction de quoi?
On peut penser que progressif veut dire "variant de façon linéaire (au sens mathématique)" en fonction d'un critère (on pourrait avoir une variation non linéaire).
Mais quel est ce critère?
- Est ce l'angle que fait le rayon par rapport à l'axe du cylindre?
- Est-ce la distance parcourue sur la courbe depuis le point de départ?
 
E

ELPicos

Apprenti
Ce pourrait être une ellipse, le petit rayon=la hauteur du point X et le grand rayon= le rayon de la queue, je ne sais pas, comment peut-on définir l'angle d'une ellipse, progressive...
 
D

Dodore

Compagnon
C’est vrai que ce n’est pas clair
J’avais pensé pour « rayon progressif à une spiral d’archImède comme la spiral d’un mandrin
cette spiral Peut être faite avec 2 points , 3 points , 4 points ou une infinité de points
est-ce que c’est ça que tu veux ,?
il faudrait que tu prennes un papier et un crayon ( eventuelement une DAO pour faite ton dessin
des liens pour la spirale

si c’est une ellipse il faut définir le grand diamètre et le petit diamètre

Edit
je viens de feuilleter le lien ci dessus
j’admets que c’est un peu touffu , il y a plus simple comme explication
 
Dernière édition:
E

ELPicos

Apprenti
Non ce n'est pas une spirale d'archimède, y'a quelque chose qui me dit que ça se calcule, je me trompe peut-être aussi.
 
D

Dodore

Compagnon
Mais tout se calcul
est ce que tu as regarder l’ellipse ?
 
J

Jmr06

Compagnon
Si quelqu'un confirme qu'en FAO, on peut programmer pour que ce soit une ellipse, je ferait l'effort de te donner les valeurs du a et b de l'ellipse. Comme sur le schéma suivant.
Il faut juste que j'allume l'ordi.

IMG_20200712_082043.jpg
 
D

Dodore

Compagnon
Oui j’ai fait sur un NUM un tracé de spirale et une ellipse Avec des variables
Voir ici Réponse #8
 
Dernière édition:
S

SULREN

Compagnon
y'a quelque chose qui me dit que ça se calcule
Je pense aussi que cela se calcule. Il faut se mettre à son clavier et s'efforcer de le prouver. Il ne suffit pas de le dire.
Si on n'a pas déjà l'outil informatique qui convient à ce travail, il faut quand même trouver le temps de se le créer. Bon exercice intellectuel, pour retarder le vieillissement de ses neurones.
- On part d'un bord avec un rayon de 9 mm, faisant donc un certain angle avec l'axe du cylindre.
- On aboutit au centre du creux, sur l'axe du cylindre donc avec un angle nul avec cet axe, et avec un rayon de 12 mm.
- Entre point de départ et point d'arrivée on fait varier linéairement (*) la valeur du rayon avec l'angle qu'il forme avec l'axe du cylindre.

(*) ou selon une loi à préciser.
 
Dernière édition:
E

ELPicos

Apprenti
Si quelqu'un confirme qu'en FAO, on peut programmer pour que ce soit une ellipse, je ferait l'effort de te donner les valeurs du a et b de l'ellipse. Comme sur le schéma suivant.
Il faut juste que j'allume l'ordi.

Voir la pièce jointe 631037
Je pense aussi que cela se calcule. Il faut se mettre à son clavier et s'efforcer de le prouver. Il ne suffit pas de le dire.
Si on n'a pas déjà l'outil informatique qui convient à ce travail, il faut quand même trouver le temps de se le créer. Bon exercice intellectuel, pour retarder le vieillissement de ses neurones.
- On part d'un bord avec un rayon de 9 mm, faisant donc un certain angle avec l'axe du cylindre.
- On aboutit au centre avec un rayon de 12 mm, faisant un angle nul avec l'axe du cylindre.
- On fait varier linéairement (*) la valeur du rayon avec l'angle qu'il forme avec l'axe du cylindre.

(*) ou selon une loi à préciser.


Je pense comme toi que ça se calcule, ça prend de solides notions de mathématique que je n'ai pas, juste à y penser mes neurones en chauffent :smt013
 
S

SULREN

Compagnon
ça prend de solides notions de mathématique
Soit de solides notions de mathématiques si on veut traiter cela par la méthode analytique, soit des capacités d'analyse numérique et de codage si on veut traiter cela par les méthodes numériques. Ces dernières sont moins glorieuses, mais elles permettent de résoudre des problèmes qu'on ne sait pas résoudre par la méthode analytique (ex: résolution de systèmes d'équations non linéaires).

Je vais rechercher l'algorithme qui conviendrait, afin d'évaluer l'ampleur du travail de codage et en même temps vérifier la faisabilité.
Sur une CAO (je n'en ai pas) c'est peut être du fastoche.
 
Dernière édition:
E

ELPicos

Apprenti
Si quelqu'un confirme qu'en FAO, on peut programmer pour que ce soit une ellipse, je ferait l'effort de te donner les valeurs du a et b de l'ellipse. Comme sur le schéma suivant.
Il faut juste que j'allume l'ordi.

Voir la pièce jointe 631037

Oui il y a des fonctions spécifiques aux ellipses pour la programmation, si vous pouvez me le calculer ce serait bien apprécié!
 
J

Jmr06

Compagnon
Bon, mes calculs donnent :
a = 7.1739 mm (demi grand-axe)
b = 4,2887 mm (demi petit axe)
P = 2.1312 mm (profondeur du concave)

La courbe donne cela :
1594538886607.png


A l'oeil, on ne voit presque pas la variation du rayon de courbure.

Si on fait l'ellipse complète :
1594539087119.png


Voila.
 
E

ELPicos

Apprenti
Bon, mes calculs donnent :
a = 7.1739 mm (demi grand-axe)
b = 4,2887 mm (demi petit axe)
P = 2.1312 mm (profondeur du concave)

La courbe donne cela :
Voir la pièce jointe 631038

A l'oeil, on ne voit presque pas la variation du rayon de courbure.

Si on fait l'ellipse complète :
Voir la pièce jointe 631039

Voila.

Wow, c'est exactement ça, la prononciation de la courbe ne paraît pas beaucoup mais moi je la distingue très bien, ça va m'être très utile, je vous en remercie infiniment. Je vais en avoir d'autre à calculer pour d'autres diamètres de queues et différents rayons, est ce qu'il y a un programme pour le calculer qui me serait utile? Merci encore!
 
J

Jmr06

Compagnon
Ben, c'est fait rapidosse en Matlab, voir ci-après le code.
On peut s'en inspirer pour un autre langage ou refaire en excel, il n'y a pas de copyright :lol:
Tu peux aussi demander pour d'autre valeurs. Je garde le code, si je suis en ligne je le relancerais avec les valeur que tu demandera.

Le code :

% Paramétrage :
Rbout = 12 ; % Rayon de courbure en bout (mm)
Rcote = 9/2 ; % Rayon de courbure sur le coté (mm)
Dia = 12.4/2 ; % Rayon de la queue (mm)

% Calcul :
Num = Rbout*(1-(Rcote/Rbout)^(2/3)) ;
Dem = Dia^2 ;
inv = Num/Dem + 1/Rbout ;

b = 1/inv ; % résultat du 1/2 petit axe
a = sqrt(Rbout*b) ; % résultat du 1/2 grand axe

% Vérification :
tr = acosd(Dia/a);
x2 = a*cosd(tr) ;
P = b*(1-sind(tr)) ; % profondeur du concave
R1 = a*a/b ; % doit être égale à Rbout
ep = sqrt(1-(b^2/a^2)) ;
R2 = R1 * (1-(ep*cosd(tr))^2)^(3/2) ; % doit être égale à Rcote

% calcul pour les figures :
figure(1) % la forme du bout
t = tr+ (90-tr)*(0:100)/100 ;
x = a*cosd(t) ;
y = b* sind(t) ;
plot(x,y-b);
axis equal

figure(2) % L'ellipse complète
t = (0:360) ;
x = a*cosd(t) ;
y = b* sind(t) ;
plot(x,y);
axis equal
 
J

Jmr06

Compagnon
Horreur ! En publiant le code, je vois que j'ai paramétré pour un rayon sur le coté de 4.5 au lieu de 9 comme demandé ! :oops:

Donc, en refaisant les calculs :
a = 9.3314 mm
b = 7.2562 mm
P = 1.8332 mm
Les courbes :
1594543664340.png


1594543678834.png


Et le code avec le bon paramétrage cette fois !

% Paramétrage :
Rbout = 12 ; % Rayon de courbure en bout (mm)
Rcote = 9 ; % Rayon de courbure sur le coté (mm)
Dia = 12.4/2 ; % Rayon de la queue (mm)

% Calcul :
Num = Rbout*(1-(Rcote/Rbout)^(2/3)) ;
Dem = Dia^2 ;
inv = Num/Dem + 1/Rbout ;

b = 1/inv ; % résultat du 1/2 petit axe
a = sqrt(Rbout*b) ; % résultat du 1/2 grand axe

% Vérification :
tr = acosd(Dia/a);
x2 = a*cosd(tr) ;
P = b*(1-sind(tr)) ; % profondeur du concave
R1 = a*a/b ; % doit être égale à Rbout
ep = sqrt(1-(b^2/a^2)) ;
R2 = R1 * (1-(ep*cosd(tr))^2)^(3/2) ; % doit être égale à Rcote

% calcul pour les figures :
figure(1) % la forme du bout
t = tr+ (90-tr)*(0:100)/100 ;
x = a*cosd(t) ;
y = b* sind(t) ;
plot(x,y-b);
axis equal

figure(2) % L'ellipse complète
t = (0:360) ;
x = a*cosd(t) ;
y = b* sind(t) ;
plot(x,y);
axis equal
 
O

osiver

Compagnon
En DAO, il est facile d'utiliser des courbes de Bézier (ici 2 peut-être ) pour obtenir n'importe quelle forme. La traduction en Gcode donnera à la CN les instructions nécessaires en terme de mouvement d'usinage. 8-)
 
E

ELPicos

Apprenti
Horreur ! En publiant le code, je vois que j'ai paramétré pour un rayon sur le coté de 4.5 au lieu de 9 comme demandé ! :oops:

Donc, en refaisant les calculs :
a = 9.3314 mm
b = 7.2562 mm
P = 1.8332 mm
Les courbes :
Voir la pièce jointe 631055

Voir la pièce jointe 631056

Et le code avec le bon paramétrage cette fois !

% Paramétrage :
Rbout = 12 ; % Rayon de courbure en bout (mm)
Rcote = 9 ; % Rayon de courbure sur le coté (mm)
Dia = 12.4/2 ; % Rayon de la queue (mm)

% Calcul :
Num = Rbout*(1-(Rcote/Rbout)^(2/3)) ;
Dem = Dia^2 ;
inv = Num/Dem + 1/Rbout ;

b = 1/inv ; % résultat du 1/2 petit axe
a = sqrt(Rbout*b) ; % résultat du 1/2 grand axe

% Vérification :
tr = acosd(Dia/a);
x2 = a*cosd(tr) ;
P = b*(1-sind(tr)) ; % profondeur du concave
R1 = a*a/b ; % doit être égale à Rbout
ep = sqrt(1-(b^2/a^2)) ;
R2 = R1 * (1-(ep*cosd(tr))^2)^(3/2) ; % doit être égale à Rcote

% calcul pour les figures :
figure(1) % la forme du bout
t = tr+ (90-tr)*(0:100)/100 ;
x = a*cosd(t) ;
y = b* sind(t) ;
plot(x,y-b);
axis equal

figure(2) % L'ellipse complète
t = (0:360) ;
x = a*cosd(t) ;
y = b* sind(t) ;
plot(x,y);
axis equal


Je me pose la question, la queue a 6.2mm de diamètre, comment une équation peut être possible en utilisant 4.5mm de diamètre!?
 
S

SULREN

Compagnon
Bonjour,
(Je vais taquiner mon monde :wink:)
Ouais....c'est quoi ça Matlab....encore un truc de gosse de riche !!
Je n'ai pas les moyens de l'acheter, je n'ai que la version gratuite Scilab.

Et puis quoi encore, prendre une section d'ellipse, ce n'est pas du jeu, c'est se simplifier la vie !!
J'ai pris une loi progressive , sur le principe du dessin de @ELPicos, au post #3 avec le pied du rayon qui se décale de 9 à 12 sur l'axe selon une certaine loi.
On peut prendre n'importe quelle loi de variation qu'on veut...aux bons goûts des joueurs de billard. Il suffit de la définir.

Trace ELPicos.jpg
 
J

Jmr06

Compagnon
En DAO, il est facile d'utiliser des courbes de Bézier (ici 2 peut-être ) pour obtenir n'importe quelle forme.
Oui, certes. Mais comment obtenir les rayons de courbure demandés ? Il me semble qu'on fixe les points de départ et d'arrivée, des directions des tangente en ces points et des points de pilotage de la courbe, en fin c'est comme cela que je connais. On peut fixer en DAO des rayons de courbure pour des courbe de Bezier ?
 
J

Jmr06

Compagnon
Ouais....c'est quoi ça Matlab....encore un truc de gosse de riche !!
Bon, disons que c'est l'entreprise qui m'emploie qui est riche ... :???:
C'est sûr à titre personnel, cela fait cher le logiciel. Même pour une entreprise, c'est affreusement cher. Il faudrait que je me mette à SCILAB.

On peut prendre n'importe quelle loi de variation qu'on veut...aux bons goûts des joueurs de billard. Il suffit de la définir.
Oui, bien. Mais peut-on faire ce qu'on veut en FAO, comme en SCILAB ? Je n'y connais rien en FAO, c'est pour cela que je m'inquiétais d'utiliser une courbe facilement paramétrable dans les machines.
 
S

SULREN

Compagnon
Oui, bien. Mais peut-on faire ce qu'on veut en FAO, comme en SCILAB ?
Oui tu as raison, c'est bien le problème:
- 1) Quelle loi de variation veut-on entre la longueur du rayon vecteur (variant de 9 à 12) et le glissement de son pied sur l'axe du cylindre.
C'est ce que dans son post #3 @ELPicos a appelé : "distance entre les points départ des rayons".
Et cela en évitant d'avoir un point anguleux au centre du creux (la tangente à la courbe en ce point doit être unique et verticale).
- 2) La courbe qui en résulte, en tous cas celle que j'ai montrée, est une succession de points "x,y" pas une équation. Est-ce acceptable par une FAO?

Donc l'exercice reste entièrement à faire. Je n'ai fait qu'une approche entre 1000 possibles, avec des choix arbitraires qui ne correspondent pas forcément à ce que veut ELPicos. Il n'en a pas donné une définition complète.

PS: Ici je n'ai pas utilisé SCILAB, bien que je l'ai installé sur mon PC. C'est du code en PureBasic.
 
Dernière édition:
D

Dodore

Compagnon
Sur beaucoup de CN il y a la possibilité de faire une programmation paramètrée il suffit de connaître l’équation et on la transforme en langage machine
c’est la machine qui calcule le nouveau point , et on fait un déplacement à ce point , en faisant une boucle ( dans le temps en basic c’était la boucle IF THEN ELSE , je ne suis plus sûr de l’orthographe ) Et ça marche très bien
Un exemple Réponse #5
 
Dernière édition:
J

Jmr06

Compagnon
il suffit de connaître l’équation et on la transforme en langage machine
Et qu'est-ce qu'on comme fonctions ? sinus, cosinus, racine carrée je suppose ? Puissance fractionnaire aussi ? Parce que le calcul de la courbure d'une courbe fait intervenir des puissances 2/3. On arrive alors rapidement à des puissances fractionnaire ou des racines cubiques. Si il y a ce genre d'outil, alors c'est probablement la meilleure solution.
 
Dernière édition:
S

SULREN

Compagnon
Re,
Je ne connais rien aux CAO FAO mais il me semblait que les CAO déterminaient les profils à usiner pas forcément sous la forme d'une équation mathématique, mais en général sous la forme d'un tableau de coordonnées, donc de points dans l'espace 3D.
Ensuite les interfaces font l'interpolation linéaire entre les points et génèrent les commandes des axes. Non?

En tous cas c'est ce que je fais avec ma petite machine outils multifonctions traditionnelle, sans moteurs PAP sur les axes, par exemple pour façonner des grains (fly-cutters) de taillage d'engrenages.
Mon logiciel me sort un tableau de coordonnées et à la mano je les applique sur les volants de la bécane.
Pas besoin et même souvent impossible, de trouver l'équation du profil du cutter (par exemple en restauration d'engrenages anciens, sans norme connue).
 
E

ELPicos

Apprenti
Et qu'est-ce qu'on comme fonctions ? sinus, cosinus, racine carrée je suppose ? Puissance fractionnaire aussi ? Parce que le calcul de la courbure d'une courbe fait intervenir des puissances 2/3. On arrive alors rapidement à des puissances fractionnaire ou des racines cubiques. Si il y a ce genre d'outil, alors c'est probablement la meilleure solution.

Je serais curieux de voir une courbe avec ton équation avec ces 2 rayons là soit 11mm et 8mm si ça t'adonne ou quand ça t'adonneras.
 
D

Dodore

Compagnon
Par exemple En trigonométrie pour le cercle
Rcarre= sinus carré +cosinus carré
il faut transformer la formule
on connais R et on fait varier l’angle de 1 à 360°
mon peut faire un tableau ( c’est ce que faisaient les moulistes Avant avant ) Et @SULREN maintenant
maintenant c’est la machine ( si elle a la programmation paramètre ) qui fait les calculs et les déplacement pour chaque point Et pour aller d’un point à l’autre on fais des déplacements en ligne droite
 
Haut