基于AVR和ZigBee技術(shù)的工業(yè)園區(qū)環(huán)境監(jiān)測系統(tǒng)
點(diǎn)擊:1030
A+ A-
所屬頻道:新聞中心
一、項(xiàng)目概述
1.1 引言
早在上世紀(jì)70年代,就出現(xiàn)了用單片機(jī)控制的將傳統(tǒng)傳感器采用點(diǎn)對點(diǎn)傳輸,連接控制器而構(gòu)成傳感器網(wǎng)絡(luò)的雛形。隨著科學(xué)技術(shù)的不斷發(fā)展和進(jìn)步,傳感器網(wǎng)絡(luò)同時(shí)還具有了獲取多種信號的綜合能力,并通過與傳感控制器的連接,組成了有信息綜合處理能力的傳感網(wǎng)絡(luò);從上世紀(jì)末開始,現(xiàn)場總線技術(shù)開始應(yīng)用到傳感器網(wǎng)絡(luò),人們用其組建智能化傳感器網(wǎng)絡(luò),大量多功能傳感器被運(yùn)用于無線技術(shù)連接,無線傳感器網(wǎng)絡(luò)逐漸形成,因?yàn)闊o線技術(shù)低能,低耗的特點(diǎn),并得到迅速發(fā)展。
現(xiàn)今基于單片機(jī)技術(shù)的傳感器的設(shè)計(jì)和無線傳感器網(wǎng)絡(luò)作為一種全新的信息獲取平臺,能夠?qū)崟r(shí)監(jiān)測和采集網(wǎng)絡(luò)分布區(qū)域內(nèi)的各種檢測對象的信息,并將這些信息發(fā)送到網(wǎng)關(guān)節(jié)點(diǎn),以實(shí)現(xiàn)復(fù)雜的指定范圍內(nèi)目標(biāo)檢測與跟蹤,具有快速展開、抗毀性強(qiáng)等特點(diǎn),具有廣闊的應(yīng)用前景,其發(fā)展和應(yīng)用,將會給人類的生活和生產(chǎn)的各個(gè)領(lǐng)域帶來深遠(yuǎn)影響。美國的《技術(shù)評論》雜志在論述未來新興十大技術(shù)時(shí),更是將無線傳感網(wǎng)絡(luò)列為第一項(xiàng)未來新興技術(shù),探索其在應(yīng)用領(lǐng)域的實(shí)用性尤其重要。
1.2 項(xiàng)目背景/選題動機(jī)
隨著我國經(jīng)濟(jì)的發(fā)展,工業(yè)園區(qū)的發(fā)展日成規(guī)模,帶動了我國GDP的大幅增加。但是日益加劇的環(huán)境污染與破壞也成了我們目前面臨的首要問題,無論是煤化工業(yè)園區(qū)、鋼鐵工業(yè)園區(qū)、蔬菜工業(yè)園區(qū)、還是一些核工業(yè)園區(qū),一些環(huán)境因素諸如二氧化硫濃度,一氧化碳濃度、溫度、濕度、二氧化碳濃度等對產(chǎn)品以及人們的生活和工作環(huán)境都有著至關(guān)重要的影響。因此做好這些環(huán)境因素的檢測工作是對產(chǎn)品質(zhì)量和員工身體健康的重要保證。
眾所周知,環(huán)境變量的精確監(jiān)測與管理對于提高環(huán)境控制精度、節(jié)約能源及促進(jìn)生產(chǎn)等有著重要的作用。目前我國工業(yè)園區(qū)環(huán)境監(jiān)測系統(tǒng)缺乏,即便是有,往往采用一些生物檢測法,布線檢測法等,嚴(yán)重浪費(fèi)能源。在應(yīng)用方面,缺乏有效的監(jiān)測管理機(jī)制,還未將檢測、報(bào)警、預(yù)處理有機(jī)地結(jié)合起來;工業(yè)園區(qū)不同位置的各項(xiàng)參數(shù)值往往是不均勻的,所以需要采集多個(gè)不同點(diǎn)的溫度值進(jìn)行綜合評判,而目前大多數(shù)工業(yè)園區(qū)的環(huán)境監(jiān)測系統(tǒng)不能有效地覆蓋整個(gè)工業(yè)園區(qū),難以實(shí)現(xiàn)各個(gè)參數(shù)的統(tǒng)一性。同時(shí),多數(shù)工業(yè)園區(qū)的數(shù)據(jù)采集采用人工和有線布網(wǎng)方式,前者消耗大量人力,且采集的信息缺乏一定的實(shí)時(shí)性;后者雖然比較成熟,但線路布置易受環(huán)境影響,安裝程序復(fù)雜,維修、更新的費(fèi)用和難度都較大,這給廣大工廠帶來一定的不便。
基于以上需求,我們將無線傳感網(wǎng)絡(luò)應(yīng)用于環(huán)境監(jiān)測,通過探索搭建一個(gè)穩(wěn)定的傳感器網(wǎng)絡(luò),在此基礎(chǔ)上研發(fā)一種體積小、覆蓋面廣、功能多樣化、便捷穩(wěn)定的工業(yè)園區(qū)實(shí)時(shí)監(jiān)測系統(tǒng)。尤其對于一些危險(xiǎn)的生產(chǎn)車間我們可以采用無人操作模式,只要把傳感器平臺置于生產(chǎn)車間,采用無線收發(fā)數(shù)據(jù)模式就可以進(jìn)行環(huán)境監(jiān)測,使它易于操作,便于管理,可直接監(jiān)測工業(yè)園區(qū)中各項(xiàng)環(huán)境因素的指標(biāo),進(jìn)而解決環(huán)境監(jiān)測成本高、監(jiān)測難的問題。
本項(xiàng)目是將Atmel AVR單片機(jī)和無線傳感網(wǎng)絡(luò)投入具體領(lǐng)域的實(shí)用性研究。近年來興起的ZigBee無線傳輸技術(shù)具有低能耗、較遠(yuǎn)傳輸距離、組網(wǎng)簡單、抗毀性強(qiáng)等優(yōu)點(diǎn),因而得到廣泛地推廣和應(yīng)用。其與Atmel AVR單片機(jī)的結(jié)合,必將增加該領(lǐng)域的又一解決方案,為環(huán)境監(jiān)測和保護(hù)做出巨大貢獻(xiàn)。同時(shí)也激勵我們進(jìn)一步探索基于ATMEL最新MCU及Xmega和UC3系列產(chǎn)品的創(chuàng)新設(shè)計(jì),爭做21世紀(jì)有用的創(chuàng)新人才。
二、需求分析
2.1 功能要求
本系統(tǒng)在大范圍環(huán)境監(jiān)測的基礎(chǔ)上,以無線傳感網(wǎng)絡(luò)為研究平臺,主要進(jìn)行工業(yè)園區(qū)或生產(chǎn)車間內(nèi)的環(huán)境數(shù)據(jù)的有效采集和傳輸。各采集節(jié)點(diǎn)分布于所需檢測的環(huán)境中,采用Atmel AVR單片機(jī)控制各個(gè)傳感器,節(jié)點(diǎn)之間由ZigBee協(xié)議搭建無線局域網(wǎng),將數(shù)據(jù)傳送到控制中心,以實(shí)現(xiàn)環(huán)境的無線實(shí)時(shí)檢測。下面為系統(tǒng)的整體架構(gòu)圖:
圖1 系統(tǒng)架構(gòu)
2.2 性能要求
本系統(tǒng)分為兩部分,由上層控制中心和下層傳感節(jié)點(diǎn)組成。生產(chǎn)管理人員可以通過監(jiān)控中心的上位機(jī)讀取當(dāng)前的環(huán)境參量,對當(dāng)前的車間環(huán)境進(jìn)行管理;同時(shí)還可以使用自定義的中斷查詢機(jī)制,通過向網(wǎng)絡(luò)發(fā)送讀取請求,使網(wǎng)絡(luò)中的節(jié)點(diǎn)響應(yīng)中斷,上傳當(dāng)前檢測值。當(dāng)然,根據(jù)需要,節(jié)點(diǎn)本身也可以采用LCD即時(shí)顯示采集結(jié)果。眾多傳感節(jié)點(diǎn)共同組成無線傳感網(wǎng)絡(luò),該網(wǎng)絡(luò)具有很好的擴(kuò)展性,可以隨意地增減節(jié)點(diǎn),對網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和組網(wǎng)模式無太大影響,因而可以根據(jù)實(shí)際需要增加或減少監(jiān)控節(jié)點(diǎn)的數(shù)量,以達(dá)到最優(yōu)化監(jiān)測。
三、方案設(shè)計(jì)
3.1 系統(tǒng)功能實(shí)現(xiàn)原理
下面為該系統(tǒng)實(shí)現(xiàn)的硬件功能結(jié)構(gòu)框圖:
圖2 系統(tǒng)硬件結(jié)構(gòu)框圖
3.2 硬件平臺選用及資源配置
在整個(gè)硬件平臺的設(shè)計(jì)中,節(jié)能是一個(gè)重要因素,它決定著傳感器網(wǎng)絡(luò)的壽命。當(dāng)節(jié)點(diǎn)目前沒有傳感任務(wù)并且不需要為其他節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)時(shí),調(diào)節(jié)節(jié)點(diǎn)的無線通信模塊、數(shù)據(jù)采集模塊進(jìn)入休眠狀態(tài)以節(jié)省能耗。同時(shí)為控制子節(jié)點(diǎn)選擇合適的地點(diǎn),提供較充足的能源,以便延長節(jié)點(diǎn)使用壽命,提高監(jiān)測預(yù)警系統(tǒng)的有效性。
3.2.1節(jié)點(diǎn)組成
節(jié)點(diǎn)主要由四部分組成:包括數(shù)采控制單元、微處理單元、無線通信單元、供電單元,見下圖:
圖3 節(jié)點(diǎn)組成圖示
1 、數(shù)采控制單元
數(shù)采控制單元主要負(fù)責(zé)實(shí)現(xiàn)數(shù)據(jù)信息的采集,本系統(tǒng)采用的多數(shù)傳感器集成了單片機(jī)和ADC模塊,可以直接輸出數(shù)字量。
?。?)數(shù)字溫濕度傳感器
數(shù)字式溫濕度傳感器是把溫度和濕度,通過溫、濕度敏感元件和相應(yīng)電子電路轉(zhuǎn)換成易于采集和讀取的數(shù)字信號的傳感器。本項(xiàng)目擬采用SHT10傳感器來完成溫、濕度的采集。SHT10是Sensirion公司推出的新型集成數(shù)字式溫、濕度傳感器。該傳感器采用CMOSens專利技術(shù)生產(chǎn),具有超小體積(表面貼裝)、響應(yīng)速度快、接口簡單、性價(jià)比高等特點(diǎn),且其相對濕度和溫度的測量兼有露點(diǎn)輸出;功耗低,能自動休眠;長期穩(wěn)定性非常出色。適合本項(xiàng)目的開發(fā)。其功能引腳圖如下(圖4)
圖4 SHT10引腳圖
引腳說明及接口電路:
①電源引腳(VDD、GND)
SHT10的供電電壓為2.4V~5.5V。傳感器上電后,它從“休眠”狀態(tài)恢復(fù)過來。在此期
間不發(fā)送任何指令。電源引腳(VDD和GND)之間可增加1個(gè)100nF的電容器,用于去耦濾波。
?、诖薪涌?/span>
SHT10的兩線串行接口(bidirectional 2-wire)在傳感器信號讀取和電源功耗方面都做了優(yōu)化處理,其總線類似I2C總線但并不兼容I2C總線。(圖4中為2、3接口)
?。?)二氧化碳濃度傳感器
①CDM4161簡介
CDM4161是費(fèi)加羅公司生產(chǎn)的一種CO2氣體濃度測試模塊, 其在空氣中對CO2有很高的選擇性,CO2濃度的測量范圍為400~4000 ppm,對一氧化碳和甲烷等氣體不敏感,CDM4161內(nèi)部集成的單片機(jī)可對傳感器采集到的信號處理和自動校準(zhǔn),以使其輸出的電平值與CO2氣體的濃度保持良好的線性關(guān)系.有別于固態(tài)或者液態(tài)電解質(zhì)氣體傳感器,CDM4161是利用半導(dǎo)體材料的各種化學(xué)特性將空氣中含有的特定氣體(即待測氣體)以適當(dāng)?shù)碾娦盘枡z測和定量的器件。其優(yōu)點(diǎn)是靈敏度高、響應(yīng)速度快、體積小、壽命長、便于集成化、智能化,同時(shí)能使檢測轉(zhuǎn)換一體化.因此,項(xiàng)目選用CDM4161來完成對二氧化碳濃度的實(shí)時(shí)采集轉(zhuǎn)換一體化。
圖5
?、贑DM4161的工作原理
CDM4161對外提供5個(gè)引腳(圖5),其引腳的功能描述如表一所示
表一 CDM4161引腳功能表
工作時(shí)CDM4161引腳l接+5 V電源,引腳2輸出電壓范圍0.4~4 V,相當(dāng)于CO2氣體濃度范圍為400~4 000 ppm。隨監(jiān)測到CO2濃度的高低變化,引腳3相應(yīng)輸出高、低電平可以控制外部通風(fēng)設(shè)備。引腳4在傳感器故障時(shí)輸出低電位,可通過該引腳連接蜂鳴器.以及時(shí)監(jiān)測CDM4161工作狀態(tài)。
?。?)二氧化硫濃度傳感器
二氧化硫濃度傳感器采用2SH12二氧化硫半導(dǎo)體傳感器, 2SH12二氧化硫傳感器是高性能的氣體檢測傳感器,可用于對工業(yè)中SO2氣體的檢測。其對二氧化硫氣體有有很好的選擇性,
靈敏度很高,同時(shí)具有良好的重復(fù)性和長期的穩(wěn)定性及抗干擾,適合本系統(tǒng)的開發(fā)需求。
特性參數(shù)
回路電壓:(Vc)5-24V
取樣電阻:(RL)0.5-20KΩ
加熱電壓:(VH)5±0.1V
加熱功率:(P)約750mW
靈敏度:R0(air)/RS(100ppmC2H5OH)>5
響應(yīng)時(shí)間:Tres<10秒
恢復(fù)時(shí)間:Trec<30秒
工作環(huán)境:溫度-10-+50℃、相對濕度0-90%RH.
(4)一氧化碳濃度傳感器
一氧化碳濃度傳感器擬采用CO/CF-1000,其濕度精度最高可達(dá)到±1.8%RH,外殼耐堿耐腐蝕,可用于工業(yè)園區(qū)的一氧化碳濃度檢測。
CO/CF-1000技術(shù)規(guī)格:
測量范圍 :0-1000 ppm(可選200ppm,300 ppm;500 ppm;2000 ppm;4000 ppm)
最大負(fù)荷 :20000 ppm
內(nèi)置過濾器:過濾酸性氣體(可選帶氫氣補(bǔ)償〈2%,過濾SO2和H2S)
工作壽命 :空氣中3年
輸 出 :100±20nA/ppm 4-20mA(一氧化碳檢測模塊)
分辨率 :0.5 ppm
溫度范圍 :20℃ to 45℃
壓力范圍 :大氣壓±10%
響應(yīng)時(shí)間 (T90):< 40 seconds
濕度范圍 :15-90 %RH(非凝結(jié))
零點(diǎn)輸出 (純凈空體,20℃):-1 to +3 ppm
最大零點(diǎn)漂移(20℃-40℃) :10 ppm
長期漂移 :<2% /每月
推薦負(fù)載值 :10Ω
偏置電壓 :無需
線性度輸出:線性
重復(fù)性 : <2%
存儲溫度 :5℃ to 20℃
存儲壽命 :6個(gè)月(容器內(nèi))
重 量:約13克(5.4克,32克可選)
2 微處理單元
微處理器作為整個(gè)節(jié)點(diǎn)的控制核心,要對來自各個(gè)方面的信息作最終的判斷和控制。我們擬采用AVR32 AT32UC3A(圖6),其低功耗的特性和豐富強(qiáng)大的處理能力十分適合本系統(tǒng)的開發(fā)。
圖6 AVR32 AT32UC3A
該AT32UC3A集成了可安全和快速訪問的片上閃存和SRAM存儲器。
外設(shè)直接內(nèi)存訪問控制器(PDCA循環(huán)),無需處理器參與外設(shè)和存儲器間的數(shù)據(jù)傳輸。PDCA大幅降低了處理連續(xù)的大數(shù)據(jù)的開銷和在模塊在微控制器間流都動的時(shí)間。
PowerManager提高了設(shè)計(jì)的靈活性和安全性:芯片上的欠壓檢測器監(jiān)視電源,CPU使用片內(nèi)RC振蕩器或外部振蕩器中之一運(yùn)行時(shí),實(shí)時(shí)時(shí)鐘和與之相關(guān)的計(jì)時(shí)器會跟蹤記錄相關(guān)的時(shí)間。
定時(shí)器/計(jì)數(shù)器:包括三個(gè)相同的16位定時(shí)器/計(jì)數(shù)器通道。每個(gè)通道都可以獨(dú)立編程進(jìn)行頻率測量,事件計(jì)數(shù),間隔測量,脈沖生成,延遲時(shí)間和脈沖寬度調(diào)制。該AT32UC3A還具有多種通信密集型應(yīng)用通訊接口。除了標(biāo)準(zhǔn)的串行接口,如UART,SPI或TWI接口外還有靈活的同步串行控制器接口、USB和以太網(wǎng)MAC接口等可供使用。 同步串行控制器可輕松實(shí)現(xiàn)串行通信協(xié)議和像I2S這樣的音頻標(biāo)準(zhǔn)。得益于以豐富的端點(diǎn)??配置,它的全速USB 2.0接口支持多種USB類,OTG接口允許設(shè)備像USB閃存盤或一個(gè)USB打印機(jī)設(shè)備直接連接到處理器。
AT32UC3A主要特性:
A、高性能,低功耗的AVR ? 32 UC的32位微控制器
B、緊湊型單周期RISC指令集,包括DSP指令集
C、15個(gè)外設(shè)DMA通道加快了與外設(shè)通信的速度
D、內(nèi)部高速閃存 512K字節(jié),256K字節(jié),版本128K字節(jié)
E、單周期存取高達(dá)33兆赫
F、 Prefetch Buffer Optimizing Instruction Execution at Maximum Speed - 優(yōu)化預(yù)取緩沖器在最大速度指令執(zhí)行
G、4ms的頁編程時(shí)間和8ms的全芯片擦除時(shí)間
H、64K字節(jié)(512KB的閃存和256KB),32K字節(jié)(128KB閃存)
I、SDRAM / SRAM Compatible Memory Bus (16-bit Data and 24-bit Address Buses) - 的SDRAM / SRAM的兼容內(nèi)存總線(16位數(shù)據(jù)和24位地址總線)
J、低延遲中斷服務(wù),可編程優(yōu)先級
K、電源和時(shí)鐘管理包括內(nèi)部RC時(shí)鐘和一個(gè)32kHz振蕩器
L、看門狗定時(shí)器,實(shí)時(shí)時(shí)鐘定時(shí)器
M、Flexible End-Point Configuration and Management with Dedicated DMA Channels - 靈活的端點(diǎn)配置和管理的專用DMA通道
N、三個(gè)外部時(shí)鐘輸入,脈寬調(diào)制,捕獲和各種計(jì)數(shù)功能
O、One Master/Slave Two-Wire Interface (TWI), 400kbit/s I2C-compatible一個(gè)主/從雙線接口(TWI),400kbit / s的I2C兼容
3 無線通信單元
傳統(tǒng)的射頻前端接收部分包括帶通濾波器、低噪聲放大器、本振、檢波整形、放大器等,發(fā)射部分包括調(diào)制器、功率放大器、帶通濾波器等。而單片數(shù)字信號射頻收發(fā)芯片集成了無線通訊系統(tǒng)的大部分功能,外加少量外圍器件即可構(gòu)成專用或通用無線通信模塊,簡化了射頻前端的設(shè)計(jì)。
本設(shè)計(jì)擬采用ATMEL公司的ATmega128RFA1芯片,該片上系統(tǒng)提供了低功耗ZigBee解決方案,可以實(shí)現(xiàn)和完成ZigBee協(xié)議中FFD與 RFD設(shè)備的功能。
通用的2.4GHz ISM頻帶收發(fā)器與微控制器
RF4CE的,SP100,的WirelessHART,ISM應(yīng)用和IPv6/6LoWPAN的無線電收發(fā)器提供了從250 kb / s的高達(dá)2兆字節(jié)/秒,架高的數(shù)據(jù)傳輸速率處理,優(yōu)秀的接收靈敏度和高傳輸輸出功率,能夠?qū)崿F(xiàn)非常強(qiáng)大的無線通訊。其特性如下:
A、高性能低功耗,
B、擁有8位微控制器
C、先進(jìn)的RISC結(jié)構(gòu)
D、135條指令 -大多數(shù)為單時(shí)鐘周期執(zhí)行
E、32x8通用工作寄存器
F、全靜態(tài)工作
G、高達(dá)16 MIPS的吞吐量,在16兆赫和1.8V
H、非易失性程序和數(shù)據(jù)存儲器
I、系統(tǒng)內(nèi)128K字節(jié)可編程閃存
J、2000寫/擦除周期
K、4K字節(jié)的EEPROM
L、 內(nèi)部16K字節(jié)的SRAM
圖7 ATmega128RFA1管腳圖
圖8 ATmega128RFA1內(nèi)部結(jié)構(gòu)圖
4 .供電單元
本系統(tǒng)由于采用低功耗集成化器件,大大降低了功耗。預(yù)計(jì)對普通節(jié)點(diǎn)使用兩節(jié)五號電池進(jìn)行供電,而對于根節(jié)點(diǎn)或協(xié)調(diào)器,考慮到長期工作和其對網(wǎng)絡(luò)組建的重要性,安排單獨(dú)蓄電池為其供電。當(dāng)然,在光線充足的戶外環(huán)境,太陽能電池亦為節(jié)能環(huán)保的首選。
3.2.2串行通信接口
本系統(tǒng)擬采用異步串行通信實(shí)現(xiàn)單片機(jī)與PC機(jī)之間的數(shù)據(jù)傳輸,在異步串行通信中應(yīng)用最廣泛的標(biāo)準(zhǔn)接口就是RS232C。RS232C是由美國電子工業(yè)協(xié)會EIA公布的通信協(xié)議,適合于較短距離的通信場合(一般小于13米)。AVR32 AT32UC3A有兩個(gè)全雙工的串行通信模塊:USART0和USART1。通過對相應(yīng)寄存器的設(shè)置可使這兩個(gè)模塊工作于異步串行通信UART模式。本系統(tǒng)將USART1模塊設(shè)置為異步串行通信模式,而個(gè)人PC機(jī)上RS232C接口已經(jīng)成為一種標(biāo)準(zhǔn)配置,所以連接起來比較方便,只需要完成電平轉(zhuǎn)換,就可連接通信。
3.2.3 擬采用的其他模塊
鍵盤操作模塊和液晶顯示模塊構(gòu)成人機(jī)接口。人機(jī)接口使系統(tǒng)具有良好的人機(jī)交互界面。LCD顯示模塊可以直觀顯示當(dāng)前各個(gè)傳感器模塊的數(shù)據(jù),液晶擬采用LCM2401281,通單片機(jī)進(jìn)行控制,方便功能擴(kuò)展。 鍵盤輸入模塊實(shí)現(xiàn)對微處理器的直接操作 ;存儲器模塊實(shí)現(xiàn)各個(gè)模塊采集數(shù)據(jù)的存儲,實(shí)現(xiàn)了當(dāng)無線傳輸網(wǎng)絡(luò)發(fā)生問題時(shí)對信號依然進(jìn)行正常的記錄,提高了整套系統(tǒng)的穩(wěn)定性;報(bào)警器模塊通過發(fā)出聲音報(bào)警起到提示作用,當(dāng)無線傳輸終端發(fā)生錯誤時(shí)不影響對實(shí)際情況的判斷與及時(shí)措施的采取。
3.3系統(tǒng)軟件架構(gòu)
3.3.1無線網(wǎng)絡(luò)軟件設(shè)計(jì)
?。?)中斷程序
網(wǎng)絡(luò)允許節(jié)點(diǎn)以一定的周期自動上傳數(shù)據(jù),也支持響應(yīng)由上位機(jī)發(fā)送的中斷請求進(jìn)行數(shù)據(jù)被動上傳,其中節(jié)點(diǎn)MCU控制端的中斷相應(yīng)控制程序分別如圖9、10。
圖9主程序圖
圖10中斷流程
?。?)節(jié)點(diǎn)軟件設(shè)計(jì)
A、單節(jié)點(diǎn)加入和退出網(wǎng)絡(luò)
當(dāng)某個(gè)節(jié)點(diǎn)要加入網(wǎng)絡(luò),它向周圍發(fā)送入網(wǎng)請求,周圍節(jié)點(diǎn)接收到此信號后等待其他節(jié)點(diǎn)發(fā)送響應(yīng)(其中包括自身節(jié)點(diǎn)等級和本級節(jié)點(diǎn)數(shù)是否已滿),并依據(jù)RSSI強(qiáng)弱排序,建立本節(jié)點(diǎn)周圍節(jié)點(diǎn)狀況的聯(lián)絡(luò)列表設(shè)置,而最終選擇這其中最高級可入網(wǎng)節(jié)點(diǎn)(假定為入網(wǎng)目標(biāo)節(jié)點(diǎn)),向目標(biāo)入網(wǎng)節(jié)點(diǎn)發(fā)送入網(wǎng)請求并等待,當(dāng)接收到入網(wǎng)目標(biāo)節(jié)點(diǎn)的同意命令并被分編號后,節(jié)點(diǎn)就成功加入了網(wǎng)絡(luò)。之后目標(biāo)入網(wǎng)節(jié)點(diǎn)會將節(jié)點(diǎn)加入信息在下一次采集數(shù)據(jù)時(shí)同時(shí)逐次將節(jié)點(diǎn)入網(wǎng)信息上傳,通知主控制臺。
當(dāng)某節(jié)點(diǎn)因電池電壓過低,或臨時(shí)要退出網(wǎng)絡(luò)時(shí)會發(fā)送退出請求,當(dāng)接收到上一級節(jié)點(diǎn)的同意應(yīng)答后,將自動休眠或關(guān)機(jī),退出網(wǎng)絡(luò)。而其上一級節(jié)點(diǎn)也將同時(shí)刪除其相應(yīng)信息。
數(shù)據(jù)采集端程序
B、節(jié)點(diǎn)發(fā)送數(shù)據(jù)設(shè)計(jì)
終端節(jié)點(diǎn)程序設(shè)計(jì)
當(dāng)前本系統(tǒng)擬采用簡單的時(shí)分復(fù)用解決碰撞問題,在后期研究過程中將考慮利用更有效的其他方式。這樣不同節(jié)點(diǎn)在固定時(shí)段進(jìn)行工作,當(dāng)進(jìn)入工作周期后,節(jié)點(diǎn)進(jìn)入工作模式根據(jù)定時(shí)器和MCU的調(diào)節(jié)工作,當(dāng)采樣時(shí)間到后,節(jié)點(diǎn)啟動,采集數(shù)據(jù),發(fā)送并等待應(yīng)答,若接收到上級節(jié)點(diǎn)的正確應(yīng)答,就說明數(shù)據(jù)發(fā)送成功,然后進(jìn)入休眠;否則繼續(xù)發(fā)送,直到成功(但設(shè)定最高次數(shù),超過最高次數(shù)就認(rèn)為出現(xiàn)故障,進(jìn)行報(bào)警),如圖11:
若在節(jié)點(diǎn)休眠期間接收到喚醒信號,則響應(yīng)中斷,保護(hù)現(xiàn)場,發(fā)送當(dāng)前數(shù)據(jù)并等待應(yīng)答,若接收到上級節(jié)點(diǎn)的正確應(yīng)答,就說明數(shù)據(jù)發(fā)送成功,然后進(jìn)入休眠;否則繼續(xù)發(fā)送,直到
成功(但設(shè)定最高次數(shù),最高次數(shù)就認(rèn)為出現(xiàn)故障進(jìn)行,報(bào)警)如圖12:
圖11
圖12
較高級節(jié)點(diǎn)接收程序設(shè)計(jì)
進(jìn)入接收模式的高級節(jié)點(diǎn)進(jìn)行數(shù)據(jù)接收,并對接收到的數(shù)據(jù)進(jìn)行校驗(yàn),若正確則發(fā)送應(yīng)答包,回復(fù)節(jié)點(diǎn),否則,要求節(jié)點(diǎn)繼續(xù)發(fā)送。如圖13:
圖13
?。?)單片機(jī)與PC機(jī)串行通信軟件接口設(shè)計(jì):
軟件系統(tǒng)主要包括PC 機(jī)端(即上位機(jī)) 和單片機(jī)(即下位機(jī)) 的通信程序設(shè)計(jì)。上位機(jī)采用VC開發(fā)軟件提供的MSComm控件來完成串口數(shù)據(jù)的發(fā)送和接收功能。通過此控件, PC機(jī)可以利用串行口與其他設(shè)備實(shí)現(xiàn)輕松連接,簡單高效地實(shí)現(xiàn)設(shè)備之間的通信??梢酝ㄟ^串口與上位機(jī)(微機(jī))的通信,擬選用接口芯片MAX232。MSComm 控件的事件響應(yīng)有兩種處理方式:
事件驅(qū)動方式和查詢方式。事件驅(qū)動方式由MSComm 控件的On2Comm 事件捕獲并處理通訊錯誤及事件;查詢方式通過檢查CommEvent 屬性的值來判斷事件和錯誤。
3.3.2上位機(jī)軟件設(shè)計(jì)
PC機(jī)通過接口電路和接口程序從下位機(jī)采集到的信息包括:傳感節(jié)點(diǎn)的編號,傳感節(jié)點(diǎn)的工作狀態(tài),傳感節(jié)點(diǎn)采集時(shí)的環(huán)境變量,所有數(shù)據(jù)存儲在數(shù)據(jù)庫中。用戶既可以實(shí)時(shí)觀測,又可主動查詢。我們打算使用MFC可視化編程設(shè)計(jì)實(shí)現(xiàn)。
(1)用戶查詢程序?qū)崿F(xiàn)和操作界面設(shè)計(jì):
1)監(jiān)測實(shí)時(shí)動態(tài)顯示界面(以溫度為例)
圖14實(shí)時(shí)監(jiān)測示例
2)歷史數(shù)據(jù)回查界面示例
圖15歷史數(shù)據(jù)回查示例
3)異常數(shù)據(jù)短信報(bào)警示例
系統(tǒng)將監(jiān)測到的數(shù)據(jù)與預(yù)置的上下門限值進(jìn)行比較,對異常數(shù)據(jù)進(jìn)行報(bào)警(預(yù)計(jì)對3次以上的異常數(shù)據(jù)報(bào)警)
圖16飛信報(bào)警示例圖
3.4 系統(tǒng)預(yù)計(jì)實(shí)現(xiàn)結(jié)果
?。?)給出在工業(yè)園區(qū)這種復(fù)雜環(huán)境下的系統(tǒng)實(shí)現(xiàn)方案;
?。?)成功搭建基于ZigBee的無線傳感網(wǎng)絡(luò),并將傳感模塊加入網(wǎng)絡(luò),實(shí)現(xiàn)對工業(yè)園區(qū)環(huán)境因素進(jìn)行實(shí)時(shí)定量監(jiān)控和數(shù)據(jù)統(tǒng)計(jì),并使系統(tǒng)獲得穩(wěn)定的工作效果;
?。?)開發(fā)數(shù)據(jù)統(tǒng)計(jì)和分析軟件,使工業(yè)園區(qū)環(huán)境管理形象化,數(shù)字化,以便有利于生產(chǎn)管理和經(jīng)驗(yàn)的積累;
(4)以此為基礎(chǔ),擴(kuò)展應(yīng)用范圍,爭取實(shí)現(xiàn)對現(xiàn)有系統(tǒng)通用性的改造,增強(qiáng)其可擴(kuò)展性,使之利用通用接口可以支持更多傳感器的使用,實(shí)現(xiàn)對其他量的監(jiān)控,實(shí)現(xiàn)與自動控制系統(tǒng)的有線或無線通信。
(審核編輯: 小王子)
分享