Deskodetzeko domotikak kontrolagailu egoera bitarra – free iturburu-kodea

Home Automation , Eraikina kudeaketa eHouse – Deskodetzeko mikroprozesadore kontrolagailu egoera
Home Automation LAN edo WiFi konektatutako kontrol panel jaso , via UDP (User Datagram Protokoloa) .
Modu bitarrean egoera estandarra fotograma harrera , batera Kontrolagailu artikuluan eztabaidatu zen ” Eraikuntza adimenduna eHouse controller status paketea ” .
Deskodetzeko markoaren behar pack datuak bit guztietan aztertzeko .
Horrez gain , controller mota bakoitzean:

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

Input digital zenbatekoa aldea , neurketa inputak , digital irteerak , dimmers , jarraipen-funtzioak eta algoritmoak emaitza , markoaren estandarrak mutate datuak controller motaren arabera .
Hau deskodetzeko bit beharra bit controller mota bakoitzean independentean emaitzak .
Mikroprozesadore kontrolagailu mota guztiak ezartzeko markoaren deskodetzeko algoritmoa sortu eta probatzeko kasuan hartu ahal izango dute, 1 hilabete .
Une honetan minimizatu gutxieneko , eHouse from maileguan algoritmoa aurkezteko prest errazteko . exe aplikazio , automatikoki deskodetu kontroladore eta karga datuak informazio guztia Erregistro txantiloi ukipen-panel (pilulak) Windows XP , Vista , 7 , 8 .
Datuak kargatzean automatikoki eHouse software liburutegiak sartu ondoren , kodea ildo batzuk , minutu gutxi barru zure kontrolerako algoritmoak eHouse sistema sor dezakezu .
Binary Frame deskodetzeko eHouse egoera estandarra software txantiloi liburutegian ezarri panel . Egin beharreko bitarraren behar du , deskodetzeko eHouse gabe kontrolagailu Ethernet zuzeneko egoera . Exe aplikazio gainbegiratze .
Deskodetze osoa fotograma (mikroprozesadore kontrolagailu RM eHouse1 , EM , HM) burutzen prozedura set_rm funtzio (str: array_of_char ; TCP_INDEX_INC: osokoa) ;
parametro buffer egoera eta shift (offset) funtzio . Bufferra egoera datuak jaso ditu . Desplazamendu transmisio mota (hedatua helbidea araberakoa , normal , eta etorkizunean beste aplikazioen menpe komunikazio algoritmoak) .
Automatikoki betetzen da array controller bakoitzaren egoera banan-banan, eta gero zuzenean datuak edo eguneratzea datuak manipulatzeko automatikoki pantaila ukipen-panel .
Funtzio hau aktibatzen da gertaera jaso UDP socket osagai datuak prozedura (TNMUDP – izeneko bitarra) onDataReceived gertaera .
Harrera honako hau da:
prozedura TForm1 . binaryDataReceived (Sender: TComponent ;
NumberBytes: osokoa ; FromIP: String ; Port: osokoa) ;
var C: array [0 . . 1024 char] ;
MyStream: TMemoryStream ;
hasiko
filesystem_status gero irten ; / / Fitxategia ez dago sisteman filesystem_status bada
MyStream: = TMemoryStream . Sortu ; / / Sortu datuak korrontea
bitarra . ReadStream (MyStream) ; / / Datuak erreka irakurri
MyStream . Irakurri (C [0] , NumberBytes) ; / / Kargatzen buffer C
set_rm (C , 1) ; / / Bihurtzen bitar erregistroak rm [indizea] kontrolagailu eHouse 1 datuak eta kargak
Test_save ; / / Test grabatzeko irteera testu-fitxategi bat, eragiketa erraza
update_panel ; / / Kargatu kontrol-panel datuak
amaieran ;
Automatikoki aukera ematen du, eta ez – LAN bat edo Wi gaineko datuen bilketa inbaditzaileak – Pakete difusioaren Fi UDP (User Datagram Protocol) bidez .
Zer gehiago behar ez zerbitzariak konexioa irekia portuko difusioaren bakarrik entzuten ‘ 6789 ‘ default edo beste .
Akatsak esteka , Network , bideratzaile ez etetea edo sin especificar software akatsak (TCP server komunikazio kasuan bezala) , baina desagertzen datuak eguneratu datuak edo egokia server UDP bezero aplikazioa eragin gabe .

KONTUZ! . Sortu kontrola Windows software eHouse Home Automatika , beharrezkoa da algoritmoak ezartzeko aplikazio bat , datuak aztertzen eta algoritmoak guztiak egiten eta ikusi . 2 UDP entzulearen socket batzuetan behatu dugu ezin dela existitzen berean PC .
Liburutegi bitarra aldagai garrantzitsuenak:
boiler_alarm: Boolean = false ; / / Alarma Boiler Alarma programatutako tenperatura gainetik
/ / Baino gehiago – tenperatura Alarma galdararen
bonfire_stat: osokoa ; / / Bonfire berogailua maila 0 – Bitar moduan 7 – lan egoera sua
/ / 0 – Sutan off – ez berotzeko
/ / 1 – / Itzaltzeko Fire => ; ; berdea maila < ; ; aldi baterako jaka (berdea LED keinukariak) – iraungitzen distirak berdea
/ / 2 – => sua ; ; berdea maila> ; ; = Temp jaka> ; ; horia maila – histeressis (berdea LED) – berdea
/ / 3 – => sua ; ; horia maila – histeressis> ; ; temp jaka> ; ; histeressis maila + horia) (berdea + horia LED) – berdea – horia
/ / 4 – => sua ; ; horia maila + histeressis> ; ; temp jaka> ; ; gorria maila – histeressis (horia) – horia
/ / 5 – baldintzarik gabeko => ; ; gorria maila – histeressis < ; ; temp jaka < ; ; histeressis maila + gorria (red + horia LED) horia – gorria
/ / 6 – baldintzarik gabeko => ; ; temp jaka> ; ; histeressis maila + gorria (red LED etengabe) – gorria
/ / 7 – baldintzarik gabeko => ; ; temp jaka> ; ; sua alarma (red LED keinukariak) alarma – gorria distirak
bonfire_sensor_error: Boolean = false ; / / Error sentsore sua gehiegi hainbat ur jaka tenperatura Bi artean sentsore
/ / Error tximinia mantuaren tenperatura sentsoreak, handiegia aldea
recuperator_status: katea ; / / Berreskurapen Status , aireztapen , aire berogailua – recuperator eta aireztapen egoera
recu_winter: Boolean = false ; / / Neguko / udako Recuperator bero-trukagailu modua gaituta / desgaituta – recuperator neguan / udan
recu_manual_amalva: boolearra = true ; / / Recuperator auto / manual amalva recuperator modua (auto kudeatzen barne controler amalva , eHouse HeatManager eskuliburua) / /
recuperator amalva eskuliburua / auto
went_cooler: boolearra = true ; / / Ura / freskoago off aireztapen edo sistema berreskuratzeko berreskurapena edo / ON OFF GWC freskoago
went_gwc: Boolean = false ; / / / GHE (beheko bero-trukagailu) off Servomotor – beheko bero-trukagailu / off motor
went_aux_gwc_fan: Boolean = false ; / / Osagarriak GWC haizagailua / / switch off fan beheko bero-trukagailu – GWC fan zehatza
bonfire_dgp: Boolean = false ; / / Bonfire aire beroa banaketa sistema gaituta / desgaituta – Fan aire beroaren banaketa tximinia DGP
ventilation_on: Boolean = false ; / / Aireztapena da gaur egun on / off lan – besteak beste, aireztapen eta bero berreskuratzeko
heater_pump: boolearra = true ; / / / Off aireztapen Pump berogailu – ponpa berokuntza eta aireztapen zirkuitu erradiadoreak
three_ways_cutoff: osokoa = 0 ; / / Hiru modu mozte norabidea 0 off , 1 maila handiagoa , – Maila 1 txikituz) biraketa elektro norabidea – modu balbula
solar_pump: Boolean = false ; / / Eguzki / off pump – eguzki-ponpa
boiler_on: Boolean = false ; / / Boiler gaituta / desgaituta – / off galdara
boiler_pump: Boolean = false ; / / / Off pump galdara Status – galdara / off pump
boiler_fuel_out: Boolean = false ; / / Boiler erregaiaren aproximate (zenbatu berogailu ordu) – kalkuluen arabera, erregai erregai ona galdara (galdararen funtzionamendua ordu oinarrituta kalkulatu) gabezia
boiler_power_on: Boolean = false ; , / / ​​Off supplay / Boiler power ; – Boiler / off boterea
boiler_fuel_supply_override: Boolean = false ; / / Override supplyier erregaiaren galdara (eHouse / barne galdara controller kontrola) – Guraso kontrolatutako erregaiaren entrega / off sistema eHouse
bonfire_pump: Boolean = false ; / / Off pump / Bonfire egoera – sua / off pump
recu_speed: osokoa = 0 ; / / Recuperator Speeed 0 . . 3 – recuperator abiadura
recu_temperature: osokoa ; / / Tenperatura RECU 0 maila . . 30C tenperatura amalwa recuperator
_recu_mode: string = ‘ ‘ ; / / Berreskuratzea testu moduan HEatManager control panel (eHouse gisa . exe) – recuperator kontrol panel application HeatMAnagerem eHouse modua . exe
joan: katea ; / / Text HeatManager Kontrol panel (eHouse aireztapen egoera . exe) – HeatManager eHouse panel gisa aireztapen egoera bera . exe
galdara , eguzki-energia: katea ; / / Boiler , Kontrol Panela Eguzki testu HeatManager egoera (eHouse . exe) – galdararen egoera eta eguzki-panel kontrola (HeatManager) eHouse . exe
Komi: katea ; / HeatManager Kontrol panel (eHouse sua / Text egoera . exe) – su control panel application heatmanager eHouse egoera . exe
Kontrol Lights