董淑華,李 勇,方朝曦,范 恩
(紹興文理學(xué)院 機(jī)械與電氣工程學(xué)院,浙江 紹興 312000)
隨著經(jīng)濟(jì)的發(fā)展,城市垃圾量快速增加,垃圾處理已成為城市環(huán)境綜合整治中的緊迫問(wèn)題。一般城市里居民小區(qū)都設(shè)有多個(gè)大型垃圾桶,垃圾清運(yùn)大多采用固定時(shí)間固定路線(xiàn)清運(yùn)方式,經(jīng)常發(fā)生垃圾桶溢滿(mǎn)現(xiàn)象。垃圾一旦溢出,會(huì)影響小區(qū)環(huán)境,也會(huì)增加環(huán)衛(wèi)工人的工作量。為此迫切需要利用信息技術(shù)實(shí)現(xiàn)小區(qū)內(nèi)垃圾桶狀態(tài)監(jiān)測(cè),提高環(huán)衛(wèi)工作效率[1-7]。
目前已有一些研究人員利用各種物聯(lián)網(wǎng)技術(shù)進(jìn)行了智能垃圾桶系統(tǒng)設(shè)計(jì)的初步嘗試。例如李琳等人[8]設(shè)計(jì)了能實(shí)時(shí)檢測(cè)垃圾桶滿(mǎn)并反饋到APP端的智能垃圾桶系統(tǒng),還實(shí)現(xiàn)了定位功能;陳志偉等人[9]設(shè)計(jì)了一款能實(shí)現(xiàn)垃圾分類(lèi)、自動(dòng)開(kāi)蓋、可移動(dòng)的智能垃圾桶系統(tǒng),適合居家使用;郭昌鑫等人[10]設(shè)計(jì)了一款能感應(yīng)到人體后自動(dòng)開(kāi)蓋、檢測(cè)垃圾桶是否裝滿(mǎn)、利用蜂鳴器進(jìn)行報(bào)警的系統(tǒng),同樣僅適合于家居環(huán)境。目前尚未有針對(duì)小區(qū)場(chǎng)景下同時(shí)對(duì)多個(gè)垃圾桶進(jìn)行狀態(tài)監(jiān)測(cè)的系統(tǒng)。
本系統(tǒng)以CC2530系列單片機(jī)作為微控制器,配合超聲波測(cè)距傳感器、人體紅外傳感器、步進(jìn)電機(jī)等硬件,實(shí)現(xiàn)有人靠近自動(dòng)開(kāi)蓋并關(guān)蓋,桶滿(mǎn)反饋并緊閉垃圾桶的功能。本系統(tǒng)采用模塊化設(shè)計(jì),開(kāi)發(fā)成本低,實(shí)用性高。與已有的設(shè)計(jì)相比,本系統(tǒng)適用于小區(qū)環(huán)境,具有安裝簡(jiǎn)單、使用方便的特點(diǎn),能夠幫助改善小區(qū)居住環(huán)境。
本系統(tǒng)將垃圾桶滿(mǎn)的信息實(shí)時(shí)反饋給工作人員,工作人員收到信息,下發(fā)命令開(kāi)蓋進(jìn)行清理,以此達(dá)到環(huán)境保護(hù)、提高工作效率的目標(biāo);實(shí)時(shí)監(jiān)測(cè)是否有人靠近,有人靠近自動(dòng)開(kāi)蓋,再自動(dòng)關(guān)閉,避免了因接觸引起的細(xì)菌傳播。系統(tǒng)總體流程如下:
(1)超聲波測(cè)距傳感器和人體紅外傳感器接收協(xié)調(diào)器發(fā)來(lái)的指令信息進(jìn)行采集;
(2)人體紅外傳感器每隔一定時(shí)間檢測(cè)是否有人靠近,有人就直接發(fā)送命令給步進(jìn)電機(jī),帶動(dòng)垃圾桶蓋打開(kāi),垃圾丟放完畢后垃圾桶蓋自動(dòng)關(guān)閉;
(3)超聲波測(cè)距傳感器每隔一定時(shí)間對(duì)垃圾是否已滿(mǎn)進(jìn)行檢測(cè),如果已滿(mǎn),就將狀態(tài)信息發(fā)送給協(xié)調(diào)器,由協(xié)調(diào)器輸出到串口,并向步進(jìn)電機(jī)發(fā)送“常關(guān)”的命令,這時(shí)即使有人靠近也不會(huì)打開(kāi)垃圾桶;
(4)編寫(xiě)Python上位機(jī)程序不斷獲取串口信息,發(fā)送到OneNET云平臺(tái)上,在云平臺(tái)上設(shè)計(jì)可視化操作界面,如果有垃圾滿(mǎn)的消息,就會(huì)有警報(bào)信息,通知工作人員,工作人員就可以通過(guò)云端實(shí)時(shí)獲取信息并調(diào)度工作人員進(jìn)行清理;工作人員發(fā)送關(guān)閉指令關(guān)閉垃圾桶。
系統(tǒng)總體結(jié)構(gòu)如圖 1所示。
圖1 系統(tǒng)總體模型
本系統(tǒng)可分為人體感應(yīng)模塊、超聲波測(cè)距模塊、步進(jìn)電機(jī)運(yùn)作模塊、ZigBee協(xié)調(diào)器模塊和云平臺(tái)設(shè)計(jì)模塊。ZigBee協(xié)調(diào)器模塊主要負(fù)責(zé)接收上位機(jī)串口指令并發(fā)送指令給ZigBee終端節(jié)點(diǎn),ZigBee具有成本低、功耗低等特點(diǎn),適合進(jìn)行長(zhǎng)期監(jiān)測(cè)和數(shù)據(jù)傳輸;人體感應(yīng)模塊、超聲波測(cè)距模塊、步進(jìn)電機(jī)運(yùn)作模塊設(shè)計(jì)在終端節(jié)點(diǎn)上,負(fù)責(zé)接收不同信息并作不同的處理;云平臺(tái)主要負(fù)責(zé)顯示狀態(tài)信息并下發(fā)指令。
本系統(tǒng)使用的HC-SR501人體感應(yīng)傳感器,是基于紅外線(xiàn)技術(shù)的自動(dòng)控制模塊,被廣泛應(yīng)用于各類(lèi)自動(dòng)感應(yīng)電器設(shè)備。人體紅外傳感器檢測(cè)到有人體活動(dòng)時(shí),其輸出的I/O值發(fā)生變化。當(dāng)傳感器模塊檢測(cè)到有人靠近時(shí),會(huì)返回一個(gè)高電平信號(hào);無(wú)人靠近時(shí),返回一個(gè)低電平信號(hào),通過(guò)檢測(cè)I/O口電平狀態(tài)的變化,可判斷是否檢測(cè)到周?chē)腥丝拷?。本系統(tǒng)每隔一定時(shí)間通過(guò)人體紅外傳感器檢測(cè)是否有人靠近,有人就直接發(fā)送命令給步進(jìn)電機(jī),帶動(dòng)垃圾桶蓋打開(kāi)。
SRF05超聲波測(cè)距傳感器可以提供2~450 cm的非接觸式距離感測(cè)功能,傳感器采用I/O口TRIG觸發(fā)測(cè)距,給至少10 μs的高電平信號(hào),模塊自動(dòng)發(fā)送8個(gè)40 kHz的方波,自動(dòng)檢測(cè)是否有信號(hào)返回;有信號(hào)返回時(shí),通過(guò)I/O口Echo輸出一個(gè)高電平,高電平持續(xù)的時(shí)間就是超聲波從發(fā)射到返回的時(shí)間。測(cè)試距離=(高電平時(shí)間×聲速)/2,聲速為340 m/s。
假設(shè)垃圾桶的寬度為50 cm,超聲波測(cè)距傳感器放在垃圾桶靠上方桶壁,每隔一定時(shí)間檢測(cè)垃圾是否已滿(mǎn),如果檢測(cè)到距離小于一定閾值就說(shuō)明垃圾已滿(mǎn),就將該信息發(fā)送給協(xié)調(diào)器,由協(xié)調(diào)器輸出到串口,并向步進(jìn)電機(jī)發(fā)送“常關(guān)”的命令,即使有人靠近也不會(huì)打開(kāi)垃圾桶。模塊流程如圖2所示。
圖2 超聲波測(cè)距模塊流程
步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成相應(yīng)角位移或線(xiàn)位移的電動(dòng)機(jī)。每輸入一個(gè)脈沖信號(hào),轉(zhuǎn)子就轉(zhuǎn)動(dòng)一個(gè)角度或前進(jìn)一步,其輸出的角位移或線(xiàn)位移與輸入的脈沖數(shù)成正比,轉(zhuǎn)速與脈沖頻率成正比。
本系統(tǒng)步進(jìn)電機(jī)功能如下:
(1)收到“ADMIN_OPEN”命令,說(shuō)明工作人員在進(jìn)行操作,正常打開(kāi)垃圾桶即可;
(2)收到“ADMIN_CLOSE”命令,說(shuō)明工作人員在進(jìn)行操作,正常關(guān)閉垃圾桶即可;
(3)收到“OPEN”命令,說(shuō)明有人靠近,就將垃圾桶打開(kāi),過(guò)2 s再自動(dòng)關(guān)閉;
(4)收到“CLOSE”命令,說(shuō)明垃圾桶滿(mǎn),使垃圾桶維持關(guān)閉的現(xiàn)狀,即使有人靠近也不會(huì)打開(kāi)垃圾桶。
步進(jìn)電機(jī)運(yùn)作模塊流程如圖3所示。
圖3 步進(jìn)電機(jī)運(yùn)作模塊流程
ZigBee協(xié)調(diào)器是數(shù)據(jù)采集和命令下發(fā)的橋梁,能夠?qū)崿F(xiàn)終端節(jié)點(diǎn)與上位機(jī)的數(shù)據(jù)傳輸。它具有較強(qiáng)的通信能力、處理能力和發(fā)射能力。如圖4所示為協(xié)調(diào)器流程。
圖4 ZigBee協(xié)調(diào)器模塊流程
設(shè)計(jì)云平臺(tái)主要是出于可視化和易操作的目的,便于工作人員監(jiān)控和操作。本系統(tǒng)采用中國(guó)移動(dòng)OneNET平臺(tái)進(jìn)行設(shè)計(jì)。OneNET實(shí)現(xiàn)傳感器設(shè)備的數(shù)據(jù)獲取、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)展現(xiàn)。設(shè)備接入?yún)f(xié)議使用MQTT協(xié)議,MQTT協(xié)議是一種消息隊(duì)列傳輸協(xié)議,采用訂閱、發(fā)布機(jī)制,訂閱者只接收自己已經(jīng)訂閱的數(shù)據(jù),非訂閱數(shù)據(jù)則不接收,既保證了必要的數(shù)據(jù)交換,又避免了無(wú)效數(shù)據(jù)造成的儲(chǔ)存與處理負(fù)擔(dān)。
測(cè)試可分為四個(gè)步驟:(1)模擬工作人員打開(kāi)/關(guān)閉垃圾桶,點(diǎn)擊“打開(kāi)垃圾桶”按鈕則電機(jī)正向轉(zhuǎn)動(dòng),點(diǎn)擊“關(guān)閉垃圾桶”按鈕,電機(jī)則會(huì)反向轉(zhuǎn)動(dòng);(2)模擬垃圾桶滿(mǎn)發(fā)送消息及報(bào)警,打開(kāi)超聲波測(cè)距傳感器,模擬垃圾桶滿(mǎn)的場(chǎng)景,將垃圾桶滿(mǎn)的信息展示在云端,如圖5所示;(3)模擬有人靠近并打開(kāi)垃圾桶,模擬有人靠近人體紅外傳感器,電機(jī)正向轉(zhuǎn)動(dòng),打開(kāi)垃圾桶,經(jīng)過(guò)2 s,電機(jī)反轉(zhuǎn),垃圾桶自動(dòng)關(guān)閉;(4)模擬垃圾桶滿(mǎn)且有人靠近,遮住人體紅外傳感器和超聲波測(cè)距傳感器來(lái)模擬垃圾桶滿(mǎn)且有人靠近場(chǎng)景,步進(jìn)電機(jī)不轉(zhuǎn)動(dòng);只遮住人體紅外傳感器模擬有人靠近情況,步進(jìn)電機(jī)轉(zhuǎn)動(dòng)。
圖5 云平臺(tái)智能垃圾桶狀態(tài)展示
本系統(tǒng)設(shè)計(jì)的手機(jī)端數(shù)據(jù)可視化界面如圖6所示。頂部懸浮球可實(shí)時(shí)顯示垃圾桶是否已滿(mǎn)的情況,如不滿(mǎn)則顯示“真好!”,如果滿(mǎn)則顯示“警報(bào)!”,以提醒工作人員及時(shí)清理。下方“打開(kāi)垃圾桶”按鈕可打開(kāi)垃圾桶和關(guān)閉垃圾桶?!伴_(kāi)啟人體紅外檢測(cè)”和“開(kāi)啟超聲測(cè)距檢測(cè)”按鈕則可將對(duì)應(yīng)傳感器打開(kāi)或關(guān)閉。
圖6 手機(jī)端可視化界面
本系統(tǒng)主要實(shí)現(xiàn)了垃圾桶自動(dòng)開(kāi)蓋、測(cè)滿(mǎn)、反饋的功能,通過(guò)傳感器獲取數(shù)據(jù),經(jīng)過(guò)串口將數(shù)據(jù)上傳到云平臺(tái),在云平臺(tái)上進(jìn)行反饋和命令的下發(fā),設(shè)計(jì)并實(shí)現(xiàn)了人靠近自動(dòng)開(kāi)蓋、垃圾桶滿(mǎn)實(shí)時(shí)向工作人員反饋且即使有人靠近也不會(huì)開(kāi)蓋的功能,提高了工作效率,有助于改善城市小區(qū)環(huán)境。