J
JLuc69
Compagnon
Bonjour le groupe,
Au travail, je vais avoir à faire des gravures dont une partie est un numéro de série. Il va donc falloir que je fasse un programme paramètré pour l'incrémentation du compteur et ainsi graver le bon numéro sur 3 digits.
J'ai déjà une vague idée de comment je vais faire, mais si l'un de vous l'a déjà fait, je suis preneur de toute astuce.
Le principe que j'entrevois, c'est :
3 variables initialisées (L1=0 L2=0 L3=1 :L1= centaine, L2= dizaine et L3= unité)
Je grave la partie fixe
Je fais un décalage de la valeur qui va bien
J'appelle un sous programme en fonction de la valeur des centaines (G77 HL1 programme %0 <-- si je peux)
Je fais un décalage de la valeur qui va bien
J'appelle un sous programme en fonction de la valeur des dizaines (G77 HL2 programme %0 <-- si je peux)
Je fais un décalage de la valeur qui va bien
J'appelle un sous programme en fonction de la valeur des unités (G77 HL3 programme %1)
J'incrémente les unités (L3=L3+1)
Je teste que les unités soit inférieures à 10 (G79 L3<10 N...)
Sinon, L2=L2+1 L1=0
Pareil pour les dizaines
Retour au début du programme
Par contre, il faut que je fasse un saut au début de programme pour ne pas rencontrer le M2 en fin de programme.
Problème : si je rencontre un soucis quelconque et que je doive faire un RESET, je perds mon initialisation :/
Y a t'il des variable qui conservent leurs données même après une extinction de la machine ?
Peut être les E80000 mais je n'ai pas l'habitude de les utiliser...
Si quelqu'un à une autre solution, je suis preneur aussi
Au travail, je vais avoir à faire des gravures dont une partie est un numéro de série. Il va donc falloir que je fasse un programme paramètré pour l'incrémentation du compteur et ainsi graver le bon numéro sur 3 digits.
J'ai déjà une vague idée de comment je vais faire, mais si l'un de vous l'a déjà fait, je suis preneur de toute astuce.
Le principe que j'entrevois, c'est :
3 variables initialisées (L1=0 L2=0 L3=1 :L1= centaine, L2= dizaine et L3= unité)
Je grave la partie fixe
Je fais un décalage de la valeur qui va bien
J'appelle un sous programme en fonction de la valeur des centaines (G77 HL1 programme %0 <-- si je peux)
Je fais un décalage de la valeur qui va bien
J'appelle un sous programme en fonction de la valeur des dizaines (G77 HL2 programme %0 <-- si je peux)
Je fais un décalage de la valeur qui va bien
J'appelle un sous programme en fonction de la valeur des unités (G77 HL3 programme %1)
J'incrémente les unités (L3=L3+1)
Je teste que les unités soit inférieures à 10 (G79 L3<10 N...)
Sinon, L2=L2+1 L1=0
Pareil pour les dizaines
Retour au début du programme
Par contre, il faut que je fasse un saut au début de programme pour ne pas rencontrer le M2 en fin de programme.
Problème : si je rencontre un soucis quelconque et que je doive faire un RESET, je perds mon initialisation :/
Y a t'il des variable qui conservent leurs données même après une extinction de la machine ?
Peut être les E80000 mais je n'ai pas l'habitude de les utiliser...
Si quelqu'un à une autre solution, je suis preneur aussi