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

下载本文档

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

文档简介

1、Yantai Nanshan University单片机原理与接口技术课程设计题目:基于单片机的水位控制系统设计院系:工学院电气与电子工程系专 业:班级:姓名:学号:201202022007指导教师:二O五年六月单片机原理与接口技术课程设计任务书一、基本情况学时: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)源程序代码及调试;5、心得体会6、参考文献六、考核方法本课程设计的考核方式为考查,考核结果为优秀、良好、中等、及格和不及格五等,分数在 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 主芯片 AT89C51 33.3 光报警及显示电路 43.4 键盘连接电路 53.5 复位电路 63.6 晶振电路 7第四章软件设计 84.1 Keil软件 84.2 程序流程图及其分析 84.3 水位检测的主程序 9第五章Proteus 设计与仿真 125.1 元器件清单 1

8、25.2 基于单片机水位控制原理图 125.3 实验仿真结果 12心得体会 16参考文献 17第一章 引言1.1 设计目的 液位控制系统是以液位为被控参数的控制系统, 它在工业生产的各个领域都有广泛的应用。 随着国家工业的迅速发展,液位测量技术被广泛应用到石油、化工、医药等各行各业中。低温 液体(液氧、液氮、液氩、液化天然气及液体二氧化碳等)得到广泛的应用,作为储存低温液 体的容器要保证能承受其载荷; 在发电厂、炼钢厂中,保持正常的锅炉气泡水位、 除氧器水位、 汽轮机凝汽器水位、高、低压加热器水位等,是设备安全运行的保证,因此一个安全合适的水 位系统是很必要的。1.2 设计要求 利用单片机设计

9、一个水位控制系统, 要求用开关来模拟水位状态, 当设定完水位后, 系统 根据水位情况控制电磁阀的开启和关断。具体要求如下:1、设计单片机工作系统电路。 2、通过键盘设置其预定水位,根据水位不同控制电机的旋转。3、利用 Protues 进行仿真1.3 基本功能本设计是采用 AT89C51 单片机为核心芯片,及其相关硬件来实现的水体液位控制系统, 采用八个按键来模拟水位,CPU循环检测传感器输出状态,并用3位七段LED显示液位高度, 检测液位数据,实时报警安全提示, 当水体液位低于用户设定的值时, 系统自动打开水泵上水, 当水位到达设定值时,系统自动打开排水泵。第二章系统的总体设计2.1 水塔水位

10、控制原理单片机水塔水位控制原理如图I所示,图中的虚线表示允许水位变化的上、下限位置。在正常情况下水位应控制在虚线范围之内。为此,在水塔内的不同高度处,安装固定不变的3根金属棒A B G用以反映水位变化的情况。其中, A棒在下限水位(底端靠近水池底部不 能过低,要保证有足够大的流水量),B棒在上、下限水位之间,C棒在上限水位。水塔由电机 带动水泵供水。单片机控制电机转动,随着供水,水位不断上升当水位上升到上限水位时, 由于水的导电作用。使B C棒均与+5 V连通。因此b、C两端的电压都为+5 V即为“I”状态, 此时应停止电机和水泵工作,不再向水塔注水;当水位处于上、下限之间时。B棒和A棒导通.

11、而 C棒不能与A棒导通,b端为“ 1”状态。C端为“O'状态。此时电机带动水泵给水塔注水,使水 位上升,还是电机不工作,水位不断下降,都应继续维持原有工作状态;当水位处于下限位置 以下时,B C棒均不能与A棒导通,b、c均为“0”状态。此时应启动电机转动,带动水泵给水 塔注水。如图2-1所示。2.2 系统总体设计方案系统的原理是采用8个按钮进行水位检测,在现场的3个不同的位置,由下至上测量水体 的液位值,。并把这四个液位状态通过模数转换器传到单片机中,在通过3位七段LED显示器显 示出液位的三种状态及报警安全提示。用LED显示是因为它具有显示清晰、亮度高、使用电压低、光电转换效能高、寿

12、命长等特点,根据当前的液位值和用户设定的水位决定是否进行开、 关水泵,需要是否开启和关闭驱动阀门的电动机。第三章硬件设计3.1系统硬件方案系统方案设计液位控制是利用把液位的状态转换成模拟信号,再通过模数转换器AT89C51 把输出状态直接接到单片机的I/O接口,单片机经过运算控制,输出数字信号,输出接口接 LED进行显示,实现液位的报警和键盘的显示与控制。由下图可观察到水位由键盘控制输入以后, 通过AT89C51单片机的运算控制,在通过LED 进行显示,通过报警装进行报警,报警显示之后再通过对阀门的开启实现对水位的液位进行调 节控制,阀门的驱动设备是电动机。图 3-1为液位控制系统。图3-1液

13、位控制系统由上图可观察到传感器通过对液面进行测量,输出模拟信号,再通过模数转换器把输入的模拟信号转换成数字信号,通过AT89C51单片机的运算控制,在通过LED进行显示,通过报警 装置进行报警,报警显示之后再通过对阀门的开启实现对水体的液位进行调节控制,阀门的驱动设备是电动机。3.2 主芯片 AT89C51本系统采用 AT89C51作为主要芯片,AT89C51是一种带4K字节FLASH存储器的 低电压、高性能 CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用 ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由

14、于将多功能 8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。在本系统设计中采用AT89C51作为主要的芯片,它具有PO、P1、P2、P3四个I/O口,每个口又有 8个接口,32个接口可以满足外接电路的需要,更方便的显示系统。本设计中采用了单片机AT89C51的PO、P1、P2 口,分别完成了显示和控制以及报警功能的实现。如图 3-2所示。 119>XTAL1PSTPO.O/ADOP0.1 /AD1PO.3/AD3PO.4/AD4PO.5/AD5P0.E/AD6 P0.7/AD7P&#

15、163;ENMEEAP2./ASP2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15102P1 0 P1 1P1.2PI.3P1 4P1 5P1.6P1.7P3.0/RXDP3.2/INTOP3 3/INTTP3 4HTB3.5O1 P3.6/WRP3.7/RD11121315LLATOC51图3-2 AT89C5引脚图3.3 光报警及显示电路图3-3所示为系统的光报警及显示电路,三段LED数码管于单片机的P0-P7 口相连,同时排阻的八根线也连在单片机的P0 口上,作为上拉电阻。3.4 键盘连接电路键盘连接电路如图 3-4所示,从下到

16、上依次为 K1-K8,八个键盘 K1-K8分别与单片机的P1 口的八个接口相连,这八个键盘的按下与否用来模拟的是水位的高低,K1键代表水位最低点,K8键代表的是水位最高点,K2键为下限水位线,K7键为上限水位线,K3-K6键位设定水位高度,当K1键按下时,指示灯亮,电机正转,开始加水,一直加水至水位7 (即7键按下时),电机开始停止转动,并反向转动抽水,水位开始降低,直 至到达2水位,灯亮电机开始自动加水,加水水位可以由用户自己设定,本系统中采取 的是2水位便开始加水,7水位开始抽水。本系统采用的是独立式键盘结构,每个按键单独占用一根I/O 口线,每个按键的工作不会影响其他I/O 口线的状态。

17、软件是采用查询式结构,首先逐位查询每根I/O 口线的输入状态,如某一根I/O 口线输入为低电平,则可确认该I/O 口线所对应得按键已按下,然后,再转向该键的功能处理程序。3.5复位电路复位电路中上端与单片机的复位引脚相连,下面与EA端相连,要使CPU只访问外部程序存储器(地址为 OOOOHFFFFH ),贝U EA端必须保持低电平(接到 GND端)。然 而要注意的是,如果保密位 LB1被编程,复位时在内部会锁存 EA端的状态。当EA端保持高电平(接 Vcc端)时,CPU则执行内部程序存储器中的程序。其复 位电路部分用来对系统进行复位操作,末端与单片机的复位相连,按下复位键,当震荡 器运行时,在

18、该引脚上出现两个机器周期的高电平将使单片机复位。如图3-5所示。3-5 复位电路图XTAL1和XTAL2上。晶振电路的作3.6 晶振电路晶体振荡电路的两个端口分别连接在单片机的用是为本系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。晶 振电路通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要 不同频率的时钟信号,可以与同一个晶振相连的不同锁相环来提供。如图3-6所示。第四章 软件设计4.1 Keil 软件Keil 软件是美国 Keil Software 公司出品的 51系列兼容单片

19、机 C 语言软件开发系列,与汇 编相比, C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整 开发方案,通过一个集成开发环境将这些部分组合在一起。运行 Keil 软件需要 WIN98 、NT、 WIN2000 、WINXP 等操作系统。具有方便易用的集成环境和强大的软件仿真调试工具。Keil 软件生成的目标代码的效率特别高, 大部分语句生成的汇编代码紧凑,容易理解。 与 汇编语言相比, C 语言在其功能上、结构上、可读性上以及可维护性上都有明显的优势,因而 易学易用。4.2 程序流

20、程图及其分析水位检测是通过 8个按钮进行水位检测的,当水位到检测位置其输出端口就向单片机输出 低电平。 由上至下的第一个位置为水位上限报警线, 即当水位高于此位置时, 开水阀控制系统 就会自动报警,提醒工作人员注意, 加水电磁阀有可能出故障; 第二个位置是自动停止加水线, 即当水位高于此位置时, 控制系统会自动关闭加水电磁阀, 停止加水; 第三个位置是自动加水 线,即当水位低于此位置时,控制系统会自动接通加水电磁阀,开始加水;第四个位置是水位 下限报警线,即当水位低于此位置时,控制系统就会自动报警,提醒工作人员注意,加水电磁 阀可能出故障。本设计的一个较大的优点是可以设置多个水位, 即用户可根

21、据自己需要设定加水时的水位。 根据所分析的该系统地具体功能,可以画出该系统的流程图,流程图应该尽量力求简便, 而且从中可以较容易的看出设计者的目的, 充分了解所需设计的系统的功能, 从而根据流程图 编写程序。如图 4-1所示。N图4-1 水位控制流程图4.3水位检测的主程序本控制系统采用的是控制,由于模糊控制量的求取是采用查表法,因此软件程序较简单, 整个软件部分较多,现取最重要的水位检测主程序。#in clude<reg51.h>#defi ne uchar un sig ned char#defi ne uint un sig ned intsbit MOR=P2A7;sbit

22、 MOT=P2A6;sbit LED=P2A0;code uchar tab10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; void delay (uint n)while(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=ta

23、b4;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; if(P1=0x7f)P0=tab1;LED=0;MOR=1;MOT=0;void main()while(1)LED_SHOW();X1CRYSTALRP1RESPACK-812】3456789i iD D-R11000C11UFR2100011 XTAL1P0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6RSTP0.7/AD7

24、P2.0/A8P2.1/A9P2.2/A10PSENP2.3/A11ALEP2.4/A12EAP2.5/A13P2.6/A14P2.7/A15P1.0P3.0/RXDP1 2P3 2/INIUP1 3P3 3/INI1P1.4P3.4/T0P1 5P3 5/T1P1 6P3 6/WRP1.7P3.7/RDU1193938371834339322145678AT89C5136352322o o第五章 Proteus设计与仿真5.1元器件清单按照设计要求及其目的,所需元器件如表5-1所示表5-1兀器件清单表7SEG-COM-CAT-GRNLED数码管AT89C1单片机BUTTON按钮CAP电容CA

25、P-ELEC陶瓷电容CRYSTAL12兆晶振LED-RED发光二极管MOTOR-DC电机RES电阻RESPACK-8排阻5.2基于单片机水位控制原理图将所有的硬件按照上面所说的方法连接起来,将源程序在keil c中生成.hex文件,放在proteus中连接好的电路图中运行,则可得到正确的结果。如图5-1所示。C230nFC330nF图5-1水位控制原理图5.3实验仿真结果根据所设计系统的软件流程图,编写相应的程序在Pro-teus软件环境下实际仿真,实验结果表明,该系统能成功实现了水位检测、电机故障检测、处理和报警等功能,具有良好的检 测控制功能,可移植性和扩展性强。该系统设计是基于在单片机嵌

26、入式系统而设计的,充分利用单片机强大控制功能和方便通信接口,该检测控制系统在实验室某实验水冷却系统得到成功 实践,实现水位检测、电机故障检测、处理和报警等功能,提高了实验的自动控制能力。进一 步优化系统软硬件设计,可为实时实现远端控制,因此,该系统在农村水塔,城市水源检测控 制等领域有着广阔的应用前景。仿真结果如图 5-2所示。水位过低,指示灯报警,电动机正转,开始加水C1C3X1CRYSTALRP1RESPACK-8H2|3i4p-67'8lR1L:IXIAI2P1.UP1.1P1 2P1 5P1 /PU.U/ADUPU.3/AD327-P3.U/RXDPU.1/AD1PU.2/AD

27、2PU.6/AD6PU 7/AD7P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15PU.4/AD4PU.5/AD5P2.1/A9P2.2/A1UP3.1/TXDP3.2/INP3.3/INP3.4/T UP3.5/T1P3.6/WR二13R-1617_D1LED-RED = T水位处于下限水位,电机持续正转,继续加水,直至到达设定水位高度C1X1CRYSTALC31UF10PRP1RESPACK-8U1R2XTAL1XTAL2ALEP1.0P1.1P1 2P1 7P0.O/ADOP0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0

28、.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD39211 2|3 456789Dr根据设定水位要求,到达指定位置,电机停止转动,不再加水C110PC310P1UFRP1RESPACK-8XYSTALRk219U11829 3031 T,XTAL1P0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5RSTP0.6/A

29、D6P0.7/AD7P2.0/A8P2.1/A9ALEP2.2/A10P2.3/A11P2.4/A12EAP2.5/A13P2.6/A14P2.7/A15P1.0P3.0/RXDP1.1P1 2P3.1/TXDP3.2/INT0P3.3/INT1P1.3P1 4P3 4/T0P1.5P3.5/T1P1 6P3 6/wRP1.7P3.7/RD9 3221/ 22水位处于上限水位,指示灯亮,电机开始反转,水位降低C1X1CRYSTALC3U119XTAL1P0.2/AD2R118XTAL21_1kP0.5/AD5P0.6/AD6RSTP0.7/AD7R2UF211kP2.2/A10P2.5/A13

30、1.0P3.0/RXDP3 1/TXDP1 2P3 4/101 51./P0.0/AD0P0.1/AD1P2.3/A11P2.4/A12P2.6/A14P2.7/A15P0.3/AD3P0.4/AD4P2.0/A8P2.1/A9AIF10p-10pRP1RESPACK-8tP1.1水位高于上限水位,指示灯报警,电机反转降低水位,直至设定水位高度C110PC3C21十XTAL17 8 -XTAL229 3C -31P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51RP1RFSPACK-82 13 4 5 6 7 8 9P0.0/ADCP0.1/AD1PC.2/AD2P

31、C.3/AD3PC.4/AD4PC.5/AD5PC.6/AD6PC 7/AD7P2.1/A9P2.2/A1CP2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INTCP3.3/INT1P3.4/T CP3.5/T1P3.6/WRP3.7/RD-2324-25-26TT-28 101416-nr图5-2 仿真图心得体会设计过程中我遇到了很多的困难, 因为知识是不连贯的, 所以需要准备很多方面的知识去 融合,去联系。 由于在学习的时候更注重的是书面上的东西, 而本次课程设计更多的是锻炼了 我的动手动脑能力,让我有机会把课上学习的知识转化为

温馨提示

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

评论

0/150

提交评论