《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 基于Web和硬件可重構技術的遠程抄表設計
基于Web和硬件可重構技術的遠程抄表設計
與非網
摘要: 隨著計算機技術的發展,遠程抄表技術逐漸得到廣泛的應用。通過實行一戶一表以及自動遠程抄表,可以做到及時、準確地進行數據采集,并且提供了一種對欠費用戶進行有效管理的手段。遠程抄表系統通常主要由計量儀表、數據集中器、通信網絡以及抄表程序四個部分組成。計量儀表完成信息轉換、數據存儲功能,并支持通過本地通信網絡與數據集中器進行數據交換。數據集中器完成數據匯聚功能,并能與抄表程序進行遠程數據交換。抄表程序則借助通信網絡從數據集中器獲取計量數據,并存入數據庫中。在絕大多數遠程抄表系統中,計量儀表通常沒有太多差別,而對于抄表程序以及緊接其后的各種數據查詢、統計等操作都是典型的數據庫應用系統,差別也不大。相比之下,通信網絡以及與之緊密相關的數據集中器則是不同系統之間差異較大的地方,同時也是技術上的難點。
Abstract:
Key words :

引言
     
  隨著計算機技術的發展,遠程抄表技術逐漸得到廣泛的應用。通過實行一戶一表以及自動遠程抄表,可以做到及時、準確地進行數據采集,并且提供了一種對欠費用戶進行有效管理的手段。遠程抄表系統通常主要由計量儀表、數據集中器、通信網絡以及抄表程序四個部分組成。計量儀表完成信息轉換、數據存儲功能,并支持通過本地通信網絡與數據集中器進行數據交換。數據集中器完成數據匯聚功能,并能與抄表程序進行遠程數據交換。抄表程序則借助通信網絡從數據集中器獲取計量數據,并存入數據庫中。在絕大多數遠程抄表系統中,計量儀表通常沒有太多差別,而對于抄表程序以及緊接其后的各種數據查詢、統計等操作都是典型的數據庫應用系統,差別也不大。相比之下,通信網絡以及與之緊密相關的數據集中器則是不同系統之間差異較大的地方,同時也是技術上的難點。
  
  針對以上問題,本文提出了一種基于Web和硬件可重構技術" title="可重構技術">可重構技術的遠程抄表系統結構。軟件方面,它在數據集中器中利用一個嵌入式Web服務器來負責數據的傳送任務,采用HTTP作為通信協議??蛻舳藙t是操作系統自帶的Web瀏覽器,從而可以解決各個系統之間由于通信協議不同而造成的兼容性問題,而且節省了抄表客戶端的軟件開發成本。硬件方面,采用硬件可重構技術和基于IP核的設計方法,在單個FPGA芯片上實現了數據集中器。即使將來需要對系統進行改進和升級,也只需對FPGA芯片的配置文件進行修改,而不必報廢整個硬件系統,從而保護了已有的硬件投資,降低了系統的維護成本。另外,數據集中器上的通信接口也可以借助硬件可重構技術很方便地更改,因而能夠適應各種硬件環境。
  
遠程抄表系統的體系結構
  
  基于Web的遠程抄表系統的體系結構如圖1所示(以電表為例)。

            圖1 基于Web的選程秒表系統的體系結構

  它由三個部分組成,分別是抄表客戶端程序、數據集中器以及分布在各家各戶的電表。抄表流程如下:首先由抄表人員使用抄表客戶端程序向數據集中器以HTTP協議的形式發送抄表請求,該請求通過因特網到達數據集中器后,會首先被一個嵌入式Web服務器進行處理。嵌入式Web服務器將返回一個HTML文件給客戶端,要求用戶輸入命令類型(例如,是抄數據還是執行相關控制操作)、電表編號以及附加數據。當用戶填完表單后,這些數據將依照HTTPPOST協議發送給數據集中器中的嵌入式Web服務器。隨后,相關的命令和數據參數抽取出來,送給數據集中器的控制模塊??刂颇K將對命令參數進行判斷和安全性檢查,然后生成相應的命令元組,以便控制和讀取數據。電表通信模塊完成與電表之間的通信任務,負責將命令元組發送給電表,并讀取執行結果。當執行抄表操作時,數據將被電表通信模塊以數據元組的方式返回給控制模塊,然后按照固定格式被組裝為一個字符串,并交給嵌入式Web服務器。嵌入式Web服務器將這些數據插入到預先設計好的HTML文件模板中,隨后將其通過因特網返回給客戶端的抄表程序。
  
硬件設計
  
  從圖1中可以看出,數據集中器是系統中的關鍵部分,一方面它需要按照《DL/T64521997:多功能電能表通信規約》通過RS485總線從電表處采集數據,并執行各種控制任務;另一方面它必須能夠解釋以HTTP形式發送過來的控制命令,并將執行結果以HTML文件的形式返回給抄表客戶端。
  
  本文在進行硬件設計的時候采用了基于IP核的設計方法,并將數據集中器的大部分功能在單個FPGA芯片上予以實現。設計電路原理圖之前,必須根據系統需求選擇合適的IP核。所謂IP核,是指那些以硬件形式(硅片版圖)或者軟件形式(用Verilog、VHDL描述的RTL或者門級模型)存在的、具有特定功能的硬件電路。IP核通常分為硬核、固核與軟核三種。根據系統的硬件開發環境以及性能需求,本文選擇了Altera公司開發的一系列軟核產品,它們是用Verilog語言所描述的硬件模塊,允許用戶根據需要對各種參數進行配置,如數據通路帶寬、優先進行速度優化還是資源優化等,因而應用非常靈活。系統所用到的軟IP核產品有Nios CPU、ROM、RAM、定時器、通用異步收發器UART,以及用于外部功能擴展的Avalon總線模塊,并將Nios CPU配置為32位字長模式,擁有256個通用寄存器,工作頻率33MHz;UART配置為14400bPs的波特率,8位數據位,2位停止位,無奇偶校驗。在確定了IP核并進行相應設置后,需要設計系統的電路原理圖。圖2表示了由各個IP模塊組成的數據集中器內部硬件結構,其中的ROM用于存放用戶程序,RAM作為程序運行時的存儲空間,定時器為實時操作系統提供時鐘中斷功能,外部總線接口和UART負責與系統外部進行通信。它們將通過一條內部總線與Nios CPU相連,這樣就構成了一個完整的嵌入式硬件系統。設計電路圖后的下一步工作是選擇合適的實現載體?;贗P核的設計方法通常使用FPGA芯片或者直接在硅片上實現。本文采用的是Altera公司APEX20KE系列FPGA芯片,能提供8000個左右的邏輯塊資源和多達400Kb左右的ROM和RAM存儲空間。由于FPGA芯片具有可反復更改的特性,因此有助于硬件系統的改進和不斷升級。另外,通過對通信接口進行重構,例如將UART改為CAN總線控制器,可以使系統能與更多的硬件環境兼容。

               圖2 數據集中器的硬件結構
  
  由于在FPGA芯片上構造電平轉換電路和以太網物理層、MAC層電路較困難,本文將這些功能放到了FPGA芯片的外面,并分別使用MAX485和LAN91C111芯片來實現電平轉換和以太網硬件接口功能。FPGA芯片內的UART模塊和MAX485芯片共同完成與電表的數據通信任務,前者負責接收和發送數據,后者完成信號電平的轉換。SMSC公司的LAN91C111是為了方便嵌入式應用系統連接到快速以太網而專門設計的,它實現了CSMA/CD協議的物理層和媒體訪問控制層(MAC)兩個部分,并可以很方便地與許多嵌入式處理器進行數據交換。

軟件設計
  
數據通訊協議

  
  抄表系統中有兩個地方存在通訊協議的問題,其中一個在數據集中器與各個電表之間。目前,國內各廠家生產的電表絕大部分具有國家頒布的“多功能電能表通信規約”所規定的抄表協議,因此只要數據集中器中的電表通信模另外一個必須考慮通訊協議的地方是數據集中器和電力抄表中心之間。目前,國家還沒有制定正式的標準,各個廠家采用的協議也各不相同。這造成了系統之間基本上不存在互操作性和互連性,從而阻礙了行業的進一步發展。
  
  本文提出了以標準公開的HTTP協議作為應用層通訊的基礎,不但能解決系統之間的兼容性問題,而且還將因特網上廣泛使用的Web技術引入到遠程抄表系統中,為其帶來了許多便利。例如,只要能連接到因特網,就可以完成抄表工作,擺脫了時間、地點的約束。另外,用戶抄表使用的終端程序是所有計算機平臺上都帶有的Web瀏覽器,這意味著用戶無需花費一分錢額外投資,就可以得到一個圖形用戶界面。在HTTP的底層使用了TCP/IP協議來保證數據在因特網上的可靠傳輸。用戶對電表的操作命令以及相關參數將被作為HTML表單數據以HTTPPOST方法傳送給數據集中器上的嵌入式Web服務器,而操作的結果和數據則是以HTML表格的形式返回。
  
數據集中器的軟件設計

  
  數據集中器在抄表系統中起著關鍵的作用,它一方面要通過因特網與抄表中心進行通信,另一方面要采集來自各個電表的用電數據。為了降低開發難度,提高可維護性,系統使用C語言作為開發語言,并利用了GNU的開發工具,包括gcc 、gdb等。另外,將系統功能分解為五個相互協作的任務,采用uc/os-II作為實時操作系統,實現任務調度和任務間通信。這五個任務分別是:
  
  (1)網絡通信接口:負責在因特網上收發數據。本文采用Altera公司提供的專門針對嵌入式系統應用的精簡TCP/IP協議棧作為底層通信協議。數據發送功能是通過調用TCP/IP傳輸層服務函數nr_ pLugs_send ()實現的,而數據接收功能則是由一個在創建通信套接字時被注冊的回調函數實現的。當傳輸層收到一個有效應用層數據時,該函數被調用,應用層數據的指針被當作實參傳入,隨后回調函數把數據指針以消息的形式發送給HTTP引擎。

  (2)HTTP引擎:負責以HTTPPOST協議接收和發送數據,將所析取出的抄表命令和數據參數交給控制模塊;根據控制模塊傳回的數據和從虛擬文件系統中讀取的HTML文件模板,動態構造一個完整的HTML文件,發送給請求方。
  
  (3)虛擬文件系統:負責在ROM或者外部Flash存儲器上實現一個小型的只讀文件系統,用以存放各種靜態Web頁面和動態構造Web頁面所需要的頁面模板。它靠維護一個文件索引表來實現文件的讀取,其結構如圖3所示。

               圖3 虛擬文件系統索引表
  (4)控制模塊:負責安全性檢查、命令和數據參數格式轉換。由于因特網是一個公共網絡,在其上傳輸的控制命令和數據有可能被截獲、篡改和重發,因此需要進行安全性檢查。主要采用數據加密和隨機數驗證兩種方法。
  
  (5)電表通信:負責與指定電表進行通信,從而讀取用電數據,以及完成各種控制操作,其功能相當于分層網絡模型中的數據鏈路層。數據的接收和發送是通過nr_uart_rxchar()和nr_uart_Txchar()兩個函數實現的。

抄表中心的客戶端應用程序設計
  
  在抄表中心有交互式和批處理兩種不同的方式完成抄表任務。在交互式過程中,要求手工輸入電表編號、要求執行的操作等信息,在查詢結束后,再將數據手工地轉錄到數據庫中。對于這種方式,操作系統自帶的Web瀏覽器就是一個抄表終端程序。但是,交互式抄表效率較低,只適用于抄錄指定用戶的電量信息、對制定用戶電表執行控制任務或者用戶進行自助查詢等場合。當需要抄收大量電量數據時,就要采用批處理方式。圖4 給出了批處理方式下的程序流程圖。在批處理抄表程序中,有兩個關鍵技術問題:一是將抄表命令以HTTPPOST方式傳送給數據集中器上的嵌入式Web服務器,另外一個是從接收到的HTML文件中抽取用電數據。對于第一個問題,我們首先通過分析網絡抓包程序(Sniffer程序)所捕獲的HTTP數據包,就可以掌握PC機環境下瀏覽器和Web服務器之間以POST方式傳遞信息所采用的數據格式和時序關系,然后在VB環境下編寫程序模擬這個過程中瀏覽器的行為。對于第二個問題,解決方法是約定數據以表格形式返回,并保證格式固定。因此,通過在HTML文件中搜索
  
  等HTML標記,就可以將電量數據抽取出來。

               圖4  批處理抄表流程
  
  抄表中心的其他功能如電費計算、數據查詢和統計、系統維護等,都屬于常見的數據庫應用程序。由于篇幅關系,不再一一介紹了。
  
結束語
  
  本文在分析現有遠程抄表系統結構的基礎上,提出了一種新的基于Web和硬件可重構技術的遠程抄表系統結構,并利用基于IP核的設計方法進行硬件設計,使系統具有兼容性強、體積小、功耗低、容易升級和維護等特點。目前,抄表系統中的關鍵部分——數據集中器,已經成功地在單個FPGA芯片上實現,并完成了它與抄表終端程序之間的通信測試。我們現正在搭建一個完整的原型系統,以做進一步測試和改進工作。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧美午夜在线观看 | 国产成人综合手机在线播放 | 日韩a级 | 日日狠狠久久偷偷四色综合免费 | 综合免费视频 | 日韩网站在线 | 国产精品久久永久免费 | 中文字幕免费视频精品一 | 天天狠狠色噜噜 | 殴美黄色片 | 日本黄色小说网 | 成人午夜免费视频 | 国产啪精品视频网免费 | 亚洲第一福利网 | 亚洲午夜18 | 国产精久久一区二区三区 | 亚洲女女同志videos | 欧美成人精品免费播放 | 青草草在线观看免费视频 | 久久久亚洲精品视频 | 男女视频在线观看免费高清观看 | 好色影院| 免费成人黄色 | 亚洲欧美日韩中文字幕在线不卡 | 欧美日韩中文字幕在线视频 | 在线观看国产剧情麻豆精品 | 99精品视频在线视频免费观看 | 国产a视频精品免费观看 | 免费黄色 | 老湿福利影院 | 天天舔天天爱 | 寡妇一级a毛片免费播放 | 激情插| 免费视频精品一区二区三区 | 成人性色生活片免费看成人性 | 久久久五月| 在线观看黄色片 | 春意影院午夜爽爽爽免费 | 欧美人妖猛交 | 在线观看免费播放网址成人 | 久久综合久久综合久久综合 |