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)