Mathématiques

Le firmware prend en charge des opérations mathématiques étendues dans le G-code en utilisant des expressions entre crochets []. Ces expressions peuvent être utilisées dans les paramètres G-code et avec la M118.1 P# commande pour évaluer et afficher les résultats. Notez que toutes les fonctions utilisant des lettres sont en minuscules et sensibles à la casse.

Opérations arithmétiques de base

Opérateurs

  • + : Addition

  • - : Soustraction

  • * : Multiplication

  • / : Division

  • ^ : Exponentiation (puissance)

  • mod : Modulo (reste)

Exemples

M118.1 P[1+1]        ; Retourne le résultat = 2.000
M118.1 P[5-3]        ; Retourne le résultat = 2.000
M118.1 P[4*3]        ; Retourne le résultat = 12.000
M118.1 P[10/2]       ; Retourne le résultat = 5.000
M118.1 P[2^3]        ; Retourne le résultat = 8.000
M118.1 P[7mod3]      ; Retourne le résultat = 1.000
G01 X[#103+2*#107]

Fonctions mathématiques

Fonctions trigonométriques (angles en degrés)

  • sin[x] : Sinus de x degrés

  • cos[x] : Cosinus de x degrés

  • tan[x] : Tangente de x degrés

  • asin[x] : Arcsinus de x (retourne des degrés)

  • acos[x] : Arccosinus de x (retourne des degrés)

  • atan[x] : Arctangente de x (retourne des degrés)

Exemples

Autres fonctions mathématiques

  • sqrt[x] : Racine carrée de x

  • abs[x] : Valeur absolue de x

  • round[x] : Arrondir x à l'entier le plus proche

  • fix[x] : Fonction plancher (tronquer à l'entier)

  • fup[x] : Fonction plafond (arrondir à l'entier supérieur)

  • ln[x] : Logarithme naturel de x

  • exp[x] : Fonction exponentielle (e^x)

Exemples

Opérateurs de comparaison

Des comparaisons booléennes peuvent être utilisées et évalueront à 1 (vrai) ou 0 (faux) :

Comparaisons booléennes

  • eq : Égal (avec tolérance)

  • ne : Différent

  • gt : Plus grand que

  • ge : Plus grand ou égal

  • lt : Moins que

  • le : Moins ou égal

Exemples

Opérateurs logiques

Les opérateurs logiques peuvent être utilisés et évalueront à 1 (vrai) ou 0 (faux) :

Logique booléenne

  • et : ET logique (les deux valeurs doivent être non nulles)

  • or : OU logique (au moins une valeur doit être non nulle)

  • xor : OU exclusif logique (exactement une valeur doit être non nulle)

  • nor : NOR logique (les deux valeurs doivent être nulles)

Exemples

Expressions complexes

Des expressions complexes peuvent être utilisées et seront évaluées selon l'ordre normal des opérations PEMDAS.

Ordre des opérations (PEMDAS)

  1. Parenthèses/Crochets

  2. Exponentiation

  3. Multiplication/Division/Modulo

  4. Addition/Soustraction

  5. Opérateurs de comparaison

  6. Opérateurs logiques

Exemples

Gestion des erreurs

Voici les comportements attendus lorsque des erreurs sont rencontrées :

  • Division par zéro : Arrêt avec erreur

  • Modulo par zéro : Arrêt avec erreur

  • Fonctions non définies : Retourne nan

  • Variables invalides : Arrêt avec erreur

  • Crochets non appariés : Arrêt avec erreur

Lectures complémentaires

GCodeTutor.comarrow-up-right a un bon article décrivant comment les variables et les mathématiques peuvent être utilisées dans le GCode.

Mis à jour