基于单片机控制的红外遥控温度报警器.docx
《基于单片机控制的红外遥控温度报警器.docx》由会员分享,可在线阅读,更多相关《基于单片机控制的红外遥控温度报警器.docx(24页珍藏版)》请在冰点文库上搜索。
基于单片机控制的红外遥控温度报警器
摘要:
本温度监控系统由8位AVR型单片机为主控制器,以高精度AD590为温度传感器,通过16位ADMAX1415转换得到数字量供单片机分析处理;然后单片机通过软件分析计算后讲温度值通过12864液晶显示,通过ISD1720语音芯片进行播报,同时将分析的数值通过射频模块发送出去,方便人们进行远程监控。
该系统能够精确测量0.1摄氏度以内的温度,该系统同时设有可通过红外遥控设定报警上线和下线值模块,语音播报更具人性化,液晶界面友好,还可以扩展功能,是理想的温度监控报警的设计方案。
关键词:
温度AVR报警无线红外
Abstract:
Thetemperaturemonitoringsystem-basedsingle-chip8-bitAVR-basedcontrollerforahigh-precisiontemperaturesensorAD590,ADMAX1415throughthe16-bitdigitalconversiontobeforsingle-chipanalysis;andthensingle-chipanalysisbysoftwareAftercalculatingthetemperaturestressesthrough12864LCD,ISD1720voicechipthroughthebroadcast,atthesametime,theanalysisofnumericalsentthroughtheRFmoduletofacilitateremotemonitoringandcontrolpeople.Thesystemcanaccuratelymeasurethetemperatureof0.1degreesCelsius,thesystemcanbeadoptedatthesametimewithinfraredremotecontrolandsetthealarmoffthevalueofon-linemodules,voicebroadcastmorehumane,user-friendlyLCD,butalsotheexpansionoffunctions,isanidealMonitorthetemperatureofthedesign.
Keywords:
temperatureAVRwirelessinfraredalarm
1.2.1控制器模块设计方案论证与选择…………………………………………………..
1.2.2温度采集模块设计方案论证与选择……………………………………………….
1.2.3显示模块设计方案论证与选择…………………………………………………….
1.2.4语音模块设计方案论证与选择…………………………………………………….
1.2.5键盘模块设计方案论证与选择…………………………………………………….
1.2.6电源模块设计方案论证与选择…………………………………………………….
1.2.7数据存储模块设计方案论证与选择……………………………………………….
1.2.8红外遥控模块设计方案论证与选择……………………………………………….
2.7红外遥控模块电路设计…………………………………………………………………….
1系统设计
1.1设计要求
1.红外遥控温度报警器
2.12864显示
3.红外遥控修改温度报警上限和下限等
4.并可以自由发挥扩展功能
1.2各模块方案选择和论证
1.2.2设计思路
题目的大部分要求还是在发挥部分,要做到满足题目要求的同时有大较大的创新点。
因此我们加入了无线收发模块实现远程监控,和语音报警模块,和温度上升过程记录且绘制过程曲线。
所以总共包括以下部分:
温度采集,菜单显示,无线收发,语音报警,红外收发,温度记录。
这么大的工程量,为求的系统的稳定,且有较大的灵活性,我们采用了5片AVR,一片Atmega32作为主机,他接收无线发来的AD值和红外发来的按键代码值,予以处理;控制语音模块实现报警和实时温度读数;将温度数据记录到片里EPROM,实现全程监控。
由于每一个温度计之间有一定的误差,为适应这一点,我们增加了适应性操作,就是用系统自动记录当前AD值,人工输入当前的温度值,且系统将记录到EPROM里,实现一张简单的表,我们只要记录10个就可以了,十分方便。
当EPROM记满了,将不在写入,直到有擦除温度记录命令为止。
同时为增加系统绝对可控性,增加了矩阵键盘。
在调试时可作为标志键使用,对调试程序很方便。
1.2.1控制器模块设计方案论证与选择
题目任务是制作一个基于单片机的温度监控报警系统,所以我们首选单片机,单片机足以。
单片机是集成了CPU、ROM、RAM、和I/O口的微型计算机。
有很强的接口性能,此系统和外围接口芯片比较多,选单片机作为主控器是明智的,单片机运算功能强,软件编程灵活,自由度大,可用软件编程的饿实现各种算法和逻辑控制,并且由于其功耗低,体积小,技术成熟和成本低等优点,使其在各个领域应用广泛。
用于本系统外围接口比较多微秒采用双CPU为主控器,分别对其他各个模块进行检测和控制,这样减轻了单个CPU的负担,提高了系统的工作效率,同时通过CPU之间的分段相互控制,减少了外围设备。
由Atmega8采集温度传感器通过AD转换传来的数据,
1.2.2温度采集模块设计方案论证与选择
方案一、用热电偶测温优点是测温范围宽,缺点是电动势低,对运放的要求高,重要的是热电偶测温需要冷端温度补偿,来消除冷端温度变化所产生的影响,对于本电路补偿温度要求精度很高,且准确,否则会给系统带来反所用,而且成本高,操作复杂。
方案二、利用热敏电阻作为温度传感器,。
NTC热敏电阻阻值随温度的变化符合指数规律,其最大的缺点也在于它的非线性阻值分散性大复现性差,一般需要经过线性化处理,使输出电压与温度之间基木上成线性关系。
NTC热敏电阻温度传感器的一致性和互换性较差。
其次是老化较快。
方案三、利用数字温度传感器,18B20,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃.DS1822的精度较差,为±2℃.不符合本系统要求。
方案四、利用集成温度传感器,当电源电压在5~15之间变化时,其输出电流的变化小于1uA,当被测温度一定时流过AD590的电流与热力学温度成正比,其灵敏度为1uA/k,,。
在其适用温区范围内具有灵敏度高、线性好、功能全和使用简单方便。
无论电压输出、电流输出还是频率输出都适合于与微机。
综上所述,方案四适合本设计要求。
由于本系统要求误差≤0.1摄氏度;所以选用高精度的AD进行数据转换,综合考虑选用MAX1416,MAX1416低功耗、2通道、串行输出模数转换器(ADC)使用一个具有数字滤波器的Σ-Δ调制器,分辨率达16位,无失码。
在采用双极性测量条件下,且可编程增益设定为2,IN-端直接接到2.5V基准电压端,则可计算1℃的对应AD范围:
Data=10×2/2500×32767=262.3
理论上可达到0.0038℃的精度,这对于0.1℃的精度来说是完全够了。
所以我们选择方案四。
1.2.3显示模块设计方案论证与选择
依照题目的要求选择12864液晶显示器。
1.2.4语音模块设计方案论证与选择
方案一、采用APR9600系列语音录放芯片,继美国ISD公司以后采用模拟存储技术的又一款音质好、噪音低、不怕断电、可反复录放的新型语音电路,单片电路可录放32-60秒,串行控制时可分256段以上,并行控制时最大可分8段。
但不能用软件实施控制播放音,所以不适合在数字播音的场合使用。
方案二、采用ISD1700系列语音芯片,ISD1720华邦ISD公司2007年新推出的单片优质语音录放电路,该芯片提供多项新功能,包括内置专利的多信息管理系统,新信息提示(vAlert),双运作模式(独立&嵌入式),以及可定制的信息操作指示音效。
芯片内部包含有自动增益控制、麦克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。
优点是是可录、放音十万次,存储内容可以断电保留一百年,两种控制方式,两种录音输入方式,两种放音输出方式。
可处理多达255段以上信息有丰富多样的工作状态提示多种采样频率对应多种录放时间。
ISD1700录音区的存储地址为0x0010—0x00FF;真正录音去范围
T=0x00FF-0x0010+1=240位
录音时间可达20秒,通过软件控制可进行分段录音,分段播放,本系统只是用来播简单的语音,容量不算大,操作方便。
若想增加功能可进行用ISD1700的其他语音芯片,如ISD1760录音时间可达60秒。
ISD1720的接口为标准SPI接口,AVRAtmega16单片机自带SPI接口,接口电路简单,软件易于实现。
综上所述语音播报模块我们选择ISD1720。
1.2.5键盘模块设计方案论证与选择
本系统键盘主要用来设置上限下限温度,进行语音播报,12864菜单键盘,数据输入按钮。
方案一:
利用8个独立按键直接和单片机连接的方式。
缺点是占I/O口太多,而且按键数太少。
方案二:
利用4*4矩阵键盘。
采用逐行逐列扫描的方法。
优点占8个I/O,可进行16个按键的设置,完全达到设计的需求,
综上所述方案二按键丰富占I/O口又少,操作简单,所以选择方案二。
1.2.6电源模块设计方案论证与选择
系统需要多个电源,单片机使用2.7-5V电压,语音模块是2.4—5.5V,液晶需要3—5。
综合可知电源设置5V即可。
方案一:
采用升压型稳压电路。
用两片MC34063芯片分别将3V的电池电压进行直流斩波调压,得到5V稳压的输出。
只需要使用两节电池,既节省了电池,又减少了系统体积重量,但该系统供电电流小,供电时间短,无法使用相对庞大的的系统稳定运作。
方案二:
采用三段稳压集成7805得到稳定电压,利用此方法方便简单,工作稳定可靠。
综上所述,选择方案二,采用三端稳压器电路。
1.2.7数据存储模块设计方案论证与选择
要记录的数据包括10个AD值和10个温度值,总共要40字节,记录存储温度值还有216字节的空间,因此采用单片机里集成已经够用了
1.2.8红外遥控模块设计方案论证与选择
方案一:
用2262和2272够成红外遥控器。
专用的红外发射为2262IR型,才,但是发现用这两组组合的效果并不是很好,且数据传输效果也不理想,自主性不高。
方案二:
用单片机自己编码和解码,采用A8的CTC产生38KHz载波,准确度好,在用另一A8的捕获口作为接收口。
效果很理想。
综上所述才用单片机编码和解码。
1.3系统各模块的最终方案
经过仔细分析和论证,决定了各模块的最终方案如下。
(1)控制模块:
采用Atmega8和Atmega16双CPU控制;
(2)电源模块:
采用三端稳压电路。
(3)温度采集模块:
采用高精度集成传感器AD590。
AD采用MAX1416。
(4)键盘模块:
采用矩阵式键盘。
(5)显示模块:
采用点阵式12864液晶显示。
、
(6)语音模块:
采用ISD1720语音芯片。
(7)红外部分模块:
采用单片机解码和译码.
系统基本框图如图1.3.1所示
图1.3.1温度监控报警系统方框图
单片机Atmega8主要采集AD590传来的数据,然后通过一串口通信将数据采集分析计算的数据传送给Atmega16,同时Atmega8将采集分析的数据通过无线模块发送出去,可用来远程监控。
Atmega16主要用来读取键盘的值,然后进行分析控制类型,将相对应的控制信号通过液晶显示和语音芯片播报,Atmega16还将Atmega8采集来的数据经过分析和转换将数据显示在液晶上,同时当播报按键按下后,其控制ISD1720播报语音。
2.系统硬件设计与实现
2.1温度采集下位机电路设计
如图2.1.1所示AD590将温度变化成对应的电流,经10K电阻后,在电阻两端产生对应的电压,温度每变化1℃,相应电阻两端电压变化10mV。
将它经过运放缓冲后,输入到MAX1416,经行AD转换,换算成对应的数字。
再通过无线模块将数据发送给上位机。
2.1.2AD590传感器采集和AD1516接口电路
由于AD590是电流型集成传感器,温度变化其电流值也随着变化,采集的电流R2和R3将电流信号转换为电压信号然后经MAX1516差分输入,MAX1516采用外部基准电压基准,由于内部有可编程增益放大器(PGA),提供1至128倍增益,PGA用软件设计为2,所以实际和基准电压比较的值为V2
V1=⊿i*R
⊿i为AD590输出的电流变化
R为10K
V2=(V1-2.5)*2
V1为AD590经10K电阻转换来的电压
如果AD转换值D1则
V2=(2.5*D1)/32768
2.2键盘模块电路设计
一般来说,键盘有两种接口方式:
独立式和行列式。
独立式是指将每个按键一一对应地接到单片机的输入口线上。
每一个键的状态通过读入键值的高低电平来区分。
但当按键数目较多时,独立式键盘方式将大量占用单片机的I/O线,通常的办法是采用行列式键盘。
行列式键盘也称矩阵式键盘,一般应用在按键较多的系统之中。
行列式键盘通过I/O线组成行、列结构,按键设置在行、列的交叉点上,按键的作用只是使相应接点接通或断开,在相应程序配合下也可产生被按键的键码。
其硬件电路极为简单,故能广泛用于微型计算机中。
如图2.2.1所示。
一个4x4的行列结构可组成16个键的键盘。
这样,当单片机系统的资源有限时,可以节省大量的I/O口线。
2.3语音模块硬件路设计
此模块选用ISD1700语音芯片,此芯片内部包含有自动增益控制、麦克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。
两种控制方式,两种录音输入方式,两种放音输出方式音质好,电压范围宽,应用灵活,可进行软件控制语音芯片的录制播放,此芯片的用两种工作方式,按键工作方式和SPI工作方式,两者互不干扰,单片机可以通过自带的SPI接口将指令和数据写到单片机中,芯片最大可以录制255段语音。
如图
图2.4.1ISD1700语音芯片电路
ISD1700的独立按键工作模式录放电路非常简单(如图2.4.1),而且功能强大。
不仅有录、放功能,还有快进、擦除、音量控制、直通放音和复位等功能。
这些功能仅仅通过按键就可完成。
在按键模式工作时,芯片可以通过/LED管脚给出信号来提示芯片的工
作状态,并且伴随有提示音,用户也可自定4种提示音效。
音频输入方式有两种第一种是通过外接到引脚10(MIC+)引脚11(MIC-)麦克风,还可以通过外接引脚9使用时需要一个交流耦合电容(典值为0.1uF),并且输入信号的幅值不能超出1.0Vpp。
音频输出用三极管来驱动的。
注意在用单线录音时,要和芯片共地,否则会干扰很大。
2.4电源模块硬件路设计
根据单片机ATmega及其接口电路电源的要求,需要5V的稳定电源。
各部分的工作电流的大小,估计总电流在350mA左右。
按此计算:
P=5V×350mA=1.75W
考虑到预留一定的功率裕量,故采用功率为5W,副线圈输出电压为9V的变压器。
变压器副线圈为单匝线圈,故变压器降压后整流电路采用桥式整流电路。
整流后用电解电容滤除100Hz的纹波,再用三端稳压器7805稳压并用小容量电容虑除高频纹波后得到系统所需电源。
其电路原理如图2.4.1所示。
图2.4.1系统电源电路
2.5控制电路的设计
用于本系统外围接口比较多微秒采用双CPU为主控器,这样减轻了单个CPU的负担,提高了系统的工作效率,同时通过CPU之间的分段相互控制,减少了外围设备。
由Atmega8采集温度传感器通过AD转换传来的数据,Atmega16,用来驱动液晶,采集键盘的数值,控制ISD1700语音芯片的发声。
2.5.1Atmega16的最小系统就外围电路(如图2.5.1)
图2.5.1Atmega16的最小系统及外围电路
2.6红外发射与接收模块
本系统采用Atmega8l为发射与接收,硬件设计十分简单,发射部分采用四级1.2v电池供电。
接收部分的电源由主机供给。
发射部分电路图
接收部分电路
3.系统的软件设计
系统软件设计采用C语言,对单片机进行编程实现各项功能。
程序是在WindowsXP环境下采用ICCAVR软件编写的可以实现单片机对温度采集,控制液晶,扫描键盘的值,控制语音芯片。
由于系统采用双CPU工作,Atmega8作为下位机采集温度并将温度上传给上位机,Atmega16作为上位机接受Atmega8传来的数据,然后经过处理分析,如果要显示则需要控制12864显示,若需要语播报则控制单片机控制ISD1700.主程序在Atmega16单片机中。
3.1下位机系统程序流程图3.1.1
图3.1.1下位机系统程序流程图
采集来的AD值依次放在数组中,用K开计数,一次采集80个数据,然后进行从小到大排列,然后取中间的20个值,算出其平均值,此值就是要发送给上位机的数据。
这样通过数字滤波使稳定性增强,抗干扰能力加强。
3.2上位机系统程序流程图3.1.
图3.1.2上位机系统程序流程
4.系统测试
为了确定系统与题目要求的符合程度,我们对系统的关键部位进行了实际的测试。
4.1测量仪器
测量使用的仪器设备如表4.1.1所示
表4.1.1测试使用的仪器设备
仪表名称
型号、规格
指标
数量
备注
双通道数字示波器
绿杨YB4365
4位半
1
江苏扬州电子有限公司仪器厂
低频信号发生器
GFG-8216A
20KHZ
1
江苏扬州电子有限公司
数字万用表
UT2006
4位半
1
深圳胜利公司
稳压电源
DF1731SC2A
0~30V
1
江苏扬中电子仪器表
计算机
联想PC
P2.5G
1G内存
1
联想公司
4.2指标测试和测试结果
4.2.1温度与输入电压值的测试
采用深圳胜利公司的数字万用表用来测量输入AD的的电压值i,然后记录仪表显示的温度,生成表4.2.1
温度/℃
20
22
24
26
28
30
32
34
36
38
电压值/mv
2.385
2.401
2.420
2.446
2.464
2.483
2.501
2.522
2.541
2.563
温度℃
40
42
44
46
48
50
52
54
56
58
电压值/mv
2.581
2.605
2.623
2.645
2.661
2.684
2.701
2.724
2.743
2.766
表4.2.1温度——电压值记录表
图标分析,由表可以算出温度和电压值是几乎是成线性的,灵敏度
M=10mv/℃,温度没上升一度,输入AD的电压值将变化10mv。
4.1.2MAX1416模数转换芯片的基准电压的测试
使用高精度电压电压测量仪器JL5445BJ测得基准电压为2.499003V,误差为
0.000997V经AD采集转换为温度值为⊿=0.0997,对系统影响不到0.1度。
复合设计要求。
5.结论
本系统可实现以下功能
(1)温度测量范围:
0~200摄氏度,误差≤0.1摄氏度;
(2)可通过键盘设定温度值并在点阵液晶12864显示设定值,显示精确度≤0.1摄氏度;
(3)实时显示测量温度值并可以用语音播报测量温度值,其中数码管显示精确度≤0.1摄氏度;
(4)设定温度值与实际温度值保持一致,误差≤1摄氏度;
(5)当温度超出测量范围时,能实现语音报警报警;
(6)射频模块无线发送(发射距离﹥100米);
(7)当温度上升或下降时,可以通过在液晶显示出来其变化曲线。
参考文献
1.余永权.ATMEL89系单片机应用技术.北京:
北京航空航天大学出版社,2001.1
2.沈红文.单片机应用系统设计实例与分析.北京:
北京航空航天大学出版社,2003
3.徐惠民.单片机微型机原理接口及应用.北京:
北京邮电大学出版社.1999.2
4.搂然苗.李兴飞.51系列单片机设计实例.北京:
北京航空航天大学出版社,2000
5.于海生.微型计算机控制技术.北京:
清华大学出版社,1999
6.扬振江.流行单片机实用子程序及应用实例.西安:
西安电子科学技术出版社.2002.3
7.周杭慈.单片机程序设计基础.北京:
北京航空航天大学出版社,2003.5
8.赵亮.单片机C语言编程与实例.北京:
人民邮电出版社.,2002.9
9.张培仁.MCS—51单片机原理与应用.北京:
清华大学出版社.1998.12
10.王化祥等.传感器原理及其应用.天津:
天津大学出版社.1999.
11.李希光.传感器技术手册.北京:
国防工业出版社.1986.12
12.江晓安.模拟电子技术.西安:
西安电子科技大学出版社.2000
13张毅剛.MCS-51单片机应用设计.哈尔滨:
哈尔滨工业大学出版社.2001.
14.沙占友.新编实用数字化测量技术.北京:
国防工业大学出版社.1998.
15.赵茂泰.智能仪器原理及应用.北京:
电子工业出版社.北京.1999.
16王福瑞.单片微机测控系统设计大全.北京:
航空航天大学出版社.1999.
17.马潮.ATMEGA8原理及应用手册.北京:
清华大学出版社,02.8
18.沈文.AVR单片机C语言开发入门指导.北京:
清华大学出版社,03.5
附录A电子元器件明细表
类型
封装
型号
数量
备注
瓷片电容
RAD-0.1
104
13
瓷片电容
RAD-0.1
20
1
瓷片电容
RAD-0.1
20
1
瓷片电容
RAD-0.1
102
1
电解电容
RAD-0.1
100uF
1
电解电容
RAD-0.1
10uF
1
插针
HDR1X2
2p
3
插针
HDR1X3
3p
2
插针
HDR1X5
5p
2
插针
HDR1X6
6p
1
蜂鸣器
RB5-10.5
有源5V
1
三极管
HDR1X3
8050
1
三极管
HDR1X3
8550
1
电位器
RP3
10K
1
电位器
RP3
20K
1
电阻
AXIAL-0.4
1K
3
电阻
AXIAL-0.4
10K
4
电阻
AXIAL-0.4
200
2
电阻
AXIAL-0.4
4.7K
2
电阻
AXIAL-0.4
100
2
电阻
AXIAL-0.4
100K
1
液晶模块
HDRX21
LCM240128
1
集成电路
8P3
LM358AP
1