Co-simulation between Altair Twin-activate and Motionsolve
Hi,
I am working on hydraulics and Multibody simulation, where i have to co-relate the hydraulics with the motion of the machine. I successfully generated an FMU from the twin-activate. I will give a simple overview of what the aim is, Torque at the roller of the machine will be input to the activate model, the output from the activate will be speed of the roller.
From the tutorials, I learnt that, we create Solver variable for Input to the FMU, and relate FMU with solver varible using VARVAL fucntion and idstring.
Later, we give expression to the motion using ARYVAL AND Idstring of FMU output array. Doing this, i am getting an error that says " Failure in pursing fmu.idstring".
If i am wrong in the process, please correct the process and your thoughts on this.
Best Answer
-
Bhuvana Siva Teja said:
Hi Christopher,
Unfortunately i am not supposed to share the model, I will attach the pictures will may be helpful.
There are 3 rollers, in which 2 are drums and the middle one is a vibration shaft. So, i created a solver string and gave expression as TM(Id.string of joint) for all three rollers. and using VARVAL in FMU to VARVAL(id.string of solver string). And this FMU output is called usig ARAYVAL in motion, just like you suggested using output array. In this process i am stuck with an error, which i have tagged below.Hi Bhuvana,
No worries. For the VARVAL error. Can you try adding {} around the idstring? For example: `VARVAL({sv_left_height.idstring})`
If you run check model. . The Expression should show the id encompassed in VARVAL
If you haven't generated the id for the solver variable. It will look like this.
Let me know if I need to reclarify anything.
Best,
Christopher
1
Answers
-
Hello Bhuvana,
Thank you for reaching out. Some questions, was the fmu created in Twin Activate or another product?
Can you share model (File -> Export -> Model -> Archive Model)/pictures on how you set up the expression referring to the FMU?
Make sure the motion input its set to Expression and you incorporate the expression like so `ARYVAL({fmu_idstring.y_array.id},1)`.
Best,
Christopher Fadanelli
1 -
Hi Bhuvana,
For a detailed example on the implementation of an FMU entity, please refer to tutorial MV-7012: Functional Mockup Unit (FMU) in MotionView and MotionSolve:
The Tutorial Model files you may need for this example can be found here:
It looks as though the tutorial has not been updated to reflect our new interface, however the steps will be nearly identical. Just remember that the 'Panels' has been replaced with the Entity Editor. If you hit any snags, just let me know and I can clarify any of the steps.
Hope this helps!
Adam Reid
1 -
Adam Reid_21142 said:
Hi Bhuvana,
For a detailed example on the implementation of an FMU entity, please refer to tutorial MV-7012: Functional Mockup Unit (FMU) in MotionView and MotionSolve:
The Tutorial Model files you may need for this example can be found here:
It looks as though the tutorial has not been updated to reflect our new interface, however the steps will be nearly identical. Just remember that the 'Panels' has been replaced with the Entity Editor. If you hit any snags, just let me know and I can clarify any of the steps.
Hope this helps!
Adam Reid
Hi,
Thank you for the information, I am stuck with this error.0 -
Hello Bhuvana,
Thank you for reaching out. Some questions, was the fmu created in Twin Activate or another product?
Can you share model (File -> Export -> Model -> Archive Model)/pictures on how you set up the expression referring to the FMU?
Make sure the motion input its set to Expression and you incorporate the expression like so `ARYVAL({fmu_idstring.y_array.id},1)`.
Best,
Christopher Fadanelli
Hi Christopher,
Unfortunately i am not supposed to share the model, I will attach the pictures will may be helpful.
There are 3 rollers, in which 2 are drums and the middle one is a vibration shaft. So, i created a solver string and gave expression as TM(Id.string of joint) for all three rollers. and using VARVAL in FMU to VARVAL(id.string of solver string). And this FMU output is called usig ARAYVAL in motion, just like you suggested using output array. In this process i am stuck with an error, which i have tagged below.0 -
Bhuvana Siva Teja said:
Hi Christopher,
Unfortunately i am not supposed to share the model, I will attach the pictures will may be helpful.
There are 3 rollers, in which 2 are drums and the middle one is a vibration shaft. So, i created a solver string and gave expression as TM(Id.string of joint) for all three rollers. and using VARVAL in FMU to VARVAL(id.string of solver string). And this FMU output is called usig ARAYVAL in motion, just like you suggested using output array. In this process i am stuck with an error, which i have tagged below.Hi Bhuvana,
No worries. For the VARVAL error. Can you try adding {} around the idstring? For example: `VARVAL({sv_left_height.idstring})`
If you run check model. . The Expression should show the id encompassed in VARVAL
If you haven't generated the id for the solver variable. It will look like this.
Let me know if I need to reclarify anything.
Best,
Christopher
1