一种基于中间件的显示界面数据处理方法及平台的制作方法

文档序号:6380263阅读:196来源:国知局
专利名称:一种基于中间件的显示界面数据处理方法及平台的制作方法
技术领域
本发明涉及一种通信数据处理方法,特别是一种基于中间件的显示界面数据处理方法及平台。
背景技术
随着铁路建设的快速发展,列车车辆的类型也日益增多,无论何种车型都少不了列车智能显示器,驾驶员通过显示器来了解列车上各系统和设备的信息,显示设备已成为列车网络控制系统和信息化系统的重要部件,主要负责列车的状态信息显示,作为列车控制系统的智能人机交互界面。
目前,显示器应用软件开发使用的操作系统平台是嵌入式Linux,⑶I工具集为 FLTK。Linux是一套免费使用和自由传播的类unix操作系统。它既可以做桌面系统,也可以用于嵌入式系统中。用于嵌入式系统的称为嵌入式linux,是指对Linux经过小型化裁剪后,能够固化在容量只有几十万字节或几十亿字节的存储器芯片或单片机中,应用于特定嵌入式场合的专用Linux操作系统。⑶I是图形用户接口。FLTK是一个跨平台的用c++编写的⑶I工具集。可以用于Linux, Microsoft Windows和MacOS X等操作系统,它提供了很多⑶I的功能。
现有列车显示器应用软件开发主要分为两个部分,一个是界面部分,主要是设计界面的外观,并决定使用什么样的控件来显示数据;另一个是处理通信数据部分,这部分处理底层数据并将数据赋给控件显示。显示器开发一般是根据用户需求及数据流的内容,依照内容分类来确定每个界面的详细内容。目前显示器的主要通信方式有MVB、Lonworks, RS485、CAN,显示器软件设计人员在开发时根据不同通信方式去调用不同通信方式的函数库,以实现与控制系统的数据通信。由于列车车型的增多,不同的车型显示器采用的通信方式不一样,大部分通信数据却很相似,显示界面的内容也大多相似,使得显示器软件设计工程师每次在编写过程中都要重复编码这些相似的数据显示内容。现有的列车显示器应用软件开发方法可移植性不强,开发效率不闻,开发人员的工作量大。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种适用于各种列车车型控制系统的基于中间件的显示界面数据处理方法及平台,实现显示器应用系统开发过程的平台化,提高显示器应用系统可移植性,减少工作量,提高列车显示器的应用开发效率。
为解决上述技术问题,本发明所采用的技术方案是一种基于中间件的显示界面数据处理方法,该方法步骤如下
I)开始系统初始化、通彳目初始化、界面初始化、定时器初始化;
2)判断定时器执行周期是否到达,若是,进入3);若否,等待定时中断;
3)判断界面是否已经定义,若已经定义,则预处理已有界面中的控件属性,与程序中预定义的变量一一对应;若界面还未定义,则定义未涉及的界面,然后预处理已有界面中的控件属性,与预定义的变量一一对应;
4)建立界面控件对应程序的数据结构以界面为单位,将每个界面定义成一个对应的结构体变量,建立具有统一特性的结构体变量;
5)建立数据结构与数据缓存的对应关系将结构体变量一一对应地赋值给界面中定义的控件;
6)判断数据缓存与数据通信中的数据流之间是否有逻辑处理,若有,进入7);若无,进入8);
7)建立数据缓存与数据流的对应关系;
8)处理数据缓存与数据流的逻辑关系,使数据缓存与数据流对等;
9)刷新界面控件;
10)定时器执行完毕,等待下一周期,返回2)。
控件属性控件是界面编程中用到的功能块,其属性包括显示形式、颜色、字体、 大小等。
预定义的变量指首先在界面设计中定义好的变量。包括BOX、Value output、 Slider box、Clock box、Button等界面中用到的变量。
数据结构根据预定义的控件,建立的具有统一特性的结构体变量。本发明中定义的结构体根据界面为单位,每个界面定义成一个对应的结构体变量,如程序首界面定义成Struct MAIN {unsigned char speed;......},其他界面定义的结构体变量和首界面类似;本发明中定义的结构体变量包括首界面Struct MAIN{};主要数据界面=Struct MAINDATA{};机车配置界面Struct L0C0STATE{};维护界面Struct MANTEANCE{};发送结构体Struct SENDCMD{}等等。
对应关系本发明专指变量间的赋值关系。主要包括把结构体变量一一对应地赋值给界面中定义的控件、把界面中定义的发送部分的控件输入值一一对应地赋值给发送结构体变量。
逻辑处理、逻辑关系本发明中专指数据处理关系,本发明中主要用的这种关系的计算公式如下界面中定义的控件=对应的结构体变量X校正系数;界面中定义的控件=对应的结构体变量土校正系数,通信协议包根据具体情况选择界面中定义的控件的计算公式。
本发明提供了一种基于中间件的显示界面数据处理平台,包括通信接口、标准界面、通信协议包和界面数据接口,还包括多个数据处理中间件,所述通信接口与所述通信协议包双向通信,所述通信协议包与所述数据处理中间件双向通信,所述数据处理中间件与所述界面数据接口双向通信,所述标准界面与所述界面数据接口通信;所述数据处理中间件包括依次通信的数据流文件整理模块、数据流文件与数据缓存关系模块、数据缓存与数据结构关系模块、数据结构与界面控件关系模块、界面信息处理模块。
本发明的主要特点是将现在开发的大量冗余工作通过平台化的思想来解决,主要提供了一种新的平台化的列车显示界面数据处理方法,适用于各种列车车型控制系统的智能人机交互界面应用系统开发。采用“中间件”的形式作为列车终端显示设备与后端数据信号采集系统的桥梁,通过C++/C语言编写一个大的程序模块作为列车显示界面与信号控制系统的接口,实现显示器应用系统开发过程的平台化。4
与现有技术相比,本发明所具有的有益效果为本发明在列车显示器应用软件开发过程中,采用“中间件”的形式作为列车终端显示设备与后端数据信号采集系统的桥梁, 将列车各设备的基本信息状态封装起来直接调用;本发明提供的显示界面数据处理方法实现了显示器应用系统开发过程的平台化,有较强的可移植性,大大减少了工作量,提高了列车显示器的应用开发效率。


图1为本发明一实施例流程图2为本发明一实施例中间件模型示意图3为本发明的基于中间件的显示界面数据处理平台结构框图。
具体实施方式
如图1所示,本发明的方法步骤如下
I)开始系统初始化、通彳目初始化、界面初始化、定时器初始化;
2)判断定时器执行周期是否到达,若是,进入3);若否,等待定时中断;
3)判断界面是否已经定义,若已经定义,则预处理已有界面中的控件属性,与程序中预定义的变量一一对应;若界面还未定义,则定义未涉及的界面,然后预处理已有界面中的控件属性,与预定义的变量一一对应;
4)建立界面控件对应程序的数据结构以界面为单位,将每个界面定义成一个对应的结构体变量,建立具有统一特性的结构体变量;
5)建立数据结构与数据缓存的对应关系将结构体变量一一对应地赋值给界面中定义的控件;
6)判断数据缓存与数据通信中的数据流之间是否有逻辑处理,若有,进入7);若无,进入8);
7)建立数据缓存与数据流的对应关系;
8)处理数据缓存与数据流的逻辑关系,使数据缓存与数据流对等;
9)刷新界面控件;
10)定时器执行完毕,等待下一周期,返回2)。
将列车显示器开发过程平台化。如图1所示,本发明的主要目的是将列车显示器的界面数据接口、数据处理中间件和通信协议包三个部分进行封装,封装后显示器应用软件设计人员只需根据用户需求做小范围的界面修改和数据采集部分的开发。
如图3所示,基于中间件的显示界面数据处理平台,包括通信接口、标准界面、通信协议包和界面数据接口,还包括多个数据处理中间件,所述通信接口与所述通信协议包双向通信,所述通信协议包与所述数据处理中间件双向通信,所述数据处理中间件与所述界面数据接口双向通信,所述标准界面与所述界面数据接口通信;所述数据处理中间件包括依次通信的数据流文件整理模块、数据流文件与数据缓存关系模块、数据缓存与数据结构关系模块、数据结构与界面控件关系模块、界面信息处理模块。
处于最底层的是列车控制系统与显示器间的通信接口,通信接口与通信协议包间双向传递数据,一般通过端口来实现双方通信。通信协议包通常包含MVB、Lonworks、RS485和CAN四种通信方式的协议包,依据通信方式的不同调用不同通信协议包函数,以实现与控制系统间的通信
整个发明的工作重心是在数据处理中间件(如图2所示)上,以中间件作为界面显示与车辆网络通信数据的接口,使得界面显示与具体网络通信协议无关。数据处理中间件中包含了整车各设备存在的状态信息,通信协议包的数据信息源也基本来自于数据处理中间件,用户只需通过简单的函数调用得到数据信息,或是将数据信息反馈给中间件。类似地,数据处理中间件也与界面数据接口间能进行双向交流,也通过内部函数来实现此功能。 中间件主要用类和结构体进行封装,同类信息或者联系比较紧密的数据,封装成一个类/ 结构体,那么一个车辆的信息便可用多个中间件进行封装。后期车辆信息的增加可以通过继承先有的类/结构体完成补充。车辆数目的增加(如重联)可以通过定义中间件数组来实现。界面数据直接来源于中间件,所以无论哪种车型,协议如何变化,界面程序与中间件都不用变化,网络数据直接传给中间件,从而完成对中间件的赋值。
软件的最上层是与用户的接口,即标准界面,它与界面数据接口直接通信。标准界面主要是指显示器应用软件设计人员在开发过程中根据用户的需求来确定界面的显示内容,界面显示内容可到界面数据接口内调用。
本发明中提及的界面采用Linux下的界面编程工具FLUID+FLTK的图形开发工具定义,界面中用到的控件均由FLUID工具提供。
权利要求
1.一种基于中间件的显示界面数据处理方法,其特征在于,该方法步骤如下 1)开始系统初始化、通彳目初始化、界面初始化、定时器初始化; 2)判断定时器执行周期是否到达,若是,进入3);若否,等待定时器执行周期; 3)判断界面是否已经定义,若已经定义,则预处理已有界面中的控件属性,与程序中预定义的变量一一对应;若界面还未定义,则定义未涉及的界面,然后预处理已有界面中的控件属性,与预定义的变量一一对应; 4)建立界面控件对应程序的数据结构以界面为单位,将每个界面定义成一个对应的结构体变量,建立具有统ー特性的结构体变量; 5)建立数据结构与数据缓存的对应关系将结构体变量一一对应地赋值给界面中定义的控件; 6)判断数据缓存与数据通信中的数据流之间是否有逻辑处理,若有,进入7);若无,进入8); 7)建立数据缓存与数据流的对应关系; 8)处理数据缓存与数据流的逻辑关系,使数据缓存与数据流对等; 9)刷新界面控件; 10)定时器执行完毕,等待下一周期,返回2)。
2.根据权利要求I所述的基于中间件的显示界面数据处理方法,其特征在于,所述步骤3)中,控件属性包括显示形式、顔色、字体和大小。
3.根据权利要求I所述的基于中间件的显示界面数据处理方法,其特征在于,所述步骤4)中,定义的结构体变量为首界面Struct MAINH ;主要数据界面=StructMAINDATA{};机车配置界面Struct LOCOSTATE{};维护界面Struct MANTEANCE{};发送结构体Struct SENDCMD {}。
4.一种基于中间件的显示界面数据处理平台,包括通信接ロ、标准界面、通信协议包和界面数据接ロ,其特征在干,还包括多个数据处理中间件,所述通信接ロ与所述通信协议包双向通信,所述通信协议包与所述数据处理中间件双向通信,所述数据处理中间件与所述界面数据接ロ双向通信,所述标准界面与所述界面数据接ロ通信;所述数据处理中间件包括依次通信的数据流文件整理模块、数据流文件与数据缓存关系模块、数据缓存与数据结构关系模块、数据结构与界面控件关系模块、界面信息处理模块;所述数据结构是指以界面为单位,将每个界面定义成ー个对应的结构体变量,建立具有统ー特性的结构体变量。
5.根据权利要求4所述的基于中间件的显示界面数据处理平台,其特征在于,所述通信协议包包括MVB、Lonworks、RS485和CAN通信方式的协议包。
6.根据权利要求4所述的基于中间件的显示界面数据处理平台,其特征在于,所述通信接ロ与所述通信协议包通过端ロ通信。
全文摘要
本发明公开了一种基于中间件的显示界面数据处理方法及平台,主要提供了一种新的平台化的列车显示界面数据处理方法,适用于各种列车车型控制系统的智能人机交互界面应用系统开发。采用“中间件”的形式作为列车终端显示设备与后端数据信号采集系统的桥梁,通过C++/C语言编写一个大的程序模块作为列车显示界面与信号控制系统的接口,实现显示器应用系统开发过程的平台化。本发明提供的显示界面数据处理方法实现了显示器应用系统开发过程的平台化,有较强的可移植性,大大减少了工作量,提高了列车显示器的应用开发效率。
文档编号G06F9/44GK102981827SQ20121043049
公开日2013年3月20日 申请日期2012年11月1日 优先权日2012年11月1日
发明者李宇锋, 饶天贵, 杨玲, 王敏芊, 曾升 申请人:株洲南车时代电气股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1