LoginSignup
3

More than 5 years have passed since last update.

続編1:土壌湿度センサーを追加(前編:夏休みの工作におススメ!自動水やり機(Obniz+電動灯油ポンプ)の製作)

Last updated at Posted at 2018-08-08

概要

前回の
夏休みの工作におススメ!自動水やり機(Obniz+電動灯油ポンプ)の製作
をパワーアップさせて、土壌湿度センサーを追加し、Web上で土壌湿度をグラフで見れるようにしました。
夏休み限定の工作のため、土壌湿度センサーは釘で作った簡易的なものにしています。

システム構成

CIRC.JPG

①Obnizサーバーサイドイベントで30分毎にプログラムを起動

②土壌湿度センサー数値を取得

③ThingSpeakに上記値を送信

プログラム

sendHumData.html
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
  <script src="https://unpkg.com/obniz@1.9.1/obniz.js" crossorigin="anonymous"></script>
</head>
<body>

<div id="obniz-debug"></div>
<h1>Soil Humidity</h1>
<button id="on">ON</button>
<button id="off">OFF</button>


<script>
var obniz = new Obniz("★ここにObnizのIDを入れてください★");
obniz.onconnect = async function () {


  var sensor = obniz.wired("SEN0114",  {vcc:0, output:1, gnd:2});

  var value = await sensor.getHumidityWait();
    //console.log('Humidity Level:' + value);


const request = new XMLHttpRequest();
request.open("GET", `https://api.thingspeak.com/update?api_key=★ここにthingspeakのキーを入れてください★&field1=${value}`);
request.send();


 // if (typeof done === "function") {
 //   done();
 // }  

}

</script>
</body>
</html>

詳細説明

①Obnizサーバーサイドイベントで30分毎にプログラムを起動

上記プログラムを起動
Moisture.JPG

②土壌湿度センサー数値を取得

・自作土壌湿度センサーの説明と作り方は下記を参考に作成

(参考サイト)土壌湿度センサーとScratchで、植物を乾燥から守ろう

■注意
上記のプログラムはobnizの公式ページにある
SEN0114 (Soil Moisture Sensor)
をもとに作っていますが、前提がSEN0114を使う想定のもののため、釘で自作したセンサーとは異なる動きなのかも。。。とりあえず動いた(濡れる=数値があがる、乾く=数値が下がる)のでそのまま使用しています。電子工作が得意な方、もし間違っていたらコメントお願いします。

③ThingSpeakに上記値を送信

下記を参考にアカウントを作成して、Fild1(湿度用に設定した項目)に②で取得した値を付けて送信

ThingSpeakの使い方の説明
(参考サイト)データを簡単に保存&グラフ化できるThingSpeakが便利!

■データを送る部分

request.open("GET", `https://api.thingspeak.com/update?api_key=★ここにthingspeakのキーを入れてください★&field1=${value}`);

■画面
水をあげたときだけ湿度の数値が4まであがり、時間と共に徐々に下がっているのが分かります
thingspeak.JPG

感想

・ThingSpeakは電文を送るだけで、データが追加できるのでとても簡単で便利でした。
・さらに無料というのもうれしいです!

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3