1、微机控制原理课程设计目 录第一章 绪 论2第二章 型号选择32.1单片机AT89C5132.2 ADR775542.3 霍尔传感器62.4时钟芯片DS13027第三章 硬件设计83.1总电路83.2电能计量电路:83.3单片机AT89C51主电路:93.4数码管显示电路:103.5时钟电路:113.6电源电路:123.7控制回路:133.8多房间的控制设计13第四章 软件设计144.1电能计量电路软件流程图144.2控制部分流程图:144.3 数码管显示流程图164.4 DS1302程序流程图174.5程序编写17第五章 总结20参考文献21第一章 绪 论 现今社会,能量消耗巨大,大学里电脑等
2、电器更是越来越普遍,在电能方面耗费不少。学校对学生公寓采取限量限时的供电方式,不仅符合时代发展的要求,实现了能源的有效利用,而且为大学生提供了良好的学习和生活环境,使其养成了早睡早起的好习惯。使用如此高科技手段加强用电管理,使得用电集中管理简洁、可靠,具有很大的现实意义。本设计要求控制并显示三个房间的用电量,使用单片机对电能的消耗时刻监视,节省了人力、物力,为学生宿舍用电管理提供了科学的管理方法。并且要求在有大功率电器运行时,自动切断电源,可基本杜绝违章电器的使用,保证学生的安全,防止火灾等灾难性事故。本课题使用电能集中管理控制系统既提高了经济效益,又有效地加强了大学电量、用电安全的管理。第二
3、章 型号选择2.1单片机AT89C51 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。 功能特点:l 与MCS-51 兼容 l 4K字节可编程FLASH存储器 l 寿命:1000写/擦循环 l 数据保留时间:10年 l 全静态工作:0Hz-24MHz l 三级程序存储器锁定 l 1288位内部RAM l 32可编程I/O线 l 两个16位定
4、时器/计数器 l 5个中断源 l 可编程串行通道 l 低功耗的闲置和掉电模式 l 片内振荡器和时钟电路 2.2 ADR7755本设计的主要功能是对用电量进行计量,需要采集学生房间的电压和电流来计算功率,并将模拟信号转换成数字信号传送给单片机。ADE7755集功率计算和模数转换两个功能,很好的完成了既定的要求。ADE7755是一种高准确度电能测量集成电路,该芯片内部只在ADC和基准源中使用模拟电路,所有其他信号处理都是用数字电路,这是ADE7755在恶劣环境下仍能保持极高的准确性和长期稳定性。芯片引脚F1和F2以较低频率形式输出有功功率的平均值没能直接驱动微控制器的接口。引脚CF以较高频率形式输
5、出有功功率的瞬时值,用于校验微控制器的接口。该芯片被广泛应用于电子电能表等各种电能计量类仪表和系统中。 芯片图见下: 引脚说明如下:1、DVDD 数字电源引脚,正常工作电压为5V,该引脚应使用10uf电并联100nf瓷介电容去耦。2、AC/DC 高频滤波器选通引脚,高电平。3、AVDD 模拟电源引脚。正常工作电压为5V,该引脚应使用10uf电并联100nf瓷介电容去耦。4、19、NC 不连接 5、6 、VIP,VIN 通道1(电流通道)的正负输入引脚。正常工作最大信号电平为正负470MV。两引脚相对于AGND的最大信号电平为正负1V。7、8 、V2P,V2N 通道1(电压通道)的正负输入引脚。
6、正常工作最大信号电平为正负660MV。两引脚相对于AGND的最大信号电平为正负1V。9、 RESET 复位引脚,低电平有效。10、 REF(IN/OUT) 基准电压的输入、输出引脚11、 AGND AD7755模拟电路的接地参考点,该引脚应连接到印刷电路板的模拟接地面。12、 SCF 校验频率的选择。该引脚的逻辑输入电平确定CF引脚的输出频率。13、 14 、S1,S0 这两个引脚的逻辑输入用来选择数字/频率转换系数。15、16、G1,G0 这两个引脚的逻辑输入用来选择通道1的增益。可选增益为1、2、8、16。17、 CLKIN 外部时钟输入引脚。18、 CLKOUT 外部时钟输出引脚。20、
7、 RVEP 当检测到复功率时(电压、电流相位大于90度),该引脚输出高电平。 21、 DGND AD7755内数字电路接地参考点。22、 CF 频率校验输出端,其输出频率反映瞬时有功功率的大小,常用于仪表检验。可送至微处理器用于电能计量。23、 24、F2,F1 低频逻辑输出引脚,其输出频率反映平均有功功率的大小。这两个逻辑输出可以直接驱动机电式计度器或两相步进电机。电能基本表达式如下: 式中,u(t),i(t),p(t)分别是顺势电压,瞬时电流,瞬时功率值,所以测量电能的基本方法是将电压,电流相乘,然后在时间上再累加(即积分)起来。对于大多数电子式电能表,电能计量的原理基本相同,主要包括对电
8、压和电流的实时采样,将采样得到的电压和电流值相乘,计算出有效值,有功功率,无功功率等,采样分直流采样和交流采样两种,与直流采样相比,交流采样具有计算灵活,精度高,响应速度快等优点。当采样输入信号为正弦波时,测量时域,频域信号的算法有倒数算法,半周期算法等,由于这些算法计算量小,因此应用较为普遍,尤其是对实时性要求很高的场合。 2.3 霍尔传感器 本设计中电压传感器和电流传感器均采用了霍尔传感器,霍尔传感器是利用半导体霍尔元件的霍尔效应实现磁电转换的一种传感器,具有灵敏度高、线性度好、稳定性好、体积小和耐高温等特性,现在已经得到非常广泛的应用。2.4时钟芯片DS1302 DS1302是美国DAL
9、LAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.55.5V.采用双电源供电,可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。DS1302的外部引脚分配及内部结构如下图所示。 引脚说明如下:VCC1 主电源;VCC2 备份
10、电源;当VCC2 VCC1+0.2V时,向DS1302供电,当VCC2 VCC1时,由VCC1向DS1302供电。SCLK 串行时钟,输入,控制数据的输入与输出;I/0 三线接口时的双向数据线;CE 输入信号,在读、写数据期间,必须为高。该引脚有两个功能:第一,CE开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法。第三章 硬件设计3.1总电路设计有五部分电路构成:电能计量电路、单片机AT89C51主电路、数码管显示电路,时钟电路,电源电路。 下图为电能计量电路的原理图:电能检测电路 ADE7755电能计量芯片LED显示电路 单 片 机AT89C51 电压检测电
11、路 电 源3.2、电能计量电路: 电能测量电路如图所示,主要是由电压检测电路、电流检测电路和电能计量芯片ADE7755及其外围电路组成。首先,负载电流经过电流传感器再通过滤波电路后转换成合适的电压信号送入到电能计量芯片ADE7755的电流通道,即V1P和V1N端;而220V相电压则通过电压传感器降压后,再通过滤波电路送入电能计量芯片ADE7755的电压通道,即V2P和V2N端。二者经过ADE7755转换成有功功率以高频脉冲形式从CF端输出然后接入到单片机AT89C51的外部中断信号输入端,即单片机控制电路从ADE7755的CF端采集脉冲经过处理后得到的数据送到数码管显示电路进行显示。CF脚接在
12、单片机的T0计数器上,由单片机对CF脚输出的脉冲进行计数,根据ADE7755的原理,计算出所测功率。S0S1和SCF分别接在P1.0、P1.1口。电路图如下:3.3、单片机AT89C51主电路:本设计中整个电能计量电路的控制系统是由单片机AT89C51 来完成的,AT89C51 控制着整个电能计量电路的正常运行:监控ADE7755 的工作状态,从ADE7755 寄存器中读取有功、无功、视在功率和电流、电压值,输出到数码管显示电路。基本电路有复位电路、晶振电路。(1) 复位电路:单片机的复位操作有两种方式,上电复位和上电按钮复位。因为系统运行等的需要,常常需要人工按钮复位,因此本设计中采用如图所
13、示的上电按钮复位。(2) 晶振电路:8951单片机有一个用于构成内部振荡器的反向放大器,XTAL1和XTAL2分别是放大器的输入端、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器,本设计采用如下图所示的内部时钟接法。电路图如下:3.4、数码管显示电路: 常用的显示器有共阳极和共阴极两种。共阴极LED显示器的发光二极管的阴极连接在一起。共阳极LED显示器的发光二极管的阳极连接在一起。LED有静态显示和动态显示两种,当位数较多时,用静态显示所需的I/O口太多,不经济,一般采用动态显示方法,即用扫描的方法一位一位轮流点亮显示器的各个位,对于显示器的每一位来说,每隔一段时间点亮一次,利用人眼
14、的视觉暂留效应可以看到整个动态显示,但必须保证扫描速度足够快,字符才不闪烁。本设计采用了共阴极的动态显示。电路图如下:3.5、时钟电路: 本设计要求实时监测房间的用电量,并要求在具体时刻供电、断电,以及测量电量。采用DS1302的时钟电路,可以很好的实现这个功能。 时钟电路如下: 3.6、电源电路: 如图所示电路为输出电压+5V、输出电流1.5A的稳压电源。它由电源变压器B,桥式整流电路D1D4,滤波电容C20、C21,防止自激电容C19、C22和一只固定式三端稳压器(7805)极为简捷方便地搭成的。 220V交流电通过电源变压器变换成交流低压,再经过桥式整流电路D1D4和滤波电容C20的整流
15、和滤波,在固定式三端稳压器LM7805的Vin和GND两端形成一个并不十分稳定的直流电压(该电压常常会因为交流电压的波动或负载的变化等原因而发生变化)。此直流电压经过LM7805的稳压和C21的滤波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。本稳压电源可作为TTL电路或单片机电路的电源。三端稳压器是一种标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。电路图如下: 3.7控制回路: 本设计需要控制一个房间的用电量,P0.0代表总闸,P0.1代表此房间的控制闸,当早上八点之
16、后同时置位,十点之后同时清零;当此房间的用电量大于1千瓦时,将P0.1清零,自动切断此房间的供电。KA为控制房间供断电的继电器,由于单片机的输出电流是毫安级别,难以直接驱动继电器,故通过三极管进行放大之后驱动继电器。 3.8多房间的控制设计 由于本设计要求控制多个房间的用电量,故需要将每个房间的用电量采集,然后通过总线方式,将每个电量计量芯片的CF端通过总线传送到中央处理器,设置每一个采样周期为0.1ms,依次读取,然后显示,判断,进而控制所有房间的电能供给。第四章 软件设计4.1电能计量电路软件流程图开 始 电能计量电路初始化 电能计数技术脉冲复位 是否有读取命令? N Y 读取各项电能数据
17、 计算各项功率 电能数据输出 数据显示 4.2控制部分流程图:开始判断时钟是否到达早上8点?切断所有房间供 电开始所有房间的供电判断时钟是否到达晚上10点? Y N判断用电量是否大于1KW? N Y切断相应房间的供电 延时是否到达五分钟? N Y恢复供电 4.3 数码管显示流程图开始 初始化定时器T1 开启中断,并设置计数初值为0获取AD转换数据 进入中断, 显示计数位 计数值加1 计数值置零计数值是否为4? 是 否计数值+1 4.4 DS1302程序流程图开始 初始化DS1302 写入控制字 读取实时时间 送入单片机存储器存储 4.5程序编写 本设计主要实现用电控制与用电量的显示两部分的程序
18、。程序清单如下4.4.1用电控制:#include#define uint unsigned int#define uchar unsigned charsbit mainctr=P10;sbit roomctr=P11;uint TIME;uint POWER1;void delay1min(int a) int i,j,k,y; for(i=0;i=a;i+) for(j=0;j=60;j+) for(k=0;k0;y-); void powerctr(void) while(1) TIME=gettime() if(TIME=8&TIME=1000) roomctr=0; delay1m
19、in(5);roomctr=1; else P0=0; 4.4.2数码管显示:#include#define uint unsigned int#define uchar unsigned charuchar code wei4=0x01,0x02,0x04,0x08;uchar code disp_code10=0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09;uchar disp_busf4;uint AD;uint jishu;void display(void) TMOD=0X11; TH1=(65536-10)/256; TL1=(6
20、5536-10)%256; TR1=1; ET1=1; EA=1; while(1)disp_busf0=AD%10;disp_busf1=AD%100/10;disp_busf2=AD%1000/100;disp_busf3=AD/1000;void timer1(void) interrupt 3 TH1=(65536-10)/256; TL1=(65536-10)%256; P0=weijishu; P2=disp_codedisp_busfjishu; jishu+; if(jishu=4)jishu=0; 第五章 总结 基于大学公寓用电合理化控制的问题,本设计采用简单切实可行的方法,
21、展示了三个房间用电量测量、显示以及过热的情况下断电的情况。本设计采用了针对公寓用电系统简单实用的单相电子式电能计量电路。此电路采用了美国ADI公司生产的一款高精度单相电能计量芯片ADE7755来采集用户所使用的电量,并使用了高性能的单片机AT89C51来作为整个电能采集电路的控制中心。在采集电流、电压值时,本文采用了精度高、稳定性能好的电流、电压霍尔传感器来取代常用的电流、电压互感器。此外,本文还介绍了单相电能计量电路的组成以及软件流程图。 以专用计量芯片ADE7755 为核心, 并结合AT89C51 单片机技术设计出的电子式单相电能计量电路,具有线路简单、功耗低、精确度高、抗干扰能力强、稳定
22、性好等一系列特点,且电路体积小,成本低,易于家庭用户使用,因此该电能计量电路具有较好的应用前景。创新点在于本文的单相电能计量电路采用了芯片ADE7755,并且在采集电能环节,采用了霍尔电压、电流传感器,这比传统的采用电压、电流互感器的采集电路在精度以及稳定性方面都得到了较大提高。通过为期两周的微机控制原理课程设计,我在原有理论知识的基础上,又有了新的认识,新的提高,对微机控制领域的应用有了更深的了解。虽然对单片机已经学习了很久,但亲手做起来还是有很多实际方面的知识空白,通过这次课设中发现困难,解决困难,我弥补了这些空白,对一些外围电路的接法和传感器的选取有了深刻印象。在软件方面,我学会了流程图的画法,并通过流程图实现C语言编程这一整套规范的编程流程。 最后,特别感谢老师的悉心指导,帮助我解决了很多困难,使我比较圆满的完成了本次课程设计。参考文献 1 何立民.MCS-51系列单片机应用系统设计.北京:北京航空航天大学出版社,1990 2 张淑清.单片机原理及应用技术.北京:国防工业出版社,20103 温淑焕.微机原理及其应用.北京:中国农业科学技术出版社,20104 张凡.微机原理与接口技术.北京:清华大学出版社,2003 20