基于单片机的水位检测报警系统_第1页
基于单片机的水位检测报警系统_第2页
基于单片机的水位检测报警系统_第3页
基于单片机的水位检测报警系统_第4页
基于单片机的水位检测报警系统_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

XX学院单片机系统设计三级工程设计说明书〔2023/2023学年第二学期〕题目:基于单片机的水位检测报警系统_专业班级:XXXXXXXX学生姓名:XXXXX学号:XXXXX指导教师:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX设计周数:XXXXXXXXX设计成绩:XXXX年XX月XX日XX学院单片机系统设计三级工程任务书一、题目:基于单片机基于单片机的水位检测报警系统设计与实现二、参与工程班级:XXXXXXXXXXXXXX三、工程起止时间:XXXXXXXXXXXXXXXXXXXXX四、原始数据及主要任务:原始数据:水位传感器;51单片机;扬声器。主要任务:⑴根据技术要求和现有开发环境,分析设计题目;⑵设计系统实现的方案;⑶设计并绘制电路原理图;⑷画出功能模块的程序流程图;⑸使用汇编语言(或C语言)编写实现程序;⑹结合硬件调试、修改并完善程序;⑺编写工程报告。五、技术要求:⑴利用单片机及扬声器、水位传感器等器件设计;⑵将探测到的水位变化信号转换为电压信号,经调理电路整形处理为TTL电平送入单片机;⑶单片机对送入的信号进行数据处理,在LED或LCD上进行水位显示,超出水位警戒线时发出报警提示。学生〔签字〕:系主任〔签字〕:指导教师〔签字〕:院长〔签字〕:目录1.工程设计要求与任务32.工程设计正文32.1课题背景及研究意义分析32.2课题现状42.3设计思路及方案42.3.1水位传感方式的选择42.3.2水位传感器的特点及应用52.4系统的组成62.4.1系统工作原理62.4.2稳压电路62.4.3水位显示电路72.4.4振荡电路和复位电路82.4.5自动报警电路83.水位检测系统的整体电路仿真图93.1硬件连接实物图94.各种水位下的仿真图104.1高水位状态下仿真图104.2低水位状态下仿真图105.通信单元硬件设计116.上位机显示单元116.1上位机接受局部窗体控件127.工程设计总结148.参考文献15附录1161设计要求与任务设计要求:⑴利用单片机及扬声器、水位传感器等器件设计;⑵将探测到的水位变化信号转换为电压信号,经调理电路整形处理为TTL电平送入单片机;⑶单片机对送入的信号进行数据处理,在LED或LCD上进行水位显示,超出水位警戒线时发出报警提示。原始数据:水位传感器;51单片机;扬声器。主要任务:⑴根据技术要求和现有开发环境,分析设计题目;⑵设计系统实现的方案;⑶设计并绘制电路原理图;⑷画出功能模块的程序流程图;⑸使用汇编语言(或C语言)编写实现程序;⑹结合硬件调试、修改并完善程序;⑺编写工程报告。2工程设计正文2.1课题背景及研究意义分析:在工农业生产中,常常需要测量液体液位。随着国家工业的迅速开展,液位测量技术被广泛应用到石油、化工、医药、食品等各行各业中。低温液体〔液氧、液氮、液氩、液化天然气及液体二氧化碳等〕得到广泛的应用,作为贮存低温液体的容器要保证能承受其载荷;在发电厂、炼钢厂中,保持正常的锅炉汽包水位、除氧器水位、汽轮机凝气器水位、高、低压加热器水位等,是设备平安运行的保证;在教学与科学研究中,也经常碰到需要进行液位控制的实验装置。本设计是利用STC89C52单片机设计一种水位控制系统。主要是基于单片机的硬件设计以及程序设计,包括测量电路局部、键盘输入控制局部、液位实时数显输出局部以及液位控制局部,还在此根底上添加报警器。本设计只是概念性设计了电路局部,并不涉及具体的数值设定,经过了实际应用检测。该系统实现了水位监测,水位控制,水位显示,故障报警功能。在设计中主要采用了传感技术、单片机技术、弱电控制强电技术、C语言编程等技术。本文还讲述了水位控制系统工作的根本原理,介绍了电路接口原理图,给出了相应了设计流程图和C语言程序。本文主要是为了更多得了解单片机,掌握单片机的组成局部和控制原理,最终到达设计出“单片机水位控制系统的〞的目的。实验证明,单片机控制的水位控制系统的硬件电路简单,软件功能完善,控制系统可靠,充分发挥了单片机的性能,可以大大的提高单片机的开发效率。2.2课题现状目前,市面上进行液位测量的仪表种类繁多,但是同时具有测量、监控、数据记录及处理的液位测量装置并不多。在某些工业控制系统中,数据的测量这一根本功能已不能满足现代工业的要求,往往需要对大批数据进行记录,对其进行后期处理分析,实现过失控制、工艺改善、资源优化等一系列工作。为了获得大批量的数据,得到可靠的分析资料,往往需要长期、多网点的监控记录。在液位测量这一领域中,如江河湖海、城市用水等方面,大量数据长时间,多网点的采集记录分析具有普遍的意义。液位的变化分析,有助于人们进一步对自然环境、天气变化甚至是灾害预警提供可靠的支持。单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随即存储器RAM,只读存储器ROM、多种I/O口和中断系统、定时器、计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。中央处理器CPU是单片微型计算机指挥、执行中心,由它读程序并执行指令。CPU功能,是以不同方式来执行各种指令。有的指令涉及到各个存放器之间的关系;有的指令涉及到单片机核心电路内部各功能部件的关系;有的那么与外部器件发生关系。总的来说CPU是通过复杂的时序电路来完成不同的指令功能的。对于本设计单片机结构简单实用性强,功能齐全,技术先进,使实现这设计不难实现。同时,C语言是单片机的重要“组成〞,如果能掌握好C语言编程,这将很大程度上提高了开发效率。在设计过程中我们采用了软硬件双结合的方式,软件设计的方法简化了硬件的要求,为设计创造了条件。单片机采用的STC89C52的单片机。2.3设计思路及方案水位传感方式的选择简单的控制方式有浮标式、电极式等,这些控制方式的优点是结构简单,本钱低廉。但有很多问题存在,比方是精度不高,不能进行数值显示,另外很容易引起误查,且只能单独控制,与计算机进行通信连接比拟难实现,很难快速准确传输信号,所以不利于水位信号的传送。2.3.2水位传感器的特点及应用水位浮球开关特点:1小型浮球液位开关是一种结构简单,使用方便的液位控制零件,它设有复杂的电路,不会受到干扰,只要材质选择正确,任何性质液体、压力、温度皆可使用。液体介质性质与浮球关系:2液体比重不同时,浮球的动作位置将会有所变动,一般SG比水小时,浮球浸在液体中局部将相对增多。3浮球开关产品参考比重以水〔SG=1〕所以使用时在选用浮球时须考虑液位的比重SG,一定大于浮球规格所标示,否那么,浮球开关无法浮动。4粘度高不会干涸的液体,一般应选用外径较大的不锈钢浮球。5浮球开关是使用磁铁来感应磁簧开关,因此被测液位应无铁屑,否那么铁屑粘在浮球上面浮球浮不起来会影响浮球队开关的动作。用途:不锈钢浮球液位开关专门用于各种中小型常压和受压储液罐的液位检测、信号远传、开关报警,可适用于各种卫生、环保、有毒、带浓酸碱腐蚀性强介液体使用。图1水位浮球式传感器及工作原理浮子开关是利用开关上面磁性浮子随液位升或降,使开关检测管内设定位置的干簧管芯片动作,发出接点开〔关〕转换信号。动作原理:在密闭的非导磁性管内安装有一个或多个干簧管,然后将此管穿过一个或多个中空且内部有环形磁铁的浮球,液体的上升或下降将带动浮球一起上下移动,从而使该非导磁性管内的干簧管产生吸合或断开的动作,从而输出一个开关信号,也叫做无源触点信号。应用范围:我们常见的浮子开关一般水箱里面控制水位,用水箱高液位或者低液位报警作用。还可以用在饮水机、空调、加湿器、雾化器、空压机、净水器、水箱、热水炉、水池、油箱、油罐、压力罐、一些有酸碱液体的大小型设备。适用范围广、安装形式多样侧装、直装、顶部和底部安装、螺纹法兰安装到达多点液位报警效果。无源器件,性能稳定可靠,平安方便,抗干扰能力强,结构简单,安装方便,维护费用低。2.4系统的组成水位控制系统由电源电路、水位探测传感电路、稳压电路、继电器控制电机加水电路、水位显示电路、单片机STC89C52组成。系统组成的方框图如下:水位报警电路电源电路稳压电路水位传感器水位报警电路电源电路稳压电路水位传感器水位显示单片机STC89C52图2系统组成方框图2.4.1系统工作原理当水箱里的水位在低水位的时候传感器传给稳压电路一个低电平,低电平通过稳压电路里的NPN三极管、电容、电阻转换成高电平。单片机收到高电平,表示水箱里没有水了需要系统开始运作,给水箱加水,这时单片机通知红灯缓慢闪烁,蜂鸣器报警。水位到达高水位时传感器同时传送给单片机一个低电平,红灯闪烁频率加快,蜂鸣器报警频率加快。同理,水位从高水位下降时,水位离开高水位线时,高水位传感器探头与电源断开,传感器输出高电平给单片机。当水位下降到蓄水位时,红灯闪烁变慢。2.4.2稳压电路图3稳压电路图本电路的主要作用是使从传感器输入的电平能够稳定的输入到单片机中,,是由三极管9013、两个电阻、和一个无极性电容组成。如果我们不使用此稳压电路也能实现我们的设计目的,但有时会产生水位误判和不稳定现象,所以我认为此电路是不可缺少的。2.4.3水位显示电路图4水位显示电路图本电路采用不不同颜色的LED作为显示装置,有单片机P2.0、P2.3口控制进行水位显示。红灯闪烁缓慢代表水位在低水位。红灯闪烁急促表示在高水位以上。此电路采用的是共阳极的,所以只有单片机给发光二极管为低电平的时候才能是发光二极管点亮。R1,R4,为上拉电阻起限压控流作用。LED〔LightEmittingDiode〕,发光二极管,是一种固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附着LED灯株在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两局部组成,一局部是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个“P-N结〞。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。而光的波长决定光的颜色,是由形成P-N结材料决定的。2.4.4振荡电路和复位电路图5振荡电路和复位电路图振荡电路和复位电路是单片机不可缺少的局部,是单片机的重要组成,它们集成在单片机里,对于单片机稳定工作有至关重要的作用。并且可以延长它的使用寿命。2.4.5自动报警电路以下二种情况发生系统报警:1当水位到达上限极限水位时报警,水位到达上限极限水位时系统发出报警;2当水位到达下限极限水位时报警,水位到达下限极限水位时系统发出报警;图6自动报警电路的接线图3水位检测系统的整体电路仿真图图7水位控制系统仿真图3.1实物图图8实物图4各种水位情况下的仿真图4.1高水位状态加水水到达在蓄水位时:高水位警示灯红灯闪烁急促,蜂鸣器快频率鸣叫。仿真图如下所示:图9高水位仿真图4.2低水位状态水位减少到低水位时:低水位警示红灯闪烁,蜂鸣器低频率鸣叫。仿真图如下所示:图10低水位仿真图5通信单元硬件设计MAX485仅有8个管脚,电路设计比拟简单。图11图11MAX485引脚图RO引脚接到单片机串口接收引脚RXD〔P3.0〕,DI引脚接到单片机串口发送引脚TXD〔P3.1〕。由于MAX485为半双工通信方式,不能同时发送和接收数据,只能通过控制RE和DE引脚的状态来进行发送数据和接收数据的转换。为了节省单片机I/O口资源,将RE和DE引脚连在一起,输入低电平时,MAX485处于接收状态;输入高电平时,其处于发送数据状态。定义RE和DE连接在一起的网络标号为E,接入单片机P1口,用于发送与接收的转换。A,B端为发送接收差分信号端,一般需在A,B端之间加匹配电阻,匹配电阻为120Ω。硬件电路如图3-13:图12串行通信模块电路图6上位机显示单元上位机编程与下位机结合对应,下位机发“0〞代表当前水位为高水位,下位机发“1〞代表当前水位为低水位。水位变化当高水位发“0〞时上位机接受到对应ASCII码为48,此时上位机显示“警戒!当前水位为高水位!〞。水位变化当高水位发“1〞时上位机接受到对应ASCII码为49,此时上位机显示“警戒!当前水位太低!〞。图13上位机程序代码6.1上位机接受局部控件窗体图14水位检测报警系统窗体7设计总结通过这次工程设计,上位机和下位机的编程中我对软件开发有了进步的了解,把理论知识应用于实验中。也让我重新熟悉了C语言和C#语言的相关内容,加深了对C语言、C#语言知识的深化和用途的理解。在这次的工程设计过程中,我发现自己的根底知识和应用能力都很差。刚接过工程,按照设计步骤走的时候,在很多都卡住了,原理的知识忘记了很多,以至于在设计开始时必须得先复习一下相关的根底知识。在老师和同学的帮助下我顺利的完成了这次工程设计,对于我来说,收获最大的是方法和能力;那些分析和解决问题的能力。在整个工程设计的过程中,我发现我们学生在经验方面十分缺乏,空有理论知识,没有理性的知识;有些东西可能与实际脱节。总体来说,我觉得像课程设计这种类型的作业对我们的帮助还是很大的,它需要我们将学过的相关知识系统地联系起来,从中暴露出自身的缺乏,以待改良!本次的工程设计,培养了我们综合应用设计工程及其他工程的理论知识和理论联系实际,应用生产实际知识解决工程实际问题的能力;在设计的过程中还培养出了我们的团队精神,同学们共同协作,解决了许多个人无法解决的问题;在今后的学习过程中我们会更加努力和团结。我决定认真总结这次工程设计的经验,以及学习到的知识,来更加的充实自己的头脑和完善自己的知识结构。另外,我也在这次设计中看到了自己的许多缺乏之处,通过工程设计,发现自己在理论研究和实际工作能力等方面都得到了提高,同时在老师的指导和课题组同学的共同帮助下,及时总结研究成果,这些无疑会对我今后的工作和学习带来很大的帮助。总之,这次的课程设计的顺利完成使我受益匪浅。要做好一个工程的设计,就必须做到:在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机有哪些资源;要有一个清晰的思路和一个完整的软件流程图;在设计程序时,不能妄想一次将整个程序设计好,反复修改、不断改良是程序设计的必经之路;要养成注释程序的好习惯,这样为资料的保存和交流提供了方便;在设计中遇到的问题要记录,以免下次遇到同样的问题。在这次的工程设计中,我真正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单片机更是如此,程序只有在经常写与读的过程中才能提高,这就是这次工程设计的最大收获。8参考文献[1]王祁.智能仪器设计根底[M].北京:机械工业出版社,2023.[2]张毅刚,彭喜元,董继成.单片机原理及应用[M].北京:高等教育出版社,2003.[3]蔡黎.一种基于单片机的水位控制系统设计[J].仪器仪表用户,2007,14(4):44-45.[4]李书旗,沈金荣.液位测量传感器系统的设计与实现[J].计算机测量与控制,2023,17(11):2131-2133.[5]王洪君.单片机原理及应用[M].济南:山东大学出版社,2023[6]阎石.数字电子技术根底[M].北京:高等教育出版社,2006.[7]刘得营,张志霞等.单片机原理及接口技术[M].中国水利水电出版社2006.3-4[8]刘刚《单片机原理及应用》中国林业出版社评语成绩指导教师〔签字〕年月日附录1上位机程序设计水位检测报警系统C#语言程序如下:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.IO.Ports;usingSystem.Threading;namespace水位检测报警系统上位机控制{publicpartialclassForm1:Form{SerialPortport;publicForm1(){InitializeComponent();}privatevoidForm1_Load(objectsender,EventArgse){String[]PortNames=SerialPort.GetPortNames();comboBoxPort.Items.Clear();if(PortNames.Length>0){for(Int32i=0;i<PortNames.Length;i++){comboBoxPort.Items.Add(PortNames[i]);}comboBoxPort.SelectedIndex=0;comboBoxBaudRate.SelectedIndex=1;comboBoxData.SelectedIndex=0;comboBoxStop.SelectedIndex=1;}else{comboBoxPort.Text="无串口";}btnClosePort.Enabled=false;}publicdelegatevoidshowInfo(stringstr);byte[]cmd=newbyte[2];Threadt;privatevoidbtnOpenPort_Click(objectsender,EventArgse){port=newSerialPort();port.PortName=comboBoxPort.SelectedItem.ToString();port.BaudRate=Convert.ToInt32(comboBoxBaudRate.SelectedItem);port.Parity=Parity.None;port.DataBits=Convert.ToInt16(comboBoxData.SelectedItem);port.StopBits=StopBits.One;if(port.IsOpen==false){try{port.Open();t=newThread(newThreadStart(RecieveData));t.Start();listBox1.Items.Add("串口翻开成功!");btnClosePort.Enabled=true;btnOpenPort.Enabled=false;comboBoxBaudRate.Enabled=false;comboBoxData.Enabled=false;comboBoxPort.Enabled=false;comboBoxStop.Enabled=false;}catch{listBox1.Items.Add("串口翻开失败");}}}privatevoidRecieveData(){while(true){intstr;floatst;stringinfo;str=port.ReadByte();switch(str){case48:info="警戒!当前水位为高水位!";break;case49:info="警戒!当前水位太低!";break;default:info="接收数据失败,无法知道当前水位!";break;}showinfo(info);}}publicvoidshowinfo(stringstr){if(listBox1.InvokeRequired){showInfod=newshowInfo(showinfo);listBox1.Invoke(d,str);}else{listBox1.Items.Add(str);listBox1.SelectedIndex=listBox1.Items.Count-1;}}privatevoidbtnClosePort_Click(objectsender,EventArgse){if(t.IsAlive){t.Abort();}try{port.Close();listBox1.Items.Add("串口关闭成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论