当前位置:文档之家› MPI 通讯

MPI 通讯

MPI 通讯

2.1 MPI概述

MPI(Multipoint Interface)通讯是当通讯速率要求不高,通讯数据量不大时,可以采用的一种简单经济的通讯方式。MPI通讯可使用PLC S7-200/300/400、操作面板TP/OP及上位机MPI/PROFIBUS通讯卡,如CP5512/ CP5611/CP5613等进行数据交换。MPI的通讯速率为19.2Kbit/s~12Mbit/s,通常缺省设置为187.5Kbit/s,只有能够设置为PROFIBUS接口的MPI 接口才支持12Mbit/s的通讯速率。MPI网络最多可以连接32个节点,最大通讯距离为50m,但是可以通过中继器来扩展长度。

2.2 MPI网络

2.2.1 MPI网络结构

西门子PLC S7-200/300/400 CPU 上的RS485接口不仅是编程接口,同时也是一个MPI的通讯接口,在没有额外硬件投资的状况下,可以实现PG/OP、全局数据通讯以及少量数据交换的S7通讯等通讯功能 .其网络上的节点通常包括S7 PLC、TP/OP、PG/PC、智能型ET200S 以及RS485中继器等网络元器件,其网络结构可配置为如下图2-1所示。

图2-1 MPI网络结构

1. 通过中继器来扩展MPI网络长度。

MPI最大通讯距离为50m,也可以使用RS485中继器进行扩展,扩展的方式有两种。

第一种,两个站点之间没有其它站,如图2-2所示。

图2-2 通过RS485中继器扩展MPI网络

S7站到中继器距离最大为50m,两个中继器之间的距离最大为1000m,最多可以连接10个中继器,所以两个站之间的最大距离为9100m。

第二种,如果在两个中继器中间也有MPI站,那么每个中继器只能扩展50m。

MPI接口为RS485接口,需要使用PROFIBUS总线连接器(并带有终端电阻)和PROFIBUS 电缆(见图2-3),如果使用其它电缆和接头,则不能保证通讯质量和距离。在MPI网络上最多可以有32个站,但当使用中继器来扩展网络时,中继器也占节点数。

图2-3 标准的PROFIBUS电缆和总线连接器

连接方法见图2-4所示。

图2-4 将PROFIBUS电缆与连接器相连

2.3 设置MPI接口

2.3.1设置MPI参数

可分为两部分:PLC侧和PC侧MPI口的参数设置。

1. PLC侧参数设置

在硬件组态时可通过点击图2-5中的”Properties”按钮来设置CPU的MPI属性,包括地址及通讯速率,具体操作见图2-5所示。

图2-5 MPI网络参数设置

建议:在通常应用中不要改变MPI通讯速率。请注意在整个MPI网络中通讯速率

必须保持一致,且MPI站地址不能冲突。

2. PC侧参数设置

在PC侧同样也要设置MPI参数,在“控制面板” “Set PG/PC Interface”中选择所用的编程卡,访问点选择“S7_ONLINE”,例如用PC Adapter 作为编程卡如下图2-6所示。

图2-6 在PG/PC中配置MPI编程接口

设置完成后,将STEP 7中的组态信息下载到CPU中。

2.3.2 PC侧的MPI通讯卡的类型

1. PC Adapter(PC 适配器)-一端连接PC机的RS232口或USB口,另一端连接CPU的MPI接口,它没有网络诊断功能,通讯速率最高为1.5Mbit/s,价格较低。

2. CP5511-PCMCIA TYPE II卡,用于笔记本电脑编程和通讯,它具有网络诊断功能,通讯速率最高可达12Mbit/s,价格相对较高。

3. CP5512-PCMCIA TYPE II CardBus (32位) 卡,用于笔记本电脑编程和通讯,具有网络诊断功能,通讯速率最高可达12Mbit/s,价格相对较高。

4. CP5611-PCI 卡,用于台式电脑编程和通讯,此卡具有网络诊断功能,通讯速率最高可达12Mbit/s,价格适中。

5.CP5613-(替代原CP5412卡) PCI 卡,用于台式电脑编程和通讯,此卡具有网络诊断功能,通讯速率最高可达12Mbit/s,此卡带有处理器,可保持大数据量通讯的稳定性,一般用于PROFIBUS网络,同时也具有MPI功能,此卡价格相对最高。

了解上述功能后,可以很容易选择适合自己应用的通讯卡,在CP通讯卡的代码中,5代表PCMCIA接口,数字中6 代表PCI总线,数字中3 代表有处理器。

2.3.3 利用电话网远程编程

除了本地连接外,还可以利用电话网远程编程。硬件需要PG/PC及TS适配器(TS Adapter),软件需要STEP 7和TeleService软件,具体网络结构如图2-7所示。

图2-7 利用电话网远程编程的网络配置

1. 组态编程器侧MPI接口

在“控制面板”中点击“Set PG/PC Interface”,访问点选择:S7ONLINE(STEP 7)”并指向”TS Adapter”,TS Adapter属性选择如图2-6:选择通讯口及传输速率,便于组态TS Adapter,在

(在STEP 7 V5.2以上版本)

拨号时“Modem connection”会被自动选择。

图2-8 TS Adapter属性设置

2. 组态TS Adapter的参数

(1). 在”Set PG/PC Interface”中选择“Direct connection”,TS Adapter一端需要一根RS232电缆连接到PC机的串口上。

(2). TS Adapter 另一端MPI接口连接到PLC的MPI口,可以使CPU给TS Adapter 供电。点击“Start”->“SIMA TIC”->“STEP 7”->“TeleService”进入组态画面。在画面左边新建一个Folder,如”test”,再插入“Plant”,加入远端的电话号码。如图2-9所示,先在左边画面

插入“test”,然后在右边画面中新建“MY plant”,远端电话号码为010-

64721888,

点击图2-9中的“MY plant”属性,可以修改项目名称和电话号码,双击项目名称选择编程器

侧连接的调制解调器(见图2-10)

对于电话拨号访问,考虑到系统的安全性,有三种方法可以避免未授权访问:?断开与PLC MPI口连接的TS Adapter。

?在TS Adapter中设定用户名和密码。

?加入回拨功能。

用户拨通后,TS Adapter验证用户名和密码,然后自动断开连接,回拨用户指定的电话号码。即若用户想修改程序,验证用户名和密码后,还必须使用TS Adapter 指定的电话号码拨出,以确保系统的安全性。

后两种方法必须用TeleService进行设置。具体方法是:连接TS Adapter,点击“Options”和“Assign adapter parameters”进入图2-11组态画面。

图2-11 TeleService 配置-设置TS Adapter参数

站地址如图2-12所示。

设置TS Adapter的MPI

图2-12 设置TS Adapter的MPI站地址

(3). 组态完成以后,把编程器和TS Adapter连到电话网上,选择项目名称,点击“Connection”->“Establish”或按快捷键“F7”就可以建立拨号连接进行远程编程访问,如图2-13所示。

图2-13 TeleService 配置-建立连接

新版本的TS Adapter还支持PLC站之间的拨号通讯,PLC调用TeleService功能块FB47拨通后调用相关的MPI通讯块(SFC65/66,SFC67/68)进行通讯。

2.4 PLC-PLC之间通过MPI口通讯

通过MPI口实现PLC到PLC之间通讯有三种方式:全局数据包通讯方式,无组态连接通讯方式和组态连接通讯方式。

2.4.1全局数据包通讯方式

1.概述

对于PLC之间的数据交换,只需关心数据的发送区和接收区,全局数据包的通讯方式是在配置PLC硬件的过程中,组态所要通讯的PLC站之间的发送区和接收区,不需要任何程序处理,这种通讯方式只适合S7-300/400 PLC之间相互通讯。

下面将以举例的方式说明全局数据包通讯的具体方法和步骤。

2.网络配置图

图2-14 网络配置图

3. 硬件和软件需求

硬件:CPU 315-2 DP

CPU 416-2 DP

软件:STEP 7 V5.2 SP1

4.网络组态及参数设置

(1).建立MPI网络

在STEP 7中建立一个新项目,如MPI_GD,在此项目下插入两个PLC站分别为STA TION1- CPU416-2DP和STA TION2- CPU315-2DP,并分别插入CPU完成硬件组态,建立MPI网络并配置MPI的站地址和通讯速率,在本例中MPI的站地址分别设置为2号站和4号站,通讯速率为187.5Kbit/s。

(2). 组态数据的发送区和接收区

图2-15 进入全局组态画面

图2-16全局数据组态画面

(3). 插入所有需要通讯的CPU

双击”GD ID”右边的CPU栏选择需要通讯的CPU。CPU栏总共有15列,这就意味者最多有15个CPU能够参与通讯。在每个CPU栏底下填上数据的发送区和接收区,例如:CPU416-2DP 的发送区为DB1.DBB0~DB1.DBB21,可以填写为DB1.DBB0:22(其中“DB1.DBB0”表示起始地址,“22”表示长度),然后在菜单“Edit”下选择“Sender”设置为发送区。

而CPU315-2DP的接收区为DB1.DBB0~21,可以填写为DB1.DBB0:22。编译存盘后,把组态数据分别下载到相应CPU中,这样就可以进行数据通讯了。参考图2-17。

图2-17定义数据发送区和接收区

例子程序参见光盘,项目名为MPI_GD(路径名,文件名)。

(4). 多CPU通讯

多CPU通讯首先要了解GD ID参数,编译以后,每行通讯区都会有GD ID号,可以参考图2-18。

GD 1 .1.1

A B C

图2-18 参数定义

参数A:全局数据包的循环数

每个循环数表示和一个CPU通讯。例如S7-300 CPU通讯,两个发送与接收是一个循环,S7-400 CPU之间的三个发送与接收是一个循环。

支持的循环数与CPU有关,S7-300 CPU 最多为4个,即最多能和4个CPU通讯。S7-400 CPU 414-2 DP最多为8个,S7-400 CPU 416-2 DP最多为16个。

参数B:全局数据包的个数

表示一个循环有几个全局数据包,例如两个S7站相互通讯,一个循环有两个数据包。如图2-19。

图2-19全局数据包

参数C:一个数据包里的数据区数

参考图2-20,CPU315-2DP 发送4组数据到CPU416-2DP,4个数据区是一个数据包,从上面可以知道一个数据包最大为22个字节,在这种情况下每个额外的数据区占用两个字节,所以数据量最大为16个字节。

图2-20 一个数据包里的数据区数

对于A、B、C参数的介绍只是为了优化数据的接收区和发送区,减少CPU的通讯负载。简单应用可以不用考虑这些参数,GD ID编译后会自动生成。

(5). 通讯的诊断

在多个CPU通讯时,有时通讯会中断,可通过下述方法进行检测:

在编译完成后,在菜单“View”中分别点击“Scan Rates”和“GD Status”可以查看扫描系数和状态字。如图2-21所示:

图2-21查看全局数据扫描系数和状态字

SR:扫描频率系数。

如图2-21所示,SR1.1 为225,表示发送更新时间为225×CPU循环时间,SR范围为1~255。通讯中断的问题往往是因扫描时间设置过快引起,可根据需要适当增大。

GDS:每包数据的状态字(双字)。

表2-1根据状态字编写相应的错误处理程序

GST:所有GDS 相“OR”的结果。

用CP5511/5611等通讯卡可以首先诊断接线是否可靠,如上例中S7-300 MPI地址是2,S7-400MPI地址是4,用CP通讯卡连接到MPI网上(必须是带有有编程口的PROFIBUS总线连接器)可以直接读出2、4号站地址,具体方法是依次点击“控制面板”->“Set PG/PC Interface”->

所示。

0号站为CP5611的站地址,如果没有读出2,4号站地址,说明硬件连接或软件设置有问题,需进一步具体分析。

(6). 事件触发的数据传送

如果我们需要控制数据的发送与接收,如在某一事件或某一时刻,接收和发送所需要的数据,这时将用到事件触发的数据传送方式。这种通讯方式是通过调用CPU的系统功能SFC60 (GD_SND) 和SFC61 (GD_RCV) 来完成的,而且只支持S7-400 CPU,并且相应设置CPU的SR(扫描频率)为0,可参考下图全局数据的组态画面(图2-23)。

图2-23全局数据组态SR扫描频率

如上所述,编译存盘后下载到相应的CPU中,然后在S7-400中调用系统功能SFC60/61控制接收与发送。

具体程序代码为:

CIRCLE_ID,BLOCK_ID可参考GD 中的A,B,C参数。

例子中当M1.1为1时,CPU416接收CPU315的数据,将CPU315的MB20~MB29中的数

据接收到CPU416的MB40~MB49中。

当M1.0为1时,CPU416发送数据,将CPU416的MB60~MB69中的数据发送到CPU315 的MB60~MB69中。

例子程序参见光盘,项目名为MPI_GD_EVENT。

2.4.2无组态连接通讯方式

无组态的MPI通讯需要调用系统功能块SFC65~69来实现,这种通讯方式适合于S7-300,S7-400和S7-200之间的通讯。通过调用SFC来实现的MPI通讯又可分为两种方式:双边编程通讯方式和单边编程通讯方式。调用系统功能通讯方式不能和全局数据通讯方式混合使用。

1. 双边编程通讯方式

(1).概述

在通讯的双方都需要调用通讯块,一方调用发送块发送数据,另一方就要调用接收块来接收数据。这种通讯方式适用S7-300/400之间的通讯,发送块是SFC65(X_SEND) ,接收块是SFC66 (X_RCV)。

下面以举例的形式说明怎样调用系统功能来实现通讯。

(2). 网络配置图

图2-24 网络配置图

(3). 硬件和软件需求

硬件:CPU 315-2DP

CPU 416-2DP

软件:STEP 7 V5.2 SP1

(4). 网络组态及参数设置

1). 新建项目

在STEP 7中创建两个站STA TION1和STA TION2。其中STA TION1的CPU为S7 416,MPI 站地址为2; STA TION2的CPU为S7 315-2DP ,MPI站地址为4。本例中2号站发送2包数据给4号站,4号站判断后放在相应的数据区中。

相关主题
文本预览
相关文档 最新文档