Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Datei von NC auf PCU entladen per Softkey

Beitrag 26.06.2018, 17:45 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
Hallo zusammen,

es geht um eine Fräsmaschine Bj 2005 und 840D Powerline mit ShopMill Steuerung.
Wir schreiben bei jedem Arbeitsgang eine Protokolldatei.
Das ganze funktioniert auch wunderbar.
Leider wird ja die Protokolldatei auf der NC gespeichert. NC/Werkstücke/WerkstückA/Protokolle/Messergebnisse z.B.

Somit kommt man Netzwerktechnisch nicht an die Protokolldatei ran.
Zumindest nicht ohne die Datei von Hand über "Dienste" zu entladen.

Da ich hier Google und die Forensuche schon öfters durchforstet habe, findet sich hier keine Lösung wie man ein Entladen automatisieren könnte.
Ein Thread von mir vor einiger Zeit hat das auch bestätigt.

Nun meine Idee:
Gibt es eine Möglichkeit eine Datei mittels Softkey zu entladen ?
Somit müsste der Maschinenbediener (meist Leute die sich mit der Steuerung in der Tiefe nicht gut auskennen) nur einen Softkey zum entladen der Protokolldatei drücken.
Das "Rumfummeln" unter Dienste usw. würde ich nämlich gerne umgehen. Da hier auch vieles Falsch gemacht werden kann.

Ich habe mich dann mal auf die Suche gemacht wie man das realisieren könnte.
Mal angenommen ich möchte den Button "ProtokollSchreiben" unter Diagnose platzieren.

Dazu lege ich im Pfad: /CMA.DIR die Datei DIAG.COM an.

Inhalt:
//S(Start)
HS7=("ProtokollSchreiben",ac7,se1)
PRESS(HS7)
LS(Leiste1)
END_PRESS
//END

/S(Leiste1)
HS1=("Schreiben",AC7,)
PRESS(HS1)
LM("Schreiben")
END_PRESS
//END

Leider hänge ich jetzt ein bisschen..
Wo muss der UNLOAD Befehl rein ?

Muss ich hier mit Joblisten arbeiten ?

Vielen Dank

Grüße
   
Beitrag 27.06.2018, 05:54 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813
Hey meex

Du verwechselst da was.

LOAD UNDLOAD sind Joblisten Befehle. Bzw eine Methode zum entladen der Maske, in der MMC

Da du auf der MMC Seite arbeitest, hast andere Befehle.

Dateifunktion Move Program (MP)
MP(quelle,ziel,errorhandler)

MP("//NC/MPF.DIR/HOHO.MPF","LOC:/xyz/123.mpf",VAR3)

das kommt dann in deine Maske "Schreiben"

du kannst write in extern so auslösen

WRITE(ERROR,"LOCAL_DRIVE/myprotfile.mpf","MY_STRING")


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 27.06.2018, 06:06 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
QUOTE (Hexogen @ 27.06.2018, 04:54 Uhr) *
Hey meex

Du verwechselst da was.

LOAD UNDLOAD sind Joblisten Befehle. Bzw eine Methode zum entladen der Maske, in der MMC

Da du auf der MMC Seite arbeitest, hast andere Befehle.

Dateifunktion Move Program (MP)
MP(quelle,ziel,errorhandler)

MP("//NC/MPF.DIR/HOHO.MPF","LOC:/xyz/123.mpf",VAR3)

das kommt dann in deine Maske "Schreiben"

du kannst write in extern so auslösen

WRITE(ERROR,"LOCAL_DRIVE/myprotfile.mpf","MY_STRING")


Hallo,

vielen Dank für die Hilfe.
also der Write Befehl mit LOCAL_DRIVE sollte auch im NC Programm gehen ?
Muss ich mal testen.

Gruß
Meex
   
Beitrag 27.06.2018, 06:21 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813
Sorry du Hast noch ne alte Steuerung

Vielleicht schaust Online nach
https://support.industry.siemens.com/cs/mdm...35&lc=de-DE


Du Brauchst Befehle
Passivate Program (PP)

Beschreibung
Die Funktion PP (Passivate Program) überträgt eine Datei aus dem aktiven Dateisystem der NC in das passive Dateisystem des HMI-Advanced. Die Datei ist nach dem Ausführen der Funktion PP nicht mehr im aktiven Dateisystem der NC vorhanden. Bei HMI-Embedded sl wirkt diese Funktion wie Freigabe löschen.

Programmierung
Syntax:

PP ("Datei")

Wreite Extern schreiben, per

https://support.industry.siemens.com/cs/mdm...75&lc=de-DE

CODE
DEF INT <Result>
DEF STRING[<n>] <Output>

EXTOPEN(<Result>,<ExtDev>,<SyncMode>,<AccessMode>,<WriteMode>)

<Output>="Ausgabe Daten"
WRITE(<Result>,<ExtDev>,<Output>)

EXTCLOSE(<Result>,<ExtDev>)

----------------------------------------------------------------------------------------------------------------
N10 DEF INT RESULT
N20 DEF BOOL EXTDEVICE
N30 DEF STRING[80] OUTPUT
N40 DEF INT PHASE
N50 EXTOPEN(RESULT,"LOCAL_DRIVE/my_file.txt","SYN","SHARED")
N60 IF RESULT > 0
N70 MSG("Fehler bei EXTOPEN:" << RESULT)
N80 ELSE
N90 EXTDEVICE=TRUE
N100 ENDIF

N200 PHASE=4
N210 IF EXTDEVICE
N220 OUTPUT=SPRINT("Ende Phase: %D",PHASE)
N230 WRITE(RESULT,"LOCAL_DRIVE/my_file.txt",OUTPUT)
N240 ENDIF


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 27.06.2018, 18:34 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
QUOTE (Hexogen @ 27.06.2018, 05:21 Uhr) *
Sorry du Hast noch ne alte Steuerung

Vielleicht schaust Online nach
https://support.industry.siemens.com/cs/mdm...35&lc=de-DE


Du Brauchst Befehle
Passivate Program (PP)

Beschreibung
Die Funktion PP (Passivate Program) überträgt eine Datei aus dem aktiven Dateisystem der NC in das passive Dateisystem des HMI-Advanced. Die Datei ist nach dem Ausführen der Funktion PP nicht mehr im aktiven Dateisystem der NC vorhanden. Bei HMI-Embedded sl wirkt diese Funktion wie Freigabe löschen.

Programmierung
Syntax:

PP ("Datei")

Wreite Extern schreiben, per

https://support.industry.siemens.com/cs/mdm...75&lc=de-DE

CODE
DEF INT <Result>
DEF STRING[<n>] <Output>

EXTOPEN(<Result>,<ExtDev>,<SyncMode>,<AccessMode>,<WriteMode>)

<Output>="Ausgabe Daten"
WRITE(<Result>,<ExtDev>,<Output>)

EXTCLOSE(<Result>,<ExtDev>)

----------------------------------------------------------------------------------------------------------------
N10 DEF INT RESULT
N20 DEF BOOL EXTDEVICE
N30 DEF STRING[80] OUTPUT
N40 DEF INT PHASE
N50 EXTOPEN(RESULT,"LOCAL_DRIVE/my_file.txt","SYN","SHARED")
N60 IF RESULT > 0
N70 MSG("Fehler bei EXTOPEN:" << RESULT)
N80 ELSE
N90 EXTDEVICE=TRUE
N100 ENDIF

N200 PHASE=4
N210 IF EXTDEVICE
N220 OUTPUT=SPRINT("Ende Phase: %D",PHASE)
N230 WRITE(RESULT,"LOCAL_DRIVE/my_file.txt",OUTPUT)
N240 ENDIF


Hallo,

vielen vielen Dank für die Hilfe.
Werde ich die Tage mal testen.
Wenn ich das richtig verstehe ist das jetzt eine Lösung für die NC.. also nicht per Softkey HMI.

Das ganze funktioniert auch bei meiner 840D Powerline ? Weil ich in der Doku nur immer von SL , also Solution line lese ?

Gruß
Meex
   
Beitrag 27.06.2018, 20:46 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813
QUOTE (meex87 @ 27.06.2018, 19:34 Uhr) *
Hallo,

vielen vielen Dank für die Hilfe.
Werde ich die Tage mal testen.
Wenn ich das richtig verstehe ist das jetzt eine Lösung für die NC.. also nicht per Softkey HMI.

Das ganze funktioniert auch bei meiner 840D Powerline ? Weil ich in der Doku nur immer von SL , also Solution line lese ?

Gruß
Meex



Hey meex,

der Auszug aus der Doku, ist für Powerline.


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 02.07.2018, 15:21 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
Hallo,

also hab es jetzt mal über die NC-Variante versucht.
Leider steigt er mir schon beim Befehl EXTOPEN aus.
Er kennt diesen Befehl einfach nicht. Denke, das wird bei meinem Softwarestand nicht funktionieren.

Mir würde die Variante über die HMI aber vollumfänglich genügen.

Leider habe ich da nicht sehr viel Ahnung. Bei der NC würde es besser aussehen.. aber naja smile.gif
Ich habe mir jetzt mal was zusammengebastelt:

//S(Start)
HS7=("StatusSchreiben",ac7,se1)
PRESS(HS7)
LS(Leiste1)
END_PRESS
//END

/S(Leiste1)
HS1=("Schreiben",AC7,)
PRESS(HS1)
LM("Schreiben")
END_PRESS
//END

//M(Schreiben/"Schreibvorgang"///0,20/)
DEF INT VAR3
MP("//NC/WKS.DIR/PROTOKOLLE.DIR/PROTOKOLL.MPF","LOC:/protokolle/protokoll.mpf",VAR3)
//END

Funktioniert leider noch nicht ganz.
Er meint immer Zyklus in "Schreiben" nicht vorhanden..

Kann mir da jemand auf die Sprünge helfen ?

Danke

Grüße
Meex
   
Beitrag 02.07.2018, 16:57 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813
Hey Meex

QUOTE (meex87 @ 02.07.2018, 16:21 Uhr) *
Hallo,

also hab es jetzt mal über die NC-Variante versucht.
Leider steigt er mir schon beim Befehl EXTOPEN aus.
Er kennt diesen Befehl einfach nicht. Denke, das wird bei meinem Softwarestand nicht funktionieren.

welchen Softwarestand hast Du?
Welche Fehlernummer steht an?

QUOTE
//M(Schreiben/"Schreibvorgang"///0,20/)
DEF INT VAR3
MP("//NC/WKS.DIR/PROTOKOLLE.DIR/PROTOKOLL.MPF","LOC:/protokolle/protokoll.mpf",VAR3)
//END

Funktioniert leider noch nicht ganz.
Er meint immer Zyklus in "Schreiben" nicht vorhanden..


Das kann nicht funktionieren,
Der Befehl "MP" MoveProgram wird erst ab der Operate unterstützt.
Da sich die Datenhaltung zu HMIAdvanced radikal geändert hat.

Wie ich oben schon geschrieben hab, musst Du den Befehl "PP" PassivateProgram verwenden.

PP("\WKS.DIR\PROTOKOLLE.WPD\PROTOKOLL.MPF")

Wichtig "/" funktioniert hier auch nicht, Du musst "\" benutzen.
Ebenso WKS.DIR und dann .WPD verwenden, WPD steht für "WorkPieceDirectory"


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 03.07.2018, 16:26 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
QUOTE (Hexogen @ 02.07.2018, 15:57 Uhr) *
welchen Softwarestand hast Du?
Welche Fehlernummer steht an?


Werde ich die Tage mal kucken. Habe den Softwarestand nicht im Kopf

QUOTE (Hexogen @ 02.07.2018, 15:57 Uhr) *
Das kann nicht funktionieren,
Der Befehl "MP" MoveProgram wird erst ab der Operate unterstützt.
Da sich die Datenhaltung zu HMIAdvanced radikal geändert hat.

Wie ich oben schon geschrieben hab, musst Du den Befehl "PP" PassivateProgram verwenden.

PP("\WKS.DIR\PROTOKOLLE.WPD\PROTOKOLL.MPF")

Wichtig "/" funktioniert hier auch nicht, Du musst "\" benutzen.
Ebenso WKS.DIR und dann .WPD verwenden, WPD steht für "WorkPieceDirectory"


Mir wäre mittlerweile die Variante über die HMI sowieso lieber smile.gif

Ich habe das ganze mittlerweile in "Paramter" verfrachtet. Da es mir da besser passt.


Also meine PARAM.COM sieht aktuell so aus:
CODE
//S(Start)
HS7=("Protk.Schreiben",ac7,se1)
PRESS(HS7)
LS(Leiste1)
END_PRESS
//END

/S(Leiste1)
HS1=("Starten",AC7,)
PRESS(HS1)
LM("Schreiben")
END_PRESS
//END

//M(Schreiben/"wird geschrieben"///0,20/)
PP("\WKS.DIR\TMPTEST.WPD\TESTDATEI.MPF")
//END


Button vorhanden, alles klar. Funktioniert soweit.
Allerdings bei Button "Starten" quittiert die Maschine mit:
Keine Zeile im Zyklus projektiert! SCHREIBEN

Irgendwie denke ich das es nur eine Kleinigkeit ist.

Danke für die weitere Hilfe!

Gruß
Meex
   
Beitrag 04.07.2018, 15:44 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
Hallo,

habe es jetzt mal mit:

CODE
//S(Start)
HS7=("Protk.Schreiben",ac7,se1)
PRESS(HS7)
LS(Leiste1)
END_PRESS
//END

/S(Leiste1)
HS1=("Starten",AC7,)
PRESS(HS1)
PP("\WKS.DIR\TMPTEST.WPD\TESTDATEI.MPF")
END_PRESS
//END


probiert.
Fehlermeldung kommt keine mehr, allerdings ist die Testdatei dann auch nicht entladen.. sad.gif

Kann es sein das meine HMI Version das Problem ist?
Laut Doku:
Die Funktion PP (Passivate Program) überträgt eine Datei aus dem aktiven Dateisystem der NC in das passive Dateisystem des HMI-Advanced. Die Datei ist nach dem Ausführen der Funktion PP nicht mehr im aktiven Dateisystem der NC vorhanden. Bei HMI-Embedded sl wirkt diese Funktion wie Freigabe löschen.

1. Ich habe keine HMI-Advanced sondern HMI-Embedded
2. Ich habe keine HMI-Embedded sl (falls das Solution Line heißen soll).. sondern Powerline.

Liegt hier der Hund begraben ?

Falls das nicht Funktioniert... Könnte ich nicht Variablen in der NC Schreiben die ich mir dann in der HMI wieder aufgreife und in eine Lokale Datei in der HDD schreiben ?

Grüße
Meex
   
Beitrag 07.07.2018, 22:35 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813
QUOTE (meex87 @ 04.07.2018, 16:44 Uhr) *
1. Ich habe keine HMI-Advanced sondern HMI-Embedded
2. Ich habe keine HMI-Embedded sl (falls das Solution Line heißen soll).. sondern Powerline.

Liegt hier der Hund begraben ?

Falls das nicht Funktioniert... Könnte ich nicht Variablen in der NC Schreiben die ich mir dann in der HMI wieder aufgreife und in eine Lokale Datei in der HDD schreiben ?


Die Embedded ist von der HMI Programmierung zu der Advanced identisch.
Auch ob es eine PowerLine ist, ist auch irrelevant.
Da wirst wohl noch wo falsch abbiegen.

Was genau willst mit dem entladen denn bezwecken?
Entladen Knopf gibt es eigentlich.


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 10.07.2018, 20:31 Uhr
meex87
meex87
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.07.2013
Beiträge: 15
QUOTE (Hexogen @ 07.07.2018, 21:35 Uhr) *
Die Embedded ist von der HMI Programmierung zu der Advanced identisch.
Auch ob es eine PowerLine ist, ist auch irrelevant.
Da wirst wohl noch wo falsch abbiegen.

Was genau willst mit dem entladen denn bezwecken?
Entladen Knopf gibt es eigentlich.


Hallo,

ich will den Bediener einfach eine eine Möglichkeit geben eine Protokolldatei zu entladen..
Per einfachen Softkey.. ohne lange im ProgrammManager zu suchen.
Einfach per 2-3 Tastendrücken smile.gif

Die Datei wird dann extern per LAN abgeholt und abgespeichert.

Grüße

Der Beitrag wurde von meex87 bearbeitet: 10.07.2018, 20:32 Uhr
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: