作者:劉紹淵
在荒郊野外做環境感測的時候,常常為了電源跟防水這兩個問題傷透腦筋。像是「LASS水盒子」這樣用來監控水質的設備最常被問到的就是要怎麼做防水,電源的部分用太陽能電池接一接就好了。但到了組裝好實際要上場測試的時候才發現,續航力怎麼這麼差!整張的太陽能電池懸在一旁也不好固定!
雖然矽利康跟塑鋼土無敵,但黏死了後下次要拆也會變得很麻煩。直到某天邁特電子的Ray介紹下才知道飛立威(Flexwave)已經將太陽能板跟防水盒結合在一起了,拿到稱為Arc-solar的防水盒實品後立馬用MTDuino做一台水盒子出來玩玩看。
Arc-solar防水盒開箱
一開始拿到這盒子的時候,心裡只覺得這盒子塞的下水盒子的東西嗎?在保留必須的模組之後,剛好可以塞滿整個盒子,希望散熱不會出問題,不過這樣太陽能板要怎麼架在防水盒的問題,就可以先不用煩惱了。
由於筆者只是個喜歡做機器的環境人,只知道太陽能板如果有MPPT的功能可以讓充電效率更好,但其他規格的細節其實了解的也有限,所以就不多說太陽能板的功能,請大家到飛立威的官方網站看嚕。
如何在防水盒上開孔
無論是哪一款的防水盒,拿到後通常會閃過的想法這要怎麼開孔穿電線阿?在一開始的時候筆者也是拿著手持雕刻機搭配鑽頭慢慢的一孔一孔鑽,但遇到活動需要一口氣做個5、6台水盒子的時候,全部鑽完真的會讓人崩潰。除了鑽到手麻之外,每一孔的形狀跟孔隙其實都會直接影響到防水性的好壞,直到遇到階梯鑽頭這件神兵才發現之前一個孔花10來分鐘鑽到底是為了什麼!
在好不容易把孔開好穿過電線之後,下一個問題就會是怎麼把這孔補起來!?(os: 自己挖得坑自己填的概念) 大家可能會覺得用矽利康便宜又大碗,但身為一位環境人,當然會希望這設備設計上應該是要好維修的才能減少垃圾。
在逛遍光華商場的電子材料行後,終於找到迫緊接頭跟防水接頭這兩個好用的東西,更方便的是最小的迫緊接頭需要的孔徑,剛好跟pH和EC的BNC接頭需要的孔徑一樣都是12mm,這樣一來防水的效果,大概就能做到防潑水不怕下雨天了。
電池充放電監控的電路
在太陽能電池跟防水盒的問題都搞定後,筆者覺得如果能監控太陽能電池的發電量,跟鋰電池的充放電情況,便能提早在續航力開始下降時就更換電池,才不會在放了10天後,整理資料時才發現第5天就沒電的慘案!
在電源監控的部分,因為各模組實際上的用電量都只有幾十mA而已,如果用常見的5A類比輸出的電流監控模組,反而會看出電流變化的情況,後來在某次巧合下發現Adafruit有出一款合適的模組(Adafruit INA219);除了監控電流流向之外,這個模組的量測範圍是0~400mA,同時還能輸出電壓情況,這些功能對於放在戶外的設備來說,根本是必備的一塊模組阿!
以下就用LASS水盒子上的模組測試用電情況,再想辦法省電了!
使用硬體
1. MCU:MTDuino
2.電源監控模組:INA219
3.電池:5100mAh鋰電池
4.SD卡:3.3V
各模組用電測試
仔細算了一下,LASS水盒子上面使用的模組還不少,所以要一一量測實在太麻煩了,先把模組一個個疊上去看看電流增加多少吧。
LASS水盒子有兩個版本,分別是一開始發表的MTDuino版,和使用LinkIt 7697+ LoRa版,因為後者已經被拿去打做成PCB了,所以手上能插的只有MTDuino版(等待有緣人拿去做成PCB吧)。
由於LinkIt 7697有WiFi、藍芽這些通訊的功能,印象中一般狀態最少要吃掉100mA的電,即使進到睡眠狀態也要吃個10幾mA吧,用來放在野外真的要多花點心思在供電的平衡上;至於MTDuino在沒有使用Sigfox發送訊號的情況下用電只要20mA左右而已,即使睡著也不到6mA的用電。
- SD模組
除了資料上傳的功能之外,對筆者來說現地端的資料儲存可以多一分保障,把一些系統log寫在裡面,也能在哪一天數值怪怪時,還能確認當時運轉的狀態(雖然最常出狀況的就是SD卡寫資料的function orz)。
插上模組後用電量從原本的20.25mA增加到25.66mA,插入16G的mirco SD卡後稍微增加了一咪咪(0.46mA);不過曾遇過光micro SD卡就吃掉30mA的情況,可能是卡片快掛的影響這部分還是稍作確認比較保險一些。
- OLED 0.96吋 I2C SH1106
在OLED部分,現在已經習慣用u8g2的Library了,除了使用空間小和有很多字體可以選擇外,最重要的是它有一個省電的範例(PowerSaveTest)。筆者也是拿出電表量過之後才發現原來OLED這麼耗電(要16mA)!但是在現場又不得不裝上這個小螢幕(筆電總是會遇到各種罷工情況),還好有省電功能可以省下一半的用電量,基本上用過就回不去了。
- DS3231時間模組
DS3231 RTC模組是另一個必備且容易壞的模組(我也不知道為什麼orz)用電大概是11.8mA左右,整個水盒子目前還沒加上重要的水感測組用電就已經到54.6mA了。
- 其他水質感測模組
目前水感測的模組,主要是用DFRobot出品的酸鹼度(pH)模組,和導電度(EC)模組,搭上常見的DS18B20作為溫度感測。其中由於EC的分析方式是由電極放電來測量水的導電性,進一步得到水中電解質的濃度;這剛好會干擾用電極電位差量測酸鹼度的pH電極,所以在設計上會讓它們分開來使用。雖然EC模組的用電才10.5mA,但是裝上電極後在水中的用電應該會更高一些才對。
省電電路的設計
從上面的實驗結果發現,水盒子的最大用電量會在100mA左右,在24小時不斷電的運轉下,5100mAh的聚合物鋰電池也只能撐個50個小時,在陰天太陽能板還能發電的情況下也很難撐過1個禮拜;這對於需要長期丟在戶外的環境感測設備來說,除了選擇大功率的太陽能板(有MPPT更好),和大容量電池提高續航力之外,也必須想辦法節省用電才行。
最完美的省電的方式當然是把插頭拔掉不給電,這樣只要MCU的用電續航力至少可以提高5倍以上,也可以把所有供電迴路都關閉後,再使用RTC當鬧鐘來開啟系統的用電(但筆者目前還不會orz)。
好用的線上模擬網站
對於Maker來說最簡單的方式就是用繼電器(Relay)當作開關來切換,不過繼電器能負載的電流量,對LASS水盒子來說實在有種殺雞用牛刀的感覺,而且喀喀喀的聲音聽久了會令人煩躁,另外開關切換的時候,可能會造成電路的不穩定等問題。
筆者只好四處打聽在電子學上有沒有更合適的電路可以用,後來找到NPN BJT(2A2222A),和N-Channel MOSFET(BS170)搭配的電路可以當開關使用;這部分筆者也沒辦法說得太清楚,有請感興趣的客官搭配Google大神服用嚕~~ (富堅模式 On)。
對了,有個好用的線上模擬網站,可以讓大家在買材料前先確認電路可不可行,避免像筆者一樣堆了一堆電子零件,卻找不出個好電路圖能用,恨不得買本電路學的書來了解一下怎麼才能配出我們需要的電路(剁手)。
http://www.falstad.com/circuit/circuitjs.html
小結
彙整一下LASS水盒子使用的各模組用電情況,很明顯的可以看出雖然 MTDuino已經很省電,但在所有模組都接上去之後,即使是有睡眠模式的支援也只能節省一小部分的用電而已。但環境感測的過程當中,其實不太需要每一秒都需要量測水質狀況(量了也看不出來?),在這樣的情況下如果能讓LASS水盒子在大部分的時間都處於省電狀態(用電<20mA),只有在需要測量時在供電啟動模組的話,續航力這問題就不再會是個讓人頭疼的問題了。
(責任編輯:王姵文)
- 【Arc-solar開箱文】用MTDuino製作自帶太陽能的防水盒 - 2019/11/10