微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 打造多参数居室气体检测仪,助力智能家庭

打造多参数居室气体检测仪,助力智能家庭

时间:04-14 来源:互联网 点击:

示电路设计、外围扩充存储器接口电路、时钟电路、复位电路、键盘接口电路等功能模块电路设计,所以主要硬件资源配置包括MCU、A/D转换、键盘控制、时钟电路、LCD显示、外围扩展数据RAM等的配置。

本设计选用的硬件平台为ATMEL 提供EVK1100开发平台,它是一个基于AVR32 AT32UC3A单片机控制器的评估套件和开发系统。它配备一系列丰富的外设、内存,并且可充分开发AVR32设备的全部潜能。

  • 支持AT32UC3A

  • 以太网端口

  • 传感器:光照、温度、电位器

  • 4x20蓝色LCD(PWM变频背光)

  • JTAG连接器、Nexus、USART、USB 2.0接口,TWI接口、SPI。

图2 EVK1100开发平台

温度和光照检测部分可以选用硬件平台本身配置的资源,这样使板上资源更合理的得到应用由于EVK1100开发平台中LCD液晶显示部分采用的是4×20的字符型液晶显示模块DIP204-4e (PWM可调节背光),所以在所要显示信息量大时,采用按键控制分时显示。

3.3系统软件架构

该仪器的软件系统可采用C语言编程, 开发软件是AVR Studio5,这个是Atmel自己开发的development tools,AVR Studio 5集成GCC编译器,对AVR32的编译支持很好。Atmel AVR Studio 5是广受欢迎的爱特梅尔集成开发环境(IDE)的增强版本,支持所有8位和32位AVR MCU,能够显著提高开发人员的效率,并可使客户的应用程序在爱特梅尔8位和32位AVR MCU之间实现无缝移植。AVR Studio 5能够简化源代码的编辑和调试,具备辅助代码编写功能的编辑器、用于快速创建新项目的向导工具, AVR Software Framework源代码库、GNU C/C++编译器、功能强大的模拟器,以及适用于爱特梅尔所有AVR编程器及在线调试器的前端可视化工具。AVR Studio 5将现有8位AVR Studio 4 和32位AVR32 Studio的功能融合, 支持所有8位和32位AVR MCU。此外,爱特梅尔的AVR Studio 5还可集成第三方的嵌入开发工具插件。编译好程序后通过单片机预留的JTAG接口通过配套的调试器AVR Dragon来对单片机进行在系统编程, 以实现实时调试。软件设计采用模块化设计。设计时可将程序分成几个主要的功能模块, 包括主程序和各个模块子程序。

软件部分采用模块化设计,全部软件由主程序、A/D转换子程序、键盘处理子程序、报警模块子程序、时钟模块、液晶显示子程序等组成。主程序是控制和管理的核心。系统上电后进行初始化和中断处理操作。初始化主要完成对报警值的设定和初次检查,同时断开各电器的电源。初始化完成后,系统开始正常运转。进行待选气体浓度检测和报警等操作,主程序的流程图如下图所示。

3.4 系统软件流程

3.4.1 主程序模块

主程序实现的功能:与硬件相结合实现便携式居室空气质量检测仪器的各个功能。主要是检测与显示,时间调整与显示,数据存储,超标报警,功能子函数的调用等(见图3)。

图3主程序流程图

3.4.2 A/D转换模块

A/D转换模块的主要功能就是将经放大器放大的模拟电压信号转化为MCU能够处理的数字信号,并传送给MCU,进行下一步处理。

图 4 A/D转换处理子程序流程图

3.4.3 按键控制模块

按键能够实现人机对话机制,通过按键的操作,对系统进行发送操作指令,后经与MCU串行通信,然后在液晶上显示。按键查询式的流程图见下图:

图 5 按键检测子程序流程图

图 6 温湿度数据采集子程序流程图

3.4.4 时钟模块

时钟模块主要是用于时间显示和与MCU通信经LCD显示时间。时钟模块子程序流程图见下图:

图 7 时钟模块操作子程序流程图

3.4 系统预计实现结果

整个系统设计完成后能够对居室内常见有害气体甲醛、一氧化碳、二氧化碳等进行浓度检测,并在含量超标时实现声光报警功能。其中检测到的气体浓度和预先设定值作比较,判断超标否,预先设定值通过键盘进行操作设置。同时该仪器还可对居室内温湿度、光照度进行检测,实时显示室内温湿度情况,对于住户及时了解室内居住环境状况提供重要的参考信息。在显示浓度的同时对检测到信息进行保存,同时显示测量时间,便于用户对不同时间的测量值进行比较。

相关阅读

智能家庭离我们还有多远?

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

网站地图

Top