問題タブ [home-automation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1247 参照

android - 有線デバイスからネットワーク上のワイヤレス デバイスを検出する

ホームオートメーションを試しています。私の目標は、Android スマートフォンが自宅の Wifi を離れたときに HTTP リクエストを送信し、再接続したときに別の HTTP リクエストを送信することです。目標は、私が家を出たとき、より具体的には、電話が家を出たとき、IP カメラのモーション検出が有効になることです。そして、家に帰ると武装解除されています。IP カメラには HTTP インターフェースがあり、プログラムで武装解除を行うことができます。

これは、私が家を離れているときに、玄関で動きを検出すると、Web カメラがメールを送信することを意味します。実際に家に入る約 1 分前に携帯電話が Wi-Fi に再接続されるため、ドアに入る直前に動体検知が解除され、自分が家に入ってきたことを知らせるアラームが鳴りません。また、携帯電話が Wi-Fi に接続されているためです。ドアを出ても、自分が出て行ったというアラームも鳴りません。

私の現在のアプローチでは、LAN 上で 24 時間 365 日稼働している Linux サーバーで 1 分ごとに cron ジョブを実行しています。2 つの Bash スクリプトで構成されています。1 つは自分の電話の存在を検出します (1電話が存在する場合は返され、存在し0ない場合は返されます):

...そして、自動化を行うスクリプトを作成する他のユーザー。arpingにある 0 バイトのファイルの存在とともに、ネットワーク上のデバイスを検出するために使用します/tmp/phone-presence。一方が電話が存在すると言い、もう一方が存在しない場合、必要な HTTP 要求を送信して、Web カメラのモーション検出を有効または無効にします。

これは機能しますが、存在検出は信頼できません。私のログは次のようなエントリでいっぱいです:

そして、これらのエントリは、家を出たからでも、電話にまったく触れたからでもありません。私の電話はずっと Wi-Fi ネットワークに接続されていたはずです (まあ、少なくとも切断するように言わなかったので、強い信号がありました)。

したがって、私の現在のソリューションは信頼できません。出入りするときに、自分の写真をメールで受け取ることがあります。-cfor で指定されたカウントを増やしてarpingも、通常、電話の検出の信頼性が向上するわけではありません。さらに、ばかげて高く設定すると、cron ジョブが毎分実行されるため、問題が発生し始めます。

電話が家を出るのを観察するのにさらに数分かかるかどうかはあまり気にしませんが、電話が実際にWifiに再接続してから、ウェブカメラのモーション検出が解除されるまでに1分以内かかる必要があるため、取得できません自分へのアラーム。家にいるときに Web カメラを誤って有効にしてはならず、家にいないときに誤って無効にしてはなりません。

私が検討したが、実装方法がわからない他のいくつかのアプローチ:

  • SNMP を使用してルーター (Tomato を実行) に毎分クエリを実行し、デバイスがまだネットワーク上にあるかどうかを確認しますarping
  • dnsmasq電話が Wi-Fi に接続された結果として、ルーターが電話に DHCP リースを発行するときにスクリプトを実行するようにルーターを構成します。しかし、電話がネットワークから切断されるという反対のシナリオで、それがどのように機能するかはわかりません。電話には静的な DHCP アドレスがあるため、電話に割り当てられた IP は変更されませんが、DHCP 経由で IP を要求します。
  • Llamaを使用してプレゼンス検出を処理します。私はすでに Llama を使用して、自分の位置情報に基づいて携帯電話でいくつかのことをうまく自動化しています。電話が Wifi に参加するときにリクエストを送信するのは問題ありませんが、Wifi を離れるときはそうではありません。これは、両方のHTTP リクエストが LAN 上で送信される必要があるためです。これらには機密データが含まれています。現在、Apache をプロキシとして使用するオプションがあります私は公開用の SSL で保護された Apache インスタンスを実行している Linux サーバーを持っており、必要に応じて (まあ、助けを借りて) インターネット上で SSL 経由でリクエストを作成し、Web カメラに転送できるように構成することができます。 LAN。そうすれば、HTTP 要求をインターネット経由で送信できますが、URL を推測するまでは、要求が暗号化されるため、誰もそれらにアクセスできません。

では、このシナリオを確実に処理するには、どのようなアプローチをお勧めしますか? 繰り返しますが、大まかな目標は、電話が家を出たときに 1 つの HTTP 要求を送信し、家に戻ったときに別の HTTP 要求を送信することです。


これまでの提案に感謝します。ここにいくつかの更新があります:

  • 私の電話は、通常の ICMP ping に確実に応答しません。すぐに応答することもあれば、タイムアウトすることもあります。
  • トマトは確かに持っていますwlが、非常に不正確なようです. 特に、数か月間 LAN に接続されていなかったデバイスがまだ存在し、信号強度が良好であると見なします。バッテリーを外して棚に置いているので、それはありそうもありません。
  • IFTTT の使用に問題はありません (ただし、最初は完全にローカルなものを好みます)。ただし、ジオフェンシングの側面は簡単に処理できますが、これら 2 つの HTTP 要求を送信する必要がある Web カメラ アラームを有効または無効にするために必要なトリガーを実際に実行する方法はわかりません。
  • Java クラスの提案に感謝しますが、状況が本当に絶望的でない限り、このシナリオを処理するために Android アプリケーション全体を作成する必要はありません。さらに、Llama と IFTTT には、ジオフェンシングの問題を処理するためのいくつかのオプションが既に用意されています。ラマは、Wifi が接続されているか切断されているときにも、さまざまなアクションを実行できます。

arping現在のアプローチの信頼性を大幅に向上させる方法を見つけたと思います。Androidの設定で「Wi-Fi最適化」をオフにしました。それ以来、過去 8 時間にログに表示される偽陽性ドロップは 1 回だけでしたが、通常は 1 時間に 1 回程度です。この設定が本当に役立つかどうかを確認するために、しばらくの間この設定を無効にしておきます。私の理論では、Wifi 接続がより確実に維持されるため、電話が Wi-Fi トラフィックに応答する可能性が高くなります。

また、2 つの要求 (1 つは Web カメラ アラームを有効にするため、もう 1 つは無効にするため) に対して Apache SSL プロキシをセットアップすることもできたので、必要に応じて、これらの要求をインターネット経由で安全に送信できます。


数日間ログを見た後、電話で「Wifi 最適化」をオフにした後、これは完全に信頼できるようになりました. しばらくして電話のプログラムやサービスがそれを使用しなかった場合、Wifi接続が時々スリープ状態になり、ネットワークから切断されたと思います。

0 投票する
2 に答える
1113 参照

pic - Mplab pic プログラムが動作しない

私はスマート ホーム オートメーション デバイスを作成しようとしています。部屋に入るとライトが自動的に点灯し、その逆も同様です。私のプロジェクトでは 2 つのレーザーを使用して、部屋に人が入るか出るかを指定します。また、写真で人数を数えたいと考えています。部屋に入って、部屋に入る最後の人がこれを行うために去った後、電気を消します。私はpic16f877a icとmplabをxc8コンパイラのIDEとして使用しています。これまでのところ、プログラムは非常にうまく機能しますが、入った人はカウントされません部屋は冷静ではなく、自分のコードがどこに問題があるのか​​ よくわかりません。コードは次のとおりです。

問題はないと思いますが、ここで何が問題なのかわかりません。これを解決しようとしている返信者に事前に感謝します。それは本当に私にとって大きな助けになるでしょう

0 投票する
1 に答える
1113 参照

networking - lifx仮想電球とのワイヤレス通信

先日、 LIFX Virtual Bulbを見たのですが、この通信がどのように行われるのか知りたいです...

LIFXとは何かをご存じない方のために説明すると、これは iPhone および Android アプリから制御できるワイヤレス RGB LED 電球です。まだ電球を持っていない場合は、www.virtualbulb.lifx.coにアクセスし、携帯電話で LIFX アプリを開き、Web ブラウザーで仮想電球を制御できます。これを行うには、仮想電球の Web ページを開いた携帯電話とラップトップが同じ Wi-Fi ネットワーク上にある必要があります。私のiPhoneとラップトップの間に直接接続はありませんでした。両方とも同じwifiネットワーク上にありました。ここから考え始めました!!

私はネットワーキングについてほとんど知りません。私にできることは、インターネット接続用のモデムと Wi-Fi ルーターをセットアップすることだけです。

したがって、上記 (太字の文) について調べているときに、ホーム オートメーションで広く使用されている Zigbee (802.15.4) 標準に出くわしましたが、ラップトップでブラウザーが開いていたので、そのような通信には Zigbee は問題外です。

次に、Wifi ダイレクトを考えましたが、iPhone とラップトップの間に直接接続がなく、ネットワークが関与していたため、その可能性も除外されました。

誰かがこの通信プロトコルと、iPhone/Android デバイスと REAL LIFX 電球の間で通信がどのように行われるかについて教えてくれたら素晴らしいと思います。

前もって感謝します!

混乱したオタク!

0 投票する
1 に答える
1443 参照

perl - swiftプレイグラウンドを使用してソケット接続を実装するには?

ホームオートメーションバスのアクティビティを監視し、ライトのステータスが変化したときに「言う」ためのこの単純な Perl ソフトウェアがあります。Xcodeプレイグラウンドを使用してSwift言語を使用して実装したいと思います。試してみるべき解決策はありますか?

0 投票する
0 に答える
137 参照

c++ - Zigbee の Mac データの読み込み

私は、人気のある Zigbee ベースの RF-MCU Mac コードベースの 1 つを使用してプロジェクトに取り組んでいます。MCU にセンサーを統合しました。同じことがデータの読み取りであり、Zigbee プロトコル スタックを使用してゲートウェイにデータを送信しています。ネットワーク層の Mac 層からのデータを読み取ります。それを行う関数/API はありますか?

どんなリンクや本も大いに役立ちます。

前もって感謝します

0 投票する
1 に答える
302 参照

automation - arduino と Pic マイクロコントローラを使用したホーム オートメーション

こんにちは、私はマイクロ コントローラ/arduino の初心者
です。ホーム オートメーションに Arduino と Pic マイクロコントローラを使用する予定です。光、温度、ガス漏れ検出、火災検出、私はプロジェクトを行うことを考えています、送信機側のセンサーがデータを感知し、arduinoはユーザーがオン/オフに切り替えたデータに基づいてデータをPicマイクロコントローラー(受信機)に送信しますファン/ライトと温度を表示するには、このようにすることは可能ですか?

0 投票する
3 に答える
25832 参照

arduino - ホームオートメーション用Arduinoで一度にいくつのセンサーが動作しますか?

Arduinoを使用してホームオートメーションを行うことを考えているので、光センサー、温度制御、モーションセンサー、ガス漏れセンサー、火災検出センサー、ライトのオン/オフ、ファンのオン/オフ、ファン速度制御、モーション検出用のホール効果センサーを使用します、ガス/火災検知警報器、扉の開閉をそれぞれ行います。しかし、私の質問は、Arduino ボードで一度にいくつのセンサーが動作するかということです。
また、PICまたはi.MX6 Dual Lite/Soloを使用してArduinoを制御することは可能ですか?

0 投票する
3 に答える
1355 参照

bash - ターミナル シェル: コマンドライン引数としてテキスト ファイルの代わりに echo を使用する方法

引数としてテキスト ファイル (出力をフォーマットするため) を必要とするコマンド ライン ユーティリティがあります。純粋な値のみが必要で、書式設定は必要ないため、値を取得するための 1 行のスクリプトが必要です。

テキスト ファイルtemplate.fileには以下のみが含まれます。

これが私のユーティリティの例です:

私が欲しいのは次のようなものです:

echo外部テキスト ファイルの代わりに (またはおそらく代替)の結果を使用する方法を知っている人はいますか?

誰かが助けてくれることを願っています。

マーカス

0 投票する
1 に答える
657 参照

automation - Zigbee ホーム オートメーションの実装

Zigbee のホーム オートメーション プロファイルを実装するためのオープン ソース ライブラリはありますか? エンドデバイスは必ずしも特定の開発者に属しているとは限りません。

0 投票する
0 に答える
571 参照

python - Energenie Pi-Mote シンプル オン、待機、オフ スクリプトが機能しない Raspberry Pi ホーム オートメーション

raspberry pi で使用する Energenie モジュールとプラグを購入しました。私はGPIOをまったく初めて使用し、Webサイトのデモスクリプトで動作させることができました(https://energenie4u.co.uk/res/pdfs/ENER314%20UM.pdf

それ以来、プラグインをオンにし、しばらく待ってからオフにしたいだけなので、Python 2(https://libraries.io/pypi/energenie )でインストールされた here の指示に従いましたが、取得できません上記のリンクを使用して作成した python スクリプトを使用して動作します。私は何が欠けていますか?スクリプトは次のとおりです。

私もこれを試しました: