如何实现S7200与S7300之间的MPI通讯
S7-200与S7-300之间的通讯(更新版)
S7-200与S7-300之间的通讯Communication between S7-200 and S7-300摘要 文档介绍s7-200plc和s7-300plc通信,分别介绍的是mpi,profibus和以太网。
关键词 MPI ,PROFIBUS 以太网Key Words MPI,PROFIBUS, ethernetA&D Service & Support Page 2-20目录S7-200与S7-300之间的通讯 (1)1.S7-200和S7-300进行MPI通信 (4)2.S7-200和S7-300进行PROFIBUS通信 (8)3.S7-200和S7-300进行以太网通信 (13)A&D Service & Support Page 3-201.S7-200和S7-300进行MPI通信S7200与S7300之间采用MPI通讯方式时, S7200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7300中需要在OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),实现S7300 与S7200之间的通讯,调用SFC67和SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需填写P#DB1.××× BYTE n 对应的就是S7200 V 存储区当中VB××到VB(××+n)的数据区。
首先根据S7300的硬件配置,在STEP7当中组态S7300站并且下载,注意S7200和S7300出厂默认的MPI地址都是2,所以必须先修改其中一个PLC的站地址,例子程序当中将S7300 MPI地址设定为2,S7200地址设定3,另外要分别将S7300和S7200的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了19.2K的速率。
S7300PLC和S7200PLC的MPI通讯实例
MPI的通信速率为19.2K~12Mbit/s,但直接连接S7-200CPU通信口的MPI 网最高速率通常为187.5Kbit/s(受S7-200CPU最高通信速率的限制),在MPI 网络上最多可以有32个站,一个网段的最长通信距离为50米(通信波特率为187.5Kbit/s时),更长的通信距离可以通过RS-485中继器扩展。
MPI允许主-主通信和主-从通信,每个S7-200CPU通信口的连接数为4个,S7-200CPU只能做MPI从站,即S7-200CPU之间不能通过MPI网络互相通。
本例以一台CPU313C-2DP和CPU224通过MPI通讯举例说明具体操作步骤:本例的控制要求:
1:MPI主站为CPU313C-2DP,主站号位2。
2:MPI从站为CPU224,从站号位3。
3:MPI主站的M10.0控制MPI3号从站的Q1.0
4:MPI3号从站的Q1.0控制MPI主站的Q0.0
做控制要求如下图:
操作步骤如下:
1:新建S7300程序,在硬件配置中的CPU属性中设置CPU313C-2DP 的MPI地址为2。
2:MPI通讯速率为187.5K,并将硬件配置下载到CPU313C-2DP中。
编写如下程序并下载到CPU313C-2DP中:
2:新建S7200程序在系统块中设置CPU224的波特率和MPI地址为3,并将程序下载到CPU224中。
3:主站和从站的MPI端口用通讯线连接起来。
4:测试通讯观察效果。
注:在本实验中主站程序使用的功能块解释如下图:。
S7-200与S7-300之间地通讯
S7-200与S7-300之间的通讯显示订货号1.S7-200和S7-300进行MPI通信S7-200 PLC与S7-300 PLC之间采用MPI通讯方式时,S7-200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7-300 PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),以实现S7-200 PLC 与S7-300 PLC之间的通讯。
调用SFC67和SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需填写 P#DB1.DBX×× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
例如交换的数据存在S7-200中VB50到VB59这10个字节当中,VAR_ADDR参数应为P#DB1.DBX50.0 BYTE 10.首先根据S7-300的硬件配置,在STEP7当中组态S7-300站并且下载,注意S7-200和S7-300出厂默认的MPI地址都是2,所以必须修改其中一个PLC的站地址,例子程序当中将S7-300 MPI地址设定为2,S7-200地址设定3,另外要分别将S7-300和S7-200的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了19.2K的速率。
S7-200 PLC修改MPI地址可以参考下图:图1 S7-200 设置MPI地址S7-300 PLC修改MPI地址可以参考下图:图2 S7-300 设置MPI地址例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:图3 程序编写分别在STEP7 MicroWin32 和STEP7当中监视S7-200和S7-300 PLC当中的数据,数据监视界面如下:图4 S7-200监控结果图5 S7-300监控结果通过CP5611,STEP7 MicroWin32, Set PG/PC Interface可以读取S7200和S7300的站地址,如下图:图6 CP5611诊断结果(站地址0为进行编程的计算机)图7 使用STEP7 MicroWin32诊断结果2.S7-200和S7-300进行PROFIBUS通信S7-300与S7-200通过EM277进行 PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区,并且S7-300组态EM277从站时设置正确的地址即可。
S7-200与S7-300之间地通讯
S7-200与S7-300之间的通讯显示订货号1.S7-200和S7-300进行MPI通信S7-200 PLC与S7-300 PLC之间采用MPI通讯方式时,S7-200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7-300 PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),以实现S7-200 PLC 与S7-300 PLC之间的通讯。
调用SFC67和SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需填写 P#DB1.DBX×× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
例如交换的数据存在S7-200中VB50到VB59这10个字节当中,VAR_ADDR参数应为P#DB1.DBX50.0 BYTE 10.首先根据S7-300的硬件配置,在STEP7当中组态S7-300站并且下载,注意S7-200和S7-300出厂默认的MPI地址都是2,所以必须修改其中一个PLC的站地址,例子程序当中将S7-300 MPI地址设定为2,S7-200地址设定3,另外要分别将S7-300和S7-200的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了19.2K的速率。
S7-200 PLC修改MPI地址可以参考下图:图1 S7-200 设置MPI地址S7-300 PLC修改MPI地址可以参考下图:图2 S7-300 设置MPI地址例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:图3 程序编写分别在STEP7 MicroWin32 和STEP7当中监视S7-200和S7-300 PLC当中的数据,数据监视界面如下:图4 S7-200监控结果图5 S7-300监控结果通过CP5611,STEP7 MicroWin32, Set PG/PC Interface可以读取S7200和S7300的站地址,如下图:图6 CP5611诊断结果(站地址0为进行编程的计算机)图7 使用STEP7 MicroWin32诊断结果2.S7-200和S7-300进行PROFIBUS通信S7-300与S7-200通过EM277进行 PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区,并且S7-300组态EM277从站时设置正确的地址即可。
S7-200与S7-300之间的三种通讯方式(MPI、DP、以太网)
2.S7-200和S7-300进行PROFIBUS通信
图10 STEP7 Micro/WIN通信数据监控
2.S7-200和S7-300进行PROFIBUS通信
注意:VB0-VB7是S7-300写到 S7-200的数据,VB8-VB15是S7 -300从S7-200读取的值。EM277 上拨位开 关的位置一定要和S7- 300中组态的地址值一致。如果使 用的S7-200通信区域不从VB0开始, 则需要设置地址偏移,在S7-300硬 件组态中双击 EM277,修改数值0 为实际使用的数值即可,如图所示:
1.S7-200和S7-300进行MPI通信
图1 S7-200 设置MPI地址
1.S7-200和S7-300进行MPI通信
S7-300 PLC修改MPI地址可以参考下图
图2 S7-300 设置MPI地址
1.S7-200和S7-300进行MPI通信
例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:
图5 S7-300监控结果
2.S7-200和S7-300进行PROFIBUS通信
S7-300与S7-200通过EM277进行 PROFIBUS DP通讯,需要在 STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进 行组态和编程,只需要将要进行通讯的数据整理存放在V 存储 区,并且S7-300组态EM277从站时设置正确的地址即可。
根据EM277上的拨位开关设定以上EM277从站的站地址。
图8 组态DP通信地址
2.S7-200和S7-300进行PROFIBUS通信
组态完系统的硬件配置后,将编译下 载到S7-300的PLC当中。S7-300的硬件 下载完成后,将EM277的拨位开关拨 到与以上硬件组 态的设定值一致,在 S7-200中编写程序将进行交换的数据 存放在VB0-VB15,对应S7-300的 PQB0-PQB7和PIB0-PIB7,打开 STEP7中的变量表和STEP7 MicroWin32的状态表进行监控,它们 的数据交换结果如图:
S7-和S7-进行MPI通信
1. S7-200和S7-300进行MPI通信2. S7-200 PLC与S7-300 PLC之间采用MPI通讯方式时,S7-200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7-300 PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),以实现S7-200 PLC与S7-300 PLC之间的通讯。
调用SFC67和SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需填写P#DB1.DBX×× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
例如交换的数据存在S7-200中VB50到VB59这10个字节当中,VAR_ADDR参数应为P#DB1.DBX50.0 BYTE 10.3. 首先根据S7-300的硬件配置,在STEP7当中组态S7-300站并且下载,注意S7-200和S7-300出厂默认的MPI地址都是2,所以必须修改其中一个PLC的站地址,例子程序当中将S7-300 MPI地址设定为2,S7-200地址设定3,另外要分别将S7-300和S7-200的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了19.2K的速率。
S7-200 PLC修改MPI地址可以参考下图:S7-200 PLC修改MPI地址可以参考下图:图1 S7-200 设置MPI地址S7-300 PLC修改MPI地址可以参考下图:图2 S7-300 设置MPI地址例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:图3 程序编写分别在STEP7 MicroWin32 和STEP7当中监视S7-200和S7-300 PLC当中的数据,数据监视界面如下:图4 S7-200监控结果图5 S7-300监控结果通过CP5611,STEP7 MicroWin32,Set PG/PC Interface可以读取S7200和S7300的站地址,如下图:图6 CP5611诊断结果(站地址0为进行编程的计算机)图7 使用STEP7 MicroWin32诊断结果2.S7-200和S7-300进行PROFIBUS通信S7-300与S7-200通过EM277进行PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区,并且S7-300组态EM277从站时设置正确的地址即可。
S7-200和S7-300进行PROFIBUS通讯(1)
S7-200和S7-300通过PROFIBUS-DP通讯步骤1、硬件连接一根PROFIBUS电缆(屏蔽双绞线),接头为PROFIBUS接头并带有终端电阻(在网络的终端点,需要将终端电阻设置为“ON”,网络的中间站点需要将终端电阻开关设置为“OFF”);一个S7-200 CPUCN;一个EM277通信模块;一个CPU315-2PN/DP 模块2、新建一个项目“DP-EM277示例”并进行硬件组态3、PROFIBUS-DP主站网络设置。
进入硬件组态画面,双击CPU的DP槽,进入DP属性界面,接口类型选择PROFIBUS4、点击属性按钮,打开PROFIBUS接口属性界面,选择地址“2”,子网内显示“未连网”5、点击“新建”,出现新建子网的属性窗口,在“常规”内可以修改名称,在“网络设置”里面可以选择通信波特率(187.5kbps)以及DP配置,然后点击各个界面的“确定”,“已联网”会从“否”变成“是”6、PROFIBUS-DP从站网络配置,若没有EM277的硬件,需要先安装“GSD”文件,下载地址为,下载并解压缩后,点击工具栏中的“选项”并选择“安装GSD文件”7、安装完成后,在硬件目录里找到“EM277”,然后把EM277拖拽到PROFIBUS网络总线上,将出现以下界面,选择地址为“3”(这个站号与EM277上的拨码开关站号一致)。
点击确定8、在EM277硬件目录下选择I/O大小,并把需要挂在EM277上的I/O接口拖拽到EM277的插槽中9、然后双击该插槽将弹出DP从站的地址/ID属性设置界面,可定义输入/输出的开始地址,设置完成后点击各个界面的“确定”键10、在硬件组态界面,双击PROFIBUS总线上的EM277图标,可以设置S7-200CPU的发送与接收地址偏移量11、保存并下载进PLC后可进行通信,右击“EM 277”的插槽,选择“监视/修改”,可以监视I/O的变化。
12、注:偏移量只针对从站;地址可设置,但不可冲突假设偏移量为0,分配给从站的地址为8字节输入/8字节输出,则200中V0到V7是接收300(PQB0.0-PQB7.7)给200的数据,V8到V15是200给300(PIB0.0-PIB7.7)的数据。
PLC-S7200与S7300之间的通讯
S7-200与S7-300通讯的硬件组成我们选择了S7300作为通讯测试系统的主PLC,CPU具有以下特点:•具有中、大型程序存储容量,可使用SIMATIC功能工具(如GRAPH)•对二进制和浮点数具有较高的处理能力•具有PROFIBUS DP主站/从站接口和一个MPI接口,可用于大规模的I/O配置和建立分布式I/O结构。
•可实现S7基本通讯,每个请求的最大有用数据为76字节。
通讯测试系统的S7_200 PLC(CPU_224)其主要技术参数为:程序:4096字;用户数据:2560字;本机I/O:14入/10出;扩展模块数量:7个;通讯口:一个RS_485通讯口,支持PPI,DP/P和自由口协议。
软件为MICRO WIN32 4.0 S7_200编程软件。
S7基础通讯可以将所有S7 CPU 的数据都可通过MPI 子网或者通过K 总线在一个站内传输。
在用户程序中可调用这些系统功能(SFC),如发送端的X_SEND 和接收端的X_RCV 。
一次调用所能传送的用户数据最高可达76 字节。
与通信伙伴之间连接的建立是在调用系统功能时动态配置的,并且在传输结束后断开。
不需要预先进行硬件组态连接,从而避免了PLC硬件下装产生的停机时间,所以十分便于设备运转时的在线调试。
1)S7_200的通讯设置(见附图)•用PPI电缆连接编程器和S7_200 PLC。
• 用STEP7-MICRO/WIN32管理器打开编辑好的PLC程序,选择“DATA BLOCK”图标。
编辑数据块USE1。
数据格式见附图。
•打开“System Block ”图标选择MPI地址和连接波特率。
(见附图)•设定PG/PC接口为CP5611 MP1方式。
•下装程序后,连接准备完成,PLC重新启动后,编程器已经可以通过MPI网络直接监视和下装S7_200程序。
Ⅱ)S7_300的通讯设置A)调试时S7_300采用S7基础通讯进行连接。
避免硬件下装对生产的影响。
S7-300与S7-200MPI通讯指南
S7-200和S7-300进行MPI通信西门子系列PLC之间的通讯方式分以下几种:S7-200系列之间互相通讯无需新增硬件的有:PPI自由口通讯、modbus主从通讯(需安装标准的modbus通讯库文件)S7-300系列之间互相通讯无需新增硬件方式有:MPI全局通讯、DP主从通讯(需CPU带DP 口)以太网通讯(需要CPU自带以太网口)S7-200与S7-300之间相互通讯无需新增硬件的有:MPI-PPI通讯,此种通讯也是本文介绍的重点,其他通讯方式再以后的文档中会详细讲解。
S7-200 PLC与S7-300 PLC之间采用MPI通讯方式时,S7-200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7-300 PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)用于读取S7-200的数据和X_PUT(SFC68)用于向S7-200写数据,以实现S7-200 PLC与S7-300 PLC之间的通讯。
S7-200与S7-300采用此种通讯方式只能交换S7-200的V存储区数据。
调用SFC67和SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需填写P#DB1.DBX×× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
例如交换的数据存在S7-200中VB50到VB59这10个字节当中,VAR_ADDR参数应为 P#DB1.DBX50.0 BYTE 10.首先根据S7-300的硬件配置,在STEP7当中组态S7-300站并且下载,注意S7-200和S7-300出厂默认的MPI地址都是2,所以必须修改其中一个PLC的站地址,例子程序当中将S7-300 MPI地址设定为2,S7-200地址设定3,另外要分别将S7-300和S7-200的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了19.2K的速率。
s7300与s7200的mpi通讯以及mcgs组态超详细教程
S7300与S7200之间的mpi通讯和组态在通讯之前先得确认cpu没有报任何错误,首先硬件组态,组态完毕后下载进CPU下载后先在线看是否有错误cpu指示灯是否有SF BF报警灯亮。
(BF1灯亮为通信故障检查电缆是否松动接触不良,九针接口螺丝拧紧)(SF灯亮为硬件组态出错)首先打开STEP7 SP9 200编程软件写入测温程序公式为T = 500 * (AIWX - 6400)/(32000 - 6400) - 0化简后T = 5 * (AIWX - 6400)/256由通道18转换上来的数值为word类型而温度要显示小数点后的数值就需要转换为浮点形的数据,浮点型的数据为32位二进制数, 所以就有了如上的转换,接着乘5除256即出现最终的温度值。
也可用库来调用,这样方便一些温度转换程序的结果说明程序无问题可正常测温17 ■"TS设置为PLC 地址为2波特率设置为187.5kbps 点确认下载一次即可。
然后打开博途,组态硬件。
在硬件组态完成后确认 CPU 没有任何错误信息错误指示灯亮。
如有 即是组态错误。
接着打开通讯ku .齐曲叫 s| < <耳 ■制川序2-鸟补施 a ci\g* -a 非耐 甲胭胳±| 」mbtM ” o f4i^ 三歪网踪 .3 亘U4 口 -4J1*T r-fiUM^ *沏協世fa -AI ™ * jjffiis a M J ton m 勻耐w 己糊剧 ~ jij :车曰牡F益1乐城集 Qu£>畑吞 口 曽• :.wi*口琴9^0-0EM»tF ill EJE Gk 费严區MTiA£4t! |2L 览S i … ijfrj馄%1^: |1<曲 1 ..VbJs® : |9J kbps J| 167J ka 咬”aki 注 p -rC E Sfteam诙彌圖油业竝TFttC!牛込--主向导J,ti*D1 2—45 6接口连接到将地址设置为3传输率设置为187.5kbps如设备中含有cp通信模块cpu 会自动加1的地址。
S7-200和S7-300进行MPI通信
1.S7-200和S7-300进行MPI通信2.S7-200 PLC与S7-300 PLC之间采用MPI通讯方式时,S7-200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7-300 PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),以实现S7-200 PLC与S7-300 PLC之间的通讯。
调用SFC67和SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需填写P#DB1.DBX×× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
例如交换的数据存在S7-200中VB50到VB59这10个字节当中,VAR_ADDR 参数应为P#DB1.DBX50.0 BYTE 10.3.首先根据S7-300的硬件配置,在STEP7当中组态S7-300站并且下载,注意S7-200和S7-300出厂默认的MPI地址都是2,所以必须修改其中一个PLC的站地址,例子程序当中将S7-300 MPI地址设定为2,S7-200地址设定3,另外要分别将S7-300和S7-200的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了19.2K的速率。
S7-200 PLC修改MPI地址可以参考下图:S7-200 PLC修改MPI地址可以参考下图:页脚内容1图1 S7-200 设置MPI地址S7-300 PLC修改MPI地址可以参考下图:页脚内容2图2 S7-300 设置MPI地址例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:页脚内容3图3 程序编写分别在STEP7 MicroWin32 和STEP7当中监视S7-200和S7-300 PLC当中的数据,数据监视界面如下:页脚内容4图4 S7-200监控结果图5 S7-300监控结果通过CP5611,STEP7 MicroWin32,Set PG/PC Interface可以读取S7200和S7300的站地址,如下图:页脚内容5图6 CP5611诊断结果(站地址0为进行编程的计算机)页脚内容6图7 使用STEP7 MicroWin32诊断结果2.S7-200和S7-300进行PROFIBUS通信S7-300与S7-200通过EM277进行PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区,并且S7-300组态EM277从站时设置正确的地址即可。
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种:
s7-200和s7-300plc的MPI通讯
1、s7-300plc与s7-200plc在MPI协议下通讯时,例如put(写指令SFC68),
其驱动位为M0.0,判断是否传送结束的标志位为M0.1,则程序应该如图所示:
下图就是s7-300与s7-200plc通讯的写指令,其中DEST_ID是200plc的地址,该条指令是将s7-300里的MB50传送给200plc的VB0
200plc与300plc在MPI通讯协议下的步骤:
1、硬件接线-----------在200与300的plc的MPI协议口用通信电缆连接
2、更改200plc的站地址为3或者其他的不是2所有站号(MPI协议下,
200plc只能作为从站,因此更改200plc的地址),同时,更改通信所用端口的波特率的更改,一般更改为187.5KP,下载系统快,完成更改3、组态300plc的硬件,组态完成后,点击CPU,再跳出来的对话框中,
对通讯波特率,和站地址进行更改
4、规划好数据的读写(在指令中完成)如第三张图中的MB50和
P#DB1.DBX0.0 BYTE 1---------就是代表把MB50传送到200plc的VB0
5、最后,根据需要进行编程序。
(见第一条)
6、总结:
Plc通讯的固定步骤
1、硬件接线
2、更改地址和波特率
3、规划数据的读和写即数据的传送
4、开始编程、下载、调试。
如何实现S7200与S7300之间的MPI通讯
如何实现S7200与S7300之间的MPI通讯?问题:如何实现S7200与S7300之间的MPI通讯?回答:S7200与S7300之间采用MPI通讯方式时, S7200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7300中需要在OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),实现S7300 与S7200之间的通讯,调用SFC67和SFC68时VAR_ADDR参数填写S7200的数据地址区,这里需填写P#DB1.××× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
首先根据S7300的硬件配置,在STEP7当中组态S7300站并且下载,注意S7200和S7300出厂默认的MPI地址都是2,所以必须先修改其中一个PLC的站地址,例子程序当中将S7300 MPI地址设定为2,S7200地址设定3,另外要分别将S7300和S7200的通讯速率设定一致,可设为9.6K,19.2K,187.5K 三种波特率,例子程序当中选用了19.2K的速率。
例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:分别在STEP7 MicroWin32 和STEP7当中监视S7200和S7300 PLC当中的数据,数据监视见面如下:通过CP5611,STEP7 MicroWin32, Set PG/PC Interface可以读取S7200和S7300的站地址,如下图:站地址0代表的时进行编程的PG,即当前连接PLC的PC。
0解答如何实现S7300与S7-200的EM277之间的PROFIBUS DP通讯链接?问题:如何实现S7300与S7-200的EM277之间的PROFIBUS DP通讯链接?回答:S7-300与S7-200通过EM277进行PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区与S7-300的组态EM277从站时的硬件I/O地址相对应就可以了。
S7-300PLC和S7-200PLC的MPI通讯
个人收集整理-ZQ
(多点接口)是西门子内部使用地通信协议,物理层为.通过网络地基本通信,可以用系统功能和来读、写地存储区,最多可读、写字节地数据,不需要编写通信程序.其优点是使用自带地通信接口,不需要增加通信用地硬件,编程简单,容易实现.
.通信参数地设置
用系统块设置在网络中地站地址为.为了方便下载和监控,将、和计算机地通信速率均设置为.需要将系统块下载到,设置地参数才会起作用.文档收集自网络,仅用于个人学习组态时将连接到网络上,设置站地址为.将设置地参数下载到.文档收集自网络,仅用于个人学习
.读写地区地编程
在地中调用“”,将本站地地字节数据发送到通信伙伴地地~,即地~.调用“”,读取地~(即地~)中地数据,将它们存放到.执行地时间间隔为默认地.文档收集自网络,仅用于个人学习
下面是地循环中断组织块地程序:
程序段:将本站地中地数据写入地区
""
地地址文档收集自网络,仅用于个人学习
要写入数据地~文档收集自网络,仅用于个人学习
存放本站要发送地数据地地址区文档收集自网络,仅用于个人学习
程序段:读取地区地数据,保存到本站地
""
要读取地~文档收集自网络,仅用于个人学习
保存读取地数据地地址区文档收集自网络,仅用于个人学习为了验证通信是否实现,在初始化程序将数据块地字节数据发送区地字预置为,将地字节数据接收区复位为.文档收集自网络,仅用于个人学习
.地程序
为了验证通信是否实现,在地中,在第一个扫描周期将发送数据区~预置为,将接收数据区~清零.文档收集自网络,仅用于个人学习
, ,
, ,
可以用地变量表和地状态表来监视参与通信地存储区.
1 / 1。
S7-200与S7-300之间的单边MPI通信
S7-200 PLC与S7-300 PLC之间采用MPI通讯方式时,S7-200 PLC中不需要编写任何与通 讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7300 PLC中需要在组织块OB1(或是定时中断组织块OB35)当中调用系统功能X_GET (SFC67)和X_PUT(SFC68),以实现S7-200 PLC与S7-300 PLC之间的通讯。调用SFC67和 SFC68时VAR_ADDR参数填写S7-200的数据地址区,由于S7-200的数据区为v区,这里需 填写 P#DB1.DBX×× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n-1) 的数据区。例如交换的数据存在S7-200中VB50到VB59这10个字节当中,VAR_ADDR参 数应为 P#DB1.DBX50.0 BYTE 10. 首先根据S7-300的硬件配置,在STEP7当中组态S7-300站并且下载,注意S7-200和S7300出厂默认的MPI地址都是2,所以必须修改其中一个PLC的站地址,例子程序当中 将S7-300 MPI地址设定为2,S7-200地址设定3,另外要分别将S7-300和S7-200的通讯 速率设定一致,可设为9.6K,19.2K,187.5K三 种波特率,例子程序当中选用了19.2K 的速率。
通信组态
通信组态
通信组态
数据监控Biblioteka 意事项1 虽然MPI的波特率可以达到12M,但是受到S7-200通信能力的限制, 所以可设为9.6K,19.2K,187.5K三 种波特率。 2 如果PPI或者MPI的通信距离超过50m,需要加中继器;如果中继器 之间没有任何站点的情况下,最远距离可为1000米。 3 MPI不能与作为PPI主站的S7-200PLC通信。
S7-300与s7200MPI通讯(总结)
S7-300与s7200MPI通讯(总结)1.⾸先设置300站点1.添加硬件2.做⼀个循环扫描的时钟存储器,在硬件表中选中CPU,”周期/时钟存储器”(Cycle/Clock Memory),设置参数如下:这⾥“”,表⽰MB0被作为时钟存储器,时钟存储器的各位对应的频率和周期如下所⽰:3.OB1编写程序,(1)触发M1.1和M1.5(2)调⽤SFC67和SFC68读取数据将300站点的MB6传输到200站点的QB0中这⾥MD36存储的为300站点采集到的模拟量信号,MD10为200站点的地址,即将300站点的MD36的数据传输到200站的的MD10中。
200站点的地址为4(W#16#4),将200站点的IB0传输到MB7中,如果要读取200站点V存储区,则梯形图的VAR,ADDR应设为P#DB1.XXXbyte n,对应于200站点中的VBxx到VB(xx+n)(例如P#DB1.DBX0.0 BYTE 8,通信数据包最⼤为64个字节).(实际测试有问题,发现SFC67的VAR_ADDR的输⼊格式没有这种格式,后来⽤MB形式的数据成功了,S7-200的数据要传输到MB的数据中再传输给300主站)对于DEST_ID对应的是MPI从站的地址,如W#16#表⽰从站地址为4.所以作为⼀个MPI主站和多个MPI从站的⽹络时通过该项来改变地址。
这⾥M1.1和M1.5要间断性吸合,⽤于发送读写信号(3)300站点采集模拟量数据2.设置200站点数据创建⼀个200的程序,在“系统块”中设置站地址和波特率,注意:这⾥端⼝0的波特率和地址要和300站点的⼀致。
200站点在数字量不需要设置,只需要采集模拟量信号即可同样,如果要将200站点的模拟量数据(VD54)传输到300站点中,那么只需要在300程序SFC67中设置VAR_ADDR地址为P#DB1.54byte 3,表⽰VD54~VD(54+3).总结:在MPI⽹络上最多可以有32个站,⼀个⽹段的最长通信距离为50⽶(通信波特率为187.5Kbit/s时),更长的通信距离可以通过RS-485中继器扩展。
S7300之间通过SFC67_68实现MPI通讯
问题:如何实现S7300与S7300之间的MPI通讯?
回答:S7300与S7300之间采用MPI通讯方式时,其中一台S7300 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的DB存储区当中即可,而另一台S7300中需要在OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),实现两台S7300之间的通讯,调用SFC67和SFC68时,VAR_ADDR参数填写S7300的数据地址区,这里需填写P#DB1.××× BYTE n对应的就是对方S7300 的DB存储区当中的数据区。
首先根据S7315-2DP的硬件配置,在STEP7当中组态S7300站并且下载,注意
S7300出厂默认的MPI地址都是2,所以必须先修改其中一个PLC的站地址,例子程序当中将S7315-2DP MPI地址设定为2,S7314C地址设定为3,另外要分别将S7300的通讯速率设定一致,可设为9.6K,19.2K,187.5K三种波特率,例子程序当中选用了187.5K的速率。
如果您对CP5611的速率属性设定的不对,在Set PG/PC Interface和STEP7上会出现如下报错信息:
如果通讯方式和速率设定正确,Set PG/PC Interface窗口中的界面如下:
站地址0代表的时进行编程的PG,即当前连接PLC的PC。
例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:
STEP7当中监视两台S7300 PLC当中的数据,数据监视界面如下:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何实现S7200与S7300之间的MPI通讯?
问题:如何实现S7200与S7300之间的MPI通讯?
回答:S7200与S7300之间采用MPI通讯方式时, S7200 PLC中不需要编写任何与通讯有关的程序,只需要将要交换的数据整理到一个连续的V 存储区当中即可,而S7300中需要在OB1(或是定时中断组织块OB35)当中调用系统功能X_GET(SFC67)和X_PUT(SFC68),实现S7300 与S7200之间的通讯,调用SFC67和SFC68时VAR_ADDR参数填写S7200的数据地址区,这里需填写P#DB1.××× BYTE n 对应的就是S7200 V存储区当中VB××到VB(××+n)的数据区。
首先根据S7300的硬件配置,在STEP7当中组态S7300站并且下载,注意S7200和S7300出厂默认的MPI地址都是2,所以必须先修改其中一个PLC的站地址,例子程序当中将S7300 MPI地址设定为2,S7200地址设定3,另外要分别将S7300和S7200的通讯速率设定一致,可设为9.6K,19.2K,187.5K 三种波特率,例子程序当中选用了19.2K的速率。
例子程序在OB1当中调用数据读写功能块:SFC67和SFC68,如下图:
分别在STEP7 MicroWin32 和STEP7当中监视S7200和S7300 PLC当中的数据,数据监视见面如下:
通过CP5611,STEP7 MicroWin32, Set PG/PC Interface可以读取S7200和S7300的站地址,如下
图:
站地址0代表的时进行编程的PG,即当前连接PLC的PC。
0
解答如何实现S7300与S7-200的EM277之间的PROFIBUS DP通讯链接?
问题:如何实现S7300与S7-200的EM277之间的PROFIBUS DP通讯链接?
回答:
S7-300与S7-200通过EM277进行PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区与S7-300的组态EM277从站时的硬件I/O地址相对应就可以了。
插入一个S7-300的站:
选中STEP7的硬件组态窗口中的菜单Optionà Install new GSD,导入SIEM089D.GSD文件,安装EM277从站配置文件,如下图:
在SIMATIC文件夹中有EM277的GSD文件:
导入GSD文件后,在右侧的设备选择列表中找到EM277从站,PROFIBUS DPàAdditional Field DevicesàPLCàSIMATICàEM277,并且根据您的通讯字节数,选择一种通讯方式,本例中选择了8字节入/8字节出的方式,如下图:
根据EM277上的拨位开关设定以上EM277从站的站地址,如下图:
组态完系统的硬件配置后,将硬件信息下载到S7-300的PLC当中:
S7-300的硬件下载完成后,将EM277的拨位开关拨到与以上硬件组态的设定值一致,在S7-200中编写程序将进行交换的数据存放在VB0-VB15,对应S7-300的PQB0-PQB7和PIB0-PIB7,打开STEP7中的变量表和STEP7 MicroWin32的状态表进行监控,它们的数据交换结果如下图:
注意:VB0-VB7是S7-300写到S7-200的数据,VB8-VB15是S7-300从S7-200读取的值。
EM277上拨位开关的位置一定要和S7-300中组态的地址值一致。