之前就一直在想,如果黃色小鴨可以發光就太好了
材料:
1. 鋰電池 14500 3.7V 800mAh $90
2. ATtiny85 $65
3. 8 Pin IC座 $2
4. W2812B 軟燈條 黑色PCB IP65 防水 $208 (2米) ,約只用 10cm = $20
5. 開關 $10
6. AA 3號電池座 $5
7. 電阻 1.2KΩ $1
8. 洞洞板 $3
9. ABS 板 $3
10. 雙面膠 $5
11. 2.54mm 90度3頭公插 $2
12. 2.54mm 3頭母插 $2
13. 單芯線材 紅、黑、白 $3
14. 恥力
製作屁孩限定藍光呼吸燈安全帽
最近研究 ATTiny85 覺得可以把電路作得很小很不錯
左邊在 Arduino Uno 開發,燒錄程式到 ATTiny85
然後再把燒好的晶片移到右邊
因為要使用 W2812B 所以晶片的時脈要設定 Internal 8MHz 模式
要放在安全帽上,拉電線有點危險,不過使用 14500 (鋰電池) 3.7V 800mAh 倒是還可以
接上 OLED 面板,嘗試顯示目前鋰電池的電壓
14500 電池,滿電時約 4.2~4.35V
低電壓約 2.4V,我希望額外多作的是 2.8V 直接把藍色呼吸燈改成 紅色呼吸燈
就可以作到提醒我自己該把電池拔下來充電
如影片所示,可以透過 OLED 顯示目前程式裡可以抓到電池電壓了
這個過程方便在追蹤接近沒電時,可以把光線變成紅色提醒我自己充電
非常重要的一個步驟
上網試了好幾種偵測電壓的方法,有的提到要用電阻分壓
問 chatgpt 也是提到分壓電路
找了好幾種方法,後來找到一個現成的 Arduino Library
https://github.com/cano64/ArduinoSystemStatus
這個專案寫的相當好,可以在不接任何額外電路就可以讀到 VCC 電壓
可以取得的資料還有好幾種~像是剩於記憶體、時脈、溫度!?
或是作 Sleep 模式的 Wake !?
int getVCC();
int getVBatt(int vcc);
int getFreeRAM();
int getkHz();
int getMHz();
int8_t getTemperatureInternal();
void SleepWakeOnInterrupt(uint8_t i);
感謝前人種樹
這個電路是開發模式,接 OLED 的接線
然後這個是接安全帽的電路,相當簡單,ON/OFF 開關作在電池的正極即可
程式碼:https://github.com/shadowjohn/helmet_rgb_breath_led
有幫到您的話可以幫忙點個星星 XD
使用 OLED 把抓到的電壓顯示出來,然後放幾個二極體限制鋰電池餵入
ATTiny85 的電壓,看看抓到的資料對不對
如圖電壓表抓到 3.07V OLED 顯示 3.04V
再加一顆二極體,2.28V,顯示紅燈了
OLED 也抓到 2.28V 相當好
然後鋰電直供,3.78V 抓到 3.81V
看來相當好
再試一次
再試一次,看起來相當美好
ATTiny85 在很低電壓時,仍可以正常運作
W2812B 的燈也是
藍光燈在低電壓時,明顯比紅光清晰
所以顯示紅光時,亮度都要再調高一些,紅光 LED 吃電比較重
好了,紅光時亮度調高,藍光再調回去
然後把剛才 31 顆 W2812B (144) 燈條 切二半,再燈電線
這次是測能不能用同一組輸入接二組燈條,看來沒啥問題
測試完成,可以裝到安全帽了
製作電路,用 ABS 板當底板,焊電路,燈條的部分用插頭
電路的部分用熱融膠封一封防水,不要超大雨應該沒問題吧 (汗)
這個開關在電子街買到,相當不錯的平面型有段開關,薄薄一顆
按起來很紥實
電路藏到小鴨披風裡裡面,相當完美
經測試,充飽的 14500 (800mAh) ,連接點亮,連續使用可以超過 15 小時(電壓大概掉到2.7V)
這個時間有包含 OLED 的電路,精簡後裝上安全帽應該可以用更長時間~
照每天晚上下班回家 30min 的路程,大概一個月充一次電即可
2024-08-30 補充:
我一直在等何時會沒電變紅燈,但從07/07 用到今天 08/30 每天下班都點燈,都還有電,還亮藍燈~
下班回家約30分鐘,週末有時晚上還會騎出門,好猛啊
目前約使用了 50天,每天 30 分鐘算的話,約 1500 分鐘 ,算起來總時長是 25 小時了
2024-10-08 補充:
仍有電正常運作,到底是發生什麼事了...XD
終於在今天 2024-10-28 下班時,看到頭上的燈變紅燈了
足足用了3個月快4個月,想不到 ATtiny85 加呼吸燈這麼省電
備用電池
替換
好了,恢復藍燈
呼吸小藍鴨
快沒電了,剩 2.5V 以內
擺著充電,等他充飽,相當省電呢
一下就充飽了~又可以用三個月了嗎