采用PROFIBUS-DP的FCS性能研究及诊断软件开发

[09-13 16:54:06]   来源:http://www.88dzw.com  接口定义   阅读:8997

文章摘要:图4为作者组建的PROFIBUS-DP网络实验系统结构图。在网络系统中,1类主站为SIEMENS公司的CPU315-2DP PLC,PC工控机作为2 类主站,通过现场总线接口卡CP5611与DP 总线相连, WAGO公司的750-333、BECKHOFF公司的BK3120、SIEMENS公司的ET200-L及和利时公司的LM3107 PLC等PLC设备作为从站连接到DP网络中。图4 PROFIBUS-DP网络实验系统结构图2.2 软件开发环境软件开发工具为VC++6.0,通过计算机标准串口通信,将PROFIBUS—DP报文采集到上位机进行处理。PROFIBUS-DP系统作为实验平台,采用RS4

采用PROFIBUS-DP的FCS性能研究及诊断软件开发,标签:接口技术,微机原理与接口技术,http://www.88dzw.com

  图4为作者组建的PROFIBUS-DP网络实验系统结构图。在网络系统中,1类主站为SIEMENS公司的CPU315-2DP PLC,PC工控机作为2 类主站,通过现场总线接口卡CP5611与DP 总线相连, WAGO公司的750-333、BECKHOFF公司的BK3120、SIEMENS公司的ET200-L及和利时公司的LM3107 PLC等PLC设备作为从站连接到DP网络中。

  


  图4 PROFIBUS-DP网络实验系统结构图

  2.2 软件开发环境

  软件开发工具为VC++6.0,通过计算机标准串口通信,将PROFIBUS—DP报文采集到上位机进行处理。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数据的数量、从站需要的延迟时间以及主站的空闲时间等有关。作者通过了大量的计算和多次实验调试,寻找到一个合适的定时器间隔。

上一页  [1] [2] [3]  下一页


Tag:接口定义接口技术,微机原理与接口技术接口定义

《采用PROFIBUS-DP的FCS性能研究及诊断软件开发》相关文章

分类导航
最新更新
热门排行