Abfrage Werkzeugrevolver verschlossen

More
1 year 8 months ago #322272 by WKS-3D
Hallo Gemeinde,
ich bin dabei einen der 2 Sensoren für den Werkzeugrevolver zu definieren bzw. was zu tun ist, wenn der Sensor nicht ausgelöst wird.
Der Revolver wird von einem Pneumatikzylinder aus seiner Verzahnung gedrückt, dabei wird der Sensor unlocked ausgelöst, wenn die Position erreicht ist, darf der Motor den Revolver drehen. Danach wird der Revolver wieder nach hinten gezogen und ein 2. Sensor wird geschaltet, es sind also Positionsschalter. Mein Problem ist der 2. Schalter, wenn der Revolver zurückgezogen ist, wenn diese Position nicht erreicht wird und eine Fehlstellung vorliegt (zB Stepper Schrittverlust oder sonstige Störung) dann soll die Maschine ja nicht weiterfahren.
Das habe ich mit einem digitalen Input und M66 im M6-Macro versucht, was so weit auch zu funktionieren scheint:

M66 P0 L3 Q5

Jetzt ist es aber so, dass nach dem Timeout die Maschine trotzdem weitermacht.
Ich vermute da müsste eine Bedingung rein, aber ich weiß nicht, wie ich das am besten umsetze.
Mein M6 Macro:
Code:
o<toolchange> sub G53 G0 X-5. #4001=45            (bei 8 Positionen 360 Grad durch 8) M61 Q#4999            (Werkzeug aus Speicher setzen) o500 if[#<_current_tool> EQ #<_selected_tool>]     (DEBUG,Tool bereits in Spindel) o500 else     G0 C[#<_selected_tool> * #4001-#4001]     M6 G43     #4999=#5400     M66 P0 L3 Q5 o500 endif o<toolchange> endsub m2 Nun habe ich folgendes gelesen: Q- - gibt den Timeout in Sekunden für das Warten an. Wird der Timeout überschritten, wird das Warten unterbrochen, und die Variable #5399 erhält den Wert -1. Der Q-Wert wird ignoriert, wenn das L-Wort Null ist (IMMEDIATE). Ein Q-Wert von Null ist ein Fehler, wenn das L-Wort nicht Null ist. Wäre es dann so korrekt? [code]o<toolchange> sub G53 G0 X-5. #4001=45            (bei 8 Positionen 360 Grad durch 8) M61 Q#4999            (Werkzeug aus Speicher setzen) o500 if[#<_current_tool> EQ #<_selected_tool>]     (DEBUG,Tool bereits in Spindel) o500 else     G0 C[#<_selected_tool> * #4001-#4001]     M6 G43     #4999=#5400     M66 P0 L3 Q5 -----------------------------------------------------     o501 if #5399=-1          (DEBUG, Revolver nicht in Grundstellung)          M0     o501 endif ------------------------------------------------------ o500 endif o<toolchange> endsub m2 Danke und Gruß Olli [color=#2ecc71] [/color]
[/code]

Please Log in to join the conversation.

More
1 year 8 months ago #322375 by WKS-3D
Ich habe es nun selbst rausbekommen.
Der entsprechende Teil muss so aussehen, dann funktioniert es:
Code:
-----------------------------------------------------     o501 if [#5399 EQ -1]         (DEBUG, Revolver nicht in Grundstellung)         M0     o501 endif ------------------------------------------------------

Please Log in to join the conversation.

Time to create page: 0.159 seconds
Powered by Kunena Forum