Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Synchronaktion Werkzeugvorbereitung

Beitrag 10.02.2016, 11:19 Uhr
Jonnyboss
Jonnyboss
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 17.12.2015
Beiträge: 8
Hallo Zusammen,

ich bin totaler Neuling, was Synchronaktionen betrifft.

zur Taktzeitoptimierung beim Werkzeugwechsel lasse ich einige Werkzeuge ohne Bürsten des HSK einwechseln (M66 bei einer GROB G551 / G550).
Dadurch ist die Werkzeugvorbereitungszeit um ca. 3 sek. kürzer. Um die Maschine nicht zu beschädigen muss ich diese Werkzeuge Allerdings bei jedem Programmdurchlauf bürsten.
Dazu habe ich bei einigen Bearbeitungen die länger als 20 Sekunden dauern genügend zeit.

Während diesen Bearbeitungen möchte ich eine Synchronaktion starten, die diese Werkzeuge parallel zum Programmablauf bürstet.
Die Synchronaktion soll abfragen ob das Magazin alle Aufträge abgearbeitet hat, und in diesem Moment ein NC-Programm abarbeiten, welches ein Werkzeug zur Vorbereitung und damit zum Bürsten anwählt.

Folgendes habe ich mir Überlegt:
CODE
ID=1 EVERY((R10<3)AND($AC_TC_STATUS==1)AND($AC_TC_FCT==-1)) DO WKZ_BUERSTEN R10=R10+1
ID=2 EVERY((R10==3)AND($AC_TC_STATUS==1)AND($AC_TC_FCT==-1)) DO WKZ_BUERSTEN(18) R10=R10+1

WKZ_BUERSTEN ist ein Unterprogramm mit folgendem Aufbau:
CODE
PROC WKZ_BUERSTEN (INT W_NR=0)
IF W_NR > 0
    T="W00"<<W_NR
    RET
ENDIF
IF R11 > 3
      R11=0
ENDIF
R11 =R11+1
CASE (R11) OF 1 GOTOF WZ1 2 GOTOF WZ2 3 GOTOF WZ3 DEFAULT GOTOF ENDE

WZ1:
T="W0015"
RET
WZ2:
T="W0020"
RET
WZ3:
T="W0025"
RET
ENDE:
MSG("R11 PRUEFEN")
M0
RET


die 2.Synchronaktion soll es ermöglichen ein vorher definiertes Werkzeug vorzubereiten (für den nächsten Werkzeugwechsel)

jetzt stellt sich für mich die frage ob dieser Unterprogrammaufruf überhaupt möglich ist ohne das laufende Bearbeitungsprogramm zu stören.
ich bin mir auch nicht sicher ob die Bedingungen für die Synchronaktionen richtig sind vielleicht kann mir jemand weiterhelfen welche Parameter ich abfragen kann um festzustellen ob die Werkzeugverwaltung alle Aufträge abgearbeitet hat.
Außerdem muss ich wissen welche IDs überhaupt frei sind. gibt es eine Möglichkeit alle aktiven Synchronaktionen auszulesen?
   
Beitrag 10.02.2016, 14:21 Uhr
Guest_guest_*
Themenstarter
Gast


Mal davon abgesehen, daß sich mir der Sinn deines Unterprogramms "WKZ_BUERSTEN" und dessen Aufruf, nicht wirklich erschließt ...
Das Anstoßen der Werkzeugbereitstellung würde auch aus dem Hauptprogramm heraus funktionieren.
So wie es ist, dauert die Ausführung deines UP nur wenige IPO-Takte und dürfte das Hauptprogramm nur einen Bruchteil einer Sekunde verzögern.
Beim Aufruf ist die Integervariable "W_NR" übrigens immer = 0, weswegen sich die Abfrage am Anfang des UP natürlich erübrigt.
R11 dagegen dürfte bei Aufruf nur die Werte 0, 1 und 2 enthalten. der Wert 3 wird zum "ENDE:" geschickt.
Ein Wert >3 wird genullt und durch den Zähler auf "WZ1:" (T="W0015") geschickt.
Ist das so beabsichtigt?

Im Funktionshandbuch Synchronaktionen ( 6FC5397-5BP10-4AA0 ) kannst du anhand der Beispiele sinnvollere Aktionen planen.
Im Handbuch der Systemvariablen (Listen (Buch 1)) kannst du herausfinden, welche Variablen in deinem Softwarestand verfügbar / nutzbar sind.

Der Beitrag wurde von guest bearbeitet: 10.02.2016, 14:25 Uhr
   
Beitrag 10.02.2016, 15:49 Uhr
hoiich
hoiich
Level 3 = Community-Techniker
***
Gruppe: Mitglied
Mitglied seit: 08.06.2015
Beiträge: 177
Was genau kann man eigentlich unter dem Bürsten der WZ verstehen?
hab das in diesem Zusammenhang noch nie gehört...
   
Beitrag 10.02.2016, 15:49 Uhr
Jonnyboss
Jonnyboss
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 17.12.2015
Beiträge: 8
Ich bin in meinem Beispiel davon ausgegangen dass ich 3 Werkzeuge ohne HSK Bürsten einwechsele und somit diese an anderer stelle im Programm bürsten muss.
Daher verwende ich den Zähler R11 (die abfrage müsste IF R11<=3 heißen) damit bei jedem Unterprogrammaufruf ein weiteres Werkzeug gebürstet wird.
In ID1 verwende ich R10 um sicher zu stellen dass das Unterprogramm nur 3 mal ausgeführt wird. R10 muss vor dem starten der Synchronaktion auf 1 gesetzt werden.
Ist R10 nun 3 wir das Unterprogramm von ID2 ein 4. mal ausgeführt allerdings mit dem übergabewert 18 um W0018 für die nächste Bearbeitung vorzubereiten.
vor dem nächsten Werkzeugwechsel lösche ich die Aktionen.
CODE
cancel(1,2)


sollte es jetzt von Nöten sein weitere Werkzeuge zu bürsten kann ich einfach das Unterprogramm erweitern und die Synchronaktionen bei einer beliebigen anderen Bearbeitung starten.
die Anzahl der aufrufe kann ich über die abfrage von R10 an die Länge der Bearbeitung anpassen, damit es zu keinen Verzögerungen durch das bürsten von Werkzeugen kommt.
ID2 muss entsprechend angepasst werden um das richtige Werkzeug für die kommende Bearbeitung vorzubereiten.

Mir ist bewusst dass die Werkzeugvorbereitung auch aus dem Hauptprogramm möglich ist.
Ich verzichte darauf, und Steuer die Werkzeugvorbereitung über Synchronaktionen damit diese auch angestoßen wird während die Maschine in einem langen G1-Satz unterwegs ist.
Dass der Aufruf des Unterprogramm die Programmlaufzeit nicht beeinflusst ist mir bewusst allerdings stellt sich mir immer noch die frage ob der Vorschub der Maschine unterbrochen wird wenn die Synchronaktion während eines G1 Satz aktiviert wird.
   
Beitrag 10.02.2016, 15:52 Uhr
Jonnyboss
Jonnyboss
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 17.12.2015
Beiträge: 8
QUOTE (hoiich @ 10.02.2016, 15:49 Uhr) *
Was genau kann man eigentlich unter dem Bürsten der WZ verstehen?
hab das in diesem Zusammenhang noch nie gehört...


der Kegel der Werkzeugaufnahme wird vor dem einwechseln durch eine bürste im Magazin gereinigt um die Spindel und die Werkzeugaufnahme nicht durch Späne, Dreck zu beschädigen
   
Beitrag 10.02.2016, 15:59 Uhr
Guest_guest_*
Themenstarter
Gast


QUOTE (Jonnyboss @ 10.02.2016, 15:52 Uhr) *
der Kegel der Werkzeugaufnahme wird vor dem einwechseln durch eine bürste im Magazin gereinigt um die Spindel und die Werkzeugaufnahme nicht durch Späne, Dreck zu beschädigen


Und wie wird das "Bürsten" ausgelöst?
Direkt beim Einschwenken der Position?

Mein Tip:
Laß das neue Werkzeug erst ca. 5-8 Sekunden vor M6 einschwenken und gleich reinigen, dann kannst du sofort einwechseln.
Was ist das eigentlich für ein Magazin? PicUp, oder Kette mit Doppelarmgreifer?
   
Beitrag 10.02.2016, 16:55 Uhr
Jonnyboss
Jonnyboss
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 17.12.2015
Beiträge: 8
QUOTE (guest @ 10.02.2016, 15:59 Uhr) *
Und wie wird das "Bürsten" ausgelöst?
Direkt beim Einschwenken der Position?

Mein Tip:
Laß das neue Werkzeug erst ca. 5-8 Sekunden vor M6 einschwenken und gleich reinigen, dann kannst du sofort einwechseln.
Was ist das eigentlich für ein Magazin? PicUp, oder Kette mit Doppelarmgreifer?

Das bürsten wird automatisch beim vorbereiten eines Werkzeuges ausgelöst, solange ich es nicht mit M66 unterdrücke.

Es sind 2 Revolvermagazine und ein Doppelgreifer der zwischen den 2 Magazinen, der WZW-Position, und einer Bürste hin und her fahren kann.
Es ist überhaupt kein Problem schon 5 min vor dem m6 ein Werkzeug vorzubereiten und zu Bürsten. Allerdings braucht das Bürsten seine zeit, und wenn ein Bohrer nur 2 Bohrungen macht ist der nächste Werkzeugwechsel noch nicht vorbereitet.
um zeit beim vorbereiten zu sparen kann ich das Werkzeug mit M66 (ohne Bürsten) vorbereiten.


Zum besseren Verständnis der geplante Programmablauf:
CODE
T="W0020"
M6
M66 ;Werkzeug vorbereiten ohne Bürsten
T="W0021"
G0 Z...;sehr kurze Bearbeitung
.
.
M66
T="W0021"
M6
R10=1
ID=1 EVERY((R10<3)AND($AC_TC_STATUS==1)AND($AC_TC_FCT==-1)) DO WKZ_BUERSTEN R10=R10+1
ID=2 EVERY((R10==3)AND($AC_TC_STATUS==1)AND($AC_TC_FCT==-1)) DO WKZ_BUERSTEN(18) R10=R10+1
G0 Z... X...;sehr lange Bearbeitung, in dieser zeit werden 3 WKZ Gebürstet und W0018 Vorberietet
.
.
T="W0018"
M6
T="W0020"
...
T="W0020"
M6
M30
   
Beitrag 10.02.2016, 18:04 Uhr
Guest_guest_*
Themenstarter
Gast


Die Maschine scheint recht exotisch zu sein.
Wenn ich jetzt richtig verstanden habe:
  • "WKZ1" ist aktiv in der Spindel
  • Nebenbei sollen die nächsten 3 Werkzeuge mit einer stationären Bürste gereinigt werden.
    • Magazin mit Werkzeug "WKZ2" zur Übergabeposition einschwenken
    • Mit Greifer aufnehmen
    • zur Bürstenstation fahren
    • Reinigen
    • zurück im Magazin ablegen
    • Magazin mit Werkzeug "WKZ3" zur Übergabeposition einschwenken
    • Mit Greifer aufnehmen
    • zur Bürstenstation fahren
    • Reinigen
    • zurück im Magazin ablegen
    • Magazin mit Werkzeug "WKZ4" zur Übergabeposition einschwenken
    • Mit Greifer aufnehmen
    • zur Bürstenstation fahren
    • Reinigen
    • zurück im Magazin ablegen
    • Magazin mit Werkzeug "WKZ2" zur Übergabeposition einschwenken
    • Mit Greifer aufnehmen
    • warten auf M6
Wenn du hier eine Sondermaschine für die Massenfertigung hast, wirst du das Programm und die Werkzeugbeladung nicht oft ändern.
Angenommen, WKZ2 ist ein Zentrierbohrer für 2 Zentrirungen (Sehr kurze Einsatzzeit):

CODE
T="WKZ1";Planfräser
M6
D1
T="WKZ3";Spiralbohrer
Planfräsen_erster_Schritt:
....
T="WKZ2";Zentrierbohrer
Planfräsen_zweiter_Schritt:
....
M6
T="WKZ3";Spiralbohrer
Zentrieren
....
M6
T="WKZ4";Schaftfräser
Bohren:
....
M6
Kontur_fräsen:
....
M30


Der Beitrag wurde von guest bearbeitet: 10.02.2016, 18:06 Uhr
   
Beitrag 11.02.2016, 15:35 Uhr
Jonnyboss
Jonnyboss
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 17.12.2015
Beiträge: 8
QUOTE (guest @ 10.02.2016, 18:04 Uhr) *
Die Maschine scheint recht exotisch zu sein.
Wenn du hier eine Sondermaschine für die Massenfertigung hast, wirst du das Programm und die Werkzeugbeladung nicht oft ändern.
Angenommen, WKZ2 ist ein Zentrierbohrer für 2 Zentrirungen (Sehr kurze Einsatzzeit):

CODE
T="WKZ1";Planfräser
M6
D1
T="WKZ3";Spiralbohrer
Planfräsen_erster_Schritt:
....
T="WKZ2";Zentrierbohrer
Planfräsen_zweiter_Schritt:
....
M6
T="WKZ3";Spiralbohrer
Zentrieren
....
M6
T="WKZ4";Schaftfräser
Bohren:
....
M6
Kontur_fräsen:
....
M30


Eine GROB G550 ist zwar eine Werkstattmaschine, wir nutzen sie allerdings für eine Großserie.
So wie dein Beispielprogramm sehen unsere Bearbeitungsprogramme aktuell auch aus. Das hat allerdings den Nachteil, dass das platzieren der Werkzeugvorbereitungen sehr zeitaufwändig ist.
wenn ich die Werkzugvorbereitung zu früh anstoße bleibt die Maschine so lange stehen bis die vorherige Vorbereitung abgeschlossen ist. Wenn ich sie zu spät anstoße genügt die zeit bis zum nächsten WZW nicht.
die Synchronaktionen sind hierfür optimal, da die nächste Vorbereitung automatisch angestoßen wird, sobald die erste abgeschlossen ist. außerdem sind sie sehr flexibel an verschiedene Spannungen, Projekte, ... anzupassen.
es genügt andere Werkzeuge in das UP einzutragen. und in den Synchronaktionen die Anzahl der aufrufe des Unterprogrammes abzuändern.

ich habe leider noch keine Informationen welche IDs schon vom Maschinenhersteller, Siemens belegt sind.
gibt es eine Möglichkeit diese Informationen auszulesen?
   
Beitrag 11.02.2016, 19:38 Uhr
nixalsverdruss
nixalsverdruss
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 16.11.2003
Beiträge: 1.511
QUOTE (Jonnyboss @ 11.02.2016, 16:35 Uhr) *
1 jetzt stellt sich für mich die frage ob dieser Unterprogrammaufruf überhaupt möglich ist ohne das laufende Bearbeitungsprogramm zu stören.

2 ich habe leider noch keine Informationen welche IDs schon vom Maschinenhersteller, Siemens belegt sind.
gibt es eine Möglichkeit diese Informationen auszulesen?


zu 1 . Das geht nicht , pro Kanal nur ein aktives Programm

zu 2 bei Operate : Grundbild Maschine -> Softkeyleiste verlängern -> Softkey Synchronaktionen ->ablesen
   
Beitrag 11.02.2016, 20:42 Uhr
Guest_guest_*
Themenstarter
Gast


Eine Möglichkeit wäre allerdings, soweit vorhanden, der zweite Kanal.
In diesem könnte ein zweites Programm über Waitmarken synchronisiert ablaufen.
Also die mögliche "Synchronaktion" die auch den Sinn der Aktion erfüllen könnte. wink.gif
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: