基于MSP430與ATT7022B的四遙測量模塊
1、前言
所謂四遙― 是“遙測、遙信、遙控、遙調(diào)”技術(shù)的簡稱,“遙測”是指利用電子技術(shù)遠(yuǎn)方測量集中顯示諸如電流、電壓、功率、電能等物理量的系統(tǒng)技術(shù)。該電力“四遙”測量模塊采用16位的430單片機(jī)與集成電能芯片ATT7022B,具有準(zhǔn)確度高,誤差曲線平直,性能穩(wěn)定可靠,自身損耗低,而且功能容易擴(kuò)展等優(yōu)點.該電能芯片具有SPI接口, 外部微處理器可通過此接口讀取原始值,再根據(jù)相應(yīng)的計算公式進(jìn)行計算,最后得到各項電力參數(shù)的測量值。
2、系統(tǒng)介紹
遙測模塊,也可以作為普通電子式電能表使用,其采樣方式及采用什么MCU有多種方案,不少已經(jīng)投入實際使用。但是基于MSP430 單片機(jī),采用高度集成的采集芯片ATT7022B進(jìn)行電流和電壓采樣的模塊還沒有廣泛投產(chǎn)使用。盡管TI公司提供了多種采樣方案,但是其采樣電路比較復(fù)雜,難于調(diào)試,更沒有采用專用的電能表的采用芯片。
圖1是遙測模塊的硬件組成,合理的把TI 的MSP430F449單片機(jī)和珠海炬力的ATT7022B電能采集芯片集合,發(fā)揮各自的優(yōu)勢,避開復(fù)雜的采樣電路的設(shè)計。
2.1、硬件部分:
MSP430F449單片機(jī)
T1公司的MSP430系列單片機(jī)是一種具有超低功耗的功能強(qiáng)大的16位單片機(jī)。新開發(fā)的F系列具有Flash存儲器,如F449就具有60KB的Flash,在系統(tǒng)設(shè)計,開發(fā)調(diào)試及實際應(yīng)用上比其他MCU都有比較明顯的優(yōu)勢。
(1)、超低功耗
MSP430F系列運行在1MHZ時鐘的條件下時,工作模式不同為0.1~400uA,工作電壓為1.8~3.6V。
(2)、超強(qiáng)處理能力
8MIPS的CPU內(nèi)核,16位×16位的硬件乘法器。
(3)、靈活的配置方法
MSP430 F系列具有豐富的尋址方式,只需要27條指令;片內(nèi)寄存器數(shù)多,可以實現(xiàn)多種運算;有高效的查表處理方法。這一切保證了可以編譯出高效的程序。許多中斷,可以嵌套,使用方便。
(4)、片上集成外圍功能模塊
MSP430 F系列集成了較多的片上外圍設(shè)備。這些外圍設(shè)備功能相當(dāng)強(qiáng)大:12位A/D,精密模擬比較器,硬件乘法器,2組頻率可以達(dá)到8MHZ的時鐘模塊,2個帶有許多捕獲比較的16位定時器,看門狗功能,2個可實現(xiàn)異步和同步及多址訪問的串行通信接口,數(shù)十個可實現(xiàn)方向的設(shè)置及中斷功能的并行輸入,輸出端口,擁有SPI和UASRT通訊端口。
(5)、 高效的開發(fā)方式
MSP430FX系列具有FLASH存儲器,這一特點使得它的開發(fā)工具相當(dāng)簡便。利用單片機(jī)自身帶有的JTAG接口或片內(nèi)BOOT ROM內(nèi)固化的默認(rèn)的加載程序載入器Bootstrap可以進(jìn)行串口或并口,通過UART將程序代碼裝入Flash 存貯器中。 可以在一臺PC及一個小JATAG控制器的幫助下實現(xiàn)程序的下載,方便的完成在線程序調(diào)試。
ATT7022B電能芯片
ATT7022B是珠海炬力集成電路設(shè)計有限公司生產(chǎn)的一款高精度三相電能計量芯片,該芯片對有功、無功功率的測量精度分別達(dá)到0.2s和0.5s,所能測量的電參數(shù)包括有功、無功、視在功率、雙向有功和四角限無功電能;電壓和電流有效值;相位、頻率等。ATT7022B具有計量參數(shù)齊全、校表功率完善等優(yōu)點,簡化了軟件設(shè)計,縮短了軟件開發(fā)周期。特別是AT7022B可支持全數(shù)字校表,即軟件校表。軟件校表可提高校表精度、簡化硬件設(shè)計、降低設(shè)計成本,為三相多功能計量裝置提供了功能更加齊全、設(shè)計更加簡單的應(yīng)用方案。
(1)工作原理
ATT7022B首先通過6通道16位∑-Δ的ADC模數(shù)轉(zhuǎn)換電路來對輸入電流和電壓信號進(jìn)行采樣,轉(zhuǎn)換后的數(shù)字量再經(jīng)過24位DSP數(shù)字信號處理以完成全部三相電能參數(shù)的運算,同時將結(jié)果保存在相應(yīng)的寄存器中并通過SPI口與MCU進(jìn)行數(shù)據(jù)交換,DSP模塊同時還生成有功/無功電能脈沖輸出CF1/CF2,可用于現(xiàn)場校表。ATT7022在設(shè)計中已考慮到校表的方便性,采用全數(shù)字校表,只需適當(dāng)修改校表寄存器即可實現(xiàn)校表功能。
(2) 串行SPI接口[!--empirenews.page--]
ATT7022提供有標(biāo)準(zhǔn)的SPI接口,可與帶SPI口的MCU直接連接,也可用適當(dāng)?shù)腎/O口線仿真SPI總線,其仿真讀寫程序很容易實現(xiàn)。
ATT7022的一個數(shù)據(jù)傳輸總線從向SPI接口的DIN端送入8位命令字開始的,當(dāng)命令中包括一個寫入命令時,在其后的24個SCLK周期內(nèi),串口將持續(xù)從DIN端讀入24位串行數(shù)據(jù)。當(dāng)發(fā)出一個讀取命令時,串口將根據(jù)發(fā)出的命令來進(jìn)行尋址,然后在其后的24個連續(xù)的SCLK周期從DOUT引腳上串行輸出寄存器內(nèi)容。數(shù)據(jù)的傳輸總是MSB在前,LSB在后。讀寄存器時,SCLK為高,數(shù)據(jù)在DOUT引腳上有效。而在寫寄存器時,數(shù)據(jù)則在SCLK的下降沿從DIN引腳讀入,這一點在仿真SPI讀寫操作子程序時應(yīng)引起注意,否則讀寫寄存器將出錯。ATT7022B的讀寫時序見下圖2所示。
(3)寄存器配置及校表方法
ATT7022B的寄存器分為計量參數(shù)和校表參數(shù)兩部分。器件中的計量參數(shù)寄存器多達(dá)82個,它們的地址在01H~6FH中不連續(xù)分布,未使用部分可留給以后擴(kuò)展。計量參量的計算全部由硬件完成,用戶只需進(jìn)行單位換算就可得到測量值。
校表參數(shù)寄存器包括相位補(bǔ)償設(shè)置、功率增益、相位校正、電壓/電流校正、比差補(bǔ)償設(shè)置、啟動電流、高頻脈沖輸出設(shè)置、斷相閾值電壓設(shè)置和合相能量累加模式等36個寄存器,它們的地址不連續(xù)地分布在01H~2AH,也考慮了以后的擴(kuò)展。應(yīng)當(dāng)說明的是,兩個寄存器的地址有重疊部分,但它們的物理位置是分開的,可以通過讀寫命令來區(qū)分。
校表是電能表設(shè)計中非常重要的環(huán)節(jié),ATT7022B上電復(fù)位后,校表寄存器的初始數(shù)據(jù)為默認(rèn)值,此時讀出的計量參數(shù)值和實際參數(shù)值不符,因而需要對校表寄存器進(jìn)行設(shè)置,以將測量值減小到誤差范圍之內(nèi)。校表可按高頻輸出參數(shù)設(shè)置、比差補(bǔ)償區(qū)域設(shè)置、角差補(bǔ)償區(qū)域設(shè)置、功率增益校正、相位校正、啟動電流設(shè)置、功率增益校正、參量累加模式設(shè)置、電壓校正、電流校正的先后順序進(jìn)行?,F(xiàn)以電壓增益的校準(zhǔn)為例簡要說明AT7022B的校表方法,其它參數(shù)校準(zhǔn)請參照該芯片的參考文獻(xiàn)。
電壓增益校正UgainA、UgainB、UgainC:在ATT7022初始化時,Ugain為0,標(biāo)準(zhǔn)表上讀出的電壓有效值為Ur,通過SPI口讀出的測量電壓有效值寄存器的值為Datau。此時,如實際電壓有效值Ur,測量電壓有效值為Urms=DataU× / ,由于:
Ugain=(Ur/Urms)-1
因此,如果(Ugain≥0),則Ugain=INT[Ugain× ]
否則Ugain<0,則Ugain=INT[ +Ugain× ], 式中,INT表示取結(jié)果的整數(shù)部分。
(4)互感器參數(shù)選擇
選用的電流互感器規(guī)格為5A/2.5mA,精度是0.05級,負(fù)載阻抗為40Ω,電壓互感器規(guī)格選擇電流型電壓互感器2mA/2mA,在其前端通過110K功率電阻把220v電壓信號轉(zhuǎn)變成2mA電流信號,負(fù)載電阻為250Ω。這樣在輸入額定電流、額定電壓時,其電流、電壓差動輸入電壓的有效值分別為0.1V和0.5V左右,可滿足ATT7022B的要求。
(5)特點
ATT7022B能夠提供的計量參數(shù)除瞬時有功功率、無功功率、視在功率、有功電能、無功電能、功率因數(shù)、相位、電壓有效值、電流有效值、瞬時合相電流值、線電壓頻率值、四象限無功、正向和反向有功電能外,還包括缺相、相序錯誤和反向有功指示等狀態(tài)信息,非常適用于三相電路中各種電參數(shù)的測量。
2.2、軟件部分
對于MSP430單片機(jī),由TI 公司自帶的嵌入式軟件開發(fā)平臺IAR EMBEDDED WORKBENCH。該軟件可對開發(fā)系統(tǒng)進(jìn)行在線調(diào)試,帶有C 編譯器,可采用高效、便捷、通用的C語言編程。
通過MSP430F449的P4.2—P4.5端口對ATT7022B芯片進(jìn)行同步數(shù)據(jù)傳遞,其中P4.2用于CS,P4.3端口用于 DI,P4.4用于DO,P4.5 用于SCK,程序流程圖如下圖3所示。
SPI通信一般分為硬件SPI通信和軟件SPI通信。如果本系統(tǒng)選用硬件SPI通信,就需要在程序中把P4.2-P4.5 四個口定義成同步串行通信口,P4.3 利用TXBUF 發(fā)送數(shù)據(jù),P4.4利用RXBUF接受數(shù)據(jù),P4.5提供同步CLK信號。如果定義同步發(fā)送與接受數(shù)據(jù)位數(shù)是8位的話,這樣利用TXBUF發(fā)送8位的地址數(shù)據(jù)一次就完成,與普通的數(shù)據(jù)發(fā)送沒有什么區(qū)別,但是利用RXBUF接受24位的寄存器數(shù)據(jù),需要連續(xù)接受三次。通過實際調(diào)試發(fā)現(xiàn),這種通信方式對時序要求極為嚴(yán)格,使用起來較麻煩。
在本系統(tǒng)中,改用了軟件SPI通信,使用I/O口模擬硬件SPI通信,通過程序控制P4.5 產(chǎn)生高低電平,通過P4.3輸出8位的地址數(shù)據(jù),在8個CLK脈沖信號下就可以完成,然后緊接著通過P4.4 接受24位的寄存器數(shù)據(jù),在24個CLK脈沖信號下就可以完成。這種通信方式使用起來操作性較強(qiáng),簡易實用。
3、 結(jié)束語
本模塊作為電力四遙監(jiān)控系統(tǒng)的測量單元,所涉及到的軟硬件均通過了實驗調(diào)試,工作正常,性能穩(wěn)定。該模塊可以單獨作為三相電能表使用,也可以外加顯示模塊、遙信模塊、遙測模塊、通信模塊等就可以形成電力四遙監(jiān)控系統(tǒng),從而可以廣泛應(yīng)用于電力系統(tǒng)的各種配電設(shè)備中。