1、目录1 前言12 总体方案设计22.1 方案比较22.2 方案比较与选择33 单元模块介绍43.1 二氧化碳传感器43.2 放大电路53.2.1 放大电路的特点53.2.2放大电路的性能指标63.3 STC89C51单片机63.3.1 单片机最小系统83.4 显示电路113.5 风扇控制模块114 系统软件设计 134.1系统程序设计135 总结146 致谢157参考文献16附录一:相关程序171 前言空气是人类赖以生存的最基本条件,但是人们常忽略所呼吸空气的质量,绝大多数人 85%90% 的时间在室内度过,这使得他们很容易遭受有这些空气污染引起的疾病。特别是医院病房,由于医院病房有限,每间病
2、房住 4 个、甚至 6 个以上的病人,由于排出二氧化碳气体太多、导致空气质量不好,特别是冬季,不开窗户,空气质量更加糟糕。特别是对于心、肺、脑等疾病患者,病房内空气质量更显重要。二氧化碳对人体具有相当的危害,室内空气二氧化碳浓度在0.07%(1400mg/m ) 时,人体感觉良好。二氧化碳含量为0.1%(2000 mg/m3) 时,个别人有不舒服感 ;0.15%(3000mg/m3)内空气状况明显恶化;浓度达到0.3%(6000 mg/m3) 以上时,出现明显头痛、头晕、心烦意乱等症状 ;8%(160000mg/m3) 以上可引起死亡。 室内 CO2 主要来自人体呼出气。室内 CO2 水平受人
3、均占有面积、吸烟等因素影响。在我国北方,冬天关闭窗户,加上通风不足,室内二氧化碳浓度可达2.0%(4000mg/m3) 以上。 我国公共场所卫生标准规定二氧化碳浓度不超过0.07%-0.15% ( 以场所而定 )。室内空气中CO2卫生标准规定日平均最高允许浓度0.10%(2000mg/m3)(GB/T17094-1997)。 为满足房间内内空气质量的要求,本文设计了一个廉价的房间内的二氧化碳监控终端,实时检测空气中二氧化碳的含量,并根据数据反馈利用本系统改善空气质量。2 总体方案设计2.1 方案比较方案一:以STC89C51系列单片机为核心设计,此系列单片机比较常用、价格便宜、操作简单。设计框
4、图如图2.1. 单片机 浓度显示 A/D转换器 放大电路 传感器 引风机 状态指示灯图2.1方案一系统框图 工作过程:当二氧化碳传感器检测到室内空气中二氧化碳含量超过0.07%时,电路开始工作,传感器把检测到的信号经过放大电路放大处理,再通过A/D转换器转换成模拟信号输送给单片机,通过单片机控制引风机工作,并显示二氧化碳的浓度,直到室内二氧化碳浓度降低到0.07%以下,引风机停止工作。方案二:以PLC为核心设计,其系统框图如图2.2所示。 传感器 信号处理模块 PLC浓度显示 引风机图2.2方案二系统框图 工作过程:当系统工作时,传感器将外界的空气中的二氧化碳含量转换为电 信号,并将信号传输给
5、喜好处理模块。在信号处理模块中,将传感器接收到的信号处理成PLC的输入信号。PLC在单位时间内对信号进行计数,再将信号数与设定的基本值比较,并从PLC输出端给数码管进行浓度的显示。若测量值大于给定值时,LED报警灯闪烁发出报警信号,并控制引风机工作。2.2 方案比较与选择由图2.1和图2.2可知,两图在系统框图的设计上除了所使用的核心元件不一样以外,其他基本一样。 其一,经信号处理模块处理后的信号大小有所不同,这就决定两者放大器的 所使用不相同;其二,在设计软件上不同,且以PLC为核心元件的程序编写上会比较复杂;其三,从经济性上讲采用单片机更节约成本。值得我们注意的是,PLC成本比单片机的成本
6、要高出很多,且PLC的输出端口数越多PLC的价格就越贵;其四,从实时性上讲单片机的更具优越性,因为PLC在使用中有很大的机械延时,对于一个浓度监测系统来讲快速、实时性是我们一定要注重的因素。基于以上因素的考虑,本次设计我们选择方案一。3 单元模块介绍3.1 二氧化碳传感器 本次设计所用的二氧化碳传感器为CDM4161,CDM4161有别于固态或者液态电解质气体传感器,半导体气体传感器是利用半导体材料的各种化学特性将空气中含有的特定气体(即待测气体)以适当的电信号检测或定量的器件。其优点是灵敏度高、响应速度快、体积小、寿命长、便于集成化、智能化,能使检测转换一体化。世界上最先实现半导体气体传感器
7、商品化的是日本费加罗公司发明的TGS系列半导体气体传感器。CDM4161是费加罗公司生产的一种CO2气体浓度测试模块,其内部集成了TGS4161 CO2气体传感器以及PICl6LF88单片机,CDM4161对空气中CO2气体浓度的测量范围为4004000 ppm,并且在空气中对CO2气体有高选择性而对一氧化碳和甲烷等气体不敏感,CDM4161内部集成的单片机可对传感器采集到的信号处理和自动校准,以使其输出的电平值与CO2气体的浓度保持良好的线性关系。CDM4161对外提供5个引脚,其引脚的功能描述如表3.1所示。表3.1 CDM4161引脚功能描述引脚序号引脚名称引脚功能1Vin+5V电源2V
8、cone二氧化碳浓度测试输出3CTRL控制信号输出4TRBL故障信号输出5GND接地端 工作时CDM4161引脚l接+5 V电源,引脚2输出电压范围04-4 V。相当于CO2气体浓度范嗣为4004 000 ppm。该模块允许用户通过跳线设置4档极限值,当监测到的CO2浓度高于设定值时。引脚3输出高电平以驱动外部通风设备,反之监测到的CO2浓度由高转低,且低于某一门限值时,引脚3输出电平也由高变低关闭外围控制设备,CDM4161板上跳线与所设定极限值以及引脚3输出电位的变化关系如表3.2所示。引脚4在传感器故障时输出低电位,可通过该引脚连接蜂鸣器以及时监测CDM4161工作状态。CDM4161模
9、块有3个工作状态指示灯,当模块上电时CDM4161需要预热2 h,比时板上绿灯闪烁,而后进入正常工作状态后,绿灯常亮。当引脚3输出高电位时,红灯闪烁,当模块内部传感器故障时黄灯闪烁。表3.2 CDM4161跳线方法档级跳线插座JP3跳线插座JP4二氧化碳浓度设定值/ppm引脚3电位 变化1断断8007200低到高高到低2断连1000900低到高高到低3连断15001350低到高高到低4断断20001800低到高高到低3.2 放大电路 放大电路是增加电信号幅度或功率的电子电路。应用放大电路实现放大的装置称为放大器。它的核心是电子有源器件,如电子管、晶体管等。为了实现放大,必须给放大器提供能量。常
10、用的能源是直流电源,但有的放大器也利用高频电源作为泵浦源。放大作用的实质是把电源的能量转移给输出信号。输入信号的作用是控制这种转移,使放大器输出信号的变化重复或反映输入信号的变化。现代电子系统中,电信号的产生、发送、接收、变换和处理,几乎都以放大电路为基础。20世纪初,真空三极管的发明和电信号放大的实现,标志着电子学发展到一个新的阶段。20世纪40年代末晶体管的问世,特别是60年代集成电路的问世,加速了电子放大器以至电子系统小型化和微型化的进程。 现代使用最广的是以晶体管(双极型晶体管或场效应晶体管)放大电路为基础的集成放大器。大功率放大以及高频、微波的低噪声放大,常用分立晶体管放大器。高频和
11、微波的大功率放大主要靠特殊类型的真空管,如功率三极管或四极管、磁控管、速调管、行波管以及正交场放大管等。3.2.1 放大电路的特点一、有静态和动态两种工作状态,所以有时往往要画出它的直流通路和交流通路才能进行分析;二、电路往往加有负反馈,这种反馈有时在本级内,有时是从后级反馈到前级,所以在分析这一级时还要能瞻前顾后。在弄通每一级的原理之后就可以把整个电路串通起来进行全面综合。3.2.2放大电路的性能指标电压放大倍数、输入电阻和输出电阻是放大电路的三个主要性能指标,分析这三个指标最常用的方法是微变等效电路法,这是一种在小信号放大条件下,将非线性的三极管放大电路等效为线性放大电路。1放大倍数放大倍
12、数又称增益,它是衡量放大电路放大能力的指标。根据需要处理的输入和输出量的不同,放大倍数有电压、电流、互阻、互导和功率放大倍数等,其中电压放大倍数应用最多。2输入电阻 放大电路的输入电阻是从输入端向放大电路内看进去的等效电阻,它等于放大电路输出端接实际负载电阻后,输入电压与输入电流之比,即Ri=Ui/Ii。对于信号源来说,输入电阻就是它的等效负载。输入电阻的大小反映了放大电路对信号源的影响程度。输入电阻越大,放大电路从信号源汲取的电流(即输入电流)就越小,信号源内阻上的压降就越小,其实际输入电压就越接近于信号源电压,常称为恒压输入。反之,当要求恒流输入时,则必须使RiRs;若要求获得最大功率输入
13、,则要求Ri=Rs,常称为阻抗匹配。3输出电阻对负载而言,放大电路的输出端可等效为一个信号源。输出电阻越小,输出电压受负载的影响就越小,若Ro=0,则输出电压的大小将不受RL的大小影响,称为恒压输出。当RL整定值引风机工作YN显示实时浓度 延时5秒图4.1系统程序流程图5 总结室内空气质量控制系统的设计主要分为硬件设计和软件设计。根据设计前对该系统所要实现功能的要求,综合考虑采用AT89C51单片机为控制核心。由于所学知识的限制,本系统实现的功能不是很健全,但在设计该系统的过程中,让我学会了系统设计的方法,和养成了系统思考的思维方式。首先要了解系统所要实现的功能;其次根据功能去选择相应的硬件资
14、源;再次将一个大的系统进行模块化划分,然后逐一去攻破。最后把所有模块进行优化整合,便得到了一个完整的系统。基于这样的思路,我完成了室内空气质量控制系统的基本设计。系统的控制具有运行可靠、功能齐全、投资低等特点。同时,利用单片自身 的数据处理功能使整个控制系统的结构线路更为简单、控制更为方便、系统更易于维护。在系统中,我们利用光电传感器对信号进行检测,并将经过信号处理模块单元处理后的信号送入单片机P10端进行单位时间内的计数。再由单片机根据所检测的信号数量与二氧化碳比值关系进行数据处理和数据显示。从而实现工作是否正常运行做出了一定的监测。为系统能够安全、正常运行提供了基础。 本次设计当然还存在一
15、些或多或少的问题,特别是与传感器的实际工作情况还有一定的差距还有很多现实性的干扰没能考虑进去。由于时间有限,所设计的东西只能在理想状态下正常工作,这是我下来之后所要对自己设计的东西进行改进的地方。 6 致谢 在本次课程设计过程中,郭老师对该设计的构思到最后定稿的各个环节给予细心指引与教导,使我和我的同伴最终得以顺利完成本次课程设计。在此我致上诚挚的谢意。 在设计过程中所涉猎的各种软件(如visio、protel、protuse 、keil)也使我的知识构架更为丰富。同时,通过这次做课程设计我也及时发现自己知识点上的漏洞,真正起到了查漏补缺的效果。 这次课程设计能够顺利完成,我也非常感谢在我身边
16、默默帮助与支持的朋友。因为从他们身上我不仅学得了很多实用的专业知识,同时也学到了团队合作精神的重要性获得了更为坚实的友谊,学会了从不同的角度去思考和看待问题。 在学习中,郭老师严谨的治学态度、丰富渊博的知识、敏锐的学术思维、精益求精的工作态度以及侮人不倦的师者风范是我终生学习的楷模,导师的高深精湛的造诣与严谨求实的治学精神,将永远激励着我。在此,感谢郭老师的支持和帮助,致以衷心的感谢和崇高的敬意。7参考文献1 徐科军主编.传感器与检测技术.北京:电子工业出版社,2008 2 谭浩强主编.C程序设计(第三版).北京:清华大学出版社,2005 3 谢自美主编.电子线路设计实验测试.武汉:华中科技大
17、学出版社,2006.8 4 张毅刚主编.单片机原理及应用.北京:高等教育出版社.2009 5 康华光主编.电子技术基础模拟部分.北京:高等教育出版社,2006 6 袁鹏平主编.Protel 99电路设计实用教程.北京:化学工业出版社.2006.10 7 杨天怡主编.微机计算机控制技术.重庆:重庆大学出版社 8 刘靖编.单片机控制技术.北京:北京理工大学出版社.2008.06附录一:相关程序#include /调用外函数/ #include #include #include #include #include #include /*初始化CPU*/ void init_cpu() /初始化cP
18、u EA=1; TR0=1; TR1=1; TMOD=0x11; TH1=0x3c; TL1=0xb0; /*void time1(void) interrupt 3 using 1 TH1=(65536-50000)/256; TL1=(65536-50000)%256; keyval=P1; * /初始化CPU结束/ void main_menu_initial() /LCD主菜单初始化./ main1_menu0.menu_count=4; /有4个菜单项./ main1_menu0.display=measurearray; /定义一个”开始测量“数组/main1_menu0.subs
19、=NULL; main1_menu0.children_menus=measure_menu; /当前菜单子菜单 的指针 main1_menu0.parent_menus=NULL; /还有“数据存储”、“时间设置”/ void measure_menu_initial() /“开始测量”菜单设置/ measure_menu0.menu_count=2; measure_menu0.display=qr; /开始测量函数, 确认. measure_menu0.subs=start_measure_function; /开始测量函数 measure_menu0.children_menus=NU
20、LL; measure_menu0.parent_menus=main1_menu; measure_menu1.menu_count=2; measure_menu1.display=qx; /开始测量函数, 取 消. measure_menu1.subs=NULL; measure_menu1.children_menus=NULL; measure_menu1.parent_menus=main1_menu; /还有void store_menu_initial()、void time_menu_initial()/ void led_menu_pro() max_item=menu_l
21、ed-menu_count; switch(keyval) case 0: break;case 1: /向上键. if(user_choosen=0) user_choosen=max_item; shuaxin=1; user_choosen-; break; /“向上”“向下”“确认”“取消”键/ if(shuaxin) /是否需要刷新LCD标志位. Clr_Scr(); shuaxin=0; led_menu_show(); v oid led_menu_show() uchar n; max_item=menu_led-menu_count; if (max_item=4) /菜单项
22、为3则表示为主菜单. for(n=0;n4;n+) draw_bmp(n*2,20,96,0,menu_ledn.display); select_item(user_choosen); /标记出当前菜单项. else switch(temp_choosen) case 0: draw_bmp(0,20,96,0,measurearray); /“开始测量”数组 / break; default: break; for(n=0;nmax_item;n+) draw_bmp(n+1)*2,20,32,0,menu_ledn.display); select_item(user_choosen+1
23、); void select_item(uchar n) draw_bmp(n*2,2,16,0,curflag); void start_measure_function(void) /开始测量函数/ main_Menu(); /*-主函数-*/ main() init_cpu(); Init_Clock();init_lcd(); Disp_Img(FirstPage); delay(2000); /延时/ ClockMsg(); Refresh(); delay(2500); Clr_Scr(); main_Menu(); Clr_Scr(); main_menu_initial(); measure_menu_initial(); store_menu_initial(); time_menu_initial(); communication_menu_initial(); while(1) keyval=get_key(); /读键. led_menu_pro(); / 适当延时防止因为不断查忙而耗费大量CUP资源 / (注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100