在STEP 7 (TIA Portal) 中使用指令“READ_DBL”和“WRIT_DBL”访问已优化的DB时要注意哪些属性?

描述
在STEP 7 (TIA Portal) 中,当执行扩展指令 “READ_DBL” 和 “WRIT_DBL” 时可能会在 “RET_VAL” 参数得到出错信息,它表示源 DB 和目标 DB 的数据类型是不同的,而尽管在两个数据块中使用的是相同的数据类型。在装载存储器(微存储卡)和工作存储器之间传输数据时,在以下情况会出现该出错信息。

  • 当生成两个数据块时组态为 “已优化” 的块访问,且
  • 在两个数据块中声明了具有相同元素数目的相同结构变量。例如数组类型 Array[1..10],且
  • 编程使用同一类型的相同数目的变量

在优化的数据块访问的情况下,对数据结构的解释是不同的。如果创建数据块时用 “标准-与 S7-300/400 兼容” 组态块访问,那么上述情况不会发生。

在STEP 7 (TIA Portal) 中使用指令“READ_DBL”和“WRIT_DBL”访问已优化的DB时要注意哪些属性?
图 01

解决方法
创建一种 PLC 数据类型,并在每一个块访问已优化的数据块访问中使用它。

在STEP 7 (TIA Portal) 中使用指令“READ_DBL”和“WRIT_DBL”访问已优化的DB时要注意哪些属性?
图 02

数据备份注意事项
运行期间使用 “WRIT_DBL” 指令可以覆盖启动值。 CPU 从 STOP 到 RUN 的过程中,通过这种方式可以进行数据备份,而无需对 DB 块的变量做保持性声明。允许运行期间创建备份数据,且降低S7-1500 CPU 的保持性变量的使用数量。

  • 使用类型相同的数据块(不管该数据块是否在装载存储器中),对 “WRIT_DBL” 指令的参数 “DSTBLK”(目标) 和 “SRCBLK” (源) 进行设置。
  • 使用 “s显示监视值快照” 功能,备份 CPU 中的当前监视值。
  • 当 CPU 从 STOP 到 RUN 后,如果当前值仍是有效的,可将它备份成启动值。

创建环境
本 FAQ 的图片用 STEP 7 (TIA Portal) V13+Upd 2 创建。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc325779.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论