◎湖南省邵陽(yáng)市第十六中學(xué) 周之童 周糧恒
為更好地監(jiān)測(cè)學(xué)生的體溫狀況,我們?cè)O(shè)計(jì)了一款校園巡邏遠(yuǎn)程監(jiān)控小車。
校園巡邏遠(yuǎn)程監(jiān)控小車主要包括Arduino主控器、循跡避障模塊、電機(jī)驅(qū)動(dòng)模塊、紅外測(cè)溫模塊、拍照遠(yuǎn)程監(jiān)測(cè)模塊、語(yǔ)音播報(bào)和電話通信模塊等,要實(shí)現(xiàn)的功能為:避開(kāi)障礙物;及時(shí)檢測(cè)體溫異常的人員。
系統(tǒng)總體結(jié)構(gòu)框架圖如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)框架圖
選取Arduino UNO R3板作為校園巡邏遠(yuǎn)程監(jiān)控小車的主控器。該主控器可對(duì)紅外循線傳感器、超聲波傳感器、紅外測(cè)溫傳感器檢測(cè)到的數(shù)據(jù)進(jìn)行采集與信息處理,進(jìn)而通過(guò)輸出PWM信號(hào)和控制各引腳的高低電平來(lái)實(shí)現(xiàn)小車的循跡避障、拍照上傳、語(yǔ)音播報(bào)和電話通信等功能。
選取ESP32-CAM模塊(如圖2)對(duì)校園體溫異常者進(jìn)行拍照并將照片上傳,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。該模塊的VCC引腳接主控板VCC引腳,GND引腳接主控板GND引腳,端口IO16連接主控板的端口3。
圖2 ESP32-CAM模塊
選取MLX90614系列紅外溫度計(jì)進(jìn)行校內(nèi)人員的非接觸式測(cè)溫。該模塊的GND引腳接地,VCC引腳接主控板5 V電源。SCL引腳為兩線通信協(xié)議的串行時(shí)鐘信號(hào),接主控板的端口A4。SDA引腳為數(shù)字信號(hào)輸入/輸出,正常模式下,該引腳以脈寬調(diào)制方式輸出被測(cè)量物體的溫度,接主控板的端口A5。
選取智能小車底板和兩個(gè)強(qiáng)磁碳刷減速電機(jī),并配以2個(gè)3.7 V的電池對(duì)電機(jī)進(jìn)行供電,實(shí)現(xiàn)電機(jī)的驅(qū)動(dòng)。Arduino主控器的5、6、9和10端口分別驅(qū)動(dòng)電機(jī)的左正轉(zhuǎn)、右正轉(zhuǎn)、左反轉(zhuǎn)和右反轉(zhuǎn)。
選取3個(gè)紅外循線傳感器和1個(gè)超聲波傳感器構(gòu)成小車的循跡避障模塊。Arduino主控器的7、8、11端口分別從左、中、右三個(gè)方向獲取3個(gè)紅外循線傳感器檢測(cè)到的數(shù)據(jù)。Arduino主控器的12、13端口連接超聲波傳感器的trig、echo引腳,通過(guò)小車與物體的距離判斷前方是否有障礙物。
選取BY8001-16P語(yǔ)音播報(bào)模塊進(jìn)行不同情形下的播報(bào)與警示,Arduino主控器的2、4端口連接語(yǔ)音播報(bào)模塊的IO1、IO2端口,分別控制第一段、第二段的語(yǔ)音播報(bào)。
選取GSM 通信模塊進(jìn)行電話語(yǔ)音通信,實(shí)現(xiàn)遠(yuǎn)程交流,主控器的0(RX)、1(TX)端口分別連接GSM通信模塊的TX、RX端口。
利用Mixly、Arduino IDE兩種軟件對(duì)校園巡邏遠(yuǎn)程監(jiān)控小車系統(tǒng)進(jìn)行設(shè)計(jì)。
首先對(duì)系統(tǒng)進(jìn)行初始化配置,各傳感器正常運(yùn)行,檢測(cè)周圍環(huán)境參數(shù),接著將傳感器檢測(cè)到的數(shù)據(jù)與設(shè)定閾值進(jìn)行比較,超出設(shè)定閾值則調(diào)用對(duì)應(yīng)子程序。子程序包括循跡避障語(yǔ)音播報(bào)提醒子程序、紅外測(cè)溫拍照語(yǔ)音播報(bào)電話通信子程序。
系統(tǒng)總程序流程圖如圖3所示。
循跡小車的運(yùn)動(dòng)狀態(tài)有左轉(zhuǎn)、直走、右轉(zhuǎn)、停止四種,而運(yùn)動(dòng)狀態(tài)的選取取決于3個(gè)紅外循線傳感器。紅外循線傳感器遇黑線時(shí)Arduino主控器輸入高電平,遇白線時(shí)輸入低電平。當(dāng)左邊或左邊與中間的紅外循線傳感器同時(shí)檢測(cè)到黑線時(shí),表示左輪胎壓線,此時(shí)應(yīng)該左轉(zhuǎn),反之右轉(zhuǎn)。只有當(dāng)中間的傳感器獨(dú)自檢測(cè)到黑線時(shí)才直走,這就是循跡算法。
當(dāng)超聲波傳感器檢測(cè)到的距離低于設(shè)定值時(shí),Arduino主控器的端口4輸出低電平,控制語(yǔ)音模塊進(jìn)行播報(bào)。循跡避障語(yǔ)音播報(bào)提醒子程序流程圖如圖4所示。
校園巡邏遠(yuǎn)程監(jiān)控小車在校園內(nèi)行駛時(shí),紅外測(cè)溫傳感器檢測(cè)到有人體溫超過(guò)設(shè)定閾值后,小車停車,Arduino主控板的端口3輸出低電平,以一個(gè)低電平信號(hào)為觸發(fā)源,進(jìn)行一次拍照。端口2輸出低電平,語(yǔ)音模塊進(jìn)行第二段語(yǔ)音播報(bào)。同時(shí),Arduino主控板與通信模塊進(jìn)行串行口通信,可撥打預(yù)設(shè)電話。紅外測(cè)溫拍照語(yǔ)音播報(bào)電話通信子程序流程圖如圖5所示。
圖5 紅外測(cè)溫拍照語(yǔ)音播報(bào)電話通信子程序流程圖
系統(tǒng)調(diào)試過(guò)程如下:將小車放入校園地圖跑道,小車運(yùn)行正常。當(dāng)前方10 cm處有障礙物時(shí),小車停止循跡,并播報(bào)語(yǔ)音:“請(qǐng)避開(kāi),讓我通行?!币欢螘r(shí)間后再次檢測(cè),無(wú)障礙物后繼續(xù)進(jìn)行校園循跡。當(dāng)校內(nèi)有溫度超過(guò)設(shè)定閾值的人員時(shí),小車停止循跡,并進(jìn)行語(yǔ)音播報(bào):“請(qǐng)站在原地,不要走動(dòng)?!盓SP32-CAM攝像頭能對(duì)體溫異常者拍照并將照片上傳,實(shí)現(xiàn)遠(yuǎn)程監(jiān)測(cè),GSM通信模塊能撥打校園護(hù)衛(wèi)隊(duì)相關(guān)責(zé)任人的電話,讓他們來(lái)進(jìn)行更加細(xì)致的鑒定。
搭建好的校園巡邏遠(yuǎn)程監(jiān)控小車如圖6所示。
圖6 校園巡邏遠(yuǎn)程監(jiān)控小車
本作品還可進(jìn)行如下改進(jìn):加裝PM2.5傳感器進(jìn)行空氣質(zhì)量檢測(cè);加裝有毒氣體傳感器,檢測(cè)校園內(nèi)是否存在有毒氣體;加裝煙霧傳感器和火焰?zhèn)鞲衅?,讓其成為校園安防的一部分;等等。
專家點(diǎn)評(píng)
周之童、周糧恒同學(xué)的“基于Arduino的校園巡邏遠(yuǎn)程監(jiān)控小車”是一個(gè)比較典型的創(chuàng)客作品。它體現(xiàn)了“創(chuàng)意—物化—分享”這一核心理念。這個(gè)作品的產(chǎn)生,對(duì)兩位同學(xué)的成長(zhǎng)無(wú)疑是很有幫助的。
兩位同學(xué)能把自己在課本上學(xué)到的知識(shí)與在社團(tuán)活動(dòng)中學(xué)到的知識(shí)結(jié)合運(yùn)用,來(lái)實(shí)現(xiàn)自己的基本構(gòu)想,敢想敢干,富有挑戰(zhàn)精神。
這里提兩點(diǎn)建議:其一,我們有了創(chuàng)意,在想把創(chuàng)意物化和分享之前,要多找找相關(guān)資料,了解一下當(dāng)前整個(gè)項(xiàng)目的發(fā)展水平。我們應(yīng)就自己的創(chuàng)意和能力,去設(shè)計(jì)解決新的問(wèn)題。其二,在項(xiàng)目報(bào)告中,兩位同學(xué)一定要說(shuō)明各自在這個(gè)項(xiàng)目中所做的工作。