Hello Guest it is October 16, 2019, 02:06:37 PM

Author Topic: Endlosschleife  (Read 3447 times)

0 Members and 1 Guest are viewing this topic.

Endlosschleife
« on: July 31, 2014, 05:54:57 AM »
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
Re: Endlosschleife
« Reply #1 on: July 31, 2014, 01:01:14 PM »
Hallo Mattihas,
am einfachsten geht wohl...

G0 X0 Y0
G0 X1 Y1
M01
M47
%

Das läuft dann ewig oder bis man die Taste "Optional Stop M01" drückt.

Gruss Alex
Re: Endlosschleife
« Reply #2 on: August 01, 2014, 02:25:02 AM »
Hallo Alex,

danke für die schnelle Antwort. Im Augenblick ist die Maschine grade nicht betriebsbereit. Ich werde es sobald als möglich gleich ausprobieren und mein Ergebnis posten. Könnte ja noch andere interessieren.

Gruß
Matthias
Re: Endlosschleife
« Reply #3 on: August 01, 2014, 04:32:19 AM »
Hallo Alex,

das ganze funktioniert genau wie gewollt. Mein Problem war, dass ich den G-Code nicht kann und M47 (Wiederholen) in meiner Befehlsliste nicht beschrieben war.
Da ich in Abhängigkeit eines Eingangs das ganze Starten und Stoppen will, habe ich zumindest erst mal für Stopp statt m01 ein eigenes Makro, was den Eingang abfragt, eingefügt.
Ich werde jetzt auf jeden Fall erst mal nach einer besseren Befehlsliste suchen.

Vielen Dank nochmals
Matthias
Re: Endlosschleife
« Reply #4 on: August 01, 2014, 04:37:44 AM »
Hallo Mattihas,
schön das es geht.  :)
Gruß
Alex