PCS 7环境中使用BSEND、BRCV功能块时,您需要注意什么?

BSEND/BRCV通讯块时异步运行,处理一个作业可能会持续数个OB周期。因此不能使用时钟触发输入“REQ”,而只能在前一个作业完成后(成功或出错)再次触发。

不等待正在激活的作业完成后再次调用功能块,会导致通讯超载。

此外,推荐出错时(Error 位 = 1)保存状态字用于后续诊断。Error = 0时 状态字Status = 11 (十进制)。

SFB/FB 12 "BSEND" 数据一致性
为确保数据一致性,在当前发送程序结束之前,不要再次写发送区域SD_1的使用部分。DONE变为1时发送结束。

SFB/FB 13 "BRCV"数据一致性
如果您执行以下操作,则数据接收一致:
在控制输入“EN_R” = 1 再次调用块之前,评估接收区域“RD_1”的使用部分。

更多信息,请参考手册"SIMATIC System Software for S7-300/400 System and Standard Functions - Volume 1/2" ,条目 109751826.

示例
以下示例是在PCS 7环境中如何实现基于作业触发输入“REQ”,并且保存相应的错误位和状态字。

PCS 7环境中使用BSEND、BRCV功能块时,您需要注意什么?
图. 01
PCS 7环境中使用BSEND、BRCV功能块时,您需要注意什么?
图. 02

更多信息
更多信息,请参考通讯块在线帮助和以下条目:
Notes on using the system function blocks SFB12 and SFB13 (BSEND/BRCV)
How do you program communication blocks FB12 "BSEND" and FB13 "BRCV" for data exchange in the S7 program of an S7-300 CPU?

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

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

相关推荐

发表回复

登录后才能评论