李志涵,伯 磊,王雪蓓,路原野,馬一然
(中國(guó)礦業(yè)大學(xué)(北京) 機(jī)電與信息工程學(xué)院,北京 100083)
2020年新冠疫情爆發(fā),對(duì)全球社會(huì)造成了巨大的危害,靠社會(huì)基礎(chǔ)來實(shí)現(xiàn)的人類行為面臨著前所未有的沖擊和挑戰(zhàn)。經(jīng)過中央政府的堅(jiān)強(qiáng)領(lǐng)導(dǎo)、全國(guó)人民的不懈努力,目前我國(guó)在一定程度上已經(jīng)較好地遏制住了疫情的蔓延,但不可否認(rèn),我們依然將長(zhǎng)期處于疫情常態(tài)化的大環(huán)境下。
控制疫情最關(guān)鍵的一點(diǎn)在于如何減少人員聚集,而學(xué)校作為防控的關(guān)鍵一環(huán),其人員自由度大,可以在任意位置自由聚集,分布情況多呈現(xiàn)小范圍集中分布的特點(diǎn),這無疑不利于疫情的防控。因此獲取校園各關(guān)鍵場(chǎng)所人員密集程度,依據(jù)大數(shù)據(jù)挖掘生成直觀的可視化出行參考意見,對(duì)于校園防控智能化尤為重要。
基于上述理念,本文以STM32F429為主控芯片、以LoRa無線通信技術(shù)為物聯(lián)網(wǎng)通信基礎(chǔ)、以校園人流量數(shù)據(jù)和網(wǎng)絡(luò)疫情數(shù)據(jù)為監(jiān)控對(duì)象、以現(xiàn)場(chǎng)LCD顯示屏和云端HTML網(wǎng)頁(yè)為數(shù)據(jù)終端,設(shè)計(jì)并搭建了一款校園疫情監(jiān)控系統(tǒng)。
正常體溫下,人身會(huì)產(chǎn)生波長(zhǎng)9~10 μm的紅外線,通過熱釋電紅外傳感器的光學(xué)透鏡(又稱菲涅爾透鏡)增強(qiáng)后能聚集到紅外感應(yīng)源處,感應(yīng)源為熱釋電元件,傳感器電極選用元件的兩個(gè)表面,當(dāng)感受到紅外線匯聚產(chǎn)生的溫度變化后會(huì)造成電荷失衡,電荷由電極向外釋放擴(kuò)散,產(chǎn)生相關(guān)電平信號(hào),進(jìn)而觸發(fā)傳感器動(dòng)作。
如圖1所示,在監(jiān)測(cè)點(diǎn)前后間隔約1 m距離處分別放置人體紅外感應(yīng)模塊A和B,感應(yīng)模塊的延時(shí)時(shí)間設(shè)置為2~3 s,封鎖時(shí)間設(shè)置為0.5 s。
圖1 雙向檢測(cè)算法原理
當(dāng)行人進(jìn)入被監(jiān)測(cè)場(chǎng)所時(shí),感應(yīng)模塊A首先感應(yīng)到人體經(jīng)過,并釋放高電平信號(hào),此后行人經(jīng)過感應(yīng)模塊B時(shí),感應(yīng)模塊B發(fā)出高電平信號(hào);當(dāng)行人外出被監(jiān)測(cè)場(chǎng)所時(shí),感應(yīng)模塊B首先感應(yīng)到人體經(jīng)過,釋放高電平信號(hào),然后經(jīng)過感應(yīng)模塊A,釋放高電平信號(hào)。通過感應(yīng)模塊A、B輸出高電平信號(hào)的先后順序來判斷行人進(jìn)出被監(jiān)測(cè)場(chǎng)所的動(dòng)作,進(jìn)而獲得監(jiān)測(cè)時(shí)間段內(nèi)被監(jiān)測(cè)點(diǎn)的人流量信息和監(jiān)測(cè)建筑物的人員累積存量。采用以上雙向檢測(cè)算法能夠使監(jiān)測(cè)數(shù)據(jù)更加準(zhǔn)確,具體程序流程如圖2所示。
圖2 雙向檢測(cè)算法程序流程
遠(yuǎn)距離無線電(Long Range Radio,LoRa)是一種常用的局域網(wǎng)無線通信技術(shù),相較于其他無線通信技術(shù),LoRa的優(yōu)勢(shì)在于無線自組網(wǎng)方便且信道穩(wěn)定、覆蓋范圍大,可實(shí)現(xiàn)數(shù)千米范圍內(nèi)的無線通信,適用于較長(zhǎng)距離連續(xù)發(fā)送小型數(shù)據(jù)的場(chǎng)景,物聯(lián)網(wǎng)終端設(shè)備通常使用電池供電。通信范圍內(nèi)可設(shè)置上萬個(gè)LoRa節(jié)點(diǎn),充分改善信號(hào)接收的靈敏度、效率、損耗,眾多節(jié)點(diǎn)連接至LoRa集中器(又稱為L(zhǎng)oRa網(wǎng)關(guān)),能夠完成與網(wǎng)絡(luò)服務(wù)器的連接,實(shí)現(xiàn)數(shù)據(jù)互通。
LoRa通信包含終端節(jié)點(diǎn)、集中器和服務(wù)器三部分,各節(jié)點(diǎn)與集中器以星型拓?fù)浣Y(jié)構(gòu)連接,每個(gè)節(jié)點(diǎn)與集中器建立直接的信息通道進(jìn)行數(shù)據(jù)傳輸,LoRa集中器接收終端節(jié)點(diǎn)輸出的上行鏈路數(shù)據(jù),將各類數(shù)據(jù)匯聚到獨(dú)立的線程進(jìn)行通信連接,處理多路數(shù)據(jù)并發(fā)問題,實(shí)現(xiàn)數(shù)據(jù)匯總并通過互聯(lián)網(wǎng)/專網(wǎng)轉(zhuǎn)發(fā)至網(wǎng)絡(luò)服務(wù)器,由其完成數(shù)據(jù)的解析處理,最終完成數(shù)據(jù)應(yīng)用。通信過程中,各部分由TCP/IP協(xié)議完成通信連接,任意2個(gè)模塊之間均可實(shí)現(xiàn)雙向數(shù)據(jù)通信。
萬物互聯(lián)時(shí)代,大數(shù)據(jù)已經(jīng)深刻融入每個(gè)人的生活中,如何提取有效信息、充分發(fā)揮數(shù)據(jù)價(jià)值是信息科學(xué)技術(shù)的關(guān)鍵,數(shù)據(jù)可視化便是其中重要的應(yīng)用。其采用計(jì)算機(jī)技術(shù)將大數(shù)據(jù)以圖形或者圖像的形式顯示出來,包含數(shù)據(jù)展示、處理和分析等。
動(dòng)態(tài)性、交互性和多樣性為數(shù)據(jù)可視化設(shè)計(jì)應(yīng)遵循的三大原則。數(shù)據(jù)可視化界面具備動(dòng)態(tài)性,可以實(shí)時(shí)獲取數(shù)據(jù)并更新顯示;具備人機(jī)交互性,可通過人為操作實(shí)現(xiàn)各界面功能的展示以及界面之間的跳轉(zhuǎn);具備多樣性,可以實(shí)現(xiàn)多種不同種類數(shù)據(jù)、控件的同時(shí)展示。
多組搭載人體紅外感應(yīng)模塊的STM32F429主控芯片、LoRa節(jié)點(diǎn)和集中器組成的數(shù)據(jù)采集模塊可實(shí)時(shí)獲取校園各監(jiān)測(cè)點(diǎn)的人流量數(shù)據(jù)。由Python網(wǎng)絡(luò)爬蟲程序組成網(wǎng)絡(luò)疫情數(shù)據(jù)采集模塊,隨后搭建以LoRa無線通信技術(shù)為基礎(chǔ)、校園人流量數(shù)據(jù)和疫情數(shù)據(jù)為傳輸對(duì)象、網(wǎng)絡(luò)服務(wù)器為數(shù)據(jù)接收對(duì)象的校園物聯(lián)網(wǎng),獲取的數(shù)據(jù)由軟件驅(qū)動(dòng)程序清洗并存儲(chǔ)至數(shù)據(jù)庫(kù)中,供人機(jī)交互界面調(diào)用、分析,完成在現(xiàn)場(chǎng)LCD和云端HTML終端的展示,整體框架如圖3所示。
圖3 校園疫情監(jiān)控系統(tǒng)整體框架
4.2.1 人流量數(shù)據(jù)采集模塊
人流量數(shù)據(jù)采集模塊由多組STM32F429主控芯片、HCSR501人體紅外感應(yīng)模塊、LoRa節(jié)點(diǎn)模塊組成,能夠?qū)崿F(xiàn)校園人流量數(shù)據(jù)的采集和發(fā)送。數(shù)據(jù)采集使用雙向檢測(cè)算法,由主控芯片進(jìn)行計(jì)數(shù)并存儲(chǔ)數(shù)據(jù);數(shù)據(jù)發(fā)送通過串口輸出校園人流量數(shù)據(jù)并通過LoRa節(jié)點(diǎn)模塊發(fā)送至校園物聯(lián)網(wǎng),結(jié)構(gòu)如圖4所示。
圖4 人流量數(shù)據(jù)采集模塊結(jié)構(gòu)
4.2.2 網(wǎng)絡(luò)疫情數(shù)據(jù)采集模塊
網(wǎng)絡(luò)疫情數(shù)據(jù)采集模塊由網(wǎng)絡(luò)爬蟲程序和TCP客戶端程序組成,網(wǎng)絡(luò)爬蟲程序獲取疫情數(shù)據(jù),并通過TCP客戶端程序發(fā)送至校園物聯(lián)網(wǎng)。
4.2.3 校園物聯(lián)網(wǎng)
校園物聯(lián)網(wǎng)圍繞LoRa無線通信技術(shù)組建,由LoRa集中器、網(wǎng)絡(luò)服務(wù)器和數(shù)據(jù)庫(kù)組成,數(shù)據(jù)的傳輸、清洗與存儲(chǔ)將在物聯(lián)網(wǎng)中實(shí)現(xiàn)。LoRa集中器接收的人流量數(shù)據(jù)被發(fā)送至網(wǎng)絡(luò)服務(wù)器,同時(shí)服務(wù)器本身接收網(wǎng)絡(luò)疫情數(shù)據(jù),各類數(shù)據(jù)由軟件清洗后存儲(chǔ)至數(shù)據(jù)庫(kù),隨著監(jiān)控的進(jìn)行實(shí)時(shí)完成更新,供數(shù)據(jù)可視化界面調(diào)用、分析。校園物聯(lián)網(wǎng)模型如圖5所示。
圖5 校園物聯(lián)網(wǎng)模型
4.2.4 數(shù)據(jù)可視化模塊
數(shù)據(jù)可視化模塊由現(xiàn)場(chǎng)LCD終端和云端HTML終端組成,前者基于emWin進(jìn)行可視化界面設(shè)計(jì),后者基于HTML語言設(shè)計(jì),負(fù)責(zé)實(shí)時(shí)調(diào)用數(shù)據(jù)庫(kù)中的數(shù)據(jù)并在可視化界面上展示,實(shí)現(xiàn)對(duì)校園人流量數(shù)據(jù)和疫情數(shù)據(jù)的監(jiān)控。
選用HC-SR501人體紅外感應(yīng)模塊作為校園疫情監(jiān)控系統(tǒng)的信號(hào)發(fā)生與采集器,該模塊基于熱釋電紅外傳感器原理進(jìn)行人體感應(yīng),在檢測(cè)到人體經(jīng)過時(shí)釋放高電平,觸發(fā)方式分為不可重復(fù)和可重復(fù)觸發(fā)兩種,前者感應(yīng)到釋放高電平后,自動(dòng)延時(shí)恢復(fù)低電平輸出;后者在人體經(jīng)過時(shí)會(huì)持續(xù)釋放高電平,直至人體離開后延時(shí)恢復(fù)低電平輸出。
考慮校園局部人流量的密集趨勢(shì),選取教學(xué)樓、圖書館、食堂和逸夫樓實(shí)驗(yàn)樓4個(gè)監(jiān)測(cè)點(diǎn),感應(yīng)模塊的觸發(fā)方式選用可重復(fù)觸發(fā)方式。
考慮到當(dāng)下國(guó)內(nèi)整體疫情形勢(shì)穩(wěn)定,當(dāng)前階段本地和國(guó)外的疫情信息會(huì)被著重關(guān)注,因此在獲取國(guó)內(nèi)疫情數(shù)據(jù)的同時(shí),增加了新聞信息、本地各地區(qū)的疫情數(shù)據(jù)以及國(guó)外疫情數(shù)據(jù)和重點(diǎn)國(guó)家疫情數(shù)據(jù)。數(shù)據(jù)源選用騰訊新聞,數(shù)據(jù)獲取通過Python網(wǎng)絡(luò)爬蟲程序?qū)崿F(xiàn),運(yùn)用Request庫(kù)和Beautifulsoup庫(kù)調(diào)用API接口,獲取源數(shù)據(jù)。
校園物聯(lián)網(wǎng)中的數(shù)據(jù)包含校園人流量數(shù)據(jù)和網(wǎng)絡(luò)疫情數(shù)據(jù),校園人流量數(shù)據(jù)經(jīng)LoRa集中器打包后以字符串的方式發(fā)送,網(wǎng)絡(luò)疫情源數(shù)據(jù)通常以字典和列表的嵌套組合形式存儲(chǔ)于網(wǎng)頁(yè)中。數(shù)據(jù)的接收、清洗與存儲(chǔ)均由Python程序?qū)崿F(xiàn),如圖6所示。
圖6 數(shù)據(jù)接收、清洗與存儲(chǔ)程序流程
校園人流量數(shù)據(jù)包含當(dāng)前時(shí)間進(jìn)出總?cè)藬?shù)、可容納人數(shù)、人員累積存量和當(dāng)前可進(jìn)入人數(shù);網(wǎng)絡(luò)疫情數(shù)據(jù)包括國(guó)內(nèi)外疫情數(shù)據(jù)、新聞信息數(shù)據(jù)和本地疫情數(shù)據(jù),使用Request庫(kù)和Beautifulsoup庫(kù)獲取源數(shù)據(jù),運(yùn)用JSON和RE正則表達(dá)式解析數(shù)據(jù),并新建字典類型數(shù)據(jù)。
建立的字典類型數(shù)據(jù)經(jīng)過處理后生成二維標(biāo)簽數(shù)據(jù),存儲(chǔ)至數(shù)據(jù)庫(kù)。
依據(jù)監(jiān)控原則,本文設(shè)計(jì)現(xiàn)場(chǎng)LCD和云端HTML 2個(gè)展示終端,并完成校園人流量數(shù)據(jù)中的場(chǎng)所可容納人數(shù)、監(jiān)測(cè)時(shí)間段進(jìn)出人數(shù)、當(dāng)前人員累積存量、當(dāng)前可進(jìn)入人數(shù)和網(wǎng)絡(luò)疫情數(shù)據(jù)中的國(guó)內(nèi)外疫情、北京各地區(qū)疫情數(shù)據(jù)、新聞數(shù)據(jù)等的可視化操作。
5.4.1 現(xiàn)場(chǎng)LCD終端界面
現(xiàn)場(chǎng)LCD終端界面可實(shí)現(xiàn)對(duì)校園人流量數(shù)據(jù)的監(jiān)控以及本地各區(qū)現(xiàn)有病例的展示,由系統(tǒng)界面、校園人流量數(shù)據(jù)界面和本地疫情數(shù)據(jù)監(jiān)控界面構(gòu)成。
系統(tǒng)界面展示校園疫情監(jiān)控系統(tǒng)的基本信息,并設(shè)置2個(gè)跳轉(zhuǎn)界面功能控件,可跳轉(zhuǎn)至校園人流量數(shù)據(jù)和本地疫情數(shù)據(jù)監(jiān)控界面,如圖7所示。
圖7 系統(tǒng)界面
校園人流量數(shù)據(jù)界面實(shí)時(shí)監(jiān)測(cè)各監(jiān)測(cè)點(diǎn)進(jìn)出人數(shù)并計(jì)算人員累積存量,與可容納人數(shù)對(duì)比,提供當(dāng)前監(jiān)測(cè)點(diǎn)擁擠情況,并將不同的擁堵情況用不同的顏色加以區(qū)分,綠色為通暢,紅色為擁堵。校園人流量數(shù)據(jù)界面如圖8所示。
圖8 校園人流量數(shù)據(jù)界面
本地疫情數(shù)據(jù)監(jiān)控界面展示本地各區(qū)的現(xiàn)有確診人數(shù),在北京市地圖上各區(qū)對(duì)應(yīng)位置顯示,實(shí)現(xiàn)疫情數(shù)據(jù)的動(dòng)態(tài)展示。本地疫情數(shù)據(jù)監(jiān)控界面如圖9所示。
圖9 本地疫情數(shù)據(jù)監(jiān)控界面
5.4.2 云端HTML終端界面
云端HTML終端界面可實(shí)現(xiàn)對(duì)國(guó)內(nèi)外疫情數(shù)據(jù)、校園人流量數(shù)據(jù)的監(jiān)控分析以及疫情新聞的展示,主要由主界面、校園人流量數(shù)據(jù)界面和新聞信息界面構(gòu)成。
主界面展示國(guó)內(nèi)外疫情數(shù)據(jù),其中,國(guó)內(nèi)當(dāng)日新增確診人數(shù)和現(xiàn)有確診人數(shù)以數(shù)字形式呈現(xiàn),國(guó)內(nèi)外近期確診人數(shù)和新增確診人數(shù)分別以柱狀圖和折線圖的形式呈現(xiàn),國(guó)內(nèi)各類型人員統(tǒng)計(jì)和部分國(guó)家確診人數(shù)以餅形圖的形式呈現(xiàn),實(shí)現(xiàn)了對(duì)數(shù)據(jù)的分析對(duì)比,實(shí)時(shí)展示疫情數(shù)據(jù)。疫情數(shù)據(jù)監(jiān)控界面如圖10所示。
圖10 疫情數(shù)據(jù)監(jiān)控界面
校園人流量數(shù)據(jù)界面將各場(chǎng)所的當(dāng)前累積人數(shù)和可進(jìn)入人數(shù)以進(jìn)度條的形式展示,實(shí)現(xiàn)兩數(shù)據(jù)的視覺對(duì)比,更加直觀,如圖11所示。
圖11 校園人流量數(shù)據(jù)界面
新聞信息界面展示國(guó)內(nèi)新聞信息,將各新聞的標(biāo)題附加在彩色圓形圖案上,能夠方便用戶實(shí)時(shí)快速地了解全國(guó)疫情信息。新聞信息展示界面如圖12所示。
圖12 新聞信息展示界面
本文基于物聯(lián)網(wǎng)技術(shù),以STM32主控芯片搭配HCSR501人體紅外感應(yīng)模塊定點(diǎn)、定時(shí)采集人流量數(shù)據(jù),搭建了以LoRa無線通信技術(shù)為基礎(chǔ)的校園物聯(lián)網(wǎng),通過對(duì)相關(guān)互聯(lián)網(wǎng)輿情信息快速爬取、分析、存儲(chǔ),將校園人流量數(shù)據(jù)和網(wǎng)絡(luò)爬蟲得到的疫情數(shù)據(jù)從后臺(tái)傳輸至終端,形成具備人機(jī)交互界面的校園疫情監(jiān)控系統(tǒng)。并可以通過改變監(jiān)控場(chǎng)景快速適配新的疫情防控環(huán)境。經(jīng)過試驗(yàn),該系統(tǒng)可實(shí)現(xiàn)對(duì)被監(jiān)測(cè)場(chǎng)所人流量數(shù)據(jù)的正確統(tǒng)計(jì)和實(shí)時(shí)監(jiān)控,采集的數(shù)據(jù)也能夠準(zhǔn)確通過物聯(lián)網(wǎng)傳輸,并在終端界面展示。