课程设计-单片机水塔水位控制[1]讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
第一章系统整体设计说明 (1)
第二章整体设计方案 (2)
第三章设计系统方框图与工作原理 (3)
3.1工作原理: (3)
3.2系统结构框图: (4)
第四章硬件设计及说明 (5)
4.1硬件设计说明: (5)
4.2水位控制硬件设计: (5)
4.3故障及水质监测硬件设计: (6)
4.4 水位显示硬件设计原理图: (7)
第五章软件设计与说明(包括流程图) (8)
5.1 软件设计: (8)
5.2 软件设计流程图: (10)
第六章调试步骤、使用说明 (12)
第七章设计总结 (13)
参考文献 (14)
附录 (14)
第一章系统整体设计说明
现代传感技术、电子技术、计算机技术、自动控制技术、信息处理技术和新工艺、新材料的发展为智能检测系统的发展带来了前所未有的奇迹。在工业、国防、科研等许多应用领域,智能检测系统正发挥着越来越大的作用。检测设备就像神经和感官,源源不断地向人类提供宏观与微观世界的种种信息,成为人们认识自然、改造自然的有力工具。现代的广义智能检测系统应包括一切以计算机(单片机、PC机、工控机、系统机)为信息处理核心的检测设备。因此,智能检测系统包括了信息获取、信息传送、信息处理和信息输出等多个硬、软件环节。从某种程度上来说,智能检测系统的发展水平表现了一个国家的科技和设计水平。
本课题研究的内容是“水塔水位控制系统”。水位控制在日常生活及工业领域中应用相当广泛,而以往水位的检测是由人工完成的,值班人员全天候地对水位的变化进行监测,用有线电话及时把水位变化情况报知主控室。然后主控室再开动电机进行给排水。很显然上述重复性的工作无论从人员、时间和资金上都将造成很大的浪费。同时也容易出差错。因此急需一种能自动检测水位,并根据水位变化的情况自动调节的自动控制系统,我所设计的就是这方面的课题。
水位检测可以有多种实现方法,如机械控制、逻辑电路控制、机电控制等。本设计采用单片机进行主控制,在水水塔上安装一个自动测水位装置。利用水的导电性连续地全天候地测量水位的变化,把测量到的水位变化转换成相应的电信号,主控台应用单片微机对接收到的信号进行数据处理,完成相应的水位显示、控制及故障报警及显示水位等功能。
第二章整体设计方案
本设计用80C51单片机为核心,由于单片机I/O管脚能够使用的只有P0口,而设计的要求是利用引脚输入信号并对信号进行处理,并且要输出水位显示,故障报警,污水报警,启动停止水泵等功能,这样一来我们只用单片机的P1引脚是远远不够的,(单片机的P1,P2和P3的部分引脚不能用来信号的输入输出)因此我利用8255A对其引脚进行扩展,通过8255A的PC口进行信号的输入并利用8255A的PA口连接两个数码管来显示实际水位,当水位在不同的位置时利用程序控制将在数码管上显示这段时间的水位。并利用延时子程序来延时,延时时间1S,每间隔1S系统将进行一次水位检测,当水位低于下限水位时将通过PC口输入信号并由8255A将信号送到单片机,通过单片机来控制水泵工作,同样当水位上升到上限水位时将通过PC口输入信号并由8255A将信号送到单片机,通过单片机的P1.6口来控制停止水泵工作,当处于上下线之间是保持原有状态,并且此设计我还设计故障报警和水质检测,当检测到故障时通过PC口输入信号并由8255A将信号送到单片机,再由单片机的P1.5和P1.7口输出信号到发光二极管,通过二极管和水质有问题时我通过发光二极管来显示,同时停止系统工作。水位显示我设计的是动态的,因此在设设计时我要设计一个延时子程序,延时时间2ms,通过延时子程序经过一段时间间隔后,再调用显示子程序。通过这种反复调用来实现LED显示器的动态扫描。
第三章设计系统方框图与工作原理
3.1工作原理:
我们可以设置水位的上下限,在正常情况下,应保持水位在上下限之间。为此,在水塔内的不同高度安装3根金属棒,以感知水位变化情况。其中,A棒处于下限水位,B处于上限水位,G 浮球在上下水位之间,它可以在水面上浮动。
水塔由电机带动水泵供水,单片机控制电机转动,以达到水位控制之目的。供水时,水位上升,当达到上限时,由于水的导电作用,G棒连通+5V。因此,A、B两端均为1状态,这时应停止电机和水泵的工作,不再給水塔供水。
当水位降到下限时,A、B棒都不能与G棒导电,因此A、B 两端均为0状态。这时,应启动电机,带动水泵工作,給水塔供水。
当水位处于上下限之间时,G棒与A棒导通,因此B棒不能与G 棒导通,A端为1状态,B端为0状态。这时,无论是电机已在带动水泵給水塔供水,水位在不断上升,或者是电机没有工作,用水使水位在不断下降,都应继续维持原有的工作状态。
为了满足本次课程设计的要求,我们还要显示上下限水位之间的几个数值,其电路的接法和A棒和B棒一样,都是接一个电阻然后接地,然后将端口接到单片机上,通过单片机与显示器连接,以显示不同的水位值。由于本次课程设计不需要动态显示所以只需要一个显示器即可。
3.2系统结构框图:
该方案以单片机为核心,配以一定的外围电路和软件,以实现水塔水位控制的功能。它由硬件部分和软件部分组成。系统设计方案的硬件电路设计框图如下图1所示。
图3.1
第四章硬件设计及说明
4.1硬件设计说明:
此设计也可以用PROTEUS来进行仿真,我们可以在此软件中仿真有点繁琐,我的硬件仿真是在试验台上进行的,但基本接线与下图2一样,由于试验台上没有水泵,我就用发光二极管来代替水泵,通过二极管是否发光来显示出水泵是否工作。用80C51设计一个单片机最小控制系统。其中PC0接水位上限传感器;PC1接水位下限传感器;PC4输出后接光电耦合器,用来检测水的质量,P1.6输出后通过继电器控制水泵工作;P1.5输出后接LED,当出现故障是LED发亮;P1.7输出后接LED,当水出现浑浊时LED发亮。
4.2水位控制硬件设计:
用导电片、导线等设计一个水塔水位传感器。其中A电极置于水位2m 处经4.7K下拉电阻接8255A的PC1口, B电极置于水位12m处经4.7K下拉电阻接8255A的PC0口,C电极置于水位4m处经4.7K下拉电阻接8255A的PC2口,D电极置水位6m处经4.7K下拉电阻接8255A的PC4口,E电极置于水位8m处经4.7K
下拉电阻接8255A的PC5口并将它们全部接地。再设计一个导电浮球G并在浮球上接+5V电压。设计一个单片机至水泵的控制电路。要求单片机与水泵之间要用光电耦合器和继电器控制,计算出LED 限流电阻,接好继电器的续流二极管。硬件仿真图如下: