构建一个喷射泵模型Simscape热液体的域。

10视图(30天)
大家好,
我们目前正与热液域Simscape并尝试实现一个喷射泵的模型。
没有真正的解决方案通过使用标准元素和查找表,所以我们期待着港口的“喷射泵”块simhydraulics域: http://de.mathworks.com/help/physmod/hydro/ref/jetpump.html
ssc-file工作现在,我们有一个消极词√6,所以初始化失败,无论没有倒流(因此负mdot)喷射泵。代码:
组件jet_pump
%热液体射流泵
%定义了一个热液体域组件与外部节点,B和C
%位于左,左、右手边的块。
%还定义了通过相关变量以及热力学
%属性和通量的计划。属性计算用表
%的查找功能。
%修改simscape two_port.ssc-file
%的目标:喷射泵模型
输入
Anozzle ={1的军医,“m ^ 2”};% ctrl:左
结束
节点
一个= foundation.thermal_liquid.thermal_liquid;%:左
B = foundation.thermal_liquid.thermal_liquid;% B:左
C = foundation.thermal_liquid.thermal_liquid;% C:对
结束
参数
长度= {1 e 1,“米”};%纵向特征长度
面积={1飞行,“m ^ 2”};%管横截面积
An_min ={1平台以及,“m ^ 2”};%喷嘴面积最小
Ath ={1的军医,“m ^ 2”};%的喉咙区域
广告= {1 e - 3,“m ^ 2”};%扩散器出口面积
Kn = {0.05,' 1 '};%喷嘴水力损失系数
肯= {0.005,' 1 '};%的喉咙进入水力损失系数
k = {0.1,' 1 '};%的喉咙水力损失系数
Kdi = {0.1,' 1 '};%扩散器水力损失系数
结束
变量
%组件的变量
mdot_A = {0,公斤/年代”};%质量流量成
mdot_B = {0,公斤/年代”};%质量流率为B
mdot_C = {0,公斤/年代”};% C质量流量
Phi_A = {0,“J / s”};%热通量
Phi_B = {0,“J / s”};% B热通量
Phi_C = {0,“J / s”};通过C %热通量
p = {1.01325,“酒吧”};%的压力
结束
变量(转换=绝对)
T = {293.15,“K”};%的温度
结束
变量(访问=保护)
Phi_convection_A = {0,“J / s”};%对流热通量的一部分
Phi_convection_B = {0,“J / s”};%对流热通量B的一部分
Phi_convection_C = {0,“J / s”};通过C %对流热通量的一部分
%对水的流体性质——默认值是在p = 1大气和T = 293.15开尔文
% %内部能量
u = {84,“J / g”};%内部能量
u_A = {84,“J / g”};%内部能量
u_B = {84,“J / g”};%内能在B
u_C = {84,“J / g”};在C %内能
% %密度
ρ= {998.2,公斤/ m ^ 3的};%密度
rho_A = {998.2,公斤/ m ^ 3的};%密度在
rho_B = {998.2,公斤/ m ^ 3的};在B %密度
rho_C = {998.2,公斤/ m ^ 3的};在C %密度
% %定压比热、热膨胀等压,导电性
cp = {4.16,“J / (g * K)”};%定压比热容
α= {-2.0691 e-04,“1 / K”};%等压热膨胀
k = {598.5,“mW / (m * K)”};%导热系数
% %等温体积弹性模量和粘度
β= {2.1791,“成绩”};%等温体积弹性模量
ν= {1,“mm ^ 2 /秒”};%粘度
结束
分支机构
mdot_A:。mdot - > *;
mdot_B: B。mdot - > *;
mdot_C: C。mdot - > *;
Phi_A:。φ- > *;
Phi_B: B。φ- > *;
Phi_C: C。φ- > *;
结束
方程
%喷嘴面积必须大于An_min
一个=如果Anozzle < An_min An_min其他Anozzle结束;
%在流体边界压力和温度
p_A =美国专利;
T_A =“;
p_B = B.p;
T_B = B.T;
p_C = C.p;
T_C =让;
%热导率为每个来源的一部分
=高等如果k *(区域/ 2)/(长度/ 2)< =。G_min, A.G_min其他的k *(区域/ 2)/(长度/ 2)结束;
%热能方程的源和汇
p_dv_A =。p * mdot_A *如果gt (mdot_A 0) 1 / rho_A - 1 /ρ其他的1 /ρ- 1 /ρ结束;
p_dv_B = B。p * mdot_B *如果gt (mdot_B 0) 1 / rho_B - 1 /ρ其他的1 /ρ- 1 /ρ结束;
p_dv_C = C。p * mdot_C *如果gt (mdot_C 0) 1 / rho_C - 1 /ρ其他的1 /ρ- 1 /ρ结束;
%的内部能量相对应的内部温度和压力边界
u_out_A = tablelookup (A。T_TLU,。p_TLU,。u_TLU T p_A插值=线性外推法=最近的);
u_out_B = tablelookup (B。T_TLU B。p_TLU,。u_TLU T p_B插值=线性外推法=最近的);
u_out_C = tablelookup (C。T_TLU C。p_TLU,。u_TLU T p_C插值=线性外推法=最近的);
%喷射泵的具体
b = / Ath;
c = (1 - b) / b;
Z = rho_A * (((mdot_A / rho_A) ^ 2) / (2 * ^ 2));
M = mdot_B / mdot_A;
= Ath /广告;
%对流热通量的一部分
Phi_convection_A = = mdot_A *如果gt (mdot_A, 0), u_A其他u_out_A结束;
Phi_convection_B = = mdot_B *如果gt (mdot_B, 0), u_B其他u_out_B结束;
Phi_convection_C = = mdot_C *如果gt (mdot_C, 0), u_C其他u_out_C结束;
%质量守恒定律
% mdot_A = =(一个/√(1 + Kn)) * (sqrt ((2 / rho_A) * (A.p-p))) * rho_A;
mdot_A = =(一个/√(1 + Kn)) * (sqrt ((2 / rho_A) * (abs (A.p-p)))) * rho_A * (A.p-p) / abs (A.p-p);% (A.p-p) / abs (A.p-p)避免负面的,这是以前的错误
% mdot_B = =(一个* c /√(1 +肯))* (sqrt ((2 / rho_B) * (B.p-p))) * rho_B;
mdot_B = =(一个* c /√(1 +肯))* (sqrt ((2 / rho_B) * (abs (B.p-p)))) * rho_B * (B.p-p) / abs (B.p-p);% (A.p-p) / abs (A.p-p)避免消极的方面
0 = = mdot_A + mdot_B + mdot_C;
%动量守恒
C。p p = = Z * (b) ^ 2) * ((2 / b) + (2/1-b) * M ^ 2 - ((1 + M) ^ 2) * (1 + k + Kdi + ^ 2));- %假设,符号,因此压力就好了
%能量守恒
% %热通量
Phi_A = = Phi_convection_A + *(高等。T - T);
Phi_B = = Phi_convection_B +高等* (B。T - T);
Phi_C = = Phi_convection_C +高等* (C。T - T);
% Phi_A = = Phi_convection_A;
% Phi_B = = Phi_convection_B;
% Phi_C = = Phi_convection_C;
% %平衡
0 = = Phi_A + Phi_B + p_dv_A + p_dv_B + Phi_C + p_dv_C;%:0 = = a + b + c型而不是c = = a + b
% 0 = = Phi_A + Phi_B + Phi_C;
%流体属性表查找函数
u = = tablelookup (A。T_TLU,。p_TLU,。u_TLU, T, p,插值=线性外推法=最近的);
u_A = = tablelookup (A。T_TLU,。p_TLU,。u_TLU、T_A p_A插值=线性外推法=最近的);
u_B = = tablelookup (A。T_TLU,。p_TLU,。u_TLU、T_B p_B插值=线性外推法=最近的);
u_C = = tablelookup (A。T_TLU,。p_TLU,。u_TLU、T_C p_C插值=线性外推法=最近的);
ρ= = tablelookup (。T_TLU,。p_TLU,。rho_TLU, T, p,插值=线性外推法=最近的);
rho_A = = tablelookup (A。T_TLU,。p_TLU,。rho_TLU、T_A p_A插值=线性外推法=最近的);
rho_B = = tablelookup (A。T_TLU,。p_TLU,。rho_TLU、T_B p_B插值=线性外推法=最近的);
rho_C = = tablelookup (A。T_TLU,。p_TLU,。rho_TLU、T_C p_C插值=线性外推法=最近的);
ν= = tablelookup (A。T_TLU,。p_TLU,。nu_TLU, T, p,插值=线性外推法=最近的);
cp = = tablelookup (。T_TLU,。p_TLU,。cp_TLU, T, p,插值=线性外推法=最近的);
α= = tablelookup (。T_TLU,。p_TLU,。alpha_TLU, T, p,插值=线性外推法=最近的);
k = = tablelookup (A。T_TLU,。p_TLU,。k_TLU, T, p,插值=线性外推法=最近的);
β= = tablelookup (。T_TLU,。p_TLU,。beta_TLU, T, p,插值=线性外推法=最近的);
结束
结束
结束
2的评论
安德烈亚斯
安德烈亚斯 2015年10月15日
进展:忘了,two_port。ssc没有独立的块只有对象/顶层模块的基础。很多失踪的保护方程可以发现在其他块……我会尽量得到这个工作。

登录置评。

接受的答案

安德烈亚斯
安德烈亚斯 2015年11月2日
ssc-file工作现在,我们有一个消极词√6,所以初始化失败,无论没有倒流(因此负mdot)喷射泵

更多的答案(3)

索拉博Forouzan较多
索拉博Forouzan较多 2015年10月15日
你好安德烈亚斯,
我试过这种变体(见下文)。你不会得到变量超过方程错误了,但是运行模式也不起作用。
知道出了什么问题吗?
组件three_port
%热液三个港口
%定义了一个热液体域组件与外部节点,B和C
%位于左,左、右手边的块。
%还定义了通过相关变量以及热力学
%属性和通量的计划。属性计算用表
%的查找功能。
节点
一个= foundation.thermal_liquid.thermal_liquid;%:左
B = foundation.thermal_liquid.thermal_liquid;% B:左
C = foundation.thermal_liquid.thermal_liquid;% C:对
结束
参数
% commanded_pressure ={0, '爸爸'};%压差
长度= {1 e 1,“米”};%纵向特征长度
面积={1飞行,“m ^ 2”};%管横截面积
结束
变量
%组件的变量
mdot_A = {0,公斤/年代”};%质量流量成
mdot_B = {0,公斤/年代”};%质量流率为B
mdot_C = {0,公斤/年代”};% C质量流量
Phi_A = {0,“J / s”};%热通量
Phi_B = {0,“J / s”};% B热通量
Phi_C = {0,“J / s”};通过C %热通量
p = {1.01325,“酒吧”};%的压力
结束
变量(转换=绝对)
T = {293.15,“K”};%的温度
结束
变量(访问=保护)
Phi_convection_A = {0,“J / s”};%对流热通量的一部分
Phi_convection_B = {0,“J / s”};%对流热通量B的一部分
Phi_convection_C = {0,“J / s”};通过C %对流热通量的一部分
%对水的流体性质——默认值是在p = 1大气和T = 293.15开尔文
% %内部能量
u = {84,“J / g”};%内部能量
u_A = {84,“J / g”};%内部能量
u_B = {84,“J / g”};%内能在B
u_C = {84,“J / g”};在C %内能
% %密度
ρ= {998.2,公斤/ m ^ 3的};%密度
rho_A = {998.2,公斤/ m ^ 3的};%密度在
rho_B = {998.2,公斤/ m ^ 3的};在B %密度
rho_C = {998.2,公斤/ m ^ 3的};在C %密度
% %定压比热、热膨胀等压,导电性
cp = {4.16,“J / (g * K)”};%定压比热容
α= {-2.0691 e-04,“1 / K”};%等压热膨胀
k = {598.5,“mW / (m * K)”};%导热系数
% %等温体积弹性模量和粘度
β= {2.1791,“成绩”};%等温体积弹性模量
ν= {1,“mm ^ 2 /秒”};%粘度
结束
分支机构
mdot_A:。mdot - > *;
mdot_B: B。mdot - > *;
mdot_C: C。mdot - > *;
Phi_A:。φ- > *;
Phi_B: B。φ- > *;
Phi_C: C。φ- > *;
结束
方程
%在流体边界压力和温度
p_A =美国专利;
T_A =“;
p_B = B.p;
T_B = B.T;
p_C = C.p;
T_C =让;
%热导率为每个源的一半
=高等如果k *区域/(长度/ 2)< =。G_min, A.G_min其他的k *区域/(长度/ 2)结束;
%热能方程的源和汇
p_dv = p * mdot_A *如果gt (mdot_A 0) 1 / rho_A - 1 /ρ其他的1 /ρ- 1 / rho_B结束;
%的内部能量相对应的内部温度和压力边界
u_out_A = tablelookup (A。T_TLU,。p_TLU,。u_TLU T p_A插值=线性外推法=最近的);
u_out_B = tablelookup (A。T_TLU,。p_TLU,。u_TLU T p_B插值=线性外推法=最近的);
u_out_C = tablelookup (A。T_TLU,。p_TLU,。u_TLU T p_C插值=线性外推法=最近的);
% %热能方程的源和汇
% p_dv = p * mdot_A *如果gt (mdot_A, 0), 1 / rho_A - 1 /其他ρ1 /ρ- 1 / rho_B结束;
%对流热通量的一部分
Phi_convection_A = = mdot_A *如果gt (mdot_A, 0), u_A其他u_out_A结束;
Phi_convection_B = = mdot_B *如果gt (mdot_B, 0), u_B其他u_out_B结束;
Phi_convection_C = = mdot_C *如果gt (mdot_C, 0), u_C其他u_out_C结束;
%质量守恒定律
% mdot_A = = -mdot_B;
mdot_C = = mdot_A + mdot_B;
%动量守恒
p = = (。p + B。p + C.p) / 3;
B。p - A。p = = 0;
B。p - C。p = = 0;
%能量守恒
% %热通量
Phi_A = = Phi_convection_A + *(高等。T - T);
Phi_B = = Phi_convection_B +高等* (B。T - T);
Phi_C = = Phi_convection_C +高等* (C。T - T);
% Phi_A = = Phi_convection_A;
% Phi_B = = Phi_convection_B;
% Phi_C = = Phi_convection_C;
% %平衡
Phi_C = = Phi_A + Phi_B + p_dv;
%流体属性表查找函数
u = = tablelookup (A。T_TLU,。p_TLU,。u_TLU, T, p,插值=线性外推法=最近的);
u_A = = tablelookup (A。T_TLU,。p_TLU,。u_TLU、T_A p_A插值=线性外推法=最近的);
u_B = = tablelookup (A。T_TLU,。p_TLU,。u_TLU、T_B p_B插值=线性外推法=最近的);
u_C = = tablelookup (A。T_TLU,。p_TLU,。u_TLU、T_C p_C插值=线性外推法=最近的);
ρ= = tablelookup (。T_TLU,。p_TLU,。rho_TLU, T, p,插值=线性外推法=最近的);
rho_A = = tablelookup (A。T_TLU,。p_TLU,。rho_TLU、T_A p_A插值=线性外推法=最近的);
rho_B = = tablelookup (A。T_TLU,。p_TLU,。rho_TLU、T_B p_B插值=线性外推法=最近的);
rho_C = = tablelookup (A。T_TLU,。p_TLU,。rho_TLU、T_C p_C插值=线性外推法=最近的);
ν= = tablelookup (A。T_TLU,。p_TLU,。nu_TLU, T, p,插值=线性外推法=最近的);
cp = = tablelookup (。T_TLU,。p_TLU,。cp_TLU, T, p,插值=线性外推法=最近的);
α= = tablelookup (。T_TLU,。p_TLU,。alpha_TLU, T, p,插值=线性外推法=最近的);
k = = tablelookup (A。T_TLU,。p_TLU,。k_TLU, T, p,插值=线性外推法=最近的);
β= = tablelookup (。T_TLU,。p_TLU,。beta_TLU, T, p,插值=线性外推法=最近的);
结束
结束
结束
1评论
安德烈亚斯
安德烈亚斯 2015年10月19日
编辑:安德烈亚斯 2015年10月28日
我们真的错过了一些方程,但现在基本模型的工作原理。matlab支持建议的万博1manbetx图形解决方案喷射泵,我们会看到,什么为我们工作。
更新的代码在前。

登录置评。



亚兰Amouzandeh
亚兰Amouzandeh 2019年12月13日
亲爱的所有,
我试图在MATLAB R2018b建立模型,得到以下错误:
未能产生“TL_addon2_lib”
引起的:
使用TL_addon2错误。元素/ jet_pump >方程(第102行)
无功能或价值A.G_min命名。
更新缓存模型顾问…
模型顾问缓存更新。新定制,更新缓存,使用Advisor.Manager。refresh_customizations方法。
多个TL_addon2_test_model编译时,编译错误侦测。
多个TL_addon2_test_model编译时,编译错误侦测。
(“TL_addon2_test_model /热液体射流泵”):找不到参数“Phi_A_nominal_specify”。如果进行了更改,请运行ssc_build Simscape文件或如果你是Simscape的升级到新版本。
在jet_pump.ssc A.G_min 是用于烧焦方程作为参数:
%热导率为每个来源的一部分
=高等如果k *(区域/ 2)/(长度/ 2)< =。G_min, A.G_min其他的k *(区域/ 2)/(长度/ 2)结束;
然而,其他地方定义的变量不是。变量可以是全局MATLAB变量不再有效2018年版本呢?
谢谢您的输入!
欢呼,
亚兰
3评论
安德烈亚斯
安德烈亚斯 2022年6月27日
编辑:安德烈亚斯 2022年6月27日
不知怎么的热液体的结构域已经改变了。一个简单的解决方案是,构建基于查找表jetpump模型通常来自制造商像BAELZ等等:
以及老ssc-variant工作。

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!