基于CODESYS的配方管理

本文讨论什么是配方以及配方管理,如何使用CODESYS编程进行配方管理。

配方及配方管理

对于一个十字路口的交通信号灯控制系统,信号灯的开启时间需要根据时段不同而设置不同值,早晚高峰、平时周末、特殊时间点都需要不同的开启时间。
对于控制系统的PLC程序来说,如果需要在不同时间段通过更改程序来修改信号灯的开启时间,显然是非常麻烦的,如果能将信号灯的开启时间保存成配方的形式,只是在相应的时间段加载对应的开启时间,就会大大减少工作量。
这种将一定条件下很少变化的变量整理成一种专门的内容就是配方(Recipe),而对配方进行设置、修改、保存、加载等操作就是配方管理(Recipe Management),PLC程序在不同的时间段加载等操作就是通过编程来实现配方管理。

基于CODESYS配方管理

配方管理器

鼠标右击设备的“Application”节点,弹出“添加对象”选择列表,然后选择“配方管理”选项,就会在“Application”节点下增加“配方管理”项。

配方管理器设置

在添加了配方管理器后,双击“配方管理器”可以进行关于“存储”和“常规”的一些基本设置:

  • 存储:包括存储类型,文件路径、文件扩展名、配方变量限制;
  • 常规:保存配方、加载配方、写配方的一些设置或限制。

配方使用

右击“配方管理器”,添加对象,选择配方,创建名称为“RecDef1”的配方:在配方中输入几个变量,并且添加名称、最小最大值等。

在应用程序中加载Recipe_Management.libray库,通过功能块 RecipeManCommands 的方法,可处理配方(创建、读取、写入、保存、加载、删除)。


Recipe_Management配方管理库包含了若干功能块,以下是该库所包含的常用功能块及其说明:

功能块 说明
ReadRecipe 从配方中读出变量值
WriteRecipe 向配方中写入变量
SaveRecipe 将配方存入默认配方文件中
LoadRecipe 从默认配方文件加载配方
CreateRecipe 创建新配方
DeleteRecipe 删除配方定义中的已有配方

posted on 2023-08-19 08:11  MichaelChen-99  阅读(2483)  评论(0编辑  收藏  举报

导航