2014年1月3日 星期五

Arduino 無線氣象站 Ver3.0

好久沒動這個部落格了...總覺得是時候該整理一下最近做的

先來說這次天氣站改版吧,這次修改幅度可謂最大的一次
改版的目標是將耗電量盡可能的降低
為了達到目標,首先,無線模組換成了nRF24l01,
再來,Arduino的版本換成了3.3V的版本,取消了鋰電池升壓板,換成了一個LDO增加效率
然後,為了減少接線的麻煩,我去送洗了這個版本的PCB
感應器列表:

  • BMP085 大氣壓力計
  • DHT22   溫溼度感應器
  • ADT7140 溫度感應器
  • 預留i2C以及電源可外接

輸入程式中的主機板完成品
不過送洗回來後才發現很多悲劇的地方....
首先,DHT22的腳位為啥會朝內阿阿阿阿阿
再來,Tx Rx放反了阿阿阿阿阿阿阿
最後.....DTR的電容忘了加...(眼神死
不過勉強還可以用就是了  Orz
還有一個太陽能板沒上
nRF24l01真的比較好用...至少傳資料比較不會錯
而且可以Power Down到uA等級,Start up 也很快,只是接收端就需要Arduino來解碼就是了
raspberry pi 應該可以直接接nRF24l01解碼,但是我還不會用XD
因應通訊模組的更換,Raspberry pi 上的Python code也順便換了
這次除了送Data到Cosm以外,還有存到CSV檔,另外就是送上Google Docs(這個副程式目前有問題)

感應器的耗電量如下
  • Power Save     60uA
  • Tx                   10mA
  • 測量中      ~2~8mA
總結來說,一天的耗電量可以壓到10mAh沒問題,但是改進的地方還很多
Power Save mode 可能因為AMS1117-3.3V 的轉換效率在極低電流的時候漏電流的關係
以及Arduino沒有關掉BOD,耗電量其實是有點大的
再來,讀取資料的時候DHT22需要delay 2秒,其實是可以把其他資料讀完的,減少讀取時間
最後,nRF24l01送資料的時候可以簡化Package,減少Tx的時間

以上

====Arduino weather station ver 3.0===
Update: 我把DS2764的鋰電池管理PCB換成送洗的版本,以及加強固定



2 則留言:

  1. 回覆
    1. 其實這次有三個版本:nRF24l01,SD卡,Wifi
      SD卡版本現在在學校的百葉箱XD
      改天PO上來

      刪除