Guten Tag,
ich habe diese Anfrage auch unter "VB and the development of wizards" gestellt, aber in Deutsch ist für mich einfacher.
Ich bnötige eine Endlosschleife, d.h. eine Achse soll pendeln solange an einem Eingang ein Signal anliegt. Im G-Code ist wohl nur eine Schleife mit bestimmter Durchlaufanzahl möglich. Also habe ich folgendes primitive Makro geschrieben:
Sub CheckPins
While IsActive(Input3)
Code "g00 y1 x1"
Code "g00 y0 x0"
Wend
End Sub
Es lässt sich nur per M-Befehl aufrufen. Bei Aufruf aus dem VB-Script-Editor kommt nach wenigen Sekunden Error-Code 3336 und 9991. Was sich dahinter verbirgt, konnte ich bisher nicht finden. Egal, ist beim Aufruf mit M... der Eingang3 aus, passiert wie erwartet nichts. Ist er ein pendeln beide Achsen wie gewünscht. Aber die Schleife bleibt auch aktiv wenn der Eingang anschließend ausgeschaltet wird. Auch wenn ich dann das Makro nochmal aufrufe ändert sich nichts. Versuchsweise habe ich das Scrpit dann als MacroPump laufen lassen, damit es regelmäßig aufgerufen wird. Auch dann läuft es zwar mit dem Eingngssignal an, aber stoppt nicht und nach kurzer Zeit kommen die obigen Fehler 3336 und 9991. Das System läuft erst wieder nach einem kompletten Neustart inklusive des CSMIO/IP-S-Moduls. Versuche mit Goto nach oben und If IsActive(Inputx) then... verhielten sich ähnlich. Wie kann ich eine bedingte Endlosschleife bauen?
Gruß
Matthias
alias CNCwelder