張大為,皮之軍,劉 迪
(1.海軍航空工程學院 控制工程系,山東 煙臺 264001;2.海軍航空工程學院 訓練部,山東 煙臺 264001)
隨著通信技術、嵌入式計算技術和傳感器技術的迅猛發(fā)展,具有感知能力、計算能力和通信能力的無線傳感器網絡(Wireless Sensor Network,WSN)的應用領域也日益廣泛[1-2]。本文以FS2410DEV V6.0為硬件平臺,以智能交通管理系統(tǒng)為應用實例,基于WSN和ZigBee技術設計了一種現(xiàn)場數(shù)據(jù)采集系統(tǒng)。它能實現(xiàn)數(shù)據(jù)采集、存儲,無線數(shù)據(jù)傳輸,數(shù)據(jù)分析、處理以及WEB瀏覽等功能。具有功耗低、組網能力強、傳輸距離遠、可靠性高、拓展能力強等優(yōu)點[3]。
本文采用的WSN是由一組傳感器節(jié)點以自組織的方式構成無線網絡,采集和處理網絡覆蓋的地理區(qū)域中感知對象的信息,發(fā)布給集中控制中心。數(shù)據(jù)采集系統(tǒng)組成框圖如圖1所示。WSN節(jié)點主要由數(shù)據(jù)采集單元、數(shù)據(jù)處理單元、無線數(shù)據(jù)收發(fā)單元以及小型電池單元組成。數(shù)據(jù)采集系統(tǒng)利用各節(jié)點的加速傳感器實現(xiàn)對應節(jié)點的數(shù)據(jù)采集,數(shù)據(jù)經調理后通過節(jié)點微處理器的AD轉換單元,節(jié)點微處理器將數(shù)據(jù)從從XBEE-PRO芯片無線傳輸?shù)街鱔BEE-PRO芯片,主XBEEPRO芯片通過串口進入S3C2410處理器,S3C2410處理器作為網關進行數(shù)據(jù)處理以后,通過以太網口接入PC機服務器,PC機服務器采用MFC搭建人機交互界面,實現(xiàn)各參數(shù)的分析、處理,并通過因特網實時公布交通情況。
圖1 數(shù)據(jù)采集系統(tǒng)組成框圖Fig.1 Diagram of data acquisition system composition
利用加速傳感器檢測車輛和路況。傳感器模塊通過檢測過往車輛加速度的變化來檢測車輛,本文加速傳感器選用ADXL202兩軸向傳感器。首先對節(jié)點編寫程序以得到檢測區(qū)域的加速度采樣,繼而使用上位機軟件對樣本數(shù)據(jù)進行處理。當觀測車輛經過時,可在短時間內形成算法的原型,計數(shù)算法使用偏離基線的加速度值來操縱狀態(tài)機,由狀態(tài)機做出計數(shù)操作。驅動狀態(tài)機從半激活狀態(tài)到計數(shù)狀態(tài),信號必須偏離負相基線的臨界值。如果狀態(tài)機在半激活狀態(tài)且小于臨界值超過500 μs時,狀態(tài)機重置到未激活狀態(tài)。檢測算法中的磁滯可用于檢測一輛接一輛快速流動的交通情況,能夠降低基線的漂移和噪聲對臨界值的影響。由于鄰近車道上的大型車輛不能引起在兩個方向上的離散的加速度偏離,所以也能排除鄰近車道上的車輛干擾。
由于傳感器直接安裝到路面上,它還能檢測路況信息,比如檢測路面是否有冰雪、積水等覆蓋。具體實現(xiàn)上,是通過使用電容性傳感器來感應傳感器表面材料的絕緣性或導電性。此方法主要用于流體的檢測,能夠以低成本低能量得到冰雪、積水等信息的穩(wěn)定監(jiān)測?;谖⒖刂破飨到y(tǒng)以10位A/D轉換器進行同步采樣就能實現(xiàn)低成本的電容性感應。其中一端附于微控制器的輸出針腳,連接到傳感器節(jié)點表面的電極上;另一端附于鄰近的電極,通過一個簡單的FET放大器連接到A/D轉換器輸入針腳上。微控制器不斷地以1 V步長通過電極,等待幾微秒,采樣輸入A/D。微控制器使用同步解調來檢測電容變化。另一種方法是測量溫度變化來檢測路況,如溫度大于冰點,路面就不可能有冰;同樣,如果溫度小于等于冰點,則路面有可能結冰,此外,路面上的溫度與空氣溫度的變化比率是由節(jié)點表面材料的熱容決定的。
利用信號調理電路對傳感器信號進行處理。信號調理電路對ADXL202兩軸向傳感器的電壓信號進行濾波、限幅,實現(xiàn)傳感器信號的預處理。
經過預處理后的傳感器信號進入微處理器的A/D轉換單元,本文采用的微處理器為C8051F018單片機,其內部集成10位A/D轉換器,外部時鐘為24 MHz,其執(zhí)行速度足以滿足系統(tǒng)要求。C8051F018單片機結構如圖2所示。
圖2 C8051F018單片機結構Fig.2 C8051F018 single chip microcomputer structure
微處理器通過XBEE-PRO芯片進行無線數(shù)據(jù)傳輸。數(shù)據(jù)采集系統(tǒng)的網絡協(xié)調器由網關節(jié)點上的XBEE-PRO充當,網絡協(xié)調器負責收集數(shù)據(jù),然后經其串口傳送給FS2410DEV V6.0的S3C2410,S3C2410將數(shù)據(jù)分析、處理后通過TCP/IP協(xié)議傳送給PC機服務器,從而實現(xiàn)ZigBee協(xié)議與TCP/IP協(xié)議之間的數(shù)據(jù)互傳。
系統(tǒng)軟件設計主要包括單片機底層軟件、MFC上位機軟件和監(jiān)控中心平臺程序的設計。設計內容涉及無線通信、ZigBee協(xié)議實現(xiàn)、TCP/IP以太網通信、單片機底層軟件等方面[4],系統(tǒng)軟件設計流程圖如圖2所示。初始化系統(tǒng)主要包括初始化WPAN信息數(shù)據(jù)庫,建立ZigBee網絡,分配網絡ID號和16位網絡地址,初始化鄰居設備表,等待車載ZigBee無線節(jié)點連接。當車輛進入主節(jié)點網絡覆蓋區(qū)時,接收主節(jié)點的網絡信號,發(fā)送掃描信號請求連接,連接成功后,記錄網絡ID號和分配的16位網絡地址,向主節(jié)點發(fā)送車輛信息,完成車輛登記。監(jiān)控中心平臺為本系統(tǒng)的集中管理平臺,負責系統(tǒng)中所有數(shù)據(jù)的處理、記錄、調度,通過以太網與各出入口主節(jié)點進行數(shù)據(jù)交互,通過通用組件自動生成記錄表單以供查閱及打印,同時查詢數(shù)據(jù)庫車輛狀態(tài)。若一切正常,則回復確認信息給主節(jié)點;若出現(xiàn)異常狀態(tài)則回復控制命令給主節(jié)點,主節(jié)點收到命令后執(zhí)行相應操作,同時在用戶界面上顯示異常狀態(tài)以通知監(jiān)控中心工作人員。
以太網采用TCP協(xié)議傳輸數(shù)據(jù),實現(xiàn)了無差錯無重復的順序數(shù)據(jù)傳輸。在應用程序利用TCP進行通信時,源和目標之間會建立一個虛擬連接。這個連接一旦建立,兩通信設備之間就可把數(shù)據(jù)當作一個雙向字節(jié)流進行交換。本文設計的數(shù)據(jù)采集系統(tǒng)的網關是TCP客戶端,具體實現(xiàn)上,首先調用socket函數(shù)建立流式套接字,然后調用connect函數(shù),請求與服務器端建立TCP連接,成功建立連接后,就可同服務器端進行通訊?;谝蕴W的數(shù)據(jù)傳輸應用程序采用多線程方式編寫實現(xiàn),其數(shù)據(jù)傳輸應用程序流程圖如圖3所示。一個線程用于接收ZigBee網絡協(xié)調器CC2430從串口發(fā)來的數(shù)據(jù),另一個線程用于編寫基于TCP/IP協(xié)議的網絡套接字程序與服務器進行通信。
圖3 系統(tǒng)軟件設計流程圖Fig.3 Flow chart of system software design
設計中還需考慮降低成本和每個WSN節(jié)點的復雜性。由于節(jié)點沒有接收指令的內在需求,所以每個節(jié)點都有發(fā)送器,沒有接收器。然而,由于標準無線信道技術需要發(fā)送和接收的參與,缺少接收器將使無線協(xié)議復雜化。WSN的傳輸協(xié)議非常簡單:每個節(jié)點在60 s內隨機選擇時隙來發(fā)送。如果在隨機選擇的時間上檢測到車輛,它將等待車輛通過后再發(fā)送數(shù)據(jù)。
ZigBee網絡的2個小節(jié)點采用電池供電,基于測試方便的考慮將節(jié)點設置成全功能的路由器節(jié)點,每節(jié)點只接一個加速度傳感器。設計的網關節(jié)點安放在待測試區(qū)域,網關節(jié)點上的CC2430設置成協(xié)調器,并采用12 V、2 A的電源適配器供電。網關節(jié)點和2個小節(jié)點就構成一個樹型無線傳感器網絡。將1臺具有靜態(tài)IP地址的PC機用作遠程服務器進行測試。測試內容包括測試網關節(jié)點動態(tài)配置ZigBee網絡;基于以太網通信的數(shù)據(jù)實時轉發(fā);基于SMS方式數(shù)據(jù)傳輸及系統(tǒng)運行的穩(wěn)定性。首先在網關節(jié)點運行網絡配置應用程序,而后啟動ZigBee網絡。具體操作上,輸入配置命令SP(發(fā)送周期)、節(jié)點ID號1、節(jié)點發(fā)送周期參數(shù)值為3 min,然后點配置按鈕,若配置成功彈出“ZigBee Config Success!”對話框,否則,彈出“fails”對話框。在服務器上運行TCP/UDP測試工具,然后運行網關節(jié)點上的數(shù)據(jù)傳輸應用程序,在操作界面輸入PC機服務器的IP地址、端口號,再啟動ZigBee網絡,在設定的采集周期內網關節(jié)點串口1將收到各節(jié)點采集到的數(shù)據(jù),經過分析處理后在網關節(jié)點上顯示并以以太網方式傳送給PC機服務器[5]。
測試結果表明:網關節(jié)點能夠成功配置ZigBee網絡,設計的基于ZigBee技術的射頻單元電路正確、可靠,網關節(jié)點上的CC2430能夠成功擔當ZigBee網絡的協(xié)調器,并能成功修改ZigBee網絡參數(shù);網關節(jié)點能夠成功地將協(xié)調器收集到的數(shù)據(jù)以以太網的方式轉發(fā)給PC服務器,以太網通信接口設計正確,采用線程編程、基于網絡套接字的編程策略合理、正確;通過測試表明本文設計的網關節(jié)點功能符合設計要求,系統(tǒng)運行穩(wěn)定。
圖4 數(shù)據(jù)傳輸應用程序流程圖Fig.4 Flow chart of data transmission application program
文中以WSN為技術支撐,以智能交通管理系統(tǒng)為應用實例,基于ZigBee協(xié)議設計了一種智能數(shù)據(jù)采集系統(tǒng)。測試表明該數(shù)據(jù)采集系統(tǒng)在數(shù)據(jù)傳輸方面具有以下優(yōu)越性:功耗低,2節(jié)普通5號電池可支持一個節(jié)點工作6~24個月;組網能力強,網絡最多可達多個節(jié)點,并支持樹狀、星狀、網狀等多種組網方式;傳輸距離遠,兩節(jié)點室外傳輸距離可達幾百米,在增加發(fā)射功率后可達幾千米;可靠性高,具備多級安全模式;成本低,開放的簡化ZigBee協(xié)議棧工作在2.4 GHz免費的ISM頻段。另外,該數(shù)據(jù)采集系統(tǒng)通用性和可移植性較好,只要稍加改造就能應用于無人值守、遙控遙測、車輛安全等遠程控制系統(tǒng)中[6],拓展能力強,應用前景十分廣闊。
[1]馬駿領,金泰干,李楨賢.基于無線傳感器網絡的倉庫智能安保系統(tǒng)設計[J].電子設計工程,2009,17(7):9-11.MA Jun-ling,JIN Tai-gan,LI Zhen-xian.Design of warehouse intelligent safeguard system based on WSN[J].Electrical design engineering,2009,17(7):9-11.
[2]倪嫻,陳永銳,易衛(wèi)東.用于智能交通傳感網的高吞吐量仿真研究[J].計算機仿真,2011,28(5):349-353.NI Xian,CHEN Yong-rui,YI Wei-dong.High throughput simulation research for intelligent transportation sensor network[J].Computer simulation,2011,28(5):349-353.
[3]袁凌云,朱云龍,瞿立成.分布式無線交通監(jiān)控系統(tǒng)的研究與實現(xiàn)[J].計算機工程,2006,32(8):249-251.YUAN Ling-yun,ZHU Yun-long,QU Li-cheng.Research and implementation of transportation monitoring system based on distributed wireless sensor network[J].Computer engineering,2006,32(8):249-251.
[4]孫利民,李建中,陳渝.無線傳感器網絡[M].北京:清華大學大學出版社,2005.
[5]何東健,鄒志勇,周曼.果園環(huán)境參數(shù)遠程檢測WSN網關節(jié)點設計[J].農業(yè)機械學報,2010,41(6):182-185.HE Dong-jian,ZOU Zhi-yong,ZHOU Man.Design of WSN gateway nodes for remote detection of orchards environment parameters[J].Transactions of the Chinese society for agricultural machinery, 2010, 41(6):182-185.
[6]張任,王堅鋒,嚴海.基于ZigBee的無線傳感器網絡節(jié)點設計[J].機電工程,2008,25(8):18-20.ZHANG Ren,WANG Jian-feng,YAN Hai.Design of wireless sensor networks nodes based on ZigBee[J].Mechanical&electrical engineering magazine,2008,25(8):18-20.