单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc

上传人:文库蛋蛋多 文档编号:4144563 上传时间:2023-04-07 格式:DOC 页数:26 大小:845.50KB
返回 下载 相关 举报
单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc_第1页
第1页 / 共26页
单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc_第2页
第2页 / 共26页
单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc_第3页
第3页 / 共26页
单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc_第4页
第4页 / 共26页
单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc》由会员分享,可在线阅读,更多相关《单片机在电力系统的应用课程设计多用户电子式电能表的设计和调试.doc(26页珍藏版)》请在三一办公上搜索。

1、 课程设计报告 课程名称:单片机在电力系统的应用 课题名称:多用户电子式电能表的设计和调试 班 级:电气工程及其自动化08-1班 姓 名: 学 号: 2011年07月2日 前言多用户电子式单相电能表采用单片机作为中央处理器,每块电能表可对多达24户的用电情况进行集中检测、循环显示。各户的用电量可以就地读取。多用户电子式电能表采用了“分户用电、集中检测”的方式,与传统感应式电能表相比,有效地提高了电能计量的准确性,而且整机体积小、质量轻、安装方便。在多用户电子式电能表的前面板上有6位LED显示器,前两位为分户号,后4位为分户用电量,所显示的用电量与分户号相对应,分户循环显示,每3s切换一户。 此

2、外,电能表还必须有断电保护功能,确保用户在断电后能够保存之前的用电数据,在恢复供电时能够继续按照断电前得数据开始计数。 同时,该类电能表还必须有清零功能,每个控制单元上都对每户设置了相应的清零开关,当相应的用户开关按下时,该用户的用电量亦随之清零。 目录一 设计任务及要求-4二 设计原理分析-4三 硬件电路设计-43.1 单片机电路板设计-43.2 +5V稳压电源-73.3 光电隔离电路-73.4 AD7755相关电路-73.5 参数设定-113.6 用户清零电路的设计-12四 软件设计-124.1 流程图-124.2 程序内容-18五 设计总结-26六 参考资料-21 一 设计任务及要求 设

3、计任务:多用户电子式单相电能表设计与调试 设计目的: 了解单片机在电力系统中的应用,在全面掌握单片机的功能的基础上,初步接触它在本专业的应用范围。要求独立完成,培养我们独立自主的习惯。设计内容:硬件设计与软件设计。硬件设计包括:C8051F360单片机整体电路设计、+5V稳压电源电路设计、光电隔离电路设计、基于AD7755的电能脉冲发生器电路设计;软件设计包括:用C8051F360单片机及编写具有掉电保存功能和清零功能的用户电量显示程序。设计要求:AD7755电能脉冲发生器电路仅作电路硬件设计,其电能脉冲由C8051F360单片机P2口所接拨码开关产生的脉冲模拟。用户电量显示要求精确到小数点后

4、3位1000个电量脉冲为1度电每个用户显示时间为3S左右为防止突然停电而使用户电量数据丢失,要求能将电量数据保存,需要设计单片机24C16模块,使其具有掉电保存功能。为了能够方便记取各个用户电量,需要为每一户设计清零程序。 二 设计原理分析电子式电能表是在数字功率表的基础上发展起来的,采用乘法器实现对电功率的测量,其工作原理框图如图3-10所示。被测量的高电压u、大电流i经电压变换器和电流变换器转换后送至乘法器M,乘法器M完成电压和电流瞬时值相乘,输出一个与一段时间内的平均功率成正比的直流电压U,然后再利用电压频率转换器,U被转换成相应的脉冲频率f,将该频率分频,并通过一段时间内计数器的计数,

5、显示出相应的电能。 图1 电子式电能表工作原理框图三 硬件电路设计3.1 单片机电路板设计本设计采用的是C8051F360单片机为核心的电路板。C8051F360单片机整体电路板包含:C8051F360单片机、LED/FMQ报警、RS-232通信、USB接口、电源接口、LM336-2.5、下载/复位、外接器件、5V-3.3V、两路AD输入、信号输入、PCF8563、24C16、74HC165、74HC164显示等模块。本次设计中主要用到的部分有C8051F360单片机、PCF8563、24C16和74HC164显示等模块。C8051F360单片机为主要部件,它具有片内上电复位电路、VDD监视器

6、、看门狗定时器和时钟振荡器器件,是真正能独立工作的片上系统。FLASH 存储器还具有在系统重新编程能力,可用于非易失性数据存储,并允许现场更新8051 固件。用户软件对所有外设具有完全的控制,可以关断任何一个或所有外设以节省功耗。其P1.0,P1.1口产生的脉冲向74HC164显示输送数据,使其显示相关信息,P2口接拨码开关,模拟AD7755电量脉冲,PCF8563、24C16部件实时存储用户电量信息,并在掉电后保存,单片机上电复位后能够从中读取数据。FM24C16是用先进的铁电技术制造的16K位的非易失性的记忆体铁电随机存储器FRAM具有非易失性并且可以象RAM一样快速读写数据在掉电可以保存

7、10年且比EEPROM或其他非易失性存储器可靠性更高系统更简单不象EEPROM FM24C16以总线速度进行写操作无延时数据送到FM24C16直接写到具体的单元地址下可以立即执行FM24C16可以承受超过100亿次的读写或者是比EEPROM高一万倍的写操作FM24C16的写能力使得它在需要对非易失性记忆体快速读写的状况下非常理想举例说数据采集系统中对写入数据的频率要求高即速度要求非常快使用EEPROM可能丢失数据这种优势合并使得系统可以更可靠的实时采集数据FM24C16为使用串EEPROM的用户提供了便利它在硬件上可以直接替换EEPROM。以下是电路板的相关电路图。 图2 74HC164显示电

8、路 图3 24C16与C8051F360连接电路 3.2 +5V稳压电源电源是电能表设计的重要部分,其设计的好坏对整个系统的性能有较大影响。本设计使用的稳压电源是由MC7805实现的,输入电压220V,输出电压+5V。集成三端稳压器稳压精度高、工作稳定可靠、外围电路简单、容易设计和制作、体积小、重量轻、成本低、维修简单。7805集成三端稳压器的典型应用电路如图2所示,这是一个输出+5 V直流电压的稳压电路。IC采用集成三端稳压器7805,C1、C 2分别为输入端和输出端滤波电容,RL为负载电阻。电路如下图。 图5 +5V稳压电源电路图 3.3 光电隔离电路在实际应用中,许多电路链接之间需要非直

9、接的连接,从而在提供数据的同时避免来自系统某一部分的危险电压或电流对另一部分造成破坏,造成这种破坏的可能是电源质量低劣、接地故障等各种故障。电路隔离的主要目的是通过隔离元件把干扰的路径切断,从而达到抑制干扰的目的。我们选用光电隔离法,光电隔离元件里面包含两个基本元件:光发射元件和光接收元件,因光电隔离元件中的光发射元件和光接收元件中间是以光的形式相互联系的,在电气上没有直接相连,从而达到在电气上的隔离作用。光电耦合的主要优点是:信号单向传输,输入端与输出端完全实现了电气隔离,抗干扰能力强,工作稳定。光电耦合电路如下图。 图6 光电隔离原理电路图 3.4 AD7755相关电路AD7755是AD公

10、司推出的脉冲输出的一种高准确度电能测量芯片,AD7755在低频输出端提供平均功率信息,在高频输出端输出频率正比有效功率的脉冲,AD7755还有自校准功能。AD7755内部包含一个对AVdd电源引脚的监控电路。在AVdd上升到4V之前,AD7755一直保持在复位状态。当AVdd降到4V以下,AD7755也被复位,此时F1、F2和CF都没有输出。下图是AD7755的相关电路图。 图7 AD7755功能框图 图8 AD7755性能测试电路1、 电流采样电路:图2.6 电流采样电路使用分流器的电流采样电路如图2.6所示,其中F1为分流器,R1、R2为采样电阻,C1、C2为采样电容,他们为电流采样通道提

11、供采样电压信号,采样电压信号的大小由分流器的阻值和流过其上的电流决定。电流采样通道采用完全差动输入,V1P为正输入端,V1N为负输入端。电流采样通道最大差动峰值电压应小于470mV,电流采样通道有一个PGA,其增益可由ADE7755的G1和GO来选择,见表1: 表1G1G0增益最大差动信号001470Mv012235Mv10860Mv111630Mv当使用分流器采样时,G1、G0都接高电平,增益选择16,通过分流器的峰值电压为30mV,当设计电表为5(20)A规格时,分流器阻值选择为500u,当流过分流器的电流为最大电流20A时,其采样电压为500u20A=10mV,不超过峰值电压半满度值,这

12、样考虑能允许对电流信号和高峰值因数进行累计。当使用互感器采样时,其电路如图2.7所示:图2.7 互感器采样电路使用互感器采样时,G1、G0都接低电平,增益选择1,电流采样通道最大差动峰值电压为470mV,其差动信号由互感器的二次侧电流流过电阻R30和R31产生,互感器二次侧额定电流为5mA,当过载4倍时,二次侧电流为20mA,其流过电阻R30和R31产生的差动信号为96mV,远小于峰值电压半满度值(235 mV)。R1C1和R2C2组成两个低通滤波器,衰减掉那些无用的高频分量,从而防止有用频带内的失真。R1、R2、C1、C2阻值、容值的选取对电表的性能有很大的影响,因此取值为R1= R2=30

13、0欧,C1=C2=27nF。2、 电压采样电路:R24390K/0.25WR23390K/0.25WR97.5KR1256KR13100KR14200KR1015KR1130KR83.9KR72KR19100KC31000pFR4820R5820C41000pFAGNDAGNDR61KR31AGNDJ9J8J7J6J5J4J3J2J1CL-220pFCL+3.3nF220VV2PV2N图2.8 电压采样电路电压输入通道(V2N,V2P)也为差分电路,V2N引脚连接到电阻分压电路的分压点上,V2P接地。电压输入通道的采样信号是通过衰减线电压得到的,其中R6至R15为校验衰减网络,通过短接跳线J1

14、至J9可将采样信号调节到需要的采样值上,我们设计的电能表基本电流时电压采样值为174.2 mV,为了准许分流器的容差和片内基准源8%的误差,衰减校验网络应该允许至少30%的检验范围,根据参数,其调节范围为169.8 mV 250 mV,完全满足了调节的需要。这个衰减网络的-3dB频率是由 R4和C3决定的,R19、R23、R24确保了这一点,即使全部跳线都接通,R19、R23、R24的电阻值仍远远大于R4,R4和C3的选取要和电流采样通道的R1C1匹配,这样才能保证两个通道的相位进行恰当的匹配,消除因相位失调带来的误差影响。3、 轻载调节电路图2.9轻载调节电路轻载调节电路如图2.9所示,其原

15、理是用电压采样处的电压值再经分压后加到电流采样的正或负端来增大或减小电流采样,达到调节的目的。当短节S2到I+或I-时,附加到分流器端的电压值为:Vq=R1Vx/ (R20+R1)R1、Vx已知,可通过改变R20的值来改变需要补偿的电压值。根据计算当R5为200k时,Vq约为0.0003mV。在轻载时电流采样值Vi=2.5mV0.05=0.125mV。轻载误差改变量为0.0003/0.125=0.0024即0.24%,在校验台上表现为轻载误差增大或减小0.24。 图9 AD7755引脚排列图 3.5 参数设定+5V稳压电源的参数有:变压器副边绕组的交流电压有效值,整流元件的参数,电容C1、C2

16、的数值以及集成三端稳压器的选用。以下即参数计算:(1) 电容C1,可用下式进行计算: 式中:10ms为交流电网电压周期的一半。取Vimin=7.3V。因为在使用三端稳压器时,为了保证稳压性能,输入端和输出端间电位差至少应在2 V以上,一般对输出电压不大于18V的稳压器,输入电压应小于35V, 按输出电流应有10的余量,取通过计算,得:C1=3014uF。(2) 变压器副边绕组的交流电压有效值,可用下式进行计算:通过计算,得:V2=9.9V。为了留有一定裕量,取V2=10.5V。(3) 桥式整流电路中,每个整流二极管在交流电网电压最高时承受的最大反向峰值电压为为了安全,整流管的反向耐压应当比上述

17、值大50%以上,因此选择整流管时,其反向耐压应按下式考虑:桥式整流电路中,每个整流二极管的正向电流平均值是输出电流的一半,其最大值是由于在接通电源瞬间有相当大的冲击电流( 即充电电流) 通过整流管,因此,整流管的参数( 正向电流平均值)应比上述值大0.52倍。若按比上述值大0.8倍考虑,则根据上述计算,可选用1A/25V或1A/50V的桥堆。(4)变压器副边绕组电流的有效值Iac要比输出电流Iomax大,这里我们取因此,变压器副边绕组导线的粗细应按额定电流(交流有效值)为2 A选用。(5)电容C 2的作用是减小稳压电源输出端由输入电源引入的低频干扰,其数值在100uF左右。 3.6 用户清零电

18、路的设计 如图,即为电能表的用户清零电路,采用74HC165芯片作为清零信号的接收和发出的端口。P1.5接芯片的两个时钟脉冲信号端,同时P1.2也要有低电平信号才能使165芯片在P1.4口输出相应的信号。 四 软件设计 4.1 流程图设计 4.1.1主函数流程图 开始初始化定义写SFR定义31H3FH为脉冲存储单元读取24C16记录P2口的状态于22H单元终端形式50ms时钟初始化,计数存储单元21H=0TF0=1 ? N Y进入中段判断P2口状态改变P2.x状态改变 N Y对应存储单元加1判断是否有清零脉冲 N2 3 1 3对应用户24C16相应区域清零221H单元内满60,即计满3S 1

19、N Y i=9调用显示第i个用户电量写入24C16i自加1将第i户脉冲个数转换成对应电量i置1返回主程序N1 4.1.2 AT24C16读写函数流程图4.1.3 用户扫描函数流程图4.1.4数码管显示函数流程图 4.2 程序内容$NOMOD51$include (c8051f360.inc) CLKLED EQU P1.1;数码管164时钟 LED EQU P1.0;数码管数据线 SDA EQU P1.3 SCL EQU P1.6 ORG 0000H LJMP MAIN ORG 000BH LJMP T0_INT MAIN: LCALL CHUSHI ;调用F360初始化程序/定义30H-3F

20、H为脉冲存储区域 MOV R7,#10H ;脉冲个数存储区域清零 MOV R1,#30HMC: MOV R1,#00H INC R1 DJNZ R7,MCLCALL READ ;读24C16MOV 20H,#1 ;用户名MOV 21H,#0 ;定时2S的计数单元MOV 22H,P2 ;暂存P2口的状态 MOV TMOD,#01HMOV TH0,#0D8H ;定时50ms采样周期MOV TL0,#0F0HSETB ET0SETB EASETB TR0 SJMP $/进入中断子程序T0_INT: MOV TH0,#0D8H ;进入中断采样 MOV TL0,#0F0H MOV R1,#3FH ;第八

21、户MOV R6,#00H MOV A,P2 XRL A,22HMOV 22H,P2AA: JNB ACC.7,AA1 ;判断某户是否有脉冲 LCALL COUNT ;有脉冲,则计数 AA1: INC R6 CJNE R6,#08H,AA2 ;判断8户是否均采样完毕 SJMP LCALAA2: DEC R1 ;进入下一户的存储单元 DEC R1RL A ;左移一位SJMP AALCAL: LCALL SCAN ;判断是否有清零信号LOO:INC 21H MOV A,21HCJNE A,#28H,MM ;定时2S,顺序执行显示 LCALL WRITE ;调用写入程序MOV 21H,#0MOV A,

22、20H DEC ARL A ;左移,即乘2ADD A,#30H ;将存储单元与用户联系并对应 MOV R1,A LCALL DIP ;调用显示程序 INC 20H ;用户名加1MOV A,20HCJNE A,#09H,MM MOV 20H,#1MM: RETI/-初始化子程序-chushi: MOV SFRPAGE,#0FH MOV P1MDIN,#0FFH ;数字输入 MOV P1MDOUT,#0EFH ;推挽输出 MOV XBR1,#40H ;交叉开关使能 MOV PCA0MD,#00H ;关闭看门狗 MOV PSCTL,#13HMOV OSCICN,#83H ;内部振荡器允许,不分频 M

23、OV DPTR,#tab RET/-脉冲计数子程序-COUNT: PUSH ACC CLR C MOV A,R1 ADD A,#1 MOV R1,A DEC R1 JNC LL INC R1 ;有进位LL: INC R1 ;某户地位地址 POP ACC RET/-显示子程序- DIP: MOV 51H,20H ;设51H-56H为数码管显示存储区域 MOV 52H,#10 MOV 53H,#0 MOV A,R1 MOV B,#80H ;设1000个脉冲为1度电 MUL AB MOV 25H,A INC R1 MOV A,R1 MOV B,#02H DIV AB ADD A,25H MOV B,

24、#100 DIV AB MOV 54H,A ;十分位 MOV A,B MOV B,#10 DIV AB MOV 55H,A ;百分位 MOV 56H,B ;千分位 MOV R0,#56H MOV R7,#0RE: CALL dispn INC R7 DEC R0 CJNE R7,#8,RE RETdispn:MOV DPTR,#TAB MOV A,R0 PUSH ACC MOVC A,A+DPTR CJNE R0,#53H,NEXTANL A,#0F7H NEXT: MOV R4,#08hRR1: RRC AJC SET1JNC SET0SET1: CLR CLKLEDSETB LEDSETB

25、 CLKLEDDJNZ r4,RR1JMP RETURNSET0: CLR CLKLEDCLR LEDSETB CLKLEDDJNZ R4,RR1RETURN:POP ACC RET/-写2416程序-WRITE :LCALL STR;调开始子程序 MOV A,#0A0H;控制字,2416的物理地址和写控制位 LCALL I2C_W1W;调向2416写一字节并接收信号子程序 JB F0,WRITE;若写失败,从头开始 MOV A,#00H;选择地址 LCALL I2C_W1W JB F0,WRITE;至此,地址写完 MOV R0,#30H MOV R7,#10HII1: MOV A,R0;将3

26、0h-3FH的内容写到2416中 LCALL I2C_W1W JB F0,WRITE INC R0 DJNZ R7,II1 LCALL STP;调停止子程 LCALL DELAY RET/-读2416程序-READ: LCALL STR MOV A,#0A0H;控制字,2416的物理地址和写控制位 LCALL I2C_W1W;调向2416写一字节并接收信号子程序 JB F0,READ;若写失败,从头开始 MOV A,#00H;选择地址 LCALL I2C_W1W JB F0,READ;至此,地址写完 lcall STR MOV A,#0A1H;控制字,2416的物理地址和读操作位 LCALL

27、I2C_W1W JB F0,READ MOV R0,#30H MOV R7,#16JJ3: LCALL I2C_R1W;调用从2416中读1字节子程序 MOV R0,A;将从2416中读出的内容存储到30h-3Fh中 INC R0 DJNZ R7,JJ3 SETB F0 LCALL I2C_R1W LCALL STP RET /-启动2416子程序-STR:SETB SDANOPSETB SCLNOPNOPNOPNOPNOPCLR SDANOPNOPNOPNOPNOPCLR SCLRET/-停止2416子程序-STP:CLR SDANOPSETB SCLNOPNOPNOPNOPNOPSETB

28、SDANOPNOPNOPNOPNOPRET/-向2416中写一字节并接收2416返回的信号-I2C_W1W:MOV R5,#8 CLR SCLAR_LP1: NOP NOP NOP NOP NOP RLC A MOV SDA,CNOPNOPSETB SCLNOP NOP NOP NOP NOPCLR SCLDJNZ R5,AR_LP1NOPNOPSETB SDANOP NOPNOPSETB SCLNOPNOPNOPNOPCLR F0JNB SDA,ACKENDSETB F0ACKEND:NOPCLR SCLNOPNOPRET /-从2416中读出1字节,并发送应答或非应答信号I2C_R1W:M

29、OV R5,#08HRCV: SETB SDA NOP CLR SCL NOP NOP NOP NOP NOP SETB SCL NOP NOP NOP NOP NOP CLR C JNB SDA,RCV0 SETB CRCV0: RLC A NOP NOP DJNZ R5,RCV CLR SCL NOP NOP NOP NOP CLR SDA JNB F0,SENDACK SETB SDASENDACK:NOP NOP SETB SCL NOP NOP NOP NOP NOP CLR SCL CLR F0 RET/-清零子程序-SCAN: MOV R0,#8HMOV R1,#30HCLR P

30、1.2NOP NOP NOPSETB P1.2QINGLING:CLR P1.5 SETB P1.5 JNB P1.4,CC1 SJMP DD1CC1: MOV R1,#0 INC R1 MOV R1,#0 INC R1 SJMP DD2DD1: INC R1 INC R1DD2: DJNZ R0,QINGLING RET /-延时子程序-DELAY: MOV R3,#30H MOV R5,#0FFHloop : NOP DJNZ R5,LOOP DJNZ R3,loop RETTAB:DB 88H,0ebh,4ch,49h,2bh,19h,18h,0cbh,8h,09h,07fh ;0,1,2,3,4,5,6,7,8,9 END五 设计总结 本次单片机设计,我收获很多。比如对单片机在电力系统中的应用有了一个更加深入的了解和感悟。同时,也学到了一些处理问题的新的方法和思路,对譬如AD775、24C16等芯片的作用和处理接入方式有了一个比较好的理解。 此外,在编程中,我们对清零程序何时开始运行和单片机的中断和计数等分支程序有了更加深入的了解。

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号