| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SolidEdge |
| |
| Teamcenter BASIC | Das neue SST-Standard-Konfigurationspaket für Ihren effizienten Einstieg in Teamcenter PLM, ein Webinar am 02.10.2024
|
Autor
|
Thema: Animation/Dauerschleife (1269 / mal gelesen)
|
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 30. Mai. 2018 18:47 <-- editieren / zitieren --> Unities abgeben:
Hallo! Ich bin nach wie vor an einer Simulation entlang eines Splines beschäftigt. Nun habe ich etwas herum experimentiert und schaffe es, ein Part entlang eines Splines zu bewegung. Der Spline hat dabei einen Anfang und ein Ende, also ist keine geschlossene Kurve. Wie muss ich jetzt die Parameter einstellen, damit ich eine Art Dauerschleife generieren kann und wenn mein Part am Ende angelangt ist, dieser wieder zum Anfang "zurück springt" wieder von vorne beginnt? LG Mike Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 30. Mai. 2018 19:33 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
|
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 30. Mai. 2018 22:53 <-- editieren / zitieren --> Unities abgeben:
Ein geschlossener Spline ist leider nicht möglich, da man dann die Objekte in der Rückbewegung sehen würde. Gibt es nicht eine Möglichkeit, die Positionsvariable auf 0 (=Startposition) zu setzten, nachdem sie das Ende erreicht hat? Ich habe mich hier schon mit der IF-Funktion gespielt, habs aber nicht hin bekommen... [Diese Nachricht wurde von micky240688 am 30. Mai. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 31. Mai. 2018 07:51 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
|
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 31. Mai. 2018 08:08 <-- editieren / zitieren --> Unities abgeben:
Morgen Wolfgang! In dem Fall würde es eher um Arbeits-Minimierung gehen. Es soll, wie in meinem anderen Thread ja schon kurz angemerkt, um eine Animation eines durchströmten Rohres gehen. D.h. ich bewege Zylindersegmente entlang eines Splines. Diese Bewegung dauert ca. 4 Sek. von Anfang bis Ende. In der Zwischenzeit gibt es aber eine Kamerafahrt die ca. 1 min. dauert. Damit ich nun nicht 15 Segmente animiernen muss, bis diese Minute "gefüllt" ist, hätte ich gehofft, dass ich einfach 2-3 Segmente im Kreis laufen lassen kann, da ich so nur 1/5 der Arbeit für die Animation hätte. LG Mike Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 31. Mai. 2018 10:59 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
|
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 31. Mai. 2018 11:48 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
Hallo Mike, also mein voriger Vorschlag funktioniert leider nicht, da der Stellungswert für die Kopie nicht wieder auf 0 zurück gestellt wird. Daher meine Lösung und die klappt (siehe Video): Nutze eine Hilfsvariable (besser 2) W und W1 [*] W ist die Variable, die Du dann mit dem Motor animierst. [*] W1 hat eine Formel hiniterlegt nämlich W1 = W - FIX(W/500)*500 wobei die 500 die SPline/Schlauchlänge darstellen [*] und dieses W1 setzt Du in die Formelspalte für Deine Pfadbeziehung. Achtung: die Formel darf nicht direkt in der Pfadbeziehung selber sein, da hat SE anscheinend eine kleine Macke Und so sieht das dann aus: ------------------ mfg Wolfgang Hackl CAD/CAM - Consult Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 31. Mai. 2018 12:25 <-- editieren / zitieren --> Unities abgeben:
|
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 31. Mai. 2018 12:26 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
Zitat: Original erstellt von micky240688: Mahlzeit!Wo müsste ich was kopieren? Ich hab diesen Balken bereits kopiert. Allerdings hat die Animation nicht wieder von vorne begonnen... LG Mike
Hallo Mike,
bitte meine voriges Posting durchlesen! Da habe ich Dir das bereits geschrieben!
------------------ mfg Wolfgang Hackl CAD/CAM - Consult Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 31. Mai. 2018 15:48 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang! Ups, den zweiten Post mit dem Video habe ich nicht gesehen am Handy. Hm, ich muss gestehen, ich verstehe nicht genau, was du hier genau machst. Darum tu ich mir etwas schwer, deinen Workaround auf meine Zeichnung anzuwenden. Die Schleife wird zwar wiederholt, allerdings läuft der Zylinder bis zum Ende, stoppt dort für ca. 4 Sek. wo nichts passiert und dann springt dieser ca. in die Mitte des Splines, wo es dann wieder zu laufen beginnt. LG Mike [Diese Nachricht wurde von micky240688 am 31. Mai. 2018 editiert.] [Diese Nachricht wurde von micky240688 am 31. Mai. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 31. Mai. 2018 17:02 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
Hallo Mike, Deine Parameter müssen natürlich passen.
Deine Schlauchlänge muss bekannt sein und mit diesem Wert musst Du rechnen. Ich habe meinen Spline (Schlauch) exakt 500mm lang gemacht. Daher dann auch in der Form den Wert 500mm genommen. Du kannst da auch eine Variable einsetzen, wenn Du möchtest. Ich versuche nun nochmals zu erklären, was ich getan habe: [*] Zuerst erzeuge ich mir eine simple Variable, die später mit einem Motor angetrieben werden wird Ich habe hier den Namen W genommen [*] Davon leite ich mir mit der Formel W1 = W - FIX(W/Schlauchlänge)*Schlauchlänge einen "Restwert" ab [*] Beispiel: ist der Schlauch 500mm lang und die Laufvariable wird auf 700mm gesetzt, dann ergibt obige Formel W1 = W - FIX(W/L)*L = 700 - FIX(700/500)*500 = 700 - 1*500 = 200 Daher steht nun Dein Objekt wieder auf 200mm, nämlich 700 -500 ergo 200mm beim 2. Durchlauf [*] Somit hast Du mit dieser Formel immer wieder einen Neustart am Anfang der Kurve [*] Genau das, was Du möchtest WICHTIG: die Werte müssen eben passen, dann bleibt Dir das DIng nicht stehen und fängt irgendwo wieder an. Daher: ermittle Dir, bzw. gib die Schlauchlänge an!
SmartDim auf einen Spline gibt Dir sofort ein Längenmaß!
------------------ mfg Wolfgang Hackl CAD/CAM - Consult Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 01. Jun. 2018 09:29 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang! Ah, jetzt habe ich es verstanden, super. Und ja, jetzt klappt es (teilweise, siehe Post unten), danke! LG Mike [Diese Nachricht wurde von micky240688 am 01. Jun. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 01. Jun. 2018 10:28 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang! So, habe noch ein bisschen herum probiert. Also, wenn ich nur einen Part entlang der Kurve bewege, funktioniert das wunderbar. Wenn ich nun mehrer Part aneinander kette (mein Zylinder besteht aus 5 einzelne Glieder, damit er sich dem Spline anpasst), tritt genau das Problem auf, dass dieser Zylinder bis zum Ende fährt, dort stehen bleibt, für 4 Sek. nichts passiert und irgendwo in die Mitt springt und weiter läuft. Anbei meine Files, die mein Phänomen zeigt. Ist so vermutlich leichter gezeigt. (Ich starte beim Zylinder beim Wert 14, damit sich die Glieder beim Start nicht zusammen schieben. Habe bis jetzt keine andere Möglichkeit gefunden, dies zu realsisieren.) LG Mike [Diese Nachricht wurde von micky240688 am 01. Jun. 2018 editiert.] [Diese Nachricht wurde von micky240688 am 01. Jun. 2018 editiert.] [Diese Nachricht wurde von micky240688 am 01. Jun. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 01. Jun. 2018 13:10 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
Hallo Mike, OK, ich glaube ich weiß wo das Problem liegt.
Du hast hier eine richtige Beziehungskrise verbaut! Teilweise wird die vordere Kugel als Referenz genommen, dann wieder die hintere, das täuscht die Bewegungsstrecke und auch wenn Du die Offsetwerte einfach nur mal händisch änderst tauchen schon Blitze auf und Deine Teile können sich nicht mehr bewegen. Das gilt es zuerst einmal richtig zu stellen. Ich verstehe ehrlich gesagt auch nicht, warum Du da 3 Teile (blaue Teile brauchst). Sollte IMHO mit einem einzigen Part (abgerundeter Zylinder) zum selben Resultat führen und weniger Einbauprobleme verursachen. Die beiden Kugeln sind 4.5mm voneinander entfernt (Zylinderlänge) Die gilt es schon mal in der Bewegungslänge zu berücksichtigen, denn die vordere Kugel kommt schon an das Ende des Splines (Kurve) und muss daher schon wieder zum Anfang zurück. Würde daher alles auf diesen Punkt referenzieren. Außerdem musst Du den Versatz auch schon in Deiner Berechnung berücksichtigen. Du darfst nicht die 651mm Kurvenlänge nehmen sondern eben 651 minus 14 minus 4.5 Wenn Du dies alles berücksichtigst wird die Animation vermutlich sauber laufen. PS.: Zuerst einmal so verbauen, dass Du den Offsetwert manuell ändern kannst und alles sauber und ohne Blitze auf der Kurve platziert wird!
------------------ mfg Wolfgang Hackl CAD/CAM - Consult Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 01. Jun. 2018 14:54 <-- editieren / zitieren --> Unities abgeben:
Hallo! Hm, interessant, dass sich hier die Beziehungen zerschießen... Naja, im Grunde sollte jedes Folge-Element mit dem vorigen über die Definition "verbinden" und mit "Pfad" definiert sein. Einen fixen Wert von 4,5 kann ich ja nicht vergeben, denn sollte die Bahnkurve eine Krümmung haben, ändert sich ja dieser Wert oder? Aber da muss ich mir die Beziehungen nch mal ansehen, warum diese nicht klappen... Naja, im Grunde besteht mein Zylinder zukünftig aus mehrern solcher Abschnitte, damit ich einen langen Zylinder habe, der sich zumindest abschnittsweise meiner Kontur anpasst. LG Mike [Diese Nachricht wurde von micky240688 am 01. Jun. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 04. Jun. 2018 10:01 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang! Ich habe immer wieder Zeit mit der Animation am Wochenende verbracht. Meine Erkenntnis: Sobald ich zwei Punkte eines Körpers (bei Zylinder die beiden Deckflächenmittelpunkte) mit "Pfad" auf meinem Spline verknüpfe, "verläuft" sich über kurz oder lang eine der beiden Bedingungen, sodass es nicht mehr klappt. Trotz unzähligen Versuchen habe ich es nicht hinbekommen, dieses Problem zu lösen. LG Mike Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 04. Jun. 2018 10:41 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
Zitat: Original erstellt von micky240688: Hallo Wolfgang!Ich habe immer wieder Zeit mit der Animation am Wochenende verbracht. Meine Erkenntnis: Sobald ich zwei Punkte eines Körpers (bei Zylinder die beiden Deckflächenmittelpunkte) mit "Pfad" auf meinem Spline verknüpfe, "verläuft" sich über kurz oder lang eine der beiden Bedingungen, sodass es nicht mehr klappt. Trotz unzähligen Versuchen habe ich es nicht hinbekommen, dieses Problem zu lösen. LG Mike
Hallo Mike, seltsam, denn solche Animation (Ketten) habe ich schon einige erzeugt. Der einzige Unterschied, der mir nun nur einfällt ist, dass es sich im einen Fall um eine geschlossene Kurve und im anderen Fall um eine offen handelt.
Vermutlich läuft dann ein Parameter aus der Kurve heraus. Verlängere doch einmal die Kurve am Anfang und am Ende, starte den Durchlauf etwas später und höre früher wieder auf. Geht das dann? PS.: kannst Du manuell die Laufvariable auf alle Werte setzen?
------------------ mfg Wolfgang Hackl CAD/CAM - Consult Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 04. Jun. 2018 18:34 <-- editieren / zitieren --> Unities abgeben:
Hallo! Genau so ist es. Wenn ich die Kurve schließe, habe ich kein Problem mehr, mit irgendwelchen Variablen, die sich früher oder später verabschieden. Eine Verlängerung hat ebenfalls keine Lösung des Problems bewirkt, leider. Auf mich macht es den Eindruck, wenn der "fixe" Part auf den Anfang springt, dass dann die nachfolgenden Teile den Bezug verlieren, sei es, weil es hinter "0" nichts mehr gibt oder weil der erste Teil bereits auf 0 springt, die anderen, nachfolgenden aber noch nicht fertig bewegt sind. Die manuelle Anpassung klappt bis zum Ende der Kurve, danach gibt es wieder Kollision in den Bedingungen. LG Mike Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 04. Jun. 2018 19:54 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
|
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 04. Jun. 2018 19:56 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
|
micky240688 Mitglied
Beiträge: 224 Registriert: 11.08.2010 Solid Edge ST10/MP07 Win 10/64-bit
|
erstellt am: 04. Jun. 2018 21:13 <-- editieren / zitieren --> Unities abgeben:
Guten Abend! So, nun habe ich einen Workaround geschafft... Ich habe deine Formel(n) übernommen und diese noch durch weiter Variablen erweitert, sodass jedes Teil eine vorgegebene/berechnete Position ein nimmt. Ist zwar etwas Arbeit, alles zu definieren, aber nun klappt es einmal. Effizient ist es zwar nicht, aber wenn man es nicht ständig benötigt. Ein Video wird nachgereicht, sobald ich meine Animation fertig haben. LG Mike Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wolha Moderator CAD - Consultant
Beiträge: 5685 Registriert: 30.01.2002 Win 11 Pro Solid Edge 2023 CAMWorks Primus PDM FEMAP Dynamic Designer Teamcenter
|
erstellt am: 05. Jun. 2018 06:55 <-- editieren / zitieren --> Unities abgeben: Nur für micky240688
|