9
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

アサガオの観察日記を電子工作で自動化してみよう

Last updated at Posted at 2019-08-19

はじめに

僕が子供のころは、夏休みの宿題で「アサガオの観察日記」というのがあり、夏休みに毎日水をやって、成長を観察して、その日の天気やらどんな感じで成長しているかやらを絵日記にしていた。
ただ、これがひたすらにめんどくさい。旅行とかで長期間家を空けられない。
その間、世話ができずに枯らすこともままあり、非常に苦労した思い出がある。

そこで、大人になった今、それらを自動化できないかと考え、作ってみることにした。

全体図

スクリーンショット 2019-08-19 13.31.04.png

単体のそれぞれの機能

水をやるところ

コード

var servo = obniz.wired("ServoMotor", {signal:0,vcc:1, gnd:2});

servo.angle(180.0); // 下げる

servo.angle(0.0); // 上げる

参照

つかったもの(obniz以外で)

・サーボモーター (RB996a-N)(1480円)
・ブリキのジョウロ(300円くらい)
・ちょっと厚めの輪ゴム(108円)
・金属製のハンガー(108円)
・タコ糸(108円)
・クリップ(108円)
・空きペットボトル(0円)

サーボモーター
スクリーンショット 2019-08-19 17.23.05.png

ブリキのジョウロ
スクリーンショット 2019-08-19 17.22.55.png

金属製のハンガー
スクリーンショット 2019-08-19 17.23.14.png

土の湿度を測るところ

つかったもの(obniz以外で)

スクリーンショット 2019-08-19 17.45.27.png

湿度センサー(734円)

コード

var sensor = obniz.wired("SEN0114", {vcc:0,  gnd:1, output:2});
sensor.onchange = function(value){
  // 1.47という数値は環境や条件によって調整する
  if(1.47 > value){
    // 土が乾いている
  }else if(value > 1.47){
    // 土が十分潤った
  }
};

参照

アサガオの写真を撮る(実装中)

使ったもの

Grove-シリアルカメラキット(3,564円)

obniz公式のこちらで再挑戦
[小型TTLシリアルJPEGカメラ(NTSCビデオ出力付)]
(http://akizukidenshi.com/catalog/g/gM-07746/)
挙動確認用のサンプルコード

<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@latest/obniz.js"></script>
</head>
<body>

<div id="obniz-debug"></div>
<img id="image">

<script>
var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function () {
  obniz.io6.output(true);
  obniz.io9.output(false);
  var cam = obniz.wired("JpegSerialCam", {vcc:0, cam_tx:1, cam_rx:2, gnd:3});
  await cam.startWait({baud: 38400});
  await cam.setSizeWait("640x480");
  const jpegData = await cam.takeWait();
  document.getElementById("image").src = "data:image/jpeg;base64," + cam.arrayToBase64(jpegData);
}
</script>
</body>
</html>

過電流の問題は解決したけどちょっとうまく動かない。。。

スクリーンショット 2019-08-19 22.52.56.png スクリーンショット 2019-08-19 22.56.31.png

参照

参考
ESP-WROOM-02にカメラモジュールを繋いでネットワークカメラを作る

まとめて動かす

帰省中でアサガオが準備できなかったので自宅に帰ってから設置します(;;)

感想

いろんなサーボモーターやステップモーター、電磁マグネットなどでジョウロの上げる部分の試行錯誤してみたが、サーボモーター(RB996a-N)が強力で安定して使えた。
ちょっと厚い輪ゴムが工作でめちゃくちゃ使える頼もしい素材だと思った。
カメラは下調べが不十分で、obnizSDKで紹介されていたものとは違うものを買ってしまい、公式wikiのサンプルコードにはSDカードにカメラで撮った写真を保存する方法しか載ってなく、めちゃくちゃ焦った。なんだかんだ、obnizのJpegSerialCamのSDKで使えそうなので、もうちょっと試行錯誤してみる。
今回はバラバラに実装を確認したが、実際に組み立てると、防水の問題や日光の問題など、もっといろんな問題が出てきそうなので、それらにどう解決するかを今後まとめたい。

9
6
0

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
  3. You can use dark theme
What you can do with signing up
9
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?