热门搜索 :
考研考公
您的当前位置:首页正文

基于51单片机的智能电表设计

来源:伴沃教育
五邑大学本科毕业设计 摘 要

电表表示着人们日常用电的多少,现在每家每户安装的基本上是带有转盘的那种电表,它只能显示出用电总量。若想查看上个月的用电量,只能靠电费单计算得来。现在已经是信息时代了,这种做法很显然跟不上社会潮流。

近几年来,社会提倡低碳、绿色经济和可持续发展,在这种思想的推动下,智能电表将会成为社会的潮流。智能电表是在传统电表的基础上增加了自动化和智能化的功能,从而进一步提高电网的效率、提高供电的可靠性、电能的质量并且完善用电户的服务,从而更好适应电力市场。现在智能电网是全球电力部门研究和讨论的热点话题,智能电表是智能电网中的最重要的环节,它支撑着电网的信息化、自动化以及互动化等方面的实现。 微处理器是智能电表的最主要的核心器件。它可以储存海量的检测数据,同时对测量出的结果进行分析、判断和处理。本次设计是运用单片机STC89C52为微处理器、CS5460A芯片进行电能测量和计算、X5045芯片作为外部存储、数码管进行显示进行设计的。

关键词 智能电表;自动化;C51单片机;CS5460A

I

五邑大学本科毕业设计 Abstract

Electricity meter means the number of people everyday electricity, and now every household is basically equipped with the kind of meter, which can only show the total amount of electricity. To see the power consumption last month, only by electricity single calculated. It is now the information age, and this approach is clearly not social trends.

In recent years, the social promotion of low-carbon, green economy and sustainable development, in the promotion of this idea, smart meter will become the trend of the society. Smart meter is automatic and intelligent function is added on the basis of traditional meter, energy efficiency so as to further improve the power grid, improve power supply reliability, power quality and perfect service of the users, in order to better adapt to the power market. Now the smart grid is a hot topic in the global power sector research and discussion, the smart meter is the most important part of smart grid, which support the realization of grid informationization, automation and interaction of.

The microprocessor is the most important core device of the smart meter.. It can store vast amounts of detection data and analyze, judge and process the results of the measurement.. This design is the use of single-chip microcomputer STC89C52 and CS5460A chip for power measurement and calculation, X5045 chip as the external storage, digital tube display design.

Key words Smart meter Automation 51 MCU S5460A

II

五邑大学本科毕业设计 目 录

摘 要 .......................................................................................................................................... I Abstract ......................................................................................................................................... II

第1章 绪论 ................................................................................................................................. 1

1.1 智能电表的概念 ............................................................................................................. 1 1.2 智能电表的发展背景 ..................................................................................................... 1 1.3 智能电表的结构 ............................................................................................................. 2 1.4 智能电表的主要特点 ..................................................................................................... 2 第2章 主要芯片的介绍 ............................................................................................................. 4

2.1 微控制器STC89C51单片机 ......................................................................................... 4

2.1.1 简介 ..................................................................................................................... 4 2.1.2 主要特性 ............................................................................................................. 4 2.1.3 引脚功能 ............................................................................................................. 4 2.2 电能计量芯片CS5460A ................................................................................................. 6

2.2.1 简介 ..................................................................................................................... 6 2.2.2 主要特征 ............................................................................................................. 7 2.2.3 引脚功能 ............................................................................................................. 7

2.3 外部寄存器X5045.......................................................................................................... 8

2.3.1 简介 ..................................................................................................................... 8 2.3.2 主要特性 ............................................................................................................. 8 2.3.3 引脚功能 ............................................................................................................. 9 2.4 时钟芯片DS1302 ........................................................................................................... 9

2.4.1 简介 ..................................................................................................................... 9 2.4.2 主要特性 ............................................................................................................. 9 2.4.3 引脚功能 ........................................................................................................... 10 2.5 74HC138译码器 ........................................................................................................... 10

2.5.1 简介 ................................................................................................................... 10 2.5.2 主要特性 ........................................................................................................... 10 2.5.3 真值表 ............................................................................................................... 11 2.6 LED数码管 ................................................................................................................... 11 第3章 总体设计方案 ............................................................................................................... 12

3.1 设计功能要求 ............................................................................................................... 12 3.2 智能电表的总体方案设计 ........................................................................................... 12 第4章 硬件部分的组成 ........................................................................................................... 13

4.1 电压电流采样模块的设计 ........................................................................................... 14

I

五邑大学本科毕业设计 4.1.1 电压调理电路 ................................................................................................... 15 4.1.2 电流调理电路 ................................................................................................... 15 4.2 CS5460A的外部电路 ................................................................................................... 15 4.3 数码管连接电路 ........................................................................................................... 16 4.4 组合键盘连接电路 ....................................................................................................... 16 4.5 EEPROM连接电路 ...................................................................................................... 18 4.6 时钟芯片DS1302连接电路 ........................................................................................ 18 第5章 软件部分的设计 ........................................................................................................... 19

5.1 主程序流程 ................................................................................................................... 19 5.2 CS5460数据交换方法 ................................................................................................. 20 5.3 时钟芯片的读写流程 ................................................................................................... 21 5.4 外部寄存芯片的读写流程 ........................................................................................... 21 5.5 按键扫描流程 ............................................................................................................... 22 5.6 数码管显示功能的实现 ............................................................................................... 23 结 论 ........................................................................................................................................... 24 参考文献 ....................................................................................................................................... 25 致 谢 ........................................................................................................................................... 26 附 录 ........................................................................................................................................... 27

II

五邑大学本科毕业设计 第1章 绪论

1.1 智能电表的概念

智能电表它是科技时代的新产物,它能够进行测量、数据处理,因此测量单元、数据处理单元是它的重要组成部分。在智能电表这一系统中,它能通过各类型的芯片来进行电能的测量、计算、存储,并且具有实时监控功能和自动控制等功能。和传统的电能表相比。计量功能是智能电表的最基本的功能,而它本身就是一个电子式的电表,并且它能够通过端口与外部时钟进行通讯[1]。

微处理器(单片机)是智能电表的最主要的核心器件,没有了它,智能电表就不可以对大量的测量数据进行存储、分析、判断和处理等功能。智能电表通常具有自动检测数据的功能、数据的强大处理功能、数据换算和自动调零功能、并且可以通过操作面板进行人机交流和显示装置。本次设计的智能电表主要运用了微机和通信等两方面的技术,为了减少能耗,把采集数据和处理数据等功能运用芯片进行,这样既可以节省了成本以及人力资源,还可以增加其工作的效率,可以满足了现代的用电户的需求[2]。

1.2 智能电表的发展背景

现在,智能电表主要分为感应式、电子式和智能式等类型,而我国又是生产电能表数量较大的国家,并且我国生产的电能表接近或者基本达到发达国家的技术水平,并且我国生产的电能表能够满足不用地区和国家的市场需求,而且我们还有价格优势,因此我国的电能表在全球各市场上有很好的竞争水平。随着我国电网的不断智能化,我们对电表之类的电能计量的器件的要求也不断提高,我国的电网科技和外国在科学技术水平上差距不是很大,与此同时它还是低碳经济的最主要组成部分,所以其发展前景是相当乐观的,和国外的同类产品相比,我国的智能电表的作用完善、有规律、分类式的单价电费和控制负荷等功能都比其他国家高,这更加能够满足我国在电网上现代化智能化建设过程中的需求。

目前,我国的用电户人数非常之多,根据2009年的统计,在年底就已经有2.3亿的用电户记录在国家电网公司的服务系统中,按每户平均有4个人计算,就有10.4亿人口,这么庞大的数量,要在全国内推广智能电表看来绝非一件简单的是,它不仅需要庞大的资金,而且还需要大量的人力、物力以及很长的时间来进行。同时,智能电表的功能多样化和显示的数据种类多,可以给用户准备更多的用电服务,不过更换电表也是就要得到用电户的同意、体谅和包含,所以用户也要一个对智能电表进行一定的了解,因此我们就要动员社会各界的力量来对此进行有效的宣传[3]。

自从国家电网公司发布一系列的电网智能化改革的计划之后,有关电表和智能化、自动化的产业的发展面临前所未有的前景。

在未来智能电表发展的趋势可以分为以下几个方面: (1)模块化

这样智能电表维修起来就会非常方便,就算是一个不懂它的人也可以对它进行简单的维护和修理,只要注意用电安全就行了,并且它具有安全可靠性;

1

五邑大学本科毕业设计 (2)智能电表的多样化

它可以利用多功能控制元件来进行对智能家居的调控,比如说,我们可以控制空调的大型耗电设备在电费相对便宜阶段启动;

(3)计算机的实时控制

用电户可以通过计算机对智能电表的某些功能进行调控,从而对电表下所有的用电器实行能源管制。

1.3 智能电表的结构

根据智能电表的介绍,不难看出,智能电表是由两大部分组成,它们分别是软件部分和硬件部分。我们也可以说它是一个小型化的专用的计算机系统。

在硬件部分上,主要由微处理器(单片机)、信号的输入输出通道、标准的通信口、进行人机交换的通道以及外围的电路组成。信号的输入输出通道主要能够让模拟信号以及数字信号通过,从而与外部进行数据交换,输入输出通道主要包括传感器元器件、数模转换器、调理信号电路部分以及模数转换器。微处理器和它的外围电路这部分主要是用来储存数据和程序的,并且在单片机里面能够对数据进行一定的运算和处理,这部分主要由数据寄存器和程序寄存器以及输入输出端口电路的部分组成的。人机交换的通道顾名思义就是人与机器进行互相交流的重要通道,它通常包括键盘部分、数码拨盘部分、打印机部分、显示部分等部分构成的。标准的通讯接口很明显就是用来与计算机进行交流的端口,这些端口方便计算机对被控器件进行有效的控制。

在智能电表中,监测程序和端口管理程序这两部分就构成了其软件部分。其中接口管理程序主要是面向通信接口,它的只要作用就是接受并且分析各种各样的程控码,主要包括各种操作方式的程控码、不同功能的程控码以及各种工作参数的程控码等等,以此同时各器件的实时工作状态以及不同测量数据的处理结果都会通过通信接口的输出仪器部分,以这种方法来响应计算机的远程控制指令。而监测程序就实现对键盘模块和显示模块进行操作,它可以设定某一按键的功能并存储相应的工作参数和运行方式,它可以通过I/O口对数据进行采样并且设定好数据的类型等参数,还可以通过相应的指令对数据寄存器中的数据和状态进行不同的分析处理,最后,当数据处理完成后,它就可以以各种各样的形式对分析和处理的结果进行显示[4]。

1.4 智能电表的主要特点

和机械时的电表进行对比,智能电表包含以下几个特征:

(1)精度高的测量智能电表能够很好的运用单片机对命令的执行的快速性以及数模转换花费时间短的特点,能够对要被测量的数据进行多次的测量,然后对每次测量的数据进行求平均值,这样就可以排除某些偶然的误差以及一些不确定的干扰,它还可以通过微处理器的滤波命令来进行数字滤波,从而排除一些随机误差以及大误差,用这些方法可以大大的提高测量的精度;

(2)能够进行间接的测量智能电表中的微处理器可以通过编程来进行各种计算,一些能以测量的数据可以通过几种容易测量的数据进行整合和计算来得到;

(3)可以进行自动校正智能电表会在刚上电时就会进行自动校正,而在测量的过

2

五邑大学本科毕业设计 程中对系统进行校正,可以减少误差;

(4)能够自动修正误差;

(5)具有自诊能力智能电表本身就具有故障诊断的功能,如果它发生了故障,就会启动自诊功能,就可以自己检查出系统哪里出问题;

(6)能够进行复杂的控制;

(7)可以通过程序来灵活改变功能;

(8)智能电表的通讯接口通常都是GPIB口或者是RS232口,而这些端口的功能就帮助智能电表进行远程操控。使其能够简单地与计算机或者其他不同仪器结合在一起,从而根据不同用户的不同需要对多种不同数据进行的自动检测,并通过系统的控制来完成[5]。

3

五邑大学本科毕业设计 第2章 主要芯片的介绍

2.1 微控制器STC89C51单片机

2.1.1 简介

STC89C51单片机具有低电压、高性能的特点,它内部带有4K字节的快速寄存器,而他的处理器是8位的。单片机的内部只读存储器中的数据可以重复擦除的次数达到1000多次,单片机的内部存储器主要采用一些高精度的并且不容易的丢失的材料和存储技术来制造的。由于单片机内部已经包含多功能的8位处理器以及快速寄存器,所以STC89C51单片机也是一种高效率的微处理器[6]。其引脚图如图2-1所示。

图2-1 STC89C51的引脚图

2.1.2 主要特性

(1)与MCS-51 相兼容; (2)4K字节的可编程FLASH寄存器; (3)寿命:可1000循环写/擦; (4)数据保留时间:10年;

(5)全静态的工作频率:0Hz-24MHz; (6)三个级别的程序寄存器锁定; (7)128×8位的内部RAM; (8)32可编程的I/O线; (9)两个是十六位的定时器或者说是计数器; (10)5个中断源;

(11)可编程的串行通道;

(12)包含低功耗式闲置以及掉电的功能; (13)包含片内振荡电路以及片内时钟电路。

2.1.3 引脚功能

(1)VCC:供电电压。

4

五邑大学本科毕业设计 (2)GND:接地。

(3)P0口:这个端口是一种双向的数据传输的I/O端口,在单片机的内部,在与漏极开路的电路进行连接,所以它的八个引脚都可以吸收8TTL的门电流。假如当它被置为逻辑1时,它就会成为高阻输入端。又因为它可以用作外部程序寄存器,所以这是它会当作是数据地址的低8位来进行处理。在进行程序编程的时候,它还可以当作源代码直接的输入端口来使用;如果它用作输出数据时,它每一引脚都必须要在单片机外部连接一个上拉电阻,这样它才能够正常使用;或者它可以利用外部锁存器来输出数据,这是它就不需要连接上拉电阻,但是要在锁存器的输出电路上连接电阻。

(4)P1口:这个端口是一类双向的八位的I/O端口,与P0不同的是它内部已经与上拉电阻相连,4TTL门电流可以通过它的缓冲器进行接收或者由其发送出来。如果它被置为高电平时,在单片机的内部它就会被提高成高电平,这是它会被当作输入端口使用;如果由于外部的原因,它被拉成逻辑0时,他就会对外输出一定的电流,这就是因为内部为逻辑1。在进行程序编程或者校验时,它会对数据或地址的低8为进行接收或发送。

(5)P2口:这个端口是一种八位的双向的I/O口,与P1相同同的是它内部已经与上拉电阻相连接,4TTL门电流可以通过它的缓冲器进行接收或者由其发送出来。如果它置高逻辑1,在单片机内部它所对应的引脚的电位就是被拉高,并且当作输入端,所以当它被当作输入端时,它的管脚外部电位就会相对内部被拉低,同时输出电流。当这一端口用作外部程序寄存器或是十六位的外部数据寄存器时候,这时它就会输出十六位数据中的高8位数据。如果它的地址是“1”的时候,并且进行外部8位地址数据读写时,它就会很好地运用它的内部电位被上拉的优势,输出它的特殊功能寄存器里面的数据。当进行程序编程和校正时,它口负责接收高8位的地址数据信号以及部分控制信号。

(6)P3口:这个端口是一个八位的双向的I/O口,与P1相同同的是它内部已经连接了上拉电阻,4TTL门电流可以通过它的缓冲器进行接收或者由其发送出来。当它被置为逻辑1之后,它的每个管脚就会被内部上拉电阻上拉成逻辑1,并且当作输入端口。而这组端口在单片机STC89C5都有自己对应的第二功种能,如表2-1所示:

表2-1 P3口的第二功能

I/O端口或位 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 P3口的第二功能 RXD TXD /INT0 /INT1 T0 T1 /WR /RD 该端口的主要作用 串行输入口 串行输出口 外部中断0 外部中断1 计时器0外部输入 计时器1外部输入 外部数据寄存器的写选通 外部数据寄存器的读选通

(7)RST:复位输入。

5

五邑大学本科毕业设计 (8)ALE/PROG:当微处理器对外进行存储器扩展时,当它被置为高电平时,它就会启动单片机的锁存功能,这时微处理器就会把P0口的数据全部放进锁存器里面,从而进行地址和数据隔离;如果它被置为逻辑0时,那么微处理器就不会启动锁存功能。在单片机没有与外部寄存器进行数据交换是,它会把单片机的震荡频率分成6分并去其中一分进行输出,而这个信号可以用作外部时钟信号;反之,它会再去已分频率的一半进行输出。

(9)/PSEN:当它被置为逻辑0,就表示外部程序寄存器被选通。当单片机对外部ROM进行读取时,两次/PSEN有效会在同一个机械周期中出现;但是,当单片机读取的是外部RAM时 ,这些有效的/PSEN信号就会被跳过。

(10)EA/VPP:当该引脚保持逻辑零时,单片机就会直接读取外部程序寄存器中的数据,这是无论在单片机是否存在内部程序寄存器。否则的话,在存在外部程序存储器的条件下,首先读取内部程序存储器的数据,再读取外部的。在进行程序编程时,它会提供为单片机提供12V的烧写电压

(11)XTAL1:单片机的片内振荡电路的输入端口,以及时钟接入引脚。 (12)XTAL2:单片机的片内振荡电路的输出端口,以及时钟接入引脚。

2.2 电能计量芯片CS5460A

2.2.1 简介

CS5460A 是美国的Crystal system公司生产的一种芯片,它一种专门用来测量电压电流以及功率电能的芯片,它具有高精度、性能强、低成本等特点。在CS5460中集成了两个模数转换器、一个高度集成的串行接口的的模数转换器以及一个能够高速计算电能的计数器,因此它能够精确测量并且计算出所测电路中的有功电能、电压电流的有效值以及电压电流电功的瞬时值,所以它通常会用来研发三相四线制和单线两相制电表。CS5460的电压电流输入端不能直接测量电力线上的数据,它需要通过低成本的电压电流互感器来进行变比才能够进行测量。而CS5460芯片与微处理器是通过串行数据传输的方式进行连接的。

CS5460还具有“自引导”的功能,也就是说它能够在没有微处理器的情况下,能够独立运行。在此模式下,只要系统上电,它就会自动初始化,并且可以从外部寄存器中读取要校准的数据以及启动指令,这样可以大大的降低成本,而且CS5460芯片的集成程度要远远高于微处理器[7]。它的引脚如图2-2所示:

图2-2 CS5460的引脚图

6

五邑大学本科毕业设计 2.2.2 主要特征

(1)能够在片内进行数据计算和处理;

(2)能够在没有微处理器的情况下,在自引导模式中,与外部寄存器连接,并且具有电能/脉冲互换功能;

(3)具有数模/模数系统校正的能力;

(4)运用简单的三线数据串行传输接口进行数据传输,读写方便; (5)具有看门狗定时功能;

(6)片上 2.5 V 基准(60×10-6/OC),单电源 +5 V 或双向 2.5V±10℅电源; (7)具有方向的功率输出指示; (8)可以精确的检测和计算出瞬时的电压电流和功率相应的值、周期电能总量和电压电流的有效值,并且能够进行电能之间的脉冲转换;

(9)电能测量精度:0.1%;

(10)能够在片内进行相位补偿和对系统进行校准; (11)片内含有机械计度器或者说是步进电机的驱动器; (12)内带电源监视器;

(13)电能数据的线性度:在1000 :1 的数据的动态检测范围中,电能的数据的线性度大约为 ±0.1%;

(14)功率消耗<12mW; (15)电源配置:VA+=+5V,VA-=0V;VD+=+3V至+5V 或VA+=2.5V,VA-=-2.5V;VD+=+3V。

2.2.3 引脚功能

(1)OUT、XIN:这两引脚能够对系统时钟进行输入输出,它们之间通常接2.5—20MHZ的晶振,成为系统时钟,同时片内的分频单元会把输入的晶振频率进行分频,进而得到不同的时钟频率。另外还可以通过XIN管脚对CS5460进行外部时钟的引入。

(2)CPUCLK:CS5460芯片内部的振荡电路的输出端端口。

(3)SCLK:这是串行时钟输入端,我们可以根据这管脚输入的串行时钟的快慢来确定SDI输入串行端和SDO输出串行端的传输速率。在片内,它与一个施密特触发器相连,它要在CS有效的时候才会识别出时钟信号。

(4)SDO:行数据输出引脚。 (5)CS:片选引脚。

(6)MODE:这是模式选择的引脚,如果它被置为高电平时,CS5460就可以与外部串行数据寄存器组合,并且实现自引导的功能;如果它被置为逻辑零时,CS5460就会与微处理器实现数据交换。

(7)INT:中断输出引脚。 (8)ETOU:电能输出引脚。

(9)EDIR:电能方向指示引脚。假如电能为负值时,这一端口就会输出一个信号。 (10)SDI:串行数据输入引脚。

(11)VIN+、 VIN-:正负电压的差分模拟量的输入输出端口。

7

五邑大学本科毕业设计 (12)VREFOUT:参考电压输出引脚。此引脚的电压相对于VA-为2.5V。 (13)VREFIN:参考电压输入引脚。 (14)IIN+、IIN-:测量电流的输入引脚 (15)VD+:数字电源。 (16)DGND:数字地。

(17)VA+、VA-:正负电源的差分模拟量的输入输出端口。 (18)PFMON:电源故障监测引脚。用于监控模拟电源。 (19)RESET:复位引脚。

2.3 外部寄存器X5045

2.3.1 简介

X5045是一种结合EEPROM功能、看门狗复位功能、电压跌落检测功能等三中功能的三合一的监控芯片。它使用SPI总线与处理器进行通信,是在兼有储存和监测的单片机系统中的最佳选择。它的引脚图如2-3所示:

图2-3 X5045的引脚图

2.3.2 主要特性

(1)支持MOTOROLA推出的SPI总线协议; (2)具有选重置时间的看门狗定能力;

(3)能够检测供电电压是否跌落以及具有复位控制功能; (4)5种标准的复位电压;

(5)当供电电压变成1V时,芯片仍然可以保证复位输出; (6)多种芯片可选择不同的工作电压;

(7)内置4Kbit的EEPROM,可反复擦写100万次; (8)可对EEPROM数据进行全部或分区保护; (9)可对硬件和指令写保护,使数据更加安全; (10)时钟可达3.3MHZ;

(11)读写速度快,16字节的页的读写速度; (12)经典写周期为5mS;

(13)商用级温宽为0~70摄氏度,工业级温宽为-40~84摄氏度;

8

五邑大学本科毕业设计 (14)6字节的页写入模式;

(15)复位信号输出可持续输出200MS。

2.3.3 引脚功能

(1)CS/WDI 使能及看门狗复位输入; (2)SO 数据输出(可与SI复用); (3)WP 写保护(低电平保护); (4)Vss 参考0电位; (5)SI 数据输入; (6)SCK 时钟输入;

(7)RESET 重置信号输出端(必须接上接电阻); (8)Vcc 电源电压。

2.4 时钟芯片DS1302

2.4.1 简介

DS1302是美国达拉斯半导体公司生产的一种实时时钟电路的芯片,它具有低功耗、高性能并带有RAM的特点,它能够对时、分、秒、年、月、日、周进行准确的计算,并且能够计算闰年,它的工作电压是2.5V到5.5V。它基本上是运用三线的接口与微处理器实现串行通讯。同时,它采用双电源供电,以防断电时时钟能够继续运行。其引脚如图2-4所示:

图2-4 DS1302的引脚图

2.4.2 主要特性

(1)能够对时、分、秒、年、月、日、周进行准确的计算,并且能够计算闰年; (2)31*八位数据暂存储RAM;

(3)使用串行I/O 口的通讯方式,大大减少管脚的数量; (4)大范围工作电压2.0到5.5V;

(5)当工作电压为2.0V 时,工作电流应该小于300nA; (6)通过单字节或者数组对数据进行传输; (7)简单3 线接口; (8)与TTL兼容Vcc=5V;

9

五邑大学本科毕业设计 (9)可选工业级温度范围-40℃ 到+85℃; (10)与DS1202 兼容;

(11)在DS1202 基础上增加新特性; (12)对Vcc1 有可选的涓流充电能力; (13)增加的七字节的数据暂存器。

2.4.3 引脚功能

(1)X1 X2 32.768KHz 晶振管脚; (2)GND 地;

(3)RST 复位脚;

(4)I/O 数据输入/输出引脚; (5)SCLK 串行时钟;

(6)Vcc1,Vcc2 电源供电管脚。

2.5 74HC138译码器

2.5.1 简介

74HC138是一款高速CMOS器件,7它可以把三位的二进制的地址演变成八个二进制地址,我们通常称它为38译码器。同时它还有三个使能输入端,其中有两个逻辑0时是有效,一个逻辑1时有效,当它们三个端口同时有效时,38译码器才会运行。因此,在单片机系统中,我们通常用它来进行引脚的扩充。它的引脚如图2-5所示:

图2-5 74H138译码器的引脚图

2.5.2 主要特性

(1)复合的使能输入端,能够方便的对单片机的引脚数量进行扩展; (2)HBM EIA/JESD22-A114-C超过2000 V MM; (3)EIA/JESD22-A115-A超过200 V;

(4)温度范围 -40~+85℃ -40~+125℃; (5)多路分配功能。

10

五邑大学本科毕业设计 2.5.3 真值表

表2-2 74H138译码器真值表

输入 S1 0 X 1 1 1 1 1 1 1 1 S2+S3 X 1 0 0 0 0 0 0 0 0 A2 X X 0 0 0 0 1 1 1 1 A1 X X 0 0 1 1 0 0 1 1 A0 X X 0 1 0 1 0 1 0 1 Y0 1 1 0 1 1 1 1 1 1 1 Y1 1 1 1 0 1 1 1 1 1 1 Y2 1 1 1 1 0 1 1 1 1 1 输出 Y3 1 1 1 1 1 0 1 1 1 1 Y4 1 1 1 1 1 1 0 1 1 1 Y5 1 1 1 1 1 1 1 0 1 1 Y6 1 1 1 1 1 1 1 1 0 1 Y7 1 1 1 1 1 1 1 1 1 0 2.6 LED数码管

LED数码管事实上上就是由多个发光二级管够成的,它们在系统里按照一定的方式组成一个数字“8”,它们在系统中已经连接好,其中它们的阳极相互连接的,并与正电源相连接的叫做共阳数码管,而它们阴极相互连接的,并且与负极电源相连的称为共阴数码管。而数码管事实上包括由小数点在内的八个发光二极管带点的数字“8”,那就成为了八位段选码,在字面上我们用a到g这7个字母加上dp来表示这些对应的段选码。当数码管内相应的引脚上电之后,对应的LED灯被点亮,从而组成成我们可以看见的字样了。常用LED数码管显示的数字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。本次设计,我运用两个四位共阴数码管进行表示。它的引脚如图2-6所示。

图2-6 四位数码管的引脚图

11

五邑大学本科毕业设计 第3章 总体设计方案

3.1 设计功能要求

本次设计的电表最重要的是实现的功能有以下的要求: (1) 能够实现单项交流电能的测量;

(2) 电表参数:额定的工作电压电流分别为220V、5A,最大工作电流为10A,最大

显示电能总量:99999.99Kw.h;

(3) 能够测量并通过转换、计算得到功率、电压和电流的瞬时值和电压电流的有效

值,并通过转换、计算从而在数码管上显示。

3.2 智能电表的总体方案设计

本次设计制作的智能电表能够具有以下功能:

(1) 通过单片机的外部数据寄存器储存三个月份交替日的总电能度数,并通过计算

得到本月、上月和上上月的用电量,并通过数码管显示对应的数值;

(2) 能够测量并通过转换、计算得到功率、电压和电流的瞬时值和电压电流的有效

值,并通过转换、计算从而在数码管上显示;

(3) 能够显示自装表后的总的用电电量。

本次设计制作的电表主要由电流、电压互感器、电能计量芯片、数码管显示模块、组 合键盘、实时时钟芯片、外部存储芯片等。如图3-1所示。

USB供电数码管显示电力线电流互感器电压互感器微控制器电能计量芯片组合键盘日历时钟芯片

图3-1 智能电表的设计概念

上图3-1表明了智能电表的硬件中的电压电流互感器能够使220V电力线上电压电流

12

五邑大学本科毕业设计 转变成电能计量芯片能够允许输入的电压电流范围。本次设计的智能电表主要由测量计算模块、单片机、数码管显示模块、外部寄存器、时钟电路模块以及电源电路组成,如图3-2所示。

显示模块电能计量模块存储模块单片机实时时钟模块电源电路

图3-2 智能电表的硬件组成

第4章 硬件部分的组成

13

五邑大学本科毕业设计

本次设计的智能电表可以分为六大组成部分,他们分别是电能计量模块、实时时钟模块、数码管显示模块、外部数据存储、电源电路、微处理器等组成。智能电表它本身就是一个微型的计算机控制系统,它的主要核心是微处理器,也就是我们常说的单片机。智能电表想实现不同功能就要运用不同的器件与单片机来进行组合。通常我们会使用简单方便的芯片和单片机进行组合,这样可以降低成本,减少编程的麻烦。

本次设计的智能电表通过传感器来将外界的被测量的信号转变成电信号,本次采用CS5460A芯片通过双差分电路来采集电压电流信号;然后进行信号的调理,从而改善型号的质量,并且提高信号的抗干扰的能力;最后经过模数转换进而把数据传给单片机进行处理,这些步骤在CS5460A芯片内就可以完成,但是数据进制的转换就靠微处理器来进行。在单片机内进行数据处理后,执行存储信息或显示,这些可以通过编程来实现的。

[8]

4.1 电压电流采样模块的设计

在运用CS5460测量电能的过程中,我们基本上利用电压电流互感器来隔离电力线,因为CS5460的测量输入端有允许通过的最大电压电流的限制,而这样做不仅可以保护芯片,同时还可以减少电力线上的各种各样的干扰信号对测量效果的影响。

现在我们使用的照明线路上的电压电流有效值为:220V,10A,在这种情况下,我们可以假设照明线路上的电压电流的最大额定值分别为:300V,30A。我们使用的电力线是单相二线制交流线路,因此它们属于正弦曲线的交流信号,我们通常是以最大值的0.7071倍来进行测量的。但是,在实际上,电力线上的交流信号不是标准的正弦信号,所以我们采用其最大值的0.6倍来进行计算。

互感器是一种高精度、低阻抗的元器件,同时它能够在存在高次谐波的条件下,它的延时都会很少。在使用互感器对电路进行隔离后,CS5460的输入端口就不需要再次运用其他方法进行隔离。

图4-1 电流电压采集和调理电路连接图

14

五邑大学本科毕业设计 4.1.1 电压调理电路

在被测电压接入CS5460之前,我们要对其进行降压处理。而在这次设计中,我们使用了2MA/2MA的电压互感器来进行降压处理。不过,这个型号的电压互感器在接入电力线之前一定要连接一个110K欧的电阻,把电力线的电压转换成2MA以下的电流,以保护电压互感器。电路经过电压互感器之后,在电压互感器的输出端连接一个电阻,其要小于62.5欧,因为CS5460测量电压输入端的最的值为125MV,这个电阻的作用就是把电流再转换成电压。然后,在电压互感器的二次侧上接上一定大小的电阻电容,进而构成RC滤波电路,对输入的电压执行滤波操作。

4.1.2 电流调理电路

在电流调理部分中,还是那句话,CS5460不能直接连接到电力线测电流,这次可以运用1000/1的电流互感器,本次使用的电流互感器是两个引脚的,我们把电力线从互感器的中间穿过当作一次侧,而它的两个引脚就作为二次侧输出端,不过,我们要记得在二次侧上接上负载,这样才能保护互感器,剩下的电路和电压调理部分相同,也是连接RC滤波网络,对输入的电流执行滤波操作。

4.2 CS5460A的外部电路

单片机STC89C51的控制指令集以及管脚都与Inter系列的微控制器相兼容,微处理器内部有一个可以擦写的程序寄存器和一个数据寄存器,它们的大小分别为4K字节和256字节。其工作原理与8031微处理器相同。

CS5460芯片与微处理器的数据传输是通过串口传输方式来进行的,这一样做可以大大减少数据传输是所需要的I/O口,这样可以为单片机省下大量的端口,从而可以让系统实现更多的功能。

图4-2 CS5460外部电路连接图

15

五邑大学本科毕业设计 由图4-2可知CS5460A的1和24引脚接晶振,其中图中引出的引脚除了电压电流输入信号外就是指STC89C51的P1.0、P1.1、P1.2、P1.3、P1.4引脚分别与CS546OA的SDI、RST、SCLK、SDO、CS引脚进行交换数据。CS5460A的数据重置管脚RES与微处理器STC89C51的P1.1引脚连接,并由微处理器STC89C51向CS5460A提供复位信号。

4.3 数码管连接电路

这次设计中,显示部分是运用数码管进行显示的,如图4-3所示,可以知道,数码管没有直接与微处理器进行连接,而是通过138译码器和74H753锁存器来与微处理器连接。138译码器的输出端口与数码管的位选端的端口相连,其中138译码器的A、B、C三个输入端口分别与单片机的P3.5、P3.6、P3.7口相连;74H573锁存器则连接数码管的段选端的端口,同时也是为了驱动数码管,它输出的信号需要经过100欧的电阻连接到数码管的段选端端口。

图4-3 数码管的接线图

4.4 组合键盘连接电路

本次设计的智能电表上已经使用的按键中都有属于自己对应的功能,它可以让用户按键查询本月、上月、上上月中各个月的电总量。还可以查询瞬时电流值、瞬时电压值、电压有效值电流有效值、瞬时功率值。虽然本次设计只是使用键盘组中8个按键,但是每个按键都会对应一个功能。

16

五邑大学本科毕业设计

图4-4 键盘组的连接图

如图4-4所示本次设计的组合键盘采用由P2.7、P2.6、P2.5、P2.4口四根数据线提供行线,P2.3、P2.2、P2.1、P2.0提供列线组成的行列式组合键盘。在键盘组的设计中,每一个按键的两端分别连接到不同的I/O口,把16个按键摆放成4*4的形式,这样就可以看到每个按键都是设置在每一行每一列的各个交点上,同时把行线或列线上其中一个端口接上一个10K 欧的上拉电阻,这样就构成成了我们所说的组合键盘。

键盘组的扫描是把行和列分开进行的。其方法是:给P2.3、P2.2、P2.1、P2.0列线端口都设置为低电平,然后把行线电平情况读到累加器内。假如某一个键被按下,则这个键所在的列线的电平就会变成逻辑零,因此行线的输入就不会全部为零。如果键盘组中有按键被按下,则我们就会把列线逐一置为逻辑零,再对行线进行检查其输入的状况。假如全为高电平,那么所按下的就键不可能在这一行,假如不全补是高电平,那么所按下的键就一定在这一行行。

本次设计只使用了组合键盘中的一半按键,剩下的按键暂时空在那,可以根据用户的需要,在系统可以实现的情况下,通过编程增加更多不同的功能。

17

五邑大学本科毕业设计 4.5 EEPROM连接电路

图4-5 X5045连接电路图

图4-5所示为X5045芯片与单片机的硬件接线图,从图中我们看到X5045的复位重置端口连接到单片机STC89C51的9脚,而这一管脚的连接是X5045芯片要实现看门狗作用所必须的。STC89C51的P1.6、P1.7、P3.0、P3.1引脚分别与X5045的CS、SO、SI、SCLK引脚进行数据交换。写保护引脚WP与电源相连。

4.6 时钟芯片DS1302连接电路

图4-6 DS1302与单片机的连接图

DS1302与单片机STC89C51的连接只需三条线SCLK、I/O、RST分别与STC89C51的P3.2、P3.3、P3.4连接。在双电源供电的情况下,运用微机系统的电源作为主电源。在这种连接方式中,可以保证智能电表在断电的情况下,时钟芯片继续运行,以保证时间数据不会丢失。DS1302由Vcc1/Vcc2两者中的较大一个供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS13O2提供电能;当Vcc1大于Vcc2+0.2V时,Vcc1给DS1302提供电能。

18

五邑大学本科毕业设计 第5章 软件部分的设计

5.1 主程序流程

本次设计的电能表的运行时间顺序主要为:当微机系统通电之后,微处理器就对各个芯片执行初始化命令,然后进入的循环,而且还是个死循环;在循环过程中,微处理器先运行清看门狗的子程序;然后读取CS5460的电能寄存器的数据,经过1S的延时再次读取该寄存器的数据并进行累加;再然后,读取时钟芯片的实时时钟数据,判断代表月份的数据是否产生变化,如果是就把累加的数据存放在外部数据寄存器X5045中;最后,运行按键扫描的子程序,如果查询到某个按键并确定他已经按下,然后就跳到相应的子程序中。 智能电表的执行过程如图5-1。根据图5-1来对单片机内部进行编程,从而达到当初设计使所需要的功能。

开始初始化A=读x5045B=读CS460电能寄存器A=A+B清零A>100000?N把A写入X5045读DS1302更换月份?Y延时1s更换月份数据月份数据写入X5045有键按下?对应程序显示A 图5-1 智能电表的主程序控制顺序程序框图

19

五邑大学本科毕业设计 5.2 CS5460数据交换方法

CS5460芯片中包含有16个24位不同类型的寄存器,它们分别是实现配置、直流电流偏移、交流电压、直流/交流电流增益、直流/交流电压增益、周期计数、脉冲速率、有符号、无符号、时基校准、功率偏移、交流或电压的偏移、状态、屏蔽、控制等功能的16个不同类型的寄存器。它们是主要是用来对CS5460进行配置、输入端口进行数据的收集和串行端口的输入输出来进行。这些寄存器所相应的地址如下表5-1所示:

表5-1 CS5460A的内部寄存器相对应的名称和地址

地址 名称 Config IDCoff Ign VDCoff 描述 配置寄存器 电流通道直流偏移寄存器 电流通道增益寄存器 0A00 0000 0A00 0010 0A00 0100 0A00 0110 0A00 1000 0A00 1010 0A00 1100 电压通道直流偏移寄存器 电压通道增益寄存器 每个计算周期的A/D转换数 用于设置EOUT和EDIR上的能量-脉冲速率 瞬时电流寄存器(最近一次电流采样) 瞬时电压寄存器(最近一次电压采样) Vgn CycleCount PulseRate 0A00 1110 0A01 0000 0A01 0010 0A01 0100 0A01 0110 0A01 1000 I V P E IRMS VRMS 瞬时功率寄存器(最近一次功率采样) 电能寄存器(最后一次计算周期的值) 电流有效值寄存器(最后一次计算周期的值) 电压有效值寄存器(最后一次计算周期的值) 时基校准寄存器 功率偏移寄存器 0A01 1010 0A01 1100 0A01 1110 TBC Poff Status 状态寄存器 20

五邑大学本科毕业设计 其中,当A为1或0时,分别表示写和读寄存器。

CS5460芯片的串行通讯接口有一个缓冲区,在这个区间内,CS5460会对单片机发送的命令进行解析。当时钟信号在上升沿的时候,CS5460就会对单片机发送的命令进行解析,当命令解析完毕之后,CS5460就会立即执行相应的命令,当它与单片机进行数据传输时,缓冲区就会用来暂时存放发送或接收与微处理器交换的数据。

当系统上电之后,CS5460芯片就会被初始化,同时它还会处在有效的操作状态中,也就是说,系统上电之后,CS5460芯片就等待单片发送命令字。当芯片上的状态机接收到有效的命令字以后,他就会立刻进行解码,同时命令转换器就会做出相应的动作。

要对CS5460芯片的某一寄存器进行数据访问就要经过串行端口来进行,也就是说数据传输的初始化命令也会经过数据串行传输的端口SDI口来进行传输,并且先从高位开始传送8位代码字实现数据传输。假如命令字中含有写操作命令时,串行端口将会在之后的24个时钟周期内记录相应的数据,记录方式还是按照高位在先的原则。写操作需要24位数据,而读操作可能需要8位、16位或者24位不等。如果单片机在读取寄存器的数据是,又发送新的命令,那么之前的读操作就会立即停止,并执行新的命令。我们可以根据串口传输的时序来编写对应的子程序。

5.3 时钟芯片的读写流程

智能电表中的时间是由DS1302来提供的,它与单片机是通过串行端口来进行通讯的。如果电表要进行时间的校准时,单片机就会向它发送相应的命令;如果系统要判断时间时,就会读取它的实时时钟数据,并且与之前所得的实时时钟进行比较,从而得出相应的结果。 时钟芯片内的数据的读写全部都是有单片机发送相应的命令,在由其进行对应的操作,时钟芯片所有数据的传输都是根据命令来执行的。比如说它的最高位就一定要置为高电平时才会有效,否则的话就会不允许对时钟芯片进行写操作,只能读里面的数据。位6为逻辑零时就表示对时钟数据执行读写,反之就是对RAM实行读写。当最低位被置为低电平时,就可以把数据写入芯片中,反之就是把芯片的数据读出来。而在串行时钟的上升沿,数据就会写入芯片,在下降沿,数据就会从芯片中读出来,并且每个数据都是从最低位开始读起。最后,剩下的5个位就表示为芯片内指定的寄存器。下表5-2为DS1302命令字的格式:

表5-2 DS1302的命令格式

1 7

RAM CK 6 A4 5 A3 4 A2 3 A1 2 A0 1 RD WR 0 5.4 外部寄存芯片的读写流程

在X5045芯片中包含三个寄存器,其中它们分是指令、状态和写使能等寄存器。它与微处理器是通过串口通信方式来实行连接的。串行端口SI是用来进行数据传输的,CS端口和WP端口则分别是给芯片提供片选信号和写保护信号的,其中CS在低电平是有效,WP

21

五邑大学本科毕业设计 在高电平时有效,而它与单片机的数据传入是在串行时钟的上升沿进行的,也就是说在下降沿时输出数据。该芯片的数据全部由高位开始。不过在进行写操作之前,我们要先执行WREN命令,这是要让寄存器能够进行写操作,在写完数据之后要进行复位,运用WRDI指令。同时,我们能够利用状态寄存器,对看门狗的执行的定时参数进行设定。下表5-3为X5045的命令名称及其格式:

表5-3 X5045的命令名称及其格式

指令名称 指令格式 完成操作 WREN 0000 0110 写允许 写禁止 读状态寄存器 WRDI RSDR 0000 0100 0000 0101 0000 0001 0000 A8011 0000 A8011 WRSR 写状态寄存器、看门狗和块锁定 从选定的卡是单元地址中读取数据 向选定的开始地址单元写入数据(1-16字节) READ WRITE

假如要传输的数据在时钟数据信号的上升沿期间被锁存在输入线上,那么该数据就会

在串行数据信号的下降沿传送到输出线上。单片机STC89C51与X5045的接口软件设计中,要设置X5045的使能锁存器、读状态寄存器和看门狗的初始值,同时还要编写对应的子程序,只有这些还不够,我们还要编写字节的读写子程序。我们把这块芯片的相应的子函数合理的调用,那么我们想要它执行的功能就会实现。

5.5 按键扫描流程

智能电表中的键盘组是利用单片机编程来执行扫描的。在整体的程序中,按键扫描程序是不断地反复地进行,也就是说每次主程序的循环都伴随着一次按键扫描。在扫描程序中,假如检测到有按键被按下,那么该程序就会延时一定时间后在进行一次扫描,如果还是发现有键被按下,就认为有一个键按下;否则,就是没有键被按下。如果有按键确定被按下时,但不知道是哪个,然后程序就按照行列扫描的方式来确定是哪个键被按下,在根据相应的程序,并执行对应的功能。而它的按键的扫描程序的流程如图5-2所示。

22

五邑大学本科毕业设计 开始延时程序N检测有键按下?Y延时10MSN检测有键按下?Y键按是否释放?Y执行相应的程序图5-2 键盘组的扫描流程

N

5.6 数码管显示功能的实现

智能电表的显示程序只要确定好要点亮对应的段和位,并通过计算就可以逐位显示所需要的数字。我们通过程序设置了我从最高位开始逐位显示,保留2位小数,并显示出所得数据的符号或名称。

23

五邑大学本科毕业设计 结 论

光阴似箭,日月如梭。在不知不觉中大学四年的时间接近为尾声了,真是有点舍不得。可是我不可以怀念过去的时光,我要展望未来。现在就剩下大学四年中最后的任务了——毕业设计。

经过大半年的时间的不断努力,终于完成并实现智能电表的功能的设计。在这过程中有喜又有悲,自己一个人完成这类型的任务还是第一次,不过,通过这次,我真的学会了很多东西,比如说Altium designer、kill4等软件的使用。

这次设计可以说是对我微机原理掌握的程度和自我学习能力的检测,这对现在的我要求很高,就是让我把自己在课堂上的知识在现实生活中进行运用,并加以深入的了解。经过这次毕业设计,我对自己学到的知识有了更加深入的认识,了解到自己所学习到的知识在电力控制系统中哪些方面可以应用;同时,这让我对自己所学的知识有了更仔细的体会,况且,每一步的设计都要殚精竭虑,在此次设计中每一步都和下一步紧密相连,牵一发而动全身。

在本次设计中,我提高了自主学习能力,通过自主学习,自己收集不同资料并且了解单片机的基础知识,这样对我们这种应试教育的学生来说,可以说是一个非常大的进步。为了完成这次设计,我必须躲到图书馆里和在网上寻找我想要的资料,无论是为了一句话的分析,还是一条公式的含义,或者说是一种型号的芯片的某一引脚的功能。

总之,经过这次设计,我学会的许多课堂外的知识。在不久的将来,我就要离开大学,进入社会了,真是有点依依不舍。不过生活就是大课堂,今后我要在生活这一课堂上学习更多知识。

24

五邑大学本科毕业设计 参考文献

1 乔大鹏,吕瑜.智能电表的安全需求及其策略研究[J].电子技术与软件工程.2014,7. 2 高健.探索和分析智能电表特点和应用[J].电子技术与软件工程.2014,20. 3 张贵兵.智能电表的设计与实践[J].新疆化工.2014, 1.

4 侯晓宇.低功耗智能电表主控芯片的数字后端研究实现[D].中国科学院大学(工程管理与信息技术学院).2014.

5 谭浩强主编.C程序设计[M].清华大学出版社.2010, 6.

6 郭天祥主编.新概念51单片机C语言教程[M].电子工业出版社.2012, 12.

7 刘焕成主编.工程背景下的单片机原理及系统设计[M].清华大学出版社.2011,10.

8 N.Saputro,K.Akkayya,Suleyman Uldag.A surey of rounting protols for smart commumications[J].Computer network,2012,56(11):137-142.

25

gird 五邑大学本科毕业设计 致 谢

经过长时间的不断努力,为期三个多月的毕业设计终于在此时此刻完成了。这时候感觉整个人都轻松了很多,并且感到一定的成就感。毕业设计能够直接体现我们的实践能力,并且它会涉及到很多方面的知识。对于本次设计只要涉及到微机和弱电方面的领域的知识较多。这次设计,让我在设计方面的技能和知识的到了一定的提高,并提高了我在微机方面的知识水平。同时我也培养了正确设计的方法和想,以及独立解决实际应用中遇到的问题的工作能力。本次设计还提高了我获取资料和分析问题的能力,同时也提高了我在设计计算、原理图绘制、pcb板的设计、书面表达等方面的能力,为我以后进入社会工作打下良好的基础。

在这里要特别感谢我们的指导老师,虽然在毕业设计的期间,我们很少见面,我们都知道现在科技发达,通过毕业交流群来进行交流完全可以。每当有新的关于毕业设计的消息,她都会第一时间通过群来告诉我们,而且每当问她问题时她都耐心的回答我们,因为有了她的指导我才能按时完成我的毕业设计;同时也要感谢同学们的帮助,有时候遇到不懂的东西,通常是先找同学们讨论,没有结果才问老师。

最后要感谢我们的班导师,在大学四年的生活中冯老师为我们操了不少心。我即将离开学校,在这里祝各位老师:身体健康、心想事成、万事如意!祝同学们:前程似锦、一帆风顺!

26

1、硬件电路图

附 录

五邑大学本科毕业设计 27

因篇幅问题不能全部显示,请点此查看更多更全内容

Top