Razkrivanje binarni status kontrolorjev doma avtomatizacije – brez izvorne kode

Avtomatizacija doma , Upravljanje zgradb eHouse – Razkrivanje status mikroprocesorskih krmilnikov
Avtomatizacija doma ki ga je nadzorni plošči priključen na LAN ali WiFi , preko UDP (User Datagram Protocol) .
Standardni okvir sprejem status v binarni obliki , s Kontrolorji je bil obravnavan v članku ” Inteligentna zgradba eHouse upravljavec stanje paket ” .
Razkrivanje okvir mora analizirati vsak košček podatkov iz paketa .
Poleg tega , vsak tip krmilnika:

  • RoomManager
  • ExternalManager
  • HeatManager
  • InputExtender
  • CommManager
  • LevelManager
  • EthernetRoomManager

So razlike v višini digitalnih vhodov , merilni vhodi , digitalni izhodi , zatemnilna stikala , nadzorne funkcije in algoritmi, ki so posledica , da so podatki v standardni mutirajo okvirja glede na vrsto krmilnika .
Posledica tega je, da je treba za dekodiranje korak za korakom za vsako vrsto krmilnika neodvisno .
Pri izvajanju vseh vrst mikroprocesorskih krmilnikov za ustvarjanje in test okvir dekodirni algoritem lahko traja tudi do 1 meseca .
Da bi zmanjšali ta čas na minimum , olajšati pripravljen, da predstavi algoritem, izposojeno iz eHouse . exe uporaba , samodejno dekodirati vse podatke od upravljavca in obremenitve podatkov v predlogo evidenc na dotik (za tablete), Windows XP , Vista , 7 , 8 .
Po samodejno nalaganje podatkov v knjižnicah programsko opremo eHouse , z nekaj vrstic kode , lahko ustvarite svoj nadzorni sistem eHouse algoritmov v nekaj minutah .
Binarni Frame dekodiranje programska standarda eHouse stanja se izvaja v knjižnici predloge za ploščo . To je treba narediti binarno , za neposredno od statusa dekodiranje Ethernet krmilnikov brez eHouse . Exe Uporaba nadzora .
Razkrivanje celoten okvir (za mikroprocesorskih krmilnikov eHouse1 RM , EM , HM) izvaja funkcijo postopku set_rm (str: array_of_char ; TCP_INDEX_INC: integer) ;
parametri funkcije varovalni položaj in premik (offset) . Medpomnilnik vsebuje vse prejete podatke o statusu . Izravnavi je odvisna od vrste prenosa (razširjeni naslov , normalno , in drugimi prihodnjimi zahtevki odvisni od komunikacijskih algoritmov) .
To samodejno zapolni polja status za vsakega upravljavca posebej in nato lahko neposredno manipulirati podatke ali samodejno posodabljanje podatkov na plošče z zaslonom na dotik .
Ta funkcija se aktivira v postopku dogodek prejemajo podatke iz dela UDP vtičnica (TNMUDP – imenujemo binarni), v primeru onDataReceived .
Sprejem je, kot sledi:
Postopek TForm1 . binaryDataReceived (Sender: TComponent ;
NumberBytes: Integer ; FromIP: String ; Port: Integer) ;
var C: array [0 . . 1024] z dne char ;
MyStream: TMemoryStream ;
začetek
če filesystem_status nato zaprite ; / / Če ne datotečni sistem filesystem_status
MyStream: = TMemoryStream . Ustvarjanje ; / / Ustvari tok podatkov
binarni . ReadStream (MyStream) ; / / Preberi podatkovni tok
MyStream . Preberite (C [0] , NumberBytes) ; / / Obremenitve varovalni C
set_rm (C , 1) ; / / Pretvori v binarne podatke in obremenitvami registri rm [indeks] kontrolorjev eHouse 1
Test_save ; / / Test zapiše izhod v besedilno datoteko za enostavno upravljanje
update_panel ; / / Nalaganje podatkov za nadzorne plošče
konec ;
To vam omogoča, da samodejno in brez – invazivne zbiranje podatkov preko LAN ali Wi – Fi z navodilom za oddajo preko UDP (User Datagram Protocol) .
Kaj več ne zahteva odprto povezavo s strežnikom samo posluša na levi oddaje ‘ 6789 ‘ privzeto ali druga .
Napake povezava , Mreža , usmerjevalniki nimajo za posledico prekinitev ali nedoločene napake programske opreme (kot v primeru komunikacije s strežnikom TCP) , pa izgine le posodobiti podatke, ne da bi to vplivalo na podatke, ali primerno odjemalca strežnika UDP aplikacijo .

OPOZORILO! . Če želite ustvariti nadzor programske opreme na Windows Home Automation eHouse za , je potrebno za izvedbo vseh algoritmov v enem nanosu , ki analizira podatke in opravlja vse algoritme in jih vizualno . Opazili smo, da je včasih 2 UDP poslušalca vtičnica ne more obstajati na istem računalniku .
Najpomembnejše spremenljivke v knjižnici binarno:
boiler_alarm: Boolean = false ; / / Kotla alarm alarm programirana temperatura nad
/ / V – Temperatura kotla alarm
bonfire_stat: integer ; / / Bonfire ogrevanje nivo 0 – 7 za binarnem načinu – zaposlitveni status požar
/ / 0 – ogenj off – ne segreje
/ / 1 – Požar na / za gašenje => ; ; zelena stopnja < ; ; Temperatura jakna (zelena LED utripa) – preneha utripati zelena
/ / 2 – požar na => ; ; zelena stopnja> ; ; = Temp jakna> ; ; rumena ravni – histeressis (zelena LED) – zelena
/ / 3 – požar na => ; ; rumena ravni – histeressis> ; ; temp jakna> ; ; histeressis nivo + rumena) (zelena + rumena LED) – zelena – rumena
/ / 4 – požar na => ; ; rumena stopnja + histeressis> ; ; temp jakna> ; ; Rdeča stopnja – histeressis (rumena) – rumena
/ / 5 – brezpogojno => ; ; Rdeča stopnja – histeressis < ; ; temp jakna < ; ; histeressis nivo + rdeča (rdeča + rumena LED) rumena – rdeča
/ / 6 – brezpogojno => ; ; temp jakna> ; ; histeressis nivo + rdeča (rdeča LED konstantno) – rdeča
/ / 7 – brezpogojno => ; ; temp jakna> ; ; kres alarm (rdeča LED utripa) ALARM – rdeča utripa
bonfire_sensor_error: Boolean = false ; / / Error senzorji kres preveč različni vodni jopič temperaturni senzorji med dvema
/ / Error kamin plašča temperaturni senzorji prevelika razlika
recuperator_status: string ; / / Status okrevanja , prezračevanje , zrak za ogrevanje – rekuperatorja in prezračevalne stanja
recu_winter: Boolean = false ; / / Rekuperatorjem zima / poletje toplote način omogočeno / onemogočeno – Povratnik zima / poletje
recu_manual_amalva: boolean = true ; / / Rekuperatorjem auto / ročni način za amalva rekuperatorjem (samodejno upravlja z notranjo Krmilnik amalva , Navodilo za eHouse HeatManager) / /
Povratnik amalva ročno / samodejno
went_cooler: boolean = true ; / / Voda hladilnik za vklop / izklop za prezračevanje ali hladilnika v sistem rekuperacije okrevanja ali GWC ON / OFF
went_gwc: Boolean = false ; / / GHE (zemlja toplotni izmenjevalnik) Servomotor za vklop / izklop – zemeljske toplote motorja za vklop / izklop
went_aux_gwc_fan: Boolean = false ; / / Dodatni GWC ventilator / ventilator za vklop / izklop podzemne toplotnega izmenjevalnika – GWC z ventilatorjem
bonfire_dgp: Boolean = false ; / / Bonfire vroč zrak distribucijskega omrežja omogočeno / onemogočeno – Fan porazdelitev toplega zraka iz kamina DGP
ventilation_on: Boolean = false ; / / Prezračevanje trenutno dela za vklop / izklop – vključujejo prezračevanje in rekuperacije toplotne energije
heater_pump: boolean = true ; / / Črpalka za grelec za prezračevanje vklop / izklop – črpalke za ogrevanje in prezračevanje krog za radiatorje
three_ways_cutoff: integer = 0 ; / / Trije načini Kritična smer 0 off , Povečanje stopnje 1 , – Zmanjšanje ravni 1) smer vrtenja elektro – ventil
solar_pump: Boolean = false ; / / Solarna črpalka vklop / izklop – solarna črpalka
boiler_on: Boolean = false ; / / Kotel omogočeno / onemogočeno – kotla za vklop / izklop
boiler_pump: Boolean = false ; / / Status črpalke kotla za vklop / izklop – kotla črpalka vklop / izklop
boiler_fuel_out: Boolean = false ; / / Kotla zmanjkalo goriva aproximate (štetje ur ogrevanja) – ocenjenega pomanjkanja goriva za trda goriva (izračunano na podlagi opravljenih ur delovanja kotla)
boiler_power_on: Boolean = false ; / / Kotla napajanje vklop / izklop ; – Kotel vklop / izklop
boiler_fuel_supply_override: Boolean = false ; / / Override supplyier gorivo kotel (nadzor s eHouse / Notranji kotel krmilnik) – Matično nadzorovano dobava goriva sistem eHouse za vklop / izklop
bonfire_pump: Boolean = false ; / / Bonfire črpalka položaj za vklop / izklop – požarna črpalka vklop / izklop
recu_speed: integer = 0 ; / / Rekuperatorjem Speeed 0 . . 3 – Povratnik hitrost
recu_temperature: integer ; / / Temperature raven RECU 0 . . 30C Temperatura rekuperator za amalwa
_recu_mode: string = ‘ ‘ ; / / Rekuperacija Način, v besedilu, kot ga HeatManager nadzorni plošči (eHouse . exe) – Povratnik način kot nadzorne plošče eHouse uporabe HeatMAnagerem . exe
šel: string ; / / Besedilo prezračevanje status kot nadzorni plošči HeatManager (eHouse . exe) – prezračevanje stanje enako kot v plošči HeatManager za eHouse . exe
kotel , sončno: string ; / / Kotla , Sončna besedilo HeatManager status kot nadzorni plošči (eHouse . exe) – status kotla in sončne celice nadzor (HeatManager) eHouse . exe
Komi: string ; / / Besedilo kres status kot nadzorni plošči HeatManager (eHouse . exe) – status nadzorni plošči požarni eHouse uporabe HeatManager . exe
Kontrolne luči