Introduction: 移動汪汪
動機:
丟垃圾好麻煩喔!
想當個懶骨頭不想起身? 還是受限於辦公環境無法走動?
如果有個可以幫你倒垃圾的小幫手就太好了!
這項任務...就交給"移動汪汪"了!!!
功能:
利用碼盤和光遮斷模組來記錄自己的位置
進入新環境可以掃過房間,上傳座標位置回傳給網路
透過線上即時資訊呼叫你的移動汪汪
超聲波模組感測房間障礙物不會撞牆
上方搭載3D列印支架可以隨時更換垃圾桶和其他用途
Step 1:
Step 2: 繪製汪汪的底板
材料:
3mm厚密集板
工具:
Autocad 或 其他繪圖工具
雷射切割機
解說:
利用Autocad繪製底座
將密集板放入雷射切割機將其零件印出
之後要裝控制板、輪胎和支架就靠它了
Step 3: Arduino 程式
材料:
arduino uno 控制板
傳輸線
杜邦線
麵包板
18650電池
工具:
arduino 編譯程式
解說:
分別在以下解說:
L298N馬達控制器
HC-SR04超聲波模組
光遮斷模組
Wifi 模組
Step 4: Arduino 程式 - 馬達控制
材料:
直流馬達x2
L298N馬達控制器x1
解說:
EN1和EN2分別控制左右輪的轉速(0~255)
透過IN1~IN4來控制馬達的轉向
IN1、IN2為其中一個馬達,按照上面圖表,以它為例:
analogWrite(enA, 255);
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
則馬達為正轉
IN3、IN4控制另一輪
Attachments
Step 5: Arduino 程式 - 超聲波感測器
材料:
HC-SR04超聲波模組 x3
Attachments
Step 6: Arduino 程式 - 光遮斷模組
材料:
lm393模組
碼盤
Attachments
Step 7: Arduino 程式 - Wifi 模組 Esp8266
Step1. 參考該網站初始化ESP8266: https://goo.gl/9e9frs (FT232一定要購買,方便刷韌體)
Step2. 如果遇到亂碼或是訊號常常斷線,大多數都是電壓不穩和電流不足!! 請購買LD1117穩壓以及電容
Step3. 如果仍遇到亂碼或是無法使用,請參考該網站刷韌體 https://goo.gl/NrMtyy
Attachments
Step 8: IoT 網頁即時資訊
程式語言:html、 PHP、Javascript/jQuery
軟體:XAMPP( Apache+MySQL )
解說:
進入步驟前,先說明「靜態網頁」和「動態網頁」的不同。
靜態網頁,指包含的純文字及圖片網頁主要以HTML(HyperText Markup Language)為基礎架構,常與CSS與Javascript配合成一個適合觀看的網頁,讓瀏覽器去讀取。
動態網頁,指有包含網頁程式及資料庫的網頁。動態網頁可以透過程式語言結合資料庫的方式,而設計出可與網友進行互動的功能,例如:購物車、會員機制、留言板、討論區、投票區、訊息發佈、商品發佈…等。
由於本次project中網頁必須傳送使用者輸入、不斷更新地圖,所以採用動態網頁。
step1:
下載XAMPP (https://www.apachefriends.org/zh_tw/download.html )
XAMPP是一個易於安裝的Apache發行版本,其中包含MariaDB、PHP和Perl,允許用戶可以在自己的電腦上輕易的建立網頁伺服器。
step2:
開啟xampp,start 「Apache」和「MySQL」。
開起server(chrome、firefox) 的 url輸入"localhost/phpmyadmin",利用phpMyAdmin建立資料庫。
create a database "request" --> click "privileges" then "add user account" after created click"chech all"--> create a table "request" with 4 column :id(primary) 、 x_map和y_map(接收arduino回傳的座標) 、created_at
step 3:
撰寫php
開源碼(內有註解):https://github.com/EGSteve/arduinoserver
step 4:
Arduino自走車掃描地圖,回傳座標到後端,後端將資料生成網頁。
原始網頁中,按鈕除了原點,皆為紅色。自走車走過的座標被記錄下來,並且將該座標對應的按鈕轉為綠色,提示使用者可以點選。使用者點選綠色按鈕後,該座標會回傳給Arduino,指示其應前往的座標。
Step 9: 支架3D列印
材料與工具:
3D printer
tinkerCad 或 其他3D繪圖工具
解說:
Step1. 到tinkerCad創立帳號
Step2. 繪製所需的3d圖形
Step3. 儲存成.stl檔案
Step4. 利用makerBot軟體開啟並作微調
Step5. 輸出成print檔案
Step6. 列印
Step 10: 合體!!!
材料:
剛剛用到的所有模組
螺絲、螺帽
膠帶還其他黏著劑
解說:
將模組們裝在底板上,把電池、架子安裝好
移動汪汪就可出動了!