单片机原理与接口技术课程设计docx_第1页
单片机原理与接口技术课程设计docx_第2页
单片机原理与接口技术课程设计docx_第3页
单片机原理与接口技术课程设计docx_第4页
单片机原理与接口技术课程设计docx_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、 单片机原理与接口技术课程设计题目:基于单片机的水位控制系统设计院 系:工学院电气与电子工程系专 业:自动化 班 级:自动化1202 姓 名:王学松 学 号:201202022007 指导教师:张彦飞 、刘晓明 二一五年六月单片机原理与接口技术课程设计任务书一、基本情况学时:2周 学分:1.5 学分 适应班级:自动化1201-1202二、进度安排本设计共安排2周,合计60学时,具体分配如下:动员及准备工作: 1学时选题分组: 1学时PROTEUS仿真软件使用讲解: 8学时总体方案设计: 8学时硬件设计: 12学时PROTEUS仿真图绘制: 4学时软件设计: 12学时撰写设计报告: 4 学时制作

2、答辩PPT : 4 学时答辩: 4 学时总结: 2学时教师辅导: 随时三、基本要求1、课程设计的基本要求单片机原理与接口技术课程设计的主要内容包括:理论设计与撰写设计报告等。其中理论设计又包括总体方案选择,硬件系统设计、软件系统设计;硬件设计包括单元电路,选择元器件及计算参数等;软件设计包括程序流程图和应用程序。程序设计是课程设计的关键环节,通过进一步完善程序设计,使之达到课题所要求的指标。课程设计的最后要求是写出设计总结报告,把设计内容进行全面的总结。2、课程设计的教学要求单片机原理与接口技术课程设计的教学采用相对集中的方式进行,以班为单位全班学生集中到设计室进行。严格考勤制度,在实训期间累

3、计旷课达到6节以上,或者迟到、早退累计达到8次以上,该课程考核按不及格处理。 课程设计的分组:每3-4名学生组成一个小组,完成一个课题的设计。小组成员既有分工、又要协作,同一小组的成员之间可以相互探讨、协商,可以互相借鉴或参考别人的设计方法和经验。但每个学生必须单独完成设计任务,要有完整的设计资料,独立撰写设计报告。教学要求具体如下:(一)、掌握单片机应用系统开发、设计流程;硬件、软件的资源分配与规划。(二)、熟练硬件电路原理图的设计与绘制。(三)、掌握运用PROTUS进行软、硬件仿真调试能力。(四)、熟练运用C语言编写开发程序。(五)、熟练掌握制板及实物焊接技能。(六)、掌握单片机应用系统综

4、合调试的方法、具备综合调试能力。四、设计题目及要求题目:水位控制系统要求:1、用51单片机完成设计。2、通过键盘设置其预定水位,根据水位不同控制电机的旋转。五、设计报告设计完成后,必须撰写课程设计报告。设计报告必须独立完成,格式符合要求,文字(不含图形、程序)不少于2000字,图形绘制规范。设计报告的格式如下: 1、封面 2、摘要 3、目录4、正文(1) 所作题目的意义、本人所做的工作及系统的主要功能;(2) 方案选择及论证;(3) 硬件电路设计及描述(包括硬件的选型及电路图、输入输出接线图等的设计);(4) 软件设计流程及描述(流程图及文字说明);(5) 源程序代码及调试;5、心得体会 6、

5、参考文献 六、考核方法本课程设计的考核方式为考查,考核结果为优秀、良好、中等、及格和不及格五等,分数在90-100之间为优秀,80-89分之间为良好,70-79分之间为中等,60-69分之间为及格,60分以下为不及格。 考核分三个方面进行:平时表现20%;设计过程25%;设计报告 40%;设计答辩15%。有下列情形之一者,课程设计考核按不及格处理: 1、设计期间累计迟到、早退达8次;2、设计期间累计旷课达6节; 3、设计报告雷同率超过50%或无设计报告;4、不能完成设计任务,达不到设计要求。摘 要液位测量广泛应用于工业、经济、生活等领域。本设计以水箱供水为模型,用于对水箱液位信号进行测量监控记

6、录。基于单片机的液位测量装置具有测量准确、重复性好、功耗低、使用寿命长的特点,是广泛采用的技术。在深入学习科学发展观的同时,电子设备的设计也需融入可持续发展的设计理念。故此,在基于单片机的液位测量装置基础上,扩展实时监控、数据采集、计算机串行通信等功能,从而能够通过科学的方法将液位测量与统计科学结合,合理调度水资源,降低能源消耗。本文从系统方案选择与论证,硬件电路设计,系统软件与上位机软件设计等几个方面介绍了基于单片机的液位测量监控系统的设计过程,最终实现了液位的实时测量与监控。最后,本文总结了设计过程中出现的问题及解决方法,简要叙述了所获数据的处理方法,引出了进一步设计开发的思路。关键词:单

7、片机 测量 监控 通信目录第一章引言11.1 设计目的11.2 设计要求11.3 基本功能1第二章系统的总体设计22.1 水塔水位控制原理22.2 系统总体设计方案2第三章硬件设计33.1 系统硬件方案33.2 主芯片AT89C5133.3 光报警及显示电路43.4 键盘连接电路53.5 复位电路63.6 晶振电路7第四章软件设计84.1 Keil软件84.2 程序流程图及其分析84.3 水位检测的主程序9第五章Proteus设计与仿真125.1 元器件清单125.2 基于单片机水位控制原理图125.3 实验仿真结果12心得体会16参考文献17第一章 引言1.1 设计目的液位控制系统是以液位为

8、被控参数的控制系统,它在工业生产的各个领域都有广泛的应用。随着国家工业的迅速发展,液位测量技术被广泛应用到石油、化工、医药等各行各业中。低温液体(液氧、液氮、液氩、液化天然气及液体二氧化碳等)得到广泛的应用,作为储存低温液体的容器要保证能承受其载荷;在发电厂、炼钢厂中,保持正常的锅炉气泡水位、除氧器水位、汽轮机凝汽器水位、高、低压加热器水位等,是设备安全运行的保证,因此一个安全合适的水位系统是很必要的。1.2 设计要求利用单片机设计一个水位控制系统,要求用开关来模拟水位状态,当设定完水位后,系统根据水位情况控制电磁阀的开启和关断。具体要求如下:1、设计单片机工作系统电路。2、通过键盘设置其预定

9、水位,根据水位不同控制电机的旋转。3、利用Protues进行仿真1.3 基本功能本设计是采用AT89C51单片机为核心芯片,及其相关硬件来实现的水体液位控制系统,采用八个按键来模拟水位,CPU循环检测传感器输出状态,并用3位七段LED显示液位高度,检测液位数据,实时报警安全提示,当水体液位低于用户设定的值时,系统自动打开水泵上水,当水位到达设定值时,系统自动打开排水泵。第二章 系统的总体设计2.1 水塔水位控制原理单片机水塔水位控制原理如图l所示,图中的虚线表示允许水位变化的上、下限位置。在正常情况下水位应控制在虚线范围之内。为此,在水塔内的不同高度处,安装固定不变的3根金属棒A、B、C。用以

10、反映水位变化的情况。其中,A棒在下限水位(底端靠近水池底部不能过低,要保证有足够大的流水量),B棒在上、下限水位之间,C棒在上限水位。水塔由电机带动水泵供水。单片机控制电机转动,随着供水,水位不断上升当水位上升到上限水位时,由于水的导电作用。使B、C棒均与+5 V连通。因此b、C两端的电压都为+5 V即为“l”状态,此时应停止电机和水泵工作,不再向水塔注水;当水位处于上、下限之间时。B棒和A棒导通而C棒不能与A棒导通,b端为“1”状态。C端为“O”状态。此时电机带动水泵给水塔注水,使水位上升,还是电机不工作,水位不断下降,都应继续维持原有工作状态;当水位处于下限位置以下时,B、C棒均不能与A棒

11、导通,b、c均为“0”状态。此时应启动电机转动,带动水泵给水塔注水。如图2-1所示。图2-1 水塔水位控制原理图2.2 系统总体设计方案系统的原理是采用8个按钮进行水位检测,在现场的3个不同的位置,由下至上测量水体的液位值,。并把这四个液位状态通过模数转换器传到单片机中,在通过3位七段LED显示器显示出液位的三种状态及报警安全提示。用LED显示是因为它具有显示清晰、亮度高、使用电压低、光电转换效能高、寿命长等特点,根据当前的液位值和用户设定的水位决定是否进行开、关水泵,需要是否开启和关闭驱动阀门的电动机。第三章 硬件设计3.1 系统硬件方案系统方案设计液位控制是利用把液位的状态转换成模拟信号,

12、再通过模数转换器AT89C51把输出状态直接接到单片机的I/O接口,单片机经过运算控制,输出数字信号,输出接口接LED进行显示,实现液位的报警和键盘的显示与控制。由下图可观察到水位由键盘控制输入以后,通过AT89C51单片机的运算控制,在通过LED进行显示,通过报警装进行报警,报警显示之后再通过对阀门的开启实现对水位的液位进行调节控制,阀门的驱动设备是电动机。图3-1为液位控制系统。图3-1 液位控制系统由上图可观察到传感器通过对液面进行测量,输出模拟信号,再通过模数转换器把输入的模拟信号转换成数字信号,通过AT89C51单片机的运算控制,在通过LED进行显示,通过报警装置进行报警,报警显示之

13、后再通过对阀门的开启实现对水体的液位进行调节控制,阀门的驱动设备是电动机。3.2 主芯片AT89C51 本系统采用AT89C51作为主要芯片,AT89C51是一种带4K字节FLASH存储器的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。在本系统设计中采用AT89C51作为主要的芯片,

14、它具有P0、P1、P2、P3四个I/O口,每个口又有8个接口,32个接口可以满足外接电路的需要,更方便的显示系统。本设计中采用了单片机AT89C51的P0、P1、P2口,分别完成了显示和控制以及报警功能的实现。如图3-2所示。图3-2 AT89C5引脚图3.3 光报警及显示电路图3-3所示为系统的光报警及显示电路,三段LED数码管于单片机的P0-P7口相连,同时排阻的八根线也连在单片机的P0口上,作为上拉电阻。图3-3 光报警及显示电路图3.4 键盘连接电路键盘连接电路如图3-4所示,从下到上依次为K1-K8,八个键盘K1-K8分别与单片机的P1口的八个接口相连,这八个键盘的按下与否用来模拟的

15、是水位的高低,K1键代表水位最低点,K8键代表的是水位最高点,K2键为下限水位线,K7键为上限水位线,K3-K6键位设定水位高度,当K1键按下时,指示灯亮,电机正转,开始加水,一直加水至水位7(即7键按下时),电机开始停止转动,并反向转动抽水,水位开始降低,直至到达2水位,灯亮电机开始自动加水,加水水位可以由用户自己设定,本系统中采取的是2水位便开始加水,7水位开始抽水。本系统采用的是独立式键盘结构,每个按键单独占用一根I/O口线,每个按键的工作不会影响其他I/O口线的状态。软件是采用查询式结构,首先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应得

16、按键已按下,然后,再转向该键的功能处理程序。图3-4 键盘连接电路图3.5 复位电路复位电路中上端与单片机的复位引脚相连,下面与EA端相连,要使CPU只访问外部程序存储器(地址为0000HFFFFH),则EA端必须保持低电平(接到GND端)。然而要注意的是,如果保密位LB1被编程,复位时在内部会锁存EA端的状态。当EA端保持高电平(接Vcc端)时,CPU则执行内部程序存储器中的程序。其复位电路部分用来对系统进行复位操作,末端与单片机的复位相连,按下复位键,当震荡器运行时,在该引脚上出现两个机器周期的高电平将使单片机复位。如图3-5所示。3-5 复位电路图3.6 晶振电路晶体振荡电路的两个端口分

17、别连接在单片机的XTAL1和XTAL2上。晶振电路的作用是为本系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。晶振电路通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以与同一个晶振相连的不同锁相环来提供。如图3-6所示。图3-6 晶振电路图第四章 软件设计4.1 Keil软件Keil软件是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系列,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提

18、供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。具有方便易用的集成环境和强大的软件仿真调试工具。Keil软件生成的目标代码的效率特别高,大部分语句生成的汇编代码紧凑,容易理解。与汇编语言相比,C语言在其功能上、结构上、可读性上以及可维护性上都有明显的优势,因而易学易用。4.2 程序流程图及其分析水位检测是通过8个按钮进行水位检测的,当水位到检测位置其输出端口就向单片机输出低电平。由上至下的第一个位置为水位上限报警线,即当水位高于此位置时,

19、开水阀控制系统就会自动报警,提醒工作人员注意,加水电磁阀有可能出故障;第二个位置是自动停止加水线,即当水位高于此位置时,控制系统会自动关闭加水电磁阀,停止加水;第三个位置是自动加水线,即当水位低于此位置时,控制系统会自动接通加水电磁阀,开始加水;第四个位置是水位下限报警线,即当水位低于此位置时,控制系统就会自动报警,提醒工作人员注意,加水电磁阀可能出故障。本设计的一个较大的优点是可以设置多个水位,即用户可根据自己需要设定加水时的水位。根据所分析的该系统地具体功能,可以画出该系统的流程图,流程图应该尽量力求简便,而且从中可以较容易的看出设计者的目的,充分了解所需设计的系统的功能,从而根据流程图编

20、写程序。如图4-1所示。图4-1 水位控制流程图4.3 水位检测的主程序本控制系统采用的是控制,由于模糊控制量的求取是采用查表法,因此软件程序较简单,整个软件部分较多,现取最重要的水位检测主程序。#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit MOR=P27;sbit MOT=P26;sbit LED=P20;code uchar tab10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;void delay (uint n)wh

21、ile(n-);void LED_SHOW()if(P1=0xfe) P0=tab8;LED=0;MOR=0;MOT=1;if(P1=0xfd) P0=tab7;LED=0;MOR=0;MOT=1; if(P1=0xfb) P0=tab6; LED=1;MOR=1;MOT=1; if(P1=0xf7) P0=tab5; LED=1;MOR=1;MOT=1; if(P1=0xef) P0=tab4; LED=1;MOR=1;MOT=1; if(P1=0xdf) P0=tab3; LED=1;MOR=1;MOT=1; if(P1=0xbf) P0=tab2; LED=0;MOR=1;MOT=0;

22、if(P1=0x7f) P0=tab1; LED=0;MOR=1;MOT=0; void main()while(1) LED_SHOW();第五章 Proteus设计与仿真5.1 元器件清单按照设计要求及其目的,所需元器件如表5-1所示。表5-1 元器件清单表7SEG-COM-CAT-GRNLED数码管AT89C1单片机BUTTON按钮CAP电容CAP-ELEC陶瓷电容CRYSTAL12兆晶振LED-RED发光二极管MOTOR-DC电机RES电阻RESPACK-8排阻5.2 基于单片机水位控制原理图将所有的硬件按照上面所说的方法连接起来,将源程序在keil c中生成.hex文件,放在prot

23、eus中连接好的电路图中运行,则可得到正确的结果。如图5-1所示。图5-1 水位控制原理图5.3 实验仿真结果根据所设计系统的软件流程图,编写相应的程序在Pro-teus软件环境下实际仿真,实验结果表明,该系统能成功实现了水位检测、电机故障检测、处理和报警等功能,具有良好的检测控制功能,可移植性和扩展性强。该系统设计是基于在单片机嵌入式系统而设计的,充分利用单片机强大控制功能和方便通信接口,该检测控制系统在实验室某实验水冷却系统得到成功实践,实现水位检测、电机故障检测、处理和报警等功能,提高了实验的自动控制能力。进一步优化系统软硬件设计,可为实时实现远端控制,因此,该系统在农村水塔,城市水源检

24、测控制等领域有着广阔的应用前景。仿真结果如图5-2所示。水位过低,指示灯报警,电动机正转,开始加水。水位处于下限水位,电机持续正转,继续加水,直至到达设定水位高度。根据设定水位要求,到达指定位置,电机停止转动,不再加水。水位处于上限水位,指示灯亮,电机开始反转,水位降低。水位高于上限水位,指示灯报警,电机反转降低水位,直至设定水位高度。图5-2 仿真图心得体会设计过程中我遇到了很多的困难,因为知识是不连贯的,所以需要准备很多方面的知识去融合,去联系。由于在学习的时候更注重的是书面上的东西,而本次课程设计更多的是锻炼了我的动手动脑能力,让我有机会把课上学习的知识转化为可以在实际生产生活中应用的技术。本次课程设计的系统主要介绍了水体的液位检测控制,介绍了AT89C51单片机和其它一些单片机在液位控制系统中的应用,介绍了它们的引脚和在系统中的电路图,利用LED来进行信号的输出显示,我设计的硬件系统的结构简化,系统精度高,具有良好的人机交互功能,并设有液位报警

温馨提示

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

评论

0/150

提交评论