收藏 分销(赏)

单片机水塔水箱水位自动控制器的设计.docx

上传人:可**** 文档编号:1719085 上传时间:2024-05-08 格式:DOCX 页数:26 大小:120.63KB 下载积分:10 金币
下载 相关 举报
单片机水塔水箱水位自动控制器的设计.docx_第1页
第1页 / 共26页
单片机水塔水箱水位自动控制器的设计.docx_第2页
第2页 / 共26页


点击查看更多>>
资源描述
四川省高等教育自学考试 电子工程 专业 毕业论文 论文题目 全自动水位测试仪 目 录 第一章 引言 5 1.1 研究意义 5 1.2 研究内容 5 第二章 单片机水塔水箱水位控制器的原理 6 2.1 单片机概述 6 2.1.1 单片机的发展概况 6 2.1.2 80C51系列单片机 7 2.2 水塔水箱给水设备原理 7 2.3 80C51单片机控制系统原理 8 2.3.1 80C51单片机控制部分结构说明 8 2.3.2 单片机水箱控制系统工作原理 8 第三章 单片机水塔水箱水位控制器硬件设计 10 3.1 单片机水塔水箱水位控制器系统硬件简介 10 3.1.1 数据采集及处理模块 10 3.1.2 光电隔离简介 15 3.1.3 给水泵电机主控回路介绍 16 3.2 80C51水箱控制系统主控硬件部署方案 16 3.2.1 80C51单片机实现控制功能说明 16 3.2.2 74LS373芯片实现系统功能说明 16 3.2.3 EPROM2764芯片实现系统功能说明 18 第四章 单片机水塔水箱水位控制器程序设计 19 4.1 程序概要设计 19 4.2 控制器程序原理 19 4.2.1 系统主程序原理以及流程框图 19 4.2.2 自动模式子程序原理以及流程框图 20 4.2.3 手动模式子程序原理框图以及流程框图 23 结束语 26 致 谢 27 参考文献 28 附录1 [摘 要] 大型水塔水箱是很多公司生产过程中必不可少的部件,它的性能和工作质量的优良不仅仅对生产有着巨大的影响,而且也关系着生产的安全。在过去,大量的对水箱操作是由相应的人员进行操作的,这样的人工方式带来了很大的弊端,比如水位的控制,时刻监控水箱的环境,夜间的监控等等,操作员稍有疏忽,或者简易的监则器件损坏,将带来无法弥补的损失,更严重的会危机到生产人员的人身安全等。所以,对水箱控制,如果能够使用精密的而且完全会严格按照生产规定运行的自动化系统,可以最大限度的避免事故的几率,同时也能节省资源并能有效提高生产的效率。 本单片机系统设计的目的是应用单片机控制技术,以单片机为核心控制水箱的水位,并实现了报警和手动、自动切换功能。该系统操作方便、性能良好,比较符合电厂生产用水系统控制的需要。 【关键词】单片机 水位 控制 报警 Design based on the watertower tanks instrument The Technology of Mechanical & Electrical Keywords: 第一章 引言 1.1 研究意义 水塔水箱水位控制系统是我国广泛应用的供水系统,传统的控制方式存在控制精度低、能耗大的缺点,而自动控制的原理,一句用水量的变化自动调节协同的运行参数,保持水压恒定以满足用水要求,从而提高了供水系统的质量。而且成本低,安装方便,经过多次的实验证明,灵敏性好,是节约水源,方便家庭和单位控制水塔水位的理想装置。该系统采用单片机实现了水塔水位的自动控制,设计出一种成本低、高实用价值的水塔水位控制器。它能自动完成上水停水的全部循环,保证液面高度处于较理想的范围内,它结构简单,制造成本低,灵敏度高,节约能源显著,适用于各种高层液体储存的理想设备。 不论社会经济如何飞速,水在人们正常生活和生产中起着重要的作用。一旦断了水,轻则给人民生活带来极大的不便,重则可能造成严重的生产事故及损失,从而对供水系统提出了更高的要求,满足及时、准确、安全充足的供水。如果仍然使用人工方式,劳动强度大,工作效率低,安全性难以保障,由此必须进行自动化控制系统的改造。从而实现提供足够的水量、平稳的水压、水塔水位的自动控制有设计成本低、高实用价值的控制器。 单片机,一小块芯片上集成了一个微型计算机的各个组成部分,它的诞生使众多自动化控制系统得以实现。单片机以它功能强大,设计简单,制造廉价,支持指令集较多。所以应用到众多系统开发中。 因此,基于单片机的水塔水箱水位控制器研究有着重要的意义。 1.2研究内容 水塔水箱水位控制器主要完成的功能是对水塔水位控制,完成其供水的作用。此控制器主要是在水塔无人值班的情况下工作,所以它必须能自动对水塔水位进行采样对水位输入信号进行分析,于己设置号的水位参数尽心比较,控制电机水泵的开启、停机实现水位的调节。系统中要求配置两台电机以一备(B电动机)一用(A电动机),当工作电机在污水时被启动,在规定的时间内若无法启动时;自动切除工作电机,选用第二台电机工作,并发出声光报警。又会实现发生特殊情况时要强行启动或关闭电机。系统还要求配置低水位,中水位,高水位灯光显示;电动机运行灯光显示来表示水塔的水位状态和电动机的运行情况。 第二章 单片机水塔水箱水位控制器的原理 2.1 单片机概述 单片微型计算机(Single Chip Microcomputer,SCM)简称单片机,是把微型计算机的基本功能部件(中央处理器CPU、数据存储器RAM、程序存储器ROM、定时/计数器以及I/O接口等)集成在一块芯片上的一种微型计算机。随着SCM在架构上的不断发展,新一代单片机不断涌现,这些单片机的控制功能被不断扩充,许多外围功能部件被内装化,如A/D、PWM、WDT等,所以已不能用SCM来准确表达其内涵了。目前国际上统一称单片机为MCU。在国内,因单片机一词已约定俗成而继续沿用,但其内涵应该对应MCU。由于单片机主要是面向控制的,因此又称其为微控制器。 2.1.1 单片机的发展概况 单片机的诞生是计算机发展史上一个重要的里程碑,标志着计算机在控制领域形成了一个独立的分支——嵌入式系统,从此计算机进入了通用计算机系统与嵌入式计算机系统两大分支齐头并进的时代。 1976-1979年为单片机的探索阶段。 1979-1982年为单片机完善阶段。。 1982-1990年为16位单片机更进一步发展阶段, 1989年以来为控制器的全面发展阶段,单片机正朝着高性能和多品种的方向发展。 一方面,出现了高速、大寻址范围、强运算能力的8位、16位、32位通用型单片机。1989年Inter公司推出的i80860,采用0.8µm核心技术,晶体管数量为255万个,一度是世界上最快的超级单片机(RISC处理器)。 另一方面,出现了小型廉价的专用型单片机。随着超大规模集成电路(VLSI)工艺技术发展,有可能把所需的外围电路全部装入单片机内,这种芯片称为系统级芯片。专用单片机的发展呈SoC化趋势是目前单片机的发展热点之一。 2.1.2 80C51系列单片机 此后,引领单片机发展的Inter公司忙着开发其个人计算机微处理器,将其80C51内核使用权转让给Atmel、Philips、NEC、SST、Winbond等著名IC制造商。众多IC制造商竞相研制和开发与80C51单片机兼容的各具增强特色的单片机,如Atmel公司的89C51和89S51、Philip公司的P89C51、Winbond公司的W78E51B以及Hyundai公司的GMS97C51等。 单片机园地里品种异彩纷呈,争奇斗艳。80C51变成有众多IC制造商支持并开发出上百个机种的大家族,先统一称其为新一代的80C51。 2.2 水塔水箱给水设备原理 水箱给水设备系统由两台给水泵机组、水箱和三只浮球开关组成,其系统结构如图2-1: 图2-1 水塔水箱给水控制器结构图 其中M1、M2为给水泵机组,LG、LD、LDD分别为水位高、水位低、水位低低浮球开关,当水位高(大于90开度)时,LG闭合,当水位低(小于75开度)时,LD闭合,当水位低低(小于50开度)时,LDD闭合。 2.3 80C51单片机控制系统原理 2.3.1 80C51单片机控制部分结构说明 本系统采用的单片机引脚具体控制如下: P1口和P3口为输入输出检则信号和控制信号。 下面是芯片引脚具体分配: P1.0:水位低低输入信号。(低0,高1) P1.1:水位低输入信号。(低0,高1) P1.2:水位高输入信号。(高1,低0) P1.3:手动与自动转换输入信号。(手动1,自动0) P1.4:M1起动KM1控制输出信号。(手动1,自动0) P1.5:M2起动KM1控制输出信号。(手动1,自动0) P1.6:M1开关状态输入信号。(开0,关1) P1.7:M2开关状态输入信号。(开0,关1) P3.0:水位低低报警输出信号。 P3.1:水位低报警输出信号。 P3.2:水位高报警输出信号。 P3.4:手动起动M1输入信号,低电频有效动作。 P3.5:手动起动M2输入信号,低电频有效动作。 P3.6:手动停M1输入信号,低电频有效动作。 P3.7:手动停M2输入信号,低电频有效动作。 2.3.2 单片机水箱控制系统工作原理 当水箱水位低时,起动M1、M2给水,水位上升到90%,停M1; 当水箱水位低低(小于50%)时,同时起动M1、M2; 当水位上升到50%以上70%以下时,停M2,M1继续运行到水位上升到90%以上才停止工作。 经过数据统计,得到以下数据: 水位从50%--70%,两台泵运行需要约10分钟; 水位从70%--90%,一台泵运行需要约15分钟。 水箱的水位一般保持在70%--90%。 报警控制如下: 当水位高与90开度的时候,由传感器经变送器发送信号,LG闭合,系统水位高报警。 当水位低于75开度的时候,由传感器经变送器发送信号,LD闭合,系统水位低报警。 当水位低与50开度的时候,由传感器经变送器发送信号,LDD闭合,系统水位低低报警。 手动/自动模式转换控制如下: 全自动模式下,系统自动判断水位的状况,选择不同的工作状态。 手动的模式下,两台给水泵的运行控制可由人工自己操作。 第三章 单片机水塔水箱水位控制器硬件设计 3.1 单片机水塔水箱水位控制器系统硬件简介 3.1.1 数据采集及处理模块 单片机是则量系统数据交换中心,此控制器采用的是80C51单片机在全静态工作时振荡器频率为0~12MHz。 目前,8051单片机在工业检则控制领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种外部设备,完成工业自动化的实现。89C51是Intel公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。每一个单片机包括:一个8位的微型处理器CPU;一个256K的片内数据存储器RAM;片内程序存储器ROM;四个8位并行的I/O接口P0-P3;两个定时器/记数器;五个中断源的中断控制系统;一个全双工UART的串行I/O口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率是12MHZ。以上各个部分通过内部总线相连接。下面简单介绍下其各个部分的功能。 中央处理器CPU是单片微型计算机的指挥、执行中心,由它读人用户程序,并逐条执行指令,它是由8位算术/逻辑运算部件(简称ALu)、定时/控制部件,若干寄存器A、B、B5w、5P以及16位程序计数器(Pc)和数据指针寄存器(DM)等主要部件组成。算术逻辑单元的硬件结构与典型微型机相似。它具有对8位信息进行+、-、x、/ 四则运算和逻辑与、或、异或、取反、清“0”等运算,并具有判跳、转移、数据传送等功能,此外还提供存放中间结果及常用数据寄存器。控制器部件是由指令寄存器、程序计数器Pc、定时与控制电路等组成的。指令寄存器中存放指令代码。枷执行指令时,从程序存储器中取来经译码器译码后,根据不同指令由定时与控制电路发出相应的控制信号,送到存储器、运算器或I/o接口电路,完成指令功能。程序计数器Pc 程序计数器Pc用来存放下一条将要执行的指令,共16位.可对以K字节的程序存储器直接寻址c指令执行结束后,Pc计数器自动增加,指向下一条要执行的指令地址。 数据存储器,RAM,片内为128B,片外最多可外扩64KB。数据存储器来存储单片机运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等。片内的128B的RAM,以高速RAM的形式集成在单片机内,可以加快单片机运行的速度,而且这种结构的RAM还可以降低功耗。 程序存储器,ROM,用来存储程序,80C51为4KB ROM。如果片内只读存储器的容量不够,则需要用扩展片只读存储器,片外最多可以扩展到64KB。 中断系统,具有5个中断源,2级中断优先权。 定时器/计数器,片内有2个16位的定时器/计数器,具有4种工作方式。在单片机的应用中,往往需要精确的定时,或对外部事件进行计数,因而需在单片机内部设置定时器/计数器部件。 串行口,1个全双工的串行口,具有4中工作方式。可用来进行串行通信,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。 特殊功能寄存器,SFR,共有21个,用于CPU对片内各功能部件进行管理、控制、监视。 单片机的时序功能: 时钟电路:80C51片内设有一个由反向放大器所构成的振荡电路,XTALI和XTAL2分别为振荡电路的输入端和输出端。 时钟可以由内部方式产生或外部方式产生。采用内部方式时,在C1和C2引脚上接石英晶体和微调电容可以构成振荡器, 振荡频率的选择范围为1.2—12MHZ在使用外部时钟时,XTAL2用来输入外部时钟信号,而XTALI接地。 时序:80C51单片机的一个执器周期由6个状态(s1—s6)组成,每个状态又持续2个接荡周期,分为P1和P2两个节拍。这样,一个机器周期由12个振荡周期组成。 若采用12MHz的晶体振荡器,则每个机器周期为1us,每个状态周期为1/6us;在一数情况下,算术和逻辑操作发生在N期间,而内部寄存器到寄存器的传输发生在P2期间。 对于单周期指令,当指令操作码读人指令寄存器时,使从S1P2[8]开始执行指令。如果是双字节指令,则在同一机器周期的s4读人第二字节。若为单字节指令,则在51期间仍进行读,但所读入的字节操作码被忽略,且程序计数据也不加1。在加结束时完成指令操作。 多数Mcs—51指令周期为1—2个机器周期,只有乘法和除法指令需要两个以上机器周期的指令,它们需4个机器周期。 对于双字节单机器指令,通常是在一个机器周期内从程序存储器中读人两个字节,但Movx指令例外,Movx指令是访问外部数据存储器的单字节双机器周期指令,在执行Movx指令期间,外部数据存储器被访问且被选通时跳过两次取指操作。下面是80C51单片机的振荡电路。图如3-1: 图3-1 80C51震荡电路原理图 引脚及其功能说明: 80C51单片机的40个引脚[7]中有2个专用于主电源引脚,2个外接晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。 下面按引脚功能分为4个部分叙述个引脚的功能: 电源引脚Vcc和Vss Vcc(40脚):接+5V电源正端; Vss(20脚):接+5V电源正端; 外接晶振引脚XTAL1和XTAL2: XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。 XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。 控制信号或与其它电源复用引脚有: RST/VPD、ALE/P、PSEN和EA/VPP等4种形式 (1)RST/VPD(9脚):RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。 当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。 (2)ALE/ P (30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低 (3)PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。 (4)EA/Vpp(31脚): EA为访问外部程序储器控制信号,低电平有效。 当EA端保持高电平时,单片机访问片内程序存储器4KB(MS—52子系列为8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。 当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源Vpp。 输入/输出(I/O)引脚P0口、P1口、P2口及P3口: (1) P0口(39脚~22脚):P0.0~P0.7统称为P0口。当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。它分时提供8位双向数据总线。 对于片内含有EPROM的单片机,当EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。 (2) P1口(1脚~8脚):P1.0~P1.7统称为P1口,可作为准双向I/O接口使用。对于MCS—52子系列单片机,P1.0和P1.1还有第2功能:P1.0口用作定时器/计数器2的计数脉冲输入端T2;P1.1用作定时器/计数器2的外部控制端T2EX。对于EPROM编程和进行程序校验时,P0口接收输入的低8位地址。 (3) P2口(21脚~28脚):P2.0~P2.7统称为P2口,一般可作为准双向I/O接口。当接有外部程序存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于高8位地址总线送出高8位地址。对于EPROM编程和进行程序校验时,P2口接收输入的8位地址。 (4) P3口(10脚~17脚):P3.0~P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。 P3口的第2功能见下表3-1: 单片机P3.0管脚含义 表3-1单片机P3.0管脚含义 表3-1 P3口的第2功能表 引脚 第2功能 P3.0 RXD(串行口输入端0) P3.1 TXD(串行口输出端) P3.2 INT0(部中断0请求输入端,低电平有效) P3.3 INT1(中断1请求输入端,低电平有效) P3.4 T0(时器/计数器0计数脉冲端) P3.5 T1(时器/计数器1数脉冲端) P3.6 WR(部数据存储器写选通信号输出端,低电平有效) P3.7 RD(部数据存储器读选通信号输出端,低电平有效) 综上所述,MCS—51系列单片机的引脚作用可归纳为以下两点: (1) 单片机功能多,引脚数少,因而许多引脚具有第2功能; (2) 单片机对外呈3总线形式,由P2、P0口组成16位地址总线;由P0口分时复用作为数据总线。 80C51结构图如图3-2下: 3.1.2 光电隔离简介 水箱的控制器由8051系统构成。为避免电机的起停和电源波动时对电路的影响,输入输出均采用光电隔离。 光电隔离是半导体管敏感器件和发光二极管组成的一种新器件,它主要功能是实现电信号的传送。输入与输出绝缘隔离,信号单向传输,无反馈影响。抗干扰性强,响应速度快。工作时,把输入信号加到输入端,使发光管发光,光敏器件在磁光辐射下输出光电流,从而实现电光点的两次转换。 继电器隔离是用电信号控制继电器的机械触电来实现隔离控制。 输出通过继电器,控制水泵机组的起停和报警,其电路图如图3-3: 图3-3 系统控制电路原理图 3.1.3 给水泵电机主控回路介绍 给水泵电机主控回路,图3-4如下: 图3-4 水泵电机控制电路原理图 3.2 80C51水箱控制系统主控硬件部署方案 该系统硬件主要由一个80C51单片机,一个74LS373和一个2764芯片构成。 ·3.2.1 80C51单片机实现控制功能说明 80C51为数据采集及处理模块核心,它主要完成系统对水位高低信号是否满足指标的信息采集,对采集到的水位信号通过系统程序进行对信号的判断等处理,根据采集信号的不同,驱动相应信号对应功能的引脚来实现对水箱水位的控制。 3.2.2 74LS373芯片实现系统功能说明 74LS373是一种带输出三态门的8D锁存器,其结构如图3-6所示。 引脚功能介绍: 图3-6 74LS373结构示意图 D0~D7为8个输入端; Q0~Q7为8个输出端; G为数据锁存控制端; 当G为“1”时,锁存器输出端同输入端;当G由“1”变“0”时,数据输入锁存器中。 OE为输出允许端; 当OE为“0”时,三态门打开; 当OE为“1”时,三态门关闭,输出呈高阻状态。 在该基于80C51单片机水箱控制统中,采用74LS373作为I/O接口驱动使用,具体引脚连接如下: 其与80C51连接方法如下: 80C51 74LS373 P0.0(32)--------D0 (3) P0.1(33)--------D1 (4) P0.2(34)--------D2 (7) P0.3(35)--------D3 (8) P0.4(36)--------D4 (13) P0.5(37)--------D5 (14) P0.6(38)--------D6 (17) P0.7(39)--------D7 (18) ALE (30)--------LE (11) /OE(1 )、GND(10)接地 VCC(20)接+5V 注:括号内位引脚编号 实际连接请参考图附录1所示。 其中输入端D0~D7接至单片机的P0口,输出端提供的是低8位地址,G端接至单片机的地址锁存允许信号ALE。输出允许端OE接地,表示输出三态门一直打开。 3.2.3 EPROM2764芯片实现系统功能说明 EPROM2764芯片是8K*8字节的紫外线擦出、可编程只读存储器,单一+5V供电,工作电流为75mA,维持为35mA,读出时间最大为250nS,封装为28引脚的双列直插式封装。如图3-7所示: 图3-7 2764结构图 各引脚含义为: A0-A12为13根地址线,可寻址8K字节; D0-D7 为数据输出线; CE为片选线; OE为数据输出通线; PGM为编程脉冲输入端; Vpp是编程电压; Vcc 是主电源。 正常工作(只读)时,Vpp=Vcc=+5V,/PGM=+5V。 编程时,Vpp=+25V(高压),/PGM端加入宽度为50ms的负脉冲。 在本系统中,EPROM2764芯片实现的是可编程I/O接口电路的扩展功能,具体引脚连接如下: 2764与80C51引脚连线如下: 80C51 2764 P0.0(32)--------D0 (11) P0.1(33)--------D1 (12) P0.2(34)--------D2 (13) P0.3(35)--------D3 (15) P0.4(36)--------D4 (16) P0.5(37)--------D5 (17) P0.6(38)--------D6 (18) P0.7(39)--------D7 (19) P2.0(21)--------A8 (25) P2.1(22)--------A9 (24) P2.2(23)--------A10(21) P2.3(24)--------A11(23) P2.4(25)--------A12( 2) /PSEN(29)-------/OE(22) /CE (20)接地 VCC、PGM、VPP接+5V 74LS373与2764引脚连接如下: 74LS373 2764 Q0(2) --------A0 (10) Q1(5) --------A1 (9) Q2(6) --------A2 (8) Q3(9) --------A3 (7) Q4(12) --------A4 (6) Q5(15) --------A5 (5) Q6(14) --------A6 (4) Q7(19) --------A7 (3) 注:括号内位引脚编号 实际电路连接图如图附录1. 第四章 单片机水塔水箱水位控制器程序设计 4.1 程序概要设计 4..2 控制器程序原理 4.2.1 系统主程序原理以及流程框图主程序要实现的是,对数据的初始化,并且判断用户是使用自动模式还是手动模式,根据用户的具体需求: 若用户选择自动模式,则程序调用自动化子程序; 若用户选择手动模式,则程序调用手动子程序。 系统的主程序: ORG 0000H AJMP MAIN ORG 0060H MAIN: MOV P1, #FFH ;P1 P3口初始化置1 MOV P3,#FFH JNB P1.3 , AUT ;若手动在自动位置,跳到自动模式子程序 AJMP MEN ;否则转到手动模式子程序 END 主程序原理框图如下图4-1 开始 初始化 自动? 转自动 转手动 图4-1 主程序原理框图 4.2.2 自动模式子程序原理以及流程框图 自动模式子程序运行的前置条件是,系统开始运行,并且用户选择使用自动化控制模式。 自动模式子程序首先判断水位是否高LG,若水位高于指标,则运行“水位高报警”程序,并返回主程序。若水位不高,则判断水位是否低LD,若水位低,则试运行“水位低报警”程序。然后判断水位是否低低LDD: 若水位没有达到LDD的指标,则试判断“M1是否开启”,若没有开启,则开启M1;若“M1开启”则判断“M2是否开启”,若“M2开启”,则程序运行“停止M2”程序;若“M2没有开启”,则试程序运行“延迟1分钟”, 一分钟后程序“返回主程序”。 若水位达到水位LDD的指标,则运行“水位低低报警”,然后程序判断“M1是否开启”,若“M1未开启”则运行“M1开启”程序;若“M1开启”则程序判断“M2是否开启”,若“M2未开启”则运行“M2开启”程序,若“M2开启”,则运行“延迟一分钟”,一分钟后程序“返回主程序”。 自动模式程序: AUT:NOP ;空命令 JNB P1.2 , LG ;水位高—LG JB P1.1 LD ;水位没低---LD CLR P3.1 ;水位低报警 JB P1.0, LDD ;水位未低低---LDD CLR P3.0 ;水位低低报警 JNB 3.1 P1.6, Y1 ;M1已启动—Y1 CLR P1.4 ;否则启动M1 Y1: JNB P1.7 ,Y2 ;M2已启动---Y2 CLR P1.5 ;否则启动M2 Y2: ACALL DELAY ;延时1分钟 AJMP AUT ;返回自动模式 LDD: JNB P1.6 ,Y3 ;单独运行M1(LDD〈水位〈LD) CLR P1.4 Y3: JB P1.7 Y2 SETB P1.5 AJMP Y2 LG: CLR P3.2 ;水位高报警 LD: AJMP MAIN ;返回主程序 自动模式子程序原理框图如图4-2: 开始 水位高? 水位低? M2是否开 M2是否开 水位低低? 水位低报警 开M1 水位低低报警 开M2 水位高报警 返回主程序 M1是否开 开M1 M1是否开 延迟1分钟 N Y N Yes Yes N no No 停M2 Y Y N Y Y No 返回主程序 图4-2 自动模式子程序原理框图 4.2.3 手动模式子程序原理框图以及流程框图 手动模式子程序运行的前置条件是,系统开始运行,并且用户选择使用自手动控制模式。 手动模式子程序中判断语句的条件是依据用户的具体操作。 手动模式子程序首先判断“水位是否LG” ,若水位LG达到指标,则程序返回主程序;若水位LG未达到指标,则程序运行“判断有无键合”: 若“判断没有键合”则子程序进行循环; 若“判断键合”,则程序判断“M1是否键合”。 若用户操作“M1键合”,则程序运行“判断M1是否开启”: 若“M1开启”则子程序进行循环; 若“判断M1未开启”,则程序运行“开启M1”。 若用户操作“M1不键合”,则程序判断“M2是否键合”: 若用户操作“M2键合”,则程序运行“判断M2是否开启”; 若“M2开启”则子程序进行循环; 若“判断M2未开启”,则程序运行“开启M2”。 若程序判断用户均未进行“M1、M2键合”,则程序要判断“是否停止M1键合”:若用户操作“M1停止键合”,则程序判断“M1是否停止”; 若“M1停止”,则子程序循环; 若“M1没有停止”,则程序运行“停止M1”。 若用户不操作“M1停止键合”,则程序判断“是否停止M2键合”: 若用户操作“M2停止键合”,则程序判断“M2是否停止”,若“M2停止”,则子程序循环; 若“M2没有停止”,则程序运行“停止M2”。 手动模式程序: MEN: NOP JNB P1.1 , MAIN ;水位高返回主程序 ACALL KEY CJNE A ,#FOH,NN ;有无键合 AJMP MEN NN: JNB ACC.4 ,HM1 JNB ACC.5, HM2 JNB ACC.6 ,DM1 JNB ACC.7 ,DM2 AJMP MEN HM1: JNB P1.6 ,MEN CLR P1.4 AJMP MEN HM2: JNB P1.7, MEN CLR P1.5 AJMP MEN DM1: JB P1.6, MEN SETB P1.4 AJMP MEN DM2: JB P1.7, MEN SETB P1.5 AJMP MEN RET 手动模式子程序原理框图如图4-3: 开始 水位高? 有无键合? M1键合? M2键合? N N N yes 开M2 Y N N N 停M1键合? 停M2键合? yes M1开着? 开M1 N M1开着? N 开M2 N yes M1停着? N Y Y Y M2停着? yes 停M2 N yes 返回主程序 Y 图4-3 手动模式子程序原理框图 结束语 纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些东西也能做,但是只能使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了。所以,它的魔力不仅是在现在,在将来将会有更多的 人来接受它、使用它。据统计,我国的单片机年容量已达3亿片,且每年以大约20%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的玩具厂等生产产品多数用到单片机,并不断地辐射向内地。所以,学习单片机在我国是有着广阔前景的。 而在本次的毕业论是基于单片机的水箱控制系统,主要核心就是80C51单片机。通过这次设计,我综合运用大学四年所学知识去分析和解决问题,我深刻的了解和掌握了单片机的控制原理和设计方法。不仅加深和回顾了但单片机等专业知识而且积累到单片机控制技术在实际中的经验。 由于自身缺少在实践设计的经验,所以在这次的设计中我自身也发现了很多不足的方面,从论文的本身的方面的结构到具体设计中硬件设计知识和经验的不足使得设计和论文存在的很多的问题,但是我的导师程老师的细心指导下,经过前后多次的修改和完善,最终完成了毕业设计的任务。 单片机控制技术领域是一个有着非常潜力和前景的专业技术,我相信通过这次毕业论文的设计,不仅加深和掌握了这一专业技术,而且也提高了自己的专业能力和综合素质,为我的大学生涯画下一个完整的句号。 致 谢 贾老师的亲切关怀和精心指导,虽然有繁忙的工作,但仍抽出大量时间给予我学术上的指导和帮助,从设计草案的确定和修改,开题报告,中期检查,后期详细设计,每一步都是在老师的帮助下完成的,从这个过程中获益不浅。贾老师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。通过该次论文设计使我掌握了基本的研究方法,树立了远大的学术目标。在此,向老师
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服