基于CORTEX的STM32的三相電能表方案
背景
本文引用地址:http://2s4d.com/article/150243.htm 電能表是用來測量電能的儀表,又稱電度表,火表,電能表,千瓦小時表,指測量各種電學量的儀表。基于ARM的方案已經出現,但是適合應用的ARM7 TDMI在性能上不盡人意,同時外設資源不足;而更高端的ARM9系統的復雜程度很高,成本也較高。所以要研究一種廉價的,滿足客戶需求的電能表,來填補這個空缺。
最新一代ARM v7內核,命名為Cortex,同ARM7/9/10/11相比在架構上有了革命性突破。它采用高效的哈佛結構三級流水線,達到1.25DMIPS/MHz,在功耗上更是達到0.06mW/MHz。Cortex-M3使用Thumb-2指令集,自動16/32位混合排列。單周期的32位乘法以及硬件除法器,保證Cortex-M3的運算能力有大幅提高,Cortex-M3包含嵌套向量中斷控制器NVIC,中斷響應速度最快僅6周期,內部集成總線矩陣,支持DMA操作及位映射。
STM32系統按性能分成兩個不同的系列:STM32F103“增強型”系列和STM32F101“基本型”系列。增強型系列時鐘頻率達到72MHz,是同類產品中性能最高的產品;基本型時鐘頻率為36MHz,以16位產品的價格得到比16位產品大幅提升的性能。
根據電能表的功能和誤差精度的需求,我們選用了STM32F103xx,最高工作頻率為72MHz。
(一)采集數據處理與計算
在實際應用中,電力信號通過互感器采集到電能表中,通過一個6通道16位模擬前端處理器(AD73360)進行A/D轉換,轉換成數字信號并傳輸到STM32中。AD73360是6通道同步采樣的Σ-ΔADC器件,它內置了基本型電壓基準及通道內置獨立的PGA,通過調整通道PGA可以獲得合適的動態(tài)范圍從而保證微弱信號的計量精度。
電壓電流輸入信號首先需要RC濾波網絡濾波和數據采樣,然后進行A/D轉換。AD73360有獨立的時鐘源,可配置為自動數據采集與發(fā)送模式,通過SPI總線不斷的將數據傳向STM32。STM32內的Cortex-M3內核對輸入的數字信號進行處理,完成數字濾波,過零點檢測,得到基本的電流電壓數據,經過時間積分計算和轉換得到相應的電能計量。
(二)采樣電路和濾波網絡
由于被采樣信號為高電壓信號和大電流信號,我們需要對被采樣信號做高保真轉換為雙極性的電壓信號以便用AD電路離散化處理,我們需要令輸入信號位于AD73360的動態(tài)范圍的正中。采用的方法是:定義ADC工作電壓為5伏,選擇參考電壓2.5伏,將AD差分輸入的負端直接接到參考電壓輸入,差分輸入的正端接被測信號。電路分析可以參照圖三:
電度表相關文章:電度表原理
評論