Massenwerte bei Geometrieänderungen aktualisieren / Pro ENGINEER
By Bianca 25. April 2002, 08:51

Hallo Leute,

wie kann ich ein Modell (PART und/oder ASM) dazu zwingen, eine neue Massenberechnung durchzuführen, wenn die Geometrie verändert wurde?

Folgendes habe ich in der "Hilfe" gefunden, jedoch funktioniert es nicht!! Und zwar habe ich die "Anweisung" als Beziehung hinzugefügt.


      Massenwerte bei Geometrieänderungen aktualisieren

Verwenden Sie die Anweisung MASSPROP zur Aktualisierung der Massenwerte, wenn sich die Geometrie geändert hat. Nachdem Sie Bauteile oder Baugruppen angegeben haben, für die Massenwerte aktualisiert werden sollen, können Sie den aktuellen Wert eines gewünschten Parameters über Beziehungen abfragen.

Verwenden Sie zum Aktualisieren von Massenwerten das folgende Format:

MASSPROP
PART NAME
ASSEMBLY NAME
END MASSPROP

Hinweis: Geben Sie bei der Angabe des Modells, für das Massenwerte berechnet werden sollen, den Modellnamen ohne Erweiterung ein.

Die MASSPROP-Anweisung kann IF... ELSE-Bedingungen enthalten. Wenn Sie der MASSPROP-Anweisung eine Bedingung hinzufügen, werden die Massenwerte eines Objekts nur dann berechnet, wenn diese Bedingung erfüllt ist.

Beispiel:

MASSPROP
IF THICKNESS > 1
PART PLATE
ELSE
ASSEMBLY BLOCK
ENDIF
END MASSPROP

Wenn im obigen Beispiel der Parameter THICKNESS größer als 1 ist, werden die Massenwerte für das Bauteil PLATE neu berechnet. Andernfalls werden die Massenwerte für die Baugruppe BLOCK berechnet.

Hinweis: Wenn Sie Objekte über Operationen im Menü DATEI (FILE) umbenennen, müssen Sie diese im MASSPROP-Listing manuell umbenennen.

Gruß Bianca

By ehlers 25. April 2002, 09:37

Automatisch geht das nicht!
Vielleicht geht aber das Analysefeature. Man müßte es in der Baugruppe hinzufügen und immer darauf achten das es am Ende steht.

By Armin 25. April 2002, 11:16

Eine Massenwertberechnung nach jeder Regenerierung ist nur bei einfacheren Bauteilen sinnvoll, ansonsten wird doch zuviel Rechnerzeit (und Regenerierungszeit) verschwendet.

Besser wäre es doch, das Teil würde bei jedem Abspeichern neu berechnet - da kann man die Wartezeit eher verkraften.

Das bekommt man ganz gut mit einem Mapkey hin. Ich würde dann das Mapkey oben in der Icon-Leiste platzieren und ihm das Aussehen des Speicherbuttons verpassen. Den "echten" Speicherbutton würde ich dann halt rausschmeißen.


By Armin 25. April 2002, 11:36

Ach so, was ich noch vergessen habe:

Es geht übrigens doch automatisch!

Oberstes Menü im Teilemodus - Punkt "Programm"
dort "Programm editieren" wählen.

Ein Editorfenster geht auf, das Programm des Teiles erscheint. Dort steht irgendwo am Ende:

MASSPROP
END MASSPROP

Dazwischen mußt Du (wenn Dein Teil z.B. Zipfel-1 heisst) eine Zeile einfügen:

MASSPROP
PART Zipfel-1
END MASSPROP

Dann wird automatisch eine Massenwertberechnung durchgeführt.

Problematisch beim Teile umbenennen.

Und wenn Du mit dieser Massewertberechnung etwas anfangen willst, solltest Du sie dann über Beziehungen einem Parameter (z.B. "MAS")zuweisen.

Mas=1000*MP_MASS("")

etwas kryptisch, ich gebs ja zu, aber so is Pro/E halt.

Der Faktor 1000 kommt von der Einheiten-Problematik, wegen Mechanica haben ja alle inzwischen das Einheitensystem Nmms, oder?

Da ist ja die Masse in Tonnen angegeben, also die Dichte von Wasser wäre 1e-9.

Will man den Parameter MAS in Kilo, muß man mit 1000 malnehmen.

Den Parameter MAS kann man auch prima im Zeichnungskopf angeben, mit &MAS, dann steht dort immer das aktuelle Gewicht in Kilo.

Problem: Bis der Parameter merkt, daß man was verändert hat, muß man 2x Regenerieren.

Hab ich jetzt alle Rechtschreibfhler gefunden?

[Diese Nachricht wurde von Armin am 25. April 2002 editiert.]

By Bianca 25. April 2002, 11:45

Hallo Armin,

das ist genau die Antwort die ich wollt. Jetzt weiß ich endlich "wo" ich die Anweisung rein schreiben soll.
Auch die Verwendung hast Du gut erkannt, denn exact für die Zeichnung brauche ich das ganze PiPaPo.
Inzwische habe ich mir auch überlegt, die automatische Zuweisung nicht in das Modell zu integrieren. Ist zwar auf das Einzelteil (bei kleinen!) ne tolle Sache. Aber wir haben ja auch noch ein "paar" BG´s, die auch immer wieder regeneriert sein wollen.
In diesem Sinne,
--> Aufgabe gelöst.

P.S. Konnte allerdings noch kein Test durchführen. Im Falle melde ich mich wieder.

Tschüß und Gruß
Bianca

By anagl 25. April 2002, 17:34

Hallo

Wenn man nur die Beziehung Gewicht=Mp_mass("") einfügt wird die Neuberechnung bei der Regenerierung angemahnt
Bei Familen - Bauteilen sind die Ausführungen in
   http://www.ptc.com/cs/tpi/106589.htm  und http://www.ptc.com/cs/tpi/111502.htm  hilfreich

Wen man das Gewicht eines Teils kennt kann man mit der Beziehung
mp_density=Gewicht/mp_volume("") die Dichte  ermitteln lassen.; Somit stimmt das Baugruppengewicht.

Servus
Alois

[Diese Nachricht wurde von anagl am 25. April 2002 editiert.]

By sadolf 25. April 2002, 20:17

@Armin
funktioniert denn jetzt endlich die Durchgängigkeit im Einheitensystem zwische ProE und Mechanica?

By Armin 26. April 2002, 08:33

Ja, endlich!

wenn die Materialien ordnungsgemäß in Pro/E definiert sind, werden sie in Mechanica ohne Murren übernommen. Ich hatte aber totzdem schon Pro/bleme, als das gleiche Teil mehrfach in einer Baugruppe verbaut war. Da hatte Mechanica nur für das erste der Teile die Materialeigenschaft übernommen, für die Restlichen mußte ich das von Hand zuweisen. Seint ein kleiner Bug zu sein. Ob ich den mal melden sollte?

(c) 2003 www.CAD.de