两台PLC之间的通讯问题

2020-12-01

问题:请阅读下列例子
1.首先要建立一个项目,对两个PLC的MPI网络组态。假设A站和B站的MPI地址分别为2和3。
2.使用;SFC65;;“X_SEND”;和;SFC66;“X_RCV”;发送和接收数据。
3.发送程序可以放于循环中断组织块OB35中,接收程序可以放于循环组织块OB1中。

例:

说明1:在A站(2号站)的PLC的定时循环中断组织块OB35中编写发送程序,把A站中的MB20~MB24发送到B站(3号站)中的MB30~MB34中。

说明2:在OB1中编写接收程序,把A站(2号站)发送到的数据存入B站(3号站)的MB30~MB34中。

按题给的能否实际编一下。

还有如果像题一样,是不是B站的MB30~MB34变成了A站的MB20~MB24?不是B站的MB30~MB34了,而A站的MB20~MB24还依旧是A站的MB20~MB24.

佳答案

1、在A站(2号站)的PLC的定时循环中断组织块OB35中编写发送程序,把A站中的MB20~MB24发送到B站(3号站)。程序如下
CALL;;"X_SEND";;;;;;;;;;;;;;;;//SFC65
REQ;;;;:=TRUE;;;;;;;;;;;;;;;;;;;;//使能端
CONT;;;:=TRUE;;;;;;;;;;;;;;;;;;//通讯资源,=TRUE时,完成后保持连接,=FALSE时,不保持
DEST_ID:=W#16#3;;;;;;;;;;;;//对方;PLC2;的;MPI;地址
REQ_ID;:=DW#16#1;;;;;;;;;;//ID号
SD;;;;;:=P#M;20.0;BYTE;5;//2号站要发送的数据区指针,MPI通讯一次多可发送76个字节。
RET_VAL:=MW2;;;;;;;;;;;;;;;;//状态返回字
BUSY;;;:=M1.0;;;;;;;;;;;;;;;;;;;;;//当前通讯有没有完成
2、在B站的OB1中编写接收程序,把A站(2号站)发送到的数据存入B站(3号站)的MB30~MB34中。程序如下
CALL;;"X_RCV";;;;;;;;;;;;;;;;;;;//SFC66
EN_DT;;:=TRUE;;;;;;;;;;;;;;;;;;//使能接收
RET_VAL:=MW2;;;;;;;;;;;;;;;;;//返回的状态字
REQ_ID;:=MD4;;;;;;;;;;;;;;;;;;;;//ID号
NDA;;;;:=M1.1;;;;;;;;;;;;;;;;;;;;;;;//接收完成一次,本位有一个扫描周期的高电平
RD;;;;;:=P#M;30.0;BYTE;5;;//3号站,将接收到的数据放到这个指定的数据区
3、参考资料可以参考;RENHQ大侠的,他提供的已经很全了

上一篇

下一篇

坤玛机电-工业机电产品一站式采购中心-    西门子PLC    常见问题    两台PLC之间的通讯问题

坤玛机电,专业致力于提供齐全优质的全球工业机电配件、机电备品备件产品及本地化技术响应的服务商。

借助互联网技术帮助中小企业降本增效,促进产业从业人员增加收入,为产业赋能的平台。

机电维修、更新,选择坤玛易采小程序,一键询价成交还可获丰厚佣金。

立即咨询

坤玛机电  PLC控制柜生产厂家

 

专业设计制作电气控制柜

 

低压成套配电设备及自动化系统集成

在线询价
  • 回到顶部
  • 88888888
  • QQ客服
  • 扫码添加微信