胡 琥,李亞莉,田 昕*
(1.云南農業大學 建筑工程學院,云南 昆明 650201;2.云南農業大學 節能減排檢測與研究工程中心,云南 昆明 650201;3.云南師范大學 物理與電子信息學院,云南 昆明 650092)
隨著嵌入式系統技術的發展近年來ARM9作為一種嵌入式系統處理器,以其高性能、低功耗、低價格等優點得到了廣泛的應用。同時Linux嵌入式操作系統,是一個免費的、具有良好可伸縮性與擴充性的操作系統,支持完整的硬件驅動程序、網絡通信協議與多處理器的架構,其源碼的公開更有利于操作系統嵌入式應用的開發和部署[1],使得兩個系統能完美的結合。
本系統采用三星S3C2410A作為檢測裝置的處理器,內部的AD直接用于數據的采集。系統實現了使用傳感器對用電設備進行檢測,將模擬開關4051作為多種電能指標數據通道的選擇,接入AD進行采集,最后利用以太網進行數據的在線傳送。該系統以低成本實現了高端電力檢測設備的主要功能,滿足了電力能耗參數檢測的實際需求。
本系統由硬件和軟件兩部分組成,均采用模塊化、標準化設計并充分考慮系統的擴展能力。
其中硬件部分包括傳感器模塊、通道選擇模塊、AD模塊、ARM核心模塊、以太網模塊(見圖1)。
軟件部分包括通道選擇模塊、AD模塊、以太網傳輸模塊。

圖1 系統原理框圖
系統工作原理:先由CPU選擇要采集數據的通道,由傳感器把測量數據通過模擬開關4051傳送到精度為10bitAD模塊,并由其進行模擬信號到數字信號的轉換,轉換完成后,送到CPU處理,然后進入系統緩存存儲,最后通過以太網傳輸到服務器進行分析及處理。
1.1.1 硬件系統概述
硬件主系統:采用基于ARM 920T內核的SAMSUNG S3C2410處理器,主頻202 MHz,配置64MB RAM,8寸640×480LCD。它不僅可以滿足目前功能的需要,而且豐富的硬件資源可以實現網絡檢測以及未來功能擴展需要。
傳感器:采用0.2級精度鉗形電流傳感器,根據系統硬件的需求在傳感器輸出端加入電壓放大器,直接輸出電壓信號方便數據的采集。
1.1.2 硬件電路
(1)通道選擇模塊電路設計
使用S3C2410內部的AD。4051是模擬開關,有8個通道可以選擇輸入,傳感器采集的數據由CPU通過P2輸出信號選擇有任一通道,由X端口輸出數據,由于內部AD轉換的模擬信號范圍是0~3.3 V,所以串入 1.7 K 和 3.3 K 電阻,把 3.3 K 電阻的電壓引入AD模塊內進行轉換。
(2)以太網傳輸數據模塊設計
以太網模塊:芯片采用 DM9000AE。DM9000AE是16Bit總線寬度,接在 S3C2410的Bank2上,使用中斷EINT2。DM9000AE的第32腳CMD用來指示當前數據總線是Index端口還是Data端口,開發板則將1根地址線A1接到第32腳,以此區分讀寫的是命令/地址還是數據(這點不同于其他具有多位地址線的芯片)。所以DM9000AE的Index端口的地址是0x10000000,Data端口的地址是0x10000002,驅動程序中只以這兩個物理地址訪問DM9000AE。
(1)通道選擇模塊設計
負責進行通道選擇。根據4051的資料,AB端口輸入的信號不同,所選擇的通道不同。本模塊由CPU控制IO(VD2、VD0)端口輸出高低電平,通過插針P2直接輸入到4051的AB端口,選擇不同通道來檢測電能參數,數據直接由X端口傳送出去。(對應關系見表1)

表1通道選擇真值表
(2)數據采集模塊
主要負責把傳送的模擬信號轉換為數字信號并進行儲存。10bitAD把0~3.3 V的模擬信號等分為1 024份,然后進行數據采樣把模擬信號轉換成對應的數字信號后,由CPU控制進入系統緩存存儲。
(3)數據傳輸模塊設計
主要負責把存儲的數據通過以太網傳送服務器。
命令傳送:本系統通過使用socket與服務器建立TCP/IP連接,來實現命令的傳送[6]。
數據傳輸:數據采集存儲后,可以直接采用命令傳送的方式,把數據傳輸到客戶機進行實時數據分析情況。如果數據不需進行實時分析,也可以存入SD卡中。
由X端口輸出的模擬信號經過串聯電阻進入AD模塊的模擬信號存在一個線性關系。接入的是1.7 K和3.3 K的電阻,如設由X端口輸出的模擬信號為y,進入AD模擬信號的為x,理論上應該存在以下的線性關系:y=1.52x。但在實際調試過程中,3.3 K電阻引入的電壓并未達到3.3 V,略調電阻使其達到3.3 V。原有線性關系被破壞,通過調整電阻值找到新的線性關系。
方法如下:用一臺穩壓電源把具有一定規律的電壓信號輸入通道選擇模塊,并由X端口通過串聯電阻輸入到AD模塊中,分別測出X端口輸出電壓值,以及AD端的電壓值,并用最小二乘法將對應關系y=1.23x計算出來,并根據該結果重新設置軟件參數(見圖2)。

圖2 y與x的線性關系圖
本文介紹了基于ARM9的電力能耗檢測設備的開發與調試,旨在通過該設備的開發,為構建能耗檢測平臺提供硬件支持。在開發過程中,筆者完成了如下的工作。
(1)傳感器的改造、系統硬件配置及外圍電路的設計制造;
(2)數據采集及數據傳輸軟件的程序編制及調試;
(3)在硬件設計開發的基礎上,開發了電能監測信息系統。該系統能夠通過以太網向嵌入式設備發送通信請求,獲取電能數據,并以曲線圖表形式顯示監測設備的狀態。
通過實際應用測試發現,系統采集數據及時、準確、完整,系統運行穩定可靠。
運用該設備建立用電監測的數據平臺,能夠實時獲取監控設備的能耗狀態,掌握用電過程的數據資源,為能耗檢測提供豐富的數據資料,為節能降耗提供有力的數據支持。
[1]李偉華,武占河.基于ARM9的電能管理終端軟硬件開發探討[J].廣東電力,2008,21(6):37 -39.
[2]孫天澤,袁文菊.嵌入式設計及Ⅱnux驅動開發指南:基于ARM9處理器[M].北京:電子工業出版社,2006.
[3]Daniel P.Bovet,Marco Cesati.Understanding Linux Kernel[M].Published by O'Reilly Media.Inc,1005 Gravenstein Highway North,Sebastopol,2005.
[4]周立功.ARM嵌入式系統基礎教程[M].北京:北京航空航天大學出版社,2005.
[5]屈博,楊耿煌,張澤卉.基于ARM9 Linux的手持電能質量分析儀[J].電子測量技術,2007,30(8):94 -98.
[6]歐陽崢崢,林茂.基于TCP/IP協議通信軟件的分析與實現[J].武漢工業學院學報,2005,24(2):12 -14.
[7]湯秋芳,羅梅林,周少武,等.基于ARM多用戶智能電能表設計[J].現代電子技術,2009(6):158-161.
[8]殷文強,李春生,鄒衛明,等.建筑能耗分析思路及節能診斷方法[J].節能技術,2011,29(5):446 -449.
[9]陳鵬.節能監測與企業能源利用真實狀況評估[J].節能技術,2009,27(3):255 -256,271.