1技术要点
由于本系统是一个实时监控的系统,对温度的采集控制是实时的,所以温度采集的时间间隔,数据发送接收的时间差,单片机与PC机之间数据的传送速度以及上位机程序对数据的分析处理是本系统的关键。通过对温度传感器,无线模块的优化选择,实现单片机与PC机通过高速USB接口进行通信及对上位机代码的优化实现本系统的实时监控功能,同时还要考虑的是温度传感器的各个参数,无线模块的参数,以及硬件电路的优化搭建问题。
2硬件及软件设计
为了使系统能够最优化的工作,系统的硬件器件选择将是十分重要的问题。
(1)温度传感器的选用
系统是做温度监控的,首要的工作就是如何选取温度传感器,正确的选择温度传感器对系统的性能和价格有着重大的影响。就温度传感器的温度测量范围、精度、响应时间、稳定性、线性度和灵敏度。等几个因素的比较分析,本系统选用的是美国DALLAS半导体公司生产的DS18B20温度传感器。选用该传感器的原因有:①DS18B20与微处理器仅需要一条线即可实现双向通讯,简化连接难度;②无需其他的AD转化器件,降低成本,也减少了硬件制板的费用;③可供使用电压范围大:3.0V到5.5V都可以使用,器件的功耗较低;④测温分辨率高,最高可达0.125度,便于温度精确控制;⑤支持多点测试,多个DS18B20可以并联在一根线上,实现多点测温。
(2)无线模块的选用
本系统是多点监控,同时他的数据传输是通过无线传输的,所以无线传输模块的需要支持多点的数据的传送。考虑稳定性,传输数据的速度,错误率等方面,本系统选用的是NRF905无线数据传输模块,选择该模块的原因有:①433MHZ开放ISM频段免许可证使用,无需额外申请频段;②传输速率高,最高数据传输速率可达50KB,满足实时监控的需要;③自带有CRC纠错功能,抗干扰能力强。所需电压仅3.3V,功耗低;④125个频道,支持多点通信,满足系统多点监控的需要。
(3)主控芯片选用
ATmega16是ATMEL公司推出的一款基于AVRRISC构架的低功耗CMOS的8位单片机。ATmega16在16MHz时有16MIPS的运算速度,具有两周期硬件乘法器,从而使得设计人员可以在功耗和执行速度之间取得平衡,且非易失性程序和数据存储器资源较大能满足程序代码设计需要。外设资源丰富:2个具有独立预分频器和比较器功能的8位定时/计数器;一个独立预分频器和比较/捕捉功能的16位定时/计数器;支持4路PWM输出、8路10位ADC。支持TWI接口、USART、SPI接口多机通信满足扩展功能的需要。
(4)其他外围器件
USB与PC机通信中USB控制芯片PDUSBD12,显示模块1602,报警蜂鸣器等。
2.1系统的硬件连接方法
硬件方面主要由两部分组成,温度采集发送部分和数据接受分析控制部分。
2.1.1温度采集发送部分
主要的连接器件有NRF905无线数据传输模块,DS18B20温度传感器采集模块,1602显示模块,报警模块,及温度异常处理模块。其连接方法如图1所示。主控芯片M16通过SPI总线协议向无线模块发送配置信息,使其工作初始化。温度传感器与M16的连接使用的是单总线协议,来采集温度。显示芯片1602来显示采集到得温度,同时使用蜂鸣器作为报警装置,当温度有异常时单片机会控制加热设备或降温设备来对异常进行处理。
2.1.2数据接收分析控制部分
主要的连接器件有无线数据传输模块,USB传送模块,和PC机构成。其电路连接如图2所示。同样主控芯片M16通过SPI总线协议向无线模块发送配置信息,使其工作初始化。接收到温度后通过PDUSBD12芯片利用USB协议将数据发送到PC机上,可以直接在VC界面上显示。PC机可以自动分析数据是否存在异常,当存在异常时,PC发送控制信号来远程控制加热或降温设备对异常进行处理,同时发出报警信号,这样可以将危险降到最低,实现自动化与智能化。
图1数据采集与发送图2数据接收与分析
2.2软件程序的设计
由于系统由两个模块构成,所以软件程序的设计也分为温度采集发送模块程序设计和数据接受分析控制模块程序设计。
2.2.1温度采集发送模块
主要需要设计的程序有NRF905的内部寄存器配置,温度传感器温度采集程序,液晶显示模块程序,报警系统程序。程序流程图如图3:
图3主程序流程图
2.2.2数据接受分析控制模块
主要需要设计的程序有NRF905的内部寄存器配置,USB模块的驱动编写,上位机程序的建立,由于篇幅有限,源代码及流程图不再给出。
3系统的工作流程
本系统主要由两个模块组成,温度采集发送模块和数据接收监控模块。
3.1数据采集发送模块
该模块的主要功能是采集温度和发送数据。主控单片机发出命令开始有DS18B20进行温度采集,温度传感器将采集到的温度传回主控芯片,在1602上进行显示,然后主控芯片通过SPI总线将数据传送给无线发送模块NRF905,由无线发送模块将数据发送出去。同时主控芯片会检测温度是否异常,当温度出现异常时会发出报警信号,同时启动异常处理模块。
具体工作流程如图4:
图4采集发送模块工作流程
3.2数据接收监控模块
该模块的主要功能是接收和处理数据,由单片机控制无线模块接收数据,同时控制USB模块将数据发送到PC机上去,PC机接收到温度后会对温度进行分析处理,当温度由异常时,会发出报警信号,同时通过将控制指令发送至单片机,通过无线模块来远程控制异常处理模块执行工作,从而实现异常自动处理和双报警,从而最大限度的确保被监控地的预警和安全。具体工作流程如图5:
图5接受监控模块工作流程
4结语
对本系统进行远距离具体温度测试有,经数据对比发现实地温度采集与上位机显示数据完全吻合,且能实现实时温度监控。同时可以通过PC机对单片机进行远程控制,性能稳定。