毕业设计(论文)插卡式(IC)智能电能表设计.doc

上传人:仙人指路1688 文档编号:2391073 上传时间:2023-02-17 格式:DOC 页数:30 大小:1.09MB
返回 下载 相关 举报
毕业设计(论文)插卡式(IC)智能电能表设计.doc_第1页
第1页 / 共30页
毕业设计(论文)插卡式(IC)智能电能表设计.doc_第2页
第2页 / 共30页
毕业设计(论文)插卡式(IC)智能电能表设计.doc_第3页
第3页 / 共30页
毕业设计(论文)插卡式(IC)智能电能表设计.doc_第4页
第4页 / 共30页
毕业设计(论文)插卡式(IC)智能电能表设计.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《毕业设计(论文)插卡式(IC)智能电能表设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)插卡式(IC)智能电能表设计.doc(30页珍藏版)》请在三一办公上搜索。

1、目 录1前言11.1智能电表应用的意义11.2智能电表的发展12 总体方案设计32.1 方案比较32.2 方案选择53 器件介绍和单元模块设计63.1单元模块设计63.1.1 电源模块电路63.1.2 信号采集电路73.1.3 计量模块83.1.4 时钟及LCD显示模块93.1.5 接触式IC卡模块103.2 器件介绍113.2.1 STC89C52单片机113.2.2 ADE7758113.2.3 DS12887123.2.4 LCD1602133.2.5 SLE4442154 软件设计164.1 主要芯片读写程序设计及设计工具164.2 主要软件设计流程框图及说明195 系统硬件调试226

2、 系统软件调试277 总结与体会298 谢辞309 参考文献31附录1:电路原理图32附录2:PCB图33附录3:程序34附录4:英文文献翻译75插卡式(IC)智能电能表设计摘 要:智能电表采用ADE7758电能计量芯片和STC89C52单片机为核心,实现对于用户功率的测量,并根据阶梯电价计算出卡内电费剩余等情况,电能表附带万年历,自动报警,调节阶梯电价等功能,万年历功能采用芯片DS12887时钟芯片为核心来实现,自动报警功能用蜂鸣器进行模拟,并通过四个键盘实现显示的切换以及电价的调整功能,IC卡采用西门子公司的SLE4442卡,可实现逻辑加密,可反复读写,卡内数据保密性好。关键词:智能电表,

3、ADE7758,时钟芯片,电能计量Abstract: Smart Meters uses ADE7758 Electricity measurement chip and STC89C52 microcontroller as a core to implement the measurement of consumers power and calculate the remaining electricity bill, based on stepwise power tariff. In addition, the Smart Meters is attached with a cale

4、ndar, automatic alarm, and electricity adjustment function. The details of these functions are as follows: the calendar adopts clock chip DS12887 as a kernel to do the work, the automatic alarm uses Buzzer to simulate ,together with actualizing the vision switch as well as electricity adjustment thr

5、ough four keyboards. IC card employ the SLE4442 of Siemens company, which can realize logic encryption, can read and write relapsable, the security of the data inside card is good.Keywords: Smart Meters, ADE7758, clock chip, Electricity measurement. 1前言随着我国经济的迅猛发展,各地对于电能需求量也随之迅速增加,据介绍,国家将加快建设1000千伏交

6、流和800千伏、1000千伏直流构成的特高压骨干网架,并实现各级电网协调发展,大力推进坚强智能电网的建设,到2020年,将建成统一的智能坚强电网,是电能的分配,管理,电网的稳定运行,用户和电网之间的互动性提高,其中重要的一项,就是加强用电管理,使用智能计费系统。1.1智能电表应用的意义目前,我国已经开始大面积推广并使用智能电表,以实现对电价分时,阶梯的统计,随着我国经济的发展,用电量激增,对于电能的管理显得尤为的重要。在现代生产生活中,电能已经发展成为一种重要的能源资源,我国电力事业在改革开放的30年中,发展极为迅猛,所以相应的电能计量仪表制造业的进步也必须与之相适应,这对于电力事业进行统筹规

7、划和发展,促进我国电力事业稳定,健康的发展有着极其重要的意义。新型智能电表不仅具有传统电表的功能,还能对用户的用电情况进行管理和控制,并且相比于传统电表的机械式结构,没有机械摩擦,大大的提高了准确度和灵敏度,且易于实现自动化测量,并且可以实现远程通讯和控制,具有较高的性能价格比,适合我国国情,有广泛的引用价值。智能电表利用微机技术,通讯技术等等,减少了能量的消耗,把采集,处理集中于一体,节省成本和人力资源,提高了工作效率,适应了现代用户的需求。1.2智能电表的发展智能电表是在电子式电表的基础上发展而来,欧美发达国家于20世纪70年代研发并开始使用,经过30多年的不断发展,欧美国家不断对智能电表

8、技术进行革新,功能日趋完善,目前,我国的智能电表大致分为机电一体式和全电子式两种,机电一体式即在原有机械结构的基础之上附加一定的电子元件,从而达到所需的功能要求,安装简洁,多用在老实机械表的改装,成本低。全电子式则是采用集成电路为核心,取消了老式电表的机械结构,减少了机械摩擦,使得计价更加准确,可靠性高,耗电少,体积小。在收费系统方面,目前国内上使用最为广泛的为IC卡电表收费,成本低,可靠性好,且使用寿命长,一张IC卡可使用10年以上,且可实现,预收费,自动断电,加密等多种功能,但是IC卡收费系统也存在很大的缺陷,用户终端仍然与整个网络脱节从经济角度来看电力部门先收费后送电不符合经济政策,可以

9、说在一定程序上侵犯了用户的利益。随着我国提出发展智能坚强电网的提出,为我国电网设施的发展提供了机遇,未来,智能仪器仪表将向着数字化,智能化,网络化,微型化的趋势发展,并进一步与微处理器,PC技术融合,使仪器仪表技术的数字化,智能化水平不断提高。2 总体方案设计本电表采用分时计费原则,将电压,电流等参数进行采集,并输入微处理器,进行运算,并最终实现对于电能的准确计量和控制。2.1 方案比较智能电表的设计,是基于对用户电压电流信号进行采集,并通过微处理器进行核心运算,当电压电流信号通过采集以后,通过高精度的AD采样保持,最终输入微处理器,另一方面,通过IC卡座实现对IC卡内部金额的读取,输入单片机

10、,并且要求通过功率和电费的计算,进行显示与报警。对于电力参数的测试,例如电压,电流,有功功率,无功功率等,现在都有成熟的测量计算方法,对于电压有效值的测量,可以利用积分电路来实现,也可以利用时间采样信号,将信号值平方,去均值以后,得到平方根,通过AD,进行采样,有功功率定义为,和为电压和电流的有效值,为功率因数。而对于非正弦波形的计算,只有通过积分运算来完成。方案一:信号采集信号滤波AD转换微处理器LCD显示 报警察警键盘控制IC卡图2-1 方案一在本设计方案中,核心器件为微处理器,这里我们选用是STC89C52单片机,当信号采样后通过AD转换,送入微处理器,进行数据的分析和计算,智能电表的实

11、现必须对用户的功率进行准确的计算,在信号采集模块中,通过电压互感器和电流互感器,对用户的电压和电流信号进行采集,微处理器进行功率和电费的计算,可通过LCD显示,并可以通过键盘对分时电价进行调整,实现显示的转换和调整,并运用单片机内部时钟设计计时系统,以实现分时的控制。但是此设计有诸多缺陷,首先,在信号采集方面,由于智能电表对于功率的计算,如果单纯的使用单片机,会造成功率计算不准确,如果要提高计算的精度,对于信号的AD转换就必须采用高精度期间,成本费用增加,其次即便使用了高精度的AD,在功率计算,补偿方面的程序也想当繁琐,再则,由于使用分时计费系统,只用单片机内部时钟信号进行粗略的计时,产生的时

12、间误差比较大,长时间的使用下会导致计时不准确,而使得电费的计算出现误差。软件系统方面,其核心则是编写功率计算程序和AD采样程序,并通过键盘扫描的实现显示的切换。方案二:信号采集ADE7758微处理器键盘输入信号滤波LCD显示 报警时钟芯片IC卡图2-2 方案二本方案的设计思路与方案一大致相同,选用STC89C52单片机,作为微处理器,通过电压传感器,电流传感器实现对用户的电压电流采集,并在单片机中进行电价的计算,与方案一的不同之处在于,方案二中功率计算部分和AD转换采集部分被一块电能计量芯片ADE7758进行代替,该芯片是以一款高准确度的三相电能采集芯片,适用于计量各种三相,单项配置条件下的有

13、功,无功,视在电能,可省去高精度AD的费用的同时,也可以减少单片机内部处理功率的步骤,转由ADE7758完成。同时,由于该智能电表采用分时计费系统,方案二中特采用一块时钟芯片以提高对于时间的计时准确程度,以确保该电表可以准确计费,同时,由于时钟芯片本身集成有微型电池,可以在断电的情况下继续运行,保证了在智能电表断电的同时,计时系统不至于停止工作。在本方案中,由ADE7758进行功率的计算并进行校准,在该芯片中,通过每相有功增益寄存器写入数据,可对输出产生的平均功率经行改变,该芯片中在每个相位集成了一个有功偏移寄存器,该寄存器为12位寄存器,用以对有功功率经行校准,由于实际电路的工作环境的复杂和

14、多变,以及芯片本身制造工艺和各通道之间经行的干扰,都会造成误差的产生,有功功率寄存器的一个LSB相当于有功功率乘法器输出的LSB的1/16。在满刻度输出时,如果乘法器的输出为XCCCCS(838861d),LPF2输出端的1个LSB相当于在电流通道满刻度60dB计量误差的0.0075。在满刻度时,60dB(输入信号级别为满刻度信号输入的1/1000),LPF2的平均数值为838.861 (838,861/1,000)。LSB1/838.861/16100% = 测量值的0.0075% 。有功功率偏移寄存器修正分辨率为0.0075% ( 60 dB)4。另外ADE7758的各相有拥有一个空载阀值

15、,如果有功公功率的测量值低于满刻度的0.005%,则该值不会被累加,有效的避免了电表的浅动。ADE7758通过41个电能寄存器连续累加有功功率以实现对信号的积分作用,这种离散的累加作用就相当于连续时间的积分作用,平均有功功率的计算时,是有符号运算的,负电能将会在有功功率寄存器中被扣除。当有功功率为正,且达到最大值时,有功功率的数值将反转到达满刻度的负值0X800,并继续增加,当有功功率为负值,且持续减小到达最小时,会自动转为正的对大刻度0X7FFF,并继续降低。在软件系统上,该方案与方案一的区别在于,重点在对于ADE7738和DS12887两块芯片的读写程序的书写,在硬件的搭建上降低了难度,但

16、是在程序书写上难度有所增加。 2.2 方案选择通过对以上两种方案的具体描述,对他们各自的优缺点有了一定的了解。要完成对于电费的准确计算,并综合本次课程设计成本进行考虑,最终选择了方案二为本次设计的最终设计方案。3 器件介绍和单元模块设计只有各个系统单元模块的有机结合,才可以构成一个完整的系统。下面将介绍本次设计中使用的一些特殊器件和具体的各功能模块电路组成。3.1单元模块设计3.1.1 电源模块电路电源模块电路从电网220V电压作为输入,通过该电路后,输出端输出大小为5V的电压,作为单片机及其他芯片的VCC电源,具体的电路图如下图所示:图3.1 电源接线图图3-1为电压模块的电路图,该模块以电

17、网220交流电作为输入,通过整流桥整流后,再经过滤波,最后通过一块78L05稳压芯片进行稳压,得到一个稳定的5V电源,78L05的输出电流可达到100mA,无需外接元件,内部本身带有热过载保护,自带内部短路电流限制。该模块的仿真电路如下图所示:图3.2 电源仿真图图3-2为该电源电路的仿真效果图,可以看到,该模块可以很好的工作得到一个稳定的5V的电源。3.1.2 信号采集电路本次设计为智能电表,所以要对用户的电压和电流都进行采样,再通过ADE7758芯片来得到一个较为准确的功率值并输入单片机中,因此电压电流的采集电路如下图所示:图3.3 采集电路图3-3为电流电压采集电路,在电流采集电路中,通

18、过将电流互感器TA32BM串联到用户电路中,以采集用户的电流信息,TA32BM额定输入输出为5A/2.5mA,通过电流互感器将大电流转换到ADE7758可以接受的小电流范围内,然后通过滤波降低信号的干扰,最终输入芯片,在电压采集电路中,通过将电压互感器TV31B-02并联到用户的负载上,采集用户的电压信息,TV31B-02是一款电流型电压互感器,额定电流是2mA/2mA,所以要在电压互感器的缘边串联一个51K的电阻一降低互感器原边的电流值到可承受的范围,最后通过RC电路滤波后,得到一个近似0.5V的电压以输入到ADE7758芯片,和前面的电流值一起,计算出用户的功率。电压互感器相当于一个内阻很

19、小的电压源,正常运行时它的负载阻抗会很大,相当于开路状态,二次侧只有很小的电流,当二次侧短路时,负载阻抗为零,将产生很大的短路电流,会将电压互感器烧坏。因此,电压互感器二次侧严禁短路。电流互感器在正常运行时,二次电流产生的磁通势对一次电流产生的磁通势起去磁作用,励磁电流很小,铁芯中的总磁通就很小,二次绕组的感应电动势不会超过几十伏。如果二次侧开路,二次电流的去磁作用消失,其一次电流完全变为励磁电流,会引起铁芯内磁通剧增,铁芯处于高度饱和状态,加之二次绕组的匝数很多,就会在二次绕组两端产生很高(甚至可达数千伏)的电压,不但可能损坏二次绕组的绝缘,再者,由于磁感应强度剧增,使铁芯损耗增大,严重发热

20、,甚至烧坏绝缘。3.1.3 计量模块计量模块的核心是通过一块ADE7758芯片来完成,通过信号采集电路,将变换后的电压电流信号输入到该芯片,ADE77581是一款高准确度的三相电能计量芯片,带有两路脉冲输出功能和一个串行接口。ADE7758 集成了二阶-D模数转换器, 数字积分器,基准电路,温度传感器,以及所有进行有功,无功和视在电能计量以及有效值计量所需的信号处理元件1。图3.4 ADE7758接线图图3-4为芯片ADE7758的具体接线图,ADE7758作为一款适用范围极广且功能强大的电能计量芯片在本次设计中担任了重要的角色,通过DOUT管教直接与单片机连接,通过SPI总线方式,与单片机实

21、现数据之间相互通信,从而实现功率的计算,其中DOUT管角与单片机P1.4连接,SCLK与P1.3连接,DIN与单片机P1.7连接,CS片选信号与单片机P1.2连接。3.1.4 时钟及LCD显示模块本次设计设计中,该电表要实现分时计费,既必须引入时钟系统,该时钟系统必须准确,且在电表短时间断电之内,不会停止工作,因此,该模块采用了一块时钟芯片DS12887,该芯片为一款使用很广泛的时钟芯片,具体电路图如下图所示:图3.5 DS12887接线图图3.5为时钟芯片DS12887的连线图,其中DS与单片机P2.1口连接,R/W与单片机P2.5口连接,AS与单片机P2.4口连接,CS与单片机2.2口连接

22、。通过该芯片可以提供比较精确的万年历。同时智能电表的显示模块选用LCD显示,下图为LCD1602显示电路:图3.6 LCD1602接线图通过该LCD液晶显示器,显示我们需要的一些信息。上述两个模块通过与STC89C52单片机进行连接,可以实现万年历的功能,且可以保证,在智能电表短时间断电的情况下,时钟不会停止运行,继而实智能电表的分时计费系统可以准确的运行,我们用Protues仿真,电路图如下图所示:图3.7 万年历显示仿真图图3.7为万年历显示模块,上图中可以通过按键对LCD显示进行调整,可以显示万年历,分时电价,余额等信息。3.1.5 接触式IC卡模块这里IC卡模块我们选用的是西门子的SL

23、E4442加密型IC卡,SLE4442是一种具有加密逻辑电路的智能IC卡, 内含2568位EEPROM主存储器和一个32位带PROM 功能的保护存储器,其触点配置和串行接口符合ISO 7816 标准(同步传送),具备只有输入正确的3字节可编程密码(加密存储区) 后才能修改数据的特性。下图为具体模块2:图3.8 SLE4442卡座3.2 器件介绍3.2.1 STC89C52单片机STC89C52是一款高速度,高密度,低功耗的单片机,内置8位中央处理单元,256字节片内数据RAM,8K片内程序ROM,32个双向I/O口,还包含3个定时/计数器,拥有PDIP(40pin)和PLCC(44pin)两种

24、封装形式,本次设计中采用40管脚双列直插封装,功能强大,可以适用于较为复杂的工作环境,下图为STC89C52单片机管脚图:图3.9 STC89C52管脚图3.2.2 ADE7758ADE7758是一款高精度的电能计量芯片,具有高准确度,适用于三相/三线,三相/四线和其他各种三相系统,该芯片通过SPI数据串行接口和单片机进行连接,模拟电源端(AVDD)=数字电源(DVDD)=5V5%,模拟地端(AGND)=数字地(DGND) = 0 V, 使用片内基准源,CLKIN =10 MHz XTAL,温度范围为40C至+85C3。ADE7758的管脚图如下图所示:图3.10 ADE7758管脚图ADE7

25、758通过SPI串口读写时序图:图3.11 ADE7758写时序图3.12 ADE7758读时序3.2.3 DS12887DS12887为一款时钟芯片,该器件可以提供RTC/日历,闹钟,三个可屏蔽中断和一个可编程方波以及一个114字节的RAM,此RAM有电池备份,不会导致断电后时钟停止的现象,该器件把石英晶体和电池集成在了一起,少于31天的月份月末日期可自动调整,其中包括闰年补偿,该芯片还有一个精密的温度补偿电路用来监视VCC的状态,如果检测到主电源故障可自动转换到备用供电,该芯片接口支持Intel和Motorola两种模式,在本次设计中,采用的是Intel模式,具体读写时序图如下:图3.13

26、 DS12887写时序图3.14 DS12887读时序3.2.4 LCD1602LCD1602是一款工业字符型液晶显示屏,能够同时显示32个字符,内部带有80*8为的内部RAM缓冲区,可显示阿拉伯数字,引文字母大小写,常用符号和日文片假名等,每一个字符都有一个固定的代码,在本次设计中,可以通过LCD显示万年历,分时电价,剩余金额等数据信息,可以通过键盘来切换显示。部分主要指令说明如下:表3.1 LCD1602指令码指令码功能00111000设置16*2显示,5*7点阵,8位数据接口00001DCBD=1 开显示;D=0关显示C=1显示光标;C=0不显示光标B=1光标闪烁;B=0光标不闪烁000

27、000NSN=1当读或写一个字符后地址加一,光标加一N=0当读或写一个字符后地址减一,光标减一S=1当写一个字符,整屏显示左移(N=1)或右移(N=0),以得到屏幕移动光标不移动的效果S=0当写一个字符,整屏显示不移动80H+地址码设置地址数据指针01H显示清屏:所有指针清零,所有显示清零02H显示回车:数据指针清零LCD1602读写数据时序如下图所示:图3-15 1602读数据时序图3-16 1602写数据时序3.2.5 SLE4442SLE4442是德国西门子公司的接触式加密型IC卡,接口电路简单,编程方便,保密性好,其内部用于一个256*8位的EEPROM主存储器,另其还含有一个带有PR

28、OM功能的保护存储器,可进行加密处理,工作温度范围在070,至少可擦写10万次以上,数据保存期最少为10年,工作电压为5V。对IC卡操作的命令分为控制,地址,数据三个部分,传送从控制字节LSB开始,其具体命令如下面所示:表3.2 IC卡命令格式及功能字节1字节2字节3控制地址数据操作00110000输入地址无效读主存储器00111000输入地址输入数据升级主存储器00110100无效无效读保护存储器00111100输入地址输入数据写保护存储器00110001无效无效读加密存储器00111001输入地址输入数据升级加密存储器00110011输入地址输入数据比较数据校验4 软件设计本设计中,以ST

29、C89C52作为微处理器,采用C语言进行编程,配合硬件电路,共同构成了本次设计的核心部分。4.1 主要芯片读写程序设计及设计工具本次设计采用C语言,C语言具有简洁明了的特点,在本次设计中,按照各芯片的读写操作时序,以SPI总线操作方式,分别对DS12887时钟芯片,ADE7758电能计量芯片进行读写操作,即可基本完成本次设计的主要功能,同时兼顾完成切换显示时间,电价以及查询余额,并可以调节电价。在读取DS12887时钟芯片时,按照其读写时序,当要写入数据时,先要写入地址,将CS置低,SA,DS分别置高,RW置高,然后给P0口赋值,即要写入的地址,然后将AS,RW置低,再一次给P0口赋值,即要写

30、入的数据,最后将AS,RW,CS,拉高,同理,在读取数据时,也要先写入一个地址,将AS,DS,RW置高,将CS置低,给P0口赋值地址,然后将AS,DS拉低,P0读取数据,最后DS,AS,CS,全部拉高,具体C语言函数如下:void write_ds(uchar add,uchar date)dscs=0;dsas=1;dsds=1;dsrw=1;P0=add;dsas=0;dsrw=0;P0=date;dsrw=1;dsas=1;dscs=1;uchar read_ds(uchar add) uchar ds_date;dsas=1;dsds=1;dsrw=1;dscs=0;P0=add;ds

31、as=0;dsds=0;P0=0xff;ds_date=P0;dsds=1;dsas=1;dscs=1;return (ds_date); 同时,在读取ADE7758芯片中有功功率时,同样,按照其读时序图,先将CS拉低,选中信号,再用SCK模拟一个时钟信号输入,先向ADE7758写入一个地址,再从芯片读出数据,ADE7758和DS12887读写程序最大的不同在于,DS12887可以将8位数据一次性读出,而ADE7758只能一位一位的读取,因此,在书写读写函数的时,需要指明,读取数据的位数。在CS保持低电平的时候,所有的数据传输必须全部完成,另外,除了整体器件复位以外,没有其他方法可以让ADE7

32、758返回通信状态,所以必须传输各寄存器的LSB,复位的方法是运用软件进行复位。如前所述,在第一个字节正在向目标寄存器传送是,可以同时开始另一个字符的传送,但是第二个字节的传输过程不应该在第一个字节传送完成前至少900ns内不应该结束。当ADE7758寄存器经行读取操作访问时,读取命令个写入命令之间至少需要有1.1us的时间间隔,若果间隔过小,将会导致写入操作的最后一个字节丢失,具体位数参见芯片说明书,具体读取函数如下:unsigned long read7753(unsigned char type,unsigned char databit) unsigned char loop=0; u

33、nsigned long rtdata=0; type=type&0x7F; type=type|0x00; for(loop=0;loop8;loop+) SCK=1; _nop_(); if( type&0X80 )SDO = 1;elseSDO = 0;_nop_(); SCK=0; _nop_(); type=(type1); for(loop=0;loopdatabit;loop+) SCK=1; _nop_(); rtdata=(rtdata1); /上升沿读出数据if(SDI) rtdata+=1; _nop_(); SCK=0; _nop_(); return(rtdata);

34、 本次设计的另一个重点就是现实程序,1602的显示程序同样按照其读写时序图完成,不同的是,1602的显示,需要在主程序的开始写一个初始化函数用以设定1602的显示方式,光标等等,在本次设计中,只涉及到1602的写程序,写数据时,同样需要先写入地址,写地址时,先将RS,EN置低,延迟后再将EN拉高,赋予地址,最后将EN拉低,写数据与读不同之处在于要将RS拉高其余同写地址时一样,具体初始化函数,写函数如下:void init()lcden=0;dula=0;wela=0;set_time(); write_com(0x38);write_com(0x0c);write_com(0x06);writ

35、e_com(0x01);void write_com(uchar com)rs=0;lcden=0;delay(5);lcden=1;P0=com;lcden=0;void write_date(uchar date)rs=1;lcden=0;delay(5);lcden=1;P0=date;lcden=0;本次设计采用Keil uVision2作为编程工具,用Protues进行实物制作前的仿真,Keil作为现在主流的单片机编程工作具有操作简单,快捷的优点,同时可以与Protues联动方便调节和仿真,另用STC-ISP V31将程序下载至单片机上运行。在本次软件设计中,最困难的地方在于对ADE

36、7758的读写操作,ADE7758是一块应用非常广泛的电能计量芯片,第一次使用该芯片时,对于串行的读写操作了解不够深入,导致在书写程序的过程中,时序先后发生错误,不知道如何移位读取等等,后来参考一些例子以后最终调试成功。4.2 主要软件设计流程框图及说明主要流程图如下图所示:结束开始报警程序初始化检测IC卡NY读取ADE7758读取完成?N计算余额余额是否为0?N检测标志位键盘扫描LCD显示检测中断YNY图4-1 主程序流程图本次设计的主要流程为当IC卡插入卡座,单片机检测到IC卡并读取其金额开始计时,当按照开始设定好红灯亮起,同时,LCD显示屏强制转换到余额界面,字体开始闪烁,蜂鸣器长鸣,此

37、时停止计费,并且开始检测键盘,当按下键盘key4后,警告解除,LCD显示界面重新返回时间界面。令一方面,在计费系统正运行时,可以通过键盘检测,切换显示界面,显示界面共有4种,分别为当前时间,3种电价,余额,共计5种界面,当按下键盘key1后,在当前时间界面和3种电价界面,可以调整时间和电价,增加或者减少,分别由键盘key2,key3来控制,由此来完成时间,电价的调整。比照DS12887中去读的时间参数,选取电价开始计算余额,当余额定于30元时,蜂鸣器每一分钟鸣一次,当余额为0时,蜂鸣器长鸣。5 系统硬件调试由于时间和条件的显示,此插卡式自能电表只是简略的实现其功能,在实物的构架中,利用一块单片

38、机开发板,并自己利用万用板搭建了其他的外围电路,因此该硬件总共分为三大部分:电源部分,采集部分,核心处理部分。如前期仿真中所示,电源部分使用220V交流电,通过变压器变压为12V之后,利用一块L7805稳压芯片,很好的得到了一个较为稳定,且接近5V的电压,误差在+0.02V左右,可以利用其很好为单片机与其他核心芯片进行供电,且在自己搭建的电路中,采取了滤波等措施,电源质量较良好。下图为电源模块实物图:图5-1 电源实物图采集电路部分,也是自己利用万用板搭建,运用电压互感器,电流互感器为核心,进行变压采样,变压后的电压理想值为0.5V,由于实际环境等影响,其电压真实值为0.55V,但不会对功率计

39、算造成太大的影响,电压电流信号进ADE7758之后,即可由单片机进行读取,获得有功功率,用于计算电价,在制作过程中,用15W的灯泡作为用户的负载真实的采集电路如下图所示:图5-2 采集电路实物图核心处理器件部分以89C52单片机为核心运行,分别可以显示万年历,电价,余额等等信息,整体设计的实物图如下图所示,令附带效果演示,万年历,电价,以及余额。图5-3 万年历实物效果图图5-4 峰时电价显示实物效果图图5-5 剩余电价显示实物效果图图5-6 警告显示效果图图5-7 实物整体效果图在硬件搭建过程遇见了很多问题,比如,ADE7758是一块贴片封装的芯片,由于条件限制万用板上不能进行焊接,后来经过

40、寻找,在网上发现了一种小型PC贴片转双列直插式的PCB电路板,后来通过小心焊接,终于完成,但是由于技术水平有限,PCB版还是出现了轻微的损坏。在调试LCD1602显示的时候,由于操作不当,导致1602损坏,屏幕只能进行一半的显示,造成了元器件的浪费,同时在采集回路中,由于考虑不全,在采购电阻时,只考虑到其电阻值的大小,没有考虑到其功率的承受能力,导致51K电阻在稍微长时间的运行状态下发热比较严重,也导致功率的计算结果也产生了一定的误差。另外在调试板子的过程中,由于220V电源侧开始没有采取措施保护,在调试过程中手指跨接在电极之间被电击,进过这次事故之后,自己的安全意识也得到了提高。6 系统软件

41、调试该程序是用C语言完成,C语言具有简洁紧凑,灵活方便的特点,在调试程序的时候,软件部分大致可以分为两个部分,一部分是万年历等信息的显示部分,一部分是信号采集部分。第一部分,万年历等信息的显示部分,可以用Protues进行仿真,Protues是一款非常实用的仿真原件,通过载入程序到单片机中,利用DS12887时钟芯片构成的仿真效果图,如下图所示:图6-1 仿真演示效果图如上图所示,当路灯亮的时候,表示计价开始,图中4个键盘,通过键盘扫描程序,可以切换显示万年历,电价,余额等信息,当电价为零时,蜂鸣器长鸣,同时,绿灯熄灭,红灯亮起,LCD显示屏显示余额为零,效果如下图所示:图6-2 仿真演示效果

42、图由于ADE7758在Protues的库里面没有,所以无法进行仿真,只有用实物进行演示。本次软件设计中比较艰难的部分在于ADE7758的读写程序以及DS12887在没有实物的情况下经行仿真,前者是因为对于SPI接口的读取掌握还是不到位,后者是因为软件版本问题,Protues7.6版本以前的库中没有DS12887时钟芯片,出于经费和稳妥起见的考虑长时间滞留在此处,后来在朋友的帮助下得以解决。7 总结与体会本次设计让我受益匪浅,作为即将应届毕业生,本次毕业设计让我将4年所学的知识有机的进行整合,对于即将踏上工作岗位的我有着重要的意义,本次设计的题目为强弱电结合,对我来说颇有难度,同时具有很强的实际

43、意义,近几年,国家电网建设飞速发展,在建设坚强智能电网的口号下,国家正在大力推行新型智能电表,通过本次设计对于智能电表在设计过程存在的问题有了一些初步的了解,并着手解决这些问题,并且本次设计是第一次自己独立的设计并制作出可以使用的实物,虽然离目标还有一定的距离,精度是不很高,但是大大提升了自己的综合实践能力。其次,在本次设计中,所有的数据计算,器件的购买,搭建都是自己独立完成,进一步了解了产品制作的流程为了完成设计,同时查阅了大量的书籍和资料,自己独立思考和学习能力得到了很好的锻炼和提升,在设计同时,大量运用了Keil,Protues等软件,大大提升了熟练度,并在Protel绘制电路图,并了解

44、到仿真与实际电路效果之间存在较大的差距,并通过自己的努力不断的实现预定目标。本次设计中存在不少遗憾,如ADE7758的校准调试程序,IC卡的加密等等,留下了不少的遗憾,通过本次设计,我发觉了自己很多的不足之处,对于一个即将进入社会的我,有这样而一个机会想当难得,并且伴随实物调试的顺利完成,增强了信心,我会在以后的工作和学习中不断努力,奋进。8 谢辞在本次设计中,遇见了很多的困难,但是在指导老师的悉心指导和同学们的帮助下,基本实现了预定功能,完成了设计,从最开始茫然无措,到后来慢慢步入正轨,三个月的奋斗,让我收获良多,在老师的悉心知道下,从最开始的仿真模拟,到后来的实物调试,每一个微小的进步都让

45、我兴奋不已。再此我要特别感谢本次毕业设计的指导老师,谢维成老师,通过每周的见面,老师对我进行了悉心的指导,对我设计中存在的问题和不足进行了批评和指正,不厌弃烦的进行讲解,让我受益匪浅,本次设计的顺利完成和老师的悉心指导密不可分,感谢谢老师。9 参考文献 1李泉,海保军.RS-232 收发器接口芯片SP3223E3243E 的原理及应用J. 国外电子元器件,2004(9):42-44.2李树靖,林凌,李刚.LOC11X 系列光耦合器的特性及应用J. 国外电子元器件,2003(6):42-44.3小型三色SPI 总线LED 驱动器NLSF595J. 国外电子元器件,2003(2):78.4 何仰赞、温增银.电力系统分析M.武汉:华中科技大学出版社,2009.15 张毅刚.单片机原理及应用M.北京:高等教育出版社,2009.27 张广军.微机原理及接口技术M.成都:电子科技大学出版社,2007.78 罗兴垅, 黄隆胜. 基于AT89C51 控制的0.01数显温度计的设计J. 微计算机信息,2006(5-2) :70-72.9 余永权.ATMAEL89 系列单片机应用技术M. 北京: 北京航空航天大学出版社,2002.10 李军. 系列单片机高级实例开发

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号