Siemens-MPI协议解析

上传人:jiups****uk12 文档编号:90574884 上传时间:2019-06-13 格式:DOC 页数:18 大小:159.50KB
返回 下载 相关 举报
Siemens-MPI协议解析_第1页
第1页 / 共18页
Siemens-MPI协议解析_第2页
第2页 / 共18页
Siemens-MPI协议解析_第3页
第3页 / 共18页
Siemens-MPI协议解析_第4页
第4页 / 共18页
Siemens-MPI协议解析_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《Siemens-MPI协议解析》由会员分享,可在线阅读,更多相关《Siemens-MPI协议解析(18页珍藏版)》请在金锄头文库上搜索。

1、 Siemens MPI协议解析 摘要:在使用上位机和西门子s7300系列PLC实现自动化过程控制当中,选择 MPI协议进行通信时,PLC可以不用编程,而且可读写所有数据区,快捷方便。但是西门子公司没有公布MPI协议的格式,用户如果想使用MPI协议监控,就必须购买其监控产品或第三方厂家的组态软件。这样给用户自主开发带来一定困难,特别是自行开发的现场设备就不能通过MPI协议接入PLC。而采用其它通讯方式也存在编程复杂,需要购买软件和授权等局限性。本文通过数据监视、采集、分析的方法,解析出了MPI协议的关键报文格式,可用于实现上位机、现场设备与支持MPI协议的 CPU之间通讯,从而提供了一种高效率

2、低成本的通信方式。 关键字: MPI协议 前言工业的现代化,很大程度体现在工业生产过程的自动化,其中信息的传输,数据的交换也成为评价工业自动化水平高低的标准。网络通迅方式的多样化和通迅速率的高速化,使信息交换领域从设备控制层延伸到企业管理层。信息技术的飞速发展,促进了自动化系统结构的变革,以网络为主干的分布式控制系统已成为当今自动化系统的主流趋势。因此,网络通迅的实时性和可靠性,以及网络故障的诊断和排除都成为工业网络通信关注的焦点。MPI网络是西门子工业控制系统中经常用到的一种通迅方式,使用RS485物理接口进行数据传输。下面主要阐述西门子MPI协议的解析方法以及关键报文格式。MPI协议概述M

3、PI协议,其英文全名为Multi-point-Interface。在PLC之间可组态为主主协议或主从协议如何操作依赖于设备类型:如果控制站都是s7300400系列PLC,那么就建立主主连接关系,因为MPI协议支持多主站通讯,所有的s7300 CPU都可配置为网络主站,通过主主协议可以实现PLC之间的数据交换。如果某些控制站是s7200系列PLC,则可以建立主从连接关系,因为s7200 CPU是从站,用户可以通过网络指令实现s7300 CPU对s7200 CPU的数据读写操作。分析思路 西门子Step 7 V5.4软件是S7-300系列PLC(包括ET200S)的开发工具,上位机通过其PCI插槽

4、上的通讯卡(CP5613A2)接口以及通讯电缆连接到PLC的编程口上,并且通讯卡接口和PLC编程口都是RS485接口标准。这说明,PC机实际上是可以通过RS485串口同ET200 CPU(IM151-7)通讯,只是我们不知道通讯协议而已。因此,在上位机上运用西门子提供的PRODAVE S7软件读写PLC时, 通过监视通讯口上的数据,我们就有可能分析出通信报文格式。然后,撤掉西门子通讯卡,直接通过RS485串口向PLC发送报文来验证其正确性,并作进一步的操作。本着这一思想,采用以下步骤获得这些报文。 步骤硬软件需求硬件:串口分支器及通讯电缆,西门子CP5613A2通讯卡,ADVANTECH公司

5、PCI-1601A通讯卡,西门子ET200S(IM151-7CPU以及相关模块)。软件:step7 v5.4 , simatic net 2006 edition, prodave s7 , serial port monitor,PCI1601A driver,visual c+。硬件连接如图1-0 上位机ET200S编程口PCI1601AA啊 ACp5613A2 图1-0 安装完相关软件及驱动程序以后,进行硬件测试以及软件平台搭建(1) 串口分支器制作及通讯电缆的连接(附录A)(2) 运用STEP 7 V5.4对ET200S组态以及相关初始化设置(附录B)(3) PCI1601A通讯卡的测

6、试(附录C)(4) 串口监视软件设置和测试(附录D)(5) PRODAVE S7 调试运行(附录E)完成设置和调试后,打开串口监视软件,并将PLC上电,运行PRODAVE S7并在其中进行各种操作(load 、unload、 read 、write等)时启动数据监视,通过比较分析发现:(1) 与S7-200不同,ET200S不管出于何种状态(run 或 stop),一经上电,就不断发出数据查找设备,在读写数据过程中也不间断。(2) 连接、读出、写入和断开时检测到一系列有规律的数据。经过多次监测比较分析,可得到相关操作的数据帧格式,初始化设定PLC与上位机的地址分别为02和00;为描述方便,现在

7、对数据帧格式做以下符号约定SD:(Start Delimiter)开始定界符LE:(Length)报文长度LER:(Repeated Length)重复数据长度SD: (Start Delimiter)开始定界符DA:(Destination Address)目标地址SA:(Source Address)源地址FC:(Function Code)功能码DSAP:(Destination Service Access Point)目的服务存取点SSAP:(Source Service Access Point)源服务存取点FS: (Frame Sequence)帧序列号UU:(unkown un

8、it)未知操作单元,其数值通常为固定值GU:(group unit) 分组单元DU:(Data Unit)数据单元FCS:(Frame Check Sequence)校验码END:(End Delimiter)结束分界符分析结果连接(load)过程(1)设备查找在PLC(ET200S)上电启动进入run状态后,开始不断发出数据查找设备,数据帧格式如下。DA从00到1F共32个站号,令牌帧和总线访问帧按照严格的帧时序(15帧/s),交替发出。 令牌帧: DC DA SA DC DA 02总线访问帧: SD DA SA FC FCS END 10 DA 02 49 FCS 16 在prodave

9、s7 中运行Load命令后,上位机也开始不断发出数据查找设备,数据帧格式如下。DA从00到1F共32个站号,令牌帧和总线访问帧按照严格的帧时序(19帧/s),交替发出。令牌帧: DC DA SA DC DA 00总线访问帧: SD DA SA FC FCS END 10 DA 00 49 FCS 16 SD、DC、FC、END均占据一个字节长度,为固定数值,分别等于 10、 DC 49、16,FCS采用求和校验,等于DA+SA+FC。(2)握手上位机在收到et200s发出的令牌帧(dc 02 02)后以其令牌帧(dc 00 00)作为回复,等待et200s应答,如果收到dc 00 02,pc机

10、立即回复dc 02 00,令牌握手成功。总线访问握手方式与令牌握手一致。在读写操作过程中,应答握手也不间断。总线访问准备上位机发送pc_request_frame Et200接收判断 Et200s发送plc_ack_frame 上位机等待、定时Et200s发送plc_return_frame上位机接收信息并判断飞上位机发送确认信息pc_ack_frame操作结束读取操作一次读操作的步骤包括上位机发出读命令帧(pc_request_frame_read),PLC作出正确的响应,并将确认信息帧(plc_ack_frame_read)返回给上位机,接着反馈回正确的数据信息帧(plc_return_f

11、rame_read)给上位机,上位机接到此帧数据,校验确定后对PLC做出确认信息帧(pc_ack_frame_read),这样完成一个读取数据的过程。在读取操作过程中,上位机和PLC共进行两次应答。读取命令读取数据时上位机的请求帧格式如下,该帧占据38字节长度,记作pc_request_frame_read(38)。SDLELERSDDASAFCDASPSSAPFSUUGUDUFCSENDSD LE LER SD 占据4字节长度,为固定值 。pc_request_frame_read(0)=68pc_request_frame_read(1)= 1F,帧长度校验,为DA+SA+FC+DSAP+

12、SSAP+FS+GU+DU的字节个数。pc_request_frame_read(2)=1F 重复帧长度,与帧长度校验记法相同。pc_request_frame_read(3)=68DA SA FC DSAP SSAP FS 各占据7字节。pc_request_frame_read(4)=82数值上等于目标站地址加上80pc_request_frame_read(5)=80数值上等于源站地址加上80pc_request_frame_read(6)=5C、7Cpc_request_frame_read(7)=16、15pc_request_frame_read(8)=02、01pc_reques

13、t_frame_read(9)=F1为分界符,其值不变。pc_request_frame_read(10)=00FF,帧序号,对相同操作时自加计数。在应答握手时用来判断当前应答帧是否为本请求的应答。UU占据6字节长度,均为固定值pc_request_frame_read(11)=32pc_request_frame_read(12)=01pc_request_frame_read(13)=00pc_request_frame_read(14)=00pc_request_frame_read(15) =33pc_request_frame_read(16)=02、01GU占据6字节长度,混合读写

14、时可以进行操作pc_request_frame_read(17)=00 pc_request_frame_read(18)=0Epc_request_frame_read(19)=00pc_request_frame_read(20)=00pc_request_frame_read(21)=04pc_request_frame_read(22)单一读写时pc_request_frame_read(22)=01,其他不变化;混合读写时pc_request_frame_read(22)为其他值。DU 单元占据12字节长度从pc_request_frame_read(23)到 pc_request_frame_read(26) 这4字节为固定数值pc_request_frame_read(23)=12pc_request_frame_

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号