51单片机的水塔控制要点.docx
《51单片机的水塔控制要点.docx》由会员分享,可在线阅读,更多相关《51单片机的水塔控制要点.docx(16页珍藏版)》请在冰豆网上搜索。
51单片机的水塔控制要点
电子系统综合创新设计
水塔控制设计
院系:
电子与电气工程学院
专业:
电子信息工程
班级:
0
姓名:
0
指导老师:
0
第1章绪论.................................................2
1.1概述...................................................2
1.2设计要求及意义...........................................2
第2章总体方案论证与设计...................................3
2.1总体设计方案............................................3
2.2设计要求及意义...........................................3
第3章系统硬件设计.........................................4
3.1总体设计方案............................................4
3.2系统组成................................................4
第4章系统的软件设计.......................................11
4.1水位控制程序............................................11
4.2使用说明与注意事项.......................................11
第5章系统调试与测试结果分析...............................12
5.1软件测试.......................................................12
结论........................................................12
参考文献....................................................13
附录1程序..................................................14
附录2仿真效果图............................................16
第1章绪论
水位控制在日常生活及工业领域中应用相当广泛,比如水塔、地下水、水电站等情况下的水位控制。
自动检测水位的检测系统能根据水位变化的情况自动调节。
本次课题采用单片机进行主控制,利用水的导电性测量水位的变化,把测量到的水位变化转换成相应的电信号,用单片机对接收到的信号进行数据处理,完成水位的检测、控制及故障报警等功能。
1.1概述
随着科学技术的发展,单片机作为嵌入式微控制器在工业测控系统,智能仪器和家用电器中得到广泛应用。
在实时检测和自动控制的单片机应用系统中单片机往往是作为一个核心部件来使用。
水塔水位控制系统的基本要求是能够在无人监控的情况下自动进行工作,在水塔中的水位到达水位下限时自动启动电机,给水塔供水;在水塔水位达到水位上限的时候自动关闭电机,停止供水。
水塔是在日常生活和工业应用中经常见到的蓄水装置,通过对其水位的控制对外供水以满足需要,其水位控制具有普遍性。
不论社会经济如何飞速,水在人们正常生活和生产中起着重要的作用。
一旦断了水,轻则给人民生活带来极大的不便,重则可能造成严重的生产事故及损失,从而对供水系统提出了更高的要求,满足及时、准确、安全充足的供水。
如果仍然使用人工方式,劳动强度大,工作效率低,安全性难以保障,由此必须进行自动化控制系统的改造。
从而实现提供足够的水量、平稳的水压、水塔水位的自动控制有设计低成本、高实用价值的控制器。
该设计采用分立的电路实现超高、低警戒水位处理实现自动控制而达到节能的目的提高了供水系统的质量。
1.2设计要求及意义
水位控制在日常生活及工业领域中应用相当广泛,比如水塔、地下水、水电站等情况下的水位控制。
自动检测水位的检测系统能根据水位变化的情况自动调节。
本次课题采用单片机进行主控制,利用水的导电性测量水位的变化,把测量到的水位变化转换成相应的电信号,用单片机对接收到的信号进行数据处理,完成水位的检测、控制及故障报警等功能。
本次课程设计对我有以下意义:
1通过这次课程设计,加深对单片机理论方面的理解。
2掌握单片机的内部模块的应用。
3了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片器应用系统打下良好基础。
4通过简单课题的设计练习,了解必须提交的工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。
第2章总体方案论证与设计
2.1总体设计方案
现系统的功能,一是水位控制电路,二是水质检测电路,并且对于整个系统我们采用顺序控制。
首先进行水位控制,水位电路根据输入不同的模拟量,转换为不同的数字量,经过和设定的值进行比较,通过P1.2口对电机进行控制。
水位控制电路完成其预定功能后,便自动转到延时子程序,系统经过一定的预定延时之后,转去执行水质检测电路。
检测电路根据不同的模拟量的输入,转换为不同的数字量,经过和设定的值进行比较后,由单片机产生不同的驱动信号,从而使对应的二极管发光,以显示不同的水质状态。
水质检测结束,系统自动返回到程序的入口处,继续进行水位的检测和控制。
如此往复循环达到对水塔水位的自动控制和对水塔水质的检测和显示,从而满足水位和水质的要求。
2.2系统组成
水位检测电路可以通过51单片机的管脚来感知水位的变化来控制是否进水或是停止进水。
输出端可由一个端口来控制电机的运行状态,进而控制水泵的工作。
T通过51单片机控制水质状况的显示。
用数码管来显示水位的高低,作用于单片机,进而控制电机的运转。
第3章系统硬件设计
3.1总体设计方案
分析课题可知应分两个电路来实现系统的功能,一是水位控制电路,二是显示电路,并且对于整个系统我们采用顺序控制。
首先进行水位控制,水位电路根据输入不同的量,对电机进行控制。
水位控制电路完成其预定功能后,便自动转到延时子程序,系统经过一定的预定延时。
检测电路根据不同的模拟量的输入,转换为不同的数字量,经过和设定的值进行比较后,由单片机产生不同的驱动信号,从而使数码管显示相应的数字。
如此往复循环达到对水塔水位的自动控制和显示,从而满足水位的要求。
硬件设计方框图如图3-1所示。
图3-1硬件设计方框图
3.2系统组成
水位检测电路可以通过51单片机的管脚来感知水位的变化来控制是否进水或是停止进水。
输出端可由一个端口来控制电机的运行状态,进而控制水泵的工作。
如图
图3-2电路连接图
1、晶振电路:
图3-3晶振电路图
晶振电路:
典型的晶振取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合)/12MHz(产生精确的uS级时歇,方便定时操作)
单片机:
一片AT89S51/52或其他51系列兼容单片机
在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。
高级的精度更高。
有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。
晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。
单片机晶振的作用是为系统提供基本的时钟信号。
通常一个系统共用一个晶振,便于各部分保持同步。
有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。
2、复位电路:
复位电路:
由电容串联电阻构成,由图并结合"电容电压不能突变"的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位.一般教科书推荐C 取10u,R取8.2K.当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机周期的高电平.至于如何具体定量计算,可以参考电路分析相关书籍.
复位电路的用途 :
单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。
单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。
单片机复位电路如下图:
图3-4复位电路图
复位电路的工作原理 :
51单片机要复位只需要在第9引脚接个高电平持续2US就可以实现。
在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。
所以可以通过按键的断开和闭合在运行的系统中控制其复位。
在电路图中,电容的的大小是10uF,电阻的大小是10k。
所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。
也就是说在电脑启动的0.1S内,电容两端的电压时在0~3.5V增加。
这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。
所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。
在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。
所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。
在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。
当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。
随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。
根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。
单片机系统自动复位。
总结:
复位电路的原理是单片机RST引脚接收到2US以上的电平信号,只要保证电容的充放电时间大于2US,即可实现复位,所以电路中的电容值是可以改变的。
按键按下系统复位,是电容处于一个短路电路中,释放了所有的电能,电阻两端的电压增加引起的。
3、直流电机
直流电机控制方法和工作原理:
直流电动机转速的控制方法可分为两类:
励磁控制法与电枢电压控制法。
励磁控制法控制磁通,其控制功率虽然小但低速时受到磁场饱和的限制,高速时受到换向火花和转向器结构强度的限制,而且由于励磁线圈电感较大动态响应较差。
所以常用的控制方法是改变电枢端电压调速的电枢电压控制法。
传统的改变端电压的方法是通过调节电阻来实现的,但这种调压方法效率低。
随着电力电子技术的发展,创造了许多新的电枢电压控制方法。
其中脉宽调制(Pulse Width Modulation,PWM)是常用的一种调速方法。
其基本原理是用改变电机电枢电压的接通和断开的时间比(即占空比)来控制马达的速度,在脉宽调速系统中当电机通电时,其速度增加,电机断电时其速度降低。
只要按照一定的规律改变通断电的时间,就可使电机的速度保持在一稳定值上。
直流电机可按其结构、工作原理和用途等进行分类,其中根据直流电机的用途可分为以下几种:
直流发电机(将机械能转化为直流电能)、直流电动机(将直流电能转化为机械能)、直流测速发电机(将机械信号转换为电信号)、直流伺服电动机(将控制信号转换为机械信号)
直流电机电路模型如图3-5所示,磁极N、S间装着一个可以转动的铁磁圆柱体,圆柱体的表面上固定着一个线圈abcd。
当线圈中流过电流时,线圈受到电磁力作用,从而产生旋转。
根据左手定则可知,当流过线圈中电流改变方向时,线圈的方向也将改变,因此通过改变线圈电路的方向实现改变电机的方向。
直流电机模型见图3-5。
图3-5直流电动机电路模型
图3-6直流电动机电路图
当P1.7口为高电平时,会出发继电器开关,从而驱动电机的工作。
4、指示灯电路
图3-7指示灯电路图
当电机工作的时候,指示灯会亮,电机不工作指示灯就不亮。
5、数码管
七段数码管介绍 :
7段LED数码管,则在一定形状的绝缘材料上,利用单只LED组合排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示出0-9的数字。
LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。
右图是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。
图3-87段LED数码管引脚图(管脚图)
第4章系统的软件设计
4.1水位控制程序
一个应用系统,要完成各项功能,首先必须有较完善的硬件作保证。
同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。
甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单。
具体程序见附录1
4.2使用说明与注意事项
该电路设计比较简单,功能稳定,适合于实际的水塔水位控制中使用。
作为一个很实用的自动控制装置,为了工作人员的操作的方便,下面对其使用方法与注意事项作如下简单描述:
使用水位检测和调节功能是一个完全自动的过程,不过仿真电路是需要人为改变输入量的变化,在水位的输入量就是通过浮标来改变输入量,利用浮力原理使浮标带动触头工作,进而影响直流接触器动作,控制交流接触器工作,实现水塔无水时自动开启水泵电动机,水满时自动关闭的自动控制目的,整个由单片机来实现对电机的调节。
本次设计中的电机调节电路简单的接了个5V的直流电机来实现控制。
第5章系统调试与测试结果分析
5.1软件调试
本设计主要是用proteus软件绘图以及伟福软件进行编程仿真的。
调试步骤由两个部分组成:
首先,确定程序中错误的确切性质和位置;然后,对程序代码进行分析,确定问题的原因,并设法改正这个错误。
具体地说,由以下步骤组成:
1.从错误的外部表现入手,确定程序中出错的位置;
2.分析有关程序代码,找出错误的内在原因;
3.修改程序代码,排除这个错误;
4.重复进行暴露了这个错误的原始测试以及某些回归测试,以确保该错误确实被排除且没有引入新的错误;
结论
随着科学技术的迅猛发展,单片机被广泛应用于人们生活的各个领域,社会需要大量掌握单片机技术的人才,单片机的使用方法应该是我们熟练掌握的内容,水塔水位的单片机控制系统水塔水位控制在铁路、油田、化工等部门有着广泛的应用。
通过这次的课程设计,理论加上实践,我掌握了80C—51单片机的基本工作原理和基本编程方法,在此过程中我还熟悉了单片机的软硬件开发环境,提高了综合演练单片机的编程能力,并且亲身体验了单片机的开发成果。
此次课程设计之后,我对单片机知识点了解了更多,脑海中能把一个个分离的知识模块联系成整体,让后对其进行分析与比较。
在单片机课程中的部分知识学会了融会贯通,也让我深刻认识到“学以致用”的重要性。
参考文献
[1]李川,汪秋蒙.ISP技术的原理及实现方法[J].科技资讯.2007,35期:
93-94.
[2]Philips.74HC595.datasheet.PhilipsSemiconductors.2003Jun25
[3]周润景.基于Proteus的电路与单片机仿真系统设计与仿真[M].北京航空航天大学出版社.2005.
[4]张毅刚.单片机原理及应用[M].高等教育出版社.2003:
160-190.
[5]彭介华.电子技术课程设计指导[J].北京:
高等教育出版社,1997.
[6]周向红.51系列单片机应用于实践教程[M].北京航空航天大学出社.2005:
75-73
附录1程序
#include
//定义一个数组,使数码管显示的数字和数组元素的下标相等
unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};
sbitshuiman=P1^0;//水满
sbitsw5=P1^1;//水位5
sbitsw4=P1^2;//水位4
sbitsw3=P1^3;//水位3
sbitsw2=P1^4;//水位2
sbitsw1=P1^5;//水位1
sbitshougong=P1^6;//手工上水
sbitdianji=P1^7;//电机控制位
sbitstate=P3^7;//电机工作指示
/*延时程序*/
voiddelay02s(void)
{
unsignedchari,j,k;
for(i=100;i>0;i--)
for(j=100;j>0;j--)
for(k=248;k>0;k--);
}
main()
{
P0=0;
while
(1)
{//************************传感器是设计的一次只能触发一个传感器单?
****************************
//水满
if(shuiman==0&&sw5==1&&sw4==1&&sw3==1&&sw2==1&&sw1==1)//当唯一的闭合一个传感器单元:
水位6时发生
{
dianji=1;//关电机
state=1;//电机工作指示灯熄灭
P0=table[6];//显示水位深度:
6****已满
delay02s();//延时一段时间让数码管显示给人以提示:
水已满
}
//水位5
if(shuiman==1&&sw5==0&&sw4==1&&sw3==1&&sw2==1&&sw1==1)//当唯一的闭合一个传感器单元:
水位5时发生
{
P0=table[5];//显示水位深度:
5
}
//水位4
if(shuiman==1&&sw5==1&&sw4==0&&sw3==1&&sw2==1&&sw1==1)//当唯一的闭合一个传感器单元:
水位4时发生
{
P0=table[4];//显示水位深度:
4
}
//水位3
if(shuiman==1&&sw5==1&&sw4==1&&sw3==0&&sw2==1&&sw1==1)//当唯一的闭合一个传感器单元:
水位3时发生
{
P0=table[3];//显示水位深度:
5
}
//水位2
if(shuiman==1&&sw5==1&&sw4==1&&sw3==1&&sw2==0&&sw1==1)//当唯一的闭合一个传感器单元:
水位2时发生
{
P0=table[2];//显示水位深度:
2
}
//水位低
if(shuiman==1&&sw5==1&&sw4==1&&sw3==1&&sw2==1&&sw1==0)//当唯一的闭合一个传感器单元:
水位1时发生
{
dianji=0;//开电机
state=0;//电机工作指示灯打开
P0=table[1];//显示水位深度:
1
}
//手工上水
if(shougong==0)//当按手工上水按钮时发生
{
dianji=0;//开电机
state=0;//电机工作指示灯打开
P0=table[0];//显示0表示手工上水已有反应
delay02s();//延时一段时间让数码管显示给人以提示:
已开始手工上水
}
附录2仿真效果图