定制白炽灯模型
该材料的目的是用AnyMath物理建模语言显示从问题的物理公式到用户组件的完整路径,并在交流电路中进行验证。
在[AnyMath社区]中已经有一个单独的部分,其中包含自定义物理示例компонентов](https://engee.com/community/ru/catalogs/projects?page=1&meta-query;={"state"%3A{"published"%3A{}}%2C"modeling_in_engee"%3A{"physical_one_d_modeling"%3A{"custom_components"%3A{}}}})。我们继续这个主题并分析灯模型,当灯丝加热时,其电阻增加。
AnyMath物理建模语言是声明式的:开发人员记录物理量和微分方程之间的关系,因果关系和数值解由求解器确定。 结构的语法和目的在[官方文档]中给出(https://engee.com/helpcenter/stable/ru-en/engeemodel/engeemodel-main.html )。
数学模型
灯丝被认为是具有热惯性的电阻。 接通时,螺纹是冷的,因此其电阻较低。 随着灯加热,其电阻增加,电流降低到其标称值。
开关电阻和标称电阻由设定的电压和电流决定。:
电阻的线性温度依赖性由表达式给出
电力;电力 它用于在打开灯丝的瞬间加热灯丝并将热量传递到环境中。:
哪里 -传热系数,以及 -热时间常数。 从既定的名义制度中,我们获得
在模型中 C.初始值 对应于未加热的线程。
组件的工作原理 @engeemodel
任何自定义物理组件都从设计开始 @engeemodel Имя begin ... end. 类型的专门部分放置在其内部。 @... begin ... end.
@icon将组件绑定到文件icon.svg,它设置它在画布上的外观。@nodes宣布两个非定向电气端口p和n像EngeePhysicalFoundation.Electrical.Pin. 在电域中,端口包含电势v和流变量i. 元数据view签名和端口放置的侧面设置。@parameters它包含可以在模拟之前调整的值。 在逗号之后,元数据写在方括号中:度量单位和参数的描述。@variables引入连续未知数delta_T,i和v. 它们的值由整个方程组决定,而不是由行的顺序执行决定。 初始值delta_T = 0.0并且高优先级有助于设置未加热的初始状态。@intermediates设置中间方程,直接从参数和变量计算。 这里包括电阻、传热系数和功率元件.@branches连接内部电流i带流端口变量:写i:(p.i, n.i)设置支路的方向,并在连接组件时确保电流的平衡。@equations包含物理关系。 蒂尔达~表示方程组中的相等,并且der(delta_T)-温度相对于时间的导数。
文档中的官方示例显示不带括号的端口类型。 文件代码如下所示 /user/custom_lamp/lamp.ngpc.
完整组件代码
该文件的全部内容如下所示。 lamp.ngpc.
# AnyMath物理建模语言中白炽灯的描述
# 该模型模拟加热时电阻的增加。 接通时,可以看到大的浪涌电流。 初始状态是灯未预热。
@engeemodel灯开始
@图标开始
"图标。svg"
结束
#电气港口公告
@节点开始
P=AnyMathPhysicalFoundation。电气。销(),[视图=("+","左")]
N=AnyMathPhysicalFoundation。电气。Pin(),[view=("-","right")]
结束
#声明参数
@参数开始
V_nom=220.0,[unit="V",description="额定电压"]
I_inrush=5.0,[unit="A",description="冷灯启动电流"]
I_nom=0.413,[单位="A",描述="加热灯额定电流"]
α=0.004,[单位="1/K",描述="电阻温度系数"]
time_coefficient=0.025,[unit="s",description="热时间常数"]
结束
#未知变量的声明
@变量开始
delta_T=0.0,[unit="K",description="灯丝相对于初始状态的温度变化",priority="high",access=Private]#potential variable
i=0.0,[unit="A",description="Current",access=Private]#流式变量
v=0.0,[unit="V",description="Voltage",access=Private]#电位变量
结束
#从参数和变量显式计算的中间变量的声明
@中间体开始
R_cold=V_nom/I_inrush,[unit="Ohm"]#通过浪涌电流和额定电压的冷灯电阻
R_nom=V_nom/I_nom,[unit="Ohm"]#工作模式下通过额定电流和额定电压的灯电阻
k=alpha*I_nom^2*R_nom/(R_nom/R_cold-1),[unit="W/K"]#来自具有零导数的热平衡方程的传热系数(UR)
R=R_cold*(1+alpha*delta_T),[unit="Ohm"]#过渡模式下的电阻
P_electric=i^2*R,[unit="W"]#电力
P_loss=k*delta_T,[unit="W"]#热量输出
P_heat=time_coefficient*k*der(delta_T),[unit="W"]#灯加热功率
结束
#电流流规则
@分支开始
i:(p.i,n.i)#流变量
结束
#灯方程
@方程开始
v~p.v-n.v#电压为电位差
v~R*i#欧姆定律
time_coefficient*k*der(delta_T)~i^2*R-k*delta_T#热平衡方程
结束
结束
验证方案
该组件与电流值为220V,频率为50Hz的交流电压源串联连接。 电流表、电压表和RMS单元允许同时观察瞬时和有效的电压和电流值。 物理网络需要求解器配置块,电气接地设置参考电位。
图2是具有交变电压源的灯的测试电路。
仿真结果:电压和电流
达0.04s,钥匙打开,因此灯电压和电流为零。 在短路之后,瞬时电压具有约 B,并且电流值为220V.RMS曲线的阶梯段与仪表需要为计算窗口积累数据这一事实有关。
图3-灯两端的瞬时有效电压。
接通后立即冷阻为44欧姆。 因此,当在正弦波的振幅附近接通时,瞬时电流达到近似 A,其与图4中的峰值和浪涌电流的设定有效值一致 作为
它升温,电阻增加,电流幅值减小,有效值趋于0.413a参数中设定的标称电流值。瞬时电流的符号随源的极性而变化;负值并不意味着反向加热,因为热平衡使用 .
图4-启动过程和稳态灯电流。
仿真结果:电阻
在接通之前,电阻保持44欧姆的冷值。 电压施加后迅速增加,达到标称电阻范围。 欧姆 稳态电阻的小波纹发生,因为瞬时功率 在正弦电流下,它的脉动频率是主频率的两倍,即大约100赫兹。 热时间常数平滑了这些脉动,但在公认的集中模型中,它并没有完全消除它们。
图5-加热过程中螺纹电阻的增加。
该模型再现了白炽灯的主要定性特性--一个大的冷螺纹电流及其在升温后的限制。
使用过的来源
*[AnyMath物理建模语言](https://engee.com/helpcenter/stable/ru-en/engeemodel/engeemodel-main.html )-声明性语言的目的和文档部分的结构。