论文部分内容阅读
摘要:该文设计了一个保鲜库智能温度监控系统,利用传感器AD590进行温度数据采集,使用单片机STC12C5A进行温度采样,AD转换测量、控制、显示、并在温度超出控制范围时报警,通过NRF24L01射频模块进行远程通信、数据传输、远程观察保鲜库状态。硬件设计包括STC12C5A单片机最小系统、测温电路、数码管显示电路,报警电路、射频模块等组成。软件设计包括主程序、读出温度子程序、温度计算子程序、数码管显示子程序设计。该系统可以实现温度的采集、显示,监测、温报警、远程数据传输。
关键词:STC12C5A;保鲜库;AD590;温度监控;远程监控
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)27-0134-03
保鲜库对环境温度有一定的要求,当环境温度超出预定温度时,保鲜库就不能起到保鲜作用,因此对温度的检测,显示,控制很重要。文献[1]-[4]设计了基于单片机的温度检测或采集系统,达到了对温度的采集,显示及控制功能;采用的单片机为DS18B20、 AT89C52或8051,本文采用STC12C5A八位单片机、传感器AD590、及nRF24L01射频模块设计了一
用于温度远程控制的远程监控系统,实现对环境温度的采集、检测、显示、报警及远程数据传输。
1 系统结构设计
系统采用STC12C5A八位机作为微处理控制单元,使用4×4键盘将要设定的温度最高值和最低值数据并完成温度检测功能的转换,使用温度传感器AD590采集温度信号,将信号送入单片机STC12C5A处理,用LED显示器显示环境温度,检测范围0摄氏度到90摄氏度,设计了报警电路,在环境温度超出设定温度时实现报警,使用射频模块nRF24L01进行当前环境温度数据的远程传送。
系统结构框图如图1所示:
2 系统硬件设计
2.1 单片机最小系统的设计
STC12C5A单片机是与工业标准MCS-51指令集和输出管脚相兼容的单片机,指令代码完全兼容传统8051单片机,速度高于传统51单片机8-12倍具有速度高,功耗低,抗干扰能力强等优点,同时自带8路高速10位A/D转换,。
2.2温度传感电路设计
AD590的性能特点:AD590是美国AD公司的单片集成两端感温电流源,其输出电流与绝对温度成比例。在4V至30V电源电压范围内,可充当高阻抗,恒流调节器,适用于150℃以下的温度检测应用。成本低,单芯片集成,无需支持电路,如线性化电路,精密电压放大器,电阻测量电路或者冷结补偿。
与常用的DS18B20不同,AD590提供高阻抗电流输出,对长线路上的压降不敏感,适用于任何绝缘良好的双绞线,与接受电路的距离可以达到数百英尺,甚至还可以实现多路的复用,可通过一个CMOS多路复用器进行输出的切换,特别适合远程检测应用,这有利于在大型保鲜库内分散式布置温度传感器,并集中控制。
温度传感器电路的输出经过电阻产生的压差送入STC12C5A自带的ADC,读出数值记录并供单片机处理。
2.3 温度控制电路的设计
温度控制电路如图5所示:将P0.0、P0.1、P0.7端口与三极管的基极连接,用于控制温度和实现报警。P0.0、P0.1、P0.7端口的输出为高低电平,将事先设定的温度值与实际测量温度值比较,用比較的差值控制P0.0、P0.1、P0.7端口的高低电平,温度检测范围为0摄氏度到90摄氏度检测范围,当测量的温度超过设定的最高温度时,端口由高电平变成低电平,基极输入为“0”,这时三极管导通推动报警器和控制电路工作,反之,当端口为高电平时,基极输入为“1”,三极管不导通,报警器和控制电路都不工作。因此温度控制电路实际是通过检测值和设定值控制单片机的P0.0、P0.1、P0.7口的高低电平,用于控制报警器和控制电路就可以控制模拟电路的工作。
2.4显示电路的设计
采用四位数码管设计显示电路,当位选打开时,送入相应的段码,则相应的数码管打开,关掉位选,打开另一个位选,每次打开关掉相应的位选时,时间间隔低于20ms,人类视觉的角度上看,全部数码管是同时显示的。4位数码管由三极管8550驱动,驱动电路如图6所示。
2.5继电器
继电器是控制系统中一种重要的元件,它的作用就是按照某种要求接通或断开控制系统的电路,是根据某种物理量的变化来改变其触点状态的控制元件。设计中继电器用来控制加热和制冷系统。继电器在控制系统中的作用有两点:
(1)传递信号。它用触电的转换接通或断开电路以传递控制信号;
(2)功率放大。使继电器动作的功率通常是非常小的,而被其触点所控制电路的功率要大得多,因此继电器电路必须有放大功率的作用,从而可以实现对电路的控制。
2.6 射频模块
nRF24L01是一款工作在2.4GHz~2.5GHz的ISM 频段的单片无线收发器芯片,极低的电流消耗:当工作在发射模式下发射功率为0dBm 时电流消耗为11.3mA ,接收模式时为12.3mA,掉电模式和待机模式下电流消耗更低,既能满足保鲜库内范围要求,有能保证较低的功耗,增加续航。
3系统软件设计
3.1 主程序流程图
主程序负责读出、处理、显示AD590的测量的当前环境温度值,温度测量每1s进行一次。其程序流程见图7所示。通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两个单元中,再通过调用显示子程序显示温度。
3.2 读出温度子程序
读出温度子程序的主要功能通过ADC采集AD590输出电流经过电阻的电压,再经过测试求出电压与温度的关系系数,从而读出AD590所处位置的温度。
关键词:STC12C5A;保鲜库;AD590;温度监控;远程监控
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)27-0134-03
保鲜库对环境温度有一定的要求,当环境温度超出预定温度时,保鲜库就不能起到保鲜作用,因此对温度的检测,显示,控制很重要。文献[1]-[4]设计了基于单片机的温度检测或采集系统,达到了对温度的采集,显示及控制功能;采用的单片机为DS18B20、 AT89C52或8051,本文采用STC12C5A八位单片机、传感器AD590、及nRF24L01射频模块设计了一
用于温度远程控制的远程监控系统,实现对环境温度的采集、检测、显示、报警及远程数据传输。
1 系统结构设计
系统采用STC12C5A八位机作为微处理控制单元,使用4×4键盘将要设定的温度最高值和最低值数据并完成温度检测功能的转换,使用温度传感器AD590采集温度信号,将信号送入单片机STC12C5A处理,用LED显示器显示环境温度,检测范围0摄氏度到90摄氏度,设计了报警电路,在环境温度超出设定温度时实现报警,使用射频模块nRF24L01进行当前环境温度数据的远程传送。
系统结构框图如图1所示:
2 系统硬件设计
2.1 单片机最小系统的设计
STC12C5A单片机是与工业标准MCS-51指令集和输出管脚相兼容的单片机,指令代码完全兼容传统8051单片机,速度高于传统51单片机8-12倍具有速度高,功耗低,抗干扰能力强等优点,同时自带8路高速10位A/D转换,。
2.2温度传感电路设计
AD590的性能特点:AD590是美国AD公司的单片集成两端感温电流源,其输出电流与绝对温度成比例。在4V至30V电源电压范围内,可充当高阻抗,恒流调节器,适用于150℃以下的温度检测应用。成本低,单芯片集成,无需支持电路,如线性化电路,精密电压放大器,电阻测量电路或者冷结补偿。
与常用的DS18B20不同,AD590提供高阻抗电流输出,对长线路上的压降不敏感,适用于任何绝缘良好的双绞线,与接受电路的距离可以达到数百英尺,甚至还可以实现多路的复用,可通过一个CMOS多路复用器进行输出的切换,特别适合远程检测应用,这有利于在大型保鲜库内分散式布置温度传感器,并集中控制。
温度传感器电路的输出经过电阻产生的压差送入STC12C5A自带的ADC,读出数值记录并供单片机处理。
2.3 温度控制电路的设计
温度控制电路如图5所示:将P0.0、P0.1、P0.7端口与三极管的基极连接,用于控制温度和实现报警。P0.0、P0.1、P0.7端口的输出为高低电平,将事先设定的温度值与实际测量温度值比较,用比較的差值控制P0.0、P0.1、P0.7端口的高低电平,温度检测范围为0摄氏度到90摄氏度检测范围,当测量的温度超过设定的最高温度时,端口由高电平变成低电平,基极输入为“0”,这时三极管导通推动报警器和控制电路工作,反之,当端口为高电平时,基极输入为“1”,三极管不导通,报警器和控制电路都不工作。因此温度控制电路实际是通过检测值和设定值控制单片机的P0.0、P0.1、P0.7口的高低电平,用于控制报警器和控制电路就可以控制模拟电路的工作。
2.4显示电路的设计
采用四位数码管设计显示电路,当位选打开时,送入相应的段码,则相应的数码管打开,关掉位选,打开另一个位选,每次打开关掉相应的位选时,时间间隔低于20ms,人类视觉的角度上看,全部数码管是同时显示的。4位数码管由三极管8550驱动,驱动电路如图6所示。
2.5继电器
继电器是控制系统中一种重要的元件,它的作用就是按照某种要求接通或断开控制系统的电路,是根据某种物理量的变化来改变其触点状态的控制元件。设计中继电器用来控制加热和制冷系统。继电器在控制系统中的作用有两点:
(1)传递信号。它用触电的转换接通或断开电路以传递控制信号;
(2)功率放大。使继电器动作的功率通常是非常小的,而被其触点所控制电路的功率要大得多,因此继电器电路必须有放大功率的作用,从而可以实现对电路的控制。
2.6 射频模块
nRF24L01是一款工作在2.4GHz~2.5GHz的ISM 频段的单片无线收发器芯片,极低的电流消耗:当工作在发射模式下发射功率为0dBm 时电流消耗为11.3mA ,接收模式时为12.3mA,掉电模式和待机模式下电流消耗更低,既能满足保鲜库内范围要求,有能保证较低的功耗,增加续航。
3系统软件设计
3.1 主程序流程图
主程序负责读出、处理、显示AD590的测量的当前环境温度值,温度测量每1s进行一次。其程序流程见图7所示。通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两个单元中,再通过调用显示子程序显示温度。
3.2 读出温度子程序
读出温度子程序的主要功能通过ADC采集AD590输出电流经过电阻的电压,再经过测试求出电压与温度的关系系数,从而读出AD590所处位置的温度。