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