仿真技術(shù)在物聯(lián)網(wǎng)實(shí)踐教學(xué)中的應(yīng)用研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
物聯(lián)網(wǎng)工程專(zhuān)業(yè)本身具有鮮明的應(yīng)用性特點(diǎn),以培養(yǎng)學(xué)生工程實(shí)踐能力為核心。因此,物聯(lián)網(wǎng)實(shí)驗(yàn)教學(xué)在物聯(lián)網(wǎng)工程專(zhuān)業(yè)學(xué)生培養(yǎng)中起到至關(guān)重要的作用。然而,由于物聯(lián)網(wǎng)尚處在發(fā)展的初級(jí)階段,高校的實(shí)踐教學(xué)也因此碰到了瓶頸。真實(shí)的實(shí)驗(yàn)設(shè)備價(jià)格昂貴,實(shí)驗(yàn)條件不成熟等諸多特點(diǎn)直接導(dǎo)致了實(shí)驗(yàn)教學(xué)的窘境。針對(duì)難以在真實(shí)環(huán)境中進(jìn)行物聯(lián)網(wǎng)實(shí)驗(yàn)的情況,仿真技術(shù)對(duì)于物聯(lián)網(wǎng)實(shí)踐教學(xué)來(lái)說(shuō)變得越來(lái)越重要。本文正是在這種背景下開(kāi)展物聯(lián)網(wǎng)實(shí)踐教學(xué)的仿真技術(shù)探討與應(yīng)用研究。
1 物聯(lián)網(wǎng)實(shí)踐教學(xué)中的仿真技術(shù)分析
物聯(lián)網(wǎng)是物物相連的網(wǎng)絡(luò),物品和物品、物品和人之間能夠交互信息,其本質(zhì)是通過(guò)傳感器、射頻識(shí)別等利用新的方式連接起來(lái)。物聯(lián)網(wǎng)的最終目的歸結(jié)于應(yīng)用,與其說(shuō)物聯(lián)網(wǎng)是網(wǎng)絡(luò),不如說(shuō)物聯(lián)網(wǎng)就是應(yīng)用。物聯(lián)網(wǎng)應(yīng)用中的無(wú)線傳感器網(wǎng)絡(luò)呈現(xiàn)出一些新的特點(diǎn),具體體現(xiàn)在,傳感器數(shù)量規(guī)??赡芫薮螅渴鸬沫h(huán)境可能是森林、沙漠及水底等不同環(huán)境中, 傳感器節(jié)點(diǎn)也可能由溫度、濕度等不同類(lèi)型的傳感器組成 ;大量的傳感器節(jié)點(diǎn)所感知的數(shù)據(jù)信息有一定的相似性,數(shù)據(jù)融合成為物聯(lián)網(wǎng)研究的難題之一。因此,在物聯(lián)網(wǎng)專(zhuān)業(yè)課程的教學(xué)中,實(shí)驗(yàn)課程的開(kāi)設(shè)是人才培養(yǎng)最重要的基礎(chǔ)環(huán)節(jié)之一。
現(xiàn)階段,高校的物聯(lián)網(wǎng)實(shí)踐教學(xué)都還處于探索階段,在信息采集系統(tǒng)設(shè)計(jì)、通信協(xié)議設(shè)計(jì)及物聯(lián)網(wǎng)相關(guān)技術(shù)本身也面臨著一系列的挑戰(zhàn),由于外部環(huán)境參數(shù)設(shè)置和各種條件的不滿足,部署大型的實(shí)驗(yàn)平臺(tái)價(jià)格昂貴且異常困難。因此,搭建仿真平臺(tái),研究者可以在可控環(huán)境中研究物聯(lián)網(wǎng),彌補(bǔ)了在真實(shí)環(huán)境中進(jìn)行物聯(lián)網(wǎng)實(shí)踐教學(xué)的缺陷,有利于學(xué)生思維的開(kāi)拓和創(chuàng)新能力的培養(yǎng)。
在眾多的網(wǎng)絡(luò)模擬仿真軟件中,NS2由于其源碼開(kāi)放的特點(diǎn),完全支持物聯(lián)網(wǎng)相關(guān)算法和協(xié)議的仿真,包括對(duì)傳感器和電池模型,甚至混合仿真支持等。無(wú)線傳感器網(wǎng)絡(luò)中傳感器節(jié)點(diǎn)數(shù)目可能很大,節(jié)點(diǎn)更容易失效,拓?fù)渥兓惓nl繁, 且在 NS2無(wú)線傳感器網(wǎng)絡(luò)仿真過(guò)程中,經(jīng)常要進(jìn)行跨層的協(xié)議設(shè)計(jì)和修改。這些協(xié)議添加本身很容易在 NS2中實(shí)現(xiàn),通過(guò)協(xié)議的添加,模擬場(chǎng)景的設(shè)置、腳本動(dòng)態(tài)生成,就能通過(guò)NS2的模擬得到描述結(jié)果、動(dòng)態(tài)運(yùn)行演示圖及性能分析圖表。讓物聯(lián)網(wǎng)的實(shí)踐教學(xué)變得形象化和可視化,增強(qiáng)學(xué)生的學(xué)習(xí)興趣,也迫使學(xué)生在仿真平臺(tái)上獲取數(shù)據(jù),分析網(wǎng)絡(luò)性能。
2 物聯(lián)網(wǎng)實(shí)踐教學(xué)模塊的設(shè)計(jì)及實(shí)現(xiàn)
基于對(duì)物聯(lián)網(wǎng)及NS2 仿真技術(shù)的分析[8],本文設(shè)計(jì)出對(duì)無(wú)線傳感器網(wǎng)絡(luò)進(jìn)行仿真分析的系統(tǒng)平臺(tái)。該平臺(tái)能在物聯(lián)網(wǎng)實(shí)踐教學(xué)過(guò)程中進(jìn)行模擬過(guò)程的可視化,包括 :自動(dòng)生成無(wú)線傳感器網(wǎng)絡(luò)TCL 腳本可視化配置模塊 ;運(yùn)行腳本文件、觀看動(dòng)畫(huà)可視化模塊 ;Awk 數(shù)據(jù)分析和可視化模塊 ;Gnuplot 繪圖可視化模塊等。
在物聯(lián)網(wǎng)相關(guān)課程的實(shí)踐教學(xué)中,NS2 仿真腳本編寫(xiě)對(duì)于初學(xué)者來(lái)說(shuō)往往是很繁瑣的。學(xué)生即使能編寫(xiě)一大堆的腳本程序,也無(wú)法把握整個(gè)無(wú)線傳感器網(wǎng)絡(luò)仿真節(jié)點(diǎn)布局及拓?fù)鋱D。因此,在物聯(lián)網(wǎng)實(shí)踐教學(xué)中,有必要將無(wú)線傳感器等網(wǎng)絡(luò)拓?fù)涞拇罱?、協(xié)議的添加等進(jìn)行可視化處理,并在此基礎(chǔ)上生成腳本。這樣既避免了繁瑣的腳本編寫(xiě),又能從全局上把握網(wǎng)絡(luò)的結(jié)構(gòu)及特點(diǎn)。
生成腳本后,在 NS2 仿真界面通過(guò)輸入ns *.tcl 進(jìn)行網(wǎng)絡(luò)模擬,得到仿真結(jié)果Trace 文件,接下來(lái)的關(guān)鍵就是對(duì)模擬結(jié)果進(jìn)行可視化分析。通過(guò)分析這些數(shù)據(jù),能夠使研究者用較少的時(shí)間和費(fèi)用,了解網(wǎng)絡(luò)在不同條件下的特性,獲取無(wú)線傳感網(wǎng)研究所需的豐富且有效的數(shù)據(jù)。網(wǎng)絡(luò)性能分析包含動(dòng)態(tài)顯示模塊及靜態(tài)分析模塊。動(dòng)態(tài)顯示模塊調(diào)用NAM 工具實(shí)現(xiàn),將模擬過(guò)程進(jìn)行動(dòng)畫(huà)演示,讓研究者能夠清晰看到分組如何從發(fā)送端到達(dá)接收端 ;靜態(tài)分析模塊則對(duì)無(wú)線傳感網(wǎng)的關(guān)鍵性能 :延時(shí)、丟包、吞吐量和能耗等進(jìn)行分析,這些關(guān)鍵性能的分析是通過(guò) gawk 語(yǔ)言處理的,最后通過(guò)Xgraph 或 gnuplot 繪制圖形,將感興趣的數(shù)據(jù)直觀反映出來(lái),為學(xué)習(xí)和研究提供便利,NS2 仿真過(guò)程的整個(gè)過(guò)程如圖 1 所示。
3 教學(xué)案例設(shè)計(jì)
在實(shí)踐教學(xué)中, 假定我們需要模擬區(qū)域?yàn)?500 m× 500 m, 采取 random 方式設(shè)置擁有 100 個(gè)傳感器節(jié)點(diǎn)的wireless scenario,仿真一個(gè)典型的多跳自組織無(wú)線環(huán)境。對(duì)于該實(shí)驗(yàn)場(chǎng)景,我們無(wú)法真實(shí)的去部署傳感器,但我們又很有必要去研究當(dāng)前網(wǎng)絡(luò)場(chǎng)景下,各種網(wǎng)絡(luò)性能的表現(xiàn)情況以及了解網(wǎng)絡(luò)運(yùn)行的動(dòng)態(tài)過(guò)程。
在實(shí)踐教學(xué)過(guò)程中, 我們只需要實(shí)驗(yàn)室具備計(jì)算機(jī)以及相應(yīng)的軟件環(huán)境即可, 學(xué)生在宿舍個(gè)人計(jì)算機(jī)上同樣也可以完成實(shí)驗(yàn)。本實(shí)驗(yàn)假定在 win7 32 位系統(tǒng)下安裝了cygwin+NS2.35 環(huán)境及Java 運(yùn)行環(huán)境。由于NS2.35 對(duì)無(wú)線傳感器網(wǎng)絡(luò)并不完全支持,因此,我們只需要完成對(duì)面向物聯(lián)網(wǎng)的無(wú)線傳感器網(wǎng)絡(luò)仿真模塊的添加,使得仿真環(huán)境滿足無(wú)線傳感器網(wǎng)絡(luò)仿真的要求即可。
在實(shí)驗(yàn)場(chǎng)景設(shè)置方面,可以避開(kāi)繁瑣的腳本編寫(xiě),采用開(kāi)源工具NSG2(NS2 Scenarios Generator 2),通過(guò)如圖 2 所示的圖形界面操作進(jìn)行無(wú)線傳感器網(wǎng)絡(luò)實(shí)驗(yàn)拓?fù)涞膭?chuàng)建、相關(guān)參數(shù)的設(shè)計(jì)以及運(yùn)動(dòng)軌跡的設(shè)計(jì),然后自動(dòng)生成仿真如圖 3 所示的腳本語(yǔ)言。
腳本生成后,我們?cè)?NS2.35 環(huán)境下進(jìn)行網(wǎng)絡(luò)的模擬和仿真,就可得到如圖 4 所示的仿真trace 數(shù)據(jù)文件 out.tr 和用于動(dòng)態(tài)顯示的out.nam 仿真結(jié)果,再將整個(gè)網(wǎng)絡(luò)的運(yùn)行動(dòng)態(tài)通過(guò)動(dòng)畫(huà)演示出來(lái),就能增強(qiáng)學(xué)生研究該類(lèi)問(wèn)題的信心和積極性,也能夠從運(yùn)行動(dòng)畫(huà)中把握復(fù)雜網(wǎng)絡(luò)運(yùn)行的動(dòng)態(tài)過(guò)程,從而促使學(xué)生對(duì)各種網(wǎng)絡(luò)性能的進(jìn)一步分析和研究。對(duì)于枯燥的仿真數(shù)據(jù)而言,用戶還可以通過(guò) gnuplot 等工具進(jìn)行圖形繪制,使得各種網(wǎng)絡(luò)性能參數(shù)直觀地呈現(xiàn)在研究者面前,有助于師生對(duì)面向物聯(lián)網(wǎng)的無(wú)線傳感器網(wǎng)絡(luò)的學(xué)習(xí)和研究,這樣, 就達(dá)到了物聯(lián)網(wǎng)實(shí)踐教學(xué)的目的,彌補(bǔ)了無(wú)法在真實(shí)環(huán)境中進(jìn)行實(shí)驗(yàn)的遺憾。
4 結(jié) 語(yǔ)
本文探討了仿真技術(shù)在物聯(lián)網(wǎng)工程專(zhuān)業(yè)課程實(shí)踐教學(xué)中的應(yīng)用,指出了模擬網(wǎng)絡(luò)環(huán)境仿真是物聯(lián)網(wǎng)實(shí)踐教學(xué)體系中重要的環(huán)節(jié)。模擬仿真不僅不受客觀條件的制約,又能促進(jìn)學(xué)生對(duì)復(fù)雜網(wǎng)絡(luò)的研究和認(rèn)知,是當(dāng)前物聯(lián)網(wǎng)實(shí)踐教學(xué)中重要的方法和模式之一。這種模式有利于學(xué)生創(chuàng)新能力的鍛煉, 同時(shí)也促進(jìn)了物聯(lián)網(wǎng)專(zhuān)業(yè)人才實(shí)踐能力的培養(yǎng)。