




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于PROFIBUSDP的FCS性能研究及诊断软件的开发曹雪华1(1上海安科瑞电气有限公司,上海嘉定201801)摘 要:分析了PROFIBUS-DP传输协议与报文结构,设计了一种基于串口通信的PROFIBUS-DP总线性能分析与诊断软件,给出了程序的实现方法和关键技术,在PROFIBUS-DP实验平台上进行了运行调试。结果表明,该软件运行良好,可以基本完成对PROFIBUSDP报文采集、分析和存储等功能。 关键词:现场总线, PROFIBUS-DP,通信协议,报文,串口。The design of soft for analyse and the study ofFCSs performance based on PROFIBUS-DPCao Xue hua 1(1 Shanghai Arcel Co., Ltd, Jiading Shanghai 201801 CHINA)Abstract: Introduced communication protocol and message structure of PROFIBUS-DP, designed one software based on serial port communication, The software can analyze and diagnose the performance of PROFIBUS-DP.Presented the methodand the key functions technique,The software is run on the communication network platform The debugging results indicate that the software can gather、analyse and memorize some kind of message of PROFIBUSDP.Keywords: FieldBus, PROFIBUS, communication protocol, message, serialport0 引言PROFIBUS是工业自动化领域内市场占有率最高的一种现场总线技术,它包括用于制造业自动化的PROFIBUSDP和用于流程工业领域的PROFIBUSPA,它是目前我国惟一的现场总线国家标准。随着越来越多工业控制系统采用了PROFIBUS现场总线技术,对这些控制系统进行具体的、直观的和实时的在线分析与诊断成为了最基本的要求,要想完成这样的任务,就需要有相应的工程分析诊断工具。国内外目前所研究的这些总线性能分析诊断工程工具存在着功能不够全面、界面不够完善、价格昂贵、不适合中国国情等问题。开发一款能够对总线系统进行分析和诊断,方便的、性能价格比高的分析诊断工程工具必将成为急需的产品。由于在PRIFBUS传输报文可以反映出总线性能的很多参数,包括各种故障状态。比如:从参数化报文可以看出主站和从站的关系,从站的操作方式,包括通道参数、功能设定、装置参数和ID号等。从组态报文可以看出从站I/0类型及性质,以及模块的I/O性质及数据类型等。从诊断报文可以看出从站各种参数设置错误,各种组态错误,以及装置模块错误类型。所以,本文作者就是在对PROFIBUS-DP报文进行详尽分析的基础上,采用VC+ 6.0开发了一款基于串口通讯的PROFIBUS性能分析诊断软件。1 PROFIBUS工作机理1.1PROFIBUS-DP编码技术PROFIBUSDP交换数据使用异步传输技术和NRZ编码。NRZ编码的二进制信号“0”或“1”的信号电平在信号持续期间维持不变。图1所示为NRZ码信号图。图1非归零码信号每个数据链路层协议数据单元应由一定数量的字符组成,每个字符都是一个用于异步传输的起停字符。每个字符由11个比特组成,包括1个总是为二进制“0”的起始比特(ST),8个可以是二进制数“0”亦可以是二进制数“1”的信息比特,1个可以是二进制“1”也可以是二进制数“0”的偶校验比特(P),1个总是为二进制数“1”的停止比特,如图2所示。图2单个字符格式接收器的比特同步总是从起始比特的下降沿开始,也就是说,在从二进制“1”转换到二进制数“0”时开始。在比特时间的中间应扫描起始比特和所有后继的比特。在比特时间的中间,起始比特应是二进制数“0”,否则认为同步失败并停止同步过程。以二进制“1”的停止比特来结束字符的同步,如果此时出现二进制数“0”来代替此停止比特,则应认为并报告一个同步差错或字符差错,并应等待下一个起始比特的前导沿。1.2报文格式如图3所示,PRFIBUS-DP有以下5种报文格式。其中,SYN为同步周期,它是一个最小的时间间隔,在此时间间隔内,每个站在它可以接收发送/请求报文帧或令牌起始部分之前,应从传输介质接收空闲状态(idle state)(idle=二进制“1”)。同步周期最小为33个线空闲比特;SD为起始定界符,DA是目的地址,SA是源地址,FC是控制帧;FCS是帧校验和,ED为结束定界符,值为16h,L是信息字段长度,其中SD1= 10h,用于请求FDL状态,寻找一个新的活动的站点,报文长度固定,没有数据单元;SD2= 68h,用于SRD服务,报文的数据长度可变;SD3 = A2h,数据单元长度固定(L总为8字节);SD4 = DCh,表示该报文为令牌报文;SC =E5h, 短确认报文。图3PROFIBUSDP链路层报文格式2 报文诊断软件的实现2.1实验平台图4为作者组建的PROFIBUS-DP网络实验系统结构图。在网络系统中,1类主站为SIEMENS公司的CPU315-2DP PLC,PC工控机作为2 类主站,通过现场总线接口卡CP5611与DP 总线相连, WAGO公司的750-333、BECKHOFF公司的BK3120、SIEMENS公司的ET200-L及和利时公司的LM3107 PLC等PLC设备作为从站连接到DP网络中。图4PROFIBUS-DP网络实验系统结构图2.2软件开发环境软件开发工具为VC+6.0,通过计算机标准串口通信,将PROFIBUSDP报文采集到上位机进行处理。PROFIBUS-DP系统作为实验平台,采用RS485/RS232通信电缆将其RS485的一端接入PROFIBUS-DP网络连接器的背插接口,RS232一端直接接入到PC机的串口。2.3软件系统基本程序框图软件系统的程序基本架构流程图如图5所示。图5基本程序框架流程图整个系统软件包括如下几个模块:1)程序主控模块:负责实现程序逻辑与主界面,调用串口通信模块和接收显示模块。2)串口通信模块:负责实现串口通信任务,PROFIBUS-DP报文数据采集及串口参数设置。3)数据处理模块:根据PROFIBUS-DP协议报文格式,将采集上来的数据按报文格式进行处理,并存入临时缓冲区。4)接收显示模块:负责实现接收数据的处理与显示。5)数据库模块及数据查询模块,用来实现对采集到报文的历史数据的分析和查询。2.4关键技术该软件主要是实现对PROFIBUS报文进行提取,实现在线采集PROFIBUS-DP报文数据,从数据链路层角度对各种报文进行分析,完成各种类型报文的显示,完成对报文种类、服务类型、地址、数据长度及数据单元等信息的提取显示,并对诊断报文、参数化报文及组态报文等的数据单元进行详细的分析,得出总线性能的各种参数及故障原因,将分析过的数据存储进数据库,存入临时缓冲区,根据需要将分析过的报文信息存入数据库,实现历史查询。如何实现报文帧的提取是本软件设计的一个关键问题。由于PROFIBUS报文格式有很多种,而且包括数据长度不固定的可变报文。虽然各种报文都具有固定的报头、报尾,但是存在的问题是报头报尾并不是特定的字符,有可能和报文中数据单元内容一样,所以这里利用报头报尾进行报文的提取是不可行的。作者在这里利用各种报文帧前的同步字符进行报文提取,也就是说,在每个完整报文帧传输之前,其前面都有一个不小于33bit的同步时间,在报文帧中间是没有任何间隔的,利用这一同步时间,在VC+中利用超时函数,对报文帧进行了完整地提取。另外,由于通信数据量很大,速度较快,这里采用了WINDOWS多线程技术。一个线程为监视线程,监视串口通讯,一个为数据处理主线程,另外一个为定时刷新数据库线程。当监视线程监视到串口中有数据到达时,就触发一个消息通知数据处理主线程,数据处理主线程就去串口缓冲区中取出数据,并进行数据处理。定时器线程定时刷新数据库显示,以实现实时显示功能。作者在程序编写的过程中,出现数据库不能实时刷新的情况,后来发现问题出在WINDOWS的WM_TIMER定时器上,由于该定时器消息优先级较低,可能造成WM_TIMER消息的丢失,所以不能实现数据库的实时刷新。解决的方法是采用WINDOWS的多媒体定时器。在使用多媒体定时器的过程中,定时间隔的选取又是一个关键的问题,定时间隔选取太小,将会耗费大量的CPU内存,造成系统“死机”, 定时间隔选取太大,又不能完成“实时”显示功能。这里又涉及到PROFIBUS总线信息循环时间的问题,总线信息循环时间与总线传输的波特率、从站的数量、I/O数据的数量、从站需要的延迟时间以及主站的空闲时间等有关。作者通过了大量的计算和多次实验调试,寻找到一个合适的定时器间隔。2.5显示界面该PROFIBUS-DP报文分析软件的程序界面包括主界面、串口配置界面、报文过滤界面、报文查询界面、数据库存储界面以及历史查询界面等。PROFIBUS-DP分析诊断软件的运行主界面如图6,窗口左上部分“当前profibus报文”组框内存放最近采集到的PROFIBUS-DP报文信息,并可通过工具栏上的记录移动按钮滚动察看记录;右上方“信息面板”是用来显示所有查看报文的详细信息。窗口下半部分以网格形式显示PROFIBUS-DP历史信息。若需要打开串口,开始接收PROFIBUS报文信息,则可选择“命令”菜单下的“开始接收”项;若需停止接收PROFIBUS报文信息,则可选择“命令”菜单下的“停止接收”项;若需要配置串口参数,则可选择“命令”菜单下的“串口配置”项,此时将弹出“串口配置对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年灌阳县中考冲刺卷数学试题含解析
- 学校环境装饰施工方案
- 村防汛应急演练效果评估报告范文大全
- 玻璃雨棚上方施工方案
- 湛江排水带施工方案
- 新建施肥池施工方案
- 2025年新能源储能电池研发生产项目技术创新与市场前景预测可行性报告
- 小区天沟置换施工方案
- 刘家峡化粪池施工方案
- 关于现场机械施工方案
- 纯电动汽车整车控制器(VCU)策略
- 商会入会申请书
- 习作我的暑假生活公开课一等奖市优质课赛课获奖课件
- QCC报告参考模板
- 设计中的重点、难点与关键技术问题的把握控制与相应措施
- 正常菌群与条件致病菌
- 高中数学必修一全部课件-高中数学必修1
- (37)-第十四章第三节传染性单核细胞增多症
- 新媒体运营:微信公众号运营教学课件
- 郁南县东坝镇思磊高效智能生态养殖小区年出栏肉鸡96万羽改扩建项目环评报告书
- 医疗机构门诊患者流行病学调查表
评论
0/150
提交评论