スマートホーム ラズパイ

ラズパイ+人感センサで自動で照明をつける

投稿日:

スポンサードリンク

はじめに

ラズペリーパイのGPIOに赤外線の人感センサをつけて自動で照明をつけてみました。結果としてそこそこ動くには動いたのですが運用上問題がありそうなので今回は使わないことにしました。ダメなところは最後に書きます。

実施内容

ハードウェアの準備

ラズベリーパイと人感センサを購入しました。人感センサだけならジャンパワイヤがあればブレッドボードや抵抗は不要です。自分はModel Bを買いましたが、最新版のほうがいいと思います。

OSのセットアップ

省略します。以下のサイトを参考にさせていただきました。

人感センサ接続 / Pythonスクリプト作成

適合するGPIOに人感センサをジャンパワイヤを使ってつなげます。こんな感じになります。

この辺の繋げ方やPythonスクリプト作成は以下のサイトを参考にさせていただきました。

そして、人感センサが発動したらIFTTTのWebHooks経由で照明をつける処理を加えました。例えば次のようなイベント名を引数とする関数を作成して、検知時に呼び出すようにしました。イベント名やキーは各自のものを設定してください。

def ifttt_webhooks(eventid):
  url = "https://maker.ifttt.com/trigger/" + eventid + "/with/key/{{ 自分のキー }}"
  response = requests.post(url)

そして、起動時にこのスクリプトが動くように設定ファイルを作成します。

また、必要に応じてすべてを書き込み不可にして強制シャットダウンしても大丈夫なようにしてみてもいいと思います。

動作確認

人感センサに近づくとめでたく照明が付きました。しかし、たまに誤検知するような感じでした…
ちなみにセンサについているつまみを調整すると角度や距離が調整できます。

断念の理由

今回それなりに動くものができましたが、設置を断念しました。以下に理由を説明します。

置く場所に困る

部屋に入るときについてほしいので入り口付近に置きたいのですが、ここに置くと出るときも反応してしまいすぐに照明がついてしまうという初歩的かつ致命的な問題にぶちあたりました。

これが1つ目の理由です。

たまに誤検知する

上記の問題に対して、例えば自分のいる場所に常にセンサを向けておいて、見えなくなったら消して、現れたらつけるようにすればいいのではないかと思ったのですが、思いのほか誤検知が発生して不在時に勝手につくことがありました。例えば1時間に1回の頻度であったとしても困るわけです。

個体によってその辺の性能差が出てしまうのかもしれませんが、これが2つ目の理由です。

ケースが無い

これが一番ネックだと思っているのですが、いい感じのケースが無いということです。ラズパイ自体のケースはたくさん売っているのですが、GPIOから飛び出たものに関してはどうしてもむき出しになってしまいます。今回は使いませんでしたがブレッドボードも使うと余計それが目立ちます。

常に動かしたいので例えばほこりが原因でショートでもして壊れたら困りますし、万一火事にでも繋がったらと思うと不安です。少なくともケースに入れておけばだいぶ防げると思うのですが、ケース自作のノウハウが無いので断念しました。

あまり凝らずに100均とかで売っているプラスティックのケースにドリルで穴をあけて養生テープかなにかでラズパイを取り付ければいいかなとも思いましたが、上記2つの理由もあってやるきが無くなってやめました…

VESAマウント用やカメラだけ取り付けられるようなケースを売っているところもあるので、例えばテレビ+ラズパイで何かをしたい場合や、ラズパイで監視カメラを作りたいといった用途であれば以下参考サイトにいい感じのものが売っているので見てみてください。

まとめ

ラズパイでスマートホーム化を試みましたが失敗しました。しかし、外出時の自動ON・OFFは別の手段で実現できたので自分の中ではOKとしています。若干負け惜しみ感が出ていますがこれで終わりです。

スポンサードリンク

-スマートホーム, ラズパイ

Copyright© めめんと , 2019 All Rights Reserved Powered by AFFINGER5.