Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Simulation + Replay

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Simulation + Replay (2117 mal gelesen)
AierMandi
Mitglied
Entwicklungsingenieur


Sehen Sie sich das Profil von AierMandi an!   Senden Sie eine Private Message an AierMandi  Schreiben Sie einen Gästebucheintrag für AierMandi

Beiträge: 23
Registriert: 26.05.2011

CATIA V5R19 SP9 HF49
Windows 7 Ent. 64Bit
Intel Core i7-2820QM @ 2.3GHz
8GB Ram

erstellt am: 05. Feb. 2013 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,

erstmal ein sehr großen LOB an dieses Forum! Viele Probleme konnte ich mit Hilfe eurer Beitrag bereits lösen.

Ich möchte eine Simulation + Replay (in der Umgebung DMU Kinematics) mit verschieden Mechanismeneinstellungen automatisiert ausführen.
Die Mechanik und das zugehörige DressUp ist bereits erstellt. Nun würde ich gerne die Simulation erzeugen. Dazu sind verschieden Parameter der Mechanik zu setzen und jeweils mit dem Befehl "Insert" in die Simulation einzufügen. (Das setzen der Mechanikparameter funktioniert bereits.)
Leider finde ich keine Doku. über die Simulation? Ich kann bis jetzt nur die Simulation mit dem Befehl 'CATIA.StartCommand ("Simulation mit Regeln")' öffnen. Komme dann aber nicht weiter.

Ich bin für jede Anregung offen. Danke!

Viele Grüße
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 05. Feb. 2013 10:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für AierMandi 10 Unities + Antwort hilfreich

Servus
Das hört sich schwierig an. Die Doku ist zu diesem Thema auch etwas dürftig.
Vielleicht wäre es einfacher die Simulation mit einer Tabelle zu steuern. (siehe zb hier)

Gruß
Bernd

------------------
Gruß
Bernd

Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AierMandi
Mitglied
Entwicklungsingenieur


Sehen Sie sich das Profil von AierMandi an!   Senden Sie eine Private Message an AierMandi  Schreiben Sie einen Gästebucheintrag für AierMandi

Beiträge: 23
Registriert: 26.05.2011

CATIA V5R19 SP9 HF49
Windows 7 Ent. 64Bit
Intel Core i7-2820QM @ 2.3GHz
8GB Ram

erstellt am: 05. Feb. 2013 11:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Servus Bernd,

das Einlesen der Daten per Tabelle ist geplant und in Bearbeitung.
Da kann ich durchaus den Mechanismus verfahren. Leider weis ich nicht wie ich die aktuelle Position in eine Simulationsabfolge speichere.
Es reicht leider nicht, wenn ich das Bauteil zu jeder "Mechanik-Konfiguration" kopiere, da das zu erzeugende Replay entscheidend ist.

Hat jemand noch eine Idee? einen Literaturvorschlag?

Viele Grüße
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 05. Feb. 2013 11:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für AierMandi 10 Unities + Antwort hilfreich

Servus
Musst du unbedingt Replays haben?
Oder reicht es aus dem Mechanismus/Simulation direkt eine Film zu erzeugen?

Gruß
Bernd

------------------
Gruß
Bernd

Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AierMandi
Mitglied
Entwicklungsingenieur


Sehen Sie sich das Profil von AierMandi an!   Senden Sie eine Private Message an AierMandi  Schreiben Sie einen Gästebucheintrag für AierMandi

Beiträge: 23
Registriert: 26.05.2011

CATIA V5R19 SP9 HF49
Windows 7 Ent. 64Bit
Intel Core i7-2820QM @ 2.3GHz
8GB Ram

erstellt am: 05. Feb. 2013 11:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Servus,

ja ein Replay ist das Ziel.
Benötigt man für einen Film nicht ebenso eine Simulation? Ich denke da an den Simulation-Player.
Oder denkst du an ein aufgezeichentes Video bzw. Film?

Gruß
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 05. Feb. 2013 11:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für AierMandi 10 Unities + Antwort hilfreich

Servus
Du kannst auch direkt aus einer Simulation ein Film erstellen (Tools -> Simulation -> Video erstellen)
Wenn die Simulation mit Regeln (also mit der Tabelle) gesteuert wird, brauchst du auch für verschiedene Varianten nur eine Simulation, da du ja die Tabelle entsprechend ändern kannst. (oder könntest du auch mit grafischen regeln arbeiten?)

Gruß
Bernd

------------------
Gruß
Bernd

Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AierMandi
Mitglied
Entwicklungsingenieur


Sehen Sie sich das Profil von AierMandi an!   Senden Sie eine Private Message an AierMandi  Schreiben Sie einen Gästebucheintrag für AierMandi

Beiträge: 23
Registriert: 26.05.2011

CATIA V5R19 SP9 HF49
Windows 7 Ent. 64Bit
Intel Core i7-2820QM @ 2.3GHz
8GB Ram

erstellt am: 05. Feb. 2013 12:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Simulation.jpg

 
Servus,

ja Funktion des Viedeoerstellen kenne ich. Hilft mir aber leider nicht weiter.
Das Verändern der Parameter per Tabelle funktioniert bereits. Leider kann ich zu den jeweiligen Konfiguration keine Simulation aufrufen geschweige denn einen Simulations-Step (mit Befehl "Insert") einfügen. Zur Veranschaulichung hab ich einen Screenshot angefügt.

Gruß
Andreas

[Diese Nachricht wurde von AierMandi am 05. Feb. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 05. Feb. 2013 18:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für AierMandi 10 Unities + Antwort hilfreich

Servus
Wenn du eine Simulation/Mechanismus über eine Regel (Formel) steuerst brauchst du das "Insert" nicht.
Über eine Formel kann man auch die Simulationswerte von einer Tabelle (eine Zeile pro Zeitschritt) abhängig machen.

Gruß
Bernd

EDIT: Hier ein Link zu Erklärungen und Beispielen

------------------

Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 05. Feb. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AierMandi
Mitglied
Entwicklungsingenieur


Sehen Sie sich das Profil von AierMandi an!   Senden Sie eine Private Message an AierMandi  Schreiben Sie einen Gästebucheintrag für AierMandi

Beiträge: 23
Registriert: 26.05.2011

CATIA V5R19 SP9 HF49
Windows 7 Ent. 64Bit
Intel Core i7-2820QM @ 2.3GHz
8GB Ram

erstellt am: 06. Feb. 2013 09:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Servus Bernd,

erstmal Danke das du weiter so hartnäckig bist. So ganz verstehe ich es leider nicht wie du das meinst mit den Regeln. Das Ziel ist ein Replay.

An dem Mechanismus kann ich nichts mehr ändern. Er ist über die definierten Variablen (s. oberes Bild) fix. Ich verstehe, dass ich die Kinematik über eine Tabelle steuern kann, indem ich die Werte (aus der Tabelle) den definierten Variabelen zuweise. Das funktioniert erfreulicherweise bereits.
Nun ist es das Ziel ein Replay mit verschiedene Variablenkonfiguration zu erstellen. Wenn ich die Simulation mit dem "Insert" Befehl umgehen kann wäre das Klasse. Ich weis aber nicht wie ich ein Replay erzeuge.

Viele Grüße
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 06. Feb. 2013 10:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für AierMandi 10 Unities + Antwort hilfreich

Servus
IMHO kann man Simulation nicht mit eine Makro bearbeiten (zumindest steht nichts in der Doku). Deshalb meine Idee den Befehlen des Mechanismus Formel zuordnen, die auf je einen Parameter verweisen. Der Parameter selbst wird über eine Designtable gesteuert. Die Konfiguration der Tabelle (= Zeile) wird dann über eine Formel dem Zeitschritt zugeordnet. (Vergleiche Mechanismus/Simulation mit Regel)
Dann kannst du direkt aus dem Mechanismus ein Video generieren (oder direkt ein Replay?).

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AierMandi
Mitglied
Entwicklungsingenieur


Sehen Sie sich das Profil von AierMandi an!   Senden Sie eine Private Message an AierMandi  Schreiben Sie einen Gästebucheintrag für AierMandi

Beiträge: 23
Registriert: 26.05.2011

CATIA V5R19 SP9 HF49
Windows 7 Ent. 64Bit
Intel Core i7-2820QM @ 2.3GHz
8GB Ram

erstellt am: 08. Feb. 2013 13:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Replay1.txt

 
Servus

Ich bin ein gutes Stück weiter gekommen. Mit Hilfe eines aufgezeichenten Makros konnte ich nachvollziehen wie ein Replay erzeugt wird.-> siehe Anhang1
Zuerst werden die Mechanismuselemente durchnummeriert. Danach wird zur jeden Nummer und Timestep die Transformationsmatrix zugewiesen.
Mein Problem ist im Moment, dass ich die wirre Nummerierung der Mechanismuselemente nicht nachvollziehen kann. Derzeit nummeriere ich die Gelenke etc. wie im Baum durch und weise zu jedem Zeitschritt die aktuelle Transformationsmatrix dem Replay zu.

Ich kann mir mit Hilfe des Mechanismanalyse eine .txt herauschreiben. Darin kann ich die wirre Zuordnung bzw. Abfolge nachvollziehen.
Jetzt bentötige noch einen Befehl wie ich einen SuchString "D *Zahl* A" in einem String z.b. "blablabala 1235415 D 20 A bla bla bla" finde.


@Bernd: Sry für die späte Anwort, ich hatte zwei Gleittage. Nach Rücksprache mit meinem Chef kann ich das Skript nun einstellen.

'_____________________________________________________
Public replay1

Sub CATMain()

Dim productDocument1
Dim simulationWorkbench1
Dim KinematicsWorkbench1
Dim replayWorkbench1 As Workbench

CATIA.StartCommand ("Simulation with Commands")
'CATIA.ActiveWindow.Close

Set productDocument1 = CATIA.ActiveDocument

Dim RootProd As Product
Set RootProd = CATIA.ActiveDocument.Product

Set simulationWorkbench1 = productDocument1.GetWorkbench("SimulationWorkbench")
Set KinematicsWorkbench1 = productDocument1.GetWorkbench("KinematicsWorkbench")
Set replayWorkbench1 = productDocument1.GetWorkbench("ReplayWorkbench")

Dim MyDressups  As Dressups
Set MyDressups = RootProd.GetTechnologicalObject("Dressups")

Dim mechanism1
Set mechanism1 = KinematicsWorkbench1.Mechanisms.Item(1)

Dim filein As File
Dim Datei As String
Dim DStrom As TextStream

Datei = CATIA.FileSelectionBox("Datei auswählen", "*.txt", CatFileSelectionModeOpen)

    If Datei <> "" Then
  
    Set filesys = CATIA.FileSystem
    Set filein = filesys.GetFile(CStr(Datei))
    Set DStrom = filein.OpenAsTextStream("ForReading")
    Dim Index() As String
   
    Dim i As Integer
    i = 0
        Do While DStrom.AtEndOfStream = False
            Dim Zeile1 As String
            Zeile1 = DStrom.ReadLine
            i = i + 1
        Loop
    ReDim Index(i) As String
    i = 0
    Set DStrom = filein.OpenAsTextStream("ForReading")
        Do While DStrom.AtEndOfStream = False
            Dim Zeile As String
            Zeile = DStrom.ReadLine
            Index(i) = Zeile
            i = i + 1
        Loop

    End If


Dim oMovingPart                                                    
Set oMovingPart = mechanism1.GetProduct(1)                         

Dim MechanikCommands                                               
Set MechanikCommands = mechanism1.Commands                         
   
Dim AnzahlCommands                                                 
AnzahlCommands = MechanikCommands.Count                            

Dim Command()                                                      
Dim ResetCommand()
ReDim Command(AnzahlCommands - 1)                                  
ReDim ResetCommand(AnzahlCommands - 1)

For i = 0 To AnzahlCommands - 1
ResetCommand(i) = 0
Next

mechanism1.PutCommandValues ResetCommand
mechanism1.Update

j = 0
For i = 0 To (2 * AnzahlCommands) - 1
    Command(j) = Index(i)
    i = i + 1
    j = j + 1
Next

Dim CommandDouble()
ReDim CommandDouble(AnzahlCommands - 1)

For j = 0 To AnzahlCommands - 1
    CommandDouble(j) = CDbl(Command(j))
Next


Dim replays1 As Replays
Set replays1 = replayWorkbench1.Replays

Set replay1 = replays1.Add("Replay.1")

Dim product1 As Product
Set product1 = productDocument1.Product

Dim products1 As Products
Set products1 = product1.Products

Dim rotmatrix As Variant
ReDim rotmatrix(oMovingPart.Parent.Count, 11)

Dim zaehler As Integer
zaehler = oMovingPart.Parent.Count

Dim curLong As Variant
ReDim curLong(oMovingPart.Parent.Count)

Dim curProduct As Object
Dim curRotmatrix(11)
Dim resetRotmatrix(11)

For i = 0 To 11
resetRotmatrix(i) = 0
Next

Dim TimeStep As Double
TimeStep = 2

m = 1
For n = 0 To TimeStep - 1
    For i = 1 To oMovingPart.Parent.Count
        If (i = 54) Then
          
        Else
            curLong(i) = replay1.AddProductMotion(oMovingPart.Parent.Item(i))
            Set curProduct = oMovingPart.Parent.Item(i).Position
            curProduct.GetComponents curRotmatrix
           
            For k = 0 To 11
                rotmatrix(i, k) = curRotmatrix(k)
            Next
           
            replay1.AddSample curLong(i), TimeStep, curRotmatrix
            m = m + 1
           
        End If
    Next
    mechanism1.PutCommandValues CommandDouble()
    mechanism1.Update
   
Next

End Sub
'___________________________________________________


Grüße
Andreas

[Diese Nachricht wurde von AierMandi am 08. Feb. 2013 editiert.]

[Diese Nachricht wurde von AierMandi am 13. Feb. 2013 editiert.]

[Diese Nachricht wurde von AierMandi am 13. Feb. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 08. Feb. 2013 16:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für AierMandi 10 Unities + Antwort hilfreich

Servus
Schau dir dazu mal die Zeichenketten-Befehle von VB an zB InStr.
Könntest du deinen zuvor geposteten Code wieder einstellen, vielleicht können dies auch andere (zB ich) gebrauchen)?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz