Labels:
3D列印
,
Arduino
,
Attiny85
,
WS2812b
於
6月 08, 2018
智慧杯燈 Intelligent LED
(使用Attiny85、WS2812b)
壹、摘要
本專案將使用Attiny85 作為核心,並搭配WS2812b、
紅外線巡跡模組、聲音感應模組、光敏模組製作一個
全自動桌上型裝飾燈。
Attiny85就像是迷你版的Arduino,或者說是8隻腳的Arduino
體積不大,電壓範圍寬,非常適合用於小型作品,
貳、材料
材料名稱
|
數量
|
大約價格
|
Arduino UNO(或Mega)
|
1個
|
180
|
Attiny85
|
多個
避免燒壞
|
40
|
微波雷達模組 RCWL-0516
|
一個
|
40
|
行動電源模組(單顆型)
|
一個
|
90
|
18650鋰電池
|
一個
|
120
|
電路板(單/雙)面
|
各1
|
10
|
WS2812b-12位元環狀LED燈
|
一個
|
100
|
紅外線尋跡模組
|
一個
|
40
|
光敏模組
|
一個
|
40
|
高感度聲音模組
|
一個
|
40
|
杜邦線
|
數條
|
50
|
M3螺絲螺帽
|
數個
|
50
|
3D列印成品
|
1
|
500~1000
|
焊接工具
| ||
Arduino IDE
|
叁、Attiny85腳位及運作架構圖
一、Attiny85腳位圖
二、運作架構圖
三、接線圖
肆、Arduino IDE環境設置及函示庫安裝
關於Arduino IDE的設置大家可以參閱
伍、程式碼部分
二、上傳時請注意上傳順序
1.燒錄器設為"AVRISP mkll"上傳”11.ArduinoISP”至Arduino UNO
2.Arduino接上ATtiny85
3.燒錄器設為"Arduino as ISP"並設定開發板為"Attiny25/45/85"
4.設定相關參數(處理器設為"Attiny85"、Clock設為"Internal 1MHz")
5.上傳
三、上傳後若有以下狀況:
C:\Users\teacher\Documents\Arduino\libraries\Adafruit_NeoPixel
\Adafruit_NeoPixel.cpp:1051:3: error: #error "CPU SPEED NOT SUPPORTED" #error "CPU SPEED NOT SUPPORTED" ^ C:\Users\teacher\Documents\Arduino\libraries\Adafruit_NeoPixel exit status 1 開發板 ATtiny25/45/85 編譯錯誤。 |
請直接開啟"Adafruit_NeoPixel.cpp"
(檔案位置就是第一行那些字)
並將第178行中的"7400000UL"改為”400000UL”並存檔
#if (F_CPU >= 7400000UL) && (F_CPU <= 9500000UL)
//改為 #if (F_CPU >= 400000UL) && (F_CPU <= 9500000UL) |
同時,將主程式中"CPU_Speed_check"設為8
否則Attiny85算的一秒會是我們的0.125秒
#define CPU_Speed_check 8 //時鐘速率校正
|
接著,就可以上傳啦!
陸、杯燈組裝
一、3D列印
根據杯子以及元件的大小進行3D繪圖並列印
二、模組解焊
將會用到的模組元件解焊,以便重新配線焊接
(這裡忘了拍照,不過應該還好)
p.s.解焊時請注意不要讓元件處於太高溫的狀態以免燒壞
三、切割電路板
依據杯子大小設計模組擺放方式並切割電路板
(右邊的紅色電路板為雙層版、左邊兩白色為模型紙)
四、配線焊接
將元件一一焊到電路板上並配線
由左至右為(光敏電阻、紅外線接收、紅外線發射、8pin IC座)
五、組裝
依序裝上紅外線感應控制板(下左圖.中)及光敏模組(下左圖.左)
並於圓柱狀外殼中放入18650鋰電池及行動電源模組(下右圖)
將以上兩樣物品進行組裝
將紅色元件電路板套上,並放入玻璃杯中
六、微調
檢查是否短路及測量電流(確認是否位於行動電源供電的範圍內)
七、大功告成
很漂亮的說~~
柒、成品說明與心得
一、範例檔
二、成品Demo
三、心得
在製作過程中最困難的部分就是把模組解焊
解焊時要有耐心,過程中的我因 為太急躁所以
有一個聲音模組被我毀了(>_<|||),另外,在設
計3D模型時,"要預留列印時因為擠壓而變形的
空間,像是裝載18650電池的圓柱桶,設計時
設計直徑18毫米,而實際上印出來卻大概只有
16.6毫米,因此就必須改用16650電池(特規)。
而個人對於有計畫使用ATtiny85的朋友們,
提供以下建議:
1.要注意腳位的特性(數未腳位、類比腳位...)
2.電壓範圍很廣,不必擔心供電不穩導致的運作問題
3.需要用到大量函式庫的不建議使用(因為記憶體不大)
4.燒錄時只能接有燒錄器,否則Arduino會燒壞
↑↑↑慘痛經驗,個人燒壞了2顆
最後,感謝您閱讀本文章~~
↑↑↑構想手稿
訂閱:
張貼留言
(
Atom
)
沒有留言 :
張貼留言