您好!欢迎来到源码码网

通用数据回放软件开发研究

  • 行业资讯
  • 来源:源码码网
  • 编辑:admin
  • 时间:2020-04-15 10:41
  • 阅读:296

在工程试验中,数采系统会采集并记录海量的试验数据,浏览、查看数据是分析试验结果的基本方式[1]。以常见的txt和Excel格式的数据文件为处理对象,利用LabVIEW开发平台,设计了一款图形化数据回放软件。该软件不局限于数据源文件的具体记录形式,可根据配置文件自动将数据曲线显示成适合的比例,并可进行离散量的图像化。另外,回放软件提供标尺工具,允许用户任意拖拽追踪目标数据点。将详细讲述回放软件的设计实现。

1数据源存储特性

txt文本格式的数据文件可以视作字符型二维数组,每一行代表一条数据记录,以行结束符EOL作为单条记录结束标志;同一行内,一般以空格、制表符、逗号或者分号作为不同数据项(列项)的区分间隔。Lab-VIEW提供专用的文本读取函数,可按行读取任意数量的文件内容,输出的结果为一维字符数组,每个数组元素为文件中一行记录内容。利用字符处理函数可将按行记录的数据项分离出来。Excel格式文件本身即保存为二维数组形式,但不同列项的数据类型可能不一致,将磁盘上的Excel格式文件调入到内存以后,文件中的数据首先被保存为变体类型的数据[2],需根据原始数据类型对变体数据进行还原。

2软件系统架构

软件系统架构包括以下几个部分:初始化、读取数据源文件、数据处理转换、图形化显示以及响应用户操作。初始化建立软件运行环境,将前面板(用户界面)恢复至默认状态;读取数据源文件将源文件从磁盘调入内存,为后续数据调用处理建立条件;数据转换处理的功能是将调入到内存中的原始文件数据转换成实际的数据类型,并对需要给予曲线显示的数据进行合理缩放,即归一化处理;图形化显示功能将归一化之后的数据内容绘制成曲线,并添加标注、可移动标尺等辅助对象;用户操作响应的功能是方便用户对具体的数据曲线进行详细分析,通过响应用户事件的方式来实现,事件源包括移动标尺、鼠标移动以及用户菜单点击等多种形式。

3软件设计

数据回放软件采用LabVIEW作为开发平台。整个软件分前面板(用户界面UI)设计和程序框图设计。前面板提供数据显示及用户操作窗口,为人机交互界面;程序框图定义整个软件功能的实现,为回放软件核心。3.1前面板前面板向用户提供结果显示窗口以及操作命令输入控件,力求简洁、美观和高效。回放软件的前面板效果如图1所示。3.2程序框图开发程序框图定义整个软件的功能。考虑到回放软件的功能是响应用户操作进行数据文件可视化,所需线程单一,程序框图架构设计成单线程模式,采用事件结构来完成对所有的用户操作的响应。程序框图按功能分为5个模块:初始化、读取数据源文件、数据转换、图形化显示以及辅助功能。3.2.1初始化程序开始运行后,首先将前面板恢复至默认显示状态:清空图形显示区和数据指示区,完成文件菜单项配置,设置程序运行环境。3.2.2数据源文件读取当用户触发绘制图形的事件后,程序首先读取配置文件获取目标文件(数据源)的解析向量,即文件格式信息。这些信息包括:目标文件类型(txt或Excel)、全部数据通道标识、待显示数据通道标识、数据通道的数据类型(字符、模拟量、时间或者离散量)以及数据范围。根据文件类型调用不同的文件读取函数,将数据源文件内容调入计算机内存,并分离出用户关心的目标数据,即需要显示/观察的数据,组织成2维变体数组,等待下一步处理。3.2.3数据转换变体数据无法直接呈现给用户分析查看,必须将其还原才能进行显示。根据数据通道的数据类型调用相应的转换函数将变体数据予以还原,并分类存放。字符和时间类型的数据不需绘制曲线,直接在数值观察区显示。模拟量和离散量类型均需进行特殊处理。模拟量用来表示实际的物理数据,一般均存在有效数据范围,如果将表达范围差异巨大的参数绘制在同一图形区域,必然会导致表达范围小的参数不能合适显示。解决的途径有设置多个坐标轴(Y轴),每个参数根据实际需要进行关联。当同时需要绘制的参数项目(对应曲线数目)较少时,这种方式可以取得比较满意的效果;当曲线数目较多且各自的表达范围差异很大时,需要的坐标轴(Y轴)也会急剧增多,而过多的Y轴会占据较大的图形表达区域,显著降低曲线图形的观察效果。另一种方法是只设置一个Y轴,对所有的参数进行归一化处理:根据各个参数的表达范围,对其进行合理的缩放变换,使得所有参与绘制曲线的参数范围统一到同一个表达区域,然后将所有的参数项目关联到唯一的纵坐标轴,该坐标轴的表示范围为归一化的表达区域。归一化变换公式如下:(1)设参数的实际物理范围为(MIN,MAX),归一化处理的目标表达区域为(a,b),则(1)式中偏移量和缩放因子求解如下:离散量只有0和1两种状态,多通道的离散量需要经过相应的变换和平移后,才能与模拟量混合显示在同一坐标轴(归一化)下。设c[i][j]为离散通道i的第j个元素(0或1),单条离散量曲线占据(b-a)/10的纵向表达空间,其中曲线绘制占据(b-a)/20的空间,相邻两条离散量曲线之间间隔(b-a)/20的距离。因此,第i通道的离散量变换公式为:(4)3.2.4图形化显示经归一化转换之后的数据分别按模拟量与离散量存储在2个二维数组中,将其合并成一个数组后直接赋值给图形Graph控件即可完成曲线绘制,并触发Graph值改变事件。在Graph值改变事件响应中,进行下列操作:给每条曲线添加名称标注;设置曲线的颜色、线条宽度;通过设置标尺索引Index属性将标尺置于中间位置,并获取标尺处全部参数的值信息,刷新数值显示列表框。3.2.5其他功能该模块是通过事件结构响应用户的相关操作,包括图形缩放、移动标尺、更改曲线显示属性、软件系统设置以及保存图形当前数据等,事件源包括点击控件、标尺移动、快捷菜单以及用户菜单等。Graph控件自带图形缩放按钮,缩放后触发图形坐标轴(X轴)范围改变事件,在该事件处理程序中更新标尺的Index属性,并通过事件转发的方式触发标尺移动事件,继而实现刷新数值显示列表框的目的。软件系统设置通过用户菜单弹出设置窗口,设置内容有(1)创建、编辑/修改项目配置文件,图2是创建配置文件界面;(2)设置读取文件的类型、起始位置、读取长度,以及取数间隔等,这对于处理文件的数据规模较大,而计算机内存不足的情况十分有用,可以实现分段查看数据,并减少读取文件的时间。保存图形当前数据的作用是获取当前图形显示范围内(X轴的坐标范围)全部参数数据,并保存为txt文本或者Excel格式文件,以供后续处理。

4使用验证

图3是打开某Excel格式数据文件的实际效果。回放软件能识别、读取这两种格式的数据文件,绘制用户关心的数据曲线,并添加标注予以区别。更改配置文件即可实现任意数据文件(txt或Excel格式)的回放。5结语介绍了基于LabVIEW的通用数据回放软件的设计与开发,考虑到使用过程中回放软件与用户交互性强的需求,开发过程中充分利用LabVIEW数据流编程特点,仅采用事件结构实现了全部的用户事件响应。回放软件通用性强,配置简单,图形绘制效果好,并方便用户观察数据,具备很好的推广价值。


特别声明:
1、如无特殊说明,内容均为本站原创发布,转载请注明出处;
2、部分转载文章已注明出处,转载目的为学习和交流,如有侵犯,请联系客服删除;
3、编辑非《源码码网》的文章均由用户编辑发布,不代表本站立场,如涉及侵犯,请联系删除;
全部评论(0)
推荐阅读
  • bootstrap ui框架能用在uniapp中吗?
  • bootstrap ui框架能用在uniapp中吗?
  • BootstrapUI框架通常是前端开发中的一种工具,它提供了一套预定义的CSS样式和组件,用于快速构建响应式布局的网页。然而,UniApp是一个使用Vue.js开发跨平台应用的框架,它可以用来开发iOS、Android、以及各种小程序和H5应用。
  • 互动社区
  • 来源:源码码网
  • 编辑:热度建站
  • 时间:2024-04-12 00:04
  • 阅读:274
  • css实现banner图由中心点动态放大效果
  • css实现banner图由中心点动态放大效果
  • 在日常的网页设计中,为了让网页增加一定的特效以达到交互的目的,我们尝尝会在网页中使用一些动画效果。今天来说说实现banner图由中心点动态放大效果,实现这个效果需要用到css中的动画:animation​和关键帧:@keyframes,具体示例如下:
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-04-11 18:52
  • 阅读:281
  • countUp.js实现鼠标滑动到某个位置数字自动滚动增加的效果
  • countUp.js实现鼠标滑动到某个位置数字自动滚动增加的效果
  • 在网页开发中为了提升网页的交互效果,经常会用到使用js给网页增加一定的特效,下边就来说说使用js实现鼠标滑动到某个位置数字自动滚动增加的效果。其实这种效果有很多中解决办法,自己也可以去写,下边我们借助countUp.js来实现,关于这个js文件,我放在末尾:
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-04-08 09:20
  • 阅读:369
  • 响应式网页设计思路及注意事项
  • 响应式网页设计思路及注意事项
  • 一、什么是响应式网页响应式网页设计就是让网页具有根据设备类型应用CSS样式的能力。设计:设想、计划。设计就是把想法实现。网页设计:按照一定的设计思路布局网页内容。传统网页设计:都是针对PC端浏览器而设计的,不具备查询设备的能力,更不能对多种访问设备做出响应。传统网页设计的弊端:在移动互联网时代,传统的网页设计不适合多屏幕时代。响应式网页设计应运而生。响应式网页设计是一种设计网页的思想/方法。响应:指让我们的网页能够自动查询用户的访问设备
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-04-02 11:24
  • 阅读:264
  • css中rel的属性值都有哪些,分别代表什么意思
  • css中rel的属性值都有哪些,分别代表什么意思
  • 在HTML中,元素的rel属性用于定义当前文档与被链接文档之间的关系。这个属性在CSS的上下文中经常与样式表关联,但rel属性的用途远不止于此。以下是一些常见的rel属性值及其意义:1、stylesheet:表示被链接的文档是一个样式表。这通常用于链接CSS文件。
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-03-28 12:28
  • 阅读:391
联系客服
源码代售 源码咨询 素材咨询 联系客服
029-84538663
手机版

扫一扫进手机版
返回顶部