Calcul angle G68
3 participants
Page 1 sur 1
Calcul angle G68
bonjour
je termine une macro qui me donne l'angle de la piece sur la table
je butte sur le calcul final, je ne sait pas quel code employer ??
faut dire que moi et les maths.......
la mesure se fait sur le haut de la piece en X
entre les 2 points de mesure je me déplace de 20mm
un coup de pouce serais bienvenue
je termine une macro qui me donne l'angle de la piece sur la table
je butte sur le calcul final, je ne sait pas quel code employer ??
faut dire que moi et les maths.......
la mesure se fait sur le haut de la piece en X
entre les 2 points de mesure je me déplace de 20mm
un coup de pouce serais bienvenue
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
Salut,
http://www.metabricoleur.com/t4503-calculs-trigonometriques#73644
N'oublie pas que les ordi gèrent les angles en radians. (mais le G68 utilise des degrés lui par contre)
++
David
http://www.metabricoleur.com/t4503-calculs-trigonometriques#73644
N'oublie pas que les ordi gèrent les angles en radians. (mais le G68 utilise des degrés lui par contre)
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Re: Calcul angle G68
bonjour
merci pour les explications, mais j'ai beau lire et relire mon cerveau fait des nœuds je me perd complètement
j'ai toujours ete TRES NUL en math
le probleme, c'est que je ne sait pas retourner les formules
dans ton exemple tu connais l'angle et la section AB et moi je connais AB et BC, si j'ai bien lu.... il faut que j'utilise : Tangente de l'angle = coté opposé / coté adjacent
pour moi AB = 100 et BC = 5 ce qui donne 100/5 = 20 (quoi )
je suis un peux largé
au final il faut faire une conversion de radiant -> degré pour avoir le bon résultat
on multiplie la mesure de l'angle par 180°, puis on divise le résultat par Pi pour avoir le resultat final
merci pour les explications, mais j'ai beau lire et relire mon cerveau fait des nœuds je me perd complètement
j'ai toujours ete TRES NUL en math
le probleme, c'est que je ne sait pas retourner les formules
dans ton exemple tu connais l'angle et la section AB et moi je connais AB et BC, si j'ai bien lu.... il faut que j'utilise : Tangente de l'angle = coté opposé / coté adjacent
pour moi AB = 100 et BC = 5 ce qui donne 100/5 = 20 (quoi )
je suis un peux largé
au final il faut faire une conversion de radiant -> degré pour avoir le bon résultat
on multiplie la mesure de l'angle par 180°, puis on divise le résultat par Pi pour avoir le resultat final
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
Bonjour.
Coté opposé/coté adjacent = 5/100 = 0.05 soit un angle de 2.862405°
Coté opposé/coté adjacent = 5/100 = 0.05 soit un angle de 2.862405°
tamilhaz- complétement accro
- Messages : 2475
Points : 2580
Date d'inscription : 03/11/2018
Age : 65
Localisation : Gorges de l'Aveyron
Re: Calcul angle G68
salut et merçi pour ta réponse
donc si je suis le fil pour le calcul final je fait:
est que je suis sur la bonne voie
donc si je suis le fil pour le calcul final je fait:
- Code:
angleXEnRadian = (A7/deplacementMaxPointB)
MsgBox ("radian de X est de: " & angleXEnRadian & "")
angleXEnDegre = (angleXEnRadian*180)/3.14159265359
MsgBox ("L'angle sur X est de: " & angleXEnDegre & "deg.")
est que je suis sur la bonne voie
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
Salut,
++
David
- Code:
AB = 100 'distance X
BC = 5 'distance Y
angle = Tan(BC/AB) 'angle en radian
MsgBox(angle/(2*3.14159/360) & " degrés") 'résultat converti en °
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Re: Calcul angle G68
slt
merci pour se complement
à la lecture de la doc de mach3, aidé de google tradut, il semblerai que la fonction atan integree dans mach3 convertie directement en degre
je peux me tromper
se qui pourais donner
merci pour se complement
à la lecture de la doc de mach3, aidé de google tradut, il semblerai que la fonction atan integree dans mach3 convertie directement en degre
je peux me tromper
se qui pourais donner
- Code:
AB = 100 'distance X
BC = 5 'distance Y
angle = Atan(BC/AB) 'angle en degré
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
Salut,
Non, Atan n'existe pas dans le basic de mach3, il y a Atn (arc tangente) Tan (tangente) et il fonctionnent tous en radian.
un extrait de la doc du Cypress basic
Tan Function
Tan(angle)
Returns the tangent of an angle as a double.
The parameter angle must be a valid angle expressed in radians.
Related Topic: Atn, Cos, Sin
Example:
' This sample program show the use of the Tan function
Sub Main ()
Dim Msg, Pi ' Declare variables.
Pi = 4 * Atn(1) ' Calculate Pi.
Msg = "Pi is equal to " & Pi
MsgBox Msg ' Display results.
x = Tan(Pi/4)
MsgBox x & " is the tangent of Pi/4"
End Sub
la doc du Cypress Basic est accessible ici
http://www.metabricoleur.com/t20555-programmation-basic-script-sous-mach3#407492
++
David
Non, Atan n'existe pas dans le basic de mach3, il y a Atn (arc tangente) Tan (tangente) et il fonctionnent tous en radian.
un extrait de la doc du Cypress basic
Tan Function
Tan(angle)
Returns the tangent of an angle as a double.
The parameter angle must be a valid angle expressed in radians.
Related Topic: Atn, Cos, Sin
Example:
' This sample program show the use of the Tan function
Sub Main ()
Dim Msg, Pi ' Declare variables.
Pi = 4 * Atn(1) ' Calculate Pi.
Msg = "Pi is equal to " & Pi
MsgBox Msg ' Display results.
x = Tan(Pi/4)
MsgBox x & " is the tangent of Pi/4"
End Sub
la doc du Cypress Basic est accessible ici
http://www.metabricoleur.com/t20555-programmation-basic-script-sous-mach3#407492
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Re: Calcul angle G68
slt david
voila le paragraphe sur lequel je me suis appuyé,
bonne journée
je me suis trompe c'est atn que je voulais direNon, Atan n'existe pas dans le basic de mach3, il y a Atn (arc tangente) Tan (tangente) et il fonctionnent tous en radian.
voila le paragraphe sur lequel je me suis appuyé,
10.5.3.4 Unary Operation Value
A unary operation value is either "ATAN" followed by one expression divided by another
expression(for example ATAN[2]/[1+3]) or any other unary operation name followed
by an expression(for example SIN[90]). The unary operations are: ABS (absolute value),
ACOS (arc cosine), ASIN (arc sine), ATAN (arc tangent), COS (cosine), EXP (e raised to
the given power), FIX (round down), FUP (round up), LN (natural logarithm), ROUND
(round to the nearest whole number), SIN (sine), SQRT (square root), and TAN (tangent).
Arguments to unary operations which take angle measures (COS, SIN, and TAN) are in
degrees. Values returned by unary operations which return angle measures (ACOS, ASIN,
and ATAN) are also in degrees.
bonne journée
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
Salut,
Ah oui, mais ça c'est du GCode, pas du basic
++
David
voila le paragraphe sur lequel je me suis appuyé,
Ah oui, mais ça c'est du GCode, pas du basic
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Re: Calcul angle G68
slt
après plusieurs essais Atan n'est pas pris en compte dans le GCode, il se peux que la fonction n'est pas implémentée dans la carte contrôleur (chinoise)
donc je suis revenu sur ton code, qui me renvoi un resultat
voici la macro en l'état qui demande à être vérifiée toutes critiques est bonnes à prendre
pour l'instant elle est fonctionnelle sur le X
macro recherche d'un angle
après plusieurs essais Atan n'est pas pris en compte dans le GCode, il se peux que la fonction n'est pas implémentée dans la carte contrôleur (chinoise)
donc je suis revenu sur ton code, qui me renvoi un resultat
- Code:
angle = Tan(BC/AB) 'angle en radian
MsgBox(angle/(2*3.14159/360) & " degrés") 'résultat converti en °
voici la macro en l'état qui demande à être vérifiée toutes critiques est bonnes à prendre
pour l'instant elle est fonctionnelle sur le X
macro recherche d'un angle
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
Salut,
Oui, la plupart des cartes Chinoises ne gèrent que le strict minimum syndical !!
Ça me parait OK, juste un truc, pour éviter de surcharger le CPU en le faisant tourner plein pot, met un Sleep(50) à l'intérieur de tes boucles While/isMoving.
le test ne sera donc fait que toutes les 50ms au lieu d'être fait des milliers (voir des millions) de fois par seconde, ça laisse du temps au CPU pour faire autre chose pendant les 50ms de délai.
++
David
il se peux que la fonction n'est pas implémentée dans la carte contrôleur (chinoise)
Oui, la plupart des cartes Chinoises ne gèrent que le strict minimum syndical !!
voici la macro en l'état qui demande à être vérifiée toutes critiques est bonnes à prendre
Ça me parait OK, juste un truc, pour éviter de surcharger le CPU en le faisant tourner plein pot, met un Sleep(50) à l'intérieur de tes boucles While/isMoving.
- Code:
While isMoving()
Sleep(50)
Wend
le test ne sera donc fait que toutes les 50ms au lieu d'être fait des milliers (voir des millions) de fois par seconde, ça laisse du temps au CPU pour faire autre chose pendant les 50ms de délai.
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Re: Calcul angle G68
merci David pour les remarques
j'ai rajouter un sleep(50) dans mes boucles, et tout semble fonctionner comme prevue
je cherche comment implémenter le résultat sur le gcode existant
la rotation se fait par apport à X et Y , si mon 0 est au centre
exemple
à la fin du gcode, je doit mettre G69 pour annuler la rotation
là, je suis un peux dans le brouillard
si tu à une idée, je prend
j'ai rajouter un sleep(50) dans mes boucles, et tout semble fonctionner comme prevue
je cherche comment implémenter le résultat sur le gcode existant
- Code:
Code "G68 A" & Xc & " B" & Yc & " R" & resultatFinal
la rotation se fait par apport à X et Y , si mon 0 est au centre
exemple
- Code:
Code "G68 A0 B0 R-1.2435l
à la fin du gcode, je doit mettre G69 pour annuler la rotation
là, je suis un peux dans le brouillard
si tu à une idée, je prend
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
j'ai trouvé comment faire
dans mon bouton "Auto rotation" je met le code :
dans mon bouton "Auto rotation" je met le code :
- Code:
If (GetOEMLED(108)=0) Then
Message "Pas de mesure d'angle faite. Rotation impossible"
Else
resultatFinal = GetOEMDRO(118) 'Enregistrement du resultat final (degres)
Code " G68 A0 B0 R"& resultatFinal
Sleep(150)
'MsgBox ("G68 X0 Y0 R"& resultatFinal)
doOEMButton (160)
End If
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Re: Calcul angle G68
mise à jour de la macro G68
ne pas hésiter si vous rencontrez un bug. Elle ne marche que sur le X le Y est à venir
MàJ macro G68
ne pas hésiter si vous rencontrez un bug. Elle ne marche que sur le X le Y est à venir
MàJ macro G68
gilles974- acharné du forum
- Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum