OpenHABとホームコントローラー-アイロンをかける

シンプルなModbusデバイスをOpenHABプラットフォームに正常にドッキングしたので 、すぐに家に役立つ何かをしたいと思いました。 最寄りのオンラインストアでは、Arduino用の配線、ブレッドボード、モジュール、センサー、および青い電気テープを購入しました。



それで、私は来週末の刺激的なレッスンを自分で確保しました。 最初は面白かったが、すぐにワイヤの混乱が緊張し始め、戦闘状態でこの奇跡を経験するという希望は刻々と消えていった。 ワイヤーはそれ自体でい出そうとしているようで、デザインはあらゆる不注意な動きから散らばっていました。 そしてそのとき、私の頭の中にはすでに新しい素晴らしい考えが生まれていました...



これらすべてのセンサーを簡単に接続し、自動化に必要なものをすべて詰め込むことができるボード設計する必要があると判断されました。 また、同じバス上のOpenHABに他のデバイスを接続すると、優れたスマートホームシステムが得られます。







それでは、まず何を実装する必要がありますか?

-圧力測定; 温度と湿度;

-窓やドアの状態、モーションセンサー、火災や漏れに対する保護の監視。

-IButtonおよびRFIDキーを使用したアクセス制御。

-個別の入力および出力を介したアクチュエータの接触監視および制御。

-1-Wireインターフェースを介した複数のリモート温度センサーの制御。

-追加のセンサーの制御、接触、および無線チャネルを介したアクチュエーターの制御。



では、ハードウェアの設計に取りかかりましょう。

Arduinoの最も一般的なセンサーとモジュールを使用して、必要な機能を実装し、すべてを追加してこの構造を取得してみましょう。







ハードウェアブリーフ
BMP180センサーは圧力の測定に使用され、さらに温度を監視します。 BMP180からのデータの読み取りは、I2Cインターフェイスを介して行われます。 MCP23017出力ポートエクスパンダーは同じバスに接続され、8つの外部入力/出力の制御と、コントローラーとセキュリティループのLED表示を提供します。



湿度測定用に、DHT11センサーには独自の単線インターフェースがあります。 将来的には、このセンサーをコントローラーケースの外側に設置する可能性を提供する必要があります。



屋外温度、水温、ラジエーター、および屋内温度を制御するために、共通の1-Wireバスに接続されたDS18B20センサーが使用されました。



2番目の1-WireインタフェースはI-Buttonキーで動作し、武装および武装解除、電気錠の制御の機能で使用されます。 その横にはセキュリティモードインジケータの出力があり、キーリーダーのポケットにあるLEDに接続できます。



マッチング回路を介したセキュリティセンサーは、コントローラーのADCの入力に接続されます。したがって、4つの標準セキュリティループが実装され、通常閉接点と通常開接点でラインと検出器の整合性を監視できます。



無線チャネルは、NRF24L01チップで作成されたArduino用の最も一般的で安価な無線モジュールで作成されます。 トランシーバーは2.4 GHzの周波数で動作します。これの主な欠点は、コンクリートの壁を通る信号伝送が不十分であるために作用半径が小さいことです。 しかし、この欠点は、複数のゲートウェイコントローラーをアパートに配置することで簡単に利点に変えることができますが、一部のセンサーは他の部屋やアパートにある他のセンサーと干渉しません。



BLE(Bluetooth Low Energy)トランシーバーHM-11を設計したモバイルデバイスとの直接通信用。 これにより、AppleのiBeacon機能に加えて、Google Neighborhoodやフィジカルウェブをデバイスに統合できます。 その後、議論の中で、HM-11 BluetoothモジュールをESP8266に基づいた安価なWiFiモジュールに置き換える可能性を提供することが決定されました。これにより、ホストコントローラーまたはルーターへのワイヤレス接続、WiFiセンサーおよびデバイスの接続など、コントローラーのアプリケーションオプションが拡張されます。



設計を理解しました。今度はボードの開発を開始します。

ファンの中には良いインストーラーがほとんどないので、私は彼らのために何の困難も生じませんでした。私はかなり大きなサイズの抵抗器とコンデンサーを選択しました-0805、要素間にきちんとしたギャップを残し、シルクスクリーン印刷によってコンポーネントをマーキングしました。 すべての要素は、Arduino UNO拡張モジュールに対応する設計の68.6x53.3mmボードに配置されました。



PCADで開発されたプリント回路基板のプロトタイプは、緊急生産用のプロトタイプの製造のためにRezonitに送られました 。 数日後、ボードと予約済みの機器はすでに私と一緒にいました。 はんだごてを使ってほんの数日で、今ではその考えが本当の形になりました!



モジュールをArduinoにハングアップさせることは残っており、ここに待望のコントローラーがあります!



そのようなデバイスで作業することは本当に喜びです! Arduinoの標準ライブラリと例を使用して、個々のノードを簡単にテストできました。 設計とレイアウトのエラーと不正確さが発見され、修正されましたが、それほど多くはありませんでした。



しかし、事前に知られている問題は特に明確に現れ、その本質はArduinoの「単一タスク」でした。 1つのセンサーを読み取ると、他のセンサーの作業が妨げられ、OpenHABとの交換が停止しました。



将来的には、この問題を解決できたため、いくつかのライブラリを書き直さなければならず、タイマー割り込みを備えた一種のマルチタスクを準備しました。 しかし、それについてはソフトウェアに関する次の出版物で詳しく説明します。



仕事の結果として起こったこと:



スマートホームシステム用の信頼性の高いコンパクトな出力入力コントローラーのプロトタイプが作成されました。これは、実験だけでなく、実際の条件でも使用でき、他のデバイスの開発の良い基盤として使用できます。



モジュラー設計により、コントローラーの構成を簡単に変更でき、構成に含まれるセンサーとコンポーネントのテストが容易になります。



コントローラーの重要な機能は、組み立てが容易であり、パイロット生産でも十分なコストがかかることです。これは、その人気にプラスの影響を与える可能性があります。



コントローラーのフルバージョンを作成する前に行うべきこと:

1.アルファテスト中に見つかったエラーと欠点を排除し、スキームと設計を調整する。

2. HM-11モジュールの代わりにESP8266のWiFiモジュールを接続するためのコネクタを取り付け、コネクタの同じピン配列でHM-11のアダプタボードを設計します。

3. DHT11湿度センサーのリモート接続用のGroveまたはDFRobot標準コネクタを提供します



それがすべてのようです、スキームと進捗状況に関する追加情報はプロジェクトページvk.com/myremoterで見つけることができます



Modbusプロトコルを使用して、ArduinoをOpenHABシステムにドッキングすることに関する以前の出版物は、ここで見ることができます:

OpenHABとArduinoを友達にする方法habrahabr.ru/post/248569

ArduinoとModbus habrahabr.ru/post/249043

ArduinoおよびOpenHAB habrahabr.ru/post/252555



All Articles