| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
| |
 | BOM Assistant für Stücklistenerstellung , eine App
|
Autor
|
Thema: Automatische Oberflächenberechnung (2317 mal gelesen)
|
dominikzschocke Mitglied

 Beiträge: 17 Registriert: 29.10.2007 Win XP SP2 oder Win 2000 SP 5 je nachdem, an welchen Rechner ich mich setze ProE 2001
|
erstellt am: 02. Jun. 2008 13:15 <-- editieren / zitieren --> Unities abgeben:         
Hallo, für eine Berechnung brauche ich die Oberfläche eines Teils in Abhängigkeit eines Winkels des Teils. Je mehr Winkelwerte ich verwende, desto genauer wird die Berechnung. Ich verwende dafür ProE, da ich hoffte und hoffe, dass es schneller geht, als die Flächenberechnung in irgendeiner Programmiersprache (bei mir LabView) zu programmieren. Nun habe ich keine Lust in ProE hunderte Male Teil->Ändern->Winkelwert + x->Regenerieren->Oberfläche messen->Oberfläche ancklicken -> Wert rauskopieren zu machen. Endziel ist eine .txt Datei mit zeilenweise Winkel und zugehörigem Flächenwerten. Nun ist meine Frage: Wieviel davon lässt sich in ProE 2001 automatisieren? (Ganz wäre perfekt  Ich habe jetzt erstmal mit Mapkeys rumprobiert, stoße aber da schon an meine Grenzen (da ich keine ordentliche Mapkey-Referenz finden kann, gibts die irgendwo?). Bis jetzt habe ich dieses Mapkey: mapkey b @MAPKEY_LABELOberfläche messen; @PAUSE_FOR_SCREEN_PICK;\ mapkey(continued) ~ Activate `rmb_popup` `Modify`; @PAUSE_FOR_SCREEN_PICK;d28+1;Nein;%g;\ mapkey(continued) ~ Activate `main_dlg_cur` `ProCmdDToolsMeasure.info`;@PAUSE_FOR_SCREEN_PICK; Da klicke ich das zu ändernde Teil an, drücke dann b, danach muss ich den zu ändernden Winkel noch anklicken (kann ich das auch fest im Mapkey hinterlegen?) und dann am Ende noch die Fläche für die Flächenberechnung anklicken. Ist auch noch ganz schön viel, ganz zu schweigen vom berechneten Oberflächenwert, den ich dann noch anklicken und in die .txt kopieren muss. Kann ich also im Mapkey auch direkt ein Teil aus dem Baum markieren und wie? Kann ich dann bei Aufruf von rmb_popup -> Modify auch noch aufrufen welcher Bemassungswert (bei mir d28) geändert werden soll? Kann ich eventuell noch das Rauskopieren des berechneten Oberflächenwertes im Mapkey machen? Und zu guter Letzt: Gibts irgendwo eine gute Referenz für all die Mapkey Befehle, die ja prinzipiell die Menübefehle darstellen, aber beim deutschen ProE und englischen Befehlen ist das immer Mist, auch in der Hilfe? Selbst wenn ich mal PAUSE_FOR_SCREEN_PICK (der ja prinzipiell selbsterklärend ist) in der ProE-Hilfe eingebe kommt halt kein Eintrag... Vielleicht geht das ganze ja auch ganz anders und nicht über Mapkeys, die ja eigentlich nur für die Befehlsautomatisierung gemacht sind? Bin für jeden Tip dankbar!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied | |
dominikzschocke Mitglied

 Beiträge: 17 Registriert: 29.10.2007 Win XP SP2 oder Win 2000 SP 5 je nachdem, an welchen Rechner ich mich setze ProE 2001
|
erstellt am: 02. Jun. 2008 14:01 <-- editieren / zitieren --> Unities abgeben:         
Leider haben wir BMX nicht installiert, ProE verweigert mir die Erstellung eines Analyse KEs. Momentan arbeite ich mit obigem Mapkey, in dem ich vor der Flächenberechnung noch die Regenerierung eingefügt habe. Ist ganz schön mühsam, ich habe noch nichtmal die Hälfte und nun mit der Recherche über Mapkeys und so schon einen halben Tag verbraucht. Aber nützt ja nix, ich mach erstmal so weiter, sicher gibts noch elegantere Lösungen. Vielen Dank für den Tip! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ReinhardN Mitglied Dipl.Ing.
   
 Beiträge: 1288 Registriert: 03.05.2005 XP Prof SP3 FX 1500 WF4 M100
|
erstellt am: 02. Jun. 2008 14:23 <-- editieren / zitieren --> Unities abgeben:          Nur für dominikzschocke
Schreib dir eine Beziehung wie winkel=winkel + inkrement. if winkel > maxwinkel winkel = minwinkel endif Bein Regenerieren wird dann der Winkel erhöht. Wenn du dann Regenrieren und Abfragen der Analyse in einen Mapkey pressen kannst, hast du gewonnen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
autronic Mitglied
 
 Beiträge: 222 Registriert: 08.06.2004
|
erstellt am: 02. Jun. 2008 14:32 <-- editieren / zitieren --> Unities abgeben:          Nur für dominikzschocke
Hallo, Auswertungs-KE kann man auch ohne BMX erzeugen. Wenn man das Ergebnis des Auswertungs-KE in einer Beziehung an einen Parameter übergibt, kann man diesen Parameterwert in einer Notiz anzeigen lassen. Gruß Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dominikzschocke Mitglied

 Beiträge: 17 Registriert: 29.10.2007 Win XP SP2 oder Win 2000 SP 5 je nachdem, an welchen Rechner ich mich setze ProE 2001
|
erstellt am: 02. Jun. 2008 15:22 <-- editieren / zitieren --> Unities abgeben:         
@ReinhardN Das mit den Beziehungen ist gut, dass man die Beziehungen so nutzen kann war mir gar nicht klar. Großes Danke! Regenerieren in ein Mapkey pressen ist auch kein Problem, das habe ich ja jetzt schon. Wie geht die Abfrage der Analyse OHNE anklicken der zu berechnenden Fläche? Das würde dann noch einen Klick sparen, ich habe aber keine Ahnung, wie ich im Mapkey darauf zugreifen kann. @autronic Wenn ich mit Bezug->Analyse ein Analyse KE erstellen will sagt mein ProE: Nicht möglich, Behavioral-Modeler wurde nicht erworben. Gibts noch andere Möglichkeiten ein Analyse KE zu erstellen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ReinhardN Mitglied Dipl.Ing.
   
 Beiträge: 1288 Registriert: 03.05.2005 XP Prof SP3 FX 1500 WF4 M100
|
erstellt am: 02. Jun. 2008 16:13 <-- editieren / zitieren --> Unities abgeben:          Nur für dominikzschocke
allow_anatomic_features yes muss in der config.pro gesetzt sein. #Einfügen #Bezug #Berechnen Namen eingeben # Erzeugen Messungsnamen eingeben # Bereich # Flache (oder Sammelfläche) Fläche auswählen OK Dann Zuweisen der Messung an einen Parameter parameter=messungsname:fid_Berechnungs-KE [Diese Nachricht wurde von ReinhardN am 02. Jun. 2008 editiert.] Anzeigen in einer 3D-Notiz Winkel= &winkel Fläche= ¶meter [Diese Nachricht wurde von ReinhardN am 02. Jun. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dominikzschocke Mitglied

 Beiträge: 17 Registriert: 29.10.2007 Win XP SP2 oder Win 2000 SP 5 je nachdem, an welchen Rechner ich mich setze ProE 2001
|
erstellt am: 03. Jun. 2008 14:24 <-- editieren / zitieren --> Unities abgeben:         
Vielen Dank Reinhard, nun bin ich schon ein ganzes Stück weiter. Das mit dem Parameter und der Notiz klappt. Nun habe ich noch folgendes gemacht: Ich füge in den Beziehungen an den Parameter nicht nur die berechnete Oberfläche, sondern auch den Parameter selbst an: OBERFL = OBERFL + itos(Oberflächenmessung:fid_AKE_Oberflächenmessung) Das ganze dann mit &OBERFL in die Notiz eingefügt und schon habe ich beim Durchlaufen der Berechnung (wiederholtes Regenerieren, liegt bei mir schön auf F9) eine Notiz als Liste der Oberflächenwerte. Die Funktion ITOS macht aus der reelen Zahl einen String als aufgerundeten Integer-Wert. Schön wäre ein sauberes Runden, aber da habe ich in der Hilfe nichts gefunden, ProE scheint da eher mager ausgestattet. Die kann ich ja dann als Textdatei abspeichern. Was mir noch fehlt ist ein Trennzeichen in der Liste: OBERFL = OBERFL + Trennzeichen + itos(Oberflächenmessung:fid_AKE_Oberflächenmessung) Gern hätte ich einen Zeilenumbruch. Wenn ich in der Hilfe nach Sonderzeichen suche sagt er mir die Sonderzeichen sind im Handbuch Installation ProE... Ist das Handbuch standardmässig digital (pdf oder so) in der Installation zu finden? Wenn ja wo? Ich habe es bei mir hier auf dem Rechner nicht gefunden... Ich habe einen Threat mit dem gleichen Problem gefunden, aber keine Lösung (http://ww3.cad.de/foren/ubb/Forum12/HTML/002081.shtml). Mit #Enter mäkelt er schon in den Beziehungen und bei '#Enter' zeigt er mir das genau so auch in der Notiz an. OBERFL = OBERFL + '#Enter' + itos(Oberflächenmessung:fid_AKE_Oberflächenmessung) ergibt in der Notiz (&OBERFL): 238746#Enter2394978#Enter... Ich werde wohl voerst ein beliebiges Trennzeichen nehmen und dann die Textdatei verändern. Da kenn ich mich zumindest gut aus  Aber falls noch jemand einen Tip hat bin ich natürlich immer interessiert. So und nun vielen Dank an alle die mir geholfen haben!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ReinhardN Mitglied Dipl.Ing.
   
 Beiträge: 1288 Registriert: 03.05.2005 XP Prof SP3 FX 1500 WF4 M100
|
erstellt am: 03. Jun. 2008 16:15 <-- editieren / zitieren --> Unities abgeben:          Nur für dominikzschocke
hier steht ein Strickmuster: http://ww3.cad.de/foren/ubb/Forum12/HTML/011441.shtml#000013 müsste aber floor(...) sein. Trennzeichen: ein Leerzeichen eingeschlossen in Anführungszeichen, also ...+" "+... [Diese Nachricht wurde von ReinhardN am 03. Jun. 2008 editiert.] ah so. ...und dann den Rattenschwanz auslesen und auftrennen. Dann kannst du natürlich ein beliebiges Zeichen nehmen, es muss nur in Anführungsstrichen stehen. Viel Spass dabei [Diese Nachricht wurde von ReinhardN am 03. Jun. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dominikzschocke Mitglied

 Beiträge: 17 Registriert: 29.10.2007 Win XP SP2 oder Win 2000 SP 5 je nachdem, an welchen Rechner ich mich setze ProE 2001
|
erstellt am: 04. Jun. 2008 13:17 <-- editieren / zitieren --> Unities abgeben:         
Vorher zurechtrunden ist natürlich vernünftig, ich bin halt von Programmiersprachen mit umfangreichen Bibliotheken verwöhnt, in denen es für Runden + Stringumwandlung gleich einen fertigen Befehl gibt  Da komme ich gleich auf einen neue Idee, kann man selbst Funktionen schreiben und (wo?) speichern, auf die man dann in den Beziehungen zugreifen kann? Insgesamt funktioniert meine obige Idee übrigens nicht, da leider die Zeichenanzahl eines Parameters begrenzt ist  Bei der Notiz ist das glaube ich nicht so (zumindest ist die Grenze nicht so niedrig), aber kann ich aus Beziehungen direkt was an eine Notiz anfügen (Ist kein Wunder, wenn das nicht funktioniert, ist ja auch irgendwie eine Vergewaltigung von ProE, dafür sind ja Beziehungen nicht gedacht). Oder kann ich doch wieder über eine Mapkey-Funktion auf die Notiz zugreifen und sie um den jeweiligen Wert erweitern? Ansonsten muss ich wohl jedes Winkel und Oberflächenmass einzeln in die Notiz speichern (Wie Anfangs von ReinhardN vorgeschlagen) dann abspeichern (unter verschiedenen Dateinamen) und am Ende per beliebigem Script oder Programmiersprache die Dateien zusammenfügen. Was besseres fällt mir in meiner Unkenntnis über die Fähigkeiten von ProE nicht ein... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ReinhardN Mitglied Dipl.Ing.
   
 Beiträge: 1288 Registriert: 03.05.2005 XP Prof SP3 FX 1500 WF4 M100
|
erstellt am: 04. Jun. 2008 14:40 <-- editieren / zitieren --> Unities abgeben:          Nur für dominikzschocke
selbst Funktionen schreiben und in Beziehungen benutzen? Da bin ich skeptisch und glaube, dass das nicht geht. Es widerspricht der Forderung, dass ProE Daten in jeder Umgebung lauffähig sein müssen. ProE ist über Pro/Toolkit (nicht billig) und über WebLink (Java) zugänglich. Da muss ich allerdings passen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ReinhardN Mitglied Dipl.Ing.
   
 Beiträge: 1288 Registriert: 03.05.2005 XP Prof SP3 FX 1500 WF4 M100
|
erstellt am: 05. Jun. 2008 08:52 <-- editieren / zitieren --> Unities abgeben:          Nur für dominikzschocke
|
dominikzschocke Mitglied

 Beiträge: 17 Registriert: 29.10.2007 Win XP SP2 oder Win 2000 SP 5 je nachdem, an welchen Rechner ich mich setze ProE 2001
|
erstellt am: 05. Jun. 2008 18:43 <-- editieren / zitieren --> Unities abgeben:         
Hallo Reinhard, ich musste jetzt mit der Berechnung fertig werden und habe darum nur mit eingeschränkter Genauigkeit gearbeitet. Ich habe meine Variante verwendet, bis die Zeichen des Parameters aufgebraucht waren und dann die Notiz als .txt gespeichert. Danach habe ich den Startwert für den Winkel hochgesetzt, den Parameter geleert und weitergemacht. Es waren insgesamt 10 .txt-Dateien, die habe ich dann in LabView weiterverarbeitet. Zwischendurch habe ich mich noch damit beschäftigt meine Ziele über die Einbindung eines C-Programms (Beziehungen->Programm) zu erreichen, da ich aber noch keinen C-Compiler installiert habe und da nicht unbedingt fit bin und man scheinbar in dem C-Programm nur einmal die Daten an ProE zurückgeben kann und danach das Teil regenerieren muss habe ich es dann nicht weiter verfolgt. Wenn man für jeden Punkt eine .txt schreibt ist das externe zusammenfügen der Dateien kein problem, ich habe ja LabView hier. Allerdings war mir da nicht ganz klar, wie ich das mit den Notizen in .txt schreiben automatisiere. Denn wenn ich dann ein Mapkey mit Regenerieren (Beziehungen ausführen/messen/Wert an Parameter und damit Notiz übergeben/Variable erhöhen) mache und dann noch die Befehlsfolge für Notiz in .txt muss ich ja doch irgendwann mal auf die Notiz klicken (oder kann ich auch per Mapkey direkt auf die Notiz zugreifen, nur wie?) und wahrscheinlich noch jedes mal einen neuen Dateinamen angeben (denn den kann ich wahrscheinlich auch nicht automatisch übers mapkey vorgeben). Das scheint mir alles noch ganz schön kompliziert. Allerdings brauche ich da doch irgendwann mal eine Lösung, da ich für Berechnungen immer mal Geometriedaten aus ProE brauche (z.B. Flächenträgheitsmomente für externe FEM). Vielleicht löse ich das Problem ja doch irgendwann... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |