朱 濤,顧海艷,夏玲玲
(江蘇警官學(xué)院 計(jì)算機(jī)信息與網(wǎng)絡(luò)安全系,江蘇 南京 210031)
智能物聯(lián)系統(tǒng)是未來(lái)智慧城市[1]、智能交通[2]、智慧校園[3]等智能應(yīng)用領(lǐng)域建設(shè)規(guī)劃落地實(shí)施的關(guān)鍵形式。針對(duì)智能家居這類典型智能物聯(lián)系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)內(nèi)容,能夠使學(xué)生在熟知的家居場(chǎng)景中鍛煉操作技能,感受所學(xué)知識(shí)的高可用性,激發(fā)深入學(xué)習(xí)的動(dòng)力。Packet Tracer v7新增了對(duì)物聯(lián)網(wǎng)仿真實(shí)驗(yàn)的支持[4],可以仿真車輛道閘系統(tǒng)[5]、智慧大棚[6]等多種物聯(lián)系統(tǒng)。本文首先設(shè)計(jì)了智能家居仿真實(shí)驗(yàn)的教學(xué)過(guò)程框架,以模擬真實(shí)項(xiàng)目實(shí)施流程的方式規(guī)劃了需求分析、系統(tǒng)設(shè)計(jì)的具體教學(xué)要點(diǎn),并描述基于Packet Tracer的系統(tǒng)仿真內(nèi)容,為培養(yǎng)學(xué)生形成智能物聯(lián)系統(tǒng)的綜合設(shè)計(jì)能力提供了有效途徑。
基于智能物聯(lián)實(shí)驗(yàn)教學(xué)過(guò)程框架[7],可以將智能家居物聯(lián)仿真實(shí)驗(yàn)整體上分為設(shè)計(jì)和實(shí)施兩大階段以及三個(gè)具體執(zhí)行步驟,如圖1所示。其中,設(shè)計(jì)階段通過(guò)將學(xué)生放入一個(gè)真實(shí)的家居場(chǎng)景的方式,營(yíng)造設(shè)計(jì)氛圍,展開(kāi)產(chǎn)業(yè)調(diào)研和需求獲取,完成需求分析和系統(tǒng)設(shè)計(jì);實(shí)施階段主要訓(xùn)練學(xué)生學(xué)會(huì)使用Packet Tracer的物聯(lián)設(shè)備系統(tǒng)仿真功能,得到一個(gè)仿真的智能家居物聯(lián)系統(tǒng)。對(duì)學(xué)生實(shí)驗(yàn)效果根據(jù)每個(gè)步驟輸出的“成果物”實(shí)現(xiàn)全過(guò)程評(píng)價(jià)。
圖1 智能家居物聯(lián)仿真實(shí)驗(yàn)的教學(xué)過(guò)程
智能家居物聯(lián)實(shí)驗(yàn)的需求分析需要教師發(fā)揮主導(dǎo)作用,組織一個(gè)模擬的智能家居需求獲取環(huán)境[8],學(xué)生在其中完成需求調(diào)研、需求確定以及需求文檔編制三項(xiàng)實(shí)驗(yàn)任務(wù)。
需求調(diào)研任務(wù)需要學(xué)生設(shè)想自己身處用戶場(chǎng)景,通過(guò)信息搜索、市場(chǎng)調(diào)研以及假想的用戶訪談等方式獲取智能家居的建設(shè)需求,劃定系統(tǒng)涉及范圍和與其他系統(tǒng)的交互邊界,調(diào)研市場(chǎng)同類產(chǎn)品信息,形成用戶場(chǎng)景文檔(描述應(yīng)用環(huán)境和功能要求)、智能家居典型系統(tǒng)信息表(說(shuō)明設(shè)備組成、數(shù)量性能、經(jīng)費(fèi)測(cè)算)等成果物。需求確定任務(wù)既需要學(xué)生從用戶視角將思維代入到一個(gè)用戶家居場(chǎng)景來(lái)審視需求合理性,又需要學(xué)生從系統(tǒng)設(shè)計(jì)者視角裁減和剔除非理性不實(shí)際的需求,同時(shí)全面檢查需求在功能、質(zhì)量、限制約束等三個(gè)方面的完備性,形成標(biāo)志性成果物(如系統(tǒng)用例圖、需求矩陣、功能項(xiàng)列表、性能指標(biāo)列表等)。整理綜合這兩項(xiàng)任務(wù)的成果物后,要求學(xué)生編制需求規(guī)格說(shuō)明書(shū),作為該階段實(shí)驗(yàn)效果評(píng)估的主要內(nèi)容。
主要通過(guò)教師預(yù)設(shè)的智能家居模擬建設(shè)場(chǎng)景,開(kāi)展系統(tǒng)功能設(shè)計(jì)和架構(gòu)設(shè)計(jì)[9]兩個(gè)方面的實(shí)驗(yàn),讓學(xué)生模擬經(jīng)歷智能家居的系統(tǒng)設(shè)計(jì)過(guò)程。
智能家居功能設(shè)計(jì)的實(shí)驗(yàn)內(nèi)容主要包括:一是根據(jù)用例圖,研究相關(guān)智能控制過(guò)程,確定交互對(duì)象(即主要設(shè)備);二是畫(huà)出功能時(shí)序圖,描述系統(tǒng)對(duì)象的交互過(guò)程和數(shù)據(jù)處理過(guò)程。
首先,由于用例圖圈定了對(duì)智能家居的功能要求,就可以要求學(xué)生通過(guò)研究市場(chǎng)標(biāo)準(zhǔn)、文獻(xiàn)資料、法律制度的方式,確定實(shí)現(xiàn)對(duì)應(yīng)功能的智能控制過(guò)程,這類控制過(guò)程往往是智能家居領(lǐng)域知識(shí)的一部分,學(xué)生可以在研究后直接引用。在研究控制過(guò)程的同時(shí),就可確定出系統(tǒng)內(nèi)的交互組件對(duì)象。表1列出了智能家居的部分功能控制邏輯和涉及的組件對(duì)象。
表1 智能家居功能實(shí)現(xiàn)中的控制邏輯
此階段第二個(gè)實(shí)驗(yàn)內(nèi)容就是畫(huà)出功能時(shí)序圖。要求學(xué)生將表1中確定的控制邏輯過(guò)程,與相關(guān)的系統(tǒng)組件對(duì)象關(guān)聯(lián)起來(lái),并使用統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML)在UML建模軟件中畫(huà)出功能時(shí)序圖。如果同時(shí)涉及數(shù)據(jù)處理和存儲(chǔ),就需要學(xué)生繪制數(shù)據(jù)流程圖,并思考這些流程使用哪些設(shè)備對(duì)象來(lái)完成。智能家居以中央控制設(shè)備為核心,在接收測(cè)風(fēng)儀、溫/濕度監(jiān)測(cè)器、攝像頭等監(jiān)控采集設(shè)備的數(shù)據(jù)后,根據(jù)用戶需求確定的控制邏輯智能地控制窗戶、空調(diào)、火爐、加濕器等執(zhí)行設(shè)備,并通過(guò)數(shù)據(jù)存儲(chǔ)設(shè)備完成數(shù)據(jù)持久化。例如,自動(dòng)溫控的功能時(shí)序圖如圖2所示,同時(shí)若數(shù)據(jù)流程較簡(jiǎn)單,也可在功能時(shí)序圖中同時(shí)展現(xiàn)數(shù)據(jù)持久化過(guò)程。
圖2 智能家居的“自動(dòng)溫控”功能時(shí)序圖
智能家居系統(tǒng)架構(gòu)設(shè)計(jì)實(shí)驗(yàn)需要學(xué)生完成邏輯架構(gòu)設(shè)計(jì)和部署架構(gòu)設(shè)計(jì)兩個(gè)實(shí)驗(yàn)任務(wù)。其中,邏輯架構(gòu)設(shè)計(jì)要求學(xué)生根據(jù)關(guān)鍵需求,參考典型系統(tǒng)架構(gòu),將前一步確定的交互對(duì)象組織成最適合的系統(tǒng)架構(gòu);而部署架構(gòu)設(shè)計(jì)要求學(xué)生規(guī)劃物理節(jié)點(diǎn)部署,形成節(jié)點(diǎn)拓?fù)涓拍罱Y(jié)構(gòu)。
智能家居的邏輯架構(gòu)一般可以參考經(jīng)典的物聯(lián)網(wǎng)邏輯架構(gòu)模型,同時(shí)考慮感知、采集和執(zhí)行都在前端的因素,可以形成感知與執(zhí)行層、網(wǎng)絡(luò)傳輸層和應(yīng)用服務(wù)層三層架構(gòu)模型,如圖3所示。其中,感知與執(zhí)行層主要包含測(cè)風(fēng)儀、溫/濕度監(jiān)測(cè)器、攝像頭等數(shù)據(jù)采集設(shè)備,以及窗戶、空調(diào)、火爐、加濕器等動(dòng)作執(zhí)行設(shè)備;網(wǎng)絡(luò)傳輸層主要是路由器、交換機(jī)、家庭網(wǎng)關(guān)等用于網(wǎng)絡(luò)構(gòu)建和數(shù)據(jù)傳輸?shù)脑O(shè)備;應(yīng)用服務(wù)層主要是中央控制設(shè)備、手機(jī)、PC等對(duì)外提供應(yīng)用服務(wù)能力的設(shè)備。
圖3 智能家居的邏輯架構(gòu)
智能家居的部署架構(gòu)設(shè)計(jì),主要是規(guī)劃圖3中的各種設(shè)備的具體部署位置,畫(huà)出其部署圖即可。其中,要求學(xué)生了解經(jīng)典常用的家居布局下的系統(tǒng)部署方式,根據(jù)所設(shè)想的家庭布局展開(kāi)設(shè)計(jì),同時(shí)要將有/無(wú)線網(wǎng)絡(luò)規(guī)劃均納入考慮,要向?qū)W生介紹網(wǎng)線布線、安裝實(shí)施等具體實(shí)際問(wèn)題的重要性,強(qiáng)調(diào)雖然無(wú)法在實(shí)驗(yàn)仿真條件下完成,但需要了解其解決辦法。
學(xué)生經(jīng)歷前述實(shí)驗(yàn)過(guò)程后,得到了智能家居的系統(tǒng)組成要素,就可在Packet Tracer上通過(guò)模擬的方式實(shí)現(xiàn)安裝部署[10]。這一過(guò)程主要包括物聯(lián)網(wǎng)絡(luò)構(gòu)建和物聯(lián)設(shè)備控制編程兩個(gè)部分。
智能家居物聯(lián)網(wǎng)絡(luò)構(gòu)建的實(shí)驗(yàn)內(nèi)容具體包括選擇系統(tǒng)設(shè)備,使用設(shè)備構(gòu)建物聯(lián)網(wǎng)絡(luò)拓?fù)洌约巴瓿晒?jié)點(diǎn)設(shè)備參數(shù)配置并測(cè)試網(wǎng)絡(luò)聯(lián)通性三項(xiàng)內(nèi)容。
首先,學(xué)生需要根據(jù)架構(gòu)組成要素和設(shè)想的家居布局在Packet Tracer中選擇具體的設(shè)備,并完成智能家居物聯(lián)拓?fù)涞拇罱?。比如,若設(shè)想一個(gè)家居場(chǎng)景有多個(gè)房間,室內(nèi)外均有設(shè)備,在外也能控制家居設(shè)備,那么在家居內(nèi)有線和無(wú)線網(wǎng)絡(luò)必定是混合使用,對(duì)外也要接入互聯(lián)網(wǎng),能夠通過(guò)手機(jī)、PC、筆記本電腦均能配置和控制家居物聯(lián)設(shè)備。基于前面總體設(shè)計(jì)得到的架構(gòu)組成要素,可以在Packet Tracer的“設(shè)備類型庫(kù)”中選擇設(shè)備,其中的典型設(shè)備見(jiàn)表2所列。
表2 在Packet Tracer中仿真智能家居選擇的典型設(shè)備
選擇好設(shè)備后,可以在Packet Tracer中構(gòu)建如圖4所示的網(wǎng)絡(luò)拓?fù)洹?/p>
圖4 在Packet Tracer中構(gòu)建的智能家居網(wǎng)絡(luò)拓?fù)?/p>
系統(tǒng)物聯(lián)網(wǎng)絡(luò)拓?fù)錁?gòu)建完成后,學(xué)生需要完成關(guān)鍵網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備的參數(shù)配置和測(cè)試。首先要規(guī)劃與分配家居內(nèi)設(shè)備的IP地址,確定動(dòng)態(tài)分配和靜態(tài)分配的適用設(shè)備;然后要完成家居內(nèi)設(shè)備與外部設(shè)備的聯(lián)通,主要使用靜態(tài)分配方式,為家庭網(wǎng)關(guān)和路由器之間接口配置靜態(tài)地址;需要注意的是如果出口路由器有多條鏈路,還需配置路由。其配置方法與通常的網(wǎng)絡(luò)配置一樣,可以參考相關(guān)文獻(xiàn)[11-16],此處不再贅述。配置完成后就可使用ping命令逐段、逐網(wǎng)進(jìn)行設(shè)備聯(lián)通性測(cè)試,確保網(wǎng)絡(luò)傳輸正常。聯(lián)通性測(cè)試過(guò)程中,可下發(fā).pka文件指導(dǎo)學(xué)生自查,還可在Packet Tracer的模擬狀態(tài)下查看數(shù)據(jù)包傳輸和網(wǎng)絡(luò)事件的發(fā)生過(guò)程,以驗(yàn)證相關(guān)協(xié)議是否運(yùn)行正常。
智能物聯(lián)系統(tǒng)體現(xiàn)設(shè)備智慧能力的主要手段就是智能控制技術(shù),需要實(shí)現(xiàn)前面所述的智能控制功能時(shí)序。學(xué)生可依托Packet Tracer軟件,完成兩個(gè)方面的智能控制實(shí)驗(yàn):一是IoT設(shè)備智能控制參數(shù)配置;二是采用編程的方式實(shí)現(xiàn)智能控制。前一種采用現(xiàn)有的IoT中央控制的Web服務(wù)方式,使用圖形化界面配置IoT設(shè)備的智能控制參數(shù),方便簡(jiǎn)單。但是,若想實(shí)現(xiàn)更多的定制功能,需要采用第二種方式??梢砸髮W(xué)生根據(jù)功能需求和自身能力,選擇其中一個(gè)完成實(shí)驗(yàn)。
當(dāng)采用IoT設(shè)備智能控制參數(shù)配置的方式實(shí)現(xiàn)物聯(lián)智能時(shí),需要完成IoT設(shè)備和IoT服務(wù)器兩側(cè)的配置。首先,打開(kāi)網(wǎng)絡(luò)服務(wù)器的IoT服務(wù),然后將IoT設(shè)備的IoT服務(wù)器配置成前述網(wǎng)絡(luò)服務(wù)器的IP地址,并設(shè)置用戶名和密碼(可在客戶端第一次登錄IoT服務(wù)器時(shí)配置),連接成功后即可完成注冊(cè)。最后,在客戶端(如手機(jī)、PC、筆記本電腦)的瀏覽器中,輸入IoT服務(wù)器網(wǎng)址,打開(kāi)網(wǎng)頁(yè)后登錄,就可看到注冊(cè)到IoT服務(wù)器上進(jìn)行統(tǒng)一管理的IoT設(shè)備,在每個(gè)IoT設(shè)備的“Conditions”功能中,可根據(jù)需要實(shí)現(xiàn)智能家居設(shè)備的自動(dòng)控制,如圖5所示。
圖5 智能家居設(shè)備在IoT服務(wù)器上的統(tǒng)一管理控制
采用編程的方式實(shí)現(xiàn)智能控制更為復(fù)雜,但可獲得更多定制化的智能控制功能。這種智能控制有兩種方式實(shí)現(xiàn):一是服務(wù)器集中控制[11];二是IoT設(shè)備間本地控制。學(xué)生要通過(guò)實(shí)驗(yàn)體會(huì)這兩種編程方式的區(qū)別。服務(wù)器集中控制方式主要采用客戶/服務(wù)器編程模型,具有數(shù)據(jù)采集能力的IoT設(shè)備作為客戶端將自己的狀態(tài)數(shù)據(jù)上傳給作為服務(wù)器的IoT服務(wù),IoT服務(wù)收集到諸多IoT設(shè)備的數(shù)據(jù)后,根據(jù)用戶需求確定智能控制模型,向具有動(dòng)作執(zhí)行能力的IoT設(shè)備發(fā)送控制數(shù)據(jù),完成相關(guān)控制動(dòng)作。這種控制方式需要相關(guān)協(xié)議支持,可以基于TCP或UDP協(xié)議進(jìn)行傳輸層上的數(shù)據(jù)傳輸,也可以采用HTTP或消息隊(duì)列遙測(cè)傳輸(Message Queuing Telemetry Transport,MQTT)協(xié)議完成應(yīng)用層上的即時(shí)通信[10]。IoT設(shè)備間本地控制需要SBC或MCU作為控制單元,控制單元通過(guò)引腳連接IoT設(shè)備并在需要時(shí)讀取數(shù)據(jù),或者向執(zhí)行IoT設(shè)備發(fā)送控制動(dòng)作數(shù)據(jù)。
智能物聯(lián)系統(tǒng)是一種復(fù)雜的高技術(shù)信息系統(tǒng),需要綜合性實(shí)驗(yàn)才能培養(yǎng)學(xué)生全方位的系統(tǒng)規(guī)劃構(gòu)建能力。本文設(shè)計(jì)的智能家居物聯(lián)仿真實(shí)驗(yàn)與真實(shí)的智能物聯(lián)系統(tǒng)開(kāi)發(fā)建設(shè)過(guò)程深度融合,可以綜合地訓(xùn)練學(xué)生需求工程、架構(gòu)設(shè)計(jì)、統(tǒng)一建模、編程開(kāi)發(fā)、網(wǎng)絡(luò)規(guī)劃等多門類信息學(xué)科專業(yè)知識(shí)能力,實(shí)現(xiàn)知識(shí)素質(zhì)向能力經(jīng)驗(yàn)的升華。
物聯(lián)網(wǎng)技術(shù)2023年11期