1、基于51单片机的湿度控制器40含原理图与C代码41毕业论文设计(此文档为word格式,下载后您可任意编辑修改!)单片机湿度控制器摘要本系统采用AT89C51作为控制系统,通过模拟传感器把湿度信号采集后送给ADC0804,转换成数字信号后送入单片机,再通过LCD1602显示出来,同时独立键盘输入湿度上门限值和下门限值,当湿度值低于下门限值或上门限值时系统驱动蜂鸣器报警和控制电路进行湿度控制,当湿度再次回到两个门限值之间时消除报警和停止湿度控制,本系统实时刷新当前湿度和门限值,适用于大棚,花卉以及家庭湿度检测与控制。目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。同时,控制理论的发展
2、也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。智能控制的典型实例是模糊全自动洗衣机等。 关键词:AT89C51,LCD1602,ADC0804,湿度控制与检测Single-chip sensor to Hou to ADC0804, conversion into digital signal Hou into single tablets machine, then by LCD1602 displayed out, while independent keyboard entered returned to two a threshold value Zhijian Shi e
3、limination alarm and stop important symbol of the measure of all walks of life the level of modernization. The same time, the development of control theory control theory and the theory of intelligent control in three stages. The typical example of the intelligent control fuzzy automatic washing mac
4、hine. Keyword:AT89C51,LCD1602,ADC0804,) 指数字量变化一个最小量时模拟信号的变化量,定义为满刻度与2n的比值。分辩率又称精度,通常以数字信号的位数来表示。 2) 转换速率(Conversion Rate)是指完成一次从模拟转换到数字的AD转换所需的时间的倒数。积分型AD的转换时间是毫秒级属低速AD,逐次比 较型AD是微秒级属中速AD,全并行串并行型AD可达到纳秒级。采样时间则是另外一个概念,是指两次转换的间隔。为了保证转换的正确完成,采样速率 (Sample Rate)必须小于或等于转换速率。因此有人习惯上将转换速率在数值上等同于采样速率也是可以接受的。常
5、用单位是ksps和Msps,表 示每秒采样千百万次(kilo Million Samples per Second)。 3)量化误差 (Quantizing Error) 由于AD的有限分辩率而引起的误差,即有限分辩率AD的阶梯状转移特性曲线与无限分辩率AD(理想AD)的转移特 性曲线(直线)之间的最大偏差。通常是1 个或半个最小数字量的模拟变化量,表示为1LSB、12LSB。 4)偏移误差(Offset Error) 输入信号为零时输出信号不为零的值,可外接电位器调至最小。 5)满刻度误差(Full Scale Error) 满度输出时对应的输入信号与理想输入信号值之差。 6)线性度(Lin
6、earity) 实际转换器的转移函数与理想直线的最大偏移,不包括以上三种误差。 2.6 湿度传感器2.6.1 湿敏元件的特性 湿敏元件是最简单的湿度传感器。湿敏元件主要电阻式、电容式两大类。2.6.2 湿敏电阻 湿敏电阻的特点是在基片上覆盖一层用感湿材料制成的膜,当空气中的水蒸气吸附在感湿膜上时,元件的电阻率和电阻值都发生变化,利用这一特性即可测量湿度。湿敏电阻的种类很多,例如金属氧化特湿敏电阻、硅湿敏电阻、陶瓷湿敏电阻等。湿敏电阻的优点是灵敏度高,主要缺点是线性度和产品的互换性差。2.6.3 湿敏电容 湿敏电容一般是用高分子薄膜电容制成的,常用的高分子材料有聚苯乙烯、聚酰亚胺、酷酸醋酸纤维等
7、。当环境湿度发生改变时,湿敏电容的介电常数发生变化,使其电容量也发生变化,其电容变化量与相对湿度成正比。湿敏电容的主要优点是灵敏度高、产品互换性好、响应速度快、湿度的滞后量小、便于制造、容易实现小型化和集成化,其精度一般比湿敏电阻要低一些。国外生产湿敏电容的主厂家有Humirel公司、Philips公司、Siemens公司等。以Humirel公司生产的SH1100型湿敏电容为例,其测量范围是(1%99%)RH,在55%RH时的电容量为180pF(典型值)。当相对湿度从0变化到100%时,电容量的变化范围是163pF202pF。温度系数为0.04pF,湿度滞后量为1.5%,响应时间为5s。 除电
8、阻式、电容式湿敏元件之外,还有电解质离子型湿敏元件、重量型湿敏元件(利用感湿膜重量的变化来改变振荡频率)、光强型湿敏元件、声表面波湿敏元件等。湿敏元件的线性度及抗污染性差,在检测环境湿度时,湿敏元件要长期暴露在待测环境中,很容易被污染而影响其测量精度及长期稳定性。2.6.3 湿度测量的名词术语 湿度:湿度是表示空气中水蒸气的含量。湿度又分为绝对湿度和相对湿度两种。 绝对湿度:绝对湿度亦称水蒸气密度,它表示水蒸气的质量与总容积的比值,dv代表绝对湿度,它表示每立方米干燥空气与水蒸气的混合物中所含水分的克数;p为水蒸气的压强(单位是Pa);ab为干燥空气的温度值(单位是)需要指出,国内也有人将空气
9、中所含水蒸气的压强理解为绝对湿度,这与国外关于绝对湿度的定义不相符。 相对湿度:相对湿度表示在相同湿度下大气中水蒸气的实际压强与饱和水蒸气的压强之比,通常用百分数来表示。相对湿度的英文缩写为(Relative Humidity),露点:在水蒸气冷却过程中最初发生结露的温度。若气温低于露点,水蒸气开始凝结。湿度比:它表示水蒸气的质量与干燥空气的质量比。大气压强:在单位面积上大气的压力。通常将海平面高度的大气压强称为个标准大气压,p0=101.325Pa。大气压强随高度的增加而降低。设、两点的高度差h2-IEEE Tranon CompPoek,and M anu( measurements by
10、 MEMS inertial sensorsV. BistrovAutomatic Control and Computer Sciences, 2011, Volume 45, Number 5, Pages 284-292 附录一#includereg51.=P22;sbit s1=P24;sbit s2=P25;sbit s3=P26;sbit s4=P27;sbit speaker=P32;sbit D1=P30;sbit D0=P31;uchar code table=Humidity ;uchar code table1=%;uchar code table2=Low;uchar
11、code table3=% High;uchar result,Low=202,High=216;void delay(uint i) 延时程序 uchar j; while(i-) for(j=0;j115;j+) ; void init_ad() 初始化AD cs=0; void start_ad() 启动AD cs=0; _nop_(); wr=0; _nop_(); rd=1; _nop_(); wr=1; _nop_(); _nop_(); cs=1; _nop_(); _nop_(); void read_ad() 读AD转换后的值 cs=0; _nop_(); wr=1; _no
12、p_(); wr=0; _nop_(); rd=0; _nop_(); _nop_(); result=P0; _nop_(); _nop_(); rd=1; _nop_(); cs=1; _nop_(); void write_com(uchar com) 向液晶屏写指令 lcdrs=0; P1=com; delay(5); lcden=1; delay(5); lcden=0; void write_data(uchar result) 向液晶屏写数据 lcdrs=1; P1=result; delay(5); lcden=1; delay(5); lcden=0; void init()
13、 液晶屏初始化 uchar num; lcden=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); 清屏指令 write_com(0x8a); 写入的首地址 void display() 液晶屏显示 uint num, Low1,Low2,High1,High2; uchar x,y; x=result%10010; y=result%10; Low1=Low%10010; Low2=Low%10; High1=High%10010; High2=High%10; write_com(0x01); 清屏
14、指令 write_com(0x8a); 写入的首地址 写入当前湿度值 write_data(x+0x30); delay(5); write_data(y+0x30); delay(5); write_com(0x80); 数据指针设置 for(num=0;num10;num+) write_data(tablenum);写第一行数据 写入字母Humidity delay(5); write_com(0x8c); delay(5); write_data(table10) ; 写入% write_com(0x80+0x40);设置数据地址指针为2行 for(num=0;num3;num+) w
15、rite_data(table2num);写第二行数据 写入 字母Low delay(5); write_com(0x80+0x45); for(num=0;num7;num+) write_data(table3num);写第二行数据 写入 字母High delay(5); write_com(0x80+0x43); 写入的首地址 写Low的值 write_data(Low1+0x30); delay(5); write_data(Low2+0x30); delay(5); write_com(0x80+0x4c); 写入的首地址 High的值 write_data(High1+0x30);
16、 delay(5); write_data(High2+0x30); delay(5); write_data(table10) ; 写入% write_com(0x80+0x4e);设置数据地址指针为2行 void keyscan() if(s1=0) delay(10); if(s1=0) High+; if(High=99) High=98; while(!s1); if(s2=0) delay(10); if(s2=0) High-; if(High=01) High=02; while(!s2); if(s3=0) delay(10); if(s3=0) Low+; while(!s
17、3); if(s4=0) delay(10); if(s4=0) Low-; while(!s4); unsigned char timer0h,timer0l,time; 生日歌code unsigned char sszymmh=5,1,1, 5,1,1, 6,1,2, 5,1,2, 1,2,2, 7,1,4, 5,1,1, 5,1,1, 6,1,2, 5,1,2, 2,2,2, 1,2,4, 5,1,1, 5,1,1, 5,2,2, 3,2,2, 1,2,2, 7,1,2, 6,1,2, 4,2,1, 4,2,1, 3,2,2, 1,2,2, 2,2,2, 1,2,4; 音阶频率表 高八
18、位code unsigned char FREQH= 0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8, 0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC, 1,2,3,4,5,6,7,8,i 0xFC,0xFD,0xFD,0xFD,0xFD,0xFE, 0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF, ; 音阶频率表 低八位code unsigned char FREQL= 0x42,0xC1,0x17,0xB6,0xD0,0xD1,0xB6, 0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B,0x8
19、F, 1,2,3,4,5,6,7,8,i 0xEE,0x44, 0x6B,0xB4,0xF4,0x2D, 0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16, ;void delay2(unsigned char t) unsigned char t1; unsigned long t2; for(t1=0;t1t;t1+) for(t2=0;t28000;t2+) TR0=0; void t0int() interrupt 1 TR0=0; speaker=!speaker; TH0=timer0h; TL0=timer0l; TR0=1; Void song() TH0=timer0h; TL0=timer0l; TR0=1; delay2(time); void been(void) unsigned char k,i; TMOD=1; 置CT0定时工作方式1 EA=1; ET0=1;IE=0x82 CPU开中断,CT0开中断 i=0; while(iHigh|resultLow) been(); D0=0; 附录二
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1