DIY自動販賣獎勵機

十一月 20, 2017
Facebook
Twitter
看這位老師如何製作出取代獎勵卡的零食販賣機與兌幣機
文、圖:黃信惠
我在學校教授Arduino以及Maker相關課程,同時又兼任班導師。在這之前我都是以發「獎勵卡」的方式來鼓勵同學,學生拿到獎勵卡後,可以跟我兌換零食。但總是有些麻煩,所以乾脆來做臺自動販賣機來解決這些事情吧!
​​自動販賣機需要投幣,也需要製作代幣;代幣可不像卡片一樣輕便,可以隨身攜帶,所以還需要一臺能儲存硬幣只能讓我方便發放硬幣的機器,就連帶做了一臺硬幣兌換機來解決這個問題,同時讓學生了解如何將課堂上所學的知識,應用在生活中。

時間:2週 成本:約4,000臺幣
材料

兌幣機:
Arduino UNO微控制板(1)
LED矩陣,8×8(1)
按鈕,1×5(1)
RFID感測器(1)
步進馬達(1)
步進馬達驅動板(1)
木板,厚3mm(1)
鏡面壓克力,厚3mm(1)
透明壓克力,厚3mm(1)
螺絲和螺帽 數個
磁鐵 用來吸附在黑板上

​自動販賣機:
Arduino MEGA微控制板(1)
微動開關,長柄(1)
微動開關,附按鈕(8)
步進馬達(8)
步進馬達驅動板(8)
LED,5mm,白(10)
LED矩陣,8×8(1)
木板,厚3mm(3)
透明壓克力,厚3mm(4)
螢光色壓克力,厚3mm(1)
電源供應器,12V10A
排線

工具

手電鑽
烙鐵與焊錫
雷射切割機
熱風槍
攻牙扳手
安裝好Arduino IED的電腦 可從arduino.cc/downloads免費下載

製作兌幣機

步驟1:
用雷射切割機切割出部件,切割檔可參考http://www.makezine.com.tw/diy-vending-machine-dxf.html。所有板材皆使用3 mm厚度的板材,切割的圖案可以依個人做些變化。軌道部分是以直徑3 0 mm的代幣為標準,若代幣尺寸不同,圖檔的軌道須自行變更。
步驟2:
​組合木板與鏡面壓克力,最外層的透明壓克力先不要裝上,因為要先把步進馬達與壓克力旋轉片鎖上木板。我剛好買到2.5 mm厚的壓克力來製作代幣,所以可以順利地通過3 mm厚度的壓克力軌道;但你也以可在鏡面壓克力與木板中,加一些墊圈增加軌道的厚度,讓代幣可以順利通過(圖A)。
圖片

圖A

步驟3:
焊接上按鈕、RFID感測器、步進馬達驅動板、8×8 LED矩陣,並裝到定位(如圖B所示)。最好先個別測試電路與元件有無問題,再進行焊接。
圖片

圖B

步驟4:
​將最外層的透明壓克力用螺絲與螺帽鎖上(圖C)。因為我擔心板材間空隙太大會讓代幣卡住,所以用了一堆螺絲跟螺帽。拆板子是個大工程,所以請確認所有零件安裝完畢再將外層壓克力鎖上。
圖片

圖C

步驟5:
將專題程式碼上傳到 ArduinoUNO(可至https://github.com/kobebeefg/Coin-Changer下載),其中的RFID資料是設定我的個人識別證,確認身分後即可感測按鈕;每個按鈕分別對應不同數字,會顯示在 8×8矩陣上,步進馬達每旋轉1/8圈會釋放一枚硬幣。
步驟6:
​代幣使用直徑30mm的圓形壓克力製作。圖案部分我在雙面都有做雕刻,你可以換成自己喜歡的圖樣(圖D)。
圖片

圖D

訣竅:雕出圖案可以讓代幣不會因為水氣吸附在軌道,造成卡住,所以代幣表面的凹凸紋路非常重要!

步驟7:
​最後我將這片壓克力後面黏上磁鐵,吸附在我教室的黑板上,並使用桌上型電腦的USB孔做為電源供應。使用 RFID感應後,就可以將按鈕壓下, 8×8矩陣會顯示按下的數字,並且旋轉步進馬達。每釋放一枚硬幣就會將8×8矩陣的數字減少,直到將設定的硬幣落下完畢,就會重新開始偵測RFID(圖E)。
圖片

圖E


製作自動販賣機

步驟1:
用雷射切割機在材料上切割出部件,切割檔可參考http://www.makezine.com.tw/diy-vending-machine-dxf.html,木板與壓克力皆使用 3 mm厚度。
步驟2:
​將8組步進馬達與驅動模組鎖到木板上。我使用的步進馬達是最便宜的,但後來發現放大一點的零食容易卡住無法動彈;所以如果要放較重或是較大的零食,須換成更大的步進馬達(圖F)。
圖片

圖F

步驟3:
​將零食軌道組合,這個軌道的長度剛好可以放 4個零食,寬度設定 3種不同尺寸,若要將軌道加長就有可能因為摩擦力太大,轉不動的狀況發生,前面斜一邊是讓零食能準確掉落所設計的斜度(圖G)。
圖片

圖G

步驟4:
​我原本想用硬的金屬製作出螺旋彈簧,就像真的自動販賣機一樣;但是嘗試過幾次發現沒辦法做出完美的曲線,曲線不順暢會影響到摩擦力。最後我選擇使用熱風槍吹軟壓克力來製作。一邊小心加熱壓克力、一邊將其繞上並一個直徑 42 mm的衛生紙捲(圖H)。衛生紙捲上面可以畫線做記號,方便對齊每圈彈簧的間距。
圖片

圖H

步驟5:
​組合所有的壓克力與彈簧,我在壓克力與馬達銜接處使用攻牙扳手切削出M3螺紋,好使用螺絲確實進行固定(圖I)。
圖片

圖I

步驟6:
​焊接8組按鈕。這是個大工程,而且我的按鈕必須繞到機器前端,所以使用了很長一把電線來製作(圖J)。
圖片

圖J

訣竅:彩虹排線是個好東西,可以讓你快速辨認按鈕的順序。

步驟7:
接著要將整體組裝起來。先組裝機殼,平臺傾斜10度主要的目的是讓零食掉落可以順暢一些,也可以減緩馬達旋轉的阻力。
步驟8:
接著組裝投幣孔與偵測器,投幣孔使用與硬幣兌換機一樣的軌道,繞一個小S型讓投硬幣的感覺比較有趣(圖K);軌道尾則安裝微動開關,用來偵測硬幣落下。

​在這裡我並沒有做任何防偽設計,主要的原因是我時間有限,也沒想到一個簡單快速的方式處理這個問題,所以我在這邊做了透明的視窗,方便檢查有沒有人亂投東西。但說真的,我想我的學生應該沒人敢為了一包零食做出違規的事情(笑)。

圖片

圖K

步驟9:
然後將主體放在機殼上,並安裝按鈕。將按鈕的電線繞著機殼內部藏到後頭,視覺上看起來會更美觀(圖L)。
圖片

圖L

步驟10:
將程式燒錄到Arduino MEGA(可至github.com/kobebeefg/Vending-Machine下載),並在黏住所有板材前,確認零件都沒出問題,按鈕的編號與馬達的順序也沒搞錯。

實際進行測試,將每個馬達轉動所需的花費修改到程式碼內,並在上方安裝8×8 LED矩陣與5mm LED(圖M)。

圖片

圖M

步驟11:
製作價目表,此價目表的設計可以讓我日後更改價格,下方的缺口可以讓5mm LED剛好卡住(圖N)。
步驟12:
​最後加上有著活頁門的壓克力外殼(好讓我可以時常「補貨」,隨時填飽學生的肚子),再在不同寬度上放上不同大小包裝的零食,一臺不輸給外面販賣機的迷你自動販賣機就完成了(圖O、圖P)!

調整與改良

兌幣機底部使用木板的材質是最大的問題,我低估了教室的濕氣,所以使用三天後底板就發生翹曲,造成硬幣卡住。最後我在後面加了一些支架才把翹曲的部分彎回來。

鏡面壓克力真的是個很酷的東西,因為學生都愛照鏡子所以才想說乾脆讓機器同時兼顧鏡子的功能;但指紋以及灰塵在鏡子上根本無法清除乾淨,再加上木頭翹曲讓這個鏡面幾乎變成哈哈鏡,所以最後效果不是很好。

軌道表面我留了0.5 mm的隙縫,原本想說萬一硬幣卡在軌道上還可以用螺絲起子推開,但是沒想到學生可以直接把硬幣整排往上推,就可直接從洞口拿到硬幣;所以我只好在頂端鎖上螺絲,至少暫時可以防止學生做出違規的行為。

自動販賣機運作起來則比我預期的順利,到目前為止已經運作一個多月,但是仍然有些問題發生。其中最大的問題就是販賣機的出口太大了,學生的小手可以從出口直接伸進機器內部拿取零食,所以可能要再安裝檔板防止這種事情發生。

此外還是發生過投幣時沒有感應到的情況,不過這一個月來只發生一兩次,目前還查不出問題出在哪裡。另外,也有學生在電源未接上時將硬幣投入,造成被吃錢的狀況,這也是之後可以改良的部分,例如在入口放個電磁閥斷電後阻擋硬幣。

寓教於樂的機器

硬幣兌換機與自動販賣機大概花了我兩個星期的時間製作。其中原本以為很簡單的硬幣兌換機因為木板翹曲的關係,讓我多花了好幾天時間去解決,壓縮了自動販賣機的製造時間;所以取消了硬幣防偽裝置,也沒有仔細思考整個機器的美觀性,幾乎是一邊做、一邊設計。但經過一個多月學生的壓力測試,目前為止還算完好。

製作這兩臺機器的最大目的,是希望讓學生在學習Arduino課程時多獲得點靈感。以往我做類似的Arduino專題都會儘可能不讓電線露出來,電路板能藏就儘量藏;但因為教學的緣故,反而這些零件才是學生能吸收知識的重點,這些板子都成了主角,所以我刻意將Arduino與零件的部分刻意露出來。而且這學期我會教學生步進馬達的應用,剛好可以將此機器帶入課程中,讓學生可以直接觀察到零件與接線的部分、雷射切割機的材料應用、甚至是將壓克力加熱塑型等加工方式—這些東西都可以應用在他們自己的專題中。

另外,這臺機器的功能真的幫了我大忙,學生因為想玩這機器,不僅主動去做打掃工作、主動幫老師忙,也讓我不用在下課時間被喊著肚子餓要換零食的學生打擾,只須偶爾像外面廠商一樣拿著一堆零食補貨就行了。

你可至youtu.be/k4_iODfeYr4瀏覽完整製作過程!

黃信惠David Huang
康橋國際學校秀岡校區國際部
電腦/設計教師。
Social media & sharing icons powered by UltimatelySocial