基于井蓋安全系統(tǒng)的WSN網(wǎng)關(guān)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
道路上的井蓋遍及城市各地,由于人為偷盜或者長(zhǎng)期磨損導(dǎo)致井蓋丟失、塌陷,對(duì)過(guò)往車輛和行人造成危險(xiǎn)。針對(duì)井蓋監(jiān)控手段欠缺,目前以人防、物防為主,急需設(shè)計(jì)一種技術(shù)防范的安全監(jiān)管系統(tǒng)。近幾年隨著無(wú)線傳感網(wǎng)絡(luò)的發(fā)展,利用無(wú)線傳感網(wǎng)絡(luò)設(shè)計(jì)安防領(lǐng)域已成為熱點(diǎn)。由于井蓋之間距離較近,結(jié)合ZigBee短距離通信技術(shù),設(shè)計(jì)一種基于井蓋安全監(jiān)控系統(tǒng)的嵌入式網(wǎng)關(guān),網(wǎng)關(guān)接收來(lái)自無(wú)線傳感網(wǎng)絡(luò)協(xié)調(diào)器的數(shù)據(jù),處理、存儲(chǔ)后通過(guò)GPRS網(wǎng)絡(luò)傳輸?shù)焦簿W(wǎng)絡(luò)中。
1井蓋監(jiān)控系統(tǒng)的工作原理
本文的井蓋監(jiān)控系統(tǒng)的工作原理圖如圖1所示,其系統(tǒng)組成為包含井蓋報(bào)警器的ZigBee網(wǎng)絡(luò)、嵌入式網(wǎng)關(guān)、GPRS短信模塊、Web服務(wù)器。井蓋報(bào)警器之間采用ZigBee無(wú)線通信技術(shù),每個(gè)報(bào)警器作為ZigBee網(wǎng)絡(luò)中的節(jié)點(diǎn),通過(guò)固定的組網(wǎng)方式形成無(wú)線傳感網(wǎng)絡(luò)。報(bào)警器以接力的方式將數(shù)據(jù)傳到ZigBee網(wǎng)絡(luò)的協(xié)調(diào)器節(jié)點(diǎn),協(xié)調(diào)器節(jié)點(diǎn)負(fù)責(zé)接收所有網(wǎng)絡(luò)中的報(bào)警器節(jié)點(diǎn)信息。嵌入式網(wǎng)關(guān)通過(guò)串口1獲得ZigBee無(wú)線傳感網(wǎng)絡(luò)中的報(bào)警器數(shù)據(jù),將數(shù)據(jù)通過(guò)數(shù)據(jù)庫(kù)存儲(chǔ)并處理,將必須的信號(hào)發(fā)送給GPRS模塊,GPRS電路將其轉(zhuǎn)發(fā)到具有固定IP地址的Web數(shù)據(jù)庫(kù)服務(wù)器中,實(shí)現(xiàn)報(bào)警數(shù)據(jù)的上傳。市政設(shè)施管理處以及自來(lái)水廠等政府機(jī)構(gòu)可以通過(guò)網(wǎng)絡(luò)查詢自己?jiǎn)挝坏木w狀態(tài),是否需要維護(hù),并記錄,同時(shí)發(fā)送短信給檢修人員,實(shí)現(xiàn)及時(shí)維修和處理。
圖1井蓋監(jiān)控系統(tǒng)工作原理
2系統(tǒng)網(wǎng)關(guān)的硬件設(shè)計(jì)
本系統(tǒng)的網(wǎng)關(guān)硬件組成框圖如圖2所示,該網(wǎng)關(guān)包含三星公司的微處理器S3C6410、存儲(chǔ)模塊、JTAG接口、LCD顯示接口、GPRS模塊等。
2.1處理器
系統(tǒng)采用三星公司的S3C6410微處理器作為網(wǎng)關(guān)硬件電路,S3C6410采用ARM11的內(nèi)核架構(gòu),采用8級(jí)流水線與數(shù)據(jù)地址總線分離的哈佛結(jié)構(gòu)[4-5]。包含多種硬件外設(shè),支持NOR-FLASH,NAND-FLASH,OneNAND,CF,ROM等多種存儲(chǔ)器端口,增加的流水線設(shè)計(jì)提高了時(shí)鐘頻率和并行處理能力。是一種高性能的32位RISC處理器,可以穩(wěn)定運(yùn)行在667MHz主頻以上。主要應(yīng)用于嵌入式設(shè)備、消費(fèi)類電子、工業(yè)控制、車載導(dǎo)航、行業(yè)PDA等電子產(chǎn)品。
2.2存儲(chǔ)模塊
網(wǎng)關(guān)的數(shù)據(jù)都放在存儲(chǔ)模塊中,S3C6410的平臺(tái)包含NANDFLASH,NORFLASH和SD卡三種。NANDFLASH采用三星公司的K9F1G08U0型號(hào),大小為128MB,存放bootloader,啟動(dòng)參數(shù)、內(nèi)核、根文件等,網(wǎng)關(guān)設(shè)計(jì)采用從NANDFLASH啟動(dòng),選擇德國(guó)DENX軟件中心開(kāi)發(fā)的U-Boot作為bootloader進(jìn)行引導(dǎo)。NORFLASH采用低電壓供電且具有低功耗模式的S29AL08D芯片,大小為8MB,3V供電。S3C6410提供SD卡接口,可以外接SD卡,支持從SD卡啟動(dòng)。
JTAG接口
S3C6410可使用簡(jiǎn)易JTAG電路對(duì)FLASH進(jìn)行在線編程,通過(guò)標(biāo)準(zhǔn)20針接口同宿主機(jī)相連接,實(shí)現(xiàn)FLASH的擦除和編程。
GPRS模塊
GPRS模塊采用SIMCOM公司的SIM900A,工作頻段支持EGSM900MHz和DCS1800MHz,可以使用包含CS-4等多種編碼格式,內(nèi)置TCP/IP協(xié)議,采用SPI接口,同微處理器S3C6410的串口0相連。
LCD顯示接口
LCD選用7寸真彩色寬屏AT070TN92,外帶7寸電阻觸摸屏,分辨率800X480,支持LVDS接口。
3網(wǎng)關(guān)平臺(tái)的搭建
S3C6410微處理器采用移植性較強(qiáng)的Linux操作系統(tǒng),能夠固化在容量小的嵌入式設(shè)備,系統(tǒng)內(nèi)核選用2.6.38.8,搭建網(wǎng)關(guān)開(kāi)發(fā)平臺(tái)主要包含三個(gè)部分:引導(dǎo)程序、內(nèi)核、系統(tǒng)文件[6-7]。編譯環(huán)境選擇交叉編譯,選擇VMware虛擬機(jī),交叉編譯器選用arm-linux-gcc-3.41,實(shí)現(xiàn)在Windows操作系統(tǒng)下編譯嵌入式Linux系統(tǒng)執(zhí)行的文件。
引導(dǎo)程序主要負(fù)責(zé)加載操作系統(tǒng),實(shí)現(xiàn)硬件的初始化,建立設(shè)備的內(nèi)存映射表。加載方式采用將BootLoader搬移到SDRAM中進(jìn)行執(zhí)行,比直接在FLASH中運(yùn)行速率快。采用開(kāi)源的U-boot作為BootLoader,針對(duì)S3C6410硬件修改體系結(jié)構(gòu)相應(yīng)代碼實(shí)現(xiàn)移植。
內(nèi)核部分主要針對(duì)需要進(jìn)行內(nèi)核裁剪和添加,獲取標(biāo)準(zhǔn)的Linux內(nèi)核2.6.38.8版本,配置Kconfig文件,產(chǎn)生.config文件,通過(guò)編譯內(nèi)核生成內(nèi)核鏡像文件zlmage。將GPRS模塊驅(qū)動(dòng)和LCD驅(qū)動(dòng)編譯生成動(dòng)態(tài)文件,采用insmod方式加載到內(nèi)核。
系統(tǒng)文件主要制作Linux系統(tǒng)的根文件系統(tǒng),Linux所有設(shè)備都是以文件形式存在,選擇常用的cramfs文件系統(tǒng),啟動(dòng)內(nèi)核需要根文件系統(tǒng)來(lái)掛載。下載Busybox工具進(jìn)行配置,利用mkcramfs制作文件系統(tǒng)的鏡像。
4網(wǎng)關(guān)的軟件設(shè)計(jì)
井蓋監(jiān)控系統(tǒng)的網(wǎng)關(guān)設(shè)計(jì)軟件工作流程如圖3所示,包含三個(gè)處理事件:串口、數(shù)據(jù)庫(kù)和QT界面設(shè)置。
串口處理需要通過(guò)啟動(dòng)進(jìn)程實(shí)現(xiàn),本系統(tǒng)需要接收Z(yǔ)igBee網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù),網(wǎng)關(guān)和ZigBee網(wǎng)絡(luò)的協(xié)調(diào)器通過(guò)串口1連接,網(wǎng)關(guān)啟動(dòng)一個(gè)進(jìn)程接收Z(yǔ)igBee網(wǎng)絡(luò)的節(jié)點(diǎn)數(shù)據(jù),包括節(jié)點(diǎn)地址和采集的傳感器參數(shù)。當(dāng)有數(shù)據(jù)傳輸過(guò)來(lái)時(shí),按照節(jié)點(diǎn)ID將數(shù)據(jù)存儲(chǔ)在SQlite3數(shù)據(jù)庫(kù)中。
數(shù)據(jù)庫(kù)采用SQlite3的小型嵌入式數(shù)據(jù)庫(kù),占用250KB空間大小,支持?jǐn)?shù)據(jù)庫(kù)達(dá)到2TB。網(wǎng)關(guān)啟動(dòng)后在相應(yīng)路徑建立數(shù)據(jù)庫(kù),同時(shí)建立數(shù)據(jù)庫(kù)表項(xiàng),包含節(jié)點(diǎn)ID和節(jié)點(diǎn)地址以及傳感器采集的井蓋狀態(tài)信息等。
應(yīng)用程序界面采用QTCreater設(shè)計(jì),基于C++進(jìn)行開(kāi)發(fā)的應(yīng)用程序框架。設(shè)計(jì)良好的UI界面,通過(guò)按鍵的觸發(fā)調(diào)用數(shù)據(jù)庫(kù)和串口提供的API接口函數(shù),顯示出各個(gè)井蓋模塊的安全狀態(tài)。后臺(tái)運(yùn)行串口服務(wù)程序和數(shù)據(jù)庫(kù),QT通過(guò)動(dòng)態(tài)庫(kù)的方式調(diào)用相關(guān)數(shù)據(jù)。
圖3網(wǎng)關(guān)工作流程圖
5實(shí)驗(yàn)分析
針對(duì)井蓋分布狀況,進(jìn)行無(wú)障礙距離測(cè)試,實(shí)驗(yàn)以丟包率進(jìn)行測(cè)試。每隔5s從無(wú)線傳感網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送數(shù)據(jù)到網(wǎng)關(guān),網(wǎng)關(guān)收到數(shù)據(jù)后分析并記錄。測(cè)試范圍在130m以內(nèi),10m為間隔,在每個(gè)距離點(diǎn)上發(fā)送300組數(shù)據(jù),實(shí)驗(yàn)結(jié)果如圖4所示。實(shí)驗(yàn)結(jié)果表明,節(jié)點(diǎn)距離在60m范圍內(nèi)丟包率為0,數(shù)據(jù)穩(wěn)定傳輸,合理安置井蓋節(jié)點(diǎn)報(bào)警器可以滿足系統(tǒng)的應(yīng)用要求。
6結(jié)語(yǔ)
系統(tǒng)采用低功耗ARM11的S3C6410的處理器設(shè)計(jì)井蓋安全報(bào)警系統(tǒng),結(jié)合ZigBee無(wú)線傳感網(wǎng)絡(luò)布控井蓋報(bào)警器,通過(guò)GPRS網(wǎng)絡(luò)將數(shù)據(jù)傳送給遠(yuǎn)程監(jiān)控系統(tǒng),達(dá)到實(shí)時(shí)監(jiān)控的效果。該網(wǎng)關(guān)可擴(kuò)展接口較豐富,將井蓋安全狀態(tài)信息通過(guò)串口接收,發(fā)送控制命令給無(wú)線傳感網(wǎng)絡(luò)的協(xié)調(diào)器?;赒T開(kāi)發(fā)了友好的應(yīng)用界面,可以實(shí)時(shí)查詢井蓋狀態(tài),并對(duì)歷史數(shù)據(jù)進(jìn)行存儲(chǔ)。該網(wǎng)關(guān)功能豐富,可擴(kuò)展性較強(qiáng),具有低功耗、高通信效率的特點(diǎn),可廣泛應(yīng)用與井蓋安全監(jiān)控領(lǐng)域。
20211119_61972c3870f71__基于井蓋安全系統(tǒng)的WSN網(wǎng)關(guān)設(shè)計(jì)