持久性变量

1).变量持久性影响因素

持久性变量持久性影响因素除了固有影响因素“初始值复位”外,还主要包括3种:增加、修改、删除POU或者全局变量表定义的持久性变量,在持久性变量表执行命令【重新排序并清除差异】和【添加所有实例路径】,编译菜单命令【清除全部】。这三种方式主要是影响了当前工程中持久性变量表中变量的地址和PLC中持久性变量地址的一致性,在执行这些操作或者登陆下载时会弹出如下图界面:

如果选择“是”,这时所有的持久性变量会被初始化,如果选择“否”,会用PLC中持久性变量初始化当前工程中持久性变量,由于地址出现了偏差,可能造成持久性变量值出现错位。所以为了保持持久性变量特性,需要作出特殊处理。

注意:在持久性变量表中不要直接修改、增加中文变量,通过添加“实例变量”命令来添加持久性变量。如果在持久性变量表中修改了变量,编译报错有两种处理方式:

(1)通过菜单“清除全部”命令解决。

(2)在持久性变量表通过右键菜单命令“清除差异”来解决

2).保证持久性变量不受影响的一种处理方案

为了保持持久性变量的持久性,需要辅助工具来处理,这个辅助工具就是配方。具体过程为:

2.1) 持久性变量表变量添加到配方定义中

在登录后,在持久性变量表编辑界面,鼠标右键【保存当前值到配方】,这时会生成配方管理器和配方,如下图所示:

如果持久性变量表中声明了POU中或全局变量表中的持久性变量,此过程会弹出错误提示,因为这些变量在登录后的持久性变量表中不会显示,暂时不用管此问题,然后再配方定义中出现如下界面:

这时在配方中把持久性变量表中直接定义的变量导入到配方定义中,如上图,在POU中定义和全局变量表中定义的需要手动添加到配方定义中,参考样例如下图:

2.2) 读取持久性变量到配方中

在有可能影响持久性变量持久性操作前,如修改POU中或者全局变量表中的持久性变量,具体见变量持久性影响因素需要把持久性变量读取到配方中,以备操作完成后,从配方中恢复持久性变量数据。在读取配方数据前,最好停止PLC运行。读取持久性变量值到配方如下图所示:

2.3) 从配方中恢复持久性变量值

对持久性变量影响的操作完成后,登录PLC,把配方值写入到持久性变量中,在操作之前,最好停止PLC运行。写入配方值到持久性变量如下图:

这样持久性变量值就恢复过来。

2.4) 此处理方案的局限性

在写入配方和读取配方之前最好停止PLC运行,这样读取配方值时持久性变量值不变化,恢复的持久性变量值和配方值一致,并且在执行影响持久性变量值操作过程中,也不要运行PLC,直至恢复持久性变量值后再运行PLC

3).持续变量至少要在程序中使用一个才能加到持续变量表中

Copyright © www.yanjuntech.cn 2018-2025 all right reserved,powered by Gitbook该文件修订时间: 2018-10-21 09:46:05

results matching ""

    No results matching ""