楊晨 李偉
摘要:基于 Arduino開發板,主要對智能垃圾桶的“行走模塊”“紅外感應自動開蓋模塊”和“自動封口模塊”進行設計。該設計涉及到單片機和部分傳感器的基本原理及應用,不僅可以實現通過紅外感應動作的“自動開蓋”功能,而且可以實現“多個地點召喚”和“自動封口”的功能。該設計可以實現在特定路線和紅外遙控的輔助之下到達預定地點,并且可以完成“收垃圾”的工作,這是一次將智能垃圾桶、智能小車和封口機三者結合的設計,使智能垃圾桶具有功能多、應用廣等特點。
關鍵詞: Arduino;智能垃圾桶;傳感器;封口機
中圖分類號:TP23文獻標志碼:A文章編號:1009-9492(2021)11-0179-04
Design of Intelligent Trash Can Based on Arduino Development Board
Yang Chen ,Li Wei
(Zhengzhou University of Science and Technology, Zhengzhou 450064, China)
Abstract: Based on Arduino development board, the walking module, infrared sensing automatic opening module and automatic sealing module of intelligent trash can were designed. The design involves the basic principle and application of single chip microcomputer and some sensors, which can not only realize the "automatic opening" function through infrared induction action, but also realize the functions of "calling multiple places" and "automatic sealing". The design can reach the predetermined place with the help of specific route and infrared remote control, and can complete the work of "garbage collection". It is a design that combines intelligent garbage can, intelligent car and sealing machine, so that the intelligent garbage can has the characteristics of multi-function and wide application.
Key words: Arduino; intelligent trash can; sensor; sealer
0 引言
現如今人們的生活水平不斷提高,對生活質量有了新的需求。人們開始對自身及周圍的環境衛生有了更高的要求,從人們自身生活的角度考慮,垃圾桶是不可或缺的存在[1]。但是,生活中的普通垃圾桶也存在著很多的弊端,比如異味溢出、細菌傳播等[2]。由此可看出,垃圾桶其實是有著很大的改進空間,如今又是“智能化”時代,所以有了在現有的基礎之上[3],對還未普及的智能垃圾桶進行一次創新設計。首先,對于“異味溢出”這一問題,應從垃圾桶的結構角度考慮,其解決方案:第一,對其結構的密封性進行優化;第二,減少垃圾桶開蓋時間和次數。再者,對于“細菌傳播”這一問題,應從人們與垃圾袋的接觸次數的角度考慮,其解決方案:實現自動封口功能,在垃圾桶開蓋之前完成垃圾桶的封口[4]。最后,在一些像家庭、辦公室一樣的公共場所,如果每個地點都要放一個垃圾桶,那么垃圾的存儲量會變大只會加快細菌的傳播。所以,針對這一問題,決定用“多地點召喚”這一功能的實現來解決,只需一個公共垃圾桶。用這3個功能,能夠解決現實生活中大部分垃圾桶存在的問題。為了實現這3個功能,需要將垃圾桶的主要部分分為3個模塊——行走模塊、垃圾桶自動開蓋模塊和自動封口模塊。在實現這3大模塊的同時,還需要將這3個模塊相結合,融入現實生活之中。
1 智能垃圾桶整體結構設計
(1) 底盤和側板
智能垃圾桶的行走機構選用的是兩驅動機構,即 2個主動輪、1個萬向輪作為從動輪。底盤是整個行走機構的核心,幾乎所有的重要硬件都固定在底盤上,所以在設計底盤的過程中,安裝孔的位置設計是很重要的。這時需要主要硬件的三維建模,在設計過程中,主要是底盤的草圖繪制。底盤的總體尺寸設計為:長×寬×高=230 mm×230 mm×4 mm 。在底盤上需要安裝直流減速電機、Arduino mega2560 R3開發板、L298N 電機驅動模塊、船型開關、18650鋰電池組(12 V)、紅外巡線傳感器、超聲波傳感器和直徑為6 mm的銅柱,其中還需要留出直流減速電機與 L298N驅動芯片、紅外巡線傳感器與 Arduino mega2560 R3開發板連線的孔,除此之外,為了之后其他沒有被考慮到的硬件,留出2個寬度為3 mm的槽[5]。為了防止在制作過程中誤差的影響,將所有孔和槽的尺寸加上2 mm。
(2)“自動開蓋”模塊
這一模塊的結構設計主要是將舵機、智能垃圾桶上蓋與后板連在一起的結構設計。其中,需要用到舵機附帶的擺臂,一個合頁。首先,第一個設計的連接件1(圖1) 是將舵機與智能垃圾桶上蓋連接起來的零件,第二個設計的連接件2(圖2)是將舵機與智能垃圾桶后板連接起來的零件。為了設計方便,選擇在裝配體內建立新零件(圖3)。
(3)“自動封口”模塊
第一,這一模塊采用絲桿與螺母之間的機械傳動方式,在實踐中發現打印的連接件用來連接步進電機輸出軸與絲桿、正反牙絲桿的連接剛度不夠,所以選用聯軸器連接步進電機輸出軸與絲桿,正反牙絲桿選用氬弧焊焊接[6]。
第二,本次設計的聯軸器還有另一個要求,就是尺寸應該盡量小,節省最大的空間。
第三,另一個需要設計的零件就是軸承端蓋(圖4)。在設計過程中,需要將軸承的尺寸、裝配位置相結合,為了消除制作時誤差的影響,應將該零件的圓孔尺寸加上0.2 mm ,還應注意這個軸承端蓋的固定孔的位置不要與智能垃圾桶的邊緣干涉。
第四,在裝配零件時發現,如果將42步進電機安裝在智能垃圾桶內,那么螺母的運動范圍將大大減少,大約在70 mm左右,那么智能垃圾桶的工作范圍將由原來的尺寸(長×寬=214 mm×214 mm)減少為現在的尺寸(長×寬=214 mm×140 mm),這樣設計是不合理的。因此,為了節省空間,只能將42步進電機安裝在智能垃圾桶的外側,即智能垃圾桶的左板上。
第五,行程開關的安裝位置很關鍵,決定整個系統的能否運行。因為其將隨著螺母的運動而運動,所以需要設計一個將螺母、行程開關與夾桿連接在一起的連接件3 (圖5),另一個連接件4(圖6)與此相似,不同的是在其上端連接的是可以觸發行程開關的螺栓,為了裝置的可調性[7],先連接一個直徑為5mm的螺母,再將螺栓裝配在上面。總體的結構如圖7所示。
2 三大模塊的系統設計
(1)“行走”模塊
智能垃圾桶在實現“多地點召喚”功能的方式與智能小車相似。用12 V 電池通過驅動芯片給直流電機、Ar- duino開發板供電。首先要實現智能垃圾桶的巡線可隨意到達目的地,因此用到紅外巡線傳感器來檢測智能垃圾桶所處的位置,然后給 Arduino開發板發送信號;在智能垃圾桶行走同時,會隨機遇到障礙物,因此需要超聲波傳感器通過測距給 Arduino 開發板發送信號[8],與此同時,Arduino開發板通過程序對每種情況的解決方案輸出控制信號,從而通過驅動芯片控制直流電機的轉速和方向[9]。以此可達到兩個目的:第一,通過特定的路線到達目的地;第二,在與障礙物一定的距離之內,智能垃圾桶停止行走一定的時間,以此達到避開障礙的目的。硬件清單,如表1所示。
(2)“自動開蓋”模塊
智能垃圾桶的系統是通過紅外避障傳感器檢測外界人的動作,對 Arduino mega 2560開發板輸入數字信號(1或0),信號為“0”時不工作;信號為“1”時,通過在單片機中編寫的程序被判斷為“有人正在扔垃圾”,此時所給的“對策”就是通過輸出模擬信號給伺服電機,使伺服電機轉動特定的角度,然后等待人將垃圾投入垃圾桶,在特定的時間之后關閉蓋子。硬件清單如表2所示。
(3)“自動封口”模塊
首先對于控制方面,選用了 Arduino mega2560 R3開發板控制步進電機,機械傳動方面選擇絲桿螺母的傳動。這一模塊總體的系統設計:當 Arduino mega2560 R3開發板接到指令之后,通過編寫程序給 Arduino mega2560 R3開發板特定的指令,開發板再給步進電機輸入特定的信號,步進電機會以特定的轉速轉動特定的圈數[10]。中間通過絲桿滑塊機械傳動將垃圾袋夾成一條直線,此時滑塊上的螺釘會觸碰到行程開關,步進電機停止轉動,電阻絲發熱,加熱2 s 之后,電阻絲停止加熱,步進電機反轉,并使滑塊復位。此時,智能垃圾桶的“半自動封口”完成。其中的難點是機械結構的設計、編程的邏輯思維。硬件清單如表3所示。
進行“自動開蓋”和“自動封口”功能,只有當智能垃圾桶的超聲波模塊檢測到人時智能垃圾桶停止,開啟“自動開蓋”功能;當智能垃圾桶到達預定地點時,開啟“自動開蓋”功能,完成之后,智能垃圾桶就會回到起點位置。
3 模擬路線設計及總體方案
(1) 模擬路線設計
為增強智能垃圾桶的適應性,需要包括所有的將來智能垃圾桶所遇到的狀況,其中包括多個左轉、多個右轉和多個十字路口的情況下不同的選擇[11]。以這樣的原則,設計了智能垃圾桶的模擬路線,“0號”位置即為起點,“1號”“2號”“3號”“4號”和“5號”位置是智能垃圾桶的預到達的各個地點,如圖8所示。
(2) 總體方案
本次設計選擇了紅外遙控的方式進行控制,遙控上的“1~5的按鍵”分別對應智能垃圾桶預到達的5個位置,當在預到達的地點按下相應的按鍵時,智能垃圾桶就會到達該位置。
總方案:第一,在起點(即0號位置)智能垃圾桶開啟“自動開蓋”和“自動封口”功能;第二,在“行走”過程中,不允許進行“自動開蓋”和“自動封口”功能,只有當智能垃圾桶的超聲波模塊檢測到人時智能垃圾桶停止,開啟“自動開蓋”功能;第三,當智能垃圾桶到達預定地點時,開啟“自動開蓋”功能,完成之后,智能垃圾桶就會回到起點位置。
4 程序調試和分析
在“行走”模塊中,為了使智能垃圾桶靈活地執行命令,采用通過 Arduino開發板模擬輸出引腳( PWM 值的范圍在0~255之間)控制直流電機的速度[12]。六路巡線的內容如表4所示。經過實驗驗證,垃圾桶能按照預設的位置準確到達各個地點。
5 結束語
本文主要對智能垃圾桶的3大模塊“行走模塊”、“紅外感應自動開蓋模塊”和“自動封口模塊”進行設計。此設計涉及到單片機和部分傳感器的基本原理了解及應用,不僅可以實現通過紅外感應動作的“自動開蓋”功能,而且可以實現“多個地點召喚”和“自動封口”的功能。該設計可以實現3個模塊的所有功能,并且可以將3個模塊結合起來。可以實現在特定路線和紅外遙控的輔助之下到達預定地點,并且可以完成“收垃圾”的工作。工作過程中可以通過紅外避障傳感器的“感應”,實現蓋子的“開和關”。在原點可以通過紅外遙控控制步進電機和絲桿機構實現垃圾袋的封口。經過現場模擬實驗,垃圾桶完成了預期的“自動開蓋”“多個地點召喚”和“自動封口”功能。
參考文獻:
[1]鞠海翔,樊東燕.公共場所智能垃圾桶系統的設計[J].山西電子技術,2017(6):28-31.
[2]宋楠,韓廣義.Arduino 開發從零開始學—學電子的都玩這個[M].北京:清華大學出版社,2014.
[3]姜磊.基于 ARM的嵌入式系統在無線視頻傳輸中的應用[D].哈爾濱:哈爾濱工業大學,2006.
[4]陳愛華, 韓利春.紅外感應翻蓋垃圾桶的驅動連接裝置:
CN201220831[P].2009-04-15.
[5]程晨.Arduino 電子設計實戰指南[M].北京:機械工業出版社.2013.
[6]陳呂洲.Arduino程序設計基礎[M].北京:北京航空航天大學出版社,2015.
[7]郭愛民.多功能垃圾箱[J].中小企業科技,2006(5):52-53.[8]湯俊良,黃國清.智能垃圾箱[J].無線電雜志,2004(11):12-14.
[9]周慧,許錦標.新型智能垃圾桶的設計方案[J].廣東工業大學學報,2006(3):85-94.
[10]白金婷,潘存云, 吳懋亮.三自由度智能零售柜的傳動設計與力學分析[J].機電工程,2019,36(11):1208-1211.
[11]汪元超.智能垃圾桶的發明及使用[J].科學咨詢(科技·管理), 2017(10):54-55.
[12]杜昕,赫向陽.基于攝像頭識別的主動接物垃圾桶設計[J].機電工程技術,2013,42(8):137-139.
第一作者簡介:楊晨(1983-),女,河南鄭州人,碩士,副教授,研究領域為機械自動化。 (編輯:刁少華)