自动化1101韩振松水位监测报警系统设计.docx

上传人:b****8 文档编号:11470700 上传时间:2023-03-01 格式:DOCX 页数:16 大小:29.82KB
下载 相关 举报
自动化1101韩振松水位监测报警系统设计.docx_第1页
第1页 / 共16页
自动化1101韩振松水位监测报警系统设计.docx_第2页
第2页 / 共16页
自动化1101韩振松水位监测报警系统设计.docx_第3页
第3页 / 共16页
自动化1101韩振松水位监测报警系统设计.docx_第4页
第4页 / 共16页
自动化1101韩振松水位监测报警系统设计.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

自动化1101韩振松水位监测报警系统设计.docx

《自动化1101韩振松水位监测报警系统设计.docx》由会员分享,可在线阅读,更多相关《自动化1101韩振松水位监测报警系统设计.docx(16页珍藏版)》请在冰豆网上搜索。

自动化1101韩振松水位监测报警系统设计.docx

自动化1101韩振松水位监测报警系统设计

自动化1101韩振松-水位监测报警系统设计

自动化1101韩振松-水位监测报警系统设计水位监测报警系统设计院系:

机电与自动化学院专业班:

自动化1101班姓名:

韩振松学号:

20111184026指导教师:

孟骏2015年5月水位监测报警系统设计TheSystemDesignofMonitoringandAlarmingLevel摘要本设计是一款基于AT89C52单片机的用于实现实时监测容器内的水位高度和上限水位报警功,自带矩阵键盘实时设定上限水位,制作相对比较成本低、体积小巧、可靠性能高、功能完备和操作简单实用是本单片机开发板的主要特点。

本开发板采用爱特梅尔公司生产设计的AT89C52单片机为主控模块,板载资源主要包括水位高度采集处理模块、矩阵键盘输入模块、串行通信模块、报警端口信号接入模块、液晶显示模块、ADC0809模数转换模块等。

针对各个硬件模块都设计了相应的软件模块,包括报警端口信号接入程序、LCD12232液晶显示程序和矩阵键盘的扫描程序、ADC0809模数转换程序、水位高度模拟采集程序等。

本开发板拥有通常单片机开发板的一般结构,利用程序下载器下载到单片机或者把单片机单独取下来放在自己以前的单片机开发板上下载程序进入单片机,一般是使用下载器下载,这样使设计者调试工作简化,加快了调试工作的进度。

本开发板包含了两种基于单片机的水位显示功能,它们分别是设定水位和实时监测水位功能,将采集水位高度与上限水位报警有机地结合在一起,使它的安全提示性更强,适用性更广,具有一定的实用价值和现实意义。

关键词:

单片机通信液晶显示矩阵键盘水位高度采集IAbstractThisdesignisbasedonareal-timemonitoringalarmfunctionfortherealizationofwaterlevelinthecontainerheightandlimitwaterlevelAT89C52microcontroller,withmatrixkeyboardreal-timelimitwaterlevel,relativelylowmanufacturingcost,smallvolume,highreliability,completefunctionandsimpleandpracticaloperationisthemainfeaturesoftheMCUdevelopmentboard.ThedevelopmentboardbyAtmelCorpproductionanddesignoftheAT89C52microcontrollerasthemaincontrolmodule,theon-boardresourcesmainlyincludewaterlevelacquisitionmodule,matrixkeyboardinputmodule,serialcommunicationmodule,alarmsignalportaccessmodule,LCDmodule,ADC0809analogdigitalconversionmodule.Foreachhardwaremoduleisdesignedwiththecorrespondingsoftwaremodules,includingalarmsignalportaccessprocedures,LCD12232displayprogramandmatrixkeyboardscanningprogram,ADC0809analogdigitalconversionprocess,thewaterlevelsimulationacquisitionprogrametcThegeneralstructureofthedevelopmentboardhasusuallyMCUdevelopmentboard,usingtheprogramdownloaddownloadedtothemicrocontrollerorthesingle-chipmicrocontrollerdevelopmentboardtakedownontheirpreviousdownloadprogramintotheMCU,isusedtodownload,sothatthedesignerdebuggingworkissimplified,speeduptheworkschedule.ThedevelopmentboardcontainstwokindsofdisplayfunctionofMCUbasedonwaterlevel,theyarethelevelsetwaterlevelandreal-timemonitoringfunction,willgatherwaterheightandlimitwaterlevelalarmtogetherorganically,makeitmoresafetytips,wideapplicability,andhascertainpracticalvalueandpracticalsignificance.Keywords:

MCUcommunicationLCDMatrixkeyboardTheheightofthewatercollection目录摘要IAbstractII绪论11系统方案21.1设计方案21.2设计所要达到的要求32硬件部分42.1硬件结构42.2硬件电路部分42.2.1单片机主控制模块42.2.2蜂鸣器报警模块62.2.3水位传感器实时检测水位模块62.2.4串行通信模块82.2.5LCD12232液晶显示模块.92.2.6矩阵键盘模块112.2.7ADC0809模数转换模块123软件部分153.1整体程序设计153.2矩阵键盘模块程序设计.153.3LCD12232液晶显示模块程序设计173.4ADC0809模数转换模块程序设计.244系统板设计及测试264.1系统电路原理图设计264.2系统板PCB设计264.3系统板调试27结论31致谢32参考文献33附录1电路原理图.34附录2主体程序.350绪论单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上,这就相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。

理论知识与动手操作相结合对于学习单片机是很重要的,单片机的学习并不能只限定在某一款或者某一种型号的单片机,而是通过学习一些基本的简单的单片机的使用,再掌握单片机硬件接线原理和软件设计的思想,为的是在将来在以后更熟悉各种型号单片机,让各种型号单片机为自己服务,用单片机控制电路达到自己想要实现的功能。

本课题设计的是基于AT89C52单片机的水位监测报警系统开发板,拥有通用单片机开发板的一般结构。

在学习方面,利用开发程序并使用烧写器下载到单片机,使设计者调试工作简化更有效率,加快了调试工作的进度和发展。

本开发板包含了两种基于单片机的水位显示功能,它们分别是实时水位监测和设定上限水位报警,将实时水位和报警水位有机地结合在一起,使它工作更有实用性和可靠性,适用性更广,通过对开发板上不同模块进行调试和测试,提高检测硬件电路故障问题的能力,并且也可以提高编程的能力,同时通过调试过程中出现的现象对所用的硬件也有更深一步的认识,这样既可以让自己使用一些画原理图和pcb板的软件更加熟练,单片机和各种芯片的使用,硬件焊接调试,查找故障等等能力得到提升,而且让自己软件编程更具有编程思维,更能编出自己想要实现某种功能的程序。

在现实方面,水位监测报警系统在很多地方都有很实在的作用,比如说在工业生产中,常常需要测量液体液位。

在各种工厂中,保持正常的锅炉汽包水位、除氧器水位、汽轮机凝气器水位、高、低压加热器水位等,是让这些机械设备安全运行的可靠保障;在学校的教学和一些学校的科研中,也会遇到来监测液位的装置。

除此之外,我国的水资源很丰富,但我们对水资源利用管理还有不到位的地方,存在一些严峻的问题。

像有些地方常年干旱,有些地方则是经常发生水灾,这个时候,我们要合理的利用国内的水库,用水库里面的存水去解决干旱地方的问题,用水库来存储更多发生水灾的时候多余的水量,水位监测这个时候显得尤为重要,在一些湖泊,江河,及时、实时监测水位的变化对我们国家的发展也起着很重要的作用。

11系统方案1.1设计方案图1-1总体硬件结构框图此设计开发板总框图如图1-1所示,共分为九个模块,分别是:

AT89C52控制模块、蜂鸣器报警模块、水位传感器实时检测水位模块、MAX232模块、LCD12232液晶显示模块、复位电路模块、时钟电路模块、ADC0809模数转换模块、矩阵键盘模块。

其中以AT89C52单片机作为主控制器,就像是人的大脑一样,存放开发程序的地方,指挥所有其他模块工作的统领;蜂鸣器报警模块是在单片机里面程序实现达到上限位水位时候让蜂鸣器报警,让工作人员及时知道水位高度情况,起到一个通知作用;水位传感器实时检测水位模块主要是用来检测容器内水位高度,检测得到的是一个电压信号,本次毕业设计用的是一个滑动变阻器的分压来模拟水位检测的水位高度,得到的电压信号是0到5V之间;MAX232模块主要是用来下载程序进入单片机,起到一个通信作用,让设计者的工作更加简单,软件的调试更有效率;LCD12232液晶显示模块一开始用来显示毕业设计的名字和设计者的信息,然后就是用来显示实时的水位高度和已经设定水位报警值;时钟电路模块就是单片机实现功能的节拍系统,可以形象地比喻为人类的心脏,人为规定好一个周期,单单片机AT89C52C52主控制模板LCD12232时钟电路复位电路水位传感器报警模块MAX232模块ADC0809模数转换模块矩阵键盘电源电路2片机要干的事情,这些事情要在规定时间做完;单片机在刚开始运行时候会用到它的复位功能,复位电路模块就是让单片机回到最开始的那种状态;ADC0809模数转换模块就是把水位变送器实时检测到的水位高度信号送到芯片转换成数字信号,再把这个信号送给单片机;矩阵键盘键盘模块是用来设定上限位水位报警值的,用键盘按键比用增加和减少两个键方便快捷;这个系统的工作过程是这样的,首先通过矩阵键盘模块设定容器内上限水位报警值并且在LCD12232液晶显示模块上显示在第二行,然后水位传感器实时检测水位模块把容器内水位值检测到送到ADC08009模数转换模块转换成数字信号送给单片机,然后经过单片机内程序把刚刚检测到的实时水位值送给LCD12232送显在第一行,然后调整容器内水位的高度值,直到水位高度值达到了之前设定水位上限值,然后经过单片机程序让蜂鸣器报警模块发出报警声音提示工作人员采取必要措施,LCD12232是串行通信方式,一次性送一串数据送给单片机只要三根线连接单片机就可以实现在屏幕上显示内容。

1.2设计所要达到的要求在此开发板上可以正确完成以下功能:

(1)LCD12232液晶显示模块:

LCD12232字符型液晶显示,主要显示两行内容,第一行显示内容是水位当前值,第二行是水位设定报警值,水位当前值方便工作人员实时监测看守水位,提高安防场所的安全系数,减少浪费和损失。

(2)串口通信模块:

MAX232能将计算机里面的程序下载到单片机开发板里面。

(3)蜂鸣器报警模块:

通过观察显示屏幕上显示的当前水位值达到设定报警值时候,蜂鸣器报警模块里面的蜂鸣器就开始发出声音来提示工作人员现在水位已经达到设定的上限位值,工作人员应该采取相应的措施。

(4)水位传感器实时检测水位模块:

水位传感器能把当前水位值检测出来通过ADC0809模数转换模块转换成数字信号送给单片机然后让单片机把这些信息送显给LCD12232液晶显示屏上显示出来。

(5)矩阵键盘模块:

在键盘上按键能够正常地显示在LCD12232液晶显示屏的第二行上,用来设定水位上限警戒值。

(6)ADC0809模数转换模块:

能够把水位传感器实时检测到的水位高度这个3模拟信号及时转换成数字信号送入单片机,让单片机在程序里面反映出来然后送显。

2硬件部分2.1硬件结构本设计的硬件结构主要包括:

AT89C52单片机主控制器模块、蜂鸣器报警模块、水位传感器实时检测水位模块、MAX232通信模块、LCD12232液晶显示模块、矩阵键盘模块、ADC08098模数转换模块。

2.2硬件电路部分2.2.1单片机主控制模块此系统单片机最小系统模块包含有AT89C52单片机芯片、时钟电路、复位电路。

选择单片机的晶振频率为6MHz,因为接ADC0809的时钟接口里面的频率不得高于1MHz,而单片机ALE接口出来的频率是晶振频率的六分之一,正好是1MHz,恰好能让ADC0809正常进行模数转换工作。

为什么选择AT89C52的原因是因为相对于AT89C51单片机,它有以下优点:

一是AT89C52的程序存储空间为8K,AT89C51的程序存储空间为4K,很明显AT89C52的存储空间比AT89C51大一倍,存放一般的程序时候不太需要考虑程序占用内存的大小。

二是因为AT89C52多了一个T2定时器,所以比AT89C51多了一些寄存器,在串行通信中波特率的设置范围更广。

三是前者的RAM空间相对比后者大些,是后者的两倍。

其中,XTAL1和XTAL2为时钟引脚,它提供单片机的时钟控制信号。

RST为复位引脚,只要该引脚连续出现两个机器周期的高电平就可以达到复位操作,使单片机回到初始状态。

RXD为串行口输入端,TXD为串行口输出端。

电路如图2-1所示[1,7,8,9]。

4图2-1单片机最小系统原理图其中电源电路是用来给单片机供电。

AT89C52单片机的电压工作范围:

4.0V-5.5V,所以通常给单片机外接5V直流电源,本次设计的也是外接5V电源。

其中时钟电路就是给单片机提供时钟振荡信号,单片机执行的快慢取决于时钟电路,AT89C52单片机时钟频率范围:

0-24MHz。

其中晶振频率是选择不是常用的12MHz而是6MHz,因为要配合ADC0809模数转换模块的转换,时钟电路的接线图方式如下图2-2所示[14]:

图2-2时钟电路原理图其中复位电路的作用是用来确定单片机工作的起始状态,完成单片机的启动过程。

单片机接通电源时产生复位信号,完成单片机启动,确定单片机起始工作状态。

5复位电路的接线图方式如下图2-3所示[12]:

图2-3复位电路原理图2.2.2蜂鸣器报警模块本设计的蜂鸣器报警模块发出声音的部分是用喇叭,单片机接口用了一个I/O口,即P1.7口,其中把P1.7口接在三极管上,因为三极管的放大电流作用,具体这个模块的电路连接图如下图2-4所示:

图2-4蜂鸣器报警模块电路图由于是要驱动蜂鸣器,让它正常工作,本设计采用三极管放大信号来驱动蜂鸣器,三极管的发射极接单片机的P1.7口,当正常情况下,喇叭不会响,因为经过实验用万用表测过,P1.7是低电平,此时这个NPN的三极管发射结这边几乎不工作,Ib=0,然后集电极电流Ic=0,故经过喇叭的电流很小,喇叭不能正常工作。

当P1.7口变为高电平的时候,发射结正偏,集电结反偏,三极管处于放大区的状态,那时候集电极电流Ic=nIb,集电极电流Ic被放大,这样喇叭就能正常工作了。

所以只需要在程序里面设置好,当前水位值如果一旦大于或者等于设定警戒值的时候,喇叭就是正常工作即可,那时候把P1.7口置高就可以[3,11]。

62.2.3水位传感器实时检测水位模块本设计使用的水位传感器来测量容器内的液位,液位传感器(静压液位计/液位变送器/液位传感器/水位传感器)是一种被用来测量液位的压力传感器。

静压投入式液位变送器(液位计)是根据所测得液体静压力与该液体的高度成一定比例的原理,采用国外先进的隔离型扩散硅敏感元件或陶瓷电容压力敏感传感器,将静压转换为电信号,再经过温度补偿和线性修正,把液位高度转化成标准电信号(一般为4~20mA/1~5VDC)。

液位传感器的外观实物图如下图2-5所示:

图2-5水位传感器实物图液位传感器一般有很多类型,但是大体分为两类,一类是为接触式液位传感器,包括法兰静压或者法兰差压液位变送器,磁性液位变送器,浮球式液位变送器,投入式液位变送器,电动内浮球液位变送器,电动浮筒液位变送器,电容式液位变送器,待服液位变送器,磁致伸缩送液位变送器等等。

还有另外一类液位变送器,它们按类型分被称为非接触式,分为超声波液位变送器,红外线液位变送器,雷达液位变送器等等静压投入式液位变送器(液位计)适用于石油化工、冶金、电力、制药、供排水、环保等系统和行业的各种介质的液位测量。

精巧的结构,简单的调校和灵活的安装方式为用户轻松地使用提供了方便。

4~20mA、0~5v、0~10mA等各种各样的标准信号给用户随便选择,常见的选择一般是输出方式选择0-5V的电压信号输出,这样更利于接到ADC0809模数转换模块上,更利于转换。

因为传感器的类型太多,所以需要对这种液位传感器进行比较,然后再选择出合适的传感器来测量液位,不同液位传感器对比如下:

(1)浮筒式液位传感器是将磁性浮球改为浮筒,液位传感器是基于阿基米7德浮力原理设计的。

浮筒式液位变送器是利用微小的金属膜应变传感技术来测量液体的液位、界位或密度的,它在工作时可以通过按键来进行一些设置和操作,进行比较常规的设定来使它正常工作。

(2)浮球式液位传感器由磁性浮球、测量导管、信号单元、电子单元、接线盒及安装件组成,一般磁性浮球的比重小于0.5,可以让其浮在液面之上并沿测量导管上下移动,导管内装有测量元件,故每次浮球在一个地方得到的被测信号是不一样的,它可以在外磁作用下将被测液位信号转换成正比于液位变化的电阻信号,并将电子单元转换成4~20mA或其它标准信号输出,一般常见的就是转换成0-5V的电压信号来输出。

(3)静压式液位传变送器利用液体静压力的测量原理工作,这个液位传感器一般选用硅压力测压传感器将测量到的压力转换成电信号,再经放大电路放大和补偿电路补偿,最后以4~20mA或0~10mA电流方式输出。

综上对比,本设计选用浮球式的液位变送器,因为浮球式的液位变送器成本低,使用简单、方便,价格合理,浮球式的水位传感器中把浮球放在水面上,浮球挨着测量的导管,导管内有一个电阻相当于一个滑动变阻器,浮球相当于滑动变阻器的动端,后来就把这个电路中的电阻分成了两部分,结果就有两部分的电压,其中一个部分的电压信号来表示液位的高度。

2.2.4串行通信模块在通信领域内,进行数据的传输通信一般常见的有两张方式,一种是串行通信,另外一种是并行通信,而我们这次设计的使用的通信方式是串行通信。

串行通信是指使用一条数据线,将数据一位一位地依次传输,即为一串串的数据传输,每一位数据占据一个固定的时间长度。

这样做的好处就是方便、快捷,最重要的是用的线不多就可以实现数据的通信。

这次设计用的是MAX232和DB9连接起来,然后再接在单片机进行传输信息,直接把插头插在DB9上,这样就实现直接让外部设备与计算机进行通信,用的方式是串行通信,其中芯片232的9口和10口就是分别用来一个发送一个接受信息的端口,接的是单片机的P3口中第二功能的TXD口和RXD口,串行通信模块电路连接原理图如下图2-6所示:

8图2-6串行通信模块电路图RS232串行通信模块RS232是由美国电子工业协会(ElectronicIndustriesAssociation,EIA所制定的一种串行异步传输物理标准接口。

对于一般双工通信,一条发送线、一条地线及一条接收线就可实现简单的通信。

但通信距离较短,一般为20米左右。

MAX232芯片是美信公司的RS232标准的接口芯片,使用+5v单电源供电,是单片机与PC机进行串口通信的电平转换芯片,可完成TTL←→RS232双向电平转换以及图2-7MAX232封装引脚图RS485→RS232单向电平转换。

MAX232芯片引脚如图2-7所示。

2.2.5LCD12232液晶显示模块LCD12232是一种内置8192个16*16点汉字库和128个16*8点ASCII码字符集图形点阵液晶显示器,它主要由行驱动器或者列驱动器及128x32全点阵液晶显示器组合而成。

而且它也可以完成图形显示,也就是可以显示8个汉子在每一行,一共有两行,地址开头分别是0x80H和0x90H,也就是该液晶屏一页总共能显示十六个汉子每行8个,总共32个字符,每行16个字符,但是要想让LCD122232正常显示必须是定义显示的字符数是偶数个,也就是说每行中,只显示偶数个字符,9如果是奇数个可能会出现乱码,所以确实如果显示的是奇数个字符的时候,就应该定义显示补充一个空格,这样就是偶数个字符,就能正常显示了。

先对LCD12232液晶显示屏的一些主要参数和性能进行一些简单的介绍,电源VDD一般是接+5V,如果电源电压低于4.0V的话LED背光则需要另外的供电,显示内容上面刚刚说过,屏幕是全屏幕点阵,ROM的大小为2M,总共提供128个字符,16*8点阵,频率为2MHz,工作温度就是一般常温都可以[4]。

LCD12232液晶显示模块的外部接口如下表2-1所示:

表2-1LCD12232外部接口管脚号管脚名称LEVER管脚功能描述1VSS0V电源地2VCC5V电源正3VEE-对比度调整4RS(CS)H/LRS=”H”,表示DB7-DB0为显示数据RS=”L”,表示DB7-DB0为显示指令数据数据5R/W(SID)H/LR/W=”H”,E=“H”,,数据被读到DB7-DB0R/W=”L”,E=”H→L”,,DB7-DB0的数据被写到IR或者DR6E(CLK)H/L使能信号7DB0H/L

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1