具有电气和机械参数的直流电机
这个例子将演示一个具有电气和机械参数的直流电机模型. 将显示使用命令控制从脚本开发环境启动模型的过程,以及仿真结果的可视化。 在仿真中,交变扭矩作用在电动机的轴上。
模型的一般视图
工程师模型:
定义加载和运行模型的函数:
In [ ]:
function start_model_engee()
try
engee.close("dc_motor_default", force=true) # 关闭模型
catch err # 如果没有模型关闭和engee。close()不执行,它将在catch之后加载。
m = engee.load("/user/start/examples/physmod/dc_motor_default/dc_motor_default.engee") # 加载模型
end;
try
engee.run(m, verbose=true) # 启动模型
catch err # 如果模型没有加载和engee。run()不执行,catch后最下面的两行将被执行。
m = engee.load("/user/start/examples/physmod/dc_motor_default/dc_motor_default.engee") # 加载模型
engee.run(m, verbose=true) # 启动模型
end
end
Out[0]:
加载、运行模型并记录结果
In [ ]:
try
start_model_engee() # 加载和启动模型
catch err
end;
sleep(5)
# data1=collect(simout)#从描述集电极电流和集电极-发射极电压的simout变量中提取数据
# Vce=collect(data1[2])#将集电极-发射极电压数据写入变量
# Ic1=collect(data1[3]);#将采集器电流数据写入变量
向数据变量写入信号:
In [ ]:
data = collect(simout)
Out[0]:
在变量电流和扭矩中记录电机轴上的电流和扭矩数据:
In [ ]:
torque = collect(data[1])
current = collect(data[3]);
结果可视化
输出电流和转矩对时间的依赖关系图:
In [ ]:
p1 = plot(current[:,1], current[:,2], label="电流", color="red")
p2 = plot(torque[:,1], torque[:,2], label="扭矩", color="green")
plot(p1, p2, layout=(2,1))
Out[0]:
结论:
在此示例中,使用了用于模型命令管理的工具。 使用simout的仿真结果记录在相应的变量中,并使用绘图库中的交互式图形进行可视化。
