32 exécution de séquence conditionnelle, Branchement de programme „if..then..else..endif – HEIDENHAIN SW 54843x-02 DIN Programming Manuel d'utilisation
Page 403

HEIDENHAIN MANUALplus 620, CNC PILOT 640
403
4.32 Exécution de séquence conditionnelle
4.32 Exécution de séquence conditionnelle
Branchement de programme „IF..THEN..ELSE..ENDIF“
Le „branchement conditionnel“ est composé des éléments suivants:
IF (si) suivi de la condition. Pour la „condition“, des expressions de
variables ou expressions mathématiques sont situées à gauche et à
droite de l'„opérateur relationnel“.
THEN (alors). Si la condition est remplie, la branche THEN est
exécutée.
ELSE (sinon). Si la condition n'est pas remplie, la branche ELSE est
exécutée.
ENDIF termine le„branchement conditionnel“.
Lecture de Bitset
Vous pouvez également utiliser la fonction BITSET
comme condition. Cette fonction délivre le résultat „1“ lorsque le le
bit interrogé est contenu dans la valeur numérique. Elle délivre le
résultat „0“ lorsque le le bit n'est pas contenu dans la valeur
numérique.
Syntaxe: BITSET (x,y)
x: Numéro de bit (0..15)
y: Valeur numérique (0..65535)
La relation entre le numéro de Bit et la valeur numérique est
représentée dans le tableau à droite. Vous pouvez également utiliser
x, y comme variable.
Programmation:
Sélectionner „Extras > DINplus mot...“ dans le menu. La
Commande ouvre la liste de sélection „Insérer mot DIN PLUS“.
Sélectionner „IF“
Introduire la „condition“
Insérer les séquences CN de la branche THEN
Si nécessaire: Ajouter les séquences CN de la branche ELSE
Opérateurs relationnels
<
inférieur à
<=
inférieur ou égal à
<>
Différent de
>
supérieur à
>=
supérieur ou égal à
==
égal à
Lier les conditions:
AND
Liaison logique ET
OR
Liaison logique OU
Bit
correspond à
la valeur
numérique
Bit
correspond à
la valeur
numérique
0
1
8
256
1
2
9
512
2
4
10
1024
3
8
11
2048
4
16
12
4096
5
32
13
8192
6
64
14
16384
7
128
15
32768
Exemple : „IF..THEN..ELSE..ENDIF“
N.. IF (#l1==1) AND (#g250>50)
N.. THEN
N..
G0 X100 Z100
N.. ELSE
N..
G0 X0 Z0
N.. ENDIF
. . .
N.. IF 1==BITSET(0,#l1)
N.. THEN
N.. PRINT(„Bit 0: OK“)
. . .
Les séquences CN contenant IF, THEN, ELSE, ENDIF
ne doivent pas contenir d'autres commandes.
Vous pouvez lier jusqu'à deux conditions.