PLC之间的MPI通讯-全局数据包通讯方式

合集下载

对比两台S7300PLC之间的MPI通讯

对比两台S7300PLC之间的MPI通讯

文 / 邱利军 陈春先 赵 洋对比两台S7300PLC 之间的MPI 通讯摘 要:本文提出了MPI网络通讯在教学中重要性和MPI网络通讯的分类,就日常教学中如何解决两台S7-300PLC之间通过MPI网络使用全局数据包设置的通讯教学问题进行了分析,从硬件、软件等方面论述了MPI使用全局数据包网络通讯的基础,并归纳、解决了教学中MPI使用全局数据包网络通讯教学的方法。

关键词:PLC GD MPI技术与应用APPLICATION编辑 孙祺童当今工业控制现场通常需要多个PLC 之间建立主从通讯,即一个PLC 做主站,其余PLC 做从站。

在实际工作现场,各集成商选用的PLC 品牌、型号不同,所以各自的通讯方式也是有很大区别的。

S7-300 PLC 之间可以建立MPI (MultiPoint Interface)通讯、Profibus-DP 通讯或工业以太网(Ethernet)通信等。

美国A-B PLC 之间可以建立工业以太网(Ethernet)、ControlNet 或DeviceNet 通讯。

三菱PLC 之间可以建立以N ∶N 通讯或Cclink 通讯。

西门子S7-300无论是在学校还是企业都占有很高的市场份额, MPI 通讯在技术层面上更加丰满,使用方面更加简单方便。

教师不能闭门造车,特别是职业教育教学内容要深入社会、了解社会,与企业的需求为教学目标,真正做到与时俱进。

因此,日常教学中PLC 之间通讯成为重要教学内容之一。

本文就 S7-300PLC 之间的MPI 通讯教学的实现加以论述。

一、MPI 通信介绍MPI 通信是用于S7-200/300/400等PLC 之间的通讯,MPI 通信速率范围很宽,通常默认设置为187.5kbit/s,通信数据量不大时的一种简单经济的通信方式。

通讯时要配置相关的通信卡才能进行数据交换。

MPI 网络的通信速率要达到12Mbit/s 的条件是通讯网络接口要设置PROFIBUS 接口。

S7-300之间的MPI全局数据通信

S7-300之间的MPI全局数据通信

另一个CPU接收。全局数据环有以下2种:
①环内包含2个以上的CPU,其中一个发送数据包,其它的
CPU接收数据;
②环内只有2个CPU,每个CPU可既发送数据又接受数据。
S7-300的每个CPU可以参与最多4个不同的数据环,在一个
MPI网上最多可以有15个CPU通过全局通讯来交换数据。
其实,MPI网络进行GD通信的内在方式有两种:一种是一对
整理ppt
9
四、全局数据包通信方式
全局数据(GD)通信方式以MPI分支网为基础而设计的。 在S7中,利用全局数据可以建立分布式PLC间的通讯联系, 不需要在用户程序中编写任何语句。S7程序中的FB、FC、 OB都能用绝对地址或符号地址来访问全局数据。最多可以在 一个项目中的15个CPU之间建立全局数据通讯。
整理ppt
11
四、全局数据包通信方式
在PLC操作系统的作用下,发送CPU在它的一个扫描循环
结束时发送全局数据,接收CPU在它的一个扫描循环开始时
接收GD。这样,发送全局数据包中的数据,对于接收方来说
是“透明的”。也就是说,发送全局数据包中的信号状态会
自动影响接收数据包;接收方对接收数据包的访问,相当于
一方式,当GD环中仅有两个CPU时,可以采用类全双工点对点
方式,不能有其它CPU参与,只有两者独享;另一种为一对多
(最多4个)广播方式,一个点播,其它接收。
整理ppt
14
五、MPI通信实例
例:要求通过MPI网络配置,实现2个CPU 314之间的全 局数据通信。第一台PLC的IB0控制第二台PLC的QB0,第 二台PLC的IB0控制第一台PLC的QB0。
用数据包号码(GD Packet Number)来标识,其中的变量

单元2_MPI全局数据通信解析

单元2_MPI全局数据通信解析

任务2 全局数据通信过程实现
1.网络组态及参数设置
1)建立MPI网络
在STEP 7中建立一个新项目,在此项目下 插入两个PLC站,分别为STATION1和STATION2, 并分别插入CPU完成硬件组态,建立MPI网络并 配置MPI的站地址和通信速率,本例中MPI的站 地址分别设置为2号站和4号站,通信速率为 187.5kbit/s。双击“GD ID”右边来自CPU栏选择需要通信的CPU。
任务2 全局数据通信过程实现
1.网络组态及参数设置
3)插入所有需要通信的CPU 双击“GD ID”右边的CPU栏选择需要通信 的CPU,CPU栏总共有15列,这就意味着最多 有15个CPU能够参与通信。
任务2 全局数据通信过程实现
在出现的“Select CPU”对话框中,双击 SIMATIC 300(1),再双击1#站的CPU的具体型号。
《PLC应用技术》教学课件
模块四 基于西门子S7-300 PLC 的MPI通信技术实现
单元二:PLC的MPI全局数据通信
任务1 全局数据通信过程介绍
1
2
任务2
全局数据通信过程实现
任务1 全局数据通信过程介绍 1.概述
在MPI网络中的各个中央处理单元(CPU)之间能 相互交换少量数据,只需关心数据的发送区和接收 区,这一过程称做全局数据块(GD)通讯。 全局数据块的通讯方式是在配置PLC硬件的过 程中,组态所要通讯的PLC站之间的发送区和接收区 ,不需要任何程序处理,这种通讯方式只适合S7300/400 PLC之间相互通讯。
图 在CPU下面一行中生成1号GD 环1号GD包中的1号数据
任务2 全局数据通信过程实现
3.注意:
1)输入全局数据时只能输入绝对地址,不能输 入符号地址。 2)包含定时器和计数器地址的单元只能作为发 送方。 3)在每一行中应定义一个并且只能有一个CPU 作为数据的发送方。 4)同一行中各单元的字节数应相同。

两台西门子S7-300系列PLC如何进行MPI通讯?

两台西门子S7-300系列PLC如何进行MPI通讯?

全局数据通信是PLC之间进行的不需要编程通过MPI接口在CPU间循环地交换少量数据,当过程映像被刷新时,在循环扫描检测点上进行数据交换;而无组态的连接的MPI通信(编程通信)通过调用SFC67和SFC68来实现,MPI无组态连接就是MPI通信时,不需要组态,只要编写通信程序即可实现通信,PLC 之间可以采用双边编程通信和单边编程通信方式,你这里应该是采用单边编程通信方式,因为CPU313C需要从老系统上用MpI通讯读取一个模拟量和16个数字量的数据,只要在CPU313C上进行编程就可以实现数据交换,编程通信要比全局数据传输的数据量要大,速度更快;你首先必须把两个PLC之间的MPI端口连接起来,设定主站CPU313C的MPI 通信参数(波特率187.5kbit/s)和主站的MP地址如“3”,不能与老的PLC 的MPI地址重复,把两个站的波特率设定一样,各自下载到PLC中;因为你只想老系统上用MpI通讯读取一个模拟量和16个数字量的数据,在CPU313C中单边编程,在读取数据区只要指定对方的PLC的MPI地址和数据区就可以了。

X_PUT(SFC68)为发送数据的指令,通过此指令将数据写入不在同一个本地S7站中的通信伙伴,其中DEST_ID为对方的MPI地址(这里指你的老系统PLC 的MPI地址)和VAR_ADDR为对方的数据区,SD为本地数据区,必须保证SD参数定义的数据长度和数据类型与通信伙伴上VAR_ADDR一致;X_GET(SFC67)为接收数据的指令,可以从本地站S7站以外的通信伙伴(这里指老系统上PLC站)中读取数据,其中参数DEST_ID和VAR_ADDR分别指对方的 MPI地址和对方的数据区,RD为本机的数据区必须保证RD参数定义的接收区(CPU313C)至少和由VAR_ADDR参数定义的要读取的区域一样大,而且类型必须相匹配。

如果不想要全局数据通信,只要在硬件组态界面中选择菜单Options(选项)/Define Global Data“(定义全局数据)界面中,打开全局变量发送和接收组态,断口连接,执行保存编译,下载到PLC就可以了。

PLC之间的MPI通信调用系统功能的通信方式1

PLC之间的MPI通信调用系统功能的通信方式1

PLC— PLC 之间的MPI 通信----调用系统功能的通信方式communication between PLCs through MPI network --------call SFC关键词 PLC、MPI、调用系统函数块Key Words PLC、MPI、Call SFCA&D Service & Support Page 2-11目录1 调用系统功能通信简介 (4)2 双向通信 (4)3 单向通信 (7)A&D Service & Support Page 3-111 调用系统功能通信简介调用系统功能(SFC65~69)来实现MPI的通信,这种通信方式适合于S7-300/400/200之间通信,一些非常老的S7-300/400 CPU不含有SFC65~69,所以不能用这种方式通信,只能用全局数据包的方式来通信,判断一个CPU是否含有通信的SFC,可以在联机的情况下,在线查看所用的程序块,看一看是否包含SFC65~69。

通过调用SFC来实现通信又可分为两种方式:双向通信和单项通信。

以例子的方式介绍通信过程,例子中使用的硬件为CPU315-2DP,CPU416-2DP。

软件为:STEP7 V5.2 SP1。

2 双向通信在通信的双方都需要调用通信块,一方调用发送块,另一方就要调用接收块来接收数据。

这种通信方式适用S7-300/400之间通信,发送块是SFC65(X_SEND),接收块是SFC66(X_RCV)。

下面以举例的形式说明通信实现的过程:在STEP7中创建两个站STATION1 CPU 416 MPI站为2,STATION2 CPU315-2DP MPI站号为4,2号站发送2包数据给4号站,4号站判断后放在相应的数据区中。

在2号站OB35中调用SFC65,如果扫描时间太短,发送频率太块,对方没有响应,将加重CPU的负荷,在OB35中调用发送块,发送任务将间隔100MS执行一次,编写发送程序如下A&D Service & Support Page 4-11参数中REQ 为发送请求为1时发送。

从零开始学PLC之MPI通信

从零开始学PLC之MPI通信

从零开始学PLC之MPI通信调用系统功能SFC用系统功能SFC65~69,可以在无组态情况下实现PLC之间的MPI的通讯,这种通讯方式适合于S7-300、S7-400和S7-200之间的通讯。

无组态通讯又可分为两种方式:双向通讯方式和单向通讯方式。

无组态通讯方式不能和全局数据通讯方式混合使用。

1.双向通讯方式双向通讯方式要求通讯双方都需要调用通讯块,一方调用发送块发送数据,另一方就要调用接收块来接收数据。

适用S7-300/400之间通讯,发送块是SFC65(X_SEND),接收块是SFC66(X_RCV)。

下面举例说明如何实现无组态双向通讯。

例:设2个MPI站分别为MPI_Station_1(MPI地址为设为2)和MPI_Station_2(MPI地址设为4),要求MPI_Station_1站发送一个数据包到MPI_Station_2站。

生成MPI硬件工作站打开STEP 7,创建一个S7项目,并命名为“双向通讯”。

在此项目下插入两个S7-300的PLC站,分别重命名为MPI_Station_1和MPI_Station_2。

MPI_Station_1包含一个CPU315-2DP;MPI_Station_2包含一个CPU313C-2DP。

设置MPI地址完成2个PLC站的硬件组态,配置MPI地址和通信速率,在本例中CPU315-2DP和CPU313C-2DP的MPI地址分别设置为2号和4号,通信速率为187.5kbit/s。

完成后点击按钮,保存并编译硬件组态。

最后将硬件组态数据下载到CPU。

编写发送站的通讯程序在MPI_Station_1站的循环中断组织块OB35中调用SFC65,将I0.0~I1.7发送到MPI_Station_2站。

MPI_Station_1站OB35中的通讯程序如图所示。

编写接收站的通讯程序在MPI_Station_2站的主循环组织块OB1中调用SFC66,接收MPI_Station_1站发送的数据,并保存在MB10和MB11中。

西门子PLC的MPI是如何进行网络通讯的详细资料讲解

西门子PLC的MPI是如何进行网络通讯的详细资料讲解

西门子PLC的MPI是如何进行网络通讯的详细资料讲解随着科技的进步,智能化芯片的发展逐渐成熟起来设备的智能化程度也相应提高,随之智能化设备之间基于开放标准的现场总线技术构成的自动化控制系统也逐渐成熟起来。

于是西门子PLC除了使用工业以太网和profibus。

在我们常用的编程、组态、通讯还用到了MPI、ASI等技术。

这些技术协议实现西门子PLC主机与智能从站之间的通讯,甚至兼容符合第三方产品的通讯协议。

西门子通讯大致有MPI网络通讯、PROFIBUS网络通讯、工业以太网通讯这三种。

西门子PLC的MPI网络通讯MPI叫多点接口通信,一般用于小范围、小点数现场级通讯,可实现西门子PLC的操作面板(TP/OP)和上位机之间的数据交换,例如西门子PLCs7-200/300/400,它的通讯速率19.2Kbit-12Mbit,最多可连接32个接点,通讯距离50m以内。

若以中继器连接,站之间的距离可达9100m,可最多也只能用10个中继器,而且它还占用节点数。

MPI的网络组建:利用STEP7的configuretion里的功能可以给每一个网络节点分配一个MPI地址和最高地址,连接是需要在MPI网络的第一个节点和最后一个节点加终端电阻。

PLC以MPI来实现通讯,可用三种方式解决。

全局数据包通讯方式、无组态连接通讯方式、组态连接通讯方式。

实现全局数据包通讯方式:在PLC硬件配置过程,组态需要通讯的PLC站之间的发送区和接收区不需要任何程序处理,只适应s7-300/400之间的通讯。

最多也只在一个项目中的15个CPU之间建立全局数据。

实现全局数据通讯方法:全局数据包通讯SMATIC Manage 里设置s7-300/400MPI的地址,然后在选项/定义全局数据里定义需要通讯的数据地址。

带>符号的表示发送数据,对应栏里的是接受数据,最终将设置好的项目下载到PLC即可实现MPI通讯。

无组态连接通讯方式:它适用于S7-200/300/400之间通讯,却不能与全局数据包通讯混淆。

(仅供参考)MPI通信全局数据包通信方式

(仅供参考)MPI通信全局数据包通信方式

MPI 通信通信--全局数据包通信方式全局数据包通信方式组态步骤组态步骤组态步骤概述:MPI 通信是一种比较简单的通信方式,网络通信的速率是19.2kbit/s~12Mbit/s,网络最多支持32个节点,最大通信距离是50m,也可以通过中继器扩展通信距离,但中继器也占用节点。

MPI 通信一般有三种通信方式: ★ 全局数据包通信方式 ★ 无组态连接通信方式 ★ 组态连接通信方式本例以两个CPU315-3DP MPI 通信为例,简要介绍MPI 通信全局数据包通信的组态步骤。

1、新建项目“MPI-全局数据包通信”项目,并插入两个S7-300站点。

2、组态SIMATIC 300(1)的硬件(双击管理器中的“硬件”图标), 依次放入导轨,电源模块和CPU 模块。

在放入CPU 模块时,会弹出“属性-PROFIBUS 接口”对话框,因使用MPI 通信,点击“取消”按钮就可以了。

3、组态结果如下所示:点击组态MPI属性4、双击槽架中CPU所在的行,出现“属性-CPU”对话框。

5、点击“属性…”按钮,在“属性-MPI”对话框中设置本站的地址为2,选中“子网”列表中的MPI(1)项,再点击“属性…”按钮可以设置MPI通信的波特率。

至此,2号站已经组态完毕,然后编译下载。

6、和组态2号站方法一样,组态另一个S7-300站(站地址为4号)。

下面组态MPI网络2号站和4号站的发送与接收数据区。

7、在管理器中,选中“MPI-全局数据包通信”标题。

8、双击右边窗口中的“MPI”图标,出现NetPro环境窗口。

9、选中MPI 网络线(网络线变粗),再点击菜单栏“选项”,再点击下拉菜单下的“定义全局数据”,打开MPI发送与接收画面。

10、双击图中的区域。

11、在出现的的“选择CPU”画面中,选择要组态的CPU。

双击此区域12、在如图所示的方框内写入“MB10:10”。

MB10MB10::10表示的是从MB10开始的10个字节(后面的10是字节数)。

实训二 两台S7-300PLC之间的MPI通讯

实训二  两台S7-300PLC之间的MPI通讯

实训二两台S7-300PLC之间的MPI通讯一、实训目的:1.掌握MPI网络通讯的基本原理。

2.学会MPI网络通讯的组态。

3.掌握MPI网络通信软件编写。

二、实训内容:要求通过MPI网络配置,实现2个CPU314-2DP之间的全局数据通信。

三、实训设备:2个带有CPU314-2DP PLC的THPFSF-3型实训装置、DP总线、安装有STEP7V5.5编程软件计算机四、实训步骤:(一)网络组态1.生成MPI硬件工作站打开STEP7,首先执行菜单命令“文件”→“新建...”创建一个S7项目,并命名为“MPI全局数据”。

选中“MPI全局数据”项目名,然后执行菜单命令“插入”→“站点”→“SIMATIC300站点”,在此项目下插入两个S7-300的PLC工作站,分别重命名为“MPI_Station_1”和“MPI_Station_2”,如图1所示。

图1生成的两台MPI硬件工作站2.分别完成两个PLC工作站的硬件组态根据PLC工作站硬件实际完成组态,这里两台PLC用的是S7300CPU314C-2DP,订货号为:6ES7 314-6CH04-0AB0。

下面以第一台为例简单介绍一下。

(1)选中SIMATIC管理器左边的站对象“MPI_Station_1”,双击右边窗口的“硬件”图标(如图2所示),打开硬件组态工具HW Config。

图2启用硬件组态工具(2)放置机架。

用鼠标打开硬件目录中的文件夹“\SIMATIC300\RACK-300”,选中机架Rail,可用“拖放”的方法或用鼠标双击之放置机架。

(3)放置CPU。

用鼠标单击选中机架2号槽,之后打开硬件目录中的文件夹“\SIMATIC 300\CPU-300\CPU314C-2DP\6ES7314-6CH04-0AB0”,选中“V3.3”固件,可用“拖放”的方法或用鼠标双击之放置,在出现如图3所示的“PROFIBUS接口DP”对话框中点击“取消”按钮。

图3“PROFIBUS接口DP”对话框(3)修改I/O起始地址。

s7-300和s7-300plc的MPI通讯

s7-300和s7-300plc的MPI通讯

1、用通讯电缆将两台plc连接起来,用MPI口进行连接
2、对两台plc进行硬件组态,并修改其中一台plc的地址,同时新建一条
MPI网络,选择默认的波特率,一般为187.5KP,并点击确定。

将本台plc的地址设置为2,保存并且编译,同时组态另外一台plc的硬件,点击第二条CPU栏,将该CPU挂在刚刚建立起来的MPI网络上,同时更改该plc的站地址为3或者其他的(只要与刚刚的那台plc不一样就OK)
保存并且编译、下载。

3、点击组态网络图标
4、这时出现如下图所示的画面,
可以清楚的看到两台s7—300的plc已经被挂在了我们刚刚建立起来的MPI网络上,这时用鼠标右击那条MPI线,再出现的菜单上选择“定义全局参数",将会出现如下图所示的画面
此时,鼠标双击第一块空白的灰色图标,出现如下图所示画面双击主站的CPU图标,会出现如下画面
此时,用同样的方法将从站的CPU添加在第三块灰色的地方,此时将鼠标放在主站下面的第一个单元格的位置如下图所示
点击“选作发送器”图标将出现如下图画面
所在单元格将会变绿,然后在里边键入数据例如下图:
就是讲主站的MB0传送给从站的MB0,将从站的MB1传送给主站的MB1。

最后点击编译按钮。

完成MPI网络的组态
5、编写程序。

一步一步教你,西门子S7-300PLC之间的MPI通讯

一步一步教你,西门子S7-300PLC之间的MPI通讯

一步一步教你,西门子S7-300PLC之间的MPI通讯学习PLC之间的通信绝对是初学者的难题,如果有通信基础还好,要是没有一点基础怎么入门呢?这里给大家几个建议:一、初步了解PLC通信涉及到的基础知识,这个时候没必要精深的搞清楚所有问题。

二、以手头上有的实物练习,无论是PLC之间还是PLC与变频器等其他仪表,也不要考虑使用什么协议,一个目的:先实操做通一个。

三、根据第二步遇到的问题,反复琢磨,找资料、请教老师。

一定要把实操中遇到的疑惑都解开。

四、找另一种通信实操··············MPI通信最多可以在15个CPU之间实现,包括MPI全局通讯,单边通讯和双边通讯三种方式。

MPI全局通讯(300PLC之间)MPI的全局通讯一个包最多22个字节,最多4个数据包(一个发送,一个接收算一个数据包)硬件的配置(在一个项目里面组态三个CPU):注意在组态的时候建立的是MPI通讯,不是DP通讯PLC1里进行硬件组态:在PLC3里进行硬件组态:和PLC2的CPU属性设置相同,地址更改为3我们在PLC里面不用编辑通讯的程序,只需在PLC1里给MB0开始的22个字节赋值,在PLC2里给MB0开始的22个字节解压使用即可。

程序的下载步骤:一,先下载PLC1,使用编程电缆连接PLC1上的MPI接口二,下载完PLC1的项目程序后,我们开始下载PLC1的全局通讯的通讯信息三,下载PLC2,使用编程电缆连接PLC2上的MPI接口四,下载完PLC2的项目程序后,我们开始下载PLC2的全局通讯的通讯信息下载完成,连接上MPI通信电缆,测试通讯情况MPI单边通讯(300的PLC和300的PLC)单边通讯主要用在PLC与PLC之间的通讯,一个发送和接受最多76个字节特别提示:因为通讯程序没有必要每个扫描周期都运行,所以我们可以把通讯程序放到OB35(循环中断)里面。

西门子PLC300的MPI 网络与全局数据通信

西门子PLC300的MPI 网络与全局数据通信

西门子PLC300的MPI 网络与全局数据通信1、 MPI 网络周期性地相互交换少量的数据,最多15个CPU。

编程设备、人机接口和CPU 的默认地址分别为0,1,2。

MPI 默认的传输速率为187.5 k bit/s 或1.5 M bit/s,与S7-200通信19.2 k bit/s。

相邻节点间的最大传送距离为50m,加中继器后为1000m,使用光纤和星形连接时为23.8 km。

2、全局数据包参与全局数据包交换的CPU 构成了全局数据环(GD circle)。

可以建立多个GD 环。

具有相同的发送者和接收者的全局数据集合成一个全局数据包。

数据包中的变量有变量号。

例如GD1.2.3 是1 号GD 环、2 号GD 包中的3 号数据。

S7-300 CPU 可以建立4 个全局数据环,每个环中一个CPU 只能发送和接收一个数据包,每个数据包最多包含22 个数据字节。

S7-400 CPU 可以建立的全局数据环个数与CPU 的型号有关(16~64 个),每个环中一个CPU 只能发送一个数据包和接收两个数据包,每个数据包最多包含54 个数据字节。

3、MPI 网络的组态1)、在SMATIC 管理器中生成3个站,例如它们的CPU 分别为CPU 413-1,CPU 313C 和CPU 312C。

2)、双击MPI 图标,打开NetPro 工具,打开CPU 的属性设置对话框,设置MPI 站地址。

这样CPU就被连接到MPI (1)子网上。

3)、保存CPU 的配置参数,用点对点的方式将它们分别下载到各CPU中。

4)、用PROFIBUS 电缆连接MPI 节点可以用管理器的“Accessible Nodes”功能来测试可以访问的节点。

4、全局数据表1)、生成和填写GD 表a.在“NetPro”窗口中用右键点击MPI 网络线,在弹出的窗口中执行执行菜单命令“Options→Define Global Data(定义全局数据)”同样的命令。

s7300多个cpu的mpi通讯中数据的交换

s7300多个cpu的mpi通讯中数据的交换

s7300多个cpu的mpi通讯中数据的交换
系统有多个cpu,它们之间mpi通讯,同时在他们之间需要数据交换,请问交换需要如何做?
最佳答案
你可以使用全局数据包通信方式进行通讯
1建立mpi网络,在step7里面建立plc站,并分别组态,建立mpi网络并配置mpi的站地址和通信率
2组态数据的发送区和接受区,选中mpi网络,选择options->defineglobaldata进入组态画面
3插入所有需要通信的cpu并在每个cpu栏下填入数据的发送区和接收区,地址可以为db,i,m,q区,发送区和接收区的长度必须一致。

4编译存盘后,把组态数据分别下载到相应的cpu中,这样就可以进行数据通信了。

具体可以参考下列文档:
1.plc—plc之间的mpi通信----调用系统功能块的通信方式:http://www
/download/upload/as/applicat ion/a0066.pdf
2.plc—plc之间的mpi通信----调用系统功能的通信方式/download/upload/as/application
/a0065.pdf
3.plc-plc之间的mpi通信-全局数据包通信方式:/download/upload/as/applicat ion/a006
4.pdf。

s7-300之间的MPI全局数据通信

s7-300之间的MPI全局数据通信

以上可以实现PLC网络的有:MPI,工业以太网,profibus等。

每种可以单接的设备有所不同。

可以从图中看出。

OP操作屏,PG编程设备,winac控制器。

MPI网络通信
如果有多台设备时,就需要修改地址。

MPI网络连接器
全局数据包通信方式
步骤:建立项目文件--建立两个300站点--分别进行硬件组态--添加电源,cpu,数字量等模块
双击第一个cpu进入属性--修改接口属性地址为2
双击第二个cpu进入属性--修改接口属性地址为3
在simatic manager中点击“组态网络”图标,在仿真按钮的左侧。

进入组态网络,便可看见组态的MPI网络。

MPI网络下挂了两个CPU地址分别是2和3。

点击MPI干线,右键,打开“定义全局数据”,出现全局数据表(GD),双击灰色标题栏,选择分别选择第一个和第二个CPU。

如图
选中第一行,mp1.1下,将其选作为发送器,变绿,输入IBO:1
选中第一行,mp2.2下,输入MB0:1
同理选中第二行,mp2.2下,将其选作为发送器,变绿,输入IB0:1 在mp1.1下,输入MB0:1
保存,编译
如果编译不成功,注意调整输入法为英文。

编译成功后的数据表为:
回到管理器
在第一台PLC中,双击OB1块进行程序编写。

同理在第二台PLC中也编写同样的程序。

下载就行啦。

S7300之间的MPI全局数据通信

S7300之间的MPI全局数据通信

四、全局数据包通信方式
1.GD通信原理 在MPI分支网上实现全局数据共享的两个或多个CPU中,
至少有一个是数据的发送方,有一个或多个是数据的接收方。 发送或接收的数据称为全局数据,或称为全局数。具有相同 Sender/Receiver (发送者/接受者)的全局数据,可以集合 成一个全局数据包(GD Packet)一起发送。每个数据包用数 据包号码(GD Packet Number)来标识,其中的变量用变量 号码(Variable Number)来标识。参与全局数据包交换的 CPU构成了全局数据环(GD Circle)。每个全局数据环用 数据环号码来标识(GD Circle Number )。
S7-300之间的MPI全局数据通信
主要内容:
一、 西门子PLC网络 二、MPI网络通信 三、MPI网络连接器 四、全局数据包通信方式 五、MPI通信实例
一、 西门子PLC网络
二、MPI网络通信
MPI是多点通信接口(MultiPoint Interface)的简称。 MPI物理接口符合Profibus RS485(EN 50170)接口标准。 MPI网络的通信速率为19.2kbit/s~12Mbit/s,S7-200只能选 择19.2kbit/s的通信速率,S7-300通常默认设置为 187.5kbit/s,只有能够设置为Profibus接口的MPI网络才支 持12Mbit/s的通信速率
发 送数据包的访问。
四、全局数据包通信方式
2.GD通信的数据结构
全局数据可以由位、字节、字、双字或相关数组组成, 它们被称为全局数据的元素。一个全局数据包由一个或几个 GD元. 全局数据环
全局数据环中的每个CPU可以发送数据到另一个CPU或从 另一个CPU接收。全局数据环有以下2种:

MPI通讯介绍

MPI通讯介绍

MPI通讯介绍PLC 2007-11-10 14:16:02 阅读46 评论0 字号:大中小MPI(MULTIPOINT INTERFACE)是一种适用于小范围、少数站点间通讯的网络。

在网络结构中属于单元级和现场级。

适用于SIMATIC S7/M7和C7系统,多用于对其变成,连接上位机和少量PLC之间近距离通讯。

通过PROFIBUS 电缆和接头,将控制器CPU的MPI编程口相互连接以及与上位机网卡的编程口(MPI/DP口)连接即可实现。

拓扑结构MPI网络是一种总线型网络,可以用来连接多哥编程设备、操作面板和SIMATIC PLC(如:S7-300/400系列,也包括S7-200系列)。

应用场合MPI接口是S7-300/400CPU上自带的编程口,利用编程口通讯是一种对通讯速率要求不高,通讯数据量不大的通讯方式。

MPI的通讯速率为19.2K~12Mbps,通常默认设置是187.5Kbps;通讯数据包不大于122字节。

网络连接MPI通讯利用PLC站S7-200/300/400和上位机(PG/PC)插卡CP5411/CP5511/5611/5613的MPI进行数据交换。

连接电缆为PROFIBUS 电缆,接头为PROFIBUS接头,并带有终端电阻。

在MPI网络上最多可以有32个站。

第一个站与最后一个站之间通讯距离为50米,更厂的通讯距离可以通过RS485中继器扩展,扩展后一个总线段最长1000米。

通讯波特率为187.5bps。

通讯方式1.设置MPI接口在控制面板/SET PG/PC INTERFACE中选择访问点S7-ONLINE,选择所用的编程设备,例如用PC ADAPRER作为编程设备.2.PLC之间通过MPI口通讯PLC之间通过MPI口通讯可分为三种:(1)全局数据包(GD)通讯方式(2)不需要组态连接的通讯方式(3)需要组态连接的通讯方式全局数据包通讯方式以这种通讯方式实现PLC之间的数据交换时,只需要关心数据的发送区和接收区.在配置PLC硬件的过程中,组态所要通讯PLC站之间的发送区和接收区即可,不需要任何程序处理.这种通讯方式只适合S7-300/400PLC之间相互通讯.这种通讯方式的通讯数据包长度为:S7-300最大为22字节,S7-400最大为54字节.不需要组态连接的通讯方式全局数据包通讯的组态必须是同一个项目下完成,缺乏灵活性,可以通过调用系统功能来实现MPI通讯,这种通讯方式适合于S7-300/400/200之间通讯,而且是不需要组态连接.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

下面将以举例的方式说明全局数据包通讯的具体方法:
硬件需求:CPU315-2DP,CPU416-2DP。

软件需求:STEP7 V5.2 SP1
1). 首先打开编程软件STEP7,建立一个新项目如MPI_GD,在此项目下插入两个PLC站分别为STATION1/CPU416-2DP和 STATION2/CPU315-2DP,并分别插入CPU完成硬件组态,配置MPI的站号和通讯速率,在本例中MPI的站号分别设置为2号站和4号站,通讯速率为187.5Kbit/S 。

这些工作完成以后,可以组态数据的发送区和接收区。

点击项目名MPI_GD后出现STATION1,STATION2和MPI网,点击MPI,再点击菜单“Options Define Global Date”进入组态画面如下图:
全局数据组态画面
2). 插入所有需要通讯的PLC站CPU
双击GD ID右边的CPU栏选择需要通讯PLC站的CPU。

CPU栏总共有15列,这就意味者最多有15个CPU能够参与通讯。

在每个CPU栏底下填上数据的发送区和接收区,例如:CPU416-2DP的发送区为DB1.DBB0~DB1.DBB21,可以填写为DB1.DBB0:22 然后在菜单“edit”
项下选择“Sender”作为发送区。

开始地址长度
而CPU315-2DP的接收区为DB1.DBB0~21,可以填写为DB1.DBB0:22。

编译存盘后,把组态数据分别下载到CPU中,这样数据就可以相互交换了。

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

参考下图:
地址区可以为DB,M,I,Q,区,长度S7-300最大为22个字节,S7-400最大为54个字节。

发送区与接收区的长度应一致,所以在上例中通讯区最大为22个字节。

3). 多个CPU通讯
了解多个CPU通讯首先要了解GD ID参数,编译以后,每行通讯区都会有GD ID号,可以参考上图为GD1 .1 .1
A:全局数据包的循环数,每一循环数表示和一个CPU通讯,例如两个S7-300CPU通讯,发送与接收是一个循环,S7-400中三个CPU之间的发送与接收是一个循环,循环数与CPU有关,S7-300CPU 最多为4个,所以最多和4个CPU通讯。

S7-400CPU414-2DP最多为8个,S7-400CPU416-2DP最多为 16个。

B:全局数据包的个数。

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

一个循环有两个数据包。

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

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

4). 通讯的诊断
在多个CPU通讯时,有时通讯会中断,是什么原因造成通讯中断呢?我们编译完成后,在菜单“View”中点击“Scan Rates”和“GD Status”可以扫描系数和状态字。

如下图所示:
S R:扫描频率系数。

如上图SR1.1 为225,表示发送更新时间为225×CPU循环时间。

范围为1~255。

通讯中断的问题往往设置扫描时间过快。

可改大一些。

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

可根据状态字编写相应的错误处理程序,结构如下:
第一位:发送区域长度错误。

第二位:发送区数据块不存在。

第四位:全局数据包丢失。

第五位:全局数据包语法错误。

第六位:全局数据包数据对象丢失。

第七位:发送区与接收区数据对象长度不一致。

第八位:接收区长度错误。

第九位:接收区数据块不存在。

第十二位:发送方从新启动。

第三十二位:接收区接收到新数据。

GST:所有GDS 相“OR”的结果
如果编程者有CP5511/5611编程卡可以首先诊断一下连线是否可靠,如上例中S7-300 MPI地址是2,S7-400MPI地址是4,用CP卡连接到MPI网上
(PROFIBUS接头必须有编程口)可以直接读出2,4号站,具体方法是在“控制面板”“PG/PC interface”“ Diagnostics”点击
“read”读出所以网上站号,如下图所示:
0号站位CP5611的站号,如果没有读出2,4号站,说明连线有问题或MPI网传输速率不一致,可以把问题具体化。

5). 事件触发的数据传送
如果我们需要控制数据的发送与接收,如在某一事件或某一时刻,接收和发送所需要的数据,这时将用到事件触发的数据传送方式。

这种通讯方式是通过调用CPU的系统功能SFC60 (GD_SND)和SFC61(GD_RCV)来完成的,而且只支持S7-400CPU,并且相应设置CPU的SR(扫描频率)为0,可参考下图全局数据的组态画面:
在S7-400CPU侧的SR为0
与上面作法相同编译存盘后下载到相应的CPU中,然后在S7-400中调用SFC60/61控制接收与发送。

例子程序参见光盘,项目名为MPI_GD_EVENT 硬件需求:CPU315-2DP,CPU416-2DP。

软件需求:STEP7 V5.2 SP1。

具体程序代码为:
CIRCLE_ID,BLOCK_ID可参考GD 中的A,B,C参数。

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

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

相关文档
最新文档