基于某型数据存储压力仪的图形用户界面开发
0 引 言
爆炸冲击波超压测试仪是进行各种爆炸试验必备的测试仪器,可重构数据存储压力仪是一种新型的爆炸冲击波超压测试仪器。该仪器不同于传统的测试系统,它不需要引线电缆,而是将压电传感器、适配放大器、A/D变换器、存储器、控制电路、接口电路及电池集合在一起,组成一个独立的测试系统。它可以耐受较高的冲击加速度、较高的环境温度及环境压力;能直接放入被测体内,在被测体工作过程中把信号记录下来,然后取出装置,用计算机读出和处理数据。该压力仪具有体积小、功耗低、精度高等特点。正是由于可重构数据存储压力仪的突出特点,其被广泛应用于爆炸威力试验。但是该压力仪自带的数据处理软件功能却十分有限。该软件只能对所采集到的超压数据逐一进行波形显示和简单读取,不能满足工程实际中对测试数据进行深入分析的需要。因此,需要对该软件进行再次开发,使其能对所采集的数据能够快速读取并作进一步分析处理。MATLAB是一套高性能数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,作为一种开发性程序设计软件在系统建模和仿真、科学和工程绘图以及应用程序开发等方面有着广泛应用。在图形用户界面设计方面,它可以使用M文件来创建图形用户界面(GUl),同时它还提供了一个方便高效的用户界面开发环境(GUIDE),将所有GUI所支持的用户控件都集成起来,并提供界面外观、属性和行为响应方法的设置方法。使用GUIDE创建GUI对象执行效率高,可以交互地进行组件布局,还能生成保存和发布GUI的对应文件。由于MATLAB在界面开发方面有着独特的优势,本文用MATLAB语言对爆炸冲击波超压测试仪数据处理软件进行二次开发。
1 数据读取程序设计
对于大多数用户,MATLAB函数load和save为装载和存储数据提供了足够的工具。利用以扩展名为.mat结尾的文件名,load和save假定数据是以与平台无关的二进制格式保存,或者用称之为flat的ASCII文件格式保存。当文件格式非flat ASCII或.mat时,MATLAB提供了基于C语言的低级文件I/O函数。用这些低级文件I/O函数,MATIAB可以读写任意文件格式。
该压力仪的数据处理软件默认采集数据的存储格式为.dpr格式,此数据格式并不是MATLAB可以直接读取的数据格式,因此需要用MATLAB的低级文件I/O函数对采集数据进行读取。通常情况下,在使用MATLAB对文件进行读取时,需要知道所读取文件数据的长度和存储精度,而.dpr格式测试数据的存储状态事先并不清楚,所以需要用不同精度格式对此文件进行尝试性判读。通过判读可知:此文件需要分别用‘*char’、‘long’和‘short’三种格式进行读取,其中用‘short’格式读取的数据是采集到的4 194 304个超压信号数据。图1为.dpr文件的读取流程。其中,P为压力仪采集到的超压数据,T为超压数据所对应的采集时刻。
图2为用该程序读取的超压数据和用压力仪自带软件读取的超压数据对比图。其中,上部分为用压力仪自带程序读出的超压数据,下部分为用MATLAB编程读取到的超压数据。可以看到用MATLAB程序读取到的超压数据和压力仪自带软件读取的超压数据完全一致,这样就町以对采集到的超压数据进行进一步分析处理。
2 图形用户界面开发
图形用户界面(graphical user interfaces,GUI)是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面,用户通过一定的方法选择、激活这些图形对象,以实现计算、绘图等功能。如果所需要的数据分析程序比较单一,那么一般不会考虑GUI的制作。但是如果需要向别人提供应用程序,进行某种演示,制作一个供反复使用且操作简单的专用工具,那么图形用户界面就是最好的选择之一。
由于超压测试工作需要一个使用方便、快速、直观而且操作简单的程序,所以本文为超压测试仪的.dpr文件读取程序设计了相应的图形用户界而。在MATIAB下建立一个图形窗口由命令figure完成,每执行一次figure命令就产生一个图形窗口,这些窗口都被自动分配一个句柄。在图形窗口中有一系列对象,每一个对象有一个句柄和它相关,每一个对象可以设置和改变属性。在图形窗口中,坐标轴和用户界面等对象足图形窗口的子对象,而线条、文本、表面和图像等是坐标轴的子对象。每个父对象中可以包含一个或多个子对象,所有创建的对象当父对象小存在时,都会首先自动创建它们。图3为所设计的超压测试仪数据分析程序界面。使用时,只需用输入传感器编号、传感器相对于爆炸装置的距离以及测试数据存放的地址,程序可以一次性读取试验中所有压力仪的测试数据,并且能够自
- 通用光伏系统测试平台的设计(07-01)
- 数据流盘高速存储读取技术最新进展(07-08)
- 基于C8051F020单片机的多路压力测量仪(01-23)
- 基于光纤光栅的油井压力/温度监测方案(03-21)
- 基于虚拟仪器的压力传感器仿真系统(04-29)
- 油井井下高温度和压力测试系统研究与应用(01-18)