How to simulate a simple thermodynamical system with simulink ?

12 次查看(过去 30 天)
Hello everybody!
I'd like to simulate the thermodynamical model of a Stirling engine using Simulink. The situation is the following:
I would like to know the temperature after a certain time (10 seconds for example) if I place a Heat source under my engine but I have to take care of the conductive heat transfer, the convective heat transfer and the radiative heat transfer. I've done this:
But I don't think that it's ok because Simulink sent me this error message:"The model may not give enough information to make it possible to solve for values of some of its variables. Specific advice is given below.
Cannot solve for one or more variables: 'Conductive_Heat_Transfer.A.T' (Temperature) 'Conductive_Heat_Transfer.B.T' (Temperature) 'Convective_Heat_Transfer.A.T' (Temperature) 'Convective_Heat_Transfer.B.T' (Temperature) 'Ideal_Heat_Flow_Source.B.T' (Temperature) 'Ideal_Heat_Flow_Source.T' (T) 'Ideal_Temperature_Sensor.A.T' (Temperature) 'Ideal_Temperature_Sensor.T' (T) 'Ideal_Temperature_Sensor.Ts' (Ts) 'Radiative_Heat_Transfer.A.T' (Temperature) 'Radiative_Heat_Transfer.B.T' (Temperature)
Equations of one or more components may be dependent or inconsistent. This can cause problems in transient initialization. Here is the set of components involved: 'untitled/Ideal Heat Flow Source' Equation location is: 'C:\Program Files\MATLAB\R2016b\toolbox\physmod\simscape\library\m\+foundation\+thermal\+sources\heat_flow.ssc' (line 34)
'untitled/Ideal Temperature Sensor' Equation location is: 'C:\Program Files\MATLAB\R2016b\toolbox\physmod\simscape\library\m\+foundation\+thermal\+sensors\temperature.ssc' (line 34) Component:Simulink | Category:Modelwarning The model may not give enough information to make it possible to solve for values of some of its variables. Specific advice is given below.
Cannot solve for one or more variables: 'Conductive_Heat_Transfer.A.T' (Temperature) 'Conductive_Heat_Transfer.B.T' (Temperature) 'Convective_Heat_Transfer.A.T' (Temperature) 'Convective_Heat_Transfer.B.T' (Temperature) 'Ideal_Heat_Flow_Source.B.T' (Temperature) 'Ideal_Heat_Flow_Source.T' (T) 'Ideal_Temperature_Sensor.A.T' (Temperature) 'Ideal_Temperature_Sensor.T' (T) 'Ideal_Temperature_Sensor.Ts' (Ts) 'Radiative_Heat_Transfer.A.T' (Temperature) 'Radiative_Heat_Transfer.B.T' (Temperature)
Equations of one or more components may be dependent or inconsistent. This can cause problems in transient initialization. Here is the set of components involved: 'untitled/Ideal Heat Flow Source' Equation location is: 'C:\Program Files\MATLAB\R2016b\toolbox\physmod\simscape\library\m\+foundation\+thermal\+sources\heat_flow.ssc' (line 34)
'untitled/Ideal Temperature Sensor' Equation location is: 'C:\Program Files\MATLAB\R2016b\toolbox\physmod\simscape\library\m\+foundation\+thermal\+sensors\temperature.ssc' (line 34) Component:Simulink | Category:Modelwarning An error occurred while running the simulation and the simulation was terminated Caused by: Trouble solving algebraic equations in differential-algebraic system. Singular iteration matrix encountered with step size 0.2 at time 0.0. Try tightening the error tolerances. If the problem persists, check the model structure and values of parameters."
Can someone help me ? thanks!

采纳的回答

Ed Marquez
Ed Marquez 2017-4-11
Hi,
I think the issue is occurring because of the way that the system is being modeled. If you add a thermal mass block after the heat transfer blocks, the model will be able to converge to a solution and thus simulate without errors.
Checkout the link below for some examples of modeling Thermal Systems with Simscape: https://www.mathworks.com/help/releases/R2017a/physmod/simscape/examples.html#d0e927
Good luck and have fun!
  2 个评论
Loris Chavée
Loris Chavée 2017-4-12
Hello,
Thanks for your answer, I don't have any error now but there's still a problem. Indeed, the fact that I change the different parameters doesn't do anything. Do I need to put something in input before my heat flow?
Thanks for your help!
Loris Chavée
Loris Chavée 2017-4-12
Hey,
My bad! I just needed to put a constant before a temperature source! Now if I delete for exemple the conduction, the result change as I wanted ! Thanks a lot !

请先登录,再进行评论。

更多回答(1 个)

OUSSAMA CHIROUD
OUSSAMA CHIROUD 2023-5-28
SILULATION

类别

Help CenterFile Exchange 中查找有关 Foundation and Custom Domains 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by