自動(dòng)抄表系統(tǒng)的Web實(shí)現(xiàn)
引言
自動(dòng)抄表簡(jiǎn)稱amr(automatic meter reading),是指采用通信、計(jì)算機(jī)等技術(shù),通過(guò)專(zhuān)用設(shè)備對(duì)各種儀表(如水表、電表、氣表等)的數(shù)據(jù)進(jìn)行自動(dòng)采集和處理的系統(tǒng)。它一般是通過(guò)數(shù)據(jù)采集器讀取表計(jì)的讀數(shù),然后通過(guò)傳輸控制器將數(shù)據(jù)傳至管理中心,對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)、顯示、打印。自動(dòng)抄表在上世紀(jì)80年代誕生于美國(guó),并隨著計(jì)算機(jī)、通信、網(wǎng)絡(luò)技術(shù)的發(fā)展而得到了迅猛的發(fā)展。iec的tc13和tc57兩大標(biāo)準(zhǔn)化組織在其標(biāo)準(zhǔn)體系中都為amr系統(tǒng)制定了相關(guān)的標(biāo)準(zhǔn)。各種形式的amr系統(tǒng),各種新的amr技術(shù)不斷推陳出新,推動(dòng)著整個(gè)自動(dòng)抄表技術(shù)行業(yè)的發(fā)展,本文介紹的就是一種新穎的基于web的自動(dòng)抄表系統(tǒng)設(shè)計(jì)。
2 硬件系統(tǒng)設(shè)計(jì)
由于以太網(wǎng)的種種特點(diǎn),采用以太網(wǎng)作為傳輸媒介的抄表系統(tǒng)具有相當(dāng)?shù)膬?yōu)勢(shì):首先是不需要鋪設(shè)專(zhuān)用的通信線路,而利用現(xiàn)成的internet網(wǎng);其次是網(wǎng)絡(luò)有足夠快的速度,對(duì)抄表系統(tǒng)速度己經(jīng)足夠;以太網(wǎng)能傳播的不僅僅是數(shù)據(jù)信號(hào),還有音頻、圖像等多媒體信息;采用的協(xié)議是現(xiàn)成而公開(kāi)的,任何一種web瀏覽器都可以照讀不誤,方便管理者隨時(shí)隨地查詢儀表信息;信息直接反映在色彩豐富的網(wǎng)頁(yè)上,形式可以是數(shù)據(jù)、文字、圖像、表格或語(yǔ)音,實(shí)時(shí)數(shù)據(jù)會(huì)自動(dòng)更新,對(duì)儀表的操作會(huì)有及時(shí)可見(jiàn)的反饋。系統(tǒng)原理框圖如圖1所示。系統(tǒng)中,我們采用以太網(wǎng)作為系統(tǒng)通訊的主要載體,前端機(jī)與上位機(jī)是系統(tǒng)的主要工作單元。前端機(jī)集儀表數(shù)據(jù)采集器及傳輸控制器的功能于一身。存本遠(yuǎn)釋抄表系統(tǒng)的硬件設(shè)計(jì)中.最重要的部分就是中央處理器s3c2410。
圖1 系統(tǒng)原理框圖
本系統(tǒng)設(shè)計(jì)包含4mb(可擴(kuò)展為16mb)flash存儲(chǔ)器,內(nèi)部存放啟動(dòng)代碼(bootloader)、linux內(nèi)核映象和ramdisk壓縮映像,剩余的存儲(chǔ)空間可存放用戶程序或其它用戶存儲(chǔ)資料,還可升級(jí)操作系統(tǒng),且用戶存儲(chǔ)資料斷電也不會(huì)丟失。flash存儲(chǔ)器的數(shù)據(jù)寬度為32位,映射到s3c2410的rom bank0,地址從0x0-0x400000。
s3c2410啟動(dòng)代碼可以存儲(chǔ)在外部的nand閃存。為了支持nand閃存bootloader,s3c2410設(shè)置了一個(gè)sdram緩沖器叫做“steppingstone”。啟動(dòng)時(shí),nand閃存最前端的4kb啟動(dòng)代碼加載到“steppingstone”中并且被執(zhí)行。一般來(lái)講,啟動(dòng)代碼會(huì)復(fù)制nand閃存中的內(nèi)容到sdram中。利用硬件糾錯(cuò)碼,hand閃存中數(shù)據(jù)的有效性會(huì)得到驗(yàn)證。完成復(fù)制后,主程序會(huì)在sdarm中被執(zhí)行。nand閃存控制如圖2所示。
圖2 nand閃存控制圖
2.2 s3c2410的usb接口設(shè)計(jì)
在抄表系統(tǒng)中,圖像數(shù)據(jù)的采集與傳輸是系統(tǒng)的功能重要組成部分。圖像數(shù)據(jù)的采集通過(guò)s3c2410 usb host接口完成,采集的數(shù)據(jù)使用網(wǎng)絡(luò)接口通過(guò)internet傳回控制中心上位機(jī)。s3c2410集成的usb接口模塊中含有2個(gè)usb host接口,1個(gè)usb device接口。usb device接口可以工作在中斷模式或dma模式,兼容usb1.1協(xié)議,可以在高速〔12mbps〕和低速(1.5mbps)下工作。接口電路如圖3所示。
圖3 usb接口電路
2.3 以太網(wǎng)接口設(shè)計(jì)
s3c2410沒(méi)有集成以太網(wǎng)控制器,系統(tǒng)采用外接一種單芯片的以太網(wǎng)控制器cs8900a實(shí)現(xiàn)以太網(wǎng)接口。cs8900a主要結(jié)構(gòu)包括,16位isa總線接口、802.3 mac引擎、內(nèi)部緩沖存儲(chǔ)器、串行eeprom接口并支持10base-t與aui(連接單元接口)以太網(wǎng)端口。
cs8900a支持的串行eeprom可以用于保存cs8900a的配置信息和系統(tǒng)的以太網(wǎng)地址,但這個(gè)eeprom是可選的,因?yàn)樘幚砥骺梢詫⑦@些數(shù)據(jù)保存到系統(tǒng)的其他地方。
cs8900a通過(guò)一個(gè)隔離變壓器連接到rj45端口上。cs8900a可以直接驅(qū)動(dòng)led,用以指示以太網(wǎng)的鏈路狀態(tài)及總線與網(wǎng)絡(luò)的活動(dòng)情況。
cs8900a需要外接20m的晶體提供時(shí)序,在正常操作下,cs8900a完成兩個(gè)基本功能即:以太網(wǎng)包的發(fā)送和接收,在發(fā)送和接收前必須配置好cs8900a。上電復(fù)位后,cs8900a要為收發(fā)包進(jìn)行配置,各種各樣的參數(shù)要寫(xiě)入內(nèi)部的配置和控制寄存器,如:存儲(chǔ)器基地址,以太網(wǎng)物理地址,接收的幀類(lèi)型,使用何種媒體接口等。配置信息既可以通過(guò)isa總線由主機(jī)配置也可以由外部eeprom自動(dòng)配置,配置完畢后,操作可以進(jìn)行了。
cs8900a與s3c2410按照16位方式連接,網(wǎng)卡芯片復(fù)位后默認(rèn)工作方式為i/o連接,基址是300h。
3 軟件系統(tǒng)設(shè)計(jì)
通過(guò)對(duì)抄表應(yīng)用的考察,可以看出本抄表系統(tǒng)應(yīng)用比較單一。前端機(jī)只是讀取攝像頭圖像數(shù)據(jù),然后發(fā)回上位機(jī)。因而要求操作系統(tǒng)要能裁減,并且能支持tcp/ip協(xié)議,應(yīng)能加載usb驅(qū)動(dòng)程序,此外還要考慮的以后的系統(tǒng)擴(kuò)展,而帶來(lái)的軟件升級(jí)問(wèn)題。綜合考慮,本系統(tǒng)選擇linux系統(tǒng)。linux系統(tǒng)主要包括三層結(jié)構(gòu),如圖4所示。
圖4 軟件系統(tǒng)框圖
軟件部分設(shè)計(jì)主要包括:linux操作系統(tǒng)的移植;嵌入式linux系統(tǒng)下功能模塊的驅(qū)動(dòng);linux下的視頻采集和圖像數(shù)據(jù)傳輸?shù)人牟糠纸M成。
linux對(duì)于視頻采集設(shè)備的支持是通過(guò)video4linux實(shí)現(xiàn)的。vdeo4linux是為各種電視卡、并口、usb接口的音視頻采集設(shè)備提供統(tǒng)一的編程接口。對(duì)于usb口攝像頭,驅(qū)動(dòng)程序提供了基本的i/o操作(包括:open, read, write, close)、中斷的處理、內(nèi)存映射功能以及對(duì)i/o通道的控制(通過(guò)接口函數(shù)ioctl實(shí)現(xiàn))等,并把它們定義在struct file operations中。這樣當(dāng)應(yīng)用程序?qū)υO(shè)備文件進(jìn)行諸如open, close, read, write等系統(tǒng)調(diào)用操作時(shí),linux內(nèi)核將通過(guò)file operations結(jié)構(gòu)訪問(wèn)驅(qū)動(dòng)程序提供的函數(shù)。在系統(tǒng)平臺(tái)上對(duì)usb口數(shù)碼攝像頭驅(qū)動(dòng),首先把usb控制器驅(qū)動(dòng)模塊靜態(tài)編譯進(jìn)內(nèi)核,使平臺(tái)中支持usb接口,再在需要使用攝像頭采集時(shí),使用insmode動(dòng)態(tài)加載其驅(qū)動(dòng)模塊,這樣攝像頭就可正常工作了。linux下與video4linux相關(guān)設(shè)備及用途如表附所示。
附表 video4linux相關(guān)設(shè)備及用途
4 電表讀數(shù)的識(shí)別
本系統(tǒng)中,從前端機(jī)抄回的是電表讀數(shù)的圖片,并不是電表的真實(shí)讀數(shù),為此,需要一種圖像識(shí)別算法,能夠根據(jù)圖片識(shí)別出電表的讀數(shù)。
電表讀數(shù)識(shí)別的基本原理是將輸入文字與各個(gè)標(biāo)準(zhǔn)文字進(jìn)行模式匹配,計(jì)算類(lèi)似度(或距離),將具有最大類(lèi)似度(或最小距離)的標(biāo)準(zhǔn)文字作為識(shí)別結(jié)果。模式匹配是將兩個(gè)模式的所有對(duì)應(yīng)元素進(jìn)行比較的操作,相同的模式會(huì)得到完全一致的比較結(jié)果,不同的模式將得不到完全一致的比較結(jié)果,這個(gè)基本原理對(duì)文字中的變形是很苛刻的,圖5所示為包含預(yù)處理和特征抽取的文字識(shí)別流程。
圖5 文字識(shí)別的基本流程
5 結(jié)束語(yǔ)
本文提出的基于web的嵌入式抄表系統(tǒng),與傳統(tǒng)的抄表技術(shù)相比有以下特點(diǎn):采用圖像抄表,數(shù)據(jù)準(zhǔn)確,不會(huì)出現(xiàn)用戶端和管理中心數(shù)據(jù)不一致的問(wèn)題;本系統(tǒng)安裝簡(jiǎn)單,后期成本低。由于本文設(shè)計(jì)的amr系統(tǒng)采用攝像頭采集數(shù)據(jù),通過(guò)現(xiàn)成的互聯(lián)網(wǎng)傳輸數(shù)據(jù),安裝工作就是把攝像頭對(duì)準(zhǔn)電表,然后聯(lián)到前端機(jī)上,前端機(jī)插上網(wǎng)線和電源。管理中心通過(guò)普通的ie瀏覽器即可完成抄表的工作。以后的使用不必交納任何費(fèi)用。本系統(tǒng)后期維護(hù)成本較低,由于互聯(lián)網(wǎng)穩(wěn)定性很強(qiáng),前端機(jī)和攝像頭平時(shí)是很少工作,因此,本文提出的抄表系統(tǒng)幾乎不會(huì)出現(xiàn)任何故障。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。
你可能感興趣的文章