检测AT
直接地址上的声明
理由在代码中使用直接地址是有问题的,因为地址会出现在多个位置:首先是在控制器配置中定义物理对象到地址的分配,其次是在程序中为这些地址分配变量。如果由于配置更改而重新定位了地址,那么就必须将变量重新分配到程序中完全不同位置的地址上。这会导致错误,并降低代码的可读性和可维护性。因此,最好在设备编辑器的 I/O 映射中执行所有分配。
重要性:高
PLCopen 规则:N1 / CP1
请注意:我们建议您仅在设备编辑器的“I/O 映射” 选项卡中使用直接地址。
示例
PROGRAM PLC_PRG VAR xVar1 AT %IX0.0 : BOOL; byVar1 AT %IB1 : BYTE; xVar2 AT %QX0.0 : BOOL; END_VAR --> SA0048: Declaration uses direct address '%IX0.0' --> SA0048: Declaration uses direct address '%IB1 --> SA0048: Declaration uses direct address '%QX0.0'