欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

可實(shí)現(xiàn)雙向計(jì)量的智能電表的總電量累加方法

文檔序號(hào):5885017閱讀:715來(lái)源:國(guó)知局
專利名稱:可實(shí)現(xiàn)雙向計(jì)量的智能電表的總電量累加方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種累加方法,具體涉及可實(shí)現(xiàn)雙向計(jì)量的智能電表的總電量累加方法。
背景技術(shù)
專用電能計(jì)量芯片通常能夠?qū)崟r(shí)判斷潮流方向,其對(duì)應(yīng)寄存器中計(jì)量值的符號(hào)也隨之發(fā)生變化。具體地說(shuō),如果指定有功功率的參考方向?yàn)殡娋W(wǎng)流向用戶,則當(dāng)有功功率的方向與參考方向相反時(shí)為負(fù)功率,表示用戶向電網(wǎng)回送電能,對(duì)應(yīng)寄存器中的計(jì)量值為負(fù)數(shù);當(dāng)有功功率的方向與參考方向一致時(shí)為正功率,表示用戶從電網(wǎng)汲取電能,對(duì)應(yīng)寄存器中的計(jì)量值為正數(shù)。電量在專用電能計(jì)量芯片中的計(jì)量過(guò)程分成兩個(gè)階段。第一階段由集成在芯片中的DSP完成,它對(duì)功率做有符號(hào)的積分運(yùn)算并將結(jié)果暫存在一個(gè)內(nèi)部寄存器中。當(dāng)積分結(jié)果達(dá)到用戶設(shè)定的閾值時(shí),DSP在輸出一個(gè)脈沖的同時(shí),用內(nèi)部寄存器中存儲(chǔ)的積分結(jié)果減去閾值;第二階段計(jì)數(shù)DSP輸出的脈沖個(gè)數(shù),并將計(jì)數(shù)值暫存在累加寄存器中。當(dāng)MCU讀取計(jì)數(shù)值時(shí),該計(jì)數(shù)值將從累加寄存器轉(zhuǎn)存到能量寄存器中,能量寄存器或者清零,或者保留原計(jì)數(shù)值。DSP輸出的脈沖分頻后得到電表的能量脈沖,分頻倍數(shù)取決于電表常數(shù)。目前使用的電子式電能表幾乎都采用計(jì)數(shù)能量脈沖,通過(guò)指示燈顯示的脈沖個(gè)數(shù)來(lái)計(jì)算用戶的用電量。例如,某電子式電能表的常數(shù)是^OOimp/kW·!!,當(dāng)脈沖個(gè)數(shù)累加(通常通過(guò)MCU中的定時(shí)器實(shí)現(xiàn))到400個(gè)時(shí),用戶就消耗了 0. IkW 的電量。這種簡(jiǎn)單的電量累加方法存在下述諸多缺點(diǎn)(1)電磁干擾可能導(dǎo)致脈沖個(gè)數(shù)的增加或減少,從而造成計(jì)量誤差;(2)設(shè)計(jì)者通常指定一個(gè)計(jì)數(shù)閾值,譬如上文的400。當(dāng)計(jì)數(shù)器計(jì)到這個(gè)數(shù)值時(shí), 才會(huì)將計(jì)數(shù)值清零并將該部分電量累加到總電量中;若要隨機(jī)讀取當(dāng)前的計(jì)數(shù)值,則可能會(huì)產(chǎn)生士 1個(gè)脈沖的計(jì)數(shù)誤差。如果當(dāng)前的計(jì)數(shù)值不是400,則會(huì)帶來(lái)較大的計(jì)算誤差。譬如,若當(dāng)前的計(jì)數(shù)值為13,則13/4000 = 0. 00325kff *h,軟件很可能將小數(shù)點(diǎn)后的325截掉,因此丟掉了這部分電量。(3)若專用電能計(jì)量芯片的計(jì)量原理是對(duì)功率,而不是功率的絕對(duì)值積分,大的閾值(在電能計(jì)量芯片的相關(guān)寄存器中設(shè)置,當(dāng)積分值達(dá)到此閾值時(shí),電能計(jì)量芯片中的DSP 輸出一個(gè)脈沖)會(huì)帶來(lái)大的雙向計(jì)量誤差。目前,大多數(shù)的MCU芯片只支持整數(shù)運(yùn)算,如果要在這些MCU上進(jìn)行小數(shù)運(yùn)算,定點(diǎn)小數(shù)運(yùn)算應(yīng)該是最佳選擇。雖然用浮點(diǎn)MCU來(lái)做應(yīng)該容易的多,但低成本也是非常重要的,定點(diǎn)機(jī)器比相應(yīng)的浮點(diǎn)機(jī)器要便宜,而且速度更快。

發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)存在的不足,本發(fā)明的目的在于提供一種能完成雙向總電量累加的算法。
本發(fā)明提供的可實(shí)現(xiàn)雙向計(jì)量的智能電表的總電量累加方法,其改進(jìn)之處在于 所述方法包括累加正反向總電量和累加各費(fèi)率的正反向總電量;使用“讀復(fù)位”模式的能量寄存器。本發(fā)明提供的第一優(yōu)選方案的累加方法,其改進(jìn)之處在于所述累加正反向總電量包括下述步驟a)軟件判斷MCU從能量寄存器中讀取的計(jì)數(shù)值Reader的符號(hào);b)將a)的計(jì)數(shù)值除以C,整數(shù)商存放在ht中,余數(shù)存放在Dec中;c)將b)中的整數(shù)和余數(shù)分別與存儲(chǔ)器中的原有數(shù)據(jù)做正反向總電量的累加。本發(fā)明提供的第二優(yōu)選方案的累加方法,其改進(jìn)之處在于所述累加各費(fèi)率正反向總電量的步驟為1)軟件判斷Reader的符號(hào)和某費(fèi)率的總電量TAEnergy的符號(hào);2)根據(jù)Reader和TAEnergy的符號(hào),確定情況類型,將Reader累加到相應(yīng)費(fèi)率的總電量上。本發(fā)明提供的第三優(yōu)選方案的累加方法,其改進(jìn)之處在于所述寄存器中的數(shù)據(jù)為二進(jìn)制補(bǔ)碼形式,負(fù)數(shù)則需要將其變換成原碼形式,并屏蔽符號(hào)位。本發(fā)明提供的第四優(yōu)選方案的累加方法,其改進(jìn)之處在于由電能計(jì)量芯片中閾值寄存器中數(shù)據(jù)確定所述C值。本發(fā)明提供的第五優(yōu)選方案的累加方法,其改進(jìn)之處在于所述Reader為正數(shù), 將其累加到正向總電量上;整數(shù)商和正向總電量的整數(shù)部分PEInt相加;余數(shù)和正向總電量的小數(shù)部分PEDec相加;PEDec ^ C,向整數(shù)進(jìn)位,并將PEDec-C所得數(shù)據(jù)作為下一次累加的小數(shù)部分。本發(fā)明提供的第六優(yōu)選方案的累加方法,其改進(jìn)之處在于所述情況類型包括所述Reader為負(fù)數(shù),所述TAEnergy為負(fù)數(shù);所述Reader為正數(shù),所述TAEnergy為正數(shù);所述Reader為正數(shù),所述TAEnergy為負(fù)數(shù);所述Reader為負(fù)數(shù),所述TAEnergy為正數(shù)。本發(fā)明提供的第七優(yōu)選方案的累加方法,其改進(jìn)之處在于①所述Reader為負(fù)數(shù),所述TAEnergy為負(fù)數(shù),將Reader取反碼并加+1,屏蔽 TAEInt與Int的符號(hào)位,將TAEht和Int相加后存入TAEht,同時(shí)符號(hào)位置1 ;余數(shù)TAEDec 和Dec相加后存入TAEDec ;存入新數(shù)據(jù)的TAEDec ^ C,向整數(shù)部分進(jìn)位,并將TAEDec-C存入TAEDec,作為下一次累加的小數(shù)部分;②所述Reader為正數(shù),所述TAEnergy為正數(shù),將TAEInt與Int直接相加后存入 TAEInt, TAEDec與Dec直接相加后存入TAEDec ;存入新數(shù)據(jù)的TAEDec彡C,向整數(shù)部分進(jìn)位,并將TAEDec-C存入TAEDec作為下一次累加的小數(shù)部分;③所述Reader為正數(shù),所述TAEnergy為負(fù)數(shù),屏蔽TAEnergy的整數(shù)部分TAEInt 的符號(hào)位,將TAEInt減去ht的值存入TAEht,TAEInt彡ht,給新存入的TAEInt加上負(fù)號(hào);將TAEDec減去Dec的值存入TAEDec,TAEDec < Dec, TAEDec向整數(shù)部分借位,并將 TAEDe+C減去Dec的值存入TAEDec中;整數(shù)部分為零,用Dec減去TAEDec后存入TAEDec, 并將TAEInt的符號(hào)位清零,表示總電量為正數(shù);TAEDec彡Dec時(shí),將TAEDec減去Dec后存Λ TAEDec ;④所述Reader為負(fù)數(shù),所述TAEnergy為正數(shù),將Reader取反碼后加1,同時(shí)屏蔽其符號(hào)位;TAEht彡Int,將TAEInt減去ht的值存入TAEht,表示總電量是正數(shù); 將TAEDec減去Dec,TAEDec < Dec時(shí),TAEDec向整數(shù)借位,用TAEDec+C減去Dec后存入 TAEDec ;整數(shù)部分為零,用Dec減去TAEDec后存入TAEDec,并將TAEInt的符號(hào)位置1,表示總電量是負(fù)數(shù);TAEDec彡Dec時(shí),將TAEDec減去Dec的結(jié)果存入TAEDec。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為上述兩種算法只用到整數(shù)運(yùn)算,卻可以保證數(shù)字的準(zhǔn)確和電量的精確累加,大部分的數(shù)據(jù)處理只用加法或減法就能完成。將它們應(yīng)用在定點(diǎn)MCU中,不僅可降低計(jì)量裝置的成本,而且運(yùn)算速度更快;與采用計(jì)數(shù)能量脈沖個(gè)數(shù)計(jì)算用電量的方法不同,它們不會(huì)因算法的隨機(jī)執(zhí)行而帶來(lái)任何的讀數(shù)和計(jì)算誤差;校表更加快速和精確。測(cè)試人員隨時(shí)可以讀取電能表計(jì)量的總電量并與標(biāo)準(zhǔn)電量比較,計(jì)算出計(jì)量誤差;依據(jù)電力公司的要求,即可以分別累加正向和反向總電量,也可計(jì)算出組合總電量。


圖1本發(fā)明提供的流程2本發(fā)明提供的正反向總電量累加的流程3本發(fā)明提供的各費(fèi)率正反向總電量累加的第③種情況的流程圖
具體實(shí)施例方式本方法要求能量寄存器必須配置成“讀復(fù)位”模式,即MCU讀取計(jì)數(shù)值后能量寄存器清零。這種模式使電量計(jì)數(shù)值從MCU讀取的時(shí)刻起,再次從零開(kāi)始計(jì)數(shù),確保了正確的雙向計(jì)量值。(1)正反向總電量的累加如附圖2,首先判斷MCU從能量寄存器中讀取的計(jì)數(shù)值Reader的符號(hào)。寄存器中的數(shù)據(jù)通常都是二進(jìn)制補(bǔ)碼形式,負(fù)數(shù)則需要將其變換成原碼形式,并屏蔽符號(hào)位。其次,將計(jì)數(shù)值除以C,整數(shù)商存放在ht中,余數(shù)存放在Dec中。若Reader為正數(shù),則將其累加到正向總電量上。累加時(shí),整數(shù)商和正向總電量的整數(shù)部分PEInt相加后再存入PEht,余數(shù)和正向總電量的小數(shù)部分PEDec相加后再存入 PEDec (PEInt表示正向總電量的整數(shù)部分,PEDec表示正向總電量的小數(shù)部分)。當(dāng)存儲(chǔ)后的PEDec彡C時(shí),則需要進(jìn)位。例如,當(dāng)C= IO6時(shí),PEDec是以IO6為進(jìn)制向正向總電量的整數(shù)部分進(jìn)位的。若Reader為負(fù)數(shù),反向總電量的累加方法與正向相同,只是在顯示時(shí)需要加負(fù)號(hào) (NEInt表示反向總電量的整數(shù)部分,NEDec表示反向總電量的小數(shù)部分)。值得一提的是,總電量的整數(shù)部分可以直接顯示,因?yàn)槠鋯挝痪褪莐W · h。總電量的小數(shù)部分在顯示時(shí)要除以C,再取要求的位數(shù)。如上面提到的C= 106,若總電量的小數(shù)部分是251044,在要求2位小數(shù)時(shí)的顯示結(jié)果為.25kW · h。(2)各費(fèi)率正反向總電量的累加各費(fèi)率正反向總電量的累加比(1)要略微復(fù)雜些,總電量的累加被分成了四種情況①Reader為負(fù)數(shù),某費(fèi)率的總電量TAEnergy為負(fù)數(shù),其中TAEht的符號(hào)表示已有某費(fèi)率總電量的整數(shù)部分,TAEDec表示已有某費(fèi)率總電量的余數(shù)部分;②Reader為負(fù)數(shù), TAEnergy為正數(shù);③Reader為正數(shù),TAEnergy為負(fù)數(shù);④Reader為正數(shù),TAEnergy為正數(shù)。對(duì)Reader的處理與(1)相同,得到Reader的整數(shù)和小數(shù)部分。通過(guò)判斷Reader 和TAEnergy的符號(hào),確定當(dāng)前的累加操作屬于上述四種情況中的哪一種。需要說(shuō)明的是,在執(zhí)行這個(gè)累加算法前,需要判斷當(dāng)前時(shí)段采用的是哪種費(fèi)率,然后才能將Reader累加到相應(yīng)費(fèi)率的總電量上。在顯示時(shí)的處理也與(1)相同。①Reader為負(fù)數(shù),某費(fèi)率總電量TAEnergy為負(fù)數(shù),將Reader取反碼并加+1,屏蔽 TAEInt與Int的符號(hào)位,將TAEht和Int相加后存入TAEht,同時(shí)符號(hào)位置1 ;余數(shù)TAEDec 和Dec相加后存入TAEDec ;若TAEDec彡C,則向整數(shù)部分進(jìn)位,并將TAEDec-C存入TAEDec, 即作為下一次累加的小數(shù)部分;②Reader為正數(shù),TAEnergy為正數(shù),將TAEInt與Int直接相加后存入TAEht, TAEDee與Dec直接相加后存入TAEDec,若TAEDec彡C,則向整數(shù)部分進(jìn)位,并將TAEDec-C 存入TAEDec作為下一次累加的小數(shù)部分;③Reader為正數(shù),TAEnergy為負(fù)數(shù),屏蔽TAEnergy的整數(shù)部分TAEInt的符號(hào)位。 比較Int和TAEInt的大小,TAEht彡Int時(shí),將TAEInt減去ht的值存入TAEht,給新存入的TAEInt加上負(fù)號(hào);比較TAEDec與Dec的大小,TAEDec < Dec時(shí),TAEDec需要向整數(shù)部分借位,并將TAEDe+C減去Dec的值存入TAEDec中;若整數(shù)部分為零不能借位時(shí),則用Dec 減去TAEDec后存入TAEDec,并將TAEInt的符號(hào)位清零,表示總電量為正數(shù)。TAEDec彡Dec 時(shí),將TAEDec減去Dec后存入TAEDec。TAEInt < Int 時(shí),將 Int 減去 TAEht 的結(jié)果存入 TAEht ;比較 TAEDec 與 Dec 的大小,TAEDec < Dec時(shí),將Dec減去TAEDec后存入TAEDec。TAEDec ^ Dec時(shí),則需要向整數(shù)部分借位,將C-TAEDec+Dec的計(jì)算結(jié)果存入TAEDec。④Reader為負(fù)數(shù),TAEnergy為正數(shù),將Reader取反碼后加1,同時(shí)屏蔽其符號(hào)位;比較Int和TAEInt的大小,TAEInt彡ht時(shí),將TAEInt減去ht的結(jié)果存入 TAEht,表示總電量是正數(shù);比較TAEDec與Dec的大小,TAEDec < Dec時(shí),TAEDec需要向整數(shù)借位,用TAEDec+C減去Dec后存入TAEDec。若整數(shù)部分為零不能借位時(shí),則用Dec減去 TAEDec后存入TAEDec,并將TAEInt的符號(hào)位置1,表示總電量是負(fù)數(shù);TAEDec彡Dec時(shí),將 TAEDec減去Dec的結(jié)果存入TAEDec。TAEInt < ht時(shí),將Int減去TAEht的結(jié)果存入TAEht,將新存入的TAEht的符號(hào)位置1,表示總電量是負(fù)數(shù);比較TAEDec與Dec的大小,TAEDec < Dec時(shí),用Dec減去 TAEDec后將結(jié)果存入TAEDec。TAEDec彡Dec時(shí),則需向整數(shù)部分借位,將C-TAEDec+Dec的計(jì)算結(jié)果存入TAEDec。
權(quán)利要求
1.可實(shí)現(xiàn)雙向計(jì)量的智能電表的總電量累加方法,其特征在于所述方法包括累加正反向總電量和累加各費(fèi)率的正反向總電量;使用“讀復(fù)位”模式的能量寄存器。
2.如權(quán)利要求1所述的累加方法,其特征在于所述累加正反向總電量包括下述步驟a)軟件判斷MCU從能量寄存器中讀取的計(jì)數(shù)值Reader的符號(hào);b)將a)的計(jì)數(shù)值除以C,整數(shù)商存放在ht中,余數(shù)存放在Dec中;c)將b)中的整數(shù)和余數(shù)分別與存儲(chǔ)器中的原有數(shù)據(jù)做正反向總電量的累加。
3.如權(quán)利要求1所述的累加方法,其特征在于所述累加各費(fèi)率正反向總電量的步驟為1)軟件判斷Reader的符號(hào)和某費(fèi)率的總電量TAEnergy的符號(hào);2)根據(jù)Reader和TAEnergy的符號(hào),確定情況類型,將Reader累加到相應(yīng)費(fèi)率的總電量上。
4.如權(quán)利要求1所述的累加方法,其特征在于所述寄存器中的數(shù)據(jù)為二進(jìn)制補(bǔ)碼形式,負(fù)數(shù)則需要將其變換成原碼形式,并屏蔽符號(hào)位。
5.如權(quán)利要求2所述的累加方法,其特征在于由電能計(jì)量芯片中閾值寄存器中數(shù)據(jù)確定所述C值。
6.如權(quán)利要求2所述的累加方法,其特征在于所述Reader為正數(shù),將其累加到正向總電量上;整數(shù)商和正向總電量的整數(shù)部分PEInt相加;余數(shù)和正向總電量的小數(shù)部分 PEDec相加;PEDec ^ C,向整數(shù)進(jìn)位,并將PEDec-C所得數(shù)據(jù)作為下一次累加的小數(shù)部分。
7.如權(quán)利要求3所述的累加方法,其特征在于所述情況類型包括 所述Reader為負(fù)數(shù),所述TAEnergy為負(fù)數(shù);所述Reader為正數(shù),所述TAEnergy為正數(shù); 所述Reader為正數(shù),所述TAEnergy為負(fù)數(shù); 所述Reader為負(fù)數(shù),所述TAEnergy為正數(shù)。
8.如權(quán)利要求7所述的累加方法,其特征在于①所述Reader為負(fù)數(shù),所述TAEnergy為負(fù)數(shù),將Reader取反碼并加1,屏蔽TAEInt與 Int的符號(hào)位,將TAEht和Int相加后存入TAEht,同時(shí)符號(hào)位置1 ;余數(shù)TAEDec和Dec相加后存入TAEDec ;存入新數(shù)據(jù)的TAEDec彡C,向整數(shù)部分進(jìn)位,并將TAEDec-C存入TAEDec, 作為下一次累加的小數(shù)部分;②所述Reader為正數(shù),所述TAEnergy為正數(shù),將TAEInt與Int直接相加后存入 TAEInt, TAEDec與Dec直接相加后存入TAEDec ;存入新數(shù)據(jù)的TAEDec彡C,向整數(shù)部分進(jìn)位,并將TAEDec-C存入TAEDec作為下一次累加的小數(shù)部分;③所述Reader為正數(shù),所述TAEnergy為負(fù)數(shù),屏蔽TAEnergy的整數(shù)部分TAEInt的符號(hào)位,將TAEInt減去Int的值存入TAEht,TAEInt彡ht,給新存入的TAEInt加上負(fù)號(hào);將 TAEDec減去Dec的值存入TAEDec,TAEDec < Dec, TAEDec向整數(shù)部分借位,并將TAEDe+C減去Dec的值存入TAEDec中;整數(shù)部分為零,用Dec減去TAEDec后存入TAEDec,并將TAEInt 的符號(hào)位清零,表示總電量為正數(shù);TAEDec彡Dec時(shí),將TAEDec減去Dec后存入TAEDec ;④所述Reader為負(fù)數(shù),所述TAEnergy為正數(shù),將Reader取反碼后加1,同時(shí)屏蔽其符號(hào)位;TAEht彡Int,將TAEInt減去ht的值存入TAEht,表示總電量是正數(shù);將TAEDec 減去Dec,TAEDec < Dec時(shí),TAEDec向整數(shù)借位,用TAEDec+C減去Dec后存入TAEDec ;整數(shù)部分為零,用Dec減去TAEDec后存入TAEDec,并將TAEht的符號(hào)位置1,表示總電量是負(fù)數(shù);TAEDec彡Dec時(shí),將TAEDec減去Dec的結(jié)果存入TAEDec。
全文摘要
本發(fā)明可實(shí)現(xiàn)具有雙向計(jì)量功能的智能電表的總電量累加方法,所述方法包括正反向總電量的累加和各費(fèi)率正反向總電量的累加,能量寄存器采用“讀復(fù)位”模式。上述兩種方法只用到整數(shù)運(yùn)算,卻可以保證數(shù)字的準(zhǔn)確和電量的精確累加,大部分的數(shù)據(jù)處理只用加法或減法就能完成。將它們應(yīng)用在定點(diǎn)MCU中,不僅可降低計(jì)量裝置的成本,而且運(yùn)算速度更快;測(cè)試人員隨時(shí)可以讀取電能表計(jì)量的總電量并與標(biāo)準(zhǔn)電量比較,計(jì)算出計(jì)量誤差。本發(fā)明依據(jù)電力公司的要求,即可以分別累加正向和反向總電量,也可計(jì)算出組合總電量。
文檔編號(hào)G01R11/57GK102200544SQ20101061572
公開(kāi)日2011年9月28日 申請(qǐng)日期2010年12月31日 優(yōu)先權(quán)日2010年12月31日
發(fā)明者孟珺遐 申請(qǐng)人:中國(guó)電力科學(xué)研究院
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
泰和县| 津市市| 遂宁市| 和龙市| 建昌县| 托里县| 英山县| 蓬安县| 连山| 万盛区| 宜君县| 宜兰县| 方山县| 松江区| 二连浩特市| 泌阳县| 余江县| 樟树市| 银川市| 上思县| 晋州市| 桂林市| 东辽县| 和田县| 丘北县| 建昌县| 怀远县| 芜湖市| 六安市| 福鼎市| 扬中市| 绍兴市| 柳河县| 醴陵市| 永清县| 墨脱县| 宁武县| 会昌县| 黄浦区| 安康市| 新和县|