eHouse4Java Perisian Sumber Terbuka untuk eHouse Automasi Utama

eHouse Automasi Utama eHouse4Java – java (sumber terbuka) perisian termasuk modul berikut ( . java – kod sumber , . kelas – Kelas yang terhasil):

  • Ehouse4java . java – Teras permohonan dan antara muka utama
  • ehousecommunication . java – fungsi komunikasi dan konfigurasi
  • EhouseTCP . java – komunikasi dan konfigurasi pengawal
  • EventsToSend . java – acara pengendalian menengah
  • EventToSend . java – definisi acara tunggal
  • GraphicObject . java – objek definisi grafik
  • ISYS . java – termasuk fungsi khusus untuk vendor
  • RunEvent . java – Menghantar peristiwa dari bentuk teks
  • StatusEhouse . java – kelas mengandungi satu contoh untuk pengawal eHouse1 setiap
  • StatusEthernet . java – kelas mengandungi satu contoh bagi setiap pengawal eHouse Ethernet
  • StatusServer . java – Tambahan TCP / IP Pelayan , menghantar semua pengawal status melalui TCP / IP panel pelanggan (luaran melalui LAN , WAN , Intranet , Internet)
  • visualisasi . java – Visualisasi / kelas kawalan grafik selaras dengan visualisasi eHouse dan standard kawalan grafik

Fungsi dan pembolehubah global diterangkan dalam perisian kod sumber eHouse4Java .
Perisian termasuk benang bebas , contohnya . Komunikasi , yang dilakukan di latar belakang berhubung dengan permohonan utama .
Ini tidak berhenti atau melambatkan permohonan bahawa proses mengambil masa terlalu lama , yang mengakibatkan turun yang ketara perlahan permohonan dan kemungkinan penggantungan sementara menunggu untuk komunikasi (kunci mati) .
Benang yang utama adalah:

  • TCP Pelanggan (untuk menerima status pengawal , tcp / ip pada LAN , WAN , Internet , Intranet)
  • Pendengar UDP (untuk mendengar untuk menyiarkan status dalam UDP sambungan) – hanya dalam LAN , Intranet
  • Pensintesis tutur untuk bermain mana-mana mesej teks akustik
  • Bebenang TCP / IP Server – laluan status yang diterima panel klien yang disambungkan apa-apa jenis (melalui LAN , WIFI , Internet , Intranet , WAN)

Nama media komunikasi dengan pengawal disertakan dengan tetapan pada borang memilih jenis sambungan (LAN TCP , LAN UDP , Internet , Off) .
Benang lain diaktifkan menggunakan pembolehubah global dalam kelas ” EhouseTCP ” atau ” ehousecommunication ” .

Permohonan menggunakan visualisasi menurut eHouse standard , dihasilkan daripada aplikasi CorelDraw menggunakan skrip yang membolehkan:

  • konfigurasi sistem eHouse import
  • penciptaan objek grafik secara manual atau dengan skrip
  • mengeksport data untuk semua kaedah visualisasi untuk semua panel , web pelayar , pc , tablet , telefon pintar dan lain-lain sistem

Ini dibincangkan dengan lebih lanjut dalam artikel:
” mewujudkan visualisasi grafik dan kawalan eHouse rumah pintar ” .
perisian visualisasi berdasarkan grafik vektor boleh skala (SVG) .
Kaedah ini membolehkan anda ” Lossless ” lengkung lukisan yang berkualiti , teks , mudah angka geometri , tanpa mengira saiz pembesaran , Anjakan skrin , dan sebagainya .
Ia tidak Adakah mungkin menggunakan imej latar belakang grafik seperti jpg , bitmap , dan sebagainya . .
Visualisasi perisian telah dioptimumkan untuk mengurangkan penggunaan CPU dan pemprosesan grafik masa apabila bekerja dalam talian , kerana jumlah data yang besar untuk memproses . Imej grafik cache dan dibahagikan kepada isyarat kawalan yang sesuai dan diproses apabila menerima status pengawal , dan dipaparkan pada skrin lebih cepat dari cache visualisasi setiap pengawal .

Ini membolehkan:

  • pengurangan ketara dalam data diproses untuk visualisasi dengan perubahan imej
  • ketara mengurangkan kelipan apabila menukar imej unjuran
  • pengurangan ketara dalam beban CPU dan data visualisasi
  • penggunaan banyak ” lemah ” , perkakasan yang kurang cekap dan kurang mahal , panel grafik , tablet , panel kawalan , dan sebagainya . , manakala mengekalkan kerja yang selesa
  • pengurangan dalam penggunaan kuasa yang amat penting dalam peralatan bateri dan telefon bimbit dan panjang kerja pada bateri

Ini dibincangkan dengan screenshot dalam artikel:
” Visualisasi grafik dan kawalan rumah pintar di Jawa ”

EHouse4Java komunikasi dengan pengawal automasi rumah

eHouse1 bawah pengawasan PC

Dalam versi ini eHouse permohonan . exe berfungsi sebagai status penerima RS – 485 (dengan penukar RS – 485/RS – 232) dan menghantar status tanpa apa-apa perubahan pada dua kaedah tidak berlanggar antara satu sama lain:

  • eHouse . kerja exe sebagai pelayan TCP / IP respons kepada pertanyaan mengenai panel status , merujuk terus menyambung panel dan mengekalkan mereka sehingga diputuskan untuk apa-apa sebab . Kaedah ini adalah amat berharga dengan cubaan untuk mewujudkan komunikasi dengan panel TCP / IP di luar melalui rangkaian , seperti Internet di mana ia tidak mungkin untuk menerima status UDP .
  • eHouse . exe menghantar protokol UDP siaran sambungan untuk apa-apa bilangan pelanggan pada LAN , Intranet . Ini bermakna bahawa , bahawa panel tidak menyambung kepada pelayan , tetapi mendengar disiarkan mesej daripada ” eHouse . exe ” aplikasi . Dengan cara ini, tidak kira berapa ramai penerima panel status tidak mengubah beban rangkaian , atau komputer di mana ” eHouse . exe ” permohonan berjalan . Malangnya ia tidak mungkin atau sangat sukar untuk menghantar siaran UDP melalui Internet maka dalam kes ini kaedah pertama perlu digunakan .

eHouse1 bawah pengawasan CommManager

Dalam versi ini , CommManager menerima status masuk melalui RS – 485 (daripada eHouse1 pengawal) dan menghantar status tanpa apa-apa perubahan pada dua kaedah tidak berlanggar antara satu sama lain:

  • CommManager bekerja sebagai pelayan TCP / IP respons kepada pertanyaan mengenai panel status , merujuk terus menyambung panel dan mengekalkan mereka sehingga diputuskan untuk apa-apa sebab . Kaedah ini adalah terutamanya percubaan berharga untuk mewujudkan komunikasi dengan panel luar LAN , seperti Internet di mana ia tidak mungkin untuk menerima status UDP .
  • CommManager menghantar siaran (sambungan) protokol UDP adalah untuk apa-apa bilangan pelanggan pada LAN , Intranet .
    Ini bermakna bahawa , bahawa panel tidak menyambung ke pelayan TCP CommManager , tetapi mendengar mesej yang disiarkan dari CM . Dengan cara ini, tidak kira berapa ramai penerima panel status , ia tidak mengubah penggunaan CPU beban rangkaian atau CommManager . Penyiaran siaran UDP tidak mungkin , atau terhalang banyak melalui internet jadi dalam kes ini kaedah pertama perlu digunakan .

Ethernet eHouse (eHouse4Ethernet)

Dalam versi ini pengawal Ethernet: CommManager , EthernetRoomManager , dan sebagainya . , bebas menghantar status mereka dalam dua cara , tidak berlanggar antara satu sama lain:

  • Pengawal Masing-masing bekerja sebagai pelayan TCP / IP respons kepada pertanyaan mengenai panel status , merujuk terus menyambung panel dan mengekalkan mereka sehingga diputuskan untuk apa-apa sebab . Kaedah ini adalah terutamanya percubaan berharga untuk mewujudkan komunikasi dengan panel luar LAN , seperti Internet , di mana ia tidak mungkin untuk menerima status UDP .
    Walau bagaimanapun , dalam kes pengawal Ethernet pelbagai adalah perlu untuk mengekalkan sambungan kepada TCP / IP pengawal setiap , untuk mengambil status sistem yang lengkap terus dari pengawal . Ini boleh menyebabkan beban yang lebih besar pada panel kawalan pemproses , keterukan masalah yang berkaitan dengan komunikasi . Dalam kes ini, , ia adalah lebih baik untuk meletakkan permohonan sampingan LAN , yang menerima status UDP tempatan , dan ke hadapan over TCP / IP melalui Internet . Ini direalisasikan dan dibincangkan dalam permohonan eHouse4Java , yang membolehkan penyelesaian ini . Kelemahan ialah keperluan untuk mengekalkan perkakasan tambahan yang melaksanakan fungsi-fungsi .
  • Setiap pengawal menghantar siaran (sambungan) protokol UDP adalah untuk apa-apa bilangan pelanggan pada LAN , Intranet . Ini bermakna bahawa , bahawa panel tidak menyambung kepada pengawal pelayan TCP , tetapi mendengar mesej disiarkan dari semua pengawal . Dengan cara ini, tidak kira berapa ramai penerima panel status tidak berubah beban rangkaian atau pengawal penggunaan cpu . Penyiaran UDP pakej adalah tidak mungkin atau banyak ganggu melalui internet , jadi dalam kes ini kaedah pertama perlu digunakan . Kemungkinan penghantaran UDP yang kadang-kadang mungkin bergantung kepada jenis pautan , Prestasi . Kadang-kadang ia adalah mungkin untuk mendapatkan UDP siaran melalui pautan VPN dikonfigurasi dengan betul , Walau bagaimanapun , walaupun dalam keadaan ini , paket mungkin hilang , disebabkan kekurangan mekanisme keselamatan untuk UDP . Data yang tidak betul akan dibatalkan secara automatik oleh panel eHouse perisian untuk checksum bukan (periksa jumlah)