基于配置方式的轴系监测数据展示实现方法

2018-11-01 09:21:40,,,
船海工程 2018年5期
关键词:主键登记表控件

,,,

(1.武汉理工大学 能源与动力工程学院,武汉 430063;2.泰州口岸船舶有限公司,江苏 泰州 225321)

在船舶动力设备运行状态监测、相关实验室性能测试分析等应用场合,都需要利用各类传感器获取被监测对象的状态参数,并将其在仪表或监测系统软件界面进行展示。当前类似系统在开发时主要根据实际需求统计监测参数个数与界面控件呈现形式,在选定的开发平台上完成界面的布局与逻辑代码编辑工作[1-3]。这种实现方法简单易行,但都采用固化的软件界面,如果需要增加显示参量、改变某个监测参量的展示形式、调整布局位置、调整系统显示器尺寸与个数等情况,都只能通过修改软件源代码、并重新编译分发的方式才能实现,系统的灵活性不够。针对该问题,基于配置化方式,提出一套更为灵活方便的处理方式。

1 方法设计

1.1 整体设计

配置方式的方法的核心是通过将直接测量的参数及中间计算量等需要显示的测点与呈现控件、呈现位置、呈现显示器动态绑定的方法,并结合设计的配置工具,帮助进行初始配置并提供用户后续自行调整的能力。系统运行时,根据设定的配置信息,利用动态创建界面的方法自动生成界面元素[4]。在Visual Studio 2017平台利用VB.NET及SQL Server 2008数据库进行了方法的测试验证。

1.2 配置信息

配置信息的设计是重点之一,配置文件的形式可以是ini文件、xml文件、注册表、数据库表格等多种类型,但是由于实际项目中的配置信息较多,以数据库的形式无疑是最好的选择[5]。数据库是信息系统的核心和基础,把信息系统中的大量数据按照一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确的从数据库中获取所需要的信息[6]。具体配置信息的数据库表的设计包括原始测点登记表、计算测点表配置表、测点显示类型表、系统显示器登记表、显示配置方案表等信息。原始测点登记表是对试验数据采集的相关信息进行存储,主要字段结构见表1。

表1 原始测点登记表

在原始测点登记表中,几个关键字段的作用描述如下。

1)测点编号。实现对测点进行编号,对每个测点的编号要求唯一。

2)对应存储表。存储对应测点的采集数据表的表名信息。

3)对应存储字段。存储对应测点在存储表中的对应字段名。

(4)测点类型:对测点类型的描述,测点类型为原始测点或计算测点,若测点类型为计算测点,则需要配置“计算测点配置表”的数据。计算测点配置表的主要结构见表2。

表2 计算测点表配置表

计算测点表配置表中几个关键字段的用途说明如下。

1)计算配置说明。对计算公式设置进行描述,例如6个测点温度的平均值。

2)计算配置表达式。设定计算表达式,该表达式是给用户看的,而具体计算公式设定,在计算公式设置字段中。例如(水润滑轴承温度测点1+水润滑轴承温度测点2++水润滑轴承温度测点6)/6。

3)计算公式设置。其值一般为(wd1+wd2++wd6)/6,其中wd1为对应“原始测点登记表”中的测点编号,其他类同,可以配置为 max(wd1,wd2,,wd6),则表示取某一次测量6个测点中的最大值,因为这6个测点在一次采样中是都有值的,对这2个表达式,为了后续识别,需要在“计算配置说明”字段中给予一个描述。计算测点表配置表的具体示例见表3。

表3 计算测点表配置表示例

在常见的监测数据呈现系统中都是以界面控件的形式进行监测数据的展示,通过测点显示类型表对界面控件的信息进行存储,若测点显示类型不满足实际需求时,则可以通过添加配置信息的形式实现界面控件的添加。具体信息见表4。

表4 测点显示类型表

测点显示类型表中“类型名称”字段用于对控件的名称进行描述,例如垂直液柱、数字表、仪表盘以及趋势图等。若系统当前显示器无法满足全部的数据呈现功能时,可以通过系统显示器登记表进行拓展显示屏,增强系统的拓展性。系统显示器登记表用于保存系统目前用多少个显示器,每个显示器的尺寸等信息。具体信息见表5。

表5 系统显示器登记表

系统显示器登记表几个关键字段说明如下。

1)显示器编号。对系统中存储在显示器进行编号。

2)显示器类型。记录显示器的类型信息。

设计了显示配置方案表用于将测点信息与显示器以及界面控件相关联的重要途径,也是基于配置思想的轴系监测数据呈现方法设计的核心之一。常见的监测数据系统由区域、测点、控件以及文本描述组成。根据配置方式设计的显示配置方案表结构见表6。

表6 显示配置方案表

显示配置方案表中几个关键字段说明如下。

1)主键。对显示配置方案表中的信息进行编号,对每条配置信息的编号要求唯一。

2)父主键。存储当前配置信息的父主键信息,如果为根节点,则无父主键,值保存0。通过主键及父主键这2个字段,实现用结构化的存储表格来保存树状的信息。

3)名称。当前配置显示信息的名称,可以是标签名、页签名、区域名、测点显示名称等。

4)类型。当前配置信息的所属类型,其中所有可供选择的类型为“显示器、页签、区域、测点、文本描述”。

5)缺省显示类型。存储默认的显示类型,当类型无信息时,类型为缺省显示类型。

显示器、页签、区域、测点以及文本描述互相之间的关系具有层次的关系,而通过主键与父主键的存在,可以建立树状的结构进行设置,但是这个树状的结构很难确定具有多少层,只能通过实际显示配置方案表中的配置信息进行设定,图1是树状结构的示例图。

由图1可以看出,每个区域都有逻辑测点,而逻辑测点是根据控件的类型进行设置,控件类型共分为2种模式:①简单控件,其只能显示测点一个时间点上的值;②复杂控件,可以显示测点多个时间点上的值,比如趋势图控件。

1.3 配置设定工具

虽然配置信息的设定比较简单,但如果这些配置信息由人工来输入仍然比较繁琐,设计了一种配置设定工具,其操作界面见图2。通过配置工具能够快速设定配置信息,其中设定信息包括主键与父主键,配置信息的主键为唯一的标识,根据所选择的类型不同,父主键的信息会自动进行匹配,界面元素的坐标通过用户在示例的配置界面上用鼠标点击位置的方式自动输入到文本框中,并对其高度与宽度进行设定,最终决定界面元素所在的位置。

1.4 程序运行流程

系统设计为支持不同显示器显示不同的监测数据,因此程序和显示器是要对应的,在程序运行环境下设计了一个设置的ini文件,或者在程序启动时要人为选择一个显示器编号,才能决定这个显示器上显示的内容。

当程序启动时,根据配置信息或人工选择获得当前显示器编号,根据显示器的编号对“显示配置方案表”进行查询获得需要的信息,将获得的信息进行分类,获得显示的层次分别,根据显示类型,利用动态创建控件技术界面生成页签等区域布局,然后针对一个最小的区域,获取该区域下要显示的测点,通过自动控件添加控件到区域,细化显示,并在测点与定时器对应登记,程序化初始化显示完成。

通过上述的这种方法程序初始化的优缺点如下。

1)优点。通过这种方式,界面显示的控件完全由用户自主配置,能够适应各种工况要求,方法较为灵活。

2)缺点。界面初始化需要的时间相比原来固化设计的程序启动使用要稍微长一些,但时间差异也不会超过0.5 s。

在文中的应用场景下,这种测试平台数据显示对界面初始化时间要求不是很苛刻,而且初始化后的响应时间与预先设计布局的软件一样的,因此没有影响。

程序初始化完后,首先需要统计有多少个不同的数据刷新时间间隔,对每个不同的时间间隔值,登记其关联对应的测点编号,根据统计出来的不同的数据刷新时间间隔的个数注册定时器时间,当定时器时间到,根据该定时器关联的测点编号,获取对应的测点信息,包括测点的显示模式,根据测点显示模式确定数据值的处理方式,更新界面显示。

若程序在运行过程中切换某个监测数据显示方式,例如对一个监测测点,可以分为单一值显示模式和历史数据一起显示模式。在程序运行过程中,用户可能想要实时动态切换该量的形式模式,用户可以通过右键选择菜单或者点击导航栏功能中的“切换显示模式”选择需要的显示类型,将当前软件模块中的控件移除,根据新类型,在对应位置创建相应的控件并设置控件的数据显示。

2 实现效果

根据以上思路及算法实现了相应的程序,图3是程序运行界面示例。通过基于配置方式的监测数据展示方法,程序的界面根据实际监控工况由用户使用配置工具设定配置信息生成所需要的界面,使传统的软件系统固化的缺点得以改善,方便视情工况的监测数据进行呈现。

3 结论

1)通过配置方式,用户自主设定配置信息,生成所需监测界面,与传统状态监测系统的数据呈现方式相比,文中方法的灵活性、适应性与扩展性更强。

2)配置方式的监测系统与传统状态监测系统相比,系统初始化时间较固化界面稍微延长,在系统使用过程中系统稳定性与效率相同。

3)该方法可以推广应用到类似的应用场景,具有一定的工程实用价值。

猜你喜欢
主键登记表控件
基于Go 实现的分布式主键系统研究
2021年山西省对口升学考试奖励照顾考生登记表
山西省成人高校招生录取照顾对象登记表
2020年山西省对口升学考试奖励照顾考生登记表
基于外键的E-R图绘制方法研究
关于.net控件数组的探讨
软件(2018年7期)2018-08-13 09:44:42
山西省对口升学考试获奖考生照顾加分登记表
数据库主键的设计方法探讨
就这样玩会VBA中常见的自定义控件
电脑迷(2012年24期)2012-04-29 00:44:03
浅谈数据库主键设计的原则