水塔自动上水论文2.docx
- 文档编号:29237441
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:25
- 大小:79.31KB
水塔自动上水论文2.docx
《水塔自动上水论文2.docx》由会员分享,可在线阅读,更多相关《水塔自动上水论文2.docx(25页珍藏版)》请在冰豆网上搜索。
水塔自动上水论文2
目录
摘要2
Abstract3
1水塔自动上水系统概述4
1.1引言4
1.2 国内外发展动态4
1.3本章小结5
2单片机电机控制系统硬件界绍6
2.1硬件的基本组成:
6
2.2硬件介绍6
2.2.1单片机概述6
2.2.2AT89C52单片机简介8
2.2.3单片机的串行接口9
2.3复位电路11
2.4晶振电路11
2.5单片机控制系统概述11
2.6 硬件电路12
3单片机水塔控制的软件设计14
3.1KIELC简介14
3.2系统主体程序流程图23
3.3系统程序24
4试验调试25
4.1硬件的焊接25
4.1.1底座的焊接25
4.1.3时钟电路的焊接25
4.1.4导线的焊接26
4.1.5电路板的检测和故障排除26
4.1.6火线和底线的检测26
4.1.7元器件之间的连接的检查26
4.2硬件的调试机器故障排除26
4.2.1无单片机的调试26
4.2.2有单片机的调试27
4.3本章小结:
28
致谢29
主要参考文献30
1水塔自动上水系统概述
1.1引言
水塔自动上水系统应用广泛,在大型企业的工业用水以及生活区的生活用水的供应中都得到了广泛应用。
在现代科学技术的众多领域中,自动控制技术起着越来越重要的作用。
自动控制是指在没有人直接参与的情况下,利用外加的设备或装置(称控制装置或控制器),使机器、设备或生产过程(统称被控对象)的某个工作状态或参数(即被控制量)自动地按照预定的规律运行。
但由于电路设计不合理,设备老化或者人为操作不得当等原因,导致出现很多问题。
目前,国内外用于自动上水控制装置主要有浮球升降行程开关式、干簧管开关磁浮式、水压仪表电接点式、电极传导式等。
本文重点介绍应用较为广泛的电极传导式(以下简称电极式),并且通过单片机对水塔的水位进行智能用实时的控制。
其中主要包括以下几大要主部分。
微机控制部分,报警部分,电驱动部分。
1.2 国内外发展动态
目前较为流行的水塔自动上水系统主要经历了以下几个过程。
1、继电器式自动上水控制装置
其工作原理是通过接入220V继电器控制电路的3个探测电极来检测水位高低、使继电器闭合或开启,控制水泵电动机的开停,达到控制水位的目的,控制电路较简单。
2、晶体管式自动上水控制装置
80年代人们根据晶体管开关原理研制了晶体管式自动上水控制装置。
其水位控制器部分与目前市场上的许多产品类似,但加强了直流电源的稳压部分以及三极管导通与截止的延迟电路,以进一步提高该装置稳定可靠的运行水平。
其工作原理是水位高低控制串接探测电极的2支日体三极管的导通、关断、从而控制继电器回路达到自动(可手动)启动水泵电动机的目的来控制水位。
3、集成电路式自动上水控制装置
应用集成电路制做的工厂自动控制装置,较晶体管等分立元件制作的更加先进、灵敏、可靠和耐用。
4、基于智能微处理器的水塔自动上水控制装置
采用现代高速处理的微控制器作为控制装置的控制核心元件,能够更加准确,及时地对水塔自动上水控制装置进行控制,使得供水系统更加有力地得到了保障。
1.3本章小结
本章讲述了在通信如此发达的今天,水塔自动上水系统已经越来越受到人们的关注。
本设计主要针对现实问题,使用智能的控制芯片设计了高效率实时控制的控制系统。
2单片机电机控制系统硬件界绍
2.1硬件的基本组成:
单片机89C52、6M晶震、30pF电容、22uf/10V电容、1K电阻。
主电路包括,空气开关,控制电机的继电器等。
2.2硬件介绍
2.2.1单片机概述
单片机也被称作“单片微型计算机”、“微控制器”、“嵌入式微控制器”。
单片机一词最初是源于“SingleChipMicrocomputer”,简称SCM。
随着SCM在技术上、体系结构上不断扩展其控制功能,单片机已不能用“单片微型计算机”来表达其内涵。
国际上逐渐采用“MCU”(MicroControllerUnit)来代替,形成了单片机界公认的、最终统一的名词。
为了与国际接轨,以后应将中文“单片机”一词和“MCU”唯一对应解释。
在国内因为“单片机”一词已约定俗成,故而可继续沿用。
2.2.1.1单片机的发展历史
如果将8位单片机的推出作为起点,那么单片机的发展历史大致可以分为以下几个阶段:
第一阶段(1976—1978):
单片机的探索阶段。
以Intel公司的MCS-48为代表。
MCS-48的推出是在工控领域的探索,参与这一探索的公司还有Motorola、Zilog等。
都取得了满意的效果。
这就是SCM的诞生年代,“单片机”一词即由此而来。
第二阶段(1978—1982):
单片机的完善阶段。
Intel公司在MCS-48基础上推出了完善的、典型的单片机系列MCS-51。
它在以下几个方面奠定了典型的通用总线型单片机体系结构。
1.完善的外部总线。
MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有多机通信功能的串行通信接口。
2.CPU外围功能单元的集中管理模式。
3.体现工控特性的地址空间及位操作方式。
4.指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。
第三阶段(1982—1990):
8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。
Intel公司推出的MCS-96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。
第四阶段(1990—):
微控制器的全面发展阶段。
随着单片机在各个领域全面、深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。
2.2.1.2单片机的发展趋势
目前,单片机正朝着高性能和多品种方向发展,今后单片机的发展趋势将是进一步向着CMOS化、低功耗化、低电压化、低噪声与高可靠性、大容量化、高性能化、小容量、低价格化、外围电路内装化和串行扩展技术。
随着半导体集成工艺的不断发展,单片机的集成度将更高、体积将更小和功能将更强。
2.2.1.3单片机的特点
单片机主要有如下特点:
1.有优异的性能价格比。
2.集成度高、体积小、有很高的可靠性。
单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性和抗干扰能力。
另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。
3.制功能强。
为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。
单片机的逻辑控制功能及运行速度均高于同一档次的微机。
4.低功耗、低电压,便于生产便携式产品。
5.外部总线增加了I2C(Inter-IntegratedCircuit)及SPI(SerialPeripheralInterface)等串行总线方式,进一步缩小了体积,简化了结构。
6.单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。
2.2.2AT89C52单片机简介
AT89C52是美国ATMEL公司生产的低电压,高性能的CMOS8位单片机片内4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存储器(RAM),器件采用ATMEL公司的高密度、非易失存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。
AT89C52单片机可为你提供许多高性价的应用场合,可灵活的应用于各种控制领域。
AT89C52
图2.1单片机AT89C52
主要性能参数:
·与MCS-51产品指令系统的全兼容
·4k字节可重擦写Flash闪速存储器
·1000次可擦写周期
·全静态操作:
0Hz-24MHz
·三级加密程序存储器
·128×8字节内部RAM
·32个可编程I/O口线
·2个16位定时/计数器
·6个中断源
·可编程串行UART通道
·低功耗空闲和掉电模式
AT89C52功能特性描述:
AT89C52提供以下标准功能:
4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量中断结构,一个全双工串行通信口,片内震荡器及时钟电路。
同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件的可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,窜行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但震荡器停止工作并禁止所有部件工作直到下一个硬件复位。
2.2.3单片机的串行接口
MCS-51单片机内部有一个全双工的串行接收和发射缓冲器(SBUFF),这两个在物理上独立的接收发射器,即可以接收也可以发射数据,但接收缓冲器只可以读出不能写入,而发送缓冲器只能写入不能读出,它们的地址是99H。
这个通信口即可以用于网络通信,亦可以实现串行异步通信,还可以构成同步移位寄存器使用。
如果在串行口的输入输出引脚上加上电平转换器,就可以方便的构成标准的RS-232接口。
下面我们分别介绍。
数据通信的传输方式:
常用于数据通信的传输方式有单工、半双工、全双工和
工方式。
A.单工方式:
数据仅按一个固定的方向传送。
因为这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。
B.双工方式:
数据可以实现双向传送,但不能同时进行,实际的应用采用某种协议实现收发开关转换。
C.全双工方式:
允许双方同时进行数据双向传送,但一般全双工电路的线路和设备比较复杂。
D.多工方式:
以上三种传输方式都是同一线路传输一种频率信号,为了充分的利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分、或码分复用技术,即可实现在同一线路上资源共享功能,我们称之为多工传输方式。
串行通信的两种通信形式
A.异步通信
在这种通信方式中,接收器和发射器有各自的时钟,他们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下:
一个起始位,紧接着是若干个数据位,图是传输45H的数据格式。
B.同步通信
同步通信格式中,发送器和接收器由同一个时钟源控制,为了克服在异步传输中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送的数据量较大的
C.串行数据通信的传输速率:
串行数据传输率有两个概念,既美秒传送的位数bps(Bitpersecond)和美秒符号数-波特率(Bandrate),在具有调治解调器的通信中,波特率与调治速率有关。
2.3复位电路
上电复位采用电平方式开关复位。
如图
(2)所示。
上电复位用RC电路,电容用20
F,电阻用10K
。
2.4晶振电路
单片机的晶振频率应低于40MHZ,所以我们采用12MHZ,加两个30
F电容。
图(3)所示。
图2.3复位电路图2.4晶振电路
2.5单片机控制系统概述
通过水塔水位的高低变化来启停水泵,从而达到对水位的控制目的,这是一种常见的工艺控制。
如图2.5点划线框内所示,一般可在水塔内安装3个金属电极A、B、C,它们分别代表水位的下下限、下限与上限。
工艺要求:
当水位升到上限C以上时,水泵应停止供水;当水位降到下限B以下时,应启动水泵供水;当水位处于下限B与上限C之间,水泵应维持原有的工作状态。
图2.5 单片机水塔控制系统
2.6 硬件电路
根据工艺要求,设计的控制系统硬件电路如图所示,这是一个用单片机采集水位信号并通过继电器控制水泵的小型计算机控制系统。
主要组成部分的功能如下:
(1)系统核心部分:
采用低档型AT89C2051单片机,用P1.0和P1.1端作为水位信号的采集输入口,P1.2和P1.3端作为控制与报警输出口。
(2)水位测量部分:
电极A接+5V电源,电极B、C各通过一个电阻与地相连。
b点电平与c点电平分别接到P1.0和P1.1输入端,可以代表水位的各种状态与操作要求,共有4种组合,如表所示。
表2.1 单片机控制器动作表
C(P1.1)
b(P1.0)
水位
操作
0
0
B点以下
水泵启动
0
1
B、C之间
维持原状
1
0
系统故障
故障报警
1
1
C点以上
水泵停止
当水位降到下限B以下时,电极B与电极C在水面上方悬空,b点、c点呈低电平,这时应启动水泵供水,即是表中第一种组合;当水位处于下限与上限之间,由于水的导电作用,电极B连到电极A及+5V,则b点呈高电平,而电极C仍悬空则c点为低电平,这时不论水位处于上升或下降趋势,水泵都应继续维持原有的工作状态,见表中第二种组合;当水位上升达到上限时,电极B、C通过水导体连到电极A及+5V,因此b点、c点呈高电平,这时水泵应停止供水,如表中第四种组合;还有第三种组合即水位达到电极C却未达到电极B,即c点为高电平而b点为低电平,这在正常情况下是不可能发生的,作为一种故障状态,在设计中还是应考虑的。
(3)控制报警部分:
由P1.2端输出高电平,经反相器使光耦隔离器导通,继电器线圈KM得电,常开触点KA闭合,启动水泵运转;当P1.2端输出低电平,经反相器使光耦隔离器截止,继电器线圈J失电,常开触点断开,则使水泵停转。
由P1.3端输出高电平,经反相器变为低电平,驱动一支发光二极管发光进行故障报警。
3单片机水塔控制的软件设计
3.1KIELC简介
KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
用过汇编语言后再使用C来开发,体会更加深刻。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
下面详细介绍KeilC51开发系统各部分功能和使用。
C51工具包的整体结构,如图
(1)所示,其中uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。
开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。
然后分别由C51及A51编译器编译生成目标文件(.OBJ)。
目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。
ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。
3.1.151forDos
在Windows下直接运行软件包中DOS/C51DOS.exe然后选择安装目录即可。
完毕后欲使系统正常工作须进行以下操作(设C:
/C51为安装目录):
修改Autoexec.bat,加入path=C:
/C51/BinSetC51LIB=C:
/C51/LIBSetC51INC=C:
/C51/INC然后运行Autoexec.bat
3.1.251forWindows的安装及注意事项:
在Windows下运行软件包中WIN/Setup.exe,最好选择安装目录与C51forDos相同,这样设置最简单(设安装于C:
/C51目录下)。
然后将软件包中crack目录中的文件拷入C:
/C51/Bin目录下。
3.1.3C51与A51
(1)C51
C51是C语言编译器,其使用方法为:
C51sourcefile[编译控制指令]或者C51@commandfile其中sourcefile为C源文件(.C)。
大量的编译控制指令完成C51编译器的全部功能。
包控C51输出文件C.LST,.OBJ,.I和.SRC文件的控制。
源文件(.C)的控制等,详见第五部分的具体介绍。
而Commandfile为一个连接控制文件其内容包括:
.C源文件及各编译控制指令,它没有固定的名字,开发人员可根据自己的习惯指定,它适于用控制指令较多的场合。
(2)A51
A51是汇编语言编译器,使用方法为:
A51sourcefile[编译控制指令]或A51@commandfile其中sourcefile为汇编源文件(.asm或.a51),而编译控制指令的使用与其它汇编如ASM语言类似,可参考其他汇编语言材料。
Commandfile同C51中的Commandfile类似,它使A51使用和修改方便。
3.1.4L51和BL51
(1)L51
L51是KeilC51软件包提供的连接/定位器,其功能是将编译生成的OBJ文件与库文件连接定位生成绝对目标文件(.ABS),其使用方法为:
L51 目标文件列表[库文件列表][tooutputfile][连接控制指令]或L51 @Commandfile源程序的多个模块分别经C51与A51编译后生成多个OBJ文件,连接时,这些文件全列于目标文件列表中,作为输入文件,如果还需与库文件(.LiB)相连接,则库文件也必须列在其后。
outputfile为输文件名,缺少时为第一模块名,后缀为.ABS。
连接控制指令提供了连接定位时的所有控制功能。
Commandfile为连接控制文件,其具体内容是包括了目标文件列表,库文件列表及输出文件、连接控制命令,以取代第一种繁琐的格式,由于目标模块库文件大多不止1个,因而第2种方法较多见,这个文件名字也可由使用者随意指定。
(2)Bl51
BL51也是C51软件包的连接/定位器,其具有L51的所有功能,此外它还具有以下3点特别之处:
a.可以连接定位大于64kBytes的程序。
b.具有代码域及域切换功能(CodeBanking&BankSwitching) c.可用于RTX51操作系统RTX51是一个实时多任务操作系统,它改变了传统的编程模式,甚至不必用main()函数,单片机系统软件向RTOS发展是一种趋势,这种趋势对于186和386及68K系列CPU更为明显和必须,对8051因CPU较为简单,程序结构等都不太复杂,RTX51作用显得不太突出,其专业版软件PK51软件包甚至不包括RTX51Full,而只有一个RTX51TINY版本的RTOS。
RTX51TINY适用于无外部RAM的单片机系统,因而可用面很窄,在本文中不作介绍。
Bankswitching技术因使用很少也不作介绍。
3.1.5DScope51,Tscope51及Monitor51
(1)dScope51
dScope51是一个源级调试器和模拟器,它可以调试由C51编译器、A51汇编器、PL/M-51编译器及ASM-51汇编器产生的程序。
它不需目标板(forwindows也可通过mon51接目标板),只能进行软件模拟,但其功能强大,可模拟CPU及其外围器件,如内部串口,外部I/O及定时器等,能对嵌入式软件功能进行有效测试。
其使用方法为:
DS51[debugfile][INIT(initfile)]其中debugfile是一个Hex格式的8051文件,即待调试的文件其为可选的,可在进入dScope51后用load命令装入。
Initfile为一个初使化文件,它在启动dScope51后,在debugfile装入前装入,装有一些dScope的初使化参数及常用调试函数等。
下面是一个dScope.ini文件(fordos)的内容:
Load../../ds51/8051.iofMap0,0xffffdScope51forWindows则直接用鼠标进入,然后用load装入待调文件。
(2)tScope51
与dScope51不同的是Scope51必须带目标板,目前它可以通过两种方式访问目标板。
(1)通过EMul51在线仿真器,tScope51为该仿真器准备了一个动态连接文件EMUL51.IOT,但该方法必须配合该仿真器。
(2)通过Monitov51监控程序,这种方法是可行的,tScope51为访问Monitor51专门带有MON51.IOT连接程序,使用时可通过串口及监控程序来调试目标板。
其使用方法为:
TS51[INIT(file_name.ini)]其中file_name.ini为一个初使化文件。
进入TS51后,必须装入IOT文件,可用的有MON51.IOT及EMUL51.IOT两种,如装入MON51.IOT:
Load.C:
/C51/TS51/MON51.IOTCPUTYPE(80517)可惜的是tScope51只有forDos的版本。
(3)Monitor51
Monitor51是一个监控程序通过PC机的串口与目标板进行通信,Monitor操作需要MON51或dScope51forWindows,后面部分将对Monitor51做较为详细的介绍。
3.1.6Ishell及uVision
(1)IshellforDos
这是一个forDos的IDE,直接在命令行键入Ishell,则进入该环境,它使用简单方便。
其命令行与DOS命令行具有同样的功能,对单模块的Project直接由菜单进行编译连接,对多模块的project。
则通过批处理,BAT文件进行编译连接,然后通过菜单控制由dScope51或tScope51对程序进行调试,因为是fordos的,不做太详细介绍。
(2)uVisionforWindows
uVisionforWindows是一个标准的Windows应用程序,它是C51的一个集成软件开发平台,具有源代码编辑、project管理、集成的make等功能,它的人机界面友好,操作方便,是开发者的首选,具体配置及使用见第五部分。
C51编译器的控制指令分为三类:
源文件控制类,目标文件控制类及列表控制类。
3.1.7KIELC使用
1.源文件控制类
NOEXTEND:
C51源文件不允许使用ANSIC扩展功能。
DEFINE(DF):
定义预处理(在C51命令行)。
2.目标文件(Object)控制类:
COMPACTLARGESMALL选编译模式DEBUG(DB)包含调试信息,以供仿真器或dSCope51使用。
NOAMAKE(NOAM)禁止AutoMake信息记录NOREGPARMS禁止用寄存器传递参数OBJECTEXTEND(OE)Object文件包含附加变量类型信息OPTIMIZE(OT)指定优化级别REGFILE(RF)指定一个寄存器使用的文件以供整体优化用REGISTERBANK(RB)指定一个供绝对寄存器访问的寄存器区名SRC不生成目标文件只生成汇编源文件 其它控件不常用。
3.列表文件(listing)控制类:
CODE(CD):
向列表文件加入汇编列表LISTINCLUDE(LC):
显示indude文件SYMBOLS(SB):
列表文件包括模块内所有符号的列表WARNINGLEVEL(WL):
选择“警告”级别
3.1.8dScope51的使用
1.dScope51forDos
总的来说dScope51具有以下特性:
l 高级语言显示模式l 集成硬件环境模拟l 单步或“GO”执行模式l
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 水塔 自动 上水 论文