Home Automation eHouse penyahkodan CommManager status – kod sumber

eHouse Automasi Utama , Pengurusan Bangunan – Format data CommManager status dalam kod binari . CommManager adalah pengawal eHouse Automasi Utama sistem , yang mengumpul fungsi komunikasi dan ” pintu masuk ke dunia ” untuk sistem berdasarkan sistem versi eHouse pengawal 1 (485) .
Ia membolehkan anda untuk mengetepikan dengan PC anda sambil mengekalkan kefungsian yang tinggi (built standard – dalam pengawal) .
Di samping itu , sistem menggantikan versi lama ExternalManager daripada ” eHouse 1 ” dan 3 InputExtenders , Pemangku pengawal berfungsi sepenuhnya: roller , pintu pagar dan kajang . Ia juga bersepadu dengan penggera yang membolehkan Kawalan oleh SMS atau LAN .
Ia juga mempunyai built – SMS pemberitahuan penggera – Ethernet Home Automation – Rollers , Gates , Gerbang – pengawal dan sistem keselamatan
Pengawal dalam versi hibrid (eHouse 1 di bawah pengawasan CommManager) mengumpul semua status RoomManagers ( Automasi Utama – Pengawal Bilik ) Dan HeatManager ( Pengawal Dandang , pemulihan , Automatik hijau tenaga ) Dan menghantar mereka kepada panel kawalan melalui TCP / IP atau UDP .
Di samping itu , membolehkan anda untuk menghantar status sebagai UDP siaran untuk semua peranti pada LAN , membolehkan anda untuk mengesan status dan sistem eHouse status sambungan dengan apa-apa bilangan panel kawalan dan visualisasi output , input dan nilai-nilai yang diukur .
Ini jenis siaran tidak mengenakan CPU tambahan CommManager , tidak kira berapa banyak panel menerima data di atas .
Di samping data yang diterima dari eHouse pengawal 1 (bekerja pada RS485) , CommManager melampirkan status semasa , yang merupakan negeri sistem penggera .
Status Frame dalam kod binari telah dibincangkan dalam jawatan:
” Rumah Pintar , Bangunan Pintar eHouse bingkai status dalam kod binari ”
” Rumah Pintar , Bangunan eHouse Pintar – bingkai penyahkodan status – kod sumber ”
Setakat ini kita ' ; telah dilindungi format bingkai , kepentingan bit dan bait dalam bingkai dan dibentangkan untuk memudahkan kod sumber sedia menyahkod data dari eHouse pengawal semua satu disambung oleh CommManager atau eHouse permohonan . exe (untuk eHouse 1) .

It ' ; s masa untuk perisian untuk decode status CommManager bingkai diperbesarkan .
Walaupun status boleh menghantar kedua-dua TCP / IP dan UDP dalam bentuk yang sama , kita hanya akan menyiarkan UDP , disebabkan kekurangan perlu untuk log masuk ke pengawal dan meningkatkan beban CPU .
Komunikasi over TCP / pelayan soket IP kita meninggalkan percuma kepada panel mudah alih yang jauh memerlukan , bekerja di luar LAN (Smartphones , GSM telefon) , menggunakan UDP sebagai penghantaran Internet boleh menjadi sukar dan melibatkan banyak kesilapan , mencegah status penyahkodan betul , kerana kualiti miskin pautan , dan kekurangan mekanisme pengesahan dan ulangan sesi UDP .
Untuk tujuan ini , dalam template akhir panel kawalan Delphi yang telah dibincangkan lebih awal dalam jawatan: ” rumah eHouse pintar , panel kawalan sumber kod untuk tablet bekerja pada Windows XP , Vista , 7 ”
Sertakan menukar status binari menerima data melalui UDP dengan menambah CommManager sokongan
prosedur TForm1 . binaryDataReceived (sender: TComponent ; NumberBytes: Integer ; FromIP: String ; Port: Integer) ;
var C: array [0 . . 1024] daripada char ;
MyStream: TMemoryStream ;
numberb: integer ;
memulakan
jika filesystem_status kemudian keluar ; / / Hanya apabila udp aktif
MyStream: = TMemoryStream . Buat ;
binari . ReadStream (MyStream) ;
numberb: = NumberBytes ;
jika numberb> ; 1023 maka numberb: = 1023 / / menghadkan bilangan bait diterima – kita dipotong kepada saiz penimbal data
MyStream . Baca (C [0] , numberb) ;
set_rm (C , 1) ; / / Decode status eHouse 1 pengawal – Decode RM status pengawal , HM
set_status_commmanager (C , 0 , 254) ; / / Decode commanager pengawal status – decode commmanagera status
Test_save ; / / Ujian menyimpan data ke fail teks bagi setiap RM , HM – kecuali bagi keputusan ujian kepada fail teks untuk semua pengawal eHouse 1 (RM , HM)
Test_save_eth ; / / Ujian menyimpan data ke fail teks untuk CommManager dan setiap Ethernet Controller – kecuali bagi keputusan ujian ke fail teks untuk CommManagera dan semua EtherneteHouse pengawal
update_panel ; / / Kemaskini data panel untuk pengawal yang dipilih – mengemaskini panel pengawal data
akhir ; :
Pelaksanaan lengkap status proses penyahkodan untuk bingkai CommManagera dan pengawal lain melaksanakan prosedur eHouse Ethernet
set_status_commmanager (C , 0 , 254) ; / / Parameter anda menyatakan nama dan alamat pengawal penampan data (lepas dua komponen alamat IP) .
Prosedur ini melakukan penyahkodan status perduaan bingkai dan kemudian memuatkan data yang dinyahkod untuk merakam pengawal Ethernet yang merupakan contoh rekod ” ethernet_rm_hm_cm_lm ” dipanggil ” ethrm ” .
Indeks dicari secara automatik dikaitkan dengan alamat IP dalam status .
Ini membolehkan kami untuk:

  • analisis langsung data semua pengawal
  • mencipta algoritma anda sendiri bergantung kepada status output , Input , ukuran sensor
  • pelaksanaan sistem kawalan khusus untuk menganalisis apa-apa bilangan parameter sistem yang sedia ada
  • log penganalisis pembangunan perisian dan status sistem eHouse
  • perisian membolehkan pengiraan penggunaan elektrik
  • membolehkan pelaksanaan panel kawalan individu dan visualisasi untuk semua pengawal berdasarkan template
  • tidak perlu untuk pengetahuan cara komunikasi dan data bingkai
  • bertulis tinggi – perisian tahap (beberapa baris kod sumber) melalui pelaksanaan perpustakaan perisian sistem eHouse .