查看: 380|回复: 4

S7-200与S7-300的MPI通信 2013-6-7 15:44| 编辑:电工电气学习网| 查看: 22619| 评论: 0

 火... [复制链接]

255

主题

150

回帖

1323

积分

管理员

积分
1323
发表于 2026-8-1 22:15:06 | 显示全部楼层 |阅读模式
MPI(多点接口)是西门子内部使用的通信协议,物理层为RS-485。通过MPI网络的S7基本通信,S7-300可以用系统功能X_GET和X_PUT来读、写S7-200的存储区,最多可读、写76字节的数据,S7-200不需要编写通信程序。其优点是使用PLC自带的RS-485通信接口,不需要增加通信用的硬件,编程简单,容易实现。
1.通信参数的设置
用系统块设置CPU 224在MPI网络中的站地址为3。为了方便下载和监控,将S7-200、S7-300和计算机的通信速率均设置为19.2 kbit/s。需要将系统块下载到CPU,设置的参数才会起作用。
组态时将CPU 315-2DP连接到MPI网络上,设置MPI站地址为2。将设置的参数下载到CPU 315-2DP。
2.CPU 315-2DP读写CPU 224的V区的编程#p#分页标题#e#

在CPU 315-2DP的OB35中调用SFC 68“X_PUT”,将本站的DB 1的76字节数据发送到通信伙伴的DB 1的DBB100~DBB175,即CPU 224的VB100~VB175。调用SFC 67“X_GET”,读取CPU 224的VB200~VB275(即DB 1的DBB200~DBB275)中的数据,将它们存放到DB 2。执行OB35的时间间隔为默认的100ms。
    下面是CPU 315-2DP的循环中断组织块OB35的程序:
程序段 1:将本站的DB1中的数据写入CPU 224的#p#分页标题#e#V区
CALL  "X_PUT"                             
  REQ           :=TRUE                     
  CONT         :=TRUE                        
  DEST_ID    :=W#16#3                                //S7-200的MPI地址
  VAR_ADDR:=P#DB1.DBX100.0 BYTE 76       //S7-200要写入数据的VB100~VB175
  SD             :=P#DB1.DBX0.0 BYTE 76            //存放本站要发送的数据的地址区
  RET_VAL   :=MW2                     
  BUSY         :=M0.1                        
程序段 2:读取CPU 224的V区的数据,保存到本站的DB 2
CALL  "X_GET"                              
  REQ             :=TRUE                     
  CONT          :=TRUE                     
  DEST_ID     :=W#16#3                     
#p#分页标题#e#  VAR_ADDR:= P#DB1.DBX200.0 BYTE 76      //要读取S7-200的VB200~VB275
  RET_VAL    :=MW4                     
  BUSY          :=M0.3                        
  RD              := P#DB2.DBX0.0 BYTE 76           //保存读取的数据的地址区
为了验证通信是否实现,在初始化程序OB100将数据块DB 1的76字节数据发送区的字预置为W#16#3333,将DB 2的76字节数据接收区复位为0。
3.CPU 224的程序

为了验证通信是否实现,在CPU 224的OB1中,在第一个扫描周期将发送数据区VW204~VW274预置为16#2222,将接收数据区VW100~VW174清零。
LD     SM0.1                                       
FILL     #p#分页标题#e#16#2222, VW204, 38                  
FILL     16#0, VW100, 38                     
可以用CPU 315-2DP的变量表和CPU 224的状态表来监视参与通信的存储区。
    我第1次做实验的时候,很顺利地一下就成功了。总的感觉是只要组态和编程没有问题,通信很容易实现。





回复

使用道具 举报

0

主题

124

回帖

374

积分

中级会员

积分
374
发表于 2026-8-11 05:39:31 | 显示全部楼层
水个经验,楼主加油,支持你~
回复

使用道具 举报

0

主题

128

回帖

386

积分

中级会员

积分
386
发表于 2026-8-12 20:18:52 | 显示全部楼层
来凑个热闹,增加点人气~
回复

使用道具 举报

0

主题

179

回帖

539

积分

高级会员

积分
539
发表于 2026-9-13 12:22:05 | 显示全部楼层
赞同 + 10086,没毛病,完全没毛病
回复

使用道具 举报

0

主题

64

回帖

193

积分

注册会员

积分
193
发表于 2026-9-22 18:29:04 | 显示全部楼层
说得对!狠狠赞同,没毛病~
回复

使用道具 举报

关注公众号
Archiver|手机版|小黑屋|工控学习网

相关侵权、举报、投诉及建议等,请发 E-mail:gkket@qq.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|苏ICP备2026023666号-3|苏公网安备32131102000976号

在本版发帖
关注公众号
QQ客服返回顶部