Engee 文档
Notebook

采用循环命令控制的系数-速度转换器

转换器获取系数并将其转换为速度。

转换器的数学模型是代数方程,其中位置范围K=0到1对应
到速度范围v=从45到95公里/小时。
总速度为
v=50x+45,下图显示了实现的模型本身。

image.png

接下来,我们将连接启动模型的辅助函数,并为其声明初始状态。

In [ ]:
function run_model( name_model)
    
    Path = (@__DIR__) * "/" * name_model * ".engee"
    
    if name_model in [m.name for m in engee.get_all_models()] # Проверка условия загрузки модели в ядро
        model = engee.open( name_model ) # Открыть модель
        model_output = engee.run( model, verbose=true ); # Запустить модель
    else
        model = engee.load( Path, force=true ) # Загрузить модель
        model_output = engee.run( model, verbose=true ); # Запустить модель
        engee.close( name_model, force=true ); # Закрыть модель
    end
    sleep(5)
    return model_output
end
Out[0]:
run_model (generic function with 1 method)

启动条件将设置如下:

In [ ]:
K_arr = 0:0.2:1;

让我们在改变r值的循环中运行模型。

In [ ]:
v = zeros(size(K_arr,1),1)
K = 0.0;
for i in 1:size(K_arr,1)  
    K = K_arr[i]
    run_model("setspeed") # Запуск модели.
    V = collect(simout["setspeed/V"]);
    v[i,:] = V.value
end 
Building...
Progress 100%
Building...
Progress 100%
Building...
Progress 100%
Building...
Progress 100%
Building...
Progress 100%
Building...
Progress 100%

让我们显示和比较获得的结果,并绘制最终的速度和输入系数。

In [ ]:
plot(K_arr,v)
Out[0]:

结论

根据模型执行的结果,我们看到随着系数的增加,速度也相应增加。