组态注意:
确保当调用通信块 FC5/50 "AG SEND/AG_LSEND" 和FC6/60 "AG_RCV/AG_LRCV" 时,在输入参数 SEND和 RECV 只能使用ANY指针类型,传输单位为字节。
例如,如果想通过 FC5 "AG_SEND" 传送一个数据类型为"REAL"的变量,并在 "SEND"参数声明为ANY 指针类型:
- P#DB1.DBX0.0 Byte 4,
在此ANY 指针类型的转换是在 STEP 7 中通过符号表地址,如. 在指定的数据块 (DB) 中ANY 指针指向数据类型为 REAL 。 数据类型BYTE, WORD和 DWORD 都允许在输入参数"SEND"上使用 ANY 指针类型。然而,在例子中数据类型是 REAL ,即,此数据的传送是错误的, FC5的输出参数 ERROR 将被置位。
图. 01: ANY指针的符号名
解决方法:
增大输入参数"SEND"中ANY指针的值,至少一个字节,防止在 ANY 指针类型显示符号名。
参数声明如下::
- P#DB1.DBX0.0 Byte 5
图. 02: 带有更长数据的ANY 指针将被发送
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc336148.html