How to set initial values for the start of a feedback loop in Simulink

100 views (last 30 days)
Bohan Liu on 25 Aug 2018

Hi, there! I am trying to incorporate a thermal model of electric motor into the full vehicle model. The thermal model takes losses in crucial components of EM as inputs and outputs temperatures in these crucial components. The outputs(temperatures) are then fed to a lookup table downstream containing losses at different temperatures and these losses are then fed back to the thermal model upstream. I am quite new to simulink and wonder how I can set some initial temperatures to the look-up table for the 1st simulation time step to kick it off?

Here is a schematic of the model I spoke of:

Incidentally, I would appreciate it if some simulink expert can propose some essential simulink tutorial for me so that I'll be able to get the hang of this simulation tool in the shortest time possible. I am fairly acquainted with Matlab as a programming language and data analysis tool, but the sheer volume of simulink documentation is daunting. Thanks in advance for your help!

Dimitris Kalogiros on 25 Aug 2018
How have you implemented these two blocks ?
Aquatris on 26 Aug 2018
If you are using integral block in the thermal model, it does have a initial condition part where you can set it to any value you want and it will make sure model will output the initial value at t = 0.
Bohan Liu on 26 Aug 2018
Hi! The thermal model is an analogous electric circuit(in the literature, the temperature difference is considered as potential difference/voltage, whilst the power loss/heat dissipation is analogous to current. Hence the the thermal model serves to output some voltage values when all necessary currents are given as inputs). I used simscape to implement the physical modelling of this electric/thermal circuit and will put it in a subsystem as was depicted in the sketch I provided above. All I need is the method to give, say two temperature values as initial input that act as trigger for the feedback loop, then the feedback loop can run on its own as some driving cycle is simulated.

Dimitris Kalogiros on 26 Aug 2018
A common and popular way to set initial conditions inside a closed loop is to put delay elements at the feedback path. Anyway, feedback loops are prone to "non-causality". So, placing delay elements, one can avoid such a phenomena (MathWorks names it as "algebraic loop")

Bohan Liu on 27 Aug 2018
Thanks man! By far the most comprehensive and instructive answer! I really appreciate it!
Dimitris Kalogiros on 27 Aug 2018