实时环境监控系统图形界面设计

上传人:第*** 文档编号:55168781 上传时间:2018-09-25 格式:PDF 页数:22 大小:496.35KB
返回 下载 相关 举报
实时环境监控系统图形界面设计_第1页
第1页 / 共22页
实时环境监控系统图形界面设计_第2页
第2页 / 共22页
实时环境监控系统图形界面设计_第3页
第3页 / 共22页
实时环境监控系统图形界面设计_第4页
第4页 / 共22页
实时环境监控系统图形界面设计_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《实时环境监控系统图形界面设计》由会员分享,可在线阅读,更多相关《实时环境监控系统图形界面设计(22页珍藏版)》请在金锄头文库上搜索。

1、实时环境监控系统的图形界面设计11. 引言1.1 课题的背景及意义无论是工业生产、 科学研究还是日常生活, 一些环境参数都需要被采集并被处理。比如温度、湿度、瓦斯浓度、电脑的 CPU 使用率等等。有些参数至关重要,因为一时的疏忽很可能会造成重大的安全隐患,比如瓦斯浓度等。对于这样的参数,我们需要对其进行实时监控,当它超过一定的阀值时,就会报警以提醒人们注意。因此我们需要设计监控系统,在这样的系统中,通常由 PC 机对数据进行分析并处理,单片机则完成数据的采集和上传等工作,复杂的还要建立数据库。在这样的系统中,单片机系统一般称之为下位机,由 PC 机、网络设备、数据库组成的应用部分则通称为上位机

2、。 二者结合,充分发挥了单片机在实时数据采集和 PC 机对图形处理、显示以及数据库管理上的优点。1.2 课题设计目的本课题主要是设计用于监控环境温度的简易上位机系统。 上位机作为主控机一般采用 PC 机,放置在中央控制室,该上位机主要用来进行人机交互,并向下位机发送命令和接收下位机做出的反应。 设计人机交互界面的目的主要是为了用户方便地使用该系统。这里以监控温度为例,展示了如何设计一款可以满足基本需求的环境监控系统。更复杂的系统可以在此基础上进行扩展。实时环境监控系统的图形界面设计22监控系统总体方案系统的总体方案设计, 关系到系统功能模块的划分、硬件设备的选择和配备以及软件的设计和编制。总体

3、方案对整个系统的性能以及运行的可靠性有十分重要的意义。2.1 监控系统结构分析图 2-1 系统原理框图如图所示,整个监控系统有两大部分组成:前端采集模块和后端处理模块。前端采集模块通过 DS18B20 温度传感器采集温度, 传递给 MCS8051 单片机。 然后通过 RS232串口传递给了 PC,做进一步的处理。串口通信未增加校验,所以额外增加了 LCD1602显示模块,以便观察是否有数据传送错误。本人负责开发后端处理模块,即位于 PC 端的监控系统。前端采集模块有小组另一同学完成。2.2 监控系统主要功能系统的主要功能包括两个方面:1 在 PC 机上显示温度曲线,以便于对数据进行观测。2 人

4、为设置温度阀值,当超过阀值时,系统会自动报警以提醒人们注意。8051 单片机系统PC(监控系统人机界面)外界温度温度传感器RS232 串行接口液晶显示模块实时环境监控系统的图形界面设计32.3 监控系统总体方案设计2.3.1 监控系统设计要求监控系统所面向的对象并非是计算机专业人员,因此系统应具备友好的人机界面以及更好的可操作性。2.3.2 监控系统开发工具选择当前,用于设计具有人机界面系统的编程语言和开发环境主要有 Visua1C+6.0、Delphi、Visual Basic 等。它们风格迥异并且有着出色的功能,其中 Visua1C+6.0使用的是面向对象的开发语言,封装继承性好、方便移植

5、,并且具有更大的灵活性。可以在任何时刻调用任何 API 函数。VC+的优越性主要表现在以下 4 个方面:1 开发分布式应用;2 开发的应用运行效率高;3 能缩短软件升级周期。C+类的重用特性以及它对函数库、DLL 库的支持能使程序更好地模块化,并缩短软件维护和升级时间;4 VC 支持生成多线程编程,而多线程应用对于增加并发响应有实际意义。综上所述,本课题选用 VC+6.0 作为监控系统的开发工具。实时环境监控系统的图形界面设计43 监控系统主要开发技术3.1 MFC 概述在开发 Windows 应用程序时,有两种主要方法:基于 Window API 的开发方法和基于 Windows MFC 的

6、开发方法。前者需要掌握近千个 Windows 函数的用法,使用不便,故已不独立使用了。后者借助于其应用程序向导及类向导的帮助,以其封装好的类、构造函数、 响应函数及应用程序框架和许多控件等的帮助,大大简化了程序开发的过程并减少了开发的作业量和难度,故获得广泛的应用。基于 Windows MFC 的开发方法并不排斥使用 Windows API.事实上,在 Windows MFC 的开发过程中,总是要使用Windows API 函数以完成特定功能。因此本课题的上位机应用程序采用 MFC 来开发应用程序框架。MFC,微软基础类(Microsoft Foundation Classes),实际上是微软

7、提供的,用于在C+环境下编写应用程序的一个框架和引擎,VC+是 WinDOS 下开发人员使用的专业C+ SDK(SDK,Standard SoftWare Develop Kit,专业软件开发平台),MFC 就是挂在它之上的一个辅助软件开发包,MFC 作为与 VC+血肉相连的部分(注意 C+和VC+的区别:C+是一种程序设计语言,是一种大家都承认的软件编制的通用规范,而 VC+只是一个编译器,或者说是一种编译器+源程序编辑 IDE,WS,PlatForm,这跟 Pascal 和 Delphi 的关系一个道理,Pascal 是 Delphi 的语言基础,Delphi 使用 Pascal 规范来进

8、行 Win 下应用程序的开发和编译,却不同于 Basic 语言和 VB的关系,Basic 语言在 VB 开发出来被应用的年代已经成了 Basic 语言的新规范,VB 新加的 Basic 语言要素,如面向对象程序设计的要素,是一种性质上的飞跃,使 VB既是一个 IDE,又成长成一个新的程序设计语言),MFC同 BC+集成的 VCL一样是一个非外挂式的软件包,类库,只不过 MFC 类是微软为 VC+专配的。MFC,API,即微软提供的 WinDOS 下应用程序的编程语言接口,是一种软件编程的规范,但不是一种程序开发语言本身,可以允许用户使用各种各样的第三方(如我是一方,微软是一方,Borland就

9、是第三方)的编程语言来进行对 WinDOS下应用程序的开发,使这些被开发出来的应用程序能在 WinDOS 下运行,比如 VB,VC+,Java,Dehpi 编程语言函数本质上全部源于API,因此用它们开发出来的应用程序都能工作在 WinDOS的消息机制和绘图里,遵守 WinDOS 作为一个操作系统的内部实现,这其实也是一种必要,实时环境监控系统的图形界面设计5微软如果不提供API,这个世上对 Win编程的工作就不会存在,微软的产品就会迅速从时尚变成垃圾,上面说到 MFC 是微软对 API 函数的专用 C+封装,这种结合一方面让用户使用微软的专业C+ SDK来进行Win下应用程序的开发变得容易,

10、因为 MFC是对 API的封装,微软做了大量的工作,隐藏了好多程序开发人员在 Win 下用 C+ memset(m_szWriteBuffer, 0, sizeof(m_szWriteBuffer);strcpy(m_szWriteBuffer, string);m_nWriteSize=strlen(string);/ set event for writeSetEvent(m_hWriteEvent);实时环境监控系统的图形界面设计104 系统软件设计这里先介绍下整个系统的运行机理:4.1 窗口窗口是 Windows 应用程序中一个非常重要的元素, 一个 Winsows 应用程序至少要有一

11、个窗口,称之为主窗口。窗口是屏幕中的一块矩形区域,是 Windows 应用程序与用户交互的接口。应用窗口可以接受用户的输入,和显示输出。一个应用程序窗口通常都包含标题栏, 菜单栏, 系统菜单, 最大化框, 最小化框,可调边框等等。如图所示:图 4-1 监控系统窗口在 Windows 应用程序中, 窗口是通过窗口句柄来标示的。我们要对某个窗口进行操作,首先要得到这个窗口的句柄。句柄是 Windows 程序设计中一个重要的概念,使用也非常频繁。 在 Windows 程序中有各种各样的资源 (窗口, 图标, 光标等都是资源) ,系统在创建这些资源时会为它们分配内存,并返回标示这些资源的标识号,即句柄

12、。对于一个监控系统而言, 当然要首先具备友好的人际界面且便于操作,这就是通过窗口的创建而完成的。实时环境监控系统的图形界面设计114.2 消息Windows 采用的是基于事件驱动的程序设计模式,主要是基于消息的。比如,当温度传感器采集到温度,将其传给温度监控系统,此时操作系统会感知到这一事件,于是将这一事件包装成消息, 投递到应用程序的消息队列中,然后应用程序从消息队列中取出消息并进行相应。 在这个处理过程中, 操作系统也会给应用程序 “发送消息” 。所谓“发送消息” ,实际上是操作系统调用程序中一个专门负责处理消息的函数,这个函数称为窗口过程。以下是消息的结构:typedef struct

13、tagMSG HWNDhwnd; UINTmessage; WPARAM wParam; LPARAM lParam; DWORDtime; POINTpt; MSG, *PMSG;4.3 WinMain 函数在应用程序中有一个重要的函数 WinMain 函数,它是应用程序的基础。当我们启动监控系统的程序时,操作系统调用的就是这个程序的 WinMain 函数。WinMain 函数是 Windows 程序的入口点函数,当 WinMain 函数结束或返回时,Windows 程序就结束了。4.4 系统设计整个系统有两大功能构成,所以软件的设计也紧紧围绕着这两大功能,如图所示:1)显示温度曲线2)报警

14、实时环境监控系统的图形界面设计12图 4-2 系统功能流图将以上的要求分解为若干的问题,如图所示:图 4-3 系统设计流图4.4.1 接收温度在前面已经介绍了有关串口的一些信息, 在附录中有采集温度以及通过串口向系统设计需求分析显示温度曲线报警从功能上看问题如何获得温度串口通信如何显示温度画图程序报警需求报警设置系统实时环境监控系统的图形界面设计13上位机发送数据的程序,这里介绍下上位机接收后处理过程,如图:图 4-4 接受温度流程图当系统打开后,单击菜单栏中的“开始监测” 。首先是调用 CSerialPort 类,通过串口初始化函数 InitPort()初始串口。当初始化成功后,启动串口通信

15、监测线程函数 StartMonitoring(), 来监测串口看是否收到了数据, 若收到了数据则发送消息,调用函数过程进一步的处理消息,比如显示成曲线。当单击菜单栏中的“停止监测”时,系统会调用关闭串口函数 ClosePort()来关闭串口。4.4.2 显示温度曲线对于接收到的温度如何处理?对于监控系统而言,需要它更加友好,便于观察数据。本课题将采集到得温度通过曲线实时显示出来:启动通信监测线程函数发送消息事件发生初始化串口关闭串口实时环境监控系统的图形界面设计14图 4-5 显示温度曲线流程图写 X 轴刻度写 Y 轴刻度显示当前温度画温度曲线画坐标轴等待消息实时环境监控系统的图形界面设计15

16、5 上位机界面实现及系统调试5.1 上位机界面实现监控系统一共有四个一级菜单:日常操作、查看、设置、帮助。1.“查看” 、 “帮助”菜单查看菜单有两个二级菜单:工具栏、状态栏。实现的功能主要是查看相应的信息。单击帮助菜单弹出管理系统的版本信息。这两个菜单是留作以后系统功能扩展用的。2.“日常操作”菜单“日常操作”菜单共有三个子菜单:开始监测,停止监测和日志查询。其中开始监测和停止监测用来控制系统是否检测温度, 而日志查询是用来查看存储的异常温度信息(如果你设定了存储异常温度的话)。单击日志查询菜单,弹出如图所示对话框,它将用来显示存储的异常温度信息:图 5-1 对话框单机打开按钮,会弹出如图所示对话框:实时环境监控系统的图形界面设计16图 5-2 打开对话框将存储异常温度信息的文件打开, 文件存储的异常温度的信息就会显示在对话框中,如图所示:图 5-3 温度信息保存3.“设置”菜单“设置”菜单有两个子菜单:系统设置,串口通讯设置1) 单击系统设置,弹出如图所示对话框:实时环境监控系统的图形界面设计17图 5-4 温度报警设置在这里可以

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号