May 15, 2023 Laisser un message

Programme macro inutile ? C'est parce que tu ne peux pas te maquiller !

 

De nombreux techniciens CNC ne comprennent pas les programmes macro. Ils pensent qu'avec les logiciels de programmation automatique, il n'est pas nécessaire d'apprendre les programmes macro. En fait, les fonctions des programmes de macros sont très puissantes. Par exemple, pour écrire des programmes batch et répétitifs, il suffit de modifier quelques données lors de l'utilisation de programmes macro. Il n'y a pas besoin d'un grand nombre de programmations répétées, ce qui peut grandement simplifier les opérations et améliorer considérablement l'efficacité du travail.

Les programmes de macro peuvent utiliser des variables pour effectuer des opérations mixtes d'opérations arithmétiques, d'opérations logiques et de fonctions, et également fournir des instructions de boucle, des instructions de branchement et des instructions d'appel de sous-programme.

D'une manière générale : le programme macro convient à la programmation d'une série de pièces avec le même graphisme mais avec des tailles différentes ; il convient à la programmation d'une série de pièces avec le même parcours de processus mais avec des paramètres de position différents ; il convient à la programmation de paraboles, ellipses, hyperboles et autres courbes sans instructions d'interpolation.


01
Représentation et utilisation des variables

1. Représentation variable

#I(I=1,2,3,…) ou #[]
Exemple : #5, #109, #501, #[#1 plus #2-12]

Deuxièmement, l'utilisation de variables

1. Spécifiez le numéro de variable ou la formule après le mot d'adresse
Format:

#I
Ici "I" signifie nombre variable
Exemple : F#103, si #103=15, alors c'est F15
Z-#110, si #110=250, c'est Z-250
X[#24 plus #18*COS[#1]]

2. Le numéro de variable peut être remplacé par variable
Exemple : #[#30], si #30=3, ce sera #3

3. Les variables ne peuvent pas utiliser les adresses O, N, I
Exemple : Les méthodes suivantes sont autorisées
O#1;
I#2 6.00×100.0;
N#3 Z200.0;

4. La variable correspondant au numéro de variable a une plage de valeurs spécifique pour chaque adresse
Exemple : lorsque #30=1100, M#30 n'est pas autorisé

5. #0 est une variable vide, et une variable sans valeur de variable définie est également une variable vide

6. Définition de la valeur variable :
La virgule décimale peut être omise lors de la définition du programme, par exemple : #123=149


02
type de variables

Ajouter des images à WeChat : mvm9987 enverra un didacticiel CNC

1. Variables locales #1~#33

Variable utilisée localement dans un programme macro, son résultat d'opération ne peut pas être utilisé par d'autres programmes.
Exemple : Un programme macro B programme macro
...
#10=20 X#10 ne signifie pas X20
...
Il sera effacé après la mise hors tension et la valeur de la variable sera remplie lorsque le programme de macro sera appelé

2. Variables publiques #100~#199, #500~#999

La variable commune dans chaque programme de macro utilisateur a le même résultat d'opération dans n'importe quel appel de programme.
Exemple : Lorsque #10 dans l'exemple ci-dessus est remplacé par #100, le
X#100 signifie X20
#100~#149 Vide après mise hors tension
#500~#531 Variables persistantes (non perdues après mise hors tension)

3. Variables système

Variable à usage fixe dont la valeur dépend de l'état du système
Exemple : #2001 est la valeur de compensation de l'axe X de la compensation d'outil n°1
La valeur #5221 est la valeur de décalage d'origine de la pièce sur l'axe X G54
Un point décimal doit être entré lors de la saisie, et l'unité est μm lorsque le point décimal est omis


03
Instruction d'opération

Le côté droit de l'expression peut être des constantes, des variables, des fonctions, des expressions
Dans la formule, #j et #k peuvent aussi être des constantes
Le côté droit de l'expression est le numéro de la variable, l'expression

1. Définition

#I=#j

2. Opérations arithmétiques

#I=#j plus #k
#I=#j-#k
#I=#j*#k
#I=#j/#k

3. Opérations logiques

#je=#JOK#k
#I=#JXOK#k
#je=#JAND#k

4. Fonction

image

#I=SIN[#j] sinus
#I=COS[#j] cosinus
#I=TAN[#j] tangente
#I=ATAN[#j] arc tangent
#I=SQRT[#j] racine carrée
#I=ABS[#j] valeur absolue
#I=ARRONDIR[#j] Arrondir
#I=FIX[#j] arrondir
#I=FUP[#j] Arrondir à l'inférieur
#I=BIN[#j] BCD→BIN (binaire)
#I=BCN[#j] BIN→BCD

1) Les angles sont en degrés
Exemple : 90 degrés et 30 minutes font 90,5 degrés

2) Les deux longueurs de côté après la fonction ATAN doivent être séparées par "/"
Exemple : #{{0}}ATAN[1]/[-1], #1 est 35,0

3) ROUND est utilisé pour l'adresse dans le relevé, arrondi selon l'unité de réglage minimum de chaque adresse
Exemple : Set #1=1.2345, #2=2.3456, l'unité de réglage est 1 μm
G91 X-#1; X-1.235
X-#2 F300; X-2.346
X[#1 plus #2] ; X3.580
n'est pas renvoyé et doit être remplacé par
X[ROND[#1] plus ROND[#2]] ;

4) Si la valeur absolue après arrondi est supérieure à la valeur d'origine, elle sera arrondie, sinon elle sera arrondie à l'inférieur
Exemple : Lorsque #1=1.2, #2=-1.2
Si #{{0}}FUP[#1], alors #3=2.0
Si #{{0}}FIX[#1], alors #3=1.0
Si #{{0}}FUP[#2], alors #3=-2.0
Si #{{0}}FIX[#2], alors #3=-1.0

5) Lors de la commande d'une fonction, seules les deux premières lettres peuvent être écrites
Exemple : ARRONDI→RO
FIX→FI

6) Priorité
Fonction → multiplication et division (*, 1, AND) → addition et soustraction ( plus , -, OR, XOR)
Exemple : #1=#2 plus #3*SIN[#4] ;

7) Les crochets sont des crochets, jusqu'à 5 fois, et les crochets sont utilisés pour les commentaires
Exemple : #1=SIN[[[#2 plus #3]*#4 plus #5]*#6] ; (3 poids)


04
Instructions de branche et de boucle

1. Transfert inconditionnel

Format : ALLER À n ;

Branchement inconditionnel au bloc n
n : numéro de bloc (1-99999)
n peut également être remplacé par des variables ou des expressions
goto10 ;
ALLER À #10 ;

2. Transfert conditionnel

SI [] ALLER À n ;
Si laest satisfaite, l'opération suivante sera transférée au bloc avec le numéro de bloc n.
Si non satisfait, exécutez le bloc suivant.

SI [] ALORS ... ;
Si laest satisfaite, l'instruction du programme macro après ALORS est exécutée et une seule instruction est exécutée.
SI[#1EQ #2] ALORS #3=0 ;

Expression conditionnelle :
image
#j et #k peuvent aussi être remplacés par

Exemple : SI[#1 GT 10] ALLER À 100 ;

N100 G00 G91 X10;
Exemple : Trouver la somme de 1 à 10
O9500;
#1=0
#2=1
N1 SI [#2 GT10] ALLER À 2
#1=#1 plus #2 ;
#2=#2 plus 1 ;
ALLER À 1
N2 M30

3. Faire du vélo

Format : TANTQUE[]FAIRE m ; (m=1, 2, 3)



FINm

1. Lorsque les conditions sont remplies, exécutez DOm jusqu'à ENDm, puis à partir du segment de programme de DOm
S'il n'est pas satisfait, exécutez le segment de programme après ENDm
2. Si vous omettez l'instruction WHILE et que vous n'avez que DOm...ENDm, une boucle infinie sera formée de DOm à ENDm
3. imbrication
4. EQ NE, vide et "0" sont différents
Ailleurs, null est identique à "0"

Exemple : Trouver la somme de 1 à 10
O0001;
#1=0;
#2=1;
TANT QUE [#2LE10] DO1 ;
#1=#1 plus #2 ;
#2=#2 plus #1 ;
FIN1 ;
M30;

 

 

Envoyez demande

whatsapp

skype

Messagerie

Enquête