ネコよけ水鉄砲をArduino電子工作で作りたいなーとぼんやり考えていたら、頼んでもいないのに要望通りのものを作ってくれた人がいた

ネコよけ水鉄砲をArduino電子工作で作りたいなーとぼんやり考えていたら、頼んでもいないのに要望通りのものを作ってくれた人がいた


最近、電子工作が面白くて勉強会に時々参加しています。
Arduinoを使って、LEDを光らせたり、温度を計ったり、モーターを制御したり、、、ということをやるのです。
20160625l

先日参加した勉強会の休憩時間に、みんなでお茶を飲みつつ、メモしてあった電子工作のアイディアをいくつか話してみました。
その中のひとつが、これです。
↓ ↓ ↓
illust-image

今住んでいるマンションのお隣さん家の玄関の前で、毎日オシッコをする猫がいて困っていたので、これを電子工作で解決できないかな?と考えていたのです。
でもLEDを光らせるだけで喜んでいる私ではまだまだ知識も足りないし、とりあえずこんなこと考えてますよ、ということを伝えただけのつもりでした。

すると、

数日後にこんなブログが書かれていた

なんと・・・本当に作っちゃったんですってよ!奥さん(´⊙ω⊙`)!

このブログを書いたのは、「電子工作で遊ぶ会」を主催してくれた人、河野 明日旭さん。
kono

「動くものが近づくと水が出る」という機能を実装するには、人感センサー(というか、モーションセンサー?)を使うんだろうなーということは想像していました。
でも、問題がありまして。

ネコが近づいた時に水をかけるのはいいけど、人間が通るたびに水をかけられるのはマズい

ということです。
玄関のドアを開けるたびに、水をかけられてたらたまりませんよね。

ネコであることを判別するにはどうしたらいいんだろう?

・・・顔認識?
・・・いやいや、そんな大掛かりなことは無理。

↑ ↑ ↑
私はこのくらいの思考回路でストップしていました。

河野さんが考えたのは、コレです。

sensor

これがどういうことかといいますと、

– ふたつあるうちの下のセンサーだけが感知したら、水を出す
– それ以外の時には、水を出さない

という風にするのです!
つまり、水鉄砲自体は地面から30センチくらいの場所に固定しておき、人間が通ったときには両方のセンサーが同時に感知するので、水がでることはない。というわけです。

カ・ン・ペ・キ!!

ちなみにコードはこちらです。

#define MOTOR_PIN       10<br />
#define UP_SENSOR_PIN   11<br />
#define DOWN_SENSOR_PIN 12<br />
#define LED_PIN         13</p>
<p>boolean up_sensor_val   = LOW;<br />
boolean down_sensor_val = LOW;</p>
<p>void setup() {<br />
  // Serial.begin(9600);<br />
  pinMode(MOTOR_PIN,       OUTPUT);<br />
  pinMode(UP_SENSOR_PIN,   INPUT);<br />
  pinMode(DOWN_SENSOR_PIN, INPUT);<br />
  pinMode(LED_PIN,         OUTPUT);<br />
}</p>
<p>void loop() {<br />
  digitalWrite(LED_PIN, HIGH);<br />
  up_sensor_val   = digitalRead(UP_SENSOR_PIN);<br />
  down_sensor_val = digitalRead(DOWN_SENSOR_PIN);<br />
  // Serial.println(up_sensor_val);<br />
  // Serial.println(down_sensor_val);<br />
  delay(10);<br />
  digitalWrite(LED_PIN, LOW);</p>
<p>  if ( up_sensor_val   == LOW &amp;&amp;<br />
       down_sensor_val == HIGH ) {<br />
    // Serial.println(&quot;ON!&quot;);<br />
    digitalWrite(MOTOR_PIN, HIGH);<br />
    delay(2000);<br />
    digitalWrite(MOTOR_PIN, LOW);<br />
    delay(3000);<br />
  } else {<br />
    // Serial.println(&quot;OFF&quot;);<br />
    digitalWrite(MOTOR_PIN, LOW);<br />
    delay(5000);<br />
  }</p>
<p>}

実際の水鉄砲はこんな感じです。上部の黒い箱の中にArduino Pro
と人感センサーが入っています。
water-gun
inner

主な部品

Arduino Pro

人感センサー

安定の秋月電子。2個使います。

M-09002

動画がありますので、ご覧ください!!

もおおお・・・ホントすごいです。
ちなみに、河野さんは、自宅で太陽光発電をしており、その発電で実際に洗濯機を動かしたりしているチャレンジャーです。

フリーランスのエンジニアで、業務内容はこんな感じ。
お仕事募集中だそうです(^^)

– センサ等を用いた値の測定
– サーバー構築
– ruby on railsを使ったwebアプリの作成
– サーバーへのセンサ値送信
– 既存システムとの連携プログラム作成
– Arduinoやraspberry piを使った初心者向けの出張講習
– 特定の機器やツールについて、使い方を解説したブログ記事を作成

感想

アイディアを形にできるって素晴らしいです!!
こういう面白いことがあるから、電子工作やめられないな〜・・・・
私も少しずつレベルアップしていって、役に立つものを作ってみたいです。


shoko administrator

フリーランスのWeb制作者。WordPressのサイト構築、およびWebデザインとディレクション。専門学校HAL東京にてWEB学科の講師をしています。WordPressコミュニティに出没。趣味は合気道。

Leave a Reply

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください