单片机课程设计水塔水位控制设计.doc

上传人:laozhun 文档编号:2646457 上传时间:2023-02-21 格式:DOC 页数:25 大小:770KB
返回 下载 相关 举报
单片机课程设计水塔水位控制设计.doc_第1页
第1页 / 共25页
单片机课程设计水塔水位控制设计.doc_第2页
第2页 / 共25页
单片机课程设计水塔水位控制设计.doc_第3页
第3页 / 共25页
单片机课程设计水塔水位控制设计.doc_第4页
第4页 / 共25页
单片机课程设计水塔水位控制设计.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《单片机课程设计水塔水位控制设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计水塔水位控制设计.doc(25页珍藏版)》请在三一办公上搜索。

1、单片机课程设计题 目: 水塔水位控制设计 评语: 成绩 目录第1章 绪论11.1 背景介绍11.2 设计要求及意义1第2章 系统方案的设计22.1 总体设计方案22.2 系统组成3第3章 硬件设计33.1 ADC0808的简要介绍33.2 水位检测电路53.3 水质检测电路6第4章 软件设计84.1 水位控制程序84.2 水质检测程序10第5章 系统调试及说明125.1 软件调试125.2 硬件调试145.3 使用说明与注意事项15第6章 总结16第7章 参考文献17第8章 附录188.1 源程序清单188.2 总电路原理图24第1章 绪论1.1 背景介绍 1.2 设计要求及意义水位控制在日常

2、生活及工业领域中应用相当广泛,比如水塔、地下水、水电站等情况下的水位控制。自动检测水位的检测系统能根据水位变化的情况自动调节。本次课题采用单片机进行主控制,利用水的导电性测量水位的变化,把测量到的水位变化转换成相应的电信号,用单片机对接收到的信号进行数据处理,完成水位的检测、控制及故障报警等功能。本次课程设计对我有以下意义: (1) 通过这次课程设计,加深对单片机理论方面的理解。 (2) 掌握单片机的内部模块的应用,如片内外存储器、A/D转换器等。(3) 了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片器应用系统打下良好基础。 第2章 系统方案的设计2.1 总体设计方

3、案分析课题可知应分两个电路来实现系统的功能,一是水位控制电路,二是水质检测电路,并且对于整个系统我们采用顺序控制。首先进行水位控制,水位电路根据输入不同的模拟量,转换为不同的数字量,经过和设定的值进行比较,通过P1.2口对电机进行控制。水位控制电路完成其预定功能后,便自动转到延时子程序,系统经过一定的预定延时(本设计设定值为10S)之后,转去执行水质检测电路。检测电路根据不同的模拟量的输入,转换为不同的数字量,经过和设定的值进行比较后,由单片机产生不同的驱动信号,从而使对应的二极管发光,以显示不同的水质状态。水质检测结束,系统自动返回到主程序的入口处,继续进行水位的检测和控制。开始水位控制 延

4、时水质检测 图2-1-1 硬件设计方框图2.2 系统组成水位检测电路可以通过两个51单片机的管脚来感知水位的变化,产生不同的逻辑组合来控制是否进水或是停止进水。输出端可由一个端口来控制电机的运行状态,进而控制水泵的工作。水质检测的电路主要由A/D转换器组成。本次设计采用ADC0808芯片。用LED灯来显示水位的高低。ADC0808有8路模拟量的输入端口,本次设计只要用其中一个,8路模拟开关无需进行切换选通。设计通过A/D转换为数字量作用于单片机,进而控制电机的运转。本次设计采用可调电阻器来控制模拟电信号的输入。通过对电阻器的调节来模拟输入量的变化。通过对比数字量来进行进行判断水位的高低,不同颜

5、色的信号指示灯显示不同的水质。进而通过输出口对电机进行开关控制。第3章 硬件设计3.1 ADC0808的简要介绍ADC0808有8路模拟量的输入端口,本次设计只要用其中一个,8路模拟开关无需进行切换选通。ADC0808的8路模拟输入8路数字输出的逐次逼近法A/D器件。其主要技术指标和特性为:1.分辨率为8位。2.转换时间取决于芯片时钟频率。本次单元电路仿真采用640KHZ的时钟方波信号。3.单一电源+5V。模拟输入电压范围单极性0-5V,双极性5V或10V。本次课程设计由于只有一个模拟输入量,且电压变化都为正值,故采用单极性电源接法。4.启动转换控制方式为脉冲式(正脉冲),上升沿使内部所有寄存

6、器清“0”,下降沿使A/D转换开始。主要管脚说明:CLK:为时钟信号输入端,决定A/D转换的速度,转换一次为64各时钟周期。ALE:地址锁存允许信号,高电平有效。当此信号有效时,A、B、C三位地址信号被锁存,译码选通对应模拟通道。START:为启动转换信号,正脉冲有效。此信号通常与系统信号相连,控制AD转换器的启动。EOC:转换结束信号,高电平有效,表示一次AD转换已完成。可作为中断触发信号,也可用程序查询的方法检测转换是否结束。OE:输出允许信号,高电平有效,可与系统读选通信号相连。当计算机发出此信号时,ADC0808的三态门被打开,此时可通过数据线读到正确的转换结果。PSEN:程序储存允许

7、输出信号端。在访问片外存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引脚接EPROM的OE端。EA:外部程序选通存储器的地址允许出入端。图3-1-1 ADC0809管脚图控制与时序树状开关电阻网络VccGNDREF(+)REF(-)OEADDAADDBADDCALEIN7IN0比较器SARSTARTCLKEOCD7D0三态输出锁存缓冲器地址锁存与译码8路模拟开关图3-1-2 DC0808的逻辑结构及引脚功能3.2 水位检测电路模拟量由模拟通道IN1输入,通过对可调电阻的调节,模拟输入不同的电压量。数字量的输出端与单片机的P0口相连接。单片机可通过对P0口数据的采集和处理,发出相应的

8、控制信号。P3.0口和P3.6口通过逻辑或非门后,输出端接START与ALE端口。P3.0口和P3.7口也通过逻辑或非门后,输出端接OE端。通过对PO的信号和设定的数值比较,得出水位的高低而通过P1.2口对电机进行控制。同时P0口的信号转入P2口,通过LED灯的显示来显示水位的高低,灯光的不同来表示水塔的水位状态。图3-2-1电路连接图3.3 水质检测电路水质检测电路主要由ADC0808实现,通过A/D转换对比来判断水质 的好坏。模拟量由模拟通道IN0输入,通过对可调电阻的调节,模拟输入不同的电压量。数字量的输出端与单片机的P0口相连接。单片机可通过对P0口数据的采集和处理,发出相应的控制信号

9、。P3.0口和P3.6口通过逻辑或非门后,输出端接START与ALE端口。P3.0口和P3.7口也通过逻辑或非门后,输出端接OE端。由于只需采用一个模拟输入通道(IN0),故可将模拟通道地址选择端都就地,这样,转换出的数字量便全部为IN0口的模拟量的对应值。输出端为P1.5、P1.6、P1.7,分别接一发光二极管,用以显示不同的水质的状态。图3-3-1电路连接图第4章 软件设计一个应用系统,要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工

10、作,用软件编程有时会变得很简单。以下为设计的具体程序4.1 水位控制程序通过对水位控制电路图的分析,做出以下水位控制程序流程图如图4-1-1所示。图4-1-1 水位控制程序流程图由以上流程图,可以得出水位控制程序清单如下:ORG 0000H AJMP MAIN ORG 0030H SJMP LOOP ORG 0050HMAIN: SETB P1.0 CLR P3.0 CLR P3.6 ACALL DELAY SETB P3.0 SETB P3.6WAIT: JB P1.1,DONE1 ;检测转换是否完成 SJMP WAIT ;等待转换完成DONE1 : CLR P3.0 CLR P3.7 MO

11、V A,P0 CLR C SUBB A,#0F4H JNC D1 MOV A,P0 SETB C SUBB A,#0003H JC D2 SJMP LOOP D1: CLR P1.2 SJMP BACK D2: SETB P1.2 SJMP BACK BACK: ACALL D10S SJMP LOOP4.2 水质检测程序通过对水质检测电路图的分析,做出以下水质检测程序流程图如图4-2-1所示。图4-2-1水质检测流程图由以上流程图,可以得出水质检查系统程序清单如下:ORG 0000H SJMP MAIN ORG 0030HMAIN: CLR P3.0 CLR P3.6 ACALL DELAY

12、 ;调用延时子程序 SETB P3.0 SETB P3.6WAIT: JB P2.7,DONE ;转换结束则转 SJMP WAIT ;未结束则等待DONE: CLR P3.0 CLR P3.7 MOV A,P0 ;读取数据 CLR C SUBB A,#0AAH ;与设定值比较大小 JNC DONE1 ;大则转 MOV A,P0 SUBB A,#55H ;与设定值比较大小 JNC DONE2 ;大则转 SETB P1.5 ;控制红灯亮 CLR P1.6 CLR P1.7 SJMP MAINDONE1: SETB P1.7 ;控制绿灯亮 CLR P1.6 CLR P1.5 SJMP MAINDON

13、E2: SETB P1.6 ;控制黄灯亮 CLR P1.5 CLR P1.7 SJMP MAINDELAY: MOV R5,#5 ;延时子程序DL1: MOV R6,#10DL2: MOV R7,#10 DJNZ R7,$ DJNZ R6,DL2 DJNZ R5,DL1 RET END 第5章 系统调试及说明5.1 软件调试本设计主要是用proteus软件绘图以及伟福软件进行编程仿真的。调试步骤由两个部分组成:首先,确定程序中错误的确切性质和位置;然后,对程序代码进行分析,确定问题的原因,并设法改正这个错误。具体地说,由以下步骤组成:1.从错误的外部表现入手,确定程序中出错的位置;2.分析有关

14、程序代码,找出错误的内在原因;3.修改程序代码,排除这个错误;4.重复进行暴露了这个错误的原始测试以及某些回归测试,以确保该错误确实被排除且没有引入新的错误;5.如果所作的修正无效,则撤消这次改动,重复上述过程,直到找到一个有效的办法为止。proteus仿真结果如下:图5-1-3水质差时,红灯亮图5-1-4水质良好时,绿灯亮图5-1-5水质一般时,黄灯亮5.2 硬件调试这个电路是在老师的指导下设计的,电路的设计在理论上完全行得通,不过接线是设计中最关键的一步,我的接线原则是从全局出发,逐个模块连接调试,最后总体调试。在这个指导思想下,我的安装还算是是成功的。逐个模块接线再调试,可以为总体调试省

15、去很多时间,只要每个模块正常运行,几个模块通过地址总线连接之后,就不会出现太大的问题了。调试前的直观检查:1、连线是否正确,在通电之前应先检查一下电路的连线是否正确,包括错线,少线和多线的情况。查找的方法有:按照电路图检查安装的线路,这种方法的特点是,根据电路图来确定,按一定的顺序逐一检查安装好的线路,由此,可容易查出错线和少线的情况,还有一种方法就是按照实际的线路来对照原理电路进行查线,这是一种以元件为中心进行查线的方法。把每个元件引脚的连线一次查清 ,检查每个接线处在电路图上是否存在,这种方法不但可以查出错线和少线,还容易查处多线的情况。2、元器件安装时情况检查元、器见引脚之间有无短路;连

16、接处有无接触不良;二极管和电容极性等是否连接有误。电源、信号源连接是否正确。4、电源端对地是否存在短路,在通电前,断开一根电源线,用万用表检查电源对地端是否存在短路。连接结果如下:水位控制调试结果如表格5-1-1所示。(通过变阻器改变P0)P00FAHOFAHPOO3HPO03H电机停转电机维持不变电机转动表5-1-1 水位调试结果水质检测调试结果如表格5-1-2所示。(通过变阻器改变P0)P0#55H#55HP0#0AAH#0AAHP0红灯黄灯绿灯表5-1-2 水质调试结果5.3 使用说明与注意事项该电路设计比较简单,功能稳定,适合于实际的水塔水位控制中使用。作为一个很实用的自动控制装置,为

17、了工作人员的操作的方便,下面对其使用方法与注意事项作如下简单描述:使用水质和水位检测和调节功能是一个完全自动的过程,不过仿真电路是需要人为改变输入量的变化,在水位的输入量就是通过浮标来改变输入量电压的大小,通过A/D转换,利用浮力原理使浮标带动触头工作,进而影响直流接触器动作,控制交流接触器工作,实现水塔无水时自动开启水泵电动机,水满时自动关闭的自动控制目的,整个由单片机来实现对电机的调节。本次设计中的电机调节电路简单的接了个5V的直流电机来实现控制。水质检测系统的输入量是由一个能够接受发光二极管的感光器来完成的。感光器对不同的水质会感应处不同的电压信号,这些不同的模拟电信号经过A/D转换。由

18、单片机驱动相应的水质指示灯,从而达到检测水质的目的。绿灯表示水质为“良”,黄灯表示水质为“中”,当指示器为红色时,水质等级为“差”,为保证人们的饮水安全,工作人员应立即停止供水再进行检查确定感光器工作是否正常。若操作中水位控制和水质检测不是同时进行的,因为在软件上有一定的时间差,不过在水塔水位和水质检测这种对时间的精确度要求不高的场合,时间差可以忽略不计,一般它不会影响到系统的安全性能和时间特性。第6章 总结时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在一周内完成了。俗话说“好的开始是成功的一半”。说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选

19、一个自己有兴趣的题目。其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。当在这次难得的课程设计过程中我锻炼了自己的思考能力和动手能力。通过题目选择和设计电路的过程中,加强了我思考问题的完整性和实际生活联系的可行性。在方案设计选择和芯片的选择上,培养了我们综合应用单片机的能力,对单片机的各个管脚的功能也有了进一步的认识。还锻炼我们个人的查阅技术资料的能力,动手能力,发现问题,解决问题的能力。并且我们熟练掌握了有关器件的性能及测试方

20、法。再次感 谢老师的辅导以及同学的帮助,是他们让我有了一个更好的认识,无论是学习还是生活,生活是实在的,要踏实走路。课程设计时间虽然很短,但我学习了很多的东西,使我眼界打开,感受颇深。第7章 参考文献1.单片机原理与应用 王迎旭 编 机械工业出版社2.单片机应用技术教程 张洪润 编 清华大学出版社3.单片机初级教程 张迎新 编 北京航空航天大学出版社4.51单片机实践教程 周向红 编 北京航空航天大学出版社5.数字电子技术基础 阎 石 编 高等教育出版社 第8章 附录8.1 源程序清单ORG 0000HD5 EQU 33H ;显示缓存区33H-34HD6 EQU 34HWEI1 EQU P1.

21、3 ;位选端口P2.4-P2.7WEI2 EQU P1.4 AJMP MAIN ORG 0030H SJMP LOOP ORG 0050HMAIN: SETB P1.0 CLR P3.0 CLR P3.6 ACALL DELAY SETB P3.0 SETB P3.6WAIT: JB P1.1,DONE1 ;检测转换是否完成 JMP WAIT ;等待转换完成DONE1 : CLR P3.0 CLR P3.7 MOV A,P0 CLR C SUBB A,#0F4H ;与最高位比较 JNC D1 MOV A,P0 SETB C SUBB A,#0003H ;与最低位比较 JC D2 SJMP LO

22、OP D1: CLR P1.2 SJMP BACK ;电机停转 D2: SETB P1.2 SJMP BACK ;电机转动 BACK: ACALL D10S SJMP LOOP D10S: MOV R3,#19H LOOP3: MOV R1,#85H LOOP1: MOV R2,#0FH LOOP2: DJNZ R2,LOOP2 DJNZ R1,LOOP1 DJNZ R3,LOOP3 RETI LOOP: MOV A,P0 MOV P2,A ACALL TRAN ACALL DISP ;水位显示 CLR P1.0 CLR P3.0 ;水质检测 CLR P3.6 ACALL DELAY SETB

23、 P3.0 SETB P3.6WAIT1: JB P1.1,DONE ;检测转换是否完成 SJMP WAIT1 ;等待转换完成DONE: CLR P3.0 CLR P3.7 MOV A,P0 ;读取P0口数字量 CLR C SUBB A,#0AAH ;与设定值#0AAH比较 JNC A1 ;若A值大,则绿灯亮 MOV A,P0 SUBB A,#55H ;与设定值055H比较 JNC A2 ;若A值大,则黄灯亮 SETB P1.5 ;其余情况,则红灯亮 CLR P1.6 CLR P1.7 SJMP MAINA1: SETB P1.7 ;绿灯亮子程序 CLR P1.6 CLR P1.5 SJMP

24、MAINA2: SETB P1.6 ;黄灯亮子程序 CLR P1.5 CLR P1.7 SJMP MAINDELAY: ;延时子程序 MOV R5,#5DL1: MOV R6,#10DL2: MOV R7,#10 DJNZ R7,$ DJNZ R6,DL2 DJNZ R5,DL1 RETITRAN: MOV A,P2 MOV B,#10H DIV AB MOV D5,A MOV D6,B RET DISP: MOV DPTR,#TAB SETB P1.3 MOV A,D5 MOVC A,A+DPTR MOV P2,A ACALL DELAY1 CLR P1.3 SETB P1.4 MOV A,

25、D6 MOVC A,A+DPTR MOV P2,A ACALL DELAY1 CLR P1.4 MOV P2,#0FFH RETDELAY1: MOV R6,#5D0: MOV R7,#200 DJNZ R7,$ DJNZ R6,D0 RETTAB: DB 28H ; 0 DB 0EBH ; 1 DB 32H ; 2 DB 0A2H ; 3 DB 0E1H ; 4 DB 0A4H ; 5 DB 24H ; 6 DB 0EAH ; 7 DB 20H ; 8 DB 0A0H ; 9 DB 60H ; A DB 25H ; B DB 3CH ; C DB 23H ; D DB 34H ; E DB 74H ; F DB 0D7H ; -. DB 0F7H ; - DB 61H ; H DB 70H ; P DB 0DFH ; . DB 27H ; O DB 0FFH ; 全黑 END8.2 总电路原理图 图8-2-1总电路原理图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号