版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计(论文)附源程序代码及PCB总图题目智能马桶控制器设计 专业 电子信息工程智能马桶控制器设计摘要:随着我国经济不断发展,人们对生活品质要求越来越高,针对于坐便器这方面,已经开始从传统坐便器向智能化坐便器方向发展。本设计是基于嵌入式AT89C52单片机的一个微控制器,利用温度传感器DS18B20的温度采集功能来控制座圈温度的加热、保温。利用红外人体感应传感器来采集人体信息,和座圈上的压力传感器一起来控制马桶的自动冲水功能。利用单片机I/O口的输入/输出来控制电机的转动带动碰头的伸缩、电磁阀的打开,以及送风电路的开启。该设计利用Proteus仿真实现智能马桶控制器的一些简单功能,以完成本次设计。关键词:嵌入式;AT89C52;传感器;电机计数器=0结果全为0ROM字节异或运算指针加1,计数器减1工作单元取反r计数器=0结果全为0ROM字节异或运算指针加1,计数器减1工作单元取反r结束清工作单元ROM故障设地址指针计数器初值图4.4:ROM自检流程图4.4软件子程序设计采用定时器进行扫描,设定一段时间采集系统信息,包括按键输入、压力传感器信息、红外采用定时器进行扫描,设定一段时间采集系统信息,包括按键输入、压力传感器信息、红外接受传感器信息等,根据采集信息按照一定的逻辑处理,设置控制设备的标志位接受传感器信息等,根据采集信息按照一定的逻辑处理,设置控制设备的标志位flag。当人进入红外传感器工作范围时,传感器开始工作,并且同时开始检测座圈上的压力传感器当人进入红外传感器工作范围时,传感器开始工作,并且同时开始检测座圈上的压力传感器是否有变化的信号产生,若是无信号变化则判断人是否使用了该马桶(红外传感器工作时间〉6s);当有信号变化输出时,对按键进行扫描。判断清洗、烘干和座圈加热按键功能是否有使用,并且根据按键的按下运行相对应的功能,然后在人离开之后(红外传感器和压力传感器都产生信号变化)打开水阀,自动冲放大水。
座圈加热启动人体红外热信号臀部清洁功能送风电路开启女性/臀部清洗暖风干燥冲大水加热初始化座圈加热启动人体红外热信号臀部清洁功能送风电路开启女性/臀部清洗暖风干燥冲大水加热初始化座圈压力信号 二> H冲小水开始图4.5状态采集程序流程图4.5定时器/计数器和中断的运用单片机芯片内含有定时/计数模块,单片机系统的开发常常会用到定时控制,也经常会对外部事件进行计数并给出判断的需要。而且单片机进行串行通信也会用内部定时器作为波特率的发生器。而中断功能是为了充分的发挥CPU的能力[19]。4.5.1定时器模式单片机内的定时/计数器可以通过软件编程方便的设置各种工作模式。对于定时/计数器TO和T1的控制可以通过对TCON和TMOD两个寄存器的特定设置来实现。控制寄存器TCONTCON属特殊寄存器,其字节地址是88H,位寻址地址是88H-8FH,其位结构如表4.1所示。表4.1TCON的位结构位地址8FH8EH8DH8CH8BH8AH89H88H位名称TF1TR1TF0TR0IE1IT1IE0IT0各位的功能和控制方法如下:TF0和TF1位分别为TO和T1溢出中断标志请求位。TR0和TR1位分别是TO和T1的运行控制位。设置TRO(TR1)为0,即停止TO(T1)定时/计数器的工作;设置TRO(TR1)为1,即启动TO(T1)定时/计数器的工作。IEO和IE1位是外中断请求标志位。对应单片机的P3.2和P3.3端口的有效中断请求。ITO和IT1位是外中断请求方式控制位,改位需要通过软件来设置。设置ITO(IT1)为1,即选择外部中断请求信号为边沿方式有效;设置ITO(IT1)为O,即选择外部中断请求信号为电平方式有效。工作方式寄存器TMOD工作方式寄存器TMOD的字节地址为89H,属于不可位寻址的特殊寄存器,对其设置参数和读写操作只能按字节进行。其工作方式有四种,详见表4.2。表4.2定时/计数器工作方式M1M0工作方式功能说明0 0方式013位定时/计数器0 1方式116位定时/计数器1 0方式2可自动重载的8位定时/计数器1 1方式3TO分为两个8位定时/计数器。T1无此工作方式本设计定时/计数器的工作方式为TMOD=OxO1,选择的定时/计数器为ETO=1,并且中断请求信号为IT0=1有效。4.5.2中断模式中断是提高CPU工作效率的一种重要手段。中断技术主要内容和功能可以归纳一下3点:实现分时处理多任务使单片机同时顾及对多个设备的控制和多项有待处理的工作任务。通过相应特定请求的方式
中断主程序去执行中断程序。在宏观上看来CPU可以同时顾及多项工作,极大地拓展了CPU的工作能力。2,实时控制在执行主程序的过程中,可以随时请求中断主程序来进行处理,使得系统可以及时完成对象临时提出的任务。这种实时处理功能显然只能靠中断技术来实现。3.紧急事件的优先处理在系统运行过程中可能会发生无法预料的故障,利用中断技术对这些故障进行监测,发现并及时进行优先处理。等状态恢复正常后,再执行主程序。单片机硬件上有5个中断源,可以分为3类:外部中断、定时中断、串行中断。串行通行控制寄存器SCON表4.3SCON的格式SCON位地SCON位地址9FH9EH9DH98H位名称SM0SM1SM29CH9BH9AH99H98HRENTB8RB8TIRISCON各位的功能简述如下:SM0和SM1:串行口工作方式选择位。SM2:允许通信方式2和3的多机通信方式。REN:允许接收位。置1时允许接收数据。TI:发送中断标志位。RI:接受中断标志位。表4.4SMO、SM1状态组合和对应工作方式SM0SM1工作方式功能波特率00方式08位同步移位寄存器fosc/1201方式18位UART可变(T1或,T2溢出率/n)10方式29位UARTfosc/32或fosc/6411方式39位UART可变(T1或,T2溢出率/n)中断允许控制寄存器IE
表4.5IE的格式IE位地IE位地址AFHAEHADHA8H位名称EAACHABHAAHA9HA8HESET1EX1ET0EX0IE各位的含义和设置方式:EA是开中断标志位。置1开中断。ES是串行口中断允许位。置1串行口允许中断。ETO是定时/计数器TO中断允许位。EX0是INT0中断允许位。ET1是定时/计数器T1中断允许位。EX0是INT0中断允许位。中断优先级控制寄存器IPPS是串行口的优先级控制位。当被置1时,串行口置为高优先级中断源。PTO是定时/计数器TO优先控制位。PX0是INTO优先控制位。PT1是定时/计数器T1优先控制位。PX1是INT1优先控制位。、4.6本章小节本章在软件功能分析的基础上,按照一定的原则和方法,进行了对智能马桶控制器软件部分的设计。主要介绍了软件的核心部分一一通过单片机I/O口的输出控制电路完成各个功能,主要是以89C52系列单片机为核心的系统主程序和输出控制模块的设计。
5智能控制器模块的简单电路仿真对于本系统设计的功能,我将做一个简单的仿真。分别为冲大(小)水、座圈加热、暖风干燥、女性专用及臀部冲洗。冲大(小)水人体红夕卜借驕 —11当传感器接收人体信号 并且经过一段时间之后,才接收UD眾T@"H到人离开的信号,马桶自动冲小水丨 ;如果在人离开之前有压力传感器的压力传 一信号进入 ,那么等人离开后自动冲大水。座圈加热当座圈加热系统开关打开之后,座圈温度传感器将采集座圈温度与设定温度进行处理。若两温度值不等则给出信号虽度传剧書 心—,驱动加热电路加热暖风干燥并且等温度加热到接近设定温度的定值后进行保温。当按键按下后,系统自动驱动风干电路进行暖风干燥暖风干燥并且等温度加热到接近设定温度的定值后进行保温。当按键按下后,系统自动驱动风干电路进行暖风干燥叩1.4女性专用及臀部冲洗根据实际情况,对智能马桶的清洗功能设置两个按键P-IJ2D3D4逾性七用择这两个功能时,系统将驱动各自的驱动电路以实现 P-IJ2D3D4逾性七用择这两个功能时,系统将驱动各自的驱动电路以实现 朋和云6总结与展望本次设计根据当前单片机技术、传感器技术等技术的发展,结合所设计的控制器指标和本人所掌握的知识与能力,基于单片机89C52简单完成此次设计,当然指导老师在其中所付出的精力是不可忽略的。并且此次利用protues软件做了一个简单的电路仿真,也算是勉强达到了自己的预想。本次毕业设计的工作如下:通过自己所学的知识和单片机的发展,设计以AT89C52为平台的控制器方案。通过查阅大量的书籍、期刊和各种单片机电路设计,结合本次设计需要实现的功能,设计一个可行的硬件电路方案,并且进行各个模块硬件设计。运用自己所学的C语言知识,利用软件编写规则,通过程序结合硬件电路来实现控制器功能。最后通过KeilC、protues编译和仿真工具来进行仿真实验,最后运用相对简单的仿真电路设计来预演控制器的,并且通过对程序的修减、改进,电路元器件的添加或者仿真电路的改变使得功能的实现变得更加现实。随着单片机技术、传感器技术等智能控制系统相关技术方面的快速发展,智能系统将快速的应用家庭生活中,从而给我们的生活提高便利,带来舒适。而从另一方面来说,智能系统将在一定程度上改善生活中资源浪费的现象。一些节水节电功能将大范围的应用在家电和生活中,会在一定程度上缓解我国资源紧缺的现状。致谢本论文是在导师王金铭老师的悉心指导下完成的,无论是在论文的选题、课题的研究,还是在论文的撰写中都凝聚着导师辛勤的汗水。导师渊博的学识、严谨的治学态度、积极进取的精神和谦逊务实的工作作风都使我受益匪浅。在学习中,导师悉心指导,循循善诱,使我的学术水平和实践能力都有了很大的提高;在工作中,导师不辞辛劳,以身作则,为我作出了极好的榜样。在此谨向王金铭老师表示我崇高的敬意和深深的感激之情!同时,还要感谢曾给予我关心和帮助的浙江树人大学信息工程学院的各位老师和同学。最后,对即将参加论文评议、评阅和对本论文提出宝贵意见的所有专家和老师表示诚挚的感谢。俞英枭2013年5月参考文献朱伟.智能控制技术及其在开关磁阻电机调速系统中的应用研究[D].河海大学硕士学位论文.江苏:河海大学,2002.04.⑵童梅.智能控制在电力系统谐波抑制中的应用[D].浙江大学硕士学位论文.浙江大学,2001,12.梅晓莉等.闸门流量智能控制系统研究[D].武汉理工大学硕士学位论文.湖北:武汉理工大学,2007,04.安宁,丘玮炜等.智能控制综述[J].技术与市场.2010,17(5):10-11.师黎,陈铁军,李晓媛等.智能控制理论及应用[M].北京:清华大学出版社,2009.王耀南,孙炜等.智能控制理论及应用[M].北京:机械工业出版社,2008,02.毛慧琴.基于GMS和单片机的远程家电控制系统[D].广西大学硕士学位论文.2008,06.夏银桥,吴亮等.传感器技术及应用[M].武汉:华中科技大学出版社,2011,02.王志新,罗文广等.电机控制技术[M].北京:机械工业出版社,2010,11.宋浩,田丰.单片机原理及应用[M].北京:清华大学出版社;北京交通大学出版社,2005.胡汉才.单片机原理及其接口技术(第2版)[M].北京:清华大学出版社,2004.杨拴科.模拟电子技术基础[M].北京:高等教育出版社,2010,02.AtemlCorp.8-bitMicrocontrollerwith4KBytesIn-SystemProgrammableFlash,AT89C52[J].AtemlCorp,USA.2008,06.佛罗赞,吉尔伯格等.基于C的结构化程序设计方法(英文版•第3版)[M].北京:机械工业出版社,2007,05.刘杰.基于单片机的智能控制器研究与设计[D].西安:西安电子科技大学学位论文,2012,2.潘明,黄继业,潘松等.单片机原理与应用技术[M].北京:清华大学出版社,2011,01.赵克志.单片机的锅炉智能控制器的设计与研究[D].重庆大学硕士学位论文.重庆:重庆大学,2001,6涂海燕主编.单片机原理与接口技术[M].北京:中国电力出版社,2008,12.赵丽清,惠鸿忠.单片机原理与C51基础[M].北京:机械工业出版社,2012,8.魏永广,刘存.现代传感器技术[M].沈阳:东北大学出版社,2002,6.李德华,杨立永.交流电动机矢量控制变压变频调速系统(七)[D].变频器世界,2007,05.王成元,夏加宽.电机现代控制技术[M].北京:机械工业出版社,2006,05.RobesichlEandSchroedlM.OptimizedINFORMmeasurementsequenceforsensorlessPMsynchronousmotordriveswithrespecttominimumcurrentdistortion[J].IEEETrans.Onindustryapplications,2004,40(2):591-598.蒋雷鸣.步进电机的智能控制原理[J].南方农机,2011,03:42.张齐.单片机原理与应用系统设计[M].北京:电子工业出版社,2010,02.高琴、刘淑聪,彭宏伟.步进电机控制系统设计及应用[J].制造业自动化,2012,34(1):150-152.杨云.基于单片机的步进电机控制系统[J].价值工程,2013,05:185-186.让世美,王道宪.LED屏幕实验平台研制与建立[J].实验技术与管理,2012,8(29):67-69.张义和,王敏男,许宏昌等.例说51单片机[M].北京:人民邮电出版社,2010,06.苏亚,张超.智能压力传感器无线数据采集系统[J].电子测量技术,2007,07(07):54-57.顾东袁,杨东勇.智能坐便器嵌入式控制系统设计与实现[J].计算机工程与应用,2008,44(31):98-101.刘迎春.基于51单片机温度数据采集系统的研究[J].东方青年(教师),2013,01:102-103.刘鹏.基于51单片机的串口通讯的多路采集系统[J].计算机光盘软件与应用,2012,01:57-58.武军伟,康健.基于51单片机的煤矿瓦斯监控系统研究[J].煤炭技术,2012,31(2):103-105.王禹,王玥玥.智能节电控制器[J].科技咨询导报,2007,22:188-189.刘雪松.用单片机实现超声波抽水马桶自动冲水控制器的设计[J].电机电器技术,2002,05:13-15.吴傲寒,刘志昌.基于人体红外传感器的老年人卧室照明系统的设计[J].计算机与数字工程,2012,40(5):69-71.附录1.马桶控制器源程序#include<reg52.h>#defineucharunsignedchar#defineWOMAN0x01#defineFENG0x02#defineWOMAN0x01#defineFENG0x02#defineHONG0x03#defineYALI0x04#defineWENDU0x05sbitDS=P0"2;sbitwe1=P0”0;sbitwe2=P0”1;uinttemp;ucharflag1;//defineinterface//variableoftemperature//signoftheresultpositiveornegativeucharcodetabledu[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};ucharcodetabwe[]={0xfd,0xfe};ucharkeyval;uchart,sec;sbitkey1=P3”3;sbitkey2=P3”4;sbitkey3=P3”5;sbitkey4=P3”6;sbitkey5=P3”7;voiddelay(uintcount)//delay{uintx,y;for(x=count;x>0;x—)for(y=110;y>0;y--);}voiddsreset(void)//sendresetandinitializationcommand{uinti;DS=0;i=103;while(i>0)i--;DS=1;i=4;while(i>0)i—;}bittmpreadbit(void){uinti;bitdat;DS=0;i++;DS=1;i++;i++;dat=DS;i=8;while(i>0)i—;return(dat);}//readabit//i++fordelayuchartmpread(void){uchari,j,dat;dat=0;for(i=1;i<=8;i++){j=tmpreadbit();dat=(j<<7)|(dat〉〉1); //读出的数据最低位在最前面,这样刚好一个字节在DAT里}return(dat);}//readabytedatevoidtmpwritebyte(uchardat){uinti;ucharj;bittestb;for(j=1;j<=8;j++){testb=dat&0x01;dat=dat>>1;if(testb)//write1{DS=0;i++;i++;DS=1;i=8;while(i>0)i—;//writeabytetods18b20else{DS=0;//write0i=8;while(i>0)i—;DS=1;i++;i++;voidtmpchange(void)//DS18B20beginchange{dsreset();delay(1);tmpwritebyte(0xcc);//addressalldriversonbustmpwritebyte(0x44);//initiatesasingletemperatureconversion}uinttmp() //getthetemperature{floattt;uchara,b;dsreset();delay(1);tmpwritebyte(0xcc);tmpwritebyte(0xbe);a=tmpread();b=tmpread();temp=b;temp<<=8; //twobytecomposeaintvariabletemp=temp|a;tt=temp*0.0625;temp=tt*10+0.5;returntemp;}〃显示程序〃显示程序{ucharb[2];staticuchari;b[0]=temp/100;b[1]=temp%100/10;P0=0x00;P2=tabledu[b[i]];P0=tabwe[i];i++;if(i==2)i=0;}//*X**X**X**X**X**X**X**X**X**X**X**X**X**X**X**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i*//voidchong()〃大小水模式{if(keyval!=HONG)return;sec=0;keyval=0;while(1){if(sec<4&&keyval==YALI)//大水模式{sec=0;P1=0xfd; //大水灯亮while(sec<30);//大水冲30秒P1=0xff;break;}if(sec>=4){sec=0;P1=0xfe;〃小水灯亮while(sec<20);//小水冲20秒P1=0xff;break;}}keyval=0;}voidjiare()〃加热{ucharnum[3]={10,20,25},tep,i=0;if(keyval!=WENDU)return;tep=num[0];P1=0xdf;//加热中sec=0;keyval=0;while(1){if(keyval==WENDU){sec=0;i++;if(i==3){P1=0xff;break;}sec=0;tep=num[i];}if(sec>=10){P1=0xff;break;}}keyval=0;}voidwoman()//女性专用或臀部冲洗(if(keyval!=WOMAN)return;sec=0;keyval=0;P1=0xf3;while(1){if(sec>=10){P1=0xff;break;}}keyval=0;}voidfenggan()〃风干模式{if(keyval!=FENG)return;sec=0;keyval=0;P1=0xef;while(1){if(sec>=10){P1=0xff;break;}}keyval=0;}voidmain(){TMOD=0x01;TH0=(65536-46080)/256;TL0=(65536-46080)%256;EA=1; 〃开总中断EX0=1;//允许外部
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论