回复:有奖【微分享】“说说我用过的功能块”

信仰

  • 帖子

    1
  • 精华

    1
  • 被关注

    0

论坛等级:游民

注册时间:2012-03-25

普通 普通 如何晋级?

发布于 2014-03-28 13:02:16

108楼

用过OPEN IE通讯的大侠们,有没有发现:当要与多台设备同时进行通讯时候,每个通讯都调用FB63、FB64、FB65、FB66时候很不方便。针对这个问题,本人用SCL把FB63、FB64、FB65、FB66做了个集成,生产一个功能块FB100,以后每个通讯只需要调用这一个功能块就可以了,供大家参考提议,现此功能块已经在项目中实用(用317CPU同时和8个机器人以太网通讯)。以下为SCL原文件:
FUNCTION_BLOCK FB100
VAR_INPUT
CON_DATA:ANY;
SEND_DATA:ANY;
RCV_DATA:ANY;
CON_REQ:BOOL;
SEND_REQ:BOOL;
RCV_REQ:BOOL;
DISCON_REQ:BOOL;
LENG_SEND:INT;
LENG_RCV:INT;
ID:WORD;
END_VAR
VAR_OUTPUT
SEND_DONE:BOOL;
STATUS:WORD;
END_VAR
VAR
TCON:FB65;
TSEND:FB63;
TRCV:FB64;
TDISCON:FB66;
END_VAR
BEGIN
TCON(REQ :=CON_REQ
,ID :=ID
,CONNECT :=CON_DATA
);
TSEND(REQ :=SEND_REQ
,ID :=ID
,LEN :=LENG_SEND
,DATA :=SEND_DATA
);
SEND_DONE:=TSEND.DONE;
STATUS:= TSEND.STATUS;
TRCV(EN_R :=RCV_REQ
,ID :=ID
,LEN :=LENG_RCV
,DATA :=RCV_DATA
);
TDISCON(REQ :=DISCON_REQ
,ID :=ID
);
END_FUNCTION_BLOCK
编译前,请先在程序里插入FB63/64/65/66,接下来会发现OPENIE通讯如此方便!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54620条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。