Macro simpeler maken..
Moderator: Moderators
- andrefc101
- Donateur
- Berichten: 3732
- Lid geworden op: 26 dec 2007 08:39
- Locatie: Bergen op Zoom
- Contacteer:
Macro simpeler maken..
Ik heb een macro om mijn tools in te meten op de VM, en ze daarna weg te schrijven in de tooldatabase van de copntroller. Het gaat over 99 tools in deze database.
Ik heb een variable #14, waarin ik het toolnummer op geef voor het inmeten en vervolgens weg te schrijven in de goede (tool)variabele in het systeem. Deze regel komt dus 99 keer voor in de macro (tool 1 t/m 99). De vraag is, kan ik dit op een makkelijkere (en kortere) manier schrijven met b.v. een if/then procedure? Ik kom er ff niet uit. Het werkt wel zo, maar ik vind het niet zo netjes.
Hierbij een voorbeeld van een aantal van deze regels:
N1 #1 = -443+#6
N2 #2 = #1+20
N3 G53
N4 G31 Z#2 F2500 P001041
N5 G31 Z#1 F125 P001041
N6 IF (#14 EQ 1) THEN #1001=#5003*1000
N7 IF (#14 EQ 2) THEN #1002=#5003*1000
N8 IF (#14 EQ 3) THEN #1003=#5003*1000
N9 IF (#14 EQ 4) THEN #1004=#5003*1000
N10 IF (#14 EQ 5) THEN #1005=#5003*1000
N11 IF (#14 EQ 6) THEN #1006=#5003*1000
N12 IF (#14 EQ 7) THEN #1007=#5003*1000
enz.....
Ik heb een variable #14, waarin ik het toolnummer op geef voor het inmeten en vervolgens weg te schrijven in de goede (tool)variabele in het systeem. Deze regel komt dus 99 keer voor in de macro (tool 1 t/m 99). De vraag is, kan ik dit op een makkelijkere (en kortere) manier schrijven met b.v. een if/then procedure? Ik kom er ff niet uit. Het werkt wel zo, maar ik vind het niet zo netjes.
Hierbij een voorbeeld van een aantal van deze regels:
N1 #1 = -443+#6
N2 #2 = #1+20
N3 G53
N4 G31 Z#2 F2500 P001041
N5 G31 Z#1 F125 P001041
N6 IF (#14 EQ 1) THEN #1001=#5003*1000
N7 IF (#14 EQ 2) THEN #1002=#5003*1000
N8 IF (#14 EQ 3) THEN #1003=#5003*1000
N9 IF (#14 EQ 4) THEN #1004=#5003*1000
N10 IF (#14 EQ 5) THEN #1005=#5003*1000
N11 IF (#14 EQ 6) THEN #1006=#5003*1000
N12 IF (#14 EQ 7) THEN #1007=#5003*1000
enz.....
- hugo stoutjesdijk
- Donateur
- Berichten: 12050
- Lid geworden op: 02 mar 2011 17:04
- Locatie: elst (u)
- Contacteer:
Re: Macro simpeler maken..
Zou dit niet werken?
Code: Selecteer alles
#(1000+#14)=#5003*1000
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
Re: Macro simpeler maken..
Ziet er plausibel uit.hugo stoutjesdijk schreef: ↑03 jan 2021 12:26 Zou dit niet werken?Code: Selecteer alles
#(1000+#14)=#5003*1000
zou je 99 regels schelen..
- andrefc101
- Donateur
- Berichten: 3732
- Lid geworden op: 26 dec 2007 08:39
- Locatie: Bergen op Zoom
- Contacteer:
Re: Macro simpeler maken..
Wat leuk, soms is het zo simpel he.... dank u!hugo stoutjesdijk schreef: ↑03 jan 2021 12:26 Zou dit niet werken?Code: Selecteer alles
#(1000+#14)=#5003*1000
- andrefc101
- Donateur
- Berichten: 3732
- Lid geworden op: 26 dec 2007 08:39
- Locatie: Bergen op Zoom
- Contacteer:
Re: Macro simpeler maken..
Grapjurkserum schreef: ↑03 jan 2021 12:32Ziet er plausibel uit.hugo stoutjesdijk schreef: ↑03 jan 2021 12:26 Zou dit niet werken?Code: Selecteer alles
#(1000+#14)=#5003*1000
zou je 99 regels schelen..
Re: Macro simpeler maken..
Misschien moet je nog vierkante haken gebruiken ipv ronde.
De belangrijkste wet in de wetenschap: 'hoe minder efficient en hoe meer herrie, hoe leuker het is'
- Arie Kabaalstra
- Donateur
- Berichten: 13518
- Lid geworden op: 07 feb 2007 18:37
- Locatie: Bakhuuz'n
- Contacteer:
Re: Macro simpeler maken..
Gewoon een Array gebruiken, met een Pointer dus..
'k weet niet welke besturing je hebt?
'k weet niet welke besturing je hebt?
- hugo stoutjesdijk
- Donateur
- Berichten: 12050
- Lid geworden op: 02 mar 2011 17:04
- Locatie: elst (u)
- Contacteer:
Re: Macro simpeler maken..
voorbeeld?Arie Kabaalstra schreef: ↑03 jan 2021 13:31 Gewoon een Array gebruiken, met een Pointer dus..
'k weet niet welke besturing je hebt?
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
- andrefc101
- Donateur
- Berichten: 3732
- Lid geworden op: 26 dec 2007 08:39
- Locatie: Bergen op Zoom
- Contacteer:
Re: Macro simpeler maken..
Wil ik ook wel zien, zo'n voorbeeld. Besturing is Fanuc(achtige), dus de taal is MacroB.Arie Kabaalstra schreef: ↑03 jan 2021 13:31 Gewoon een Array gebruiken, met een Pointer dus..
'k weet niet welke besturing je hebt?
- Arie Kabaalstra
- Donateur
- Berichten: 13518
- Lid geworden op: 07 feb 2007 18:37
- Locatie: Bakhuuz'n
- Contacteer:
Re: Macro simpeler maken..
Met "gewoon een Array gebruiken dus"
bedoelde ik :
de "index" of wel het nummer van je variabele wordt bepaald aan de hand van 1000 plus de waarde van #14.m dus als #14 =2, dan verwijs je naar #1002, als #14=5, dan verwijs je naar #1005.. #14 is in deze de "pointer" van je array..
bedoelde ik :
Code: Selecteer alles
#(1000+#14)=#5003*1000
- andrefc101
- Donateur
- Berichten: 3732
- Lid geworden op: 26 dec 2007 08:39
- Locatie: Bergen op Zoom
- Contacteer:
Re: Macro simpeler maken..
Oke, hetzelfde als het de oplossing van Hugo, die heb ik er inmiddels instaan.Arie Kabaalstra schreef: ↑03 jan 2021 13:46 Met "gewoon een Array gebruiken dus"
bedoelde ik :de "index" of wel het nummer van je variabele wordt bepaald aan de hand van 1000 plus de waarde van #14.m dus als #14 =2, dan verwijs je naar #1002, als #14=5, dan verwijs je naar #1005.. #14 is in deze de "pointer" van je array..Code: Selecteer alles
#(1000+#14)=#5003*1000