RaspberryPiでドアチャイム押下をスマホ通知してみる

賃貸が故に自宅環境の改善が難しい部分もある。

今いちばんの悩みは家の中に来客を知ることができないエリアがあること。大家さんの入居前リフォームによって、ドアチャイムのベルが2階のリビングに設置されており、1階の奥の部屋にいるとチャイムの音そのものが聞こえないのだ。いい人(しつこい人?)ならドアのノックまでやってくれるのでなんとか気づくことができるのだが。

別に来客者の顔を見たいわけではない。家のチャイムが鳴ったこと、訪問者が来たことをどこでも知ることが出来るというだけのシンプルなシステムを構築したい。

パナソニック カラーテレビドアホンPanasonic VL-SV25K パナソニック カラーテレビドアホンPanasonic VL-SV25K

パナソニック
売り上げランキング : 308

Amazonで詳しく見る

うちのドアチャイムは昔ながらの電磁石タイプのもの。呼び鈴を押すと乾電池とつながった電磁石が芯棒を動かして左右の鉄琴を叩くやつ。押・離で高音低音の1セットで鳴る。

この信号をうまく拝借してネットワークに流すことができればスマホに通知ができるはずと考えた。最初は電磁石に流れる信号を直接もらう、変化する磁力をチャイムの外側から磁気センサなどで拝借するなんて方法を考えていたが、チャイムの動作そのものが不安定になるのを避けたい、かつチャイム用乾電池の消費が早くなるのも痛いということで非破壊で可能な方法をいろいろ調べていた。

で、呼び鈴スイッチを見たところ2回路2接点方式で、しかももう1回線も配線が伸びていることが判明 。玄関脇まではその回路が延びていることがわかったので、その配線を拝借することにする。これで単なるスイッチの開閉のみを検出すれば良いことになる。全体的なイメージはこんな感じ。

image.JPG

今回のシステムの構成に必要な機能は

1.呼び鈴押下の検出

2.押下時に情報をネットワークに送信

3.送信されてきた押下情報をユーザーに通知

大きく分けてこの3点になる。最初はArduinoやmbedを考えていたが、動作電源がACアダプタであれば消費電力は無視できること、ネットワークとの接続無線化、簡単にできそうな方法を考慮して、今回はオーバースペックながらもRaspberryPiを選択することにした。

まず1のスイッチ検出だが、超単純なプルダウン回路でRaspberryPiのgpioに接続。検出にはwiringPiライブラリを使用することにした。2,3の送信、受信に使うプロトコルだが、専用のサーバー作ったり最初から自作するのも面倒なのでスマホ向けプッシュ通知APIをうまく使うことに。

プッシュ通知APIの中でiPhone,Android,今後ChromeのNotificationで使えそうなサービスをピックアップした。それぞれ別サービスなのがしっくりこないが、受信側のアプリの使い勝手も重視したい。今回選んだサービス、APIは以下の3つ

Android Notify My Android (nma)

iPhone Boxcar

Chrome Pusher

これらを同時に呼んで各端末に通知できるようにしたいと思う。

コメント

タイトルとURLをコピーしました