微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > Qt跨平台数字化压力测量分析监控系统的设计与实现

Qt跨平台数字化压力测量分析监控系统的设计与实现

时间:07-06 来源:互联网 点击:

如图3所示,首先画出网格坐标轴,然后将获取到的数据转化为相对应的具体左边打印出该点:
paint,drawEllipse(((i+1)*24)+2,-(share[i]/10/5*24)+4,-6,-6);/画点,最后由回归分析拟合出数据表达式。

4 数据库设计
QtSql模块提供了与平台以及数据库种类无关的访问SQL数据库接口。这个接口由利用Qt的模型/视图结构将数据库与用户界面集成的一套类来集成。
本应用程序采用微软开发的SQL Setwer2005作为数据库引擎,用户界面采用Qt编写,当系统处于监控模式时,需要数据的实时监控和存储,数据量将非常大使用文件存储不适合,同时利用数据库提供的查询语句Select、修改update、删除delete等语句,可以方便地管理数据库。

5 软件美化
5.1 国际化
Qt中国际化的方式有很多种,常使用的QTextCodec类和使用tr()函数,前者将编码名称写到代码里面,除非使用Unicode编码,否者编码依然是一个问题,本软件系统设计时使用tr()函数实现应用程序的国际化。同时在main函数中增加一个QTranslator对象,这样应用程序就变成了中文。
5.2 淡入淡出效果
当窗体进行页面切换时,原页面的消失和新页面的显示并不是瞬间切换的,而是逐渐消隐和逐渐显现的过程。

本应用程序中实现的fader类就是用于实现这种效果,在响应页面切换时,新建一个窗体,此窗体是一个与对话框等尺寸的空白窗体,此窗体由透明逐渐变成不透明就完成了淡入淡出的效果,如图4所示。

6 Qt串口通信
在Qt中没有特定的串口控制类,采用第三方写的qextserialport类如图5,文件中包含QextSerialBase类,Win_QextSerialPort类,Pos ix_QextSerialPort类,QextSeralPort是所有类的子类,是最高的抽象,它屏蔽了平台特征,使得在任何平台上都可以使用。

对于串口的读取方式有Polling模式即查询模式还有EventDriven事件驱动模式。
事件驱动方式就是使用处理串口的读取,一旦有数据到来就会发出readyRead()信号,设计者可以关联该信号来读取串口数据。在事件驱动的方式下,串口的读写是异步的调用读写函数会立即返回,它们不会冻结调用线程。
而查询方式则不同,读写函数是同步执行,信号不能工作在这种模式下,但这种模式下开销小,需要自己建立定时器来读取串口数据。
Windows下可以使用两种方式而在Linux下只能使用查询Polling方式。

7 结束语
本软件测试系统界面直观、友好,数据存储方便,分组存储更能方便学生记录数据。软件能后满足实验室的测量要求,并且省去了繁琐的数据记录、处理的过程。学生可以更直观地观测压力的变化。在通信协议不变的条件下,软件和硬件平台可以分别进行改进、扩展,使其更加完善。应用程序的跨平台性,可以完美运行于各种操作系统,从Windows到Mac OS,从Linux到Unix及一些嵌入式系统上。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top