基于Web和硬件可重構(gòu)技術(shù)的遠(yuǎn)程抄表設(shè)計(jì)
它由三個(gè)部分組成,分別是抄表客戶端程序、數(shù)據(jù)集中器以及分布在各家各戶的電表。抄表流程如下:首先由抄表人員使用抄表客戶端程序向數(shù)據(jù)集中器以HTTP協(xié)議的形式發(fā)送抄表請(qǐng)求,該請(qǐng)求通過因特網(wǎng)到達(dá)數(shù)據(jù)集中器后,會(huì)首先被一個(gè)嵌入式Web服務(wù)器進(jìn)行處理。嵌入式Web服務(wù)器將返回一個(gè)HTML文件給客戶端,要求用戶輸入命令類型(例如,是抄數(shù)據(jù)還是執(zhí)行相關(guān)控制操作)、電表編號(hào)以及附加數(shù)據(jù)。當(dāng)用戶填完表單后,這些數(shù)據(jù)將依照HTTPPOST協(xié)議發(fā)送給數(shù)據(jù)集中器中的嵌入式Web服務(wù)器。隨后,相關(guān)的命令和數(shù)據(jù)參數(shù)抽取出來,送給數(shù)據(jù)集中器的控制模塊??刂颇K將對(duì)命令參數(shù)進(jìn)行判斷和安全性檢查,然后生成相應(yīng)的命令元組,以便控制和讀取數(shù)據(jù)。電表通信模塊完成與電表之間的通信任務(wù),負(fù)責(zé)將命令元組發(fā)送給電表,并讀取執(zhí)行結(jié)果。當(dāng)執(zhí)行抄表操作時(shí),數(shù)據(jù)將被電表通信模塊以數(shù)據(jù)元組的方式返回給控制模塊,然后按照固定格式被組裝為一個(gè)字符串,并交給嵌入式Web服務(wù)器。嵌入式Web服務(wù)器將這些數(shù)據(jù)插入到預(yù)先設(shè)計(jì)好的HTML文件模板中,隨后將其通過因特網(wǎng)返回給客戶端的抄表程序。
硬件設(shè)計(jì)
從圖1中可以看出,數(shù)據(jù)集中器是系統(tǒng)中的關(guān)鍵部分,一方面它需要按照《DL/T64521997:多功能電能表通信規(guī)約》通過RS485總線從電表處采集數(shù)據(jù),并執(zhí)行各種控制任務(wù);另一方面它必須能夠解釋以HTTP形式發(fā)送過來的控制命令,并將執(zhí)行結(jié)果以HTML文件的形式返回給抄表客戶端。
本文在進(jìn)行硬件設(shè)計(jì)的時(shí)候采用了基于IP核的設(shè)計(jì)方法,并將數(shù)據(jù)集中器的大部分功能在單個(gè)FPGA芯片上予以實(shí)現(xiàn)。設(shè)計(jì)電路原理圖之前,必須根據(jù)系統(tǒng)需求選擇合適的IP核。所謂IP核,是指那些以硬件形式(硅片版圖)或者軟件形式(用Verilog、VHDL描述的RTL或者門級(jí)模型)存在的、具有特定功能的硬件電路。IP核通常分為硬核、固核與軟核三種。根據(jù)系統(tǒng)的硬件開發(fā)環(huán)境以及性能需求,本文選擇了Altera公司開發(fā)的一系列軟核產(chǎn)品,它們是用Verilog語(yǔ)言所描述的硬件模塊,允許用戶根據(jù)需要對(duì)各種參數(shù)進(jìn)行配置,如數(shù)據(jù)通路帶寬、優(yōu)先進(jìn)行速度優(yōu)化還是資源優(yōu)化等,因而應(yīng)用非常靈活。系統(tǒng)所用到的軟IP核產(chǎn)品有Nios CPU、ROM、RAM、定時(shí)器、通用異步收發(fā)器UART,以及用于外部功能擴(kuò)展的Avalon總線模塊,并將Nios CPU配置為32位字長(zhǎng)模式,擁有256個(gè)通用寄存器,工作頻率33MHz;UART配置為14400bPs的波特率,8位數(shù)據(jù)位,2位停止位,無奇偶校驗(yàn)。在確定了IP核并進(jìn)行相應(yīng)設(shè)置后,需要設(shè)計(jì)系統(tǒng)的電路原理圖。圖2表示了由各個(gè)IP模塊組成的數(shù)據(jù)集中器內(nèi)部硬件結(jié)構(gòu),其中的ROM用于存放用戶程序,RAM作為程序運(yùn)行時(shí)的存儲(chǔ)空間,定時(shí)器為實(shí)時(shí)操作系統(tǒng)提供時(shí)鐘中斷功能,外部總線接口和UART負(fù)責(zé)與系統(tǒng)外部進(jìn)行通信。它們將通過一條內(nèi)部總線與Nios CPU相連,這樣就構(gòu)成了一個(gè)完整的嵌入式硬件系統(tǒng)。設(shè)計(jì)電路圖后的下一步工作是選擇合適的實(shí)現(xiàn)載體?;贗P核的設(shè)計(jì)方法通常使用FPGA芯片或者直接在硅片上實(shí)現(xiàn)。本文采用的是Altera公司APEX20KE系列FPGA芯片,能提供8000個(gè)左右的邏輯塊資源和多達(dá)400Kb左右的ROM和RAM存儲(chǔ)空間。由于FPGA芯片具有可反復(fù)更改的特性,因此有助于硬件系統(tǒng)的改進(jìn)和不斷升級(jí)。另外,通過對(duì)通信接口進(jìn)行重構(gòu),例如將UART改為CAN總線控制器,可以使系統(tǒng)能與更多的硬件環(huán)境兼容。本文引用地址:http://m.butianyuan.cn/article/192114.htm
圖2 數(shù)據(jù)集中器的硬件結(jié)構(gòu)
由于在FPGA芯片上構(gòu)造電平轉(zhuǎn)換電路和以太網(wǎng)物理層、MAC層電路較困難,本文將這些功能放到了FPGA芯片的外面,并分別使用MAX485和LAN91C111芯片來實(shí)現(xiàn)電平轉(zhuǎn)換和以太網(wǎng)硬件接口功能。FPGA芯片內(nèi)的UART模塊和MAX485芯片共同完成與電表的數(shù)據(jù)通信任務(wù),前者負(fù)責(zé)接收和發(fā)送數(shù)據(jù),后者完成信號(hào)電平的轉(zhuǎn)換。SMSC公司的LAN91C111是為了方便嵌入式應(yīng)用系統(tǒng)連接到快速以太網(wǎng)而專門設(shè)計(jì)的,它實(shí)現(xiàn)了CSMA/CD協(xié)議的物理層和媒體訪問控制層(MAC)兩個(gè)部分,并可以很方便地與許多嵌入式處理器進(jìn)行數(shù)據(jù)交換。
p2p機(jī)相關(guān)文章:p2p原理
評(píng)論