<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于Web和硬件可重構(gòu)技術(shù)的遠(yuǎn)程抄表設(shè)計(jì)

          基于Web和硬件可重構(gòu)技術(shù)的遠(yuǎn)程抄表設(shè)計(jì)

          作者: 時(shí)間:2009-03-24 來源:網(wǎng)絡(luò) 收藏

            
          軟件設(shè)計(jì)
            
          數(shù)據(jù)通訊協(xié)議
            
          抄表系統(tǒng)中有兩個(gè)地方存在通訊協(xié)議的問題,其中一個(gè)在數(shù)據(jù)集中器與各個(gè)電表之間。目前,國(guó)內(nèi)各廠家生產(chǎn)的電表絕大部分具有國(guó)家頒布的“多功能電能表通信規(guī)約”所規(guī)定的抄表協(xié)議,因此只要數(shù)據(jù)集中器中的電表通信模另外一個(gè)必須考慮通訊協(xié)議的地方是數(shù)據(jù)集中器和電力抄表中心之間。目前,國(guó)家還沒有制定正式的標(biāo)準(zhǔn),各個(gè)廠家采用的協(xié)議也各不相同。這造成了系統(tǒng)之間基本上不存在互操作性和互連性,從而阻礙了行業(yè)的進(jìn)一步發(fā)展。
            
          本文提出了以標(biāo)準(zhǔn)公開的HTTP協(xié)議作為應(yīng)用層通訊的基礎(chǔ),不但能解決系統(tǒng)之間的兼容性問題,而且還將因特網(wǎng)上廣泛使用的技術(shù)引入到系統(tǒng)中,為其帶來了許多便利。例如,只要能連接到因特網(wǎng),就可以完成抄表工作,擺脫了時(shí)間、地點(diǎn)的約束。另外,用戶抄表使用的終端程序是所有計(jì)算機(jī)平臺(tái)上都帶有的瀏覽器,這意味著用戶無需花費(fèi)一分錢額外投資,就可以得到一個(gè)圖形用戶界面。在HTTP的底層使用了TCP/IP協(xié)議來保證數(shù)據(jù)在因特網(wǎng)上的可靠傳輸。用戶對(duì)電表的操作命令以及相關(guān)參數(shù)將被作為HTML表單數(shù)據(jù)以HTTPPOST方法傳送給數(shù)據(jù)集中器上的嵌入式服務(wù)器,而操作的結(jié)果和數(shù)據(jù)則是以HTML表格的形式返回。
            
          數(shù)據(jù)集中器的軟件設(shè)計(jì)
            
          數(shù)據(jù)集中器在抄表系統(tǒng)中起著關(guān)鍵的作用,它一方面要通過因特網(wǎng)與抄表中心進(jìn)行通信,另一方面要采集來自各個(gè)電表的用電數(shù)據(jù)。為了降低開發(fā)難度,提高可維護(hù)性,系統(tǒng)使用C語(yǔ)言作為開發(fā)語(yǔ)言,并利用了GNU的開發(fā)工具,包括gcc 、gdb等。另外,將系統(tǒng)功能分解為五個(gè)相互協(xié)作的任務(wù),采用uc/os-II作為實(shí)時(shí)操作系統(tǒng),實(shí)現(xiàn)任務(wù)調(diào)度和任務(wù)間通信。這五個(gè)任務(wù)分別是:
            
          (1)網(wǎng)絡(luò)通信接口:負(fù)責(zé)在因特網(wǎng)上收發(fā)數(shù)據(jù)。本文采用Altera公司提供的專門針對(duì)嵌入式系統(tǒng)應(yīng)用的精簡(jiǎn)TCP/IP協(xié)議棧作為底層通信協(xié)議。數(shù)據(jù)發(fā)送功能是通過調(diào)用TCP/IP傳輸層服務(wù)函數(shù)nr_ pLugs_send ()實(shí)現(xiàn)的,而數(shù)據(jù)接收功能則是由一個(gè)在創(chuàng)建通信套接字時(shí)被注冊(cè)的回調(diào)函數(shù)實(shí)現(xiàn)的。當(dāng)傳輸層收到一個(gè)有效應(yīng)用層數(shù)據(jù)時(shí),該函數(shù)被調(diào)用,應(yīng)用層數(shù)據(jù)的指針被當(dāng)作實(shí)參傳入,隨后回調(diào)函數(shù)把數(shù)據(jù)指針以消息的形式發(fā)送給HTTP引擎。

          本文引用地址:http://www.ex-cimer.com/article/192114.htm

          (2)HTTP引擎:負(fù)責(zé)以HTTPPOST協(xié)議接收和發(fā)送數(shù)據(jù),將所析取出的抄表命令和數(shù)據(jù)參數(shù)交給控制模塊;根據(jù)控制模塊傳回的數(shù)據(jù)和從虛擬文件系統(tǒng)中讀取的HTML文件模板,動(dòng)態(tài)構(gòu)造一個(gè)完整的HTML文件,發(fā)送給請(qǐng)求方。
            
          (3)虛擬文件系統(tǒng):負(fù)責(zé)在ROM或者外部Flash存儲(chǔ)器上實(shí)現(xiàn)一個(gè)小型的只讀文件系統(tǒng),用以存放各種靜態(tài)Web頁(yè)面和動(dòng)態(tài)構(gòu)造Web頁(yè)面所需要的頁(yè)面模板。它靠維護(hù)一個(gè)文件索引表來實(shí)現(xiàn)文件的讀取,其結(jié)構(gòu)如圖3所示。


            
          圖3 虛擬文件系統(tǒng)索引表
            

          p2p機(jī)相關(guān)文章:p2p原理




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();