關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于ADI ADE7755的單相復(fù)費(fèi)率電能表設(shè)計(jì)方案

基于ADI ADE7755的單相復(fù)費(fèi)率電能表設(shè)計(jì)方案

作者: 時(shí)間:2012-04-25 來源:網(wǎng)絡(luò) 收藏

1.1 DDSF系列電能表設(shè)計(jì)方案概述

本文引用地址:http://butianyuan.cn/article/201609.htm

DDSF系列電能表的硬件電路設(shè)計(jì)由電源電路設(shè)計(jì)、計(jì)量電路設(shè)計(jì)、通訊電路設(shè)計(jì)、MCU及其它部分電路設(shè)計(jì)四大部分組成。其中核心部分是計(jì)量電路的設(shè)計(jì),它是電能表計(jì)量準(zhǔn)確性的關(guān)鍵部分,是電能表計(jì)量功能的體現(xiàn),但是其他部分也是缺一不可的,特別是單片機(jī)控制器,它是電能表系統(tǒng)的靈魂,實(shí)現(xiàn)系統(tǒng)中各個(gè)部件協(xié)調(diào)控制,人機(jī)交互,多費(fèi)率控制等等重要的功能。

1(952).jpg

由上圖所示,電源電路為了提高系統(tǒng)的抗干擾性、可靠性,分為三個(gè)獨(dú)立的電源,使計(jì)量電路,RS485通訊和MCU的電源相互隔離,達(dá)到互不影響的目的,但是它們使用同一個(gè)變壓器,所以應(yīng)注意變壓器的選擇。在計(jì)量電路部分,7755芯片是一個(gè)數(shù)?;旌系碾娐?,因此設(shè)計(jì)較為困難,要到達(dá)良好的計(jì)量效果,要采取一定的抗干擾措施(比如數(shù)字地和模擬地應(yīng)在PCB板上單點(diǎn)連接),特別是在對(duì)電流、電壓采樣的電路直接接在外部線路上,干擾比較嚴(yán)重。I2C總線在整個(gè)系統(tǒng)中占有重要的地位,它關(guān)系到LCD顯示、電量數(shù)據(jù)存儲(chǔ)、時(shí)間和日期的讀取等等,它是MCU與外部設(shè)備的接口,是MCU獲取信息的窗口,并且根據(jù)外部信息作出相應(yīng)的判斷和動(dòng)作(比如凍結(jié)時(shí)間到,MCU作出凍結(jié)電量事件發(fā)生)。在通訊電路中,電能表有兩個(gè)通訊信道(紅外信道、RS485通訊信道),在通訊發(fā)生時(shí)MCU要判斷是那個(gè)信道進(jìn)行通訊,并且接收通訊幀,判斷是否正確,并執(zhí)行通訊命令。從上面可以看出MCU的作用,它是系統(tǒng)的控制器,起著決定性的作用。

DDSF系列電能表的軟件系統(tǒng)是整個(gè)電能表系統(tǒng)的靈魂,它是系統(tǒng)的神經(jīng)中樞,它是整個(gè)系統(tǒng)的控制、指揮中心。電能表軟件系統(tǒng)的算法設(shè)計(jì)在整個(gè)電能表系統(tǒng)設(shè)計(jì)中占有重要的一個(gè)環(huán)節(jié),控制算法的優(yōu)劣對(duì)整個(gè)系統(tǒng)正確、可靠的運(yùn)行有決定性的影響,因此在進(jìn)行電能表軟件系統(tǒng)的算法設(shè)計(jì)時(shí),要仔細(xì)、反復(fù)地進(jìn)行設(shè)計(jì)、論證,考慮各個(gè)方面地因素,使控制算法正確、可靠。

2(774).jpg

DDSF系列電能表的軟件系統(tǒng)包括程序數(shù)據(jù)結(jié)構(gòu)模塊、程序初始化模塊、時(shí)鐘及顯示處理模塊、通訊處理模塊和電量處理模塊五大部分組成,各個(gè)部分都其特殊的任務(wù),在電表系統(tǒng)中完成它們相應(yīng)的功能。

程序數(shù)據(jù)結(jié)構(gòu)模塊是對(duì)程序中的數(shù)據(jù)進(jìn)行分析,合理的分配數(shù)據(jù)內(nèi)存,定義程序涉及的變量。它是根據(jù)整個(gè)程序的算法來制定的,同時(shí)一個(gè)好的數(shù)據(jù)結(jié)構(gòu)對(duì)整個(gè)程序的寫作有非常重要的作用,因此根據(jù)電能表軟件系列實(shí)現(xiàn)的功能及其算法制定合理的數(shù)據(jù)結(jié)構(gòu)。DDSF系列電能表的數(shù)據(jù)結(jié)構(gòu)包括兩個(gè)部分:MCU內(nèi)存數(shù)據(jù)結(jié)構(gòu)和EEPROM數(shù)據(jù)結(jié)構(gòu)。

程序初始化模塊是對(duì)整個(gè)程序進(jìn)行初始化,它包括兩個(gè)部分:MCU初始化和電表各部件初始化。MCU初始化是對(duì)MCU各部件進(jìn)行初始化,為各部件在程序工作時(shí)提供合適的初始狀態(tài),它包括配置I/O口工作模式、看門狗初始化、定時(shí)器初始化、鍵盤中斷初始化、串口中斷初始化、比較器中斷初始化等等。電表各部件初始化是對(duì)電能表系統(tǒng)各部件進(jìn)行配置工作狀態(tài),初始化它們的工作方式,為程序工作提供電表部件初始狀態(tài),它包括指示燈初始化、LCD顯示初始化、實(shí)時(shí)時(shí)鐘初始化、電量恢復(fù)、通訊信道、歷史電量處理等等部件的初始化。

時(shí)鐘、顯示處理模塊是程序系統(tǒng)中進(jìn)行時(shí)鐘和顯示處理的模塊,是通過對(duì)當(dāng)前時(shí)鐘的比較,對(duì)有關(guān)時(shí)鐘事件是否發(fā)生進(jìn)行判斷,程序?qū)r(shí)鐘事件作出處理,可以說時(shí)鐘就是這個(gè)程序模塊的節(jié)奏,告訴程序哪個(gè)事件在什么時(shí)候發(fā)生。比如說顯示數(shù)據(jù)刷新事件,它是1S的時(shí)間對(duì)顯示數(shù)據(jù)進(jìn)行刷新,當(dāng)時(shí)間間隔1S時(shí),顯示數(shù)據(jù)刷新事件發(fā)生,程序進(jìn)行顯示數(shù)據(jù)刷新處理。它包括時(shí)鐘及其相關(guān)處理、顯示事件處理、電能反向時(shí)間事件處理、費(fèi)率和電量結(jié)算事件處理等等部分組成的。

通訊處理模塊是電能表系統(tǒng)進(jìn)行外界通訊的模塊,它是依照國(guó)標(biāo)的通訊規(guī)程編寫的一個(gè)軟件模塊,它包括通訊接收處理、通訊命令處理及通訊發(fā)送處理,當(dāng)通訊接收到一幀正確的數(shù)據(jù)時(shí),通知程序通訊命令處理事件發(fā)生,執(zhí)行通訊命令解釋及執(zhí)行命令操作,當(dāng)命令要求發(fā)生通訊數(shù)據(jù)時(shí),通訊發(fā)送事件發(fā)送,進(jìn)行通訊數(shù)據(jù)發(fā)送。同時(shí)由于通訊信道有紅外信道和RS485信道兩個(gè)信道,在通訊時(shí)應(yīng)判斷是哪一個(gè)信道進(jìn)行通訊的。

電量處理模塊是電能表系統(tǒng)中實(shí)現(xiàn)電能計(jì)量的程序,是實(shí)現(xiàn)其基本功能的程序,這部分程序也是電能表軟件系統(tǒng)中最為關(guān)鍵的程序,其計(jì)量的正確性,可靠性及電量數(shù)據(jù)儲(chǔ)存的正確性是關(guān)乎到整個(gè)系統(tǒng)的成敗,關(guān)系到全局,因此這部分計(jì)量的算法要設(shè)計(jì)正確、合理。它包括MCU上電對(duì)各電量值的恢復(fù)、對(duì)各電量脈沖的累計(jì)、對(duì)各電量小數(shù)整數(shù)累計(jì)、及對(duì)電量掉電保護(hù)等程序,在電量脈沖累計(jì)一定值是,電量小數(shù)加1事件發(fā)生,當(dāng)電量小數(shù)累計(jì)一定值時(shí),電量整數(shù)加1事件發(fā)生,執(zhí)行電量整數(shù)累計(jì)程序。

由上可知,DDSF系列電能表的軟件系統(tǒng)是由五大部分組成的,每一個(gè)部分完成其特定的任務(wù),而且是缺一不可的,同時(shí)各個(gè)模塊之間存在著一定的聯(lián)系,存在著數(shù)據(jù)交換的可能,它們不是相互獨(dú)立的,而是相互聯(lián)系、統(tǒng)一,形成整個(gè)電能表軟件系統(tǒng)。

1.2 DDSF系列電能表硬件系統(tǒng)

1.2.1 電源電路部分

DDSF系列電能表的電源電路分為三個(gè)部分:電量計(jì)量電源電路、RS485通訊電源電路、MCU及其相關(guān)部分電源電路。電源電路提供系統(tǒng)運(yùn)行的能量,所以在進(jìn)行電源電路設(shè)計(jì)時(shí)保證原理正確的前提下考慮電源容量并保證一定的工程余量,同時(shí)計(jì)算各個(gè)元件的電流、電壓值,選擇合適的元件參數(shù)。

3(650).jpg

4(542).jpg

以上兩個(gè)電源電路是一種標(biāo)準(zhǔn)設(shè)計(jì)的電源電路,通過降壓、整流、穩(wěn)壓和濾波四個(gè)環(huán)節(jié),得到5V的直流電壓。整個(gè)電源電路是以78L05這種穩(wěn)壓芯片進(jìn)行設(shè)計(jì)的,是一種串聯(lián)的穩(wěn)壓電路。

5(429).jpg

1.a(chǎn)部分電路原理說明

通過電網(wǎng)輸入220V的交流電源,通過變壓器TR1降壓,在5、6端產(chǎn)生12V的交流電源,通過AB1全波整流集成塊及C1、TR2、C2、E1濾波(C1、TR2、C2構(gòu)成差分濾波網(wǎng)絡(luò)),產(chǎn)生一個(gè)帶有一定脈動(dòng)分量的直流電。在通過并聯(lián)穩(wěn)壓集成電路LM317,同時(shí)調(diào)整R1、R2的比值,得到所需電壓值(3.9V)。

2.b部分電路原理說明 LPC900系列單片機(jī)存在著一個(gè)問題:在電源上電的時(shí)候,如果上電緩慢時(shí),單片機(jī)出現(xiàn)復(fù)位錯(cuò)誤,程序不能正確運(yùn)行。為了解決這個(gè)問題,采用快速上電的方法,利用MAX809電源監(jiān)控芯片,當(dāng)上電電源達(dá)到電壓門檻時(shí),T1三極管導(dǎo)通,開通電源通道,達(dá)到MCU快速上電的目的,VCC的電壓為V3.9減0.7V得到3.3V電壓值。

3.c部分電路原理說明

由于有后備電池的原因,要解決實(shí)時(shí)時(shí)鐘芯片電源的問題,采取的原則是:電網(wǎng)正常供電時(shí),從電網(wǎng)吸收電能,但是不能進(jìn)行對(duì)電池充電,電網(wǎng)停電時(shí),電池只對(duì)時(shí)時(shí)鐘芯片供電。

采用二極管或邏輯的方式,對(duì)V3.9和電池電壓進(jìn)行選擇。

當(dāng)電網(wǎng)正常供電時(shí),V3.9的電壓為3.9V,大于電池電壓,由于VD1器件的作用,VDD選擇V3.9電源供電。當(dāng)電網(wǎng)停電時(shí),由于VD1器件的作用,VDD選擇電池電源供電,同時(shí)電池通過R7限流對(duì)時(shí)鐘芯片供電。

電路中有電池電壓檢測(cè)網(wǎng)絡(luò),檢測(cè)網(wǎng)絡(luò)有R5、R6和C10組成的,由于R5、R6遠(yuǎn)遠(yuǎn)大于R7,所以可以忽略R7的影響,檢測(cè)網(wǎng)絡(luò)的電流幾乎等于零,也不消耗電池的能量。

1.2.2 計(jì)量電路部分

DDSF系列電能表的計(jì)量電路部分主要是針對(duì)7755計(jì)量芯片的電路設(shè)計(jì),主要包括:抗混濾波器的設(shè)計(jì)、電壓通道電路設(shè)計(jì)、電流通道電路設(shè)計(jì)、其它電路部分設(shè)計(jì)。

6(356).jpg

從電路理論分析,電壓通道電路實(shí)際上是一個(gè)分壓電路,通過電阻分壓,確保7755電壓通道中信號(hào)電壓在其工作的范圍內(nèi)。由于電能表工作的實(shí)際環(huán)境和元件參數(shù)的誤差,在電壓衰減網(wǎng)絡(luò)中,設(shè)計(jì)一個(gè)電阻調(diào)整網(wǎng)絡(luò),可在一定范圍內(nèi)調(diào)整信號(hào)電壓的大小,校驗(yàn)ADE7755電能輸出脈沖的頻率,調(diào)整電能表的精度,因此電壓衰減網(wǎng)絡(luò)又稱校驗(yàn)網(wǎng)絡(luò)。

7(270).jpg

電流通道電路中,是一個(gè)PGA可編程的差動(dòng)運(yùn)算放大電路,外圍電路設(shè)計(jì)主要是抗混濾波器的設(shè)計(jì),R27C19和R28C21組成兩個(gè)一階低通濾波器,濾除電流通道的高頻分量。C20是通過JL1跳線來選擇是否作用于系統(tǒng),它是補(bǔ)償電流信號(hào)本身不平衡造成ADE7755計(jì)量電能出現(xiàn)比較大的誤差,人為造成不平衡,使得系統(tǒng)達(dá)到平衡的目的。

8(222).jpg

DVDD和AVDD通過C22、R23、R29組成的濾波電路連接在一起,同時(shí)AGND和DGND通過電感連接在一起,濾除干擾。選擇內(nèi)部基準(zhǔn)電源,在基準(zhǔn)電源輸出端加上一個(gè)濾波電容C24,加強(qiáng)內(nèi)部基準(zhǔn)不受外界干擾。ADE7755芯片的接口電路主要是CF腳的輸出脈沖和REVP腳的電能方向指示,它們是通過光藕器件和MCU電路進(jìn)行隔離輸出的。

1.2.3 通訊電路部分

DDSF系列電能表有兩個(gè)通訊通道,一個(gè)是RS485通訊信道,另一個(gè)是。RS485通訊信道是用來和其他電能表組成RS485通訊網(wǎng)絡(luò),實(shí)現(xiàn)遠(yuǎn)程網(wǎng)絡(luò)抄表;紅外通訊信道是利用紅外線為媒介,利用掌上抄表器進(jìn)行抄表的,兩個(gè)信道都是通過MCU的UART進(jìn)行通訊的,判斷通訊信道是一個(gè)問題。DDSF系列電能表通訊電路由紅外通訊電路、RS485通訊電路、通訊信道切換電路組成,紅外通訊電路完成紅外通訊信道通訊的功能,RS485通訊電路完成RS485通訊的功能,通訊切換電路判斷當(dāng)前通訊信道的功能。

9(179).jpg

紅外通訊電路的接收電路是由U2紅外接收集成電路完成的,當(dāng)外界有38k頻率的紅外信號(hào)時(shí),U8通過內(nèi)部接收電路的作用,在1腳輸出低電平,否則為高電平。紅外通訊電路的發(fā)射電路中,進(jìn)行紅外通訊時(shí),HW38K端輸入38K頻率的脈沖信號(hào),當(dāng)TXD=1時(shí),T3截止,HD1停止發(fā)射紅外信號(hào);當(dāng)TXD=0時(shí),T3導(dǎo)通,HD1加上38K頻率的脈沖信號(hào),發(fā)射紅外信號(hào),其實(shí)相當(dāng)于對(duì)TXD信號(hào)進(jìn)行38k脈沖調(diào)制。

10(172).jpg

RS485通訊電路通過3個(gè)光藕器件對(duì)單片機(jī)電路和RS485總線電路進(jìn)行隔離,提高系統(tǒng)的干干擾能力,電路中的TVS1管并聯(lián)在RS485總線A、B線兩端,對(duì)電路進(jìn)行瞬態(tài)保護(hù)作用,R46和R47為偏置電阻,進(jìn)行網(wǎng)絡(luò)失效保護(hù)。但是這個(gè)電路沒有匹配電阻,在通訊總線設(shè)計(jì)中應(yīng)根據(jù)實(shí)際情況進(jìn)行匹配電路的設(shè)計(jì)。RS485通訊電路中JP2接口是要進(jìn)行瞬變脈沖和靜電干擾的,在設(shè)計(jì)和選擇485轉(zhuǎn)換芯片要特別注意這個(gè)問題。

11(232).jpg

通訊信道的切換電路是判斷當(dāng)前的通訊信道,發(fā)射通訊信道由MCU主控器保證,通訊信道切換電路主要進(jìn)行接收通訊信道的判斷。

發(fā)射通訊時(shí),當(dāng)RS485通訊電路中CTRL485=1不允許發(fā)送,保證選擇紅外通道發(fā)送;當(dāng)紅外通訊電路中HW38K=1時(shí),T2截止,不允許紅外發(fā)送,保證選擇RS485通道發(fā)送。

接收通訊時(shí),通過CD4066電子開關(guān)切換通道。當(dāng)COMMSEL=0時(shí),U4A、U4B開關(guān)斷開,HWCTRL由于R48上拉到V3.9電源為高電平,U4C開關(guān)接通,紅外通道RXDHW和RXD連通,選擇紅外通道;當(dāng)COMMSEL=1時(shí),U4A、U4B開關(guān)接通,HWCTRL為低電平,U4C開關(guān)斷開,RS485通道的RXD485和RXD連通,選擇RS485通道。通道切換采用搶占式,默認(rèn)通道為紅外通道,當(dāng)RS485接收通訊開始時(shí),起始位為0,利用MCU鍵盤中斷功能切換為RS485通訊信道。

1.2.4 MCU及其它相關(guān)電路部分

MCU是選用89LPC931或922兩種單片機(jī),這部分電路由LCD顯示電路、實(shí)時(shí)時(shí)鐘電路、存儲(chǔ)器和溫度檢測(cè)電路、ICP電路、掉電和電池檢測(cè)電路等等組成。

12(192).jpg

實(shí)時(shí)時(shí)鐘選用8025時(shí)鐘芯片,它是一個(gè)I2C總線接口的芯片,MCU通過I2C總線讀寫8025芯片的寄存器,設(shè)置芯片的工作狀態(tài),校正當(dāng)前時(shí)間和日期,同時(shí)可以設(shè)置報(bào)警時(shí)間、日期,它的I2C地址是64H。8025時(shí)鐘芯片是一種低功耗、寬電壓范圍工作的芯片,在工作電源3V時(shí),工作電流為0.48uA,在1.7V~5.5V正常工作,同時(shí)能夠檢測(cè)晶振的情況和微調(diào)晶振的頻率。8025芯片應(yīng)設(shè)置輸出1S中的時(shí)鐘脈沖信號(hào),為了保證時(shí)間和日期工作的連續(xù)性,應(yīng)保證電源不斷電。

檢測(cè)溫度芯片選用LM75溫度檢測(cè)芯片,它是一個(gè)I2C總線接口的芯片,它內(nèi)部是一個(gè)11位的AD溫度轉(zhuǎn)換器,內(nèi)部包含四個(gè)數(shù)據(jù)寄存器:配置寄存器、溫度寄存器、上限溫度寄存器、下限溫度寄存器,MCU通過指定地址指針的方式來操作指定寄存器。LM75工作電壓范圍是3.0~5.5V,工作電流典型值為250uA,溫度寄存器的內(nèi)容是補(bǔ)碼的形式存儲(chǔ)的,每個(gè)數(shù)字量代表0.5℃,芯片的I2C地址是90H。

存儲(chǔ)器選用支持I2C總線可擦寫E2PROM,型號(hào)是24WC08,存儲(chǔ)容量為8K位,1K字節(jié),10位地址線,其中最高2位地址是I2C地址A1A0位,因此在A2=0時(shí),它的I2C地址為A0H、A2H、A4H,A6H。工作電壓范圍是1.8V~6.0V,采用低功耗CMOS技術(shù),同時(shí)具有寫保護(hù)功能,執(zhí)行寫操作時(shí),在主器件產(chǎn)生停止信號(hào)后開始內(nèi)部數(shù)據(jù)的擦寫,在內(nèi)部擦寫過程中,器件不應(yīng)答主器件的請(qǐng)求,因此在執(zhí)行存儲(chǔ)器寫操作之后,應(yīng)延時(shí)一定的時(shí)間再對(duì)存儲(chǔ)器進(jìn)行操作。

13(144).jpg

In Circuit Programing是在電路編程,簡(jiǎn)稱ICP,是一種串行編程方式,其通過一根時(shí)鐘線與一根數(shù)據(jù)線串行傳輸編程指令及數(shù)據(jù),P89LPC9××芯片在ICP的過程種需要用到5個(gè)腳:PCL,PDA,Reset,VDD和VSS。ICP功能完全由MCU硬件完成,不需要外部引導(dǎo)。在ICP接口電路設(shè)計(jì)當(dāng)中,應(yīng)注意是否有外界電路對(duì)ICP有影響,否則應(yīng)斷開其連接。

掉電檢測(cè)電路是一個(gè)R8、R9組成的分壓電路,C12用來濾波作用,提高抗干擾性能。通過MCU內(nèi)部比較器,比較器內(nèi)部參考電壓和PWRCHK腳的電壓比較,當(dāng)電源電壓下降到一定時(shí),MCU比較器發(fā)生翻轉(zhuǎn),發(fā)生掉電事件。當(dāng)發(fā)生掉電,由于電容的存在,MCU的電源不會(huì)馬上消失,這時(shí)MCU應(yīng)執(zhí)行保護(hù)數(shù)據(jù)程序。

指示燈電路包括峰指示、谷指示、通訊指示,當(dāng)MCU對(duì)應(yīng)腳輸出低電平時(shí),電流經(jīng)限流電阻,LED,流入MCU腳,指示燈亮。

1.3 DDSF系列電能表軟件系統(tǒng)

1.3.1 DDSF系列電能表主程序算法分析

DDSF系列電能表軟件系統(tǒng)主程序在電能表整個(gè)程序當(dāng)中是最重要的部分,它是電能表的執(zhí)行部分。它包括整個(gè)程序初始化部分、顯示刷新處理部分、日期時(shí)間及與其相關(guān)操作處理部分、通訊幀命令處理部分、電量運(yùn)算及儲(chǔ)存部分、電量結(jié)算處理部分以及其他事件處理部分。整個(gè)程序是通過查詢方式執(zhí)行的,通過查詢電表事件發(fā)生的條件情況,判斷電能表事件是否發(fā)生,來執(zhí)行相應(yīng)的操作,這種執(zhí)行方式只要保證CPU的執(zhí)行速度足夠快,是能夠保證事件響應(yīng)的時(shí)效性的。

在電量處理模塊算法中,它包含電量小數(shù)事件和電量整數(shù)事件,當(dāng)對(duì)應(yīng)類型(總峰平谷反)電量脈沖累計(jì)到0.01kWh,電量小數(shù)事件發(fā)生,電量小數(shù)加1及保存電量小數(shù)數(shù)據(jù),當(dāng)電量小數(shù)發(fā)生進(jìn)位時(shí),電量整數(shù)事件發(fā)生同時(shí)應(yīng)進(jìn)行電量整數(shù)部分及相關(guān)事件處理。

在時(shí)鐘和顯示處理模塊算法中,它包含秒事件、分鐘事件、半小時(shí)事件及小時(shí)事件,秒事件是通過MCU中RTC定時(shí)器定時(shí)1S來激發(fā)的。

在通訊處理模塊算法中,它包含通訊接收幀事件和通訊發(fā)送幀事件,當(dāng)程序查詢到通訊接收幀完標(biāo)志置位時(shí),通訊接收幀事件發(fā)生,程序進(jìn)行通訊格式的判斷,如果通訊格式正確,再進(jìn)行通訊地址的比較,如果通訊幀中的地址域是本機(jī)地址或廣播地址,表示是對(duì)本機(jī)通訊,則程序進(jìn)行通訊命令的解釋及執(zhí)行,同時(shí)如果要返回?cái)?shù)據(jù)幀,置通訊發(fā)送標(biāo)志,準(zhǔn)備好發(fā)送數(shù)據(jù)幀,則通訊發(fā)送數(shù)據(jù)幀事件發(fā)生,啟動(dòng)發(fā)送數(shù)據(jù)。

14(110).jpg

15(82).jpg

MCU部件初始化是是整個(gè)程序初始化的一個(gè)部分,它是整個(gè)系統(tǒng)所用到的MCU資源的初始化,使程序在運(yùn)行時(shí)能夠正確的運(yùn)行MCU部件,達(dá)到預(yù)定的目標(biāo)。MCU部件初始化包括以下幾個(gè)部分:

I/O控制模式配置及時(shí)鐘分頻器初始化

看門狗、外部中斷1、比較器中斷初始化

RTC及定時(shí)器0、1初始化

串口中斷、鍵盤中斷初始化

電表各部件初始化是對(duì)電表的相關(guān)部件、相關(guān)的變量進(jìn)行初始化,特別是電量數(shù)據(jù)恢復(fù)非常重要,使電表正常工作。它包括以下幾個(gè)部分:

端口初始化

顯示初始化

外部時(shí)鐘芯片初始化

剩余脈沖數(shù)據(jù)及各電量數(shù)據(jù)恢復(fù)

時(shí)鐘數(shù)據(jù)及顯示控制數(shù)據(jù)恢復(fù)

時(shí)段費(fèi)率初始化處理

歷史電量初始化處理

校時(shí)允許初始化處理

1.3.3 DDSF系列電能表軟件的時(shí)鐘、顯示處理模塊算法分析

16(72).jpg

時(shí)鐘、顯示處理模塊程序是根據(jù)時(shí)間進(jìn)行程序處理的,當(dāng)時(shí)間間隔1S時(shí),秒事件發(fā)生,進(jìn)行秒事件處理,當(dāng)時(shí)間間隔為分鐘時(shí),分鐘時(shí)間發(fā)生,進(jìn)行分鐘事件處理,同樣在時(shí)間間隔半小時(shí)及小時(shí)時(shí),半小時(shí)及小時(shí)事件發(fā)生,進(jìn)行事件處理。它包含以下幾個(gè)部分:

數(shù)據(jù)檢測(cè)部分:對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行更新,錯(cuò)誤進(jìn)行恢復(fù)而進(jìn)行的操作。

事件執(zhí)行部分:當(dāng)事件發(fā)生時(shí),對(duì)相應(yīng)的事件進(jìn)行程序響應(yīng)。

其他執(zhí)行部分:包括通訊信道默認(rèn)恢復(fù)、時(shí)段費(fèi)率檢測(cè)、電量結(jié)算檢測(cè)等等。

1.3.4 DDSF系列電能表軟件的通訊處理模塊算法分析

17(51).jpg

通訊事件處理程序是通過判斷通訊事件標(biāo)志是否置位決定通訊事件是否發(fā)生,當(dāng)通訊事件發(fā)生時(shí),根據(jù)通訊規(guī)則,檢測(cè)通訊幀格式是否正確,同時(shí)比較電表通訊地址是否進(jìn)行本機(jī)通訊,當(dāng)入口通訊幀格式正確和進(jìn)行本機(jī)通訊和廣播通訊時(shí),則對(duì)通訊命令進(jìn)行解釋同時(shí)執(zhí)行通訊命令操作。在通訊命令執(zhí)行完畢后,程序檢測(cè)是否要進(jìn)行通訊發(fā)送數(shù)據(jù)幀,如果要進(jìn)行通訊發(fā)送,則準(zhǔn)備通訊數(shù)據(jù),啟動(dòng)發(fā)送功能。

1.3.5 DDSF系列電能表軟件的電量計(jì)量處理模塊算法

18(44).jpg

電量計(jì)量程序是進(jìn)行電量計(jì)量程序處理,電量處理的順序依次為電量整數(shù)處理及儲(chǔ)存、電量小數(shù)處理及存儲(chǔ)、電量脈沖處理、電量整數(shù)低字節(jié)處理及儲(chǔ)存、電量小數(shù)儲(chǔ)存區(qū)域指針更新判斷。電量整數(shù)低字節(jié)處理及儲(chǔ)存是為了在電源掉電中,防止程序在對(duì)電量整數(shù)加1并保存時(shí),電量小數(shù)沒有保存發(fā)生掉電,導(dǎo)致系統(tǒng)多計(jì)量1kWh的電能的可能,因此在系統(tǒng)電量恢復(fù)時(shí)檢測(cè)到兩個(gè)電量整數(shù)低字節(jié)不相等時(shí),對(duì)電量小數(shù)清零處理,解決問題的發(fā)生。電量小,數(shù)儲(chǔ)存區(qū)域指針更新判斷是因?yàn)殡娏啃?shù)的存儲(chǔ)區(qū)域頻繁發(fā)生擦寫現(xiàn)象,導(dǎo)致EEPROM的壽命減低,因此采樣多區(qū)域的辦法,當(dāng)檢測(cè)到當(dāng)前存儲(chǔ)區(qū)域損壞時(shí),更換下到一個(gè)存儲(chǔ)區(qū)域,延長(zhǎng)電能表的壽命。

19(43).jpg

比較器中斷是用來進(jìn)行電量脈沖數(shù)據(jù)保護(hù),當(dāng)電源電壓下降引起比較器中斷發(fā)生稱為掉電,這時(shí)應(yīng)當(dāng)保護(hù)電量脈沖數(shù)據(jù)。當(dāng)電源上電、電源掉電、比較器2的比較狀態(tài)發(fā)生翻轉(zhuǎn)、紅外通訊導(dǎo)致電源電壓下降都可以引起比較器中斷發(fā)生,因此在設(shè)計(jì)程序時(shí)應(yīng)分辨出電源掉電發(fā)生,從而真正進(jìn)行保護(hù)數(shù)據(jù),避免程序錯(cuò)誤執(zhí)行。

比較器相關(guān)文章:比較器工作原理


分頻器相關(guān)文章:分頻器原理
電能表相關(guān)文章:電能表原理


關(guān)鍵詞: ADI ADE 單相

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉