CODESYS Development System
保护应用程序 借助特定于 PLC 的许可证管理及其在应用程序对象属性中的设置,您可以实现引导应用程序的专有技术保护和复制保护。下载代码和启动应用程序可以加密和签名。 用证书加密 要求:您有一个项目,其中包含要作为加密启动应用程序加载到控制器上的应用程序。您拥有此控制器的证书,用于加密计算机上 Windows 证书存储中的应用程序。注意:如果要将应用程序加载到不同的控制器上,则需要为每个控制器提供相
CODESYS Development System
使用持久变量保存数据 当应用程序重新加载、下载、热启动或冷启动后,持久变量保持其值。 控制器上需要一个特殊的非易失性存储区来延长使用寿命,例如 NVRAM 或 UPS。将数据备份到此类存储不需要任何额外的时间,这比使用 Persistence Manager 保留数据更具优势。如果控制器不提供硬件支持,则数据通常存储在文件中。如果您正确关闭控制器,数据将被保留。但是,如果发生电源故障或“拔掉插头”
CODESYS Development System
使用保留变量获取数据 保留变量在热启动后保留其值。但是,具有持久性变量的价值保留程度更高。 控制器上需要一个特殊的非易失性存储区来延长使用寿命,例如 NVRAM 或 UPS。将保留变量保存在这样的内存中不需要任何额外的时间,这比使用 Persistence Manager 保留数据具有优势。如果控制器不提供硬件支持,则数据通常存储在文件中。如果您正确关闭控制器,数据将被保留。但是,如果发生电源故障
CODESYS Development System
使用 Persistence Manager 变量保留数据 在里面 持久性管理器 在 Application Composer 中,变量是持久管理的。的功能 持久性管理器 不需要控制器上的任何特殊内存来接收值和数据。 宣言 Persistence Manager 中管理的变量位于带有 pragma 的声明中 {attribute 'ac_persist'} 标记。 pragma 导致如此归因的变量
CODESYS Development System
使用食谱获取数据 变量在配方管理器中持续管理。配方管理器不需要控制器上的任何特殊内存来接收值和数据。 宣言 配方定义由一组具有值的变量组成,并在对象中定义 食谱经理 创建和编辑并保存为文件。 功能性 您可以在多个配方中包含一个变量,每个配方具有不同的值。 在在线模式下,您可以从控制器中读取变量的实际值并将其保存为配方值(设定值)。 你可以使用图书馆 Recipe Management 以编程方式实
CODESYS Development System
声明VAR PERSISTENT变量 在下文中,您将在持久变量列表和 POU 中声明持久变量。 要求:一个项目是打开的并且包含一个程序 POU。在选项中(菜单命令 工具 → 选项 ) 你在类别中 声明编辑 文本视图的选项被激活。 使用菜单命令添加贴布绣对象 项目 → 添加对象 物体 持久变量 添加。 CODESYS 添加持久变量列表 持久变量 在设备树中的应用程序对象下,编辑器打开。 在记事本之间
CODESYS Development System
将持久变量列表的值保存在配方中 要求:一个项目是打开的,并且在一个应用程序对象下有一个带有持久变量声明的持久变量列表。 双击设备树中的控制器并选择选项卡 沟通 . 选择您的网关并单击按钮 浏览网络 . 您的设备在网关树视图中以粗体显示。 选择您的设备并单击按钮 设置活动路径 . 在设备树中选择您的应用程序对象并选择上下文菜单命令 设置活动应用程序 . 应用程序对象以粗体显示。 选择菜单命令 在线
CODESYS Development System
使用构建块进行隐式检查 CODESYS 提供实现隐式监控功能的特殊 POU。这些函数在运行时检查数组或子范围类型的边界、指针地址的有效性或被零除。 选择对象 应用 在设备树中。 选择命令 项目 → 添加对象 → POU 进行隐式检查 . 出现对话框 为隐式检查添加 POU . 激活所需的功能。 点击按钮 添加 . 选定的 POU 显示在 应用 插入设备树。 在编辑器中打开 POU。 根据您的要求调
CODESYS Development System
面向对象编程 CODESYS 支持使用功能块进行面向对象编程,并为此提供以下功能和对象: 方法 接口 特性 遗产 方法调用、虚函数调用 将功能块定义为其他功能块的扩展 本节内容如下 :
CODESYS Development System
扩展功能块 一般的 功能块的扩展基于面向对象编程中的继承概念。为此,派生功能块“扩展”基本功能块,因此除了其自身的属性外,还接收基本功能块的属性。 功能块的扩展意味着: 派生功能块包含基本功能块定义的所有数据和方法。您可以在任何上下文中使用基本功能块的实例 CODESYS 需要一个基本功能块类型的功能块。 派生功能模块可以覆盖您在基本功能模块中定义的方法。这意味着: 派生功能块可以定义与基本功能块