基于单片机的恒压供水控制器设计

news2024/12/31 5:40:37

摘 要

随着我国现代化的进程不断加快,城市居民生活水平不断提高,随之而来的是房屋的翻新和重建,但建筑层数的不断增高,使得供水所需压力不断提高,若建筑设计时对压力判断不足,会导致供水时无法供应到高楼层,给人们的正常生活带来极大的不便利。
本文在充分了解恒压供水发展由来,国内外变频器发展历史及研究现状,以及国内常用的几款控制器的基础上,确定了以单片机与变频器结合的方式实现恒压供水,其中主控制部分的控制核心单片机选用AT89S52型单片机,其内部具有PID自整定程序可对检测回来的压力信号进行自动调整;在此基础上并对外接模块进行设计和芯片选择:压力转换模块其选用TLC549作为核心芯片、输出模块选用TLC5620芯片、驱动模块采用ULN2803芯片、键盘显示模块采用ZLG7290B芯片、存储模块采用X5045芯片、通讯模块采用MAX232芯片。
本次设计的恒压供水控制器将选用单片机与变频器相互结合的方式,由于单片机本身的特性,因此具有价格便宜,编程方便的特点。加之变频控制器本身具有的节能、实时调节、延长寿命的优点,使得本次的设计更加具有现实意义。

关键词:单片机;恒压供水系统;PID控制;变频调速

Constant pressure water supply controller design based on single chip microcomputer

Abstract
With the accelerating the process of modernization in our country and city residents living standards improve, followed by the renovation and reconstruction of the building, but the increasing construction layer, make the water pressure increasing, when building design judgment to pressure is insufficient, can lead to water supply when unable to supply to the upper floor, to people’s normal life brings great convenience.
Based on fully understand the development origin, constant pressure water supply inverter development history and research status at home and abroad, and domestic commonly used a few controller, on the basis of preliminary established with combination of single-chip microcomputer and converter to realize constant pressure water supply, the main control part choose type AT89S52 single chip microcomputer control core of the single chip microcomputer, the internal PID self-tuning procedure can be automatically adjusts for the detection of the pressure signal back;On this basis and external modules such as: pressure conversion module selection of its eight bits as the core chip, the output module TLC5620 ULN2803, keyboard display module, drive module USES the ZLG7290B X5045, communication module, storage module USES a design using MAX232, etc.
The design of constant pressure water supply controller will choose mutual combination of single-chip microcomputer and converter, due to the characteristics of the micro-controller itself, so it is cheap, convenient programming.Combined with frequency conversion controller itself has the advantages of energy saving, real-time adjustment, prolong life, makes the design more realistic.

Key Words:Single chip microcomputer;Constant-pressure Water Supply;PID Control;Variable Frequency Speed Regulation

目 录

摘 要 I
Abstract II
引 言 1
1 绪论 2
1.1 恒压供水背景及意义 2
1.2 国内外研究现状 2
1.3 本文主要研究内容 3
2 恒压供水节能原理及设计方案 5
2.1 变频恒压供水系统节能原理 5
2.2 设计方案及要求 7
2.3 系统结构 8
2.4 系统原理 10
3 恒压供水控制器硬件设计 12
3.1 硬件电路总体设计 12
3.2 晶振与复位模块 12
3.3 键盘显示模块 14
3.4 模拟量输入模块 16
3.5 模拟量输出模块 17
3.6 开关量输出模块 19
3.7 参数记忆模块 21
3.8 数字量输入模块 22
3.9 ISP下载模块 23
3.10 稳压电源模块 26
4 恒压供水控制器软件设计 28
4.1 PID控制算法 28
4.2 水泵切换条件分析 30
4.3 程序流程 33
设计总结 37
参 考 文 献 38
附录A 附录内容名称 39
致 谢 40

引 言

在城市建设飞速发展的今天,人们对住房的要求条件越来越高,楼房层数的不断提高,使得供水难度不断加大,住户用水难的问题不断发生对人们的生活带来了接连不断的麻烦。在这些问题面前,如何研发出一套高性能、高稳定性、高可靠度的恒压供水器已显得迫在眉睫。
所谓恒压供水就是通过使用变频调速技术使得在任何条件下,保证用户用水压力保持恒定。管道压力通过压力传感器采集后经压力转换模块在控制器中进行增量式PID控制调节,当管导压力过小时,变频器使频率提高,加快水泵运行,以此来提高水流量,使得管道内水压升高。反之,使水泵转速降低,减少用户供水量,使管网压力下降,保证供水的压力不变。
在本次设计中控制器的核心器件我将采用单片机作为主控制器。相对于可编程控制器PLC以及恒压供水基板来说,单片机由于其较低的价格,短时间的开发周期,以及无需专业的技术人员即可编写等特点脱颖而出。综上所述,这次设计中控制器的核心将会采用单片机来进行制作。
变频调速技术作为近些年来的尖端技术,其融合了一系列广泛学科和技术如:变频调速技术、电机控制技术以及机械设计,变频调速由于其卓越的调速能力以及高效的能量节约已被广泛应用到工业生产的各个方面。从上世纪70年代变频技术被应用到供水领域中至今,使用变频器装置的控制器已经发展到具有一系列的完备功能,从节能运行发展到系统稳定可靠运行均已经得到社会的普遍认可。因此在本次的设计,系统硬件的选择与搭配、如何实现水泵之间的无缝切换以及有效的PID控制将成为侧重点。

1 绪论

1.1 恒压供水背景及意义
在如今时代,水作为人们生活中必要的资源,水在我们日常生活以及工业生产中有着不可或缺的重要地位。随着基础建设的不断发展,人们对水资源的质量和供水稳定性的要求越来越提高。而且用水量的大小是根据其自身需求经常发生变化的,因此用不上水和水量过多的情况在各地时有发生。而用水和供水之间的问题在于如何使这两个量在某一值达到平衡,即为需水量大时供水量也大,需水量小时供水量也小。现阶段摆在我们面前的主要问题是如何保证管网压力值的稳定,使水资源消耗和水资源供给之间达到一个稳定状态,进而提高了供水的效率和质量。
如今在我国的城市供水厂中,水泵的控制方式基本利用电力拖动的运行方法,水泵在工频状态下持续运行,同时,在最初设计时水泵的容量选择大多都偏大,而在实际运行中,水泵往往不能满负荷运行,不只是造成了电能的无意义使用,并且水泵的功能遭到重大影响。在实际运行中,各地的用水量大小与设计初始供水量大小不符,使得电机平均负载率低,电机未能满负荷运转从而使自身身效率的变低。在传统的供水方式中,管网水压的大小是通过调节供水阀的开启量来调节的,这种方式便捷便宜,但有着许多缺点,如能源消耗严重,水泵使用寿命变短等。当用户用水量增加时,增加阀门开度,当用户用水量减小时,减小阀门开度,但无论在哪种情况下水泵一直处于工频运行状态,有相当一部分能量被损耗在阀门阻碍水流方面,并且因为电机是工频启动,并不使用变频器来开始软启动,所以其所需求的启动时间较短,管道中的水流从零迅速到达上限流量,进而使得管道内的过压或欠压[1],产生了所谓的“水锤效应”,这种效应对管道有着巨大的危害,在管道内压过高时,会引起水管的破损并伴随着较大的噪声,反之,管网内压过低时又会因压力不足而塌陷,还有可能会损坏阀门和固定件。由于上述原因,传统的供水模式在不仅相似的水平上存在着利用率低、稳定性不好、自动化程度不高的一系列不足[2],无法满足现在的工业生产和生活的要求。所以,在如今以节约水电资源为主题的今天,研究节能型、高自动化程度的恒压供水控制器是当紧迫的需要。
1.2 国内外研究现状
变频恒压供水的技术是成型较晚。这种技术是在变频调速技术成型后建立的。在初期的阶段,因为技术发展的不成熟,国外制造的变频器功能有限,只能实现频率变换,正转与反转切换、升速与降速以及电机保护这些功能。在控制系统中,变频器仅仅作为一个环节而存在,实现对用户需水的要求仅仅是一个方面,另一方面是为了保证供水管道内的压力的为一固定值,需要在变频器的外接模块添放压力检测装置,以此来控制压力的实时变化。从浏览的文献中我了解到,外国的恒压变频供水控制工程在建造时普遍利用一对一的模式,即一台水泵只由一台变频器拖动。基本不存在一拖多的情况,由此初期投入的成本比较多。在上世纪60年代,丹麦的丹佛斯公司设计并首先推出了第一台控制器。在变频器发展逐渐完善后,恒压供水的诸多优点如能耗低、控制效果好、高包靠性被国际上所认可之后,许多国外的公司开始着手研究开发具有恒压供水的控制器。像瑞典、瑞士的ABB公司设计并生产了HVAC控制器,恒压供水基板其制造商为施耐德公司,这种供水基板包含“变频泵固定”、“变频泵循环”两种切换方式。这种供水基板采用了高度的集成技术将控制器和变频器集合在了一起,再通过编写代码即可实现对水泵的拖动,只需配备对应的组件单元,便可以通过设备中的继电器进行工作,供水系统所能拖动电机上限为7台[2]。为了减少制作时的成本,这种控制器使用了卫华里结构导致了输出的功能受限,且控制器的能力受限因而影响了稳定性,而且使设备的容量缩小,由此,在正常使用时往往无法达到预期指标。
如今,我国有很多厂家在做控制器设备,但他们使用的控制器核心变频器大多都是从国外进而来几乎没有我国自主研发的。在恒压供水控制器上,控制单环的核心不外乎三种,他们为可编程控制器、单片机、供水基板。但国内生产的恒压供水控制器就使用效果来说和国外的还有较大差距,无法对所有客户提出的要求进行满足。艾默生电气公司和成都希望公司也都生产过专用的供水控制器,这种控制器将控制核心集成在控制盒内部可直接使用,所允许拖动的水泵上限位4台,可以实现水泵的循换切换、按时起动、暂停和定时循环、从属泵启动等功能。该公司制造的变频设备PID控制与水泵循环启动功能结合在控制盒里面,来完成设备功能,尽管大大节省了设备的占用空间,但由于其较小的体积使得拖动设备的容量较小,同时参数设计不人性化且无数据传输,因而只会在低端场合使用。根据上述的国内外变频器产品的生产现状我们能够知道,在现今的这个阶段,国内外的变频恒压供水控制器仍处于不完善的阶段,仍有很多不足之处。因而,变频恒压供水控制器的功能仍有进步空间,为了使其能够自动适应工业和日常生活的不同需求[3],我们需要进行深入研究。
1.3 本文主要研究内容
本文主首先经过对现有变频恒压供水系统学习与探讨,根据现有用户对供水系统的需要,确立了以高可靠性、应用便捷、检修便利、编程容易的控制设备变频器和单片机作为主要设备来设计恒压供水控制器系统,以此来保障设计出的产品有保障的基础上,体现出造价便宜,节约能量等特点。详细而言,论文主要包含以下内容:
(1)本次设计首先对设计题目进行剖析和研讨的,之后提出了自己对恒压供水的看法以及系统设计的思路;
(2)研究和讨论了恒压供水的节能原理,明确了设计的要求,并简要说明了控制器的原理与使用步骤。
(3)论文就变频恒压供水控制器中的整体设计做出了规划,并对电源电路、最小系统电路、模拟量输入输出电路、数字量输入输出电路、ISP下载电路、键盘显示电路进行了设计。
(4)论文主要对PID控制原理、水泵如何切换进行了讨论,并对单片机控制主程序流程、控制程序框架、PID控制流程等问题设定进行探讨研究。

2 恒压供水节能原理及设计方案

2.1 变频恒压供水系统节能原理
图2.1中的两条曲线的特性存在的前提条件是要保持阀门的开度恒定。由图2.1可以看出,在扬程特性曲线中,流量与扬程近似成反比关系,流量增大的话扬程就会变小。为了研究流量的快慢与用户耗水量的多少有关,需要使其它变量保持某一恒定数值。因而,由图中曲线我们可以发现扬程函数曲线所表示的为扬程H与用户耗水量Q(u)的函数。在水泵转速恒定时,才能表示出管道阻力的函数曲线,这条曲线被定义为在阀门恒定为某一数值不变,扬程H与流量Q之间的函数关系。管阻函数曲线所反映的是异步电机克服水压阻力做功的大小。由图2.1可知,扬程H与流量Q成正比例函数,即在阀门开度为某一相同值的条件下,H的增加会引起Q的增加[4]。因为阀的启程度实时变化,其实质上是在扬程值确定的条件下,改变管网对提供水的能力的大小。因而,管阻函数曲线所展示的是扬程H和供水流量的函数表达式H=f()。这两条函数特性曲线的交点,被叫做供水工作点,其为图2.1的A点。在这上面,系统的供水量与用户的耗水量在误差允许范围内可以近似看做一样。进行供水时在管网内既可以维持扬程特性又满足了管阻特性,于是在这个点上整个环节可以稳定运行。

在这里插入图片描述

图2.1 供水系统的基本特征

在变频供水中,供水设备构成主要是由大型电机、水泵电机、管网以及阀门构成。一般系统运行中水泵由电机拖动运转,在设计时我们把水泵和电机看做一个整体,利用变频器改变频率以此来调节运行速率,最后通过水泵来改变管内压。因而,通过电动机带动水泵运转调速就是其工作本质。异步电动机的调速原理是改变电压频率进而来改变电机转速来实现的。异步电机的转差率定义为:
(2.1)
异步电机的同步速度为:
(2.2)
异步电机的转速为:
(2.3)
从公式2.1、2.2、2.3我们可以看出,当p为某一恒定值时,转速n与频率f成正比例关系。因而电机同步转速是由供电的电压频率来进行调节的,这样转子的转速可以根据电压频率而自由变化。在电机进行变速时,采用变频调速的优点在于无论转速如何变化,电机转差率拨动较小,因而变频调速体现出了其机械硬度高、调速范围广、调节时平滑、稳定性高等的一系列特点[5]。因而,变频调速在工业生产中得到了普遍应用,尤其是在调速设备中有着较为突出的优点。在供水控制系统中,恒压控制的方法有两种。其一是阀门控制法,这种方法的前提条件是要保持电机的转速恒定不变,在此基础上,改变阀门开启程度来控制水流的多少。这种方法实质上利用阀门开启程度大小来阻挡水流来改变水路中的阻力来实现压力调节。因而,管道内的阻力只是由阀门的开启程度来决定的。但这种方式的问题是:在实际生活总,用水量的大小是实时变化的,采用这种方法必将使阀门的开启程度在某一时间段不变,这样会由于阀门开度不变使管网内压力过大或过小。第二种调节方法是转速控制法,这种方法是在阀门开启程度保持恒定的前提下,利用变频器调节水泵电机的转速来改变管网内流量,其本质是改变水的流速快慢来调节流量。因而,管阻要不能改变,而扬程会根据电机的速率变化而变化。变频调速属于转速控制模式。这种方式水泵电机根据用户用水量变化自动调节转速,使管网压力保持某一数值不变,用水量增加水泵运转变快,反之,用水量减少水泵运转变慢[6]。

在这里插入图片描述

图2.2 管网及水泵的运行特性曲线

当采用调速控制法时,假设设定压力是,变频器接入的水泵转速是,管阻特性曲线是,扬程特性曲线为,这是系统的特性点从E改变高D。这是由这四个点所构成的矩形的面积为:
(2.4)
再由图中我们可以发现,使用调速方式,相比于阀门控制节能的大小为:
(2.5)
因此,当采用第一种方法时,有的功率被消无意义耗了,而且随着阀门的开启程度减小直至全部合并,管道内的阻力不断升高,由此管阻的函数也会升高,系统运行的工作点也会上升,于是压力增大,而被在这个过程中被浪费的能量也就变大。依照变频器控制运行的规律,速度变化的各个变量的比例关系为:
;; (2.6)
在式中下标为1的表示速度变化前的各个变量,下标为2的表示速度变化后的各个变量。通过这三个等式我们看出,在能量消耗的方面,采用调速方式的节能效果明显优于采用阀门的方法,因而,在本次设计中会选用调速方式作为恒压控制方式。
2.2 设计方案及要求
本次设计方案为:使用通用变频器与以单片机为中心的PID控制器的恒压供水方案,其外围配有键盘与显示模块,参数记忆模块,电机驱动模块。这种方式具备器件价格低,制作简单,检修和设定方便的特点加之相对于可编程控制器其以低廉的价格与较短的开发周期成为设计的不二之选。
在本次设计中要求:以AT89S52单片机为中心[7],采用多台水泵组合方式运行实现恒压供水,水泵的工作方式可以灵活配置。模拟量信号采用标准的电流或电压电信号,开关量信号应进行安全隔离,系统以增量式PID方式进行闭环调节,PID参数可根据现场状况自由设定。系统具备友好的人机界面,具有参数记忆功能。
设计参数:
(1)控制器可实现最多4台水泵组合运行,包含三台大泵和一台从属泵。
(2)系统中只有一台变频运行的电机,其他电动机不运行或处于工频运行。
(3)三台主电机以按设定模式启动或停止。
(4)管网水压过小时,可利用的第4台泵(附属泵)工作。
2.3 系统结构
若想全部完成变频恒压供水的流程,不能单单只考虑如何设计实现恒压控制器功能,而且要考虑到供水过程中各个流程的配合。欲使压力实现自主调节,需要在检测器、控制器、变频器、水泵机组之间构成一个PID闭环调节系统[8]。该系统经过安装在水管上的压力传感器,将压力信号检测回来,再经过以单片机为中心的控制器进行压力调节,再将调节后的参数送入变频器,最后对水泵进行调节。恒压供水的控制流程图大致如下:

在这里插入图片描述

图2.3 系统控制原理图

当偏差值大于0时,表明供水压力过小,现阶段的管网压力过小需要增加,单片机经过PID运算后将信号传给变频器,利用其提高水泵转速升高管网压力[9];当偏差值小于0时,表明供水压力过大,现阶段的管网压力过大需要减少,单片机经过PID运算后将信号传给变频器,利用其降低水泵转速减小管网压力。使用单片机控管理水泵的状态,管网的压力围绕设定压力值附近波动,进而使管网压力维持不变,达到设计的目的。
在强电电路中变频器的主电路输出端子通过接触器接入到三相异步电动机上,三台水泵均具备变频、工频两种运行模式,因而每台水泵均要求经过两个接触器分别连接工频电网和变频的变频器。系统强电部分电路图如图2.4所示:
在这里插入图片描述

图2.4 系统强电结构图

变频器[13]的构成元件为电力电子器件以及控制核心微处理器。它能依照根据设定的上下限输出这之间的任意频率。在供水系统中,变频器的作用是受控制器的控制,经过控制器输出的模拟电压或电流控制变频器,再由变频器输出合适的信号控制水泵运转,进一步改变水泵的转速,这个过程即为变频调速,通过这种方式最终可以达到恒压供水的目的。
本次设计采用三台主水泵加一台附属泵构成恒压供水控制系统来确保压力的实时可以调节,正常情况下三台主水泵工作,用水量较少时关闭主水泵开启从属泵。水泵电机启动时为软启动方式;具备变频器故障和欠压检测停止的系统功能;可设定压力限值。
2.4 系统原理
系统的运行步骤如下所示:
(1)初始阶段系统上电,控制器上电向变频器发出信号,利用变频器拖动水泵M1软启动,在读回压力表压力值后,经过单片机,根据读取的压力与设置的参数进行比照后进行PID调节再输出给变频器,从而调节水泵M1的转速,当输出的压力与设定的相差不多时,说明供水达到稳态值,这时水泵转速才会稳定在某一恒定值,这时M1运行状态为变频运行。
(2)当用户的用水量持续变大引起管网压力变小时,需要通过PID调节,提高水泵电机的转速,使电机转速提高到另一个平衡值。当用户的用水量减小使管网压力变大时,经过PID调节,使水泵电机的转速变慢,使管网水压改变为另一个新的平衡值。
(3)当消耗的水量持续变多,若变频器的输出频率已将达到上限频率50Hz时,如果此时的管网实际压力仍不能使得压力平衡,且符合增泵条件,系统将变频器从M1上切断,将水泵M1转换为功率状态运行,M1进入工频运行状态,同时将变频器接入水泵M2使之软启动然后进入变频状态运行,系统使用水泵M2进行变频调节,再次进行调节管网压力上升。如果供水量仍无法满足条件,且符合增泵条件,将再次发生水泵切换,并将水泵M3接入变频器。当水泵M3投入运行,系统处于满负荷运行,在选择时要考虑用户压力上限。
(4)当由于用水量减少而使管网压力变大时,变频器使水泵减速。当变频器频率达到设定下限值,若此时管网压力仍无法降低到设定值,并且满足切泵条件,系统将最先开启的且在工频状态下运行的水泵关闭,使得管网压力再次下降。若管网压力还过大,并且满足切泵条件,将继续发生上述切换,直到系统中只存在一台水泵且这台水泵为变频运行。
(5)当系统中只留有一台水泵在变频状态工作,并且这台水泵的运行频率已经降低到下限频率时,若此时满足使用从属小泵条件,则关闭主水泵。系统开启从属泵M4进行小压力供水。若附属泵已经达到设定的限值,且此时从属泵提供的管网压力无法满足用户压力值,则经过一段时间延时后,关闭附属泵,将变频器接入主水泵利用实施变频控制,再次进行循环工作过程同2、3、4步。

3 恒压供水控制器硬件设计

3.1 硬件电路总体设计
经过第二章所描述的恒压供水原理及对市场上的恒压供水设备了解后,系统的设计图如图3.1所示:

在这里插入图片描述

图3.1 系统硬件框图

在上面的硬件框图中,A/D转换将采用TLC549芯片,D/A转换将采用TLC5620芯片,键盘与显示模块选用ZLG7290键盘显示复用芯片,参数的记忆与存储选用X5045多功能芯片,系统故障与缺水需要的或门选用74LS32芯片。
3.2 晶振与复位模块
AT89S52单片机是一种具备电能消耗低、只需要5V电压、性能调节好等特点的8位单片机。其存储器为一个4K且具有可重复编写只读存储器,在设计时芯片采用CMOS工艺,并且利用高密度良好的保存性的存储器技术,输出的指令系统与其它51系列的单片机有较好的兼容性。由于其采用Flash存储器,在编程时可以直接在系统内编程[10]。由于51系列的单片机造价便宜且具有良好的兼容性,已经被广泛应用到生产和生活的各个领域。
AT89S52内部含有一个8位的CPU,程序存储器容量为4K,数据存储器的容量为256个字节,具有P0-P3四组I/O口,,串行口的工作模式为双工型模式,可同时接收和触发6个中断源。由于芯片制造技术和工艺的不断规模化大型化,使51系列的单片机的制造成本越来越便宜,是简单设计的首选芯片,所以本次在设计中选用其作为主控制器模块。其最小系统如图3.2所示:
在这里插入图片描述

图3.2 最小系统电路

在最小系统模块中,晶振大小选为12MHz,这种频率的晶振使用最为广泛,可以适用工业当中,且复位电路采用最简单的RC复位电路,电阻R的作用是控制系统复位的时间的长短,电容的充电时间与RC值的大小成正比例关系。
3.3 键盘显示模块
在单片机的应用系统中,显示模块通常采用数码管动态扫描、LCD、液晶显示屏等方式。下面对各个方法进行详细阐述。
方法一:采用数码管显示器。数码管显示器体积小,编写程序容易,但显示字符内容有限。
方法二:采用LCD显示器。LCD显示器具有显示信息量大,能耗低,体积小等一系列优点。
方法三:采用液晶显示屏。采用液晶显示屏可以显示比前两种方法等多的字符和字母,但其缺点是价格昂贵。
对以上这三种方式进行对比,以及考虑到变频恒压供水控制器的成本以及显示相对简单不需要显示中文,只需显示数值,因此选择第一种方式。
对于键盘显示模块,我选用ZLG7290B作为控制芯片。这个芯片为键盘显示专用芯片,可以自动滤除抖动并对按键进行识别。接口可以选用I2C总线,并具有连击判断功能。控制器使用ZLG7290B芯片作为键盘的接口芯片,这个芯片作为国产芯片其价格较为便宜且接线少。ZLG7290B的驱动上限为8位共阴极结构的LED数码管,并且最多可以对64个按键进行扫描识别。由于ZLG7290B采用C总线连接方式。端口占用少,且键盘显示复用,降低了编程难度。
在设计的键盘显示中共使用四个按键,具有系统开启与停止,功能切换,数值增减的功能。如图,其中按键S2具有系统的启动与停止功能,初始状态下按下S2系统启动;按键S3为功能切换,系统正常运行时LED上显示实时压力值,当按一次按键时,系统进入上限压力设定模式。当按下两次按键时,系统进入下限压力设定模式。当按下三次按键时,系统进入小压力设定模式。当再次按下按键时,系统恢复显示界面。按键S4和S5是用于在各个模式时对压力增加和减少所使用的。

在这里插入图片描述

图3.3 键盘显示系统图

在系统运行时,先通过IIC的接口即引脚P1.5与P1.6与单片机通讯后,利用ZLG7290内部的寄存器来实现按键去抖与键值的读取,最后通过显示缓冲寄存器来实现数据的显示。
在编写程序时最主要的是键值的读取与将所要显示的数据发送到显示缓冲区这两个子程序。
unsigned charZLG7290_GetKey(void)
{ unsigned char rece;
rece=0;
IRcvStr(ZLG7290,1,&rece,1);
DelayMS(10);
return rece;
}
这个函数的功能为键值的读取,若输出大于0,则表有按键按下并读取其键值,若输出为0,则表示无按键按下。其中IRcvStr这个子函数为IIC中的读取多字节数据函数,DelayMS表示延时函数,其延时时间可以根据设计的要求来改变。
void ZLG7290_SendBuf(unsigned char * disp_buf,unsigned char num)
{ unsigned char i;
for(i=0;i<num;i++)
{ ZLG7290_SendCmd(0x60+i,*disp_buf);
disp_buf++;
}
}
这个函数表示将读取的数据发送到显示缓冲区当中去,输入的disp_buf为要发送数据的起始地址,num为要发送的数据的个数,通过这个函数就可以将想要的数据显示出来。其中ZLG7290_SendCmd的函数功能为发送数据命令。
3.4 模拟量输入模块
模拟量输入模块是将采集到的压力信号经过这个压力采集模块将模拟量转换为数字量,供给单片机内部调用。
由于本次设计中所用到的端子比较多,压力变换将采用串行模式,用以节省I/O口,因此采用TLC549来实现目标。TLC549作为美国德州仪器公司生产的具有8位串行功能的A/D转换芯片。可与通用微处理器连接。在连接时利用I/O 口、/CS、DATA 这三个端子进行串行通讯。在芯片内部包含一个4MHz的晶振时钟,转换所需最多时间为可达17μs,TLC549所允许的最大变换速率可达40000次/s。总失调误差最大是±0.5LSB,通常的功率消耗为6mW。由于设计时的电压输入为差分式输入,可以根据不同的量程来进行变换输出,具有较强的抗干扰能力,接地,1V使用在较小信号的采样。图3.4为TLC549的内部框图及管脚名称:
在这里插入图片描述

图3.4 TLC549引脚图

在设计时,由于需要运算放大器,其可以在LM358和LM1458之间选择,由于在系统使用时需要±12V的电压供电,并且LM358为单电压不满足设计需要,而LM1458为双电源且其价格十分便宜,因此选用LM1458作为运算放大器。
在这里插入图片描述

图3.5 LM1458结构图

如下图为压力采集模块电路,其输入信号为压力表检测到的压力模拟信号,压力信号经过压力采集模块电路转换为数字量信号,再输送到下一环节中去,再转换的数字量经过PID调节与变换,输出到D/A转换电路。

在这里插入图片描述

图3.6 A/D转换电路图

系统工作时,从压力表传输过来的模拟量压力信号首先通过第一个LM1458运算放大器进行模拟量信号的调节,将其变换为电压大小符合芯片要求的信号,但其数值与实际值正好相反,因此需要再通过一个LM1458运算放大器使得信号的符号逆转过来。
3.5 模拟量输出模块
由于不同的变频器对模拟量输出有不同的需求,有的为4-20mA标准电流信号,有的为0-10V电压信号。考虑到这些因素,因此,在本次设计将采用TLC5620芯片作为D/A转换模块,同时将TLC5620输出信号经过扩展模块分别输出电流、电压信号,使得系统大大简化,制版所需面积变小,系统板的制作成本也就减少了。
TLC5620作为TI公司生产的8位D/A转换芯片,其VCC所需电压为+5V标准芯片电压,芯片功耗低。这种芯片可以使用CMOS电压也可以与一般兼容,串行输入只需要4根口线进行操作,适合于工业级的芯片或单片机。适用于可编程电压源、数字控制放大器/衰减器、信号合成、移动通信等工业控制场合。其芯片结构图及管脚名称如图3.7所示:
在这里插入图片描述

图3.7 TLC5620引脚图

单片机将PID调节后的信号经过DATA端子送入芯片中,在TLC5620中进行D/A转换,经过转换后的信号在被送入变频器中用于改变电机转速,电路图如图所示,运算放大器采用LM1458,这种接线方式使用较少的引脚,为系统节省了很多空间。对于0-10V的模拟量输出,输出时利用LM1458输出电流电压两路信号,利用其连接电阻的大小来控制放大倍数。其硬件图如下:

在这里插入图片描述

图3.8 D/A转换电路

在使用时,单片机转换来的信号首先通过P1.3进入转换芯片中,然后由于TLC5620芯片输出的模拟量信号的大小是根据其REF端输入电压大小(基准源)来决定的,其公式为:
(3.1)
在公式中表示输出的转换而来的模拟量电压信号,表示REF端接入电压的大小,CODE表示从单片机中接收到的经过PID调节的数字量信号,RNG表示增益的倍数,在设计时,取值为0,对信号不进行放大,使其从数字量转换成对应的模拟量。
3.6 开关量输出模块
开关量输出模块采用8路开关量输出,可以控制8个继电器开关,从而控制4台电机在工频或变频状态下运行[11]。本次驱动器选用ULN2803具有8路输出满足正常使用的要求,并有一路没有接入电路作为备用。ULN28031-8脚为开关量输入信号,9脚接GND,10脚接负载电源。这个芯片一般使用时大多都接入感性负载,如继电器、电磁阀等器件,之所以在芯片内部设置了反接的续流二极管其目的是当1脚电压为0V时,系统内部不能构成闭合回路,从而防止芯片被烧坏。输入点位为TTL或5V的标准电压值。输出最大可达500MA/50V,能够驱动大电流负载,也可以直接驱动继电器,可用于电平转换。其芯片引脚图如图3.9所示:
在这里插入图片描述

图3.9 ULN2803引脚图

系统驱动电路如图3.9所示通过AT89S52的P0口输出信号来控制驱动芯片,驱动芯片ULN2803接收到信号好在控制继电器K1-K8,进而控制异步电动机M1、M2、M3、M4的变频和工频运行。例如,当P0.0端口收到的信号为“1”时,2803控制继电器K1闭合,电动机M1以工频状态运行;当P0.4端口收到的信号为“1”时,2803控制继电器K5闭合,电动机M1以变频状态运行。其余电机的控制方式如上述所示。这样,三台主电机运行在工频和变频状态的实际基本上近似相当,这样避免了某一台电机过度工作和长时间不工作。为了防止在工频和变频状态切换时电路发生故障,在设计时控制器要考虑到继电器保护和系统锁定,以确保工作时的稳定、安全。
在这里插入图片描述

图3.10 驱动电路系统图
控制器工作时,根据程序设计的工作流程,单片机将信号发送给ULN2803A,再通过其控制器继电器的吸附与断开。
3.7 参数记忆模块
系统利用存储模块来记忆设定值,当系统关闭或失电时,设定值能够被记忆在芯片中,再开机上电时系统通过读取EEPROM中的数据进行运行,无需在进行参数设定。串行EEPROM存储器多采用SPI总线和C总线接口,接口接线大多使用4根线路来连接,具有占用面积小,传输速率快等优秀特点。因此,本设计采用Intersil的X5045芯片。X5045芯片具有4合一的多种功能如复位和参数记忆功能。设计时采用这种芯片可以大大减少占用面积以及元器件的使用。其电路图如图3.11所示:
在这里插入图片描述

图3.11 EEPROM电路图

如图所示,X5045的RST引脚与单片机的复位引脚相连接,在上电工作时,X5045的RST引脚也会上电,工作在有效状态,时刻监视着系统状态,防止系统工作在低电压状态,或者在振荡器震荡时工作。在设计时,本次只使用其复位和数据的记忆与读取功能。
在程序编写时最主要的是参数的写入和读取函数,其中写入函数为:
Void Write_X5045(uchar Writer_data) //X5045写入数据
{ unsigned char i;
for(i=0;i<8;i++)
{ SI=(bit)(Writer_data&0x80);
SCLK=0;
SCLK=1;
Writer_data<<=1;
}
SI=0; //使SI处于确定状态
}
读取函数为:
Uchar Read_X5045(void) //X5045读取数据
{ unsigned char i,Read_data;
for(i=0;i<8;i++)
{ SCLK=1;
SCLK=0;
Read_data<<=1;
Read_data|=(uchar)(SO);
}
return Read_data;
}
3.8 数字量输入模块
在控制器的设计中,需要对变频器故障以及管网缺水这一系列问题进行及时处理。所以在设计中,将这些问题通过或门接入到单片机当中。因此,在本分别为变频器故障和缺水报警信号,其通过一个或门与单片机相连接,只要其中一路信号有效,控制器就会切断信号。每一路都经由光电耦合器输入,用以保证输入信号的光电隔离,避免强电电路对控制器产生电磁干扰。其输入电路如图3.12所示所示:
在这里插入图片描述

图3.12 故障处理电路图

在使用时,系统工作正常条件下,变频器故障开关与缺水开关为开启状态,或门输出值为0,单片机对其不做任何反应,一旦当其中某一个开关闭合时,即为发生故障,此时的或门输出值为1,触发单片机的故障信号,由于或门输出引脚接入了单片机的P3.3系统中断引脚,发生故障系统立即进入中断模式,使整个系统停止工作,以此来保护设备。
3.9 ISP下载模块
RS-232做为计算机通讯接口的一种,其是一种较为古老的异步接口方式。DB-9和DB-25位这种通讯模式的常用接口。由于现阶段的RS-485总线、CAN总线等的普变应用,这种方式在长距离的通讯方面已经几乎被淘汰了。并且这种通讯接口的最大传输速率不能超过110Kbps,相比于前几种总线,速度略满。RS-232主要使用MAX232芯片,对 MAX232芯片进行简要介绍一下:
MAX232芯片是美信公司为232接口所生产的通讯芯片,供电时Vcc所需电压为标准5V电压信号。设计时满座所有RS-232协议标准。功耗低,所需要的供电电流为5mA。在MAX232芯片内部包含了2个RS-232C的驱动器。由于其设计时集成度较好,外部只需添加4个电容就可以进行通讯。

在这里插入图片描述

图3.13 MAX232引脚图

单片机通过MAX232接口可以与PC机之间进行通讯。只需要4个电容进行电平转换即可使用。其接口电路如图所示:

在这里插入图片描述

图3.14 通讯模块电路图

在电路图中,MAX232芯片上要外接电容,因为想要成功进行通讯,必须要满足232的工作条件,所以ISP通讯模块共分为两部分第一部分为电荷泵电路,这部分电路由引脚1、2、3、4、5、6这六个引脚所连接的电容构成,这几个引脚通过电容能够产生+12V和-12V的电源,供电给芯片使其能够正常工作。系统的第二部分为数据转换通道,其由引脚7-14组成,数据从T1IN引脚输入后经过芯片转换为RS-232协议的数据后从T1OUT端口送入计算机的DB9插头,计算机再通过DB9插头将RS-232数据从R1IN输入转换成电平数据之后从R1OUT输出。
若要通过232实现单片机与计算机的成功通讯,首先需要在计算机中安装232的驱动,安装成功后期端口可正常使用,如图3.15所示:

在这里插入图片描述

图3.15 驱动安装图

在成功安装232驱动后,通过stc-isp下载软件,可以成功将编写生成的.hex文件成功下载进单片机中,下载成功的界面如图3.16,3.17所示:

在这里插入图片描述

图3.16 下载界面
在这里插入图片描述

图3.17 下载界面

3.10 稳压电源模块
稳压电源的构成部分有输入变压器、变流器、系统滤波、稳压调节这几大主要部分。变压器是利用绕组实现电压变化的器件。整流器能够将交流电黄钻变为直流电,其可以由真空管、引燃管、汞弧等元件制成。滤波器是将杂波和特定频率的波过滤掉,是抑制和防干扰的重要方法。稳压器是调整最终输出电压的部分,其作用是过滤掉有较大部分的拨动,并使小部分波动稳定在固定范围内。直流电源大致框架如图3.18所示:

在这里插入图片描述

图3.18 直流电源框架

在本次设计中所使用的5V电压设计中变压器采用一二次电压比为220/10即22倍,将输入的工频电压220V,转化为10V的电压。整流器采用桥式整流,由于电路的输出并不是很大,且需要考虑成本,使用三相桥式电路会增加设计的复杂度和制作成本。所以我选用单相桥式的方式。为了使设计尽可能方便,滤波器使用π型RC滤波电路。稳压器采用三端电压稳压器电路,在设计时选择LM7805作为电子电压稳压器,其具有成本低、效率高、体积小、文波小和稳定度高等优点,所以本次设计将采用其作为稳压器。对于在设计中要使用的12V电压将选用LM7812和LM7912作为稳压器,其稳压电源模块设计图如图3.19所示:

在这里插入图片描述

图3.19 稳压电源电路图

4 恒压供水控制器软件设计

4.1 PID控制算法
在硬件部分我们主要对输入和输出的模拟量信号变换的硬件部分进行了主要的讲解,但对于控制器如何实现却没有过多描述,因此在这一部分我们将对PID实现过程进行论述。
在变频供水中,变频器通过改变频率来控制水泵的运转速度,异步电机的数学模型使得具有较多参数的系统表现出高阶次、线性度差、耦合性好等特点,再加之城市地下管网的管阻特性具有死区和非线性的特点[12]。因此,供水系统的数学模型具备阶次高、非线性、滞后大、耦合性强、变量参数多、参数变动快等特点,经过研究和计算是很难得出既精确而又有效的表达式和得出准确的数学模型。此外,在城市管网中,管道的设计往往是根据城市的地形地质进行设计,其结构往往较为复杂、弯道多,使得参数变化无常无法建立准确的数学模型;并且用户根据自身需求的大用量和小用量时间没有规律。另外,如今是供水设施中多数利用三台及以上的水泵分时运行,当水泵从工频向变频或从变频向工频变换时,由于无法实现无扰动切换,会使得电网电压产生波动,这个波动等效于在控制中加入了一个干扰量,严重影响系统的稳定性。PID的简易结构图如图4.1所示:
在这里插入图片描述

图4.1 PID控制图

在工业生产中简单的PID控制模式为采用最多的控制模式,PID控制器发展至今已经有快一个世纪,其具有一系列优点如:参数量少、表达式简单、稳定性好等一系列的优点而在工业控制中被广泛使用。常规PID(比例、积分、微分)控制由比例部分、积分部分和微分部分这三个部分构成,一般PID调节器具备系统构造简易、性能稳定、有保障等优良特点,在生活和生产中很方便调节和计算,如今很多的高级控制是从常规PID演化而来的。PID控制器有以下三大功能:(1)提供参数反馈控制;(2)系统的稳态误差可以有积分作用减小甚至消除;(3)通过微分作用来预测即将到来的变化。以上这些特点一方面是因为PID控制器执行方式简单并且通常不会有较大变动,在正常使用的过程中都会体现出控制的鲁棒性;在另一点上是由于在PID控制器中直接改变比例、积分、微分任意一个参数就可以改变结果。因此PID控制是如今控制算法中发展最完善、应用最普遍的控制[13]。PID控制具有如下特点:技术发展成熟,无需模型架构,控制结果好,易于上手和调节。作为线性控制器大类中的一类,PID控制器的计算方法是利用偏差e(t)进行探究和设置:
(4.1)
参数首先经过比例、积分和微分运算后得到所需量u(t),再经过其对受控目标进行控制,由此其被叫做PID控制器。系统的主要组成部分为PID控制器核被控制对象。其中PID控制规律为:
(4.2)
式中参数意义为:为比例系数;为积分时间常数;为微分时间常数。
下面我简要阐述下PID各环节作用:
(1)比例环节作用:比例调节是PID调节方式中最基础的调节方式,比例调节顾名思义就是以一定的比例反应偏差的大小,是最基本的调节规律。调节器输出P与其输入偏差e之间调节为线性调节方式。比例调节作用反应迅速由于其为一次函数所以不存在滞后,但会出现调节余差。比例环节仅仅作为放大环节而存在,即使系统中存在偏差,系统的偏差会由于比例系数的变大而变小但不会消失,在设计时,比例系数要进行预估,以防比例系数的过大过小使得系统的不稳定甚至震荡。
(2)积分环节作用:积分环节是系统输出与偏差时间之间的函数关系。积分环节的基本作用是减小甚至消去静差。积分系数变大,静差消除所需时间也就越短,但如果积分系数设定值过大,有可能会出现积分饱和,导致系统的超调量超过预期设定值;若积分系数设定过小,会使得系统中会残留有静差,调节准确度变低,从而将延误响应速度,延缓了调节时间,使系统的静态性能和动态性能较差。
(3)微分环节作用:微分环节是反应系统对偏差反应的快慢,其能够预测偏差的变化,在偏差信号偏离正常前,在系统中加入一个调节信号使得系统回到正轨上,从而减少调节时间。当微分系数设置过大时,系统提前制动,调节时间变长,而且严重时系统的性能会被严重干扰。
比例调节、积分调节、微分调节这三种作用是互不影响的。改变PID其中一个环节,只会对其所反应的现象进行改变。然而,对于如今的控制系统来看,只是用PID其中的一种都无法满足如今的控制需要。现阶段的设计大多是采用比例、积分、微分之中的两种甚至是三种才能得到理想的效果。
自从电脑被应用于控制系统中来之后,电子计算机就成为PID参数控制的主要方式,采用计算机控制系统具有更大的便利性和可靠性[14],参数更加多变可调。
在简单PID调节中,有两种PID控制算法一种为增量式算法,另一种为位置式控制算法。其中PID位置控制算法表达式:
(4.3)
PID的位置算式是利用系统所有偏差进行计算的,一方面需要对本次和前一次的偏差进行计算,而且在计算时要把从系统开始到现在所有的偏差进行累加,计算量非常大且易出现误差,此外由于高额的累加对计算机的内存要求也非常高;在另一个角度来看u(n)代表着设备运行过程中的各个参数偏差之和,假使其中的某一部分发生问题,将会导致累加的u(n)与预期偏离,更严重的后果可能使设备输出改变导致发生事故,这在实际应用中是被禁止的。因此在本次设计中PID设计将选用增量式PID控制算法[15],其数学解析式为:
(4.4)
4.2 水泵切换条件分析
在系统的硬件部分中我们主要对继电器的工作过程做了简要论述,但没有介绍继电器的工作顺序与工作流程,因此在本节中将对水泵如何工作进行论述。
系统在进行变频恒压供水时,首先变频器接入水泵M1,再进行进行软启动后进行供水。在水泵M1运转期间内,单片机根据压力传感输入的数据与设定值对比后通过PID调节将输出信号送给变频器,以此来控制水泵M1,进而维持管网水压恒定不变。若系统中需水量仍旧变大,且变频器已经达到电网上限频率,若这时若管网压力仍无法与设定值达到平衡,经过一段时间延时后,由单片机给出控制信号,将水泵M1与变频器切断,使水泵M1在工频状态下运行,同时使变频器转接到水泵M2,在进行软启动后控制其再变频状态下运行。若这时的居民耗水量仍在变大,且水泵M2输入的频率上升到50Hz,这时的两个工频运行的两个水泵提所提供的管内压仍无法满足用户的压力,依照上述进程添加水泵台数;直至满足用户水压要求。在整个系统运行的过程中,要使起初工作于变频状态的水泵顺利切换到工频状态工作,新启动的水泵应在变频状态下工作,在水泵的工作过程中,变频器只能拖动一台水泵进行变频调节[16]。
当用户用水量减少时,单片机通过PID控制作用反应给变频器,降低水泵电机运转速度来维持用户用水压力的恒定。若变频器的输出频率为设定最小的时候,用户耗水量仍超过设定,为了防止误操作在经过设定的时间延时之后,按照先启动先停止的规律,单片机发出指令,关闭系统中最先工作在工频状态下的水泵,PID再根据变化的偏差算出所需要升高的频率再发送给变频器,以满足用户用水压力的要求,从而维持管道中水压的恒定。
若整个环节中只有一台电机在变频运行时,若用户耗水量仍然下降,并且变频器的输出值抵达了设定最低值若这时若无法降低到设定压力,经过一段时间延时后,断开水泵电机,将边变频器接入到辅助泵(水泵M4),用其进行小幅供水。
为了使系统在较长时间内,各个水泵运行较为均匀,以此来避免水泵长期放置或一直处于工作的状态出现,供水状态的切换方法按照“有效状态循环法”的原则进行操作。
有效状态循环法的原则为:在整个系统中有N台水泵进行变频调速,则满足“先启先停”的原则的最大有效状态数为。将来的供水状态就会在这些有效状态内来回循环[17]。
在本次设计中由上述公式可以知道,有10种水泵的运行状态,其转换方式如图所示:

在这里插入图片描述

图4.2 供水状态流程图

水泵运行的各个状态如图4.2所示。在图中我们可以发现,供水状态的转换关系不仅与其各个水泵的运行状态有关,还与其切换条件有关。
各个状态之间的转换时按照变频器上下限品频率以及管网压力上下限来设定的。设变频器上限和下限频率为F1,用户用水压力最低压力为P2,用户用水压力最高压力为P3。
从从属小泵转换到大泵需要满足P2;
从大泵切换到从属小泵需要同时满足F1和P3;
增加水泵需要同时满足F1和P2;
切除水泵需要同时满足F1和P3。
通过上述介绍我们了解了水泵的转换方式,接下来我们对变频和工频的切换做简要介绍。从从属小泵切换到主泵只需要将变频器从属小泵上切掉即可,并将变频器接入到主水泵,对主泵进行软启动,使之运行在变频状态下即可。
水泵电机切除的过程相对容易,只需要直接将工频水泵电机直接切除即可。由于水泵增加需要进行软启动而水泵切除并不需要,所以其较为麻烦,其需要将即将进入工频状态的水泵和变频器脱离后,使之运行在工频状态下,同时变频器需要接入新的水泵,并对其进行软启动[18]。在水泵运行的各个过程中,禁止有变频器控制多台水泵的情况出现。
4.3 程序流程
根据设计的硬件的各个部分,在程序编写时需要进行模块化方式编写,基本的程序模块应该包括主程序、中断服务程序、各个功能模块子程序。实现的功能应该包括:压力的检测与读取,模拟量与数字量之间的相互转换,键盘与显示功能、PID控制等。
在主程序中,首先定义各个接线端口并对各个芯片以及参数进行初始化设置,在这之后,进入不断的循环中,等待中断,在系统出现中断后,调用键盘显示子程序,在这个子程序中,通过键盘来改变设定参数值的大小来改变压力上下限值的大小。然后反馈到四位数码管上来。
主程序流程图如图4.3所示:
在这里插入图片描述

图4.3 主程序流程图

在初始状态下,系统上电,系统根据已设置好的参数工作。若根据实际情况需要改变压力的上下限,程序进入参数设置支路[19]。在这个支路中,首先进行按键检测,若为误按,则返回主程序,若在延时去抖后发现确实有键按下,则进入参数设定程序,在这个程序中可以对频率上限、下限、附属小泵启动频率进行设定。在参数设定完成后,将其保存到存储模块中,在系统关闭重新启动后仍可以以设定值运行。在参数保存后返回主程序,接着执行循环。若没有参数变化,程序进入工作状态,将压力信号读入到单片机内部,与设定的压力进行,若满足设定压力的要求,则维持现状不必进行PID调节,若不满足要求,则进行PID调节,将调节后的参数输出到变频器当中去,再由变频器拖动电机改变其转速实现压力控制。
对于PID调节,通过TLC549将压力模拟信号转变为单片机可用的数字信号,然后在单片机内部进行增量式PID的调节。相对于位置式方式的种种缺点,增量式方式有着误差小,发生故障影响小,调节效果好等优点。若在实际应用中,根据不同场合的需要要改变PID设定的参数,只需要在PID子程序中改变其对应的值即可改变。
在这里插入图片描述

图4.4 PID调节流程图

设计总结

经历差不多一个学期的时间,本次毕业设计,通过本次的毕业设计,我基本了解到了设计的基本流程:首先要明确设计的基本任务,以及设计产品所要满足的技术指标的要求,并且对设计产品所应用到的实际系统进行了解。接下来,要对整个设计的系统进行方案论证,计算并对实际的生产条件、资金状况、需求量大小等一系列条件进行评估,确立自己的设计方案,然后根据自己的设计方案搭建硬件电路,在搭建电路时要考虑元器件的性能和价格。在软件部分的设计中,首先要明确设计参数,绘制程序流程图,搞清楚各部分所要实现的功能,但由于本人能力有限,所以目前还有很多不足之处,有待进一步的提高和改善。
恒压供水是目前城市供水的发展目标,使用单片机作为核心控制器来实现恒压供水系统具有操作简便,造价便宜,维护方便等优秀特点,是较为理想的控制器。在本次设计中主要完成了以下内容:设计出以AT89S52为控制核心的恒压供水控制器。在实现恒压供水时利用增量式PID来控制输入压力的变化以此来完成恒压控制。同时,还设计了RS-232通讯接口,使得控制器可以和上位机进行通信,进行程序修改。

参 考 文 献

[1] 张智杰. 恒压变频供水系统[J],机电一体化,2003,3::82-84.
[2] Nobummasa Matsui,Yasuhiro Kasuya and Shigeo Aoki.Improvement of Optimizing Operation Method for Energy Saving of Large Electric Machine in Combined Heat and Power Plant[C].Italy:Palermo,Italy,2015.
[3] 李长军. 变频调速在恒压供水中的应用[J]. 煤矿机械,2004,(11):123.
[4] 倪敬,姜晓勇,施江肖,项占琴. 变频器在节能恒压供水系统中的应用[J]. 机电工程,2001,(05):170-171.
[5] 胡盘峰,陈慧敏. 基于PLC的新型变频恒压供水系统设计[J]. 机械工程与自动化,2011,(02):141-143.
[6] 丁莉. 变频恒压供水控制系统研究[D].天津大学,2007.
[7] 周诗虎. AT89S52单片机恒压供水控制系统[J]. 科技信息(科学教研),2007,(26):54+84.
[8] 刘德刚. 变频恒压供水系统的分析与设计[D].华中科技大学,2007.
[9]高新陵,宋平. 变频调速恒压供水系统研制[J]. 河海大学学报(自然科学版),2001,(01):115-118.
[10] 石文华.单片机原理及应用[M],中国电力出版社,2005.
[11] 陈开明,唐国成. 浅谈变频器“一拖四”控制[J]. 水泥工程,2010,(03):64-67.
[12] Szychta,Leszek.System for optimizing pump station control-PartⅡ[J].World Pumps.2004,454:32-34
[13]M.Berker Yurtseven .An experimental investigation of energy saving potentials for room type variable-speed air conditioners in public offices:A case study from Istanbul[J].Energy and Buildings,2014:165-171.
[14] 韩安荣.通用变频器及其应用[M].机械工业出版社,2004.
[15] 于颖. 基于ARM的高楼恒压供水控制器的研究与开发[D].中国海洋大学,2010.
[16] 方桂笋. 基于PLC的变频恒压供水系统的设计[D].兰州理工大学,2008.
[17] 刘法治,赵明富,赵国亮. 基于AT89C51单片机的高楼供水节能系统的设计[J]. 机床与液压,2005,(09):136-138.
[18] 葛芸萍,何瑞. 变频技术在恒压供水中的应用[J]. 自动化与仪器仪表,2008,(03):33-34.
[19] 张素玲. 单片机在变频调速恒压供水系统中的应用[J]. 机床电器,2004,(03):27-28+32.
[20] 朱玉堂. 变频恒压供水系统的研究开发及应用[D].浙江大学,2005.

附录A 系统电路图
在这里插入图片描述

致 谢

在即将毕业之际,毕业设计的工作已经接近尾声,我想通过这个机会对关心和支持我的所有人表示感谢!
首先,我衷心感谢我的导师,他在我的学习过程中给予了我很大的帮助,并在设计过程中提出了很多宝贵且中肯的意见,同时在我有困难的方面给予我悉心的指导。如果没有他的大力帮助我不可能完成这篇论文。
由于我认真地学习了专业课程基础知识,具有了一定的设计理论基础和独立设计能力。但是毕业设计的课题是一种整体性的,系统性的设计,我十分努力地去做,但还是感到力不从心,因而这次设计在深度和广度上都有一定的局限性。不过,我通过这次毕业设计还是提高了知识层面,学到了许多东西。所以我还要感谢所有的任课老师,是您们得到教育和培养,才使得问我学有所获。
最后我要向在我论文中倾注了大量心血和提供了许多帮助的各位老师、同学表示深深的敬意和谢意。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1517805.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

643.子数组最大平均数

题目&#xff1a;给你一个由 n 个元素组成的整数数组 nums 和一个整数k。 找出平均数最大且长度为 k 的连续子数组&#xff0c;并输出该最大平均数。 任何误差小于10^-5 的答案都将被视为正确答案。 解题思路&#xff1a;规定了子数组的长度为k&#xff0c;因此可以通过寻找子…

新冠疫情仍处流行期,防疫不松懈

2024年2月北京市法定传染病疫情概况已公布&#xff0c;全市共报告了21种法定传染病&#xff0c;累计病例数达到88971例&#xff0c;不幸有12人因疾病离世。这些病例主要集中在病毒性肝炎、肺结核、百日咳、梅毒、新型冠状病毒感染、流行性感冒以及其他感染性腹泻病等。 值得一提…

概率论与数理统计(随机事件与概率)

1随机事件与概率 1.1随机事件及其运算规律 1.1.1运算 交换律结合律分配律德摩根律 1.2概率的定义及其确定方法 1.2.1概率的统计定义 频率 设在 n 次试验中&#xff0c;事件 A 发生了(A)次&#xff0c;则称为事件 A 发生的频率。 1.2.2概率的统计定义 在一组恒定不变的条…

Mybatis(搭建,CRUD,方法参数,XML映射文件,动态SQL)【详解】

目录 一.准备基础代码 Mybatis的通用配置 二. 基本CURD操作 1.查询-根据id查询一条 2.查询-查询数量 3.删除 4.新增 获取主键值 5.修改 6.查询-模糊查询 预编译SQL #{}与${}的区别【面试题】 三. Mybatis的方法参数与结果集 1.SQL里取方法参数的值 2.查询结果集…

react native常用插件

react-native-async-storage/async-storage 说明&#xff1a;AsyncStorage 是一个在 react-native 中轻量存储的库&#xff1b;跟 localStorage 类似&#xff0c;API 也几乎一样&#xff1b;存储的时候需要将存储内容转成字符串存储。 react-navigation/material-bottom-tabs …

Ubuntu Flask 运行 gunicorn+Nginx 部署

linux Ubuntu 下运行python 程序出现killed 原因&#xff1a;CPU或内存限制&#xff1a;在华为云上&#xff0c;你可能有CPU或内存使用的限制。例如&#xff0c;如果你使用的是一个固定大小的实例&#xff0c;那么超过该实例的CPU或内存限制可能会导致进程被杀死。 参考&am…

Gateway网关在url参数带有特殊字符的情况下转发失败(响应400)

本文主要分享了&#xff0c;SpringCloud Gateway网关在url参数带有空格或者特殊字符的情况下&#xff0c;转发失败导致响应错误码400的解决方案。 响应400错误码的2种场景&#xff1a; 1.参数带空格&#xff0c;Gateway会误认为该空格是切割符&#xff0c;如?phone 135****6…

基于单片机的公交车IC卡操作系统的设计

目 录 摘 要 III Abstract IV 前 言 1 第一章 绪论 2 1.1 设计的背景和意义 2 1.2 设计的现状和发展 2 1.3 设计的目的与意义 2 第二章 总体设计 4 2.1 总体方案的设计与实现 4 2.1.1 主要设计的内容 4 2.1.2 系统的总体设计 4 2.2 系统方案论证 5 2.2.1 单片机的选择 6 2.2.2…

Java基于微信小程序的电影推荐系统的实现,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

机器学习 Python库 乱记录

MLFlow—模型实验和跟踪 MLflow是一个平台&#xff0c;帮助你从头到尾管理你的机器学习实验&#xff0c;确保可追溯性和可重复性。它提供了一个集中的存储库&#xff0c;用于存储你的代码、数据和模型工件&#xff0c;以及一个跟踪系统&#xff0c;记录你所有的实验&#xff0c…

【Node.js从基础到高级运用】十一、构建RESTful API

在本篇博客中&#xff0c;我们将综合之前讨论的内容&#xff0c;深入探索如何使用Node.js构建一个RESTful API。我们将重点讨论设计合理的API端点&#xff0c;展示如何通过代码实现这些端点&#xff0c;并指导如何使用Postman测试我们的API&#xff0c;确保其按预期工作。 前提…

Python-sklearn-diabetes项目实战

目录 1 下载数据集和预处理 1.1 加载/下载数据集 1.2 数据可视化 1.3 数据清洗 1.4 特征工程 1.5 构建特征集和标签集 1.6 拆分训练集和测试集 2 训练模型 2.1 选择算法和确定模型 2.2 训练拟合模型 3 评估并优化模型性能 本文以糖尿病数据集diabetes为基础进行线性…

Spring Cloud Gateway如何实现熔断

Spring Cloud Gateway熔断集成 熔断应用&#xff1a; 金融市场中的熔断机制&#xff1a;在金融交易系统中&#xff0c;熔断机制&#xff08;Circuit Breaker&#xff09;是一种市场保护措施&#xff0c;旨在预防市场剧烈波动时可能导致的系统性风险。当某个基准指数&#xff08…

【微服务-Nacos】Nacos集群的工作原理及集群间数据同步过程

上篇文章我们介绍了Nacos集群的搭建方法及步骤&#xff0c;下面我们来看一下Nacos集群的工作原理&#xff0c;一共有两部分&#xff1a;Leader节点选举及各节点数据同步。 1、Nacos集群中Leader节点是如何产生的 Nacos集群采用了Raft算法实现。它是一种比较简单的选举算法&am…

【javaWeb】在webapp中手动发布一个应用

标题 &#x1f432;一、为什么要在webapp中手动发布一个应用&#x1f389;二、手动发布步骤1.下载Tomcat2.解压并安装3.在webapps中创建文档 ✨三、总结 &#x1f432;一、为什么要在webapp中手动发布一个应用 好处解释灵活性手动发布应用程序可以根据自己的需求进行自定义配置…

Abaqus三维梯度泰森多边形插件:Voronoi FGM 3D(Mesh)- AbyssFish

插件介绍 Voronoi FGM 3D (Mesh) V1.0 - AbyssFish 插件可在Abaqus软件内生成梯度分布的三维泰森多边形长方体模型。插件可用于梯度功能材料(Functionally Gradient Materials)、梯度纳米金属材料、梯度金属结构等梯度晶体模型的建立。模型基于背景网格实现&#xff0c;通过单…

YOLO_项目环境配置

YOLOv5官方项目地址 https://github.com/ultralytics/yolov5 下载 5.0和1.0源码 5.0 master-Tags-v5.0 Code-Download.ZIP 切换到1.0下载 解压缩提取 打开V5.0 使用Pycharm打开V5.0的文件夹 环境配置 参考 http://t.csdnimg.cn/Zdfh2 http://t.csdnimg.cn/Nqkwr 然后在Pyc…

学习JAVA的二十二天(基础)

目录 网络编程 三要素&#xff1a; IP InetAddress类 端口号 协议 UDP协议 TCP协议 前言&#xff1a;学习JAVA的第二十一天&#xff08;基础&#xff09;-CSDN博客 网络编程 在网络通信协议下&#xff0c;不同计算机上运行的程序,进行的数据传输。 三要素&#xff1a;…

Qt篇——QChartView获取鼠标停留位置的数值

需求&#xff1a;鼠标停留在QChartView上时&#xff0c;想要计算停留位置的数值。 一开始的方法是想要通过鼠标移动事件计算鼠标在QChartView上的坐标&#xff0c;在换算成数值&#xff0c;后来发现QChartView中除了图表数据&#xff0c;还有坐标轴与坐标轴数值标签占了高度&a…

Python数据分析-Matplotlib1

一、折线图的绘制 1.数据分析流程 2.运用Matplot绘制折线图 #encodingutf-8 import random from matplotlib import pyplot as plt #绘图工具库 from matplotlib import font_manager #解决中文显示问题 from cProfile import label #设置字体方式 my_font font_manager.Fon…