| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. |
| |
 | erp4cad: Das ERP für komplexe CAD-Projekte!, eine Pressemitteilung
|
Autor
|
Thema: Formel für Parameter (11606 mal gelesen)
|
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 29. Okt. 2008 16:06 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, ich möchte einem Parameter eine Formel zuweisen: A >= B wobei A mein Parameter wäre. Die Grundrechenarten funktionieren im Formeleditor, aber Irgendwie klappt es speziell mit <=, >=, == nicht. Catia Version R16SP5 . Bin für jede Hilfe dankbar. Gruß Harald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mörchen Ehrenmitglied V.I.P. h.c. CAD-Trainerin (CATIA V5)

 Beiträge: 3830 Registriert: 14.03.2007 Release 19 SP2
|
erstellt am: 29. Okt. 2008 16:12 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, was willst du denn für ein Ergebnis haben? Wenn B 1 ist , kann CATIA sich einen Wert von 1,001 bis unendlich aussuchen? So geht es nicht, du musst Deine Formel überdenken. Gruß Mörchen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 29. Okt. 2008 16:29 <-- editieren / zitieren --> Unities abgeben:         
Hallo Mörchen, Du hast vollkommen Recht, also ich stell mir das so vor: A ist das Erbebnis einer Berechnung und soll z.B. einen bestimmten Wert nicht unterschreiten, um bei dem Beispiel zu bleiben: 1 . A kann wie Du sagst 1.001 bis unendlich sein aber eben nicht 1 oder kleiner. Gruß Harald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Guenter Graff Mitglied
 
 Beiträge: 267 Registriert: 04.03.2001 CATIA V5R19SP3 AutoForm 4.1
|
erstellt am: 29. Okt. 2008 16:37 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
|
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 29. Okt. 2008 16:50 <-- editieren / zitieren --> Unities abgeben:         
|
tberger Mitglied Application Manager CATIA V5 / V6
   
 Beiträge: 1385 Registriert: 13.01.2007
|
erstellt am: 29. Okt. 2008 17:09 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo zusammen, du kannst das auch in einer Reaction erreichen, die auf Änderung des ersten Werts reagiert. In der Reaction wird der 2.Wert aus dem Ersten und der zugehörigen Formel berechnet und danach geprüft, ob er kleiner ist als der geforderte Wert. (If then...) Wenn kleiner, dann Wert gleichsetzen mit Mindestwert. Genauso kann man mit den oberen Grenzen verfahren. Dait hast du dann konkrete Wert für Ober und Utergrenzen, die du im Baum halten und einsehen kannst. Du brauchst dann auch nicht die Parametergrenzen über "Add Range" mit Minimal und Maximalwert. Grüße aus dem Rheinland Thomas ------------------ CATIA - eine Laune der Natur ... [Diese Nachricht wurde von tberger am 29. Okt. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 29. Okt. 2008 18:07 <-- editieren / zitieren --> Unities abgeben:         
Hallo Thomas, also Regel krieg ich noch hin, denke ich, aber wie geht das mit der Reaction? Der Vorgang ist klar - aber Reaction - ist das eine Funktion? Vielleicht ist die Frage böld, aber ich hab keine Ahnung im Zusammenhang mit Catia. Gruß Harald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tberger Mitglied Application Manager CATIA V5 / V6
   
 Beiträge: 1385 Registriert: 13.01.2007
|
erstellt am: 29. Okt. 2008 19:00 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, eine Reaction ist ein Feature aus der Workbench "Knowledge Advisor". Reactions werden aktiv, wenn sich ein bestimmter Parameter ändert. Dieser wird vom Ersteller der Reaction bestimmt. In den Reactions ist dann ein Script, welches einige Vergleiche, Gleichsetzungen etc. erzwingt. Ein Script könnte ungefähr so aussehen: Das Script soll auf Änderungen von X starten, Y soll nicht kleiner als 0 und nicht größer als 100 sein (Bsp.) Y = X*2 - 3 If Y < 0 Then Y = 0 If Y > 100 Then Y = 100 So könnte vermieden werden, dass Y < 0 oder größer 100 wird.
Anstelle von Reactions könnten Rules (auch im KWA) verwendet werden, die immer aktiv sind. Allerdings hat man auch gewisse Einschränkungen, wie z.B. dass der Abfragewert danach keinen anderen Wert annehmen kann.
Ich habe gerade kein CATIA zur Hand, sonst könnte ich dir eine Beispieldatei schicken. Vielleicht morgen, wenn dich das iteressiert.
Grüße aus dem Rheinland Thomas ------------------ CATIA - eine Laune der Natur ... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied

|
erstellt am: 29. Okt. 2008 19:58 <-- editieren / zitieren -->
|
Mörchen Ehrenmitglied V.I.P. h.c. CAD-Trainerin (CATIA V5)

 Beiträge: 3830 Registriert: 14.03.2007 Release 19 SP2
|
erstellt am: 29. Okt. 2008 22:35 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, hatte Freizeitstress und konnte das Thema nicht gleich mitverfolgen: es geht auch einfacher mit einer Maximum-Formel. Die funktioniert sinngemäß so: A=max(B,Argument1, Argument2,...) Als Argumente können dann Werte eingesetzt werden oder Beziehungen zu anderen Parametern. Es wird aus allen Argumenten der höchste Wert ausgesucht und A zugewiesen. Daraus folgt, A kann nicht kleiner als B werden. Ich hoffe, das war einigemaßen verständlich. Gute Nacht Gruß Mörchen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 31. Okt. 2008 09:24 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, nochmal vielen Dank für die Antworten. Für das, was mir vorschwebt ist die Regel(Thomas), glaube ich am besten geeignet. In diesem Zusammenhang würde ich gern auf das Angebot zurückkommen(Beispiel), danke im voraus. @Mörchen: Maximum-Formel kannte ich noch nicht, gute Idee - so etwas ähnliches habe ich mal mit Hilfe einer Tabelle(Design Table) gemacht. @Gerog: Das mit dem aktivieren/deaktivieren von Features habe ich schon gemacht, mir geht es eher um eine Kontrolle, d. h. wenn die Bedingung nicht erfüllt ist soll es zu einer Fehlermeldung kommen. Schöne Grüße an allle aus dem Ländle Harald
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tberger Mitglied Application Manager CATIA V5 / V6
   
 Beiträge: 1385 Registriert: 13.01.2007
|
erstellt am: 31. Okt. 2008 11:39 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, ein Beispiel im Anhang. Ich habe es mit einer Reaction aufgebaut, ist nicht so Performance-lastig wie eine Regel und erfuellt auch den Zweck. Du kannst die Ober- und Untergrenze eingeben (im Parameterbaum), ebenso den gewuenschten User-Wert. Der gesetzte Wert ergibt sich aus der Reaction "PRUEFUNG". Gruesse aus dem Rheinland
Thomas ------------------ CATIA - eine Laune der Natur ... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 31. Okt. 2008 11:51 <-- editieren / zitieren --> Unities abgeben:         
Hallo Thomas, ich weis jetzt wie eine Reaction funktioniert, ist nicht ganz dass was ich mir vorgestellt habe, wenn der "Userwert" ausserhalb der "Unter-/Obergrenze" liegt passiert eigentlich garnix. Liegt er dazwischen reagiert die "gesetzte Länge" entsprechend.... Ich wollte eingentlich das es knallt, d. h. überschreitet der "Userwert" die gesetzte Grenze geht nix mehr - eben als Kontrolle sozusagen. Gruß Harald [Diese Nachricht wurde von harald.s am 31. Okt. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
logan Mitglied MSc Distributed Computing Systems Engineering Dipl.-Ing. (FH) Softwaretechnik
 
 Beiträge: 111 Registriert: 07.02.2005
|
erstellt am: 31. Okt. 2008 17:11 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo harald.s, was soll denn knallen oder nicht mehr gehen? - Willst Du ein Meldung-Fenster anzeigen? - Willst Du Funktionen deaktivieren? - Willst Du den Parameter, in welchen der Wert eingegeben wird selbst auf Ober- oder Untergrenze setzen (je nachdem ob über- oder unterschritten wird)? In diesem Fall ist nahezu alles möglich. tberger hat ja schon was umgesetzt. Vielleicht versuchst Du mal im Kontextmenü Deines Parameters die Funktion "Add Range...". Da kannst Du ein Minimum und ein Maximum angeben. Wird über- oder unterschritten, dann könnte man das als "knallen" bezeichnen (d.h. eine doofe Knowledgeware Meldung wird angezeigt). Wird der Parameter jedoch per Formel gesteuert, so springt der Wert auf den jeweiligen Range Wert. Inf. Range und Sup. Range aktiviert bedeuted z.B. <=0mm statt <0mm. Mit Rules oder Reactions kannst Du jedoch gezielter Einfluss nehmen. Eine Reaction ist etwas einfacher anzuwenden. Eine Rule kann jedoch genau das selbe (inkl. Änderung des Steuerparameters!). Viele Grüße, Logan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tberger Mitglied Application Manager CATIA V5 / V6
   
 Beiträge: 1385 Registriert: 13.01.2007 WIN 7 64bit V5R21SP3HF49 3DX/V6 R2016x
|
erstellt am: 31. Okt. 2008 23:07 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
@ Harald, du musst dir die Reaction genauer ansehen (und ein bisschen tüfteln darf ja jeder Thread-Steller auch noch): ich habe den Userwert bewusst nicht ändern lassen, damit man sieht, was passiert: der gesetzte Wert kann nur noch in den Grenzen liegen, die ihm die Reaction vorgibt. Wenn du den Userwert einfach gleich umschreiben willst, so dass er in den Grenzen liegt, musst du doch nur in der Reaction Userwert = Minimalwert usw. setzen, falls eine Grenze überschritten wird. @logan: das Thema Add Range hatten wir schon durch und es sollte laut Harald eben nicht so aufgesetzt werden.
Grüße aus dem Rheinland
Thomas
------------------ CATIA - eine Laune der Natur ... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 02. Nov. 2008 11:15 <-- editieren / zitieren --> Unities abgeben:         
Hallo Logan und Thomas, @Logan: ganz ausgetüftelt ist die Sache noch nicht, sagen wir mal so: es gibt ein Skelett(in einem Produkt) imt mehreren geometrischen Sets, in dem findet die Berechnung statt, wenn es zu einem Ergebnis kommt, dass die Aktualisierung der 3D-Geometrie verhindert, soll das Update im Skelett abgebrochen werden. Ich hoffe man kann damit etwas anfangen, die ganze Geschichte würde Seiten füllen. @Thomas: ich befürchte, ich habe nicht die Lizenz für die Reaction(KWA?). Ich will nur, dass eine Fehlermeldung kommt, wenn ein Wert <= bzw. >= eines anderen Wertes ist und das ganze sollte im Rahmen der Möglichkeiten einer MD2/HD2 - Lizenz erfolgen. Schönen Start in die neue Woche wünscht Harald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
       
 Beiträge: 12054 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 02. Nov. 2008 12:25 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Servus Wenn es nur um eine Fehlermeldung geht (leider nur allgemein) geht das über: Hilfszahl = 1 /(floor (Zahl1 / Zahl2) )Dabei wird der Quotient der zu prüfenden Zahlen gebildet. Wenn Zahl2 größer Zahl1 ist, wird der Wert zu Null abgerundet -> Division druch Null -> Fehlermeldung. Gruß Bernd
------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 03. Nov. 2008 07:25 <-- editieren / zitieren --> Unities abgeben:         
Guten Morgen Bernd, die Fehlermeldung kommt von allein, ich versuch es noch einmal zu kongretisieren: ich kann durch die Eingabe eines falschen Wertes(ist Bestandteil der Formel zur Errechnung von A) den Zustand erreichen, dass das Skelett fehlerfrei upgedatet wird, aber die vom Skelett gesteuerte 3D-Geometrie nicht. Mein Ansatz geht dahin, beim Update des Skeletts eine Fehlermeldung zu erzeugen(bei Eingabe des falschen Wertes) - und das hätte ich gern erreicht indem ein Wert, der über eine Formel berechnet wird(A) mit einem Wert(B) verglichen wird. Wenn A kleiner oder gleich B ist sollte es zur Fehlermeldung kommen. Gruß Harald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
logan Mitglied MSc Distributed Computing Systems Engineering Dipl.-Ing. (FH) Softwaretechnik
 
 Beiträge: 111 Registriert: 07.02.2005
|
erstellt am: 03. Nov. 2008 09:01 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, anbei ein Beispiel mit einer Rule. Das Beispiel verhält sich wie folgt: A: ist der bei Dir über eine Formel berechnete Wert B: ist der Vergleichswert NOK_wenn_kleiner_gleich_B: ist der Wert in den nur das korrekte A geschrieben werden darf. Entspricht der vom Skelett gesteuerten 3D-Geometrie. Szenario "A ist kleiner gleich B": Der fehlerhafte Wert wird nicht in die 3D-Geometrie übernommen. Szenario "A ist größer B": Der Wert von A wird in die 3D-Geometrie übernommen. Ich denke, das funktioniert auch mit Deiner Lizenz. Viele Grüße, Logan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 14. Nov. 2008 08:01 <-- editieren / zitieren --> Unities abgeben:         
Hallo Logan, sorry, dass ich so lange nicht reagiert habe, aber ich musste erst mal an eine Catiamaschine mit entsprechenden Lizenzen kommen. Knowledge Advisor ist nicht Bestandteil der MD2/HD2. Für das Projekt hat sich die Sache damit leider erledigt(wobei die Lösung dem entspricht was ich will, Reaction auch), weil die entsprechende Lizenz nicht zur Verfügung steht. Neue Frage für mich: in welcher Lizenz ist der Knowledge Advisor drin? Und was kostet so etwas? Gruß Harald Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
denyo_1 Ehrenmitglied V.I.P. h.c. Manager
     
 Beiträge: 2506 Registriert: 10.08.2005 HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3
|
erstellt am: 14. Nov. 2008 09:26 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, zu den Kosten kann ich dir leider nicht sagen aber da wird dir wohl dein systemhaus weiterhelfen können. Aber ich denke es gibt kein Bundle in dem die Lizeenz drinnen ist. Das ist eine einzelne Lizenz die KWA heißt. ------------------ MFG Daniel Die KATJA ist halt doch nur ne zickige Französin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 14. Nov. 2008 09:42 <-- editieren / zitieren --> Unities abgeben:         
|
Guenter Graff Mitglied
 
 Beiträge: 267 Registriert: 04.03.2001 CATIA V5R19SP3 AutoForm 4.1
|
erstellt am: 16. Nov. 2008 12:42 <-- editieren / zitieren --> Unities abgeben:          Nur für harald.s
Hallo Harald, ich könnte mir vorstellen, dass Du die KWA nur zum erstellen und ändern der Rules/Reaction brauchst, aber zum Ausführen nur eine KT1 haben musst. Das würde heißen, Du brauchst Jemanden, der eine KWA besitzt und dir die Rules/Reaction erzeugt und dann kannst Du mit der KT1 die Rules/Reactions ausführen. Wenn Du es unbedingt selbst probieren willst, frag in deinem Systemhaus nach einer Testlizenz. ------------------ Gruß Günter
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
harald.s Mitglied Freier Konstrukteur

 Beiträge: 85 Registriert: 31.07.2008 HP DualCore 3GHz 4GB RAM CATIA V5 R16/R17/R18
|
erstellt am: 17. Nov. 2008 07:32 <-- editieren / zitieren --> Unities abgeben:         
Hallo Günter, das mit den Testlizenzen ist ein guter Tipp, da kann mam selbst probieren was geht. Ich erinnere mich noch mit Schrecken daran, als es beim Umstieg von V4 nach V5 unter anderen darum ging welche Funktionen im Flächenbereich in der GSD-Lizenz enthalten sind. bzw. ob es einen Unterschied zwischen MD2 + GSD und HD2 gibt.(Zur Erklärung: die V4 hatte ich in meiner letzten Festanstellung mit SUD,ASU und FRF, mit der V5 habe ich mich selbstständig gemacht - war also kein Umstieg von V4 auf V5 lizenztechnisch). Die Beratung war also nicht der Renner. Guten Start in die neue Woche wünscht Harald
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |