Closed Loop Co-simulation

tloni
tloni Altair Community Member
edited October 2020 in Community Q&A

Hello,

 

I am performing an induction motor co-simulation of the FEA model in Activate. As it is a closed loop system, I used a discrete delay block (1/z) for the output current which is to be compared with the current commands for generating the voltage commands via a PI controller. However, the discrete delay block is also slowing down the computation time. Is there any other method that I can use to speed up the processing time? Thank you.

 

Regards,

Taohid

Tagged:

Answers

  • Livio Mariano_20459
    Livio Mariano_20459
    Altair Employee
    edited June 2020

    Hi Taohid,

    were you facing an algebraic loop problem hence you were trying to fix it with a 1/z block?

    if yes, please try to use a low pass filter instead with a properly high cut-off frequency (you need to use a transfer function block to design the filter).

    You could try also the memory or the last input blocks as second option and see if performance gets better.

     

    Also, you could try to use a fixed step solver like Backward Euler if not yet tested...

    Regards,

    Liv

  • andyer
    andyer
    Altair Employee
    edited June 2020

    Hi Taohid,

     

    Is it only the slowdown you see - are you getting the result you expect?   Are you using a fixed-step solver or variable-step solver in Activate?      Note that using Flux 2019.1 for cosim, there is an issue when a variable-step size integrator is used and may cause spikes/time mismatch when the step is rejected and the time step changes and may also cause a slow down.  You could try a fixed step solver like Backward Euler in Activate to avoid this issue. If possible, please download and install Flux and Activate 2020 from https://connect.altair.com,  as there were some fixes/updates for Flux+ Activate co-simulation that could possibly help you.  IN particular, the issue with variable-step solver has been fixed.

     

    If none of this helps, can you also please share the settings you have in the Flux block in Activate and we'll try to help further.  You may also make sure you can run one of the example models in the Demo Browser in Activate to make sure everything is setup and working fine on your machine.

     

    Best,

     

    Andy

     

     

  • andyer
    andyer
    Altair Employee
    edited June 2020

    Note that for Flux users who may not be so familiar with Activate, here's some more information about where/how to set the solver and documentation about fixed vs. variable step and more.

     

    To set the solver, hover your mouse cursor to the lower right by the play + stop button area to reveal the solver settings dialog:

     

    Note that LSODA is the default solver, this is a variable-step solver and generally runs fast and accurate for a large range of models.  You can use the pull down menu to select other solvers (like different variable and fixed step solvers):

     

    activate_solvers_dialog_box.PNG.03f0b185a07e8cda5caad54208ceba68.PNG

     

     

    You can find more information about the solvers in the 'Extended Definitions for Advanced Users' document under the help (File --> Help --> Help from the menus) - see the 'Reference Guides' section:

     

    extended_definitions_advanced_users.PNG.bbf73ee2bc8f03f1932a0c64bcbbf323.PNG

     

    Then within this guide see the 'Activate hybrid simulator and its interface with numerical solvers' section.

     

    extended_definitions_solver_section.PNG.ac89e344f03873c20196506f9d93d8ce.PNG

     

     

    Hope this helps.

     

    Best,

     

    Andy