用Arduino連接感測器收集數據,以無線方式發送到RaspberryPi,由樹莓派處理數據並保存,行不行?怎麼做?

目的是通過Arduino連接感測器作為室外單元收集溫度、濕度和雜訊數據並以無線發送到室內,並且用太陽能板為其供電,所以能耗不能太高。
同時用Raspberry Pi 樹莓派作為室內單元,接收數據,並存儲保存在SD卡上,顯示在液晶屏上。


你需要的是esp8266 wifi模塊。ESP8266串口WIFI 業界里程碑,型號:ESP-12F-淘寶網

12.5元,可以把感測器接入到這個模塊上面。

然後呢,不需要arduino,也不需要樹莓派,esp8266模塊直接可以連接雲端伺服器來上傳感測器數據。

喜歡arduino?

那就太巧了,esp8266是兼容arduino晶元。可以直接使用arduino的代碼燒寫到esp8266模塊上面。等於一個帶wifi的arduino。比arduino還便宜哦。

這麼好的模塊,大家快來使用吧。

esp8266官方交流群:293356279


因為是室外,我認為前面所說的wifi模塊不可行。

如果題主想做分布範圍比較廣的,我的方案就是使用GPRS模塊。

我見過的一個產品案例就是一個數字天然氣表,由於天然氣站幾乎都休在人跡罕至的郊區,那邊基本上也不會有wifi,所以就是使用的GPRS傳輸。我國手機基站幾乎各地都有,完全滿足需求。

功耗也非常的低。10分鐘收集一次數據,2節1號電池可以工作1年時間。


你這麼搞,其實難度大,效果還不好,我給你提供一個案例,你可以參考下。

【案例】為Arduino模擬量感測器添加物聯App功能

從網上淘了兩個Arduino感測器,一個光照強度,一個土壤濕度,輸出都是模擬量電壓的,因為萬納模塊有ADC輸入功能,於是不需編程,將他們很方便的接到了酷享物聯繫統里。

【圖】光照強度感測器、土壤濕度感測器

【圖】萬納模塊

【圖】硬體連接

硬體連接很簡單,將兩個感測器的輸出口,接到萬納模塊的IO1和IO2即可。兩個感測器及萬納模塊都要供電。

實際連接的時候,直接用了萬納模塊實驗板,用杜邦線就可以完成連接。

邏輯上,萬納模塊連接感測器,將數據採集並傳給酷享系統主機(主節點),主節點類似路由器,自動將數據上報到雲端和App中。

萬納模塊出廠的時候,是空白配置,可以搜索並使用官方的ADC配置。

官方ADC配置是將IO1-IO4配置成ADC輸入的,我們實際使用了兩路。

如上圖,搜索電壓,選擇「電壓採集設備(百分值)」這個配置,並將它從雲端下載下來。配置文件可以通過產品編輯器直接打開查看或者編輯,可以修改成我們需要的功能,不過這裡使用默認即可。

「電壓採集設備(百分值)」這個配置文件,使用了萬納模塊的IO1-IO4這四個IO口,將他們配置成了ADC採集,並新建了4個變數,並將ADC採集的結果放到這四個變數里。由於ADC採集的結果實際是一個0-3300的電壓值,即0-3.3V。配置文件里通過設置ADC的因子參數為3.3,將ADC採樣值除以3.3,得到的就是百分值,這個數值會存儲到變數中。

給酷享系統主機上電,連上網線,通過主機,將配置文件下載到萬納模塊中,萬納模塊就會被配置成相應功能。如果設計者希望將感測器封裝成產品,那可以一次性量產一批萬納模塊嵌入到產品中,對於終端用戶而言,是不需要接觸上述配置工具的。

打開App,添加設備,搜索設備類型「電壓」,選擇」電壓採集設備(百分值)「,這個跟剛才的是同一個文件,存儲於雲端。

搜索萬納模塊,並添加進去。由於「電壓採集設備(百分值)」是一個示範產品,所以沒有綁定UI,我們可以搜YwRobot這個UI,將其設置給設備。

添加完成之後,就可以點擊設備,看到我們模塊傳來的數據了。

任何地方只要手機有網路,都可以看到設備數據。

產品型號文件(也就是萬納模塊配置文件)及設備UI,可以自己修改,可以本地調試,也可以上傳到雲,可以實現功能很多,文件見附件。

如果使用的主節點是帶屏幕的,這些數據可以展示到液晶屏上。

可以將感測器數據做成觸發源來觸發情景動作,比如實現「當光照強度低於60,並且持續了300秒後,就打開燈光或者插座」之類的聯動。聯動是脫離手機運行的,不需要App在線。


回答如下:

1、方案可行。

2、無線方案的選擇有:①藍牙;②APC220;③XBee模塊,這三者有串口無線模塊。

室外的Arduino一端,通過溫濕度感測器,聲音感測器採集數據,然後通過串口發送出去;室內的樹莓派通過串口來讀取數據,保存至SD卡,並顯示在液晶屏上。


原理上當然可以,但是你幹嘛這麼做?Arduino視你通信距離的遠近,可以酌情採用掛藍牙(2m以內效果非常好),掛XBee(無遮擋大概在1000m,樓群間的話小於100m),掛wifi(如果室外wifi能夠接入的話),掛GSM/GPRS的方法來實現數據遠傳。Arduino也有TF卡槽擴展板,也可以顯示在液晶屏上。

如果我是你,我會改用這種方式:XBee+電腦採集。或者乾脆兩塊Arduino,一個做採集一個做顯示結果,之間用XBee連接。樹莓派啟動慢,價格貴,不適合做控制端。用樹莓派還不如直接用電腦+ USB轉XBee模塊了。


Arduino和Raspberry Pi各連接一個NRF24L01模塊,這個都有開源的代碼的 簡單修改一下就可以


建議直接將arduino作為樹莓派的介面板


方案是可行的。通信部分直接淘寶上搜「無線串口模塊」。還有室內為什麼要用樹莓派,用個arduino就行了。


推薦閱讀:

Arduino 是什麼?
Arduino 的 Serial.write() 和 Serial.print() 的區別在哪裡?
arduino與電腦利用wifi數據互通,是怎麼實現的?
如何通過顏色識別技術,將不同顏色輸出相應數值。可以用單片機,arduino或者樹莓派嗎?
arduino為什麼沒有arm晶元的控制板?

TAG:物聯網 | 無線 | Arduino | 樹莓派RaspberryPi |