Siemens Digital Industries Software
Siemens Digital Industries Software

Where today meets tomorrow.

Postprocessor hilfe, mom_machine_time in program header

Beitrag 22.06.2005, 14:17 Uhr
mlewan_ca
mlewan_ca
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 05.08.2004
Beiträge: 64
Hallo

setzt man die Variable mom_machine_time am ende bekommt man die Zeit eines kompletten CNC-Programms.
Ich moechte diese Zeit allerdins im Programmkopf erstellt haben.

Ich bin fuer jede hilfe sehr dankbar!

Gruss
mlewan
   
Beitrag 22.06.2005, 14:54 Uhr
CNC-Master
CNC-Master
Level 7 = Community-Professor
Gruppensymbol
Gruppe: Administrator
Mitglied seit: 05.11.2001
Beiträge: 1.965
hallo mlewan_ca,

schreibst du den pp mit dem postbuilder oder "nackt" in TCL?

die mom_machine_time, wird ja während des laufs erst berechnet, so dass sie opertaion für operation addiert wird und am ende des laufs erst bekannt ist.

Es gibt da 3 Möglichkeiten:
1.) Du leitest die Ausgabe des Programms erst komplett auf eine Liste und dann kannst du ja z.B. die Zeit, Werkzeuginfos etc., die Du während des ersten Laufs speicherst, am Programmbeginn ausgeben und schreibst erst dann den Rest ins Ausgabefile..

2.) Da TCL eine offene Programmiersprache ist:
Per TCL am Programmende, (am besten in proc MOM__halt{} ), das NC-File wieder einlesen, (auf eine Liste schreiben)
Dann ein write+ auf das File, die mom_machine_time ins File und danach erst wieder dass NC-Programm zurückschreiben.
..ist wirklich einfach zu realisieren, wenn man TCL programmieren kann.

3.) Ein Unigraphics Postwriter hat mal eine komplett überarbeitete time_calculation Prozedur geschrieben, (incl. Konfigurationsfile) die man in div. PPs einbinden kann. Gerade Nebenzeiten wie Werkzeugwechsel, Palettenwechsel, Beschleunigungs- und Bremszeiten sind nicht unerheblich und werden damit aufgefangen.
Aber auch da muss das Programm erst auf eine Liste geschrieben werden, wenn es zum Programmbeginn erscheinen soll.

Alles klar? biggrin.gif


--------------------
Gruß,
CNC-Master
   
Beitrag 23.06.2005, 13:40 Uhr
mlewan_ca
mlewan_ca
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 05.08.2004
Beiträge: 64
Hallo CNC-Master,

Ich benutze den postbuilder.
Allerdings habe ich ein wenig erfahrung im tlc!

Ich habe da was gefunden, leider funzt es nicht. Kann Du mir dabei helfen?



#=============================================================
proc PB_CMD_reprocess_ptp { } {
#=============================================================
#
# create this custom command in the End of Program
#

global ptp_file_name
set tmp_file_name "${ptp_file_name}_"
if {[file exists $tmp_file_name]} {
MOM_remove_file $tmp_file_name
}
MOM_close_output_file $ptp_file_name
file rename $ptp_file_name $tmp_file_name
set ifile [open $tmp_file_name r]
set ofile [open $ptp_file_name w]
global mom_machine_time
puts $ofile "(CYCLE TIME = [format "%.2f" $mom_machine_time] MIN.)"
set buf ""
while { [gets $ifile buf] > 0 } {
puts $ofile $buf
}
close $ifile
close $ofile
MOM_remove_file $tmp_file_name
MOM_open_output_file $ptp_file_name
}
   
Beitrag 23.06.2005, 18:01 Uhr
mlewan_ca
mlewan_ca
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 05.08.2004
Beiträge: 64
Funzt jetzt!

Leider habe ich noch mehr fragen,

Wie siehts aus mit blank stock, wall stock, floor stock...

wie kann ich die in meinen Post implementieren?
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: