Sinumerik 840d PLC-Variable ans NC-Programm übergeben

Christian_1989

Level-1
Beiträge
56
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

Weiß jemand wie man z.b. eine Byte variable von der PLC zum NC-Programm übertragen kann?

Ich versuchs mal zu erklären... es handelt sich um eine Rundtaktmaschine. 8 Vorrichtungen und 7 Bearbeitungsstationen und ich müsste jetz an jedes
NC-Programm der 7 Stationen die Aktuelle Vorrichtung die vor der Station ist übergeben. Damit ich für jede Vorrichtung einen eigenen Nullpunkt anfahren kann.

Beispiel: An der Bearbeitungsstation 2 ist die Vorrichtung 4 und damit wird Nullpunkt 2 aufgerufen.

Danke jetz scho mal für die antworten!

Das ist die Maschine:
a02236072a.jpg
 
Über das DualportRam ...

Oder direkt auf eine z.B. GUD via FB4 ...




Code:
      U     M      0.1
      =     L      0.0
      BLD   103
      CALL  FC    21
       Enable :=L0.0
       Funct  :=B#16#4
       S7Var  :=P#DB1141.DBX0.0 BYTE 49
       IVAR1  :=0
       IVAR2  :=-1
       Error  :=M500.0
       ErrCode:=MW502
      NOP   0

In dem DB1141 liegen die Daten welche übertragen werden sollen 0..49
Kann auch geändert werden ...

Diese Daten können im NC-Programm über Systemvariable abgefragt werden.

Dabei ergibt sich derzeit folgende Belegung:

$A_DBB10
$A_DBB11
$A_DBB12 Werkstücktyp
$A_DBB13 Werkstücktyp
$A_DBB14 Werkstücktyp
$A_DBB15 Werkstücktyp
$A_DBB16 Werkstücktyp
$A_DBB17 Werkstücktyp
$A_DBB18 Werkstücktyp
$A_DBB19
$A_DBB20 Rundtisch Pos
$A_DBB21
$A_DBB22 Bearbeitungszustand
$A_DBB23 Bearbeitungszustand
$A_DBB24 Bearbeitungszustand
$A_DBB25 Bearbeitungszustand
$A_DBB26 Bearbeitungszustand
$A_DBB27 Bearbeitungszustand
$A_DBB28 Bearbeitungszustand
$A_DBB29
$A_DBB30
$A_DBB31
$A_DBB32
$A_DBB33
$A_DBB34
$A_DBB35
$A_DBB36
$A_DBB37
$A_DBB38
$A_DBB39
$A_DBB40 Lader Auftrag Automatik
$A_DBB41 Lader Auftrag Einrichten
$A_DBB42
$A_DBB43 Aktueller Typ im Greifer (Lader)
$A_DBB44
$A_DBB45
$A_DBB46
$A_DBB47
$A_DBB48
$A_DBB49

===============================================================================

Verarbeitung in NC-Prog. z.B.

DEFINE TYP_MASCH AS $A_DBB[10] ;Vorgewählter Werkstücktyp
DEFINE TYP_BELAD AS $A_DBB[11] ;Werkstücktyp an Beladeplatz
DEFINE BZ_ST02 AS $A_DBB[22] ;Zustand Bearbeitung Einheit 02
DEFINE BZ_ST03 AS $A_DBB[23] ;Zustand Bearbeitung Einheit 03
DEFINE BZ_ST04 AS $A_DBB[24] ;Zustand Bearbeitung Einheit 04
DEFINE BZ_ST05 AS $A_DBB[25] ;Zustand Bearbeitung Einheit 05
DEFINE BZ_ST06 AS $A_DBB[26] ;Zustand Bearbeitung Einheit 06
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

Weiß jemand wie man z.b. eine Byte variable von der PLC zum NC-Programm übertragen kann?

Ich versuchs mal zu erklären... es handelt sich um eine Rundtaktmaschine. 8 Vorrichtungen und 7 Bearbeitungsstationen und ich müsste jetz an jedes
NC-Programm der 7 Stationen die Aktuelle Vorrichtung die vor der Station ist übergeben. Damit ich für jede Vorrichtung einen eigenen Nullpunkt anfahren kann.

Beispiel: An der Bearbeitungsstation 2 ist die Vorrichtung 4 und damit wird Nullpunkt 2 aufgerufen.

Danke jetz scho mal für die antworten!

Das ist die Maschine:
Anhang anzeigen 19727


Wenn es eigenständige NC Programme pro Palette sind, dann kannst du bei einem Palettenwechsel das entsprechende Programm über einen PI Dienst starten.
In diesem kannst du auch die NVP setzen.
Denn es macht nicht immer Sinn dies in der PLC zu machen.

Wie immer, es gibt viele Wege die nach Rom führen, wobei ich weiß was ich in Rom soll :)


bike
 
Wenn es eigenständige NC Programme pro Palette sind, dann kannst du bei einem Palettenwechsel das entsprechende Programm über einen PI Dienst starten.
In diesem kannst du auch die NVP setzen.
Denn es macht nicht immer Sinn dies in der PLC zu machen.

Wie immer, es gibt viele Wege die nach Rom führen, wobei ich weiß was ich in Rom soll :)


bike

Na dann könnte er ca. 56 Programme wegen den 8 Vorrichtungen haben.
Bei jeder Änderung muss diese dann in den jeweils 8 Programmen der Station durchgeführt werden.

Da dann doch lieber die Vorrichtungsnummer übergeben und im Anfang des Ablaufes die Korrekturdaten z.B. via NPV oder Korrekturunterprogramm lesen ...

Ist der Rundtisch z.B. als Teilungsachse definiert und die Vorrichtungen sind fest darauf montiert (Pos 1 -V1,Pos 2 -V2,Pos 3 -V3 usw.), könnte man auch anhand der Teilungposition sich die Vorrichtungsnummer in der NC ermitteln und damit arbeiten.
Dann müsste man auch nicht den Weg über die PLC gehen!
 
Zuletzt bearbeitet:
Na dann könnte er ca. 56 Programme wegen den 8 Vorrichtungen haben.
Bei jeder Änderung muss diese dann in den jeweils 8 Programmen der Station durchgeführt werden.

Da dann doch lieber die Vorrichtungsnummer übergeben und im Anfang des Ablaufes die Korrekturdaten z.B. via NPV oder Korrekturunterprogramm lesen ...

Ist der Rundtisch z.B. als Teilungsachse definiert und die Vorrichtungen sind fest darauf montiert (Pos 1 -V1,Pos 2 -V2,Pos 3 -V3 usw.), könnte man auch anhand der Teilungposition sich die Vorrichtungsnummer in der NC ermitteln und damit arbeiten.
Dann müsste man auch nicht den Weg über die PLC gehen!

Also wir machen es mit einer Palettenverwaltung und eigenständigen NC Programmen.
Es war ein Hinweis oder Tipp wie man es auch machen kann.
Wer weiß in zehn Jahren noch was wo wie warum in der PLC und/oder NC gemacht wird?

Für die Bediener ist es meist schwerer zu verstehen was in der PLC gemacht wird, als wenn sie im NC Programm sehen was wie vorbelegt wird.


bike
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es war ein Hinweis oder Tipp wie man es auch machen kann.
Wer weiß in zehn Jahren noch was wo wie warum in der PLC und/oder NC gemacht wird?

Für die Bediener ist es meist schwerer zu verstehen was in der PLC gemacht wird, als wenn sie im NC Programm sehen was wie vorbelegt wird.


bike

Hola bike, sorry wollte Dir nicht nahe tretten :cool: war nicht Absicht, war wohl gestern etwas gestresst!

Ich fahre da ein Konzept, bei dem der Einrichter nicht im eigentlichen NC Programm ändern soll, sondern im einem sogenannten Positions-Programm.
Das wird halt am Anfang aufgerufen und dann die Werte / Positionen verrechnet. Ist auch einwenig ein anderes Konzept als man es so direkt von der 840 kennt.
Mache gerade eh nur Rexroth MTX und da gibts halt noch weitere Möglichkeiten die, wie gesagt man nicht direkt in der 840 kenn aber sehr nützlich sind ...
Ist auch eine Standartmaschine und da musst halt eh viel in der NC machen, da man ja SPS nihct verändern möchte ...
 
Zuletzt bearbeitet:
Danke für die anworten!

Ich werd die Vorrichtungsnummer in der PLC auslesen und dann für jede Station eine Variable mit der Aktuellen Nummer ans NC-Programm übergeben und denn
rest dann im NC-Programm machen..
 
Ist die Vorrichtung nicht an ein Programm gebunden?
Es wird doch dann über ein PI Dienst ein NC Programm gestartet.

Da ist doch schon alles vorhanden, um zu produzieren.
Oder wechseln die Paletten auf dem Rundtisch?
Bzw habt nur ein Programm das alle Einheiten bewegen?


bike
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das Problem ist das es für jede Bearbeitungsstation nur ein NC-Programm gibt.. also 7 NC-Programme. das heißt ein Programm für 8 Vorrichtungen(Paletten).
Das eigentliche Problem ist das der Rundtisch der ja 8 mal taktet und die Bearbeitungsstationen zu ungenau sind...

Und wenn ich die Aktuelle Vorrichtung die gerade vor der jeweiligen Station steht ans NC-Programm übergeben kann, kann ich scho mal die
Ungenauigkeiten der Vorrichtung erschlagen. So ist der Plan :smile:

Vieleicht sieht man das auf dem Bild:

Unbenannt.jpg
 
Ist das Drehen aus der NC?
Wenn ja kannst du über die Position der Achse ausrechen welche Station vor deiner Bearbeitungsstation steht.


bike
 
ist das in der Mitte nur eine Spannvorrichtung oder ist das eine Rundachse / Spindel ?
wenn das eine Rundachse / Spindel ist wir die ja mit Sicherheit über einen Achscontainer
in den entsprechenden Kanal geschaltet. Dann kannst du die Stellung des Achscontainers in
NC Programm abfragen und den entsprechenden Nullpunkt anwählen.
 
ist das in der Mitte nur eine Spannvorrichtung oder ist das eine Rundachse / Spindel ?
wenn das eine Rundachse / Spindel ist wir die ja mit Sicherheit über einen Achscontainer
in den entsprechenden Kanal geschaltet. Dann kannst du die Stellung des Achscontainers in
NC Programm abfragen und den entsprechenden Nullpunkt anwählen.

Das in der Mitte ist nur ein Spannvorrichtung. Die Spannvorrichtung kann nur mit der Hand mechanisch gedreht werden.
 
Dann halt keine Rundachse/ Spindel.
Hast du denn mal mit den Einrichtern der Maschine gesprochen . Ich kann mir nicht vorstellen das es in der Maschine auf der NC Seite keine Variable gibt die etwas über die Stellung der Werkstück klemmung zur Bearbeitungsstation aussagt .
Di Maschine hat ja mal mindestens 7 Kanäle das muss ja irgendwie synchronisiert werden.
Mach doch mal ein NC Archiv und stell das hier ein so ist das ja nur Traumdeutung
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dann halt keine Rundachse/ Spindel.
Hast du denn mal mit den Einrichtern der Maschine gesprochen . Ich kann mir nicht vorstellen das es in der Maschine auf der NC Seite keine Variable gibt die etwas über die Stellung der Werkstück klemmung zur Bearbeitungsstation aussagt .
Di Maschine hat ja mal mindestens 7 Kanäle das muss ja irgendwie synchronisiert werden.
Mach doch mal ein NC Archiv und stell das hier ein so ist das ja nur Traumdeutung

Vorstellen kann ich mir oft auch nicht viel oder alles.
Es kann ja sein, das wenn nicht benötigt es keine Variable gibt welche die aktuelle Vorrichtung beschreibt.
Synchronisiert muss nicht viel werden, Einheiten fertig und Grundstellung, Rundtisch dreht und dann Startimpuls und Einheiten bearbeiten erneut ...
 
Zurück
Oben