恭喜,你发布的帖子
发布于 2021-11-10 20:19:11
13楼
个人觉得有这几个建议比较好:
1、AL002建议:定义从0到常数值的数组边界
数组边界从0开始,以一个符号常量作为数组的上边界结束。
? 对于块内部的数组,必须在块接口的本地数据中定义常量
? 对于全局数据块和PLC数据类型中的数组,用作上限的常数必须在PLC变量表中定义
? 常量以及用于访问数组元素的索引的数据类型,从性能方面的原因应使用DINT
示例:
BUFFER_UPPER_LIMIT DINT 10
diagnostics Array[0.. BUFFER_UPPER_LIMIT] of typeDiagnostics
说明: 数组索引以0开头有几个好处:(1)某些系统指令和数学运算是基于零开始工作的,例如模函数,通过这种方式,索引可以直接用于此类函数而无需进行任何调整。(2)WinCC(Comfort,Advanced,Professional and Unified)可以处理脚本中基于零的数组。
在数组边界不能以零为基础的情况下,则应将符号常量用于上限和下限。
2、DA008规则:输出参数只写一次
每个执行周期只写入一次输出变量和返回值。 这应在可能的情况下,在函数块的末端集中进行。
不允许读取自己的输出参数或返回值,必须使用临时或静态变量。
说明: 这样可以确保所有输出值的一致性。
请填写推广理由:
分享
只看
楼主