单片机水位检测
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1 引言 (1)
2 设计方案及原理 (1)
设计原理 (1)
设计方案 (2)
3 硬件设计 (2)
时钟电路和手动复位电路 (3)
水位检测接口电路、故障报警电路 (3)
存储器扩展接口电路 (4)
4 软件设计 (4)
程序流程图 (4)
运行结果 (5)
5 总结 (7)
6 参考文献 (7)
7 附录 (7)
1引言
随着社会的发展,科技的进步以及人们生活水平的逐步提高,各种方便与生活的自动控制系统开始进入了我们的生活,单片机作为微型计算机发展的一个重要分支,具有高可靠性、高性能价格比、低电压、低功耗等优势,以其为核心的自动控制系统赢得了广泛的应用。
该课程设计的题目是基于单片机的水塔水位控制,在此水塔水位控制系统中,检测信号来自插入水中的3个金属棒,以感知水位变化情况。工作正常情况下,应保持水位在某一范围内,当水位变化发生故障的时候,及时关断电机电源,发出声、光报警信号。其目的在于对单片机技术的应用,由单片机实现自动运行,使水塔内水位始终保持在一定范围,以保证连续正常地供水。该课程设计给出以AT89C51单片机为核心器件的水塔水位检测控制系统仿真设计,实现水位的检测控制、处理和报警等功能,并在Proteus软件环境下模拟仿真。实验结果表明,该系统具有良好的检测控制功能,可移植性和扩展性好。
2设计方案及原理
设计原理
单片机水塔水位控制原理如图1所示,图中虚线表示容许水位变化的上下线,在正常情况下,应保持水位在虚线范围之内。其中A棒处于下限水位,C棒处于上限水位,B棒在上下水位之间。A棒接+5V电源,B棒、C棒各通过一个电阻与地相连。
图1 水塔水位控制原理图
水塔由电机带动水泵供水,单片机控制电机转动以达到对水位控制之目的。供水时,水位上升,当达到上限时,由于水的导电作用,B、C棒连通+5V。因此,b,c两端均为1状态,这时应停止电机和水泵的工作,不再给水塔供水。
当水位处于上下限之间时,B棒与A棒导通。因C棒不能与A棒导通,b端为1状态,c端为0状态。这时,无论是电机已在带动水泵给水塔加水,水位在不断上升;或者是电机没有工作,用水使水位在不断下降。都应继续维持原有的作
状态。
当水位降到下限时,B,C棒都不能与A棒导电,因此,b,c两端均为0状态。这时应启动电机,带动水泵工作,给水塔供水。
设计方案
本设计为一个实际应用系统的水塔水位控制部分。在此水塔水位控制系统中,检测信号来自插入水中的3个金属棒,以感知水位变化情况。工作正常情况下,应保持水位在某一范围内,当水位变化发生故障的时候,及时关断电机电源,发出声、光报警信号。
水塔水位的硬件原理图如图2所示。
图2 硬件原理图
图2中的硬件和主要控制信号分析如下:
⑴使用8031单片机。由于8031没有内部ROM,因此需外扩展ROM,作为程序存储器。本系统采用2732构成4KB的外扩展程序存储器。74LS373作为地址锁存器。
⑵两个水位信号由和输入,这两个信号共有四种组合状态,如图7—10,其中10状态正常情况下是不可能发生的,但在设计中应该考虑到,并作为一种故障状态。
⑶控制信号由输出,去控制电机,并串联一个发光二极管,用来显示电机的运转与否。
⑷由输出报警信号,驱动一支发光二极管和一只蜂鸣器进行声光报警。
3硬件设计
水塔水位控制系统主要有CPU(AT89C51)、水位检测接口电路、报警接口电路、存储器扩展接口电路、复位电路、时钟振荡等部分组成。
时钟电路和手动复位电路
时钟电路和手动复位电路如图3所示。
图3 时钟电路和外部手动复位电路
图3中,在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。晶体振荡频率高,则系统的时钟频率也高,单片机运行速度就快,同时对存储器的速度也高。复位电路的成功与否,关系到一个单片机系统能否正常运行,本设计采用按键电平复位方式,是通过使复位端经电阻与Vcc电源接通而实现的。
水位检测接口电路、故障报警电路
水位检测接口电路、故障报警电路如图4所示。
图4 水位检测接口电路、故障声光报警电路
图4中,为了便于水位检测,在实际仿真过程中用一个两位的拨码开关模拟b、c端的状态,从而实现水位状态的四种组合,如图所示7—10。正电极接和口,每个负电极分别通过的电阻接地,将单片机的口接开关1,口接开关2。单片机通过负电极重复采集检测水位,当缺水时(此时两个开关均置0),电机必须带动水泵抽水;若水位在正常范围内,检测信号为高电平,此时开关1置1,开关2置0;当水位过高时,检测信号为高电平,此时开关1和开关2都置1,单片机检测到和为高电平后,立即停机。
为了避免系统发生故障时,水位失去控制造成严重后果,在超出和低于警戒线水位时,报警电路产生光电报警。单片机为启动电机命令输出端口,通过反相器与电机相连,为低电平时电机运转,否则,电机停转;电机故障报警由单片机的和口控制,当为高电平,为低电平时,表示产生故障,则为低电平,报警灯亮,
同时蜂鸣器响。出现故障时,电机也停止转动。
存储器扩展接口电路
存储器扩展接口电路如图5所示。
图5 扩展4KB外部ROM电路图
图5中,为了便于系统扩展,存放大容量应用程序,系统设计扩展一片程序存储器2732,用于存放源程序代码,因只扩展一片存储器,片选端OE接地。74LS373用于地址锁存,地址锁存信号ALE接锁存器的LE端,通过软件设置实现地址和数据信息的传输。
4 软件设计
程序流程图
程序流程图如图6所示。
图6中,由于水位状态有四种组合,而水位一直在变化,所以一种水位状态在持续一定时间后要再次判断新的水位,在本设计中,设延时时间为10S,程序的流程用到了循环结构。