1 功能介绍 S7-1500 产品系列的 CPU 支持在运行期间扩展函数块的接口,或者增加全局数据块的变量。此过程无需将 CPU 设置为 STOP 模式,既可下载已修改的块,此时也不会影响已经加载变量的过程值。这是一种简单的程序更改实施方式,这一加载过程(无需重新初始化的加载)不会对受控对象造成负面影响。 原理:被激活为“优化块访问”(Optimiz ed block access)属性的函数块或者数据块已经默认包含一个预留存储区间,该预留区间在初期并未使用,可用于后续的函数块接口的扩展或者数据块变量的增加。预留功能会占用更多的存储区。如果希望已经带有存储区预留的程序块用于下载无需重新初始化功能,那么新声明的所有变量都将保存到存储器预留的区域中,所以所有新增变量的大小必须小于预留的存储区的大小。执行无需重新初始化的下载不会影响任何已经加载的变量或对运行造成不利影响。 2 功能实现 2.1 要求 要实现下载函数块或者数据块无需重新初始化功能,需要满足以下条件: 1) 项目是博途V12 版本创建的 2) 使用 S7-1500 产品系列的 CPU 3) 函数块在 LAD、FBD、STL、或 SCL 中创建 4) 块由用户创建,即这些块不能是博途 V12 安装后自身带有的块 5)这些块设置为优化访问方式 2.2 应用举例 下面以DB 为例,来说明怎样实现下载无需重新初始化功能。 序号 操作 图示 1. 首先打开博途 V12 软件,切换至项目视图,添加一款S7-1500CPU。 2. 添加一个新的数据块,数据块名称和编号使用缺省值即可。 3. 默认情况下,数据块已经被设置为优化的块访问方式,如果不是,手动设置为优化的块访问方式。 4. 默认预留存储空间大小为100 字节,可以修改这一存储预留区域以适应用户的需求,最大可以设置为2M。这部分预留存储空间由装载存储器提供。 保持存储区中默认情况下没有设置预留区域,这是因为保持型存储区由 CPU 提供,这一存储区是有限的(例如CPU1516 为484000 个字节)。如果增 加的变量需要设置为保持属性,那么就需要设置预留可保持性存储器的大小。 5. 接下来在在数据块中建立变量,本例中建立以下三个变量“Variable1”、“Variable2”和“Variable3”,数据类型分别为Bool,Real和 Int。 6. 在OB1 中对这些变量赋值,此赋值过程为使用上升沿与跳转指令赋值,只持续一个周期 7. 在线监视赋值结果。 8. 点击下载无需初始化功能图标,弹出提示对话框,点击确定。 9. 注意:...