incubus
29.12.2005, 11:10
Hallo,
Ich muss paar sachen mit TCL machen, im konkreten: Postprozessoren für UG NX3, und kenn mich genau nüsse aus :mauer: hoffe ihr könnt mir ein bisschen helfen.
Also ich versuche gerade eine Ausgabe der Bearbeitungszeiten, einzeln für jedes Tool und die Gesammte, zu realisieren dabei bin ich auf ein Problem gestoßen das ich bis dato nicht lösen kann.
1.) Frage: was beteutet "isset und hiset" ?
2.) das Problem: Die Ausgabe funktioniert soweit nur für das letzte "Tool" also den letzten Durchlauf durch das Script steht scheinbar der Wert in $mom_too_use(n,1) noch nicht zur verfügung jetzt fehlt immer die Ausgabe des letzte Werkzeuges :(
hier die proc in der ich die Zeitausgabe mache:
# ---------------------------------------------
# ---------------------------------------------
global mom_machine_time
global mom_tool_use mom_tool_name
global mom_tool_count
global fr_tool_names ; # Array, wird nach jedem Werkzeugwechsel beschrieben schluessel=mom_too_count Wert=mom_tool_name
global ptp_file_name
global mom_output_file_directory mom_output_file_basename
# ---------------------------------------------
# ---------------------------------------------
# schliessen des NC-files
MOM_close_output_file $ptp_file_name
MOM_set_seq_off
# ---------------------------------------------
# Var setzen fuer pfad
set zeit zeit\\
set pfad_doc $mom_output_file_directory$zeit$mom_output_file_basename.doc
# ---------------------------------------------
# abfrage ob file und pfad besteht wenn ja dann loeschen von file
if {[info exists pfad_doc]} {
MOM_remove_file $pfad_doc
}
# ---------------------------------------------
# erzeugen des verzeichnisses zum ablegen der .doc datei
file mkdir $mom_output_file_directory\\zeit
# ---------------------------------------------
# oeffnen der .doc datei
MOM_open_output_file $pfad_doc
# ---------------------------------------------
# schreiben in die .doc datei
if {[hiset mom_machine_time] == 0} {set mom_machine_time 0}
MOM_output_literal "; ********************************************"
MOM_output_literal "; "
MOM_output_literal "; Gesamtbearbeitungszeit :[ format "%.2f" $mom_machine_time] min"
if {[isset mom_tool_count] == "n"} {return}
MOM_output_literal "; "
MOM_output_literal "; "
MOM_output_literal "; Werkzeugliste mit Bearbeitungszeit"
MOM_output_literal "; ********************************************"
# MOM_output_literal "tool count $mom_tool_count"
if {[hiset mom_tool_count]} {
for { set nn 0 } { $nn < $tool_nr_limit } {incr nn 1} {
if {[info exists mom_tool_use($nn,0)] && [info exists mom_tool_use($nn,1)] && [info exists fr_tool_names($nn)]} {
set a [scan $mom_tool_use($nn,0) %d tn]
set output [format "%-20s %-3s %-5.2f" $fr_tool_names($nn) $tn $mom_tool_use($nn,1)]
MOM_output_literal $output
}
}
}
#set arraySchluesselNamen [array names mom_tool_use]
#set anzahlSchluesselnamen [array size mom_tool_use]
#MOM_output_literal "**********!!! Array !!!! $arraySchluesselNamen $anzahlSchluesselnamen"
MOM_output_literal "; ********************************************"
# ---------------------------------------------
# schliessen der .doc datei oeffnen der NC-datei
MOM_close_output_file $pfad_doc
MOM_open_output_file $ptp_file_name
# ---------------------------------------------
MOM_set_seq_on
# ---------------------------------------------
giebt es eine Möglichkeit die Daten die im mom_tool_use noch nicht eingetragen wurden abzufragen oder das Eintragen zu erzwingen sodass die Daten dann verfügbar sind ?
Ich muss paar sachen mit TCL machen, im konkreten: Postprozessoren für UG NX3, und kenn mich genau nüsse aus :mauer: hoffe ihr könnt mir ein bisschen helfen.
Also ich versuche gerade eine Ausgabe der Bearbeitungszeiten, einzeln für jedes Tool und die Gesammte, zu realisieren dabei bin ich auf ein Problem gestoßen das ich bis dato nicht lösen kann.
1.) Frage: was beteutet "isset und hiset" ?
2.) das Problem: Die Ausgabe funktioniert soweit nur für das letzte "Tool" also den letzten Durchlauf durch das Script steht scheinbar der Wert in $mom_too_use(n,1) noch nicht zur verfügung jetzt fehlt immer die Ausgabe des letzte Werkzeuges :(
hier die proc in der ich die Zeitausgabe mache:
# ---------------------------------------------
# ---------------------------------------------
global mom_machine_time
global mom_tool_use mom_tool_name
global mom_tool_count
global fr_tool_names ; # Array, wird nach jedem Werkzeugwechsel beschrieben schluessel=mom_too_count Wert=mom_tool_name
global ptp_file_name
global mom_output_file_directory mom_output_file_basename
# ---------------------------------------------
# ---------------------------------------------
# schliessen des NC-files
MOM_close_output_file $ptp_file_name
MOM_set_seq_off
# ---------------------------------------------
# Var setzen fuer pfad
set zeit zeit\\
set pfad_doc $mom_output_file_directory$zeit$mom_output_file_basename.doc
# ---------------------------------------------
# abfrage ob file und pfad besteht wenn ja dann loeschen von file
if {[info exists pfad_doc]} {
MOM_remove_file $pfad_doc
}
# ---------------------------------------------
# erzeugen des verzeichnisses zum ablegen der .doc datei
file mkdir $mom_output_file_directory\\zeit
# ---------------------------------------------
# oeffnen der .doc datei
MOM_open_output_file $pfad_doc
# ---------------------------------------------
# schreiben in die .doc datei
if {[hiset mom_machine_time] == 0} {set mom_machine_time 0}
MOM_output_literal "; ********************************************"
MOM_output_literal "; "
MOM_output_literal "; Gesamtbearbeitungszeit :[ format "%.2f" $mom_machine_time] min"
if {[isset mom_tool_count] == "n"} {return}
MOM_output_literal "; "
MOM_output_literal "; "
MOM_output_literal "; Werkzeugliste mit Bearbeitungszeit"
MOM_output_literal "; ********************************************"
# MOM_output_literal "tool count $mom_tool_count"
if {[hiset mom_tool_count]} {
for { set nn 0 } { $nn < $tool_nr_limit } {incr nn 1} {
if {[info exists mom_tool_use($nn,0)] && [info exists mom_tool_use($nn,1)] && [info exists fr_tool_names($nn)]} {
set a [scan $mom_tool_use($nn,0) %d tn]
set output [format "%-20s %-3s %-5.2f" $fr_tool_names($nn) $tn $mom_tool_use($nn,1)]
MOM_output_literal $output
}
}
}
#set arraySchluesselNamen [array names mom_tool_use]
#set anzahlSchluesselnamen [array size mom_tool_use]
#MOM_output_literal "**********!!! Array !!!! $arraySchluesselNamen $anzahlSchluesselnamen"
MOM_output_literal "; ********************************************"
# ---------------------------------------------
# schliessen der .doc datei oeffnen der NC-datei
MOM_close_output_file $pfad_doc
MOM_open_output_file $ptp_file_name
# ---------------------------------------------
MOM_set_seq_on
# ---------------------------------------------
giebt es eine Möglichkeit die Daten die im mom_tool_use noch nicht eingetragen wurden abzufragen oder das Eintragen zu erzwingen sodass die Daten dann verfügbar sind ?