How to simulate a simple thermodynamical system with simulink ?

조회 수: 5 (최근 30일)
Loris Chavée
Loris Chavée 2017년 4월 2일
답변: OUSSAMA CHIROUD 2023년 5월 28일
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