摘要:針對(duì)采用ADE7755作為電能計(jì)量芯片而設(shè)計(jì)的電表存在著功能簡(jiǎn)單和精度低等缺點(diǎn),提出了一種新型數(shù)字式三相多功能電表的設(shè)計(jì)方案.該方案采用ADE7758芯片和PIC16C76芯片進(jìn)行設(shè)計(jì),電表不僅能計(jì)量多種電能參數(shù)以滿(mǎn)足不同的實(shí)際需求,而且可對(duì)ADE7758片內(nèi)寄存器的參數(shù)進(jìn)行微調(diào),使其達(dá)到很高的計(jì)量精度.
為了確保在缺相供電情況下能夠繼續(xù)正常工作,采用三相供電的方式.每一相交流電壓經(jīng)過(guò)一個(gè)專(zhuān)用的BT104型號(hào)變壓器,可提供兩組+12V和一組+9V的交流低電壓,兩組+12V輸出線(xiàn)圈間的最大隔離電壓為2400V,其中一組+12V輸出線(xiàn)圈與+9v輸出線(xiàn)圈間的最大隔離電壓為2400V,但另一組+12V輸出線(xiàn)圈與+9V輸出線(xiàn)圈間的最大隔離電壓只有1200V.由于在實(shí)際使用過(guò)程中RS4g5接口電路與電表內(nèi)部電路間的靜電電勢(shì)差可能 舊當(dāng)大,同時(shí)為了在三相都掉電后有幾十毫秒的供電時(shí)間使PIC單片機(jī)仍能正常工作進(jìn)行電量數(shù)據(jù)保存處理,所以第1組+12V電源供RS485接口電路使用,第2組+12V電源供中央控制和紅外通訊電路使用,第3組+9V電源供電能計(jì)量電路使用
1.2 電能計(jì)量電路
由3個(gè)精密電流互感器提供每相的電流信號(hào).對(duì)于不同規(guī)格的電表,采用了不同電流變換比例
的互感器,由3路電阻網(wǎng)絡(luò)分壓得到每相的電壓信號(hào).將電流信號(hào)和電壓信號(hào)接人電能計(jì)量芯片ADE7758,由ADE7758將電流信號(hào)和電壓信號(hào)先進(jìn)行采樣、A/D(模/數(shù))轉(zhuǎn)化和相位校準(zhǔn),再將電流
在電表的軟件程序中分為主程序和中斷程序2大部分.主程序用于實(shí)現(xiàn)電表的每一項(xiàng)功能,中斷程序用于暫停主程序的運(yùn)行,發(fā)送顯示代碼給數(shù)碼管,同時(shí)檢測(cè)電能脈沖、鍵盤(pán)操作和數(shù)據(jù)通訊事件是否發(fā)生.假如有事件產(chǎn)生則將對(duì)應(yīng)的標(biāo)志位置1,退出中斷程序后繼續(xù)執(zhí)行主程序,主程序則根據(jù)標(biāo)志位來(lái)確定是否需要調(diào)用相應(yīng)的處理子程序.由于PIC16C76僅有8級(jí)硬件堆棧和程序跨越4個(gè)分區(qū)的特殊性,所以在編寫(xiě)程序時(shí)需要注意程序中嵌套子程序的層次和調(diào)用的子程序是否跨區(qū),否則會(huì)出現(xiàn)程序跑飛或者芯片自動(dòng)復(fù)位的現(xiàn)象.
2.1 主程序的設(shè)計(jì)
在主程序中按實(shí)現(xiàn)的功能可分為9個(gè)模塊.第1個(gè)模塊實(shí)現(xiàn)上電后對(duì)電表的初始化和設(shè)置.先對(duì)單片機(jī)的工作模式進(jìn)行設(shè)置,再?gòu)腅 PROM 中讀取ADE7758的工作參數(shù),寫(xiě)入ADE7758使其能正確計(jì)量電能;從E PROM 中讀取所有歷史電能存放到單片機(jī)內(nèi)部寄存器中;從E PROM 中讀取表
號(hào)和密碼等通訊參數(shù),使得能與外部主機(jī)進(jìn)行正確的數(shù)據(jù)通訊.第2個(gè)模塊對(duì)電壓值進(jìn)行檢測(cè)判
斷,當(dāng)連續(xù)3次檢測(cè)到的電壓都低于程序設(shè)定值時(shí),則調(diào)用子程序保存所有電能,防止電路數(shù)據(jù)的丟失.第3個(gè)模塊對(duì)總有功脈沖和總無(wú)功脈沖進(jìn)行計(jì)數(shù)得到總有功和總無(wú)功電能.第4個(gè)模塊負(fù)責(zé)更新顯示緩沖區(qū)的內(nèi)容,把單片機(jī)內(nèi)部寄存器中的電能由十六進(jìn)制轉(zhuǎn)換為十進(jìn)制,再轉(zhuǎn)換為L(zhǎng)ED顯示代碼存放到顯示緩沖區(qū)中.第5個(gè)模塊實(shí)現(xiàn)與外部通訊的功能,分為發(fā)送數(shù)據(jù)和接收數(shù)據(jù)2個(gè)子程序.第6個(gè)模塊對(duì)鍵盤(pán)操作進(jìn)行響應(yīng),通過(guò)鍵盤(pán)操作可對(duì)ADE7758電能計(jì)量相關(guān)的參數(shù)進(jìn)行微調(diào),使電表的電能計(jì)量誤差控制在很小的范圍內(nèi).第7個(gè)模塊從ADE7758寄存器中讀取A、B、C三相的有功、無(wú)功和視在功,再乘以不同的系數(shù)(不同規(guī)格的電表系數(shù)不同)后,然后累加到單片機(jī)的內(nèi)部電能寄存器中.第8個(gè)模塊分別計(jì)算有功、無(wú)功和視在功的總功率,以及計(jì)算總功率的因數(shù).第9個(gè)模塊從ADE7758寄存器中讀取電壓、電流、溫度和頻率值.執(zhí)行完后直接跳轉(zhuǎn)到第2個(gè)程序模塊的人口,開(kāi)始了新一輪的循環(huán).主程序流程如圖2所示.
2.2 中斷程序的設(shè)計(jì)
?1 Analog Devices Inc..Energy Metering IC with Pulse Out—put[Z].USA,2002.
[3] Microchip Technology Inc..PIC16F87X Data Sheet[z].USA.2001.
|