eHouseホームオートメーション用eHouse4Javaオープンソースソフトウェア

eHouse ホームオートメーション eHouse4Java – javaの(オープンソース)ソフトウェアは、次のモジュールを(含む . ジャワ – ソースコード , . クラス – 生成されたクラス):

  • Ehouse4java . ジャワ – アプリケーションのコアとメインインターフェイス
  • ehousecommunication . ジャワ – 通信機能と構成
  • EhouseTCP . ジャワ – コントローラの通信および設定
  • EventsToSend . ジャワ – セカンダリ·イベント·ハンドリング
  • EventToSend . ジャワ – 単一のイベントの定義
  • GraphicObject . ジャワ – グラフィカルオブジェクト定義
  • ISYS . ジャワ – ベンダーのための専用の関数が含まれています
  • RunEvent . ジャワ – テキスト形式からイベントを送信
  • StatusEhouse . ジャワ – クラスは、各eHouse1コントローラの1つのインスタンスが含まれ
  • StatusEthernet . ジャワ – クラスは、各イーサネットeHouseコントローラの1つのインスタンスが含まれ
  • StatusServer . ジャワ – 補助TCP / IPサーバー , 外部LANを介してクライアントパネル(にTCP / IPを介してすべてのコントローラのステータスを送信 , WAN , イントラネット , インターネット)
  • 可視化 . ジャワ – eHouseの可視化とグラフィックコントロールの標準に準拠した可視化/グラフィカルなコントロールクラス

関数とグローバル変数は、ソフトウェアのソースコードeHouse4Javaに記載されている .
ソフトウェアは独立したスレッドを含む , 例えば . 通信 , メインのアプリケーションに関連して、バックグラウンドで実行される .
これは、プロセスに時間がかかりすぎるというアプリケーションを停止または遅延させない , (デッドロック)通信を待っている間、それはアプリケーションのかなりのスローダウンやサスペンションの可能性をもたらし .
メインスレッドは、以下のとおりです。

  • TCPクライアント(コントローラのステータスを受信する , LAN上のTCP / IP , WAN , インターネット , イントラネット)
  • UDPリスナー(コネクションレスのUDPの状態を放送するためにリスニング用) – LAN内のみ , イントラネット
  • どんな音響テキストメッセージを再生するにはスピーチシンセサイザー
  • マルチスレッドTCP / IPサーバー – 任意のタイプの接続されたクライアント·パネルへのルートを受信したステータス(のLAN経由に , WIFI , インターネット , イントラネット , WAN)

コントローラを使用した通信メディアの名前は、フォーム上の設定は、LAN(TCP接続のタイプを選択し付属しています , 無線LANのUDP , インターネット , オフ) .
他のスレッドは、クラス内にあるグローバル変数を使用して活性化される ” EhouseTCP ” または ” ehousecommunication ” .

アプリケーションはeHouse標準に従って可視化を使用しています , 有効にするスクリプトを使用してCorelDrawのアプリケーションから生成された:

  • インポートのeHouseシステム構成
  • グラフィカルオブジェクトの作成手動で、またはスクリプトを使用して
  • すべてのパネルのすべての可視化手法のためのデータをエクスポートする , Webブラウザ , PC , タブレット , スマートフォンや他のシステム

これは、記事で詳しく説明します:
” グラフィカルな可視化と制御のeHouseスマートホームを作成 ” .
可視化ソフトウェアは、スケーラブル·ベクター·グラフィックス(SVG)に基づいている .
このメソッドを使用することができます ” ロスレスの ” 品質の描画曲線の , テキスト , 単純な幾何学図形 , かかわらず、拡大の大きさ , 画面シフト , など .
それはそのようなJPGなどの背景グラフィックイメージを使用して不可能だっただろう , ビットマップ , など . .
ソフトウェアの可視化は、オンラインで作業時間を処理するCPUとグラフィックスの使用率を低減させるために最適化されています , 処理するために、大量のデータによる . コントローラのステータスを受信したときにグラフィックイメージをキャッシュして、適切な制御信号に分割され、処理され , とはるかに速く、各コントローラーの可視化·キャッシュから画面に表示される .

これは、ことができます:

  • 画像の変更と可視化のために処理されたデータの大幅な削減
  • 投影された画像を変更するときに大幅にちらつきを抑える
  • CPUおよびデータ可視化の負荷を大幅に削減
  • あまりの使用 ” 弱い ” , あまり効率的で安価なハードウェア , グラフィックパネル , タブレット , コントロールパネル , など . , 快適な職場を維持しながら、
  • バッテリに関する作業のバッテリーと携帯機器や長さに特に重要である消費電力の削減

これは、記事のスクリーンショットと議論される:
” Javaでグラフィカルな可視化およびインテリジェントホームコントロール ”

コントローラを使用した通信EHouse4Java ホームオートメーション

PCの監督の下eHouse1

アプリケーションのeHouseのこのバージョンでは . exeはRSのレシーバ·ステータスとして働く – 485(コンバータRSと – 485/RS – 232)と二つのメソッドに変更を加えずにステータスを送信し、お互いに衝突しないように:

  • eHouse . TCP / IPサーバーとしてexeファイルの作品はステータスパネルに関するクエリに応答 , 参照さらにパネルを接続して、何らかの理由で切断されるまで、それらを維持する . この方法では、ネットワークを介して外部のTCP / IPパネルとの通信を確立しようとする試みでは特に貴重である , インターネットのような場所それはUDPステータスを受信することはできません .
  • eHouse . exeは、LAN上の任意の数のクライアントのためにブロードキャストコネクションレスのUDPプロトコルを送信 , イントラネット . つまり、 , パネルには、サーバに接続されていないこと , しかしからブロードキャストメッセージをリッスン ” eHouse . exeファイル ” アプリケーション . このようにパネルのステータスは、ネットワークの負荷を変更することはありませんどのように多くの受信者に関係なく、 , またはコンピュータ上のどの ” eHouse . exeファイル ” アプリケーションが実行され . 残念ながらそれは不可能であるか、そう、この場合は最初の方法を使用する必要があり、インターネットを介してUDPブロードキャストを送信することが非常に困難である .

CommManagerの監督の下eHouse1

このバージョンでは、 , CommManagerはRSを経由して入ってくる状態を受け取る – 485(eHouse1コントローラから)と二つのメソッドに変更を加えずにステータスを送信し、お互いに衝突しないように:

  • TCP / IPサーバーは、ステータスパネルに関するクエリに応答するCommManagerは動作 , 参照さらにパネルを接続して、何らかの理由で切断されるまで、それらを維持する . この方法では、LANの外部パネルとの通信を確立するために特に貴重な試みである , インターネットのような場所それはUDPステータスを受信することはできません .
  • CommManagerは、UDPプロトコルは、LAN上の任意の数のクライアント用です(コネクションレス)ブロードキャストを送信します , イントラネット .
    つまり、 , パネルには、サーバのTCP CommManagerに接続されていないこと , しかしCMからブロードキャストメッセージを聞いて . このように状況のどのように多くの受信者がパネルに関係なく , それは、ネットワークの負荷やCommManagerのCPU使用率を変更することはありません . 放送UDPブロードキャストを行うことはできません , または重く最初の方法を使用する必要があり、この場合はそう、インターネットを介して阻害され .

イーサネットeHouse(eHouse4Ethernet)

CommManager:イーサネットコントローラのこのバージョンでは、 , EthernetRoomManager , など . , 独立して2つの方法で自分のステータスを送信 , お互いに衝突しないように:

  • TCP / IPサーバーは、ステータスパネルに関するクエリに応答する各コントローラが動作し , 参照さらにパネルを接続して、何らかの理由で切断されるまで、それらを維持する . この方法では、LANの外部パネルとの通信を確立するために特に貴重な試みである , インターネットなど , それはUDPステータスを受信することはできませんどこ .
    しかしながら , 複数のイーサネット·コントローラーの場合、各コントローラーのTCP / IPへの接続を維持する必要がある , 直接コントローラーから完全なシステムステータスをピックアップする . これは、プロセッサ制御パネル上の大きな負荷をもたらすことができ , 通信に関連した問題の重大度 . この場合 , それは、LAN側のアプリケーションに配置することが望ましい , ローカルUDPステータスを受信して​​いる , とインターネットを経由して転送するTCP / IPを介した . これが実現し、アプリケーションeHouse4Javaで説明しています , このソリューションを可能にする . 欠点は、これらの機能を実行し、追加のハードウェアを維持する必要がある .
  • 各コントローラは、UDPプロトコルは、LAN上の任意の数のクライアントのためのものです放送(コネクション)を送信 , イントラネット . つまり、 , パネルは、TCPサーバー·コントローラーに接続されていないこと , しかし、メッセージを聞いては、すべてのコントローラーから放送 . このようにパネルのステータスは、ネットワークの負荷、またはコントローラのCPU使用率を変更することはありませんどのように多くの受信者に関係なく、 . 放送UDPパッケージは可能ではないか、重く、インターネットを介して阻害され , ので、この場合、最初のメソッドを使用する必要があります . UDPの送信の可能性は、リンクの種類に応じて、可能な場合もあります , パフォーマンス . 時にはそれは、VPNを正しく設定されたリンクを通じてブロードキャストUDPを得ることが可能である , しかしながら , でも、この状況で , パケットが失われる可能性があります , UDPのためのセキュリティメカニズムの欠如に起因する . 誤ったデータが自動的に非チェックサムのためのソフトウェアのeHouseパネル(チェックサム)によって取り消され