本科毕业论文-基于单片机的水塔水位控制系统的设计与仿真.doc_第1页
本科毕业论文-基于单片机的水塔水位控制系统的设计与仿真.doc_第2页
本科毕业论文-基于单片机的水塔水位控制系统的设计与仿真.doc_第3页
本科毕业论文-基于单片机的水塔水位控制系统的设计与仿真.doc_第4页
本科毕业论文-基于单片机的水塔水位控制系统的设计与仿真.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉工程大学毕业设计(论文)说明书(封面无) 2014 届毕业设计(论文) 题题 目目 基于单片机的水塔水位控制系统的基于单片机的水塔水位控制系统的 设计与仿真设计与仿真 专专 业业 班班 级级 学学 号号 姓姓 名名 指指 导导 教教 师师 学学 院院 名名 称称电电气气信信息息学学院院 2014 年 5 月 20 日 武汉工程大学毕业设计(论文)说明书(封面无) 基于单片机的水塔水位控基于单片机的水塔水位控 制系统的设计与仿真制系统的设计与仿真 Design and Simulation of Control System of Water Tower Level Based on SCM 学学 生生 姓姓 名名: : 指指 导导 教教 师师: : 武汉工程大学 毕业设计(论文)说明书 - I - 摘摘 要要 供水是一个关系国计民生的重要产业。传统的人工供水方式,劳动强度大,工作 效率低,安全性难以保障,而水塔水位控制系统是我国住宅小区广泛应用的供水系统, 为此很有必要对水塔水位进行自动控制。为了达到节能的目的,提高供水系统的质量, 考虑采用单片机技术,设计出一套实用水位自动控制方案。该设计主要基于单片机的 硬件电路设计,在硬件基础上合理配合软件,实现一种能够实现水位自动控制、具有 自动保护、自动声光报警功能的控制系统,完成水塔水位控制系统的设计。该控制系 统由单片机控制部分、时钟显示部分、数码显示部分、电机控制部分、报警部分等构 成。再利用 Proteus 和 Keil 软件完成水塔水位控制系统硬件电路以及控制程序的设计, 并进行了系统的调试和仿真。因为它具有电路简单、操作方便、性能良好、可靠性高 等优点,因此该设计具有一定的实用性。 关键字:供水;水塔水位;控制系统;单片机 武汉工程大学 毕业设计(论文)说明书 - II - Abstract Water is an important property in the peoples livelihood. Traditional artificial water supply is labor-intensive, low efficiency and difficult to guarantee security. However, the water tower level control system is widely used in water supply system of our residential community. For this reason, it is necessary for us to accomplish the automatic control of water tower level. In order to achieve energy saving and improve the quality of the water supply system, we can consider using Single-Chip Microcomputer technology and design a practical water level automatic control scheme. The design is mainly based on single-chip hardware circuit design. Based on hardware, the design is reasonable with software and achieves a control system of automatic water level control, automatic protection and automatic sound and light alarm. The control system consists of Single-Chip Microcomputer control section, clock display section, digital display section, motor control section, alarm section and so on. Whats more, we use Proteus and Keil software to complete the tower level control systems design of hardware circuit and control program and complete the control systems debugging and emulation. Because it has the advantages of simple circuit, easy operation, good performance and high reliability. Therefore, this design has certain practical. Keyword:water supply; water tower level; control systems; SCM 武汉工程大学 毕业设计(论文)说明书 - III - 目 录 摘摘 要要 .I I Abstract.IIII 第一章第一章 绪论绪论 .1 1 第二章第二章 水塔水位控制硬件设计水塔水位控制硬件设计 .7 7 2.1 基本要求基本要求7 7 2.2 硬件设计硬件设计7 7 第三章第三章 软件部分软件部分1919 3.1 程序框图程序框图 1919 3.2 C 语言程序部分语言程序部分 .2020 第四章第四章 软件仿真软件仿真2121 4.1 Protues 介绍介绍.2121 4.2 Keil 介绍介绍.2121 4.3 Protues 与与 Keil C 的联合仿真的联合仿真2121 4.4 Keil C 的调试步骤的调试步骤.2222 4.5 加文件到加文件到 Protues.2424 4.6 仿真显示仿真显示 2424 总结总结3030 致谢致谢3131 参考文献参考文献3232 附件一附件一3333 武汉工程大学 毕业设计(论文)说明书 - 1 - 第一章第一章 绪论绪论 供水是一个关系国计民生的重要产业1 。水位控制在日常生活及工业领域(工厂、 农村、学校等水量大的场所)中应用相当广泛。而水位的自动控制和监测和水塔是在日 常生活和工业应用中经常见到的蓄水装置,通过对其水位的控制对外供水以满足需要, 其水位控制具有普遍性。 单片机是将 RAM,ROM,定时器/计数器以及输入/输出(I/O)接口电路等计算机 主要部件集成在一块芯片上 ,这样所组成的芯片级微型计算机称为单片微型计算机 , 简称单片微机或单片机 。由于单片机的硬件结构与指令系统都是按工业控制要求设计 的,常用于工业的检测和控制当中 ,因而也称为是微控制器或嵌入式控制器 ,它的出现 使众多自动化控制系统得以实现。单片机不仅它功能强大、设计简单,而且制造很廉价, 支持指令集较多2。因此,本文对基于单片机的水塔水位控制器的研究有着重要的意义。 水塔供水的主要目的是使塔内水位应始终保持在一定范围,避免“空塔” 、 “溢塔” 现象发生,因此要采用水位传感器测量水位变化。在水塔中的水位到达水位下限时自动 启动电机,给水塔供水;在水塔水位达到正常水位的时候自动关闭电机,停止供水。并 能在供水系统出现异常的时候能够发出警报,以及时排除故障,随时保证水塔的对外的 正常供水作用。 在当今社会经济高速增长的同时,水在人们的生活、生产中起着重要的作用。一旦 出现缺水,轻则给人们生活带来极大的不便,重则出现造成严重的生产事故并造成不可 挽救的经济损失。因此,对供水系统的控制显得十分重要。水塔是我国广泛应用的供水 系统,传统的水塔水位控制方式存在很大的弊端,需要工作人员的时刻监控,不仅劳动 强度大,而且工作效率低,最重要的是供水的安全性难以保障。而自动控制则不需要工 作人员的时刻监控,水塔控制系统能自动地调节水塔中的水位以保持恒定,以满足人们 生活中用水需求3。 20 世纪 80 年代以来,我国发展了以自记遥测为主的水位测量技术。它主要是建立 自记水位计,实现水位自动采集、存储、远传。同期,还发展了无人立尺观测技术,这 种技术采用激光测距仪与经纬仪接口配套组成的一套设备,利用激光测距仪无须反射棱 镜测定距离(测距精度:05m)的性能,配以经纬仪测角测定目标高程的一种测量方 法。 武汉工程大学 毕业设计(论文)说明书 - 2 - 随着近代科学技术的发展和新材料新器件的开发,采用传感器研制水位计近年来有 较大发展。主要采用的传感器有超声波4、光电、压力、接触式、浮于式等几种5。超 声波式水位计是将换能器向水面发射超声波,测量超声波传播时间,计算出水位。压力 式水位计也是不需要水位测并,其基本原理是测量静水压力来实现水深的测量,已采用 过波纹管和水银位移式压力传感器等方法。固态压力传感器由于其灵敏度高、体积小、 寿命长、且有抗腐蚀性而受到重视,但由于半导体传感器受温度影响大等原因,使其实 用性受到限制。近年来固态传感器温度自动补偿问题有了进展,固态压阻式水位计已经 得到应用。接触式水位计使用机电的方法用探头跟踪井内水面高低变化测量水位,已在 少数领域使用,浮子式水位计,利用水球(或其它浮子) 作敏感器件,避免了温度、湿 度等因素的影晌,性能稳定,工作可靠,因而得到长期使用和发展。 单片机自 20 世纪 70 年代问世以来,以极其高的性能价格比受到人们的重视和关 注,所以应用很广,发展很快。单片机的特点是体积小、集成度高、重量轻、抗干扰能 力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易6。正因为单 片机有如此多的优点,因此其应用领域之广,几乎到了无孔不入的地步。在我国,单片 机已被广泛地应用在工业自动化控制7、自动检测、智能仪表8、智能化家用电器、航 空航天系统和和国防军事、尖端武器等各个方面。单片机的潜力越来越被人们所重视。 特别是当前用 CMOS 工艺制成的各种单片机,由于功耗低,使用的温度范围大,抗干 扰能力强、能满足一些特殊要求的应用场合,更加扩大了单片机的应用范围,也进一步 促使单片机性能的发展。因此,可以开发利用单片机系统以获得很高的经济效益。虽然 单片机的引入使控制系统大大“软化” ,但与其它计算机应用问题相比,单片机控制应用 中的硬件内容仍然较多,所以说单片机控制应用有软硬件相结合的特点。为此,在单片 机的应用设计中需要软、硬件统筹考虑,设计者不但要熟练掌握汇编语言等编程技术, 而且还要具备较扎实的单片机硬件方面的理论和实践知识。更重要的意义是单片机的应 用改变了控制系统传统的设计思想和方法。以前采用硬件电路实现的大部分控制功能, 正在用单片机通过软件方法来实现。这种以软件结合硬件或取代硬件并能提高系统性能 的控制技术称为微控制技术。 水塔水位最重要的就是对水塔水位进行精确的探测9,水塔水位的控制系统主要是 基于单片机的水塔水位控制系统和基于 PLC 的水塔水位控制系统。PLC 即可编程序控制 器,是一个以微处理器为核心的数字运算操作的电子系统装置,专为在工业现场应用而 设计,它采用执行逻辑运算、顺序控制、定时/计数和算术运算等各类操作指令,并通过 武汉工程大学 毕业设计(论文)说明书 - 3 - 数字式或模拟式的输入、输出接口,控制各种类型的机械或生产过程。PLC 的一般特点: 抗干扰能力强,可靠性极高、编程简单方便、使用方便、维护方便、设计、施工、调试 周期短、易于实现机电一体化10,PLC 总的发展趋势是:高功能、高速度、高集成度、 大容量、小体积、低成本、通信组网能力强。基于 PLC 的水塔水位控制系统是以 PLC 为核心,对水塔水位自动控制系统的功能进行性进行需求分析。可以实现对水塔水位的 自动控制和监测11。主要实现方法是通过传感器检测水塔水位的实际水位,将水位具体 信息传至 PLC 构成的控制模块,经 A/D 转换后,进行数据比较,来控制抽水电机的动 作,同时进行数据还原,显示水位具体信息,如果水位低于或高于某个设定值时,就会 发出危险报警的信号。基于单片机的水塔水位控制系统以单片机为核心,通过单片机本 身的功能模块和控制程序,来实现对水塔水位做出控制、显示和发出报警信号。 基于单片机的水塔水位控制系统最应解决的是液位传感器问题。最常用的是电阻式 传感器、压阻式压力传感器、超声波水位传感器等。电阻式传感器如图 1-1 中虚线表示 允许水位变化的上、下限。在正常情况下,应保持水位在虚线范围之内。为此,在水塔 内的不同高度安装 3 根金属棒,以感知水位变化情况。其中,A 棒处于下限水位。C 棒 处于上限水位,B 棒在上、下水位之间。A 棒接 + 5V 电源,B 棒、C 棒各通过一个 电阻与地面相连。供水时,水位上升,当达到上限时,由于水的导电作用,B、C 棒连 通+ 5V。因此,b,c 两端均为 1 状态,这时应停止电动机和水泵的工作,不再给水塔 供水。当水位降到下限时,B、C 棒都不能与 A 棒导电,因此,b、c 两端均为 0 状 态 这时应启动电动机,带动水泵工作,给水塔供水。当水位处于上、下限之间时,B 棒与 A 棒导通,因 C 棒不能与 A 棒导通,b 端为 1 状态,c 端为 0 状态。即实现 A/D 转换。通过对传感器的选择,可知由传感器输出的水位高度信号是 0 5 V 的直流 电压。在设计中,可以通过采样、保持电路对这一信号进行处理,将模拟信号转换为多 个采样点信号。 图 1-1 电阻式传感器 武汉工程大学 毕业设计(论文)说明书 - 4 - 传统的水位检测通过设检测点来完成对水位的检测。通常,由于受检测点物理体积 的影响,水位检测点的数目有限,从而影响了后续电路控制的精度。新型水位传感器即 选用北京英泰德科技有限责任公司生产的投入式液位变送器 MPM416W/426W,可以达 到对水位高度的精确检测,以利于提高后续电路控制的精度。其原理是通过压阻式压力 传感器,把与液位深度成正比的液体静压力准确测量出来,并经放大电路转化成标准电 流( 或电压) 信号输出,建立起输出电信号与液体深度的线性对应关系,实现对液体深 的测量。同时其具有以下特点: (1)使用寿命长,液位变送器膜片采用高技术激光调制电路,传感器外壳采用不锈钢 制作。 (2) 安装方便,仅需将投入式液位变送器探头投入液体中,引出信号线同二次仪表 连接就可进行液位测量。 (3) 温度稳定性好,投入式液位变送器本身在 070 内实现了温度补偿,在信号 转换电路中加入了温度补偿电路,消除电路温漂对精度的影响,从而提高精度。 超声波水位传感器能测量自身到水面之间的距离,由超声波发送电路和超声波接收 电路组成。超声波发射电路原理如图 1-2 所示,单片机的一个端口发出 40KHZ 的方波信 号,然后信号分成两路送出,其中的一路经反向器 74LS4069 后送到超声发射管 T 的一 个电极,另一路经两次反向后送到发射管 T 的另一个电极,这样做目的是为了增强超声波 发射强度和提高电路驱动能力。电阻 R1 和 R2 作为上拉电阻作用有两个:第一是提高反 向器输出高电平的驱动能力;第二是增加超声波发射管 T 的阻尼系数,缩短自由振荡的 时间。超声波接收电路原理如图 1-3 所示,该部分主要由超声波接收探头 R 及红外检波 接收芯片 CX20106A 组成,因接收芯片 CX20106A 的载波频率为 38KHZ,而上述超声 波发射电路发出的超声波频率为 40KHZ,两者较为接近,所以利用该芯片制作超声波接 收电路.实验表明,无超声波信号时 CX20106A 输出高电平,有信号时输出一个脉冲信号, 且具有很高的灵敏度和较强的抗干扰能力。当系统工作时,由单片机的一个端口发出的 40KHZ 的方波信号经过驱动电路使超声波发射器 T 发出一定强度的超声波信号,当超声 波信号遇到障碍物时就会被反射回来,反射回来的超声波信号被超声波接收器 R 所接收, 接收到的信号经过信号处理电路的处理送入到单片机的另一个端口,单片机根据发送与 接收的时间差计算出传感器到水面的距离 X,再由安装时传感器到水塔底部的距离 H(已 知值),计算出当前水的剩余量 h=H-X。 武汉工程大学 毕业设计(论文)说明书 - 5 - 图 1-2 超声波发射电路 图 1-3 超声波接收电路 本设计基于电阻式传感器并以水塔水位为模型,鉴于单片机液位测量装置的测量准 确、重复性能好、功耗低、使用寿命长等特点,所以该设计以单片机为基础的水塔水位 控制系统。在实际中,水塔水位自动控制电路是通过水位传感器对水位进行采样,将采 样信号的水位高度转换为 05 V 的直流电压,再经过 A/D 转换12后,将转换所得的 8 路并行数字量送入单片机进行处理来来驱动电机的启停等。从而达到对水位进行自动控 制的目的。通过对电压和水位的转换关系,最终利用单片机进行精确的控制,实现对水 位高度的显示、主/备电机和报警装置等的控制。但是鉴于基于单片机的水塔水位控制系 统在 Protues 上进行仿真,而 Protues 上没有水塔水位的模型。因此,可以用按钮来代替 水塔的液位传感器。 在设计过程中采用了软件和硬件双结合的的设计方法,而软件的设计简化了硬件 武汉工程大学 毕业设计(论文)说明书 - 6 - 要求。在本设计中软件主要有五个方面的应用,它们分别为: 声光报警程序、时钟 显示程序、水位显示程序、键盘控制和电机控制程序等。该设计第二章介绍了“基于 水塔水位控制系统的设计与仿真”的硬件设计,其中包括单片机的介绍、89C51 的功能 及引脚介绍、CD4511 的功能及引脚介绍、LED 数码显示、电机驱动与现实、水位监测 电路等部分组成;第三章主要介绍软件部分,其中包括程序框图和 C 语言程序两部分组 成;第四章则是仿真部分,其中包括 Keil、 Protues 的介绍,以及 Keil 的调试部分和加 文件到 Protues 中等几部分组成。 武汉工程大学 毕业设计(论文)说明书 - 7 - 第二章 水塔水位控制硬件设计 2.1 基本要求 由于需要基于单片机的水塔水位控制系统进行仿真,而 Protues 中没有水塔水位的 模型,因此可以用按钮来控制电动机的转动,并用 LED 数码管来显示水塔水位的高度。 当水位过高或过低时,都会发出报警声和指示灯显示。与此同时,还可以用 LED 数码管 来及时显示当前时间。 2.22.2 硬件设计硬件设计 2.2.12.2.1 电路总体框架图电路总体框架图 如图 2-1 中所示 武汉工程大学 毕业设计(论文)说明书 - 8 - 图 2-1 电路总体框架图 该图是在 Protues 上进行仿真的硬件电路图。它由 CD4511 驱动的 LED 数码管电路、 由 DS1302 驱动数字时钟显示电路、电机驱动电路、复位电路、晶振电路、报警电路、 指示电路等部分组成。 武汉工程大学 毕业设计(论文)说明书 - 9 - 2.2.22.2.2 单片机的介绍单片机的介绍 自从 1971 年微型计算机问世以来,随着大规模集成电路技术的进一步发展,导致微 型计算机向两个方向发展:一是高速度、高性能、大容量的高档微型计算机及其系列化, 向大、中型计算机的挑战;另一个是稳定可靠、小而廉、能适应各种控制领域需要的单 片机。 单片机是把中央处理单元、随机存储器、只读存储器、定时/计数器以及 I/O 接口电 路等主要部件集成在一块半导体芯片上的微型计算机。虽然单片机只是一个芯片,但从 组成和功能上看,它已具有了微型计算机系统的含义,从某种意义上说,一块单片机芯 片就是一台微型计算机。 自从 1975 年美国德克萨斯公司推出世界第一个 4 位单片机 TMS1000 型以来,单 片机技术不断发展,目前已成为微型计算机技术的一个独特分支,广泛应用于工业控制、 仪器仪表智能化和家用电子产品等各个控制领域。 在进行系统设计时,在单片机应用系统中,无论其技术要求、应用领域还是其规模 大小是否相同,一般应遵循以下基本原则13: (1)高可靠性 单片机应用系统一个非常重要的特点就是高可靠性。在生活和生产工作中,单片机 系统一般是实现系统的自动控制。一旦系统发生故障,轻则带来不便,重则会造成停止 工作甚至是人员伤亡。大部分单片机系统是用在工业和民用的实时控制中的,而这些控 制都是在不停地工作,有很高的可靠性是控制系统最一般的要求,从而使控制系统有较 长的平均无故障时间。因此,在设计单片机应用系统中,高可靠性在每一环节都必须作 为设计原则。 (2)高性价比 在具有高可靠性的同时,在设计单片机应用系统时,控制系统的性价比也是必须考 虑。在保证功能实现和高可靠性的条件下,不必强求 CPU 及元器件的高档次,能使用 8 位机就不用 16 位机,能使用中档就不用高档机,能使用 89C51 就不用 89C52; 能用 软件实现的功能就不要用硬件来做,尽量减少元器件的数量,以提高性价比。 (3)操作简单,维护方便 武汉工程大学 毕业设计(论文)说明书 - 10 - 一般的单片机应用系统的使用者都不是专业人员,所以在设计时应注意使用者的操 作要尽量简单、方便; 设计时也要注意系统的维修方便,要使系统一旦发生了故障,维 修人员能够及时查出原因,并能迅速排除故障。 (4)具有可扩展性 由于工厂的生产工艺在不断的革新,市场的情况也在不断的变化,所以单片机的控 制对象也会不断地改变,所需控制的功能也有可能不断地增加,在设计单片机控制系统 时,也许有些功能当时用不到,但也应在输入 /输出接口、数据存储器、程序存储器等 方面留有可扩展的余地。 2.2.32.2.3 89C5189C51 芯片功能及引脚介绍芯片功能及引脚介绍 89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能 CMOS8 位微处理器, 俗称单片机。单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高 密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由 于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 89C51 是一种高效微 控制器,89C2051 是它的一种精简版本。89C51 单片机为很多嵌入式控制系统提供了一 种灵活性高且价廉的方案。89C51 的主要特性为:与 MCS-51 兼容、4K 字节可编程闪 烁存储器、数据保留时间为 10 年、128*8 位内部 RAM、32 可编程 I/O 线两个 16 位定 时器/计数器、5 个中断源、可编程串行通道等。 下面是 89C51 单片机引脚图及引脚功能介绍(如图 2-2 所示): 武汉工程大学 毕业设计(论文)说明书 - 11 - 图 2-2 单片机引脚图 40 个引脚按引脚功能大致可分为 4 个种类:电源、时钟、控制和 I/O 引脚。 1). 电源: VCC - 芯片电源,接+5V; GND- 接地端; 2). 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 3). 控制线:控制线共有 4 根: ALE/PROG:地址锁存允许/片内 EPROM 编程脉冲。 ALE 功能:用来锁存 P0 口送出的低 8 位地址。 PROG 功能:片内有 EPROM 的芯片,在 EPROM 编程期间,此引脚输入编程脉 冲。 PSEN:外 ROM 读选通信号。 RST:复位。 武汉工程大学 毕业设计(论文)说明书 - 12 - EA/Vpp:内外 ROM 选择/片内 EPROM 编程电源。 EA 功能:内外 ROM 选择端。 Vpp 功能:片内有 EPROM 的芯片,在 EPROM 编程期间,施加编程电源 Vpp。 4). I/O 口: 89C51 共有 4 个 8 位并行 I/O 端口:P0、P1、P2、P3 口,共 32 个引脚。 2.2.42.2.4 CD4511CD4511 芯片功能及引脚介绍芯片功能及引脚介绍 CD4511 是一片 CMOS BCD锁存/7 段译码/驱动器,具有 BCD 转换、消隐和锁 存控制、七段译码及驱动功能的 CMOS 电路能提供较大的拉电流,可直接驱动共阴 LED 数码管。下面是 CD4511 引脚图及引脚功能介绍(如图 2-3 所示): 图 2-3 CD4511 引脚图 引脚功能: A0A3:二进制数据输入端 /BI:输出消隐控制端 LE:数据锁定控制端 /LT:灯测试端 QAQG:数据输出端 使用方法: 武汉工程大学 毕业设计(论文)说明书 - 13 - 其中 A、B、C、D 为 BCD 码输入,A 为最低位。LT 为灯测试端,加高电平时, 显示器正常显示,加低电平时,显示器一直显示数码“8” ,各笔段都被点亮,以检查显 示器是否有故障。BI 为消隐功能端,低电平时使所有笔段均消隐,正常显示时, B1 端 应加高电平。另外 CD4511 有拒绝伪码的特点,当输入数据越过十进制数 9(1001)时, 显示字形也自行消隐。LE 是锁存控制端,高电平时锁存,低电平时传输数据。QAQG 是 7 段输出,可驱动共阴 LED 数码管。 下图是 CD4511 和 CD4518 配合而成一位计数 显示电路,若要多位计数,只需将计数器级联,每级输出接一只 CD4511 和 LED 数码 管即可。所谓共阴 LED 数码管是指 7 段 LED 的阴极是连在一起的,在应用中应接地。 限流电阻要根据电源电压来选取,电源电压 5V 时可使用 300 的限流电阻。 2.2.52.2.5 DS1302DS1302 芯片功能及引脚介绍芯片功能及引脚介绍 DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗、带 RAM 的实时时钟电 路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压 为 2.5V5.5V。采用三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多个 字节的时钟信号或 RAM 数据。DS1302 内部有一个 318 的用于临时性存放数据的 RAM 寄存器。它的主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能, 并且可以关闭充电功能。 图 2-4 DS1302 引脚图 引脚功能(如图 2-4 所示): Vcc1:主电源 Vcc2:后备电源 X1、X2:振荡源 RST:复位/片选线 武汉工程大学 毕业设计(论文)说明书 - 14 - I/O:串行数据输入输出端(双向) SCLK:时钟输入端 电路连接(如图 2-5 所示): 图 2-5 DS1302 芯片的电路连接 2.2.62.2.6 LEDLED 数码管显示数码管显示 LED 数码管(LED Segment Displays)由多个发光二极管封装在一起组成“8”字型 的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极(数码管实际上 是由七个发光管组成 8 字形构成的,加上小数点就是 8 个) 。这些段分别由字母 “a,b,e,f,g,dp”来表示14。LED 数码管要正常显示,就要用驱动电路来驱动数 码管的各个段码,从而显示出我们要的数字,因此根据 LED 数码管的驱动方式的不同, 可以分为静态式和动态式两类。静态驱动也称直流驱动,静态驱动是指每个数码管的每 一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二-十进制译码器译 码进行驱动,静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多;动态 显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划“a,b,c,d,e,f,g,dp”的同名端连在一起,另外为每个数码管的公共 极 COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码 时,单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控 制打开,该位就显示出字形,没有选通的数码管就不会亮,通过分时轮流控制各个数码 管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动,在轮流显示过程中, 每位数码管的点亮时间为 12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽 武汉工程大学 毕业设计(论文)说明书 - 15 - 管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳 定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。LED 数码管的形状以及共阴极共阳极电路如图 2-6 所示: 图 2-6 LED 数码管共阳极和共阴极电路 对水塔水位显示,本设计是通过 CD4511 来驱动共阴极数码管,将 CD4511 的 A、B、C、D 端分别和 89C51 的 P3 口的低 4 位相连,A 是最低位 D 是最高位。然后再 将 CD4511 的“QA,QB,QC,QD,QE,QF,QG”分别和 LED 数码管的数据端相连, 通过 89C51 的 P3 口的低 4 位来驱动数码管的显示。通过 A、B、C、D 的 BCD 码来驱 动数码管的显示,如图 2-7 所示: 武汉工程大学 毕业设计(论文)说明书 - 16 - 图 2-7 CD4511 驱动的数码管 对数字时钟的显示,本设计是通过 DS1302 来驱动八个数码管,将数码管的 “a,b,c,d,e,f,g,dp”分别和 89C51 的 P0 口相连,再将数码管的 “1,2,3,4,5,6,7,8”端口分别和 89C51 的 P2 口相连,当系统一运行时, DS1302 能及时驱动数码管显示当前的时间。 2.2.72.2.7 电机驱动及显示电机驱动及显示 电动机(Motors)是把电能转换成机械能的一种设备。它是利用通电线圈(也就是 定子绕组)产生旋转磁场并作用于转子(如鼠笼式闭合铝框)形成磁电动力旋转扭矩。 电动机按使用电源不同分为直流电动机和交流电动机,电力系统中的电动机大部分是交 流电机,可以是同步电机或者是异步电机(电机定子磁场转速与转子旋转转速不保持同 步速) 。电动机主要由定子与转子组成,通电导线在磁场中受力运动的方向跟电流方向和 磁感线(磁场方向)方向有关。电动机工作原理是磁场对电流受力的作用,使电动机转 动。 水塔中水量都是通过电动机的转动,将水输送到水塔中,而电动机的转动是通过继 电器的吸合和断开来控制。当水塔中的水位过高时,控制电动机的继电器会自动的断开, 电动机停转;当水塔中的水位过低时,控制电动机的继电器会自动的吸合,电动机开始 转动,水塔中的水位开始上升,直到水塔中的水位达到高位时继电器自动的断开,电动 机停转。 电机控制部分,采用了三极管放大和二极管正向导通的作用和继电器的吸合作用来 控制电机的工作,由单片机 P1.0 口进行控制,而电机的工作状况由相应的显示指示灯 来显示,如图 2-8 所示: 武汉工程大学 毕业设计(论文)说明书 - 17 - 图 2-8 电机控制电路 2.2.82.2.8 水位检测电路水位检测电路 按键是直接用 I/O 口线构成的单个按键电路,每个独立式按键占有一根 I/O 口线,各 根 I/O 口线之间不会相互影响。在此电路中,按键输入采用低电平有效。 水位检测部分是用单片机 P1.4P1.7 连接的四个按钮分别代表 shuiman、sw3、sw2 和 sw1。 由于基于单片机的水塔水位控制系统在 Protues 中进行仿真时,Protues 中没有水塔 水位的模型,所以就不能用实际的液位传感器来前侧水塔中的实际水位。在这里可以用 四个按钮 K2、K3、K4、K5 来控制水塔中的水位。当按下 K5,电动机开始转动,此时 水塔中的水位会显示 1,即此时的水位时水塔总高度的 1/4;当按下 K4,电动机开始转 动,此时水塔中的水位会显示 2,即此时的水位时水塔总高度的 2/4;当按下 K3,电动 机开始转动,此时水塔中的水位会显示 3,即此时的水位时水塔总高度的 3/4;当按下 K2,电动机开始转动,此时水塔中的水位会显示 4,即此时的水位达到水满状态。如图 2-9 所示: 武汉工程大学 毕业设计(论文)说明书 - 18 - 图 2-9 水位检测电路 2.2.92.2.9 声光报警电路声光报警电路 报警电路是一种为防止或预防某事件发生所造成的后果,以声音、光、气压等形式 来提醒或警示我们应当采取某种行动的电子产品。声光报警部分主要由以扬声器为代表 的声音报警部分和以数码管为代表的光报警部分,它们分别由单片机的 P3.2 和 P3.7 接 口来实现水位的报警。当 K2 按钮被按下时,即此时为 shuiman,报警指示灯发光二极管 会闪烁并且扬声器会发出尖锐的报警声,且闪烁几秒钟后声光报警会自动的关闭;当 K5 被按下时,即此时为低水位,报警指示灯发光二极管会闪烁并且扬声器会发出尖锐的 报警声,且闪烁几秒钟后声光报警会自动的关闭。如图 2-10 所示: 图 2-10 声光报警电路 武汉工程大学 毕业设计(论文)说明书 - 19 - 第三章第三章 软件部分软件部分 3.13.1 程序框图程序框图 根据水塔水位控制硬件设计的分析要求及电路的特点,绘制出水塔水位控制程序流 程图,如图 3 -1 所示: 图 3-1 程序框图 时钟显示 水位 1 电机转动 水位 2 电机转动指 示灯 水位 4 判断哪个 键按下 初始化 有键按下? 无限循环 水位 3 电机转动指 示灯 报警灯蜂鸣器 Sw1 按键(手动启动) Sw2 按键 Sw4 按键 Sw3 按键 无限循环无限循环 Y N 时钟显示时钟显示 武汉工程大学 毕业设计(论文)说明书 - 20 - 3.23.2 C C 语言程序部分语言程序部分 C 语言是在 20 世纪 70 年代初问世的。一九七八年由美国电话电报公司(AT Wang, Yu-Xing. Development of a new signal processor for tetralateral position sensitive detector based on single-chip microcomputerR. Shanghai: AIP,2006. Page(s):083301 - 083301-5. 10 刘涳著. 常用低压电器与可编程序控制器M.西安:西安电子科技大学出版社, 2011. 11 周萌,陈跃东,宋少雷著. 基于 PLC 和 MCGS 的水塔水位监控系统的设计J. 南 阳理工学院学报,2013,5(3):11-15. 12 Pereira, J.M. ; LablM-Escola de Tecnologia de Setubal, Setubal ; Postolache, O. Advantages of PWM-A/D Conversion Techniques in Smart Sensing SystemsR. Xian: IEEE,2007. Page(s):1-5 - 1-10. 13 罗新曼. 基于 AT89C51 单片机的水塔水位控制的设计与实现N. 吕梁学院学报, 2013, 4 (3). 14 冯博琴,吴宁著. 微型计算机原理与接口技术M. 北京:清华大学出版社,2011. 15 王东峰,王会良,董冠强.单片机 C 语言应用 100 例M.北京:电子工业出版社, 2009. 武汉工程大学 毕业设计(论文)说明书 - 33 - 附件一附件一 基于水塔水位控制系统的设计与仿真的程序 #include #define uchar unsigned char #define uint unsigned int sbit RST = P11 ; sbit SCK = P12 ; sbit SDA = P13 ; sbit P10=P10; /将 P10 定义为 P1.0 引脚 sbit shuiman=P14; /将水满定义为 P1.4 引脚 sbit sw3=P15; /将水位 3 定义为 P1.5 引脚 sbit sw2=P16; /将水位 2 定义为 P1.6 引脚 sbit sw1=P17; /将水位 1 定义为 P1.7 引脚 sbit P30=P30; /将 P30 定义为 P3.0 引脚 sbit P31=P31; /将 P31 定义为 P3.1 引脚 sbit P32=P32; /将 P32 定义为 P3.2 引脚 sbit P33=P33; /将 P33 定义为 P3.3 引脚 sbit P34=P34; /将 P34 定义为 P3.4 引脚 sbit P35=P35; /将 P35 定义为 P3.5 引脚 sbit P36=P36; /将 P36 定义为 P3.6 引脚 sbit P37=P37; /将 P37 定义为 P3.7 引脚 unsigned long k; uchar i,j,mod,flag,flag1=1 ;/控制定时器动态扫描数码管的第几位,j 是定时读取时间。mod 是对 key1 按下次数计数。flag 切换闹钟,日期,和周.flag1 为闹钟标志位 /uchar code write_addr7=0x80,0x82,0x84,0x86,0x88,0x8a,0x8c; /秒分时日月周年 写地 址 /uchar code read_addr7=0x81,0x83,0x85,0x87,0x89,0x8b,0x8d; /秒分时日月周年 读 地址 /共阳数码管码表,表示 0-9 和-。-表示时分秒的间隔. /* * 函数功能:延时 1ms * */ void delay1ms(void) unsigned int i,j; 武汉工程大学 毕业设计(论文)说明书 - 34 - for(i=0;i0;k-) /4 秒后关声光报警 P35=0; /开报警指示灯 P36=0; /开扬声器 delaynms(1); P35=1; /关报警指示灯 武汉工程大学 毕业设计(论文)说明书 - 35 - P36=1; /关扬声器 P34=1; while(shuiman=1 while(shuiman=0|sw2=0|sw3=0) P34=0; if(shuiman=0) /当水位为最高的按钮按下时 P10=1; /关电机 P37=1; /关工作指示灯 P30=0; P31=0; P32=1; P33=0; /水塔水位显示为 4 for(k=1000;k0;k-) /4 秒后关声光报警 P35=0; /开报警指示灯 P36=0; /开扬声器 delaynms(1); P35=1; /关报警指示灯 P36=1; /关扬声器 delaynms(1); delaynms(1); if(sw3=0) P10=0; /开电机 P37=0; /开工作指示灯 P30=1; P31=1; P32=0; P33=0; /水塔水位显示为 3 delaynms(10); if(sw2=0) P10=0; /开电机 P37=0; /开工作指示灯 武汉工程大学 毕业设计(论文)说明书 - 36 - P30=0; P31=1; P32=0; P33=0; /水塔水位显示为 3 delaynms(10); uchar code LED11 = 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90, ; uchar disbuf8 = 0x62,0xa2,0xf7,0x7a,0x28,0xf7,0x7e,0x7e ;/定义时间日期的结构类型 struct time uchar second ; uchar minute ; uchar hour ; uchar week ; uchar day ; uchar month ; uchar year ; current_time ; #define ctime current_time/定义闹钟的时分秒变量 uchar asec,amin,ahour ; void delay(uint ms) uchar i ; while(ms-) for(i=135;i0;i-); void di() uchar i ; for(i=0;i0; i-) di(); delay(140); /DS1302 的写驱动,传入参数为一个地址和数据 void write(uchar addr,uchar dat) uchar i ; RST = 0 ; SCK = 0 ; RST = 1 ; for(i=0;i=1 ; SCK = 1 ; for(i=0;i= 1 ; SCK = 1 ; RST = 0 ; /DS1302 的读驱动,传入参数为一个地址,返回参数为读到的数据 uchar read(uchar addr) uchar i,dat ; RST = 0 ; 武汉工程大学 毕业设计(论文)说明书 - 38 - SCK = 0 ; RST = 1 ; for(i=0;i=1 ; SCK = 1 ; for(i=0;i=1 ; if(SDA) dat|=0x80 ; SCK=1 ; RST=0 ; dat=(dat/16*10)+(dat return dat ; /读取 DS1302 的时间和日期 void read_time() ctime.second = read(0x81); ctime.minute = read(0x83); ctime.hour = read(0x85); ctime.day = read(0x87); ctime.month = read(0x89); ctime.week = read(0x8b); ctime.year = read(0x8d); /

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论