eHouse 1 – Automation Kay – kontwolè eta nan fòm binè

eHouse Automation Kay , Jesyon Konstriksyon vèsyon 1 – ankadreman nan estati kontwolè sistèm Automation Kay .
Yo kreye yon fonksyonèl konplètman , efikas lojisyèl pwòp pou panno kontwòl ki mande pou yo vizyalizasyon bezwen aplike dirèk dekode eHouse 1 estati chofè nan fòm binè . Tou depan de chwa a nan mòd nan nòmal oswa pwolonje adrès (Extended_address) , ankadreman voye estati a nan chofè a se jan sa a (nan parantèz make diferans nan adrès mòd pwolonje) .
Sa a se mòd oblije travay anba sipèvizyon chofè CommManager epi voye adrès la destinasyon mesaj deyò evènman , Pwòp adrès aparèy la destinasyon ka di moun k la resevwa evènman (men – souke) .
Si Rs a koòdone – 485 definitivman pa rekòmande tantativ dirèk pou konekte avèk chofè a , kòm voye kèk kòmandman ka lakòz tankou memwa pwogram netwayaj (mikrolojisyèl) Contrôleur ki te kapab fini lavi yo .
Kòmandman Lòt oswa siyal o aza nan RS – 485 ka mine estabilite an nan sistèm la oswa definitivman ralanti travay li .
Alaska eHouse Automation regulateur yo ta dwe travay anba sipèvizyon aplikasyon pwodiktè ” eHouse . ègzekutabl ” .
Pou sekirite , ou ka li estati a nan de a chofè san konekte ak lòt moun yo nan eHouse aplikasyon an . Ègzekutabl (udp pwotokòl ak LAN) .
Sa a se ki – pwogrese nan lekti , pa loading ni lojisyèl ni contrôleur , ak sa ki plis , pa intrusive nan nenpòt pwotokòl transfere fason via RS – 485 .
Sitiyasyon an se diferan lè eHouse_1 contrôleur travay anba sipèvizyon CommManager .
CommManager kontwolè ka voye voye estati (eHouse 1 ak CommManager nan yon pake entegre) , LAN a udp ak aksè nan sa a done se koneksyon ak sa ki pa – pwogrese kòm byen ke ki sòti dirèkteman nan CommManager oswa lòt contrôleur eHouse Ethernet .
K ap resevwa done sou estati udp nou pa ka mal chofè , ak yon maksimòm de done fèk ap rantre mal entèprete .
Sistèm eHouse pa voye anyen an sekirite nan chofè udp , yon chofè pa gen pwoblèm si kliyan an ap resevwa done yo te voye sou udp oswa ou pa , oswa si konte nan kliyan se 0 oswa 250 .
K ap resevwa done ki sòti nan sistèm automatisation eHouse lakay , udp a se sekirite epi yo pa chaje nan nenpòt fason contrôleur oswa lojisyèl eHouse , voye emisyon (UDP_broadcast) nan LAN a .
Bwat Status gen fòma sa yo:
< ; ; data_size> ; ; (< ; ; The_destination_address_H> ; ; < ; ; The_destination_address_L> ; ; ) < ; ; Local_addres_H> ; ; < ; ; Local_address_L> ; ; < ; ; lòd> ; ; < ; ; data_1> ; ; . . . . . < ; ; Done> ; ; < ; ; Data_N> ; ; < ; ; data_size> ; ; (< ; ; The_destination_address_H> ; ; < ; ; The_destination_address_L> ; ; ) < ; ; Local_address_H> ; ; < ; ; Local_address_L> ; ; < ; ; lòd> ; ; < ; ; data_1> ; ; . . . . . < ; ; Done> ; ; < ; ; Data_N> ; ; < ; ; 0> ; ;
Nòmal Mode / vs . (Lekòl ki pi long Adrès)
1 . gwosè nan done yo (gwosè a done yo)
2 . Address_H_target (Address_H_target)
3 . Address_L_target (Address_L_target)
4 . Control_command (Address_H_of_local_controller_return_path)
5 . Data_1_byte (Address_L_of_local_controller_return_path)
6 . Data_2_byte (Control_Command)
7 Data_3_byte (Data_1_byte)
8 . . rès la nan done yo pou yon lòd yo bay .
Si ou voye estati a nan chofè a ' ; s kontwòl lòd ‘ s ‘ .
Kontinye swiv done ki nan fòm binè pou misyon pou minimize transfè a nan enfòmasyon atravè yon seri RS – 485 .
Pou sekirite , done a ap tache tcheke – rapò kantite elimine emisyon kòrèk fè .
Voye estati lòd se ‘ s ‘ ,
Estati ankadreman nan de a chofè Automation Kay eHouse 1 ak yon deskripsyon sou nimewo a multiple (chanjman endèks depann sou mòd nan opere (nòmal oswa extended_address) .
Sa a déplacement konstan ki endike anba a TCP_INDEX_INC . Tou depan de mòd nan , li ka adopte yon valè de 3 pou adrès la pwolonje oswa 0 pou transmisyon nòmal . Lè w ap ekri lojisyèl , ou ta ka konsidere sa a kòm yon paramèt varyab , paske li pèmèt nou fasil manipile done ki nan vèsyon pita si se ankadreman an deplase nan yon fason oubyen yon lòt .
Endèks chak estati ankadreman multiple nan eHouse nan chofè 1 (nan kòmansman an nan ankadreman):
STATUS_ADC = 1 + +2 TCP_INDEX_INC ; / / Valè a nan A/D_converters_2_bytes_1B MSB = , 2B = lsb! .
STATUS_OUT = 17 +2 + TCP_INDEX_INC ; / / Pwodiksyon dijital eta endèks premye

/ / Chak pwodiksyon 1 lsb ti jan pi piti nimewo , MSB pi gwo
STATUS_IN = 20 +2 + TCP_INDEX_INC ; / / Digital D 'eta lsb pi piti nimewo , MSB pi gwo
STATUS_INT = 21 +2 + TCP_INDEX_INC ; / / Etazini nan entrain dijital (Entewonp) lsb pi piti nimewo , MSB pi gwo
STATUS_OUT25 = 22 +2 + TCP_INDEX_INC ; / / Èkstran eta soti nan 25 . . 32 menm jan an kòm pwodiksyon an
STATUS_LIGHT = 23 +2 + TCP_INDEX_INC ; / / Ki dènye nouvèl sou youn 1B dime dime
STATUS_ZONE_PGM = 26 +2 + TCP_INDEX_INC ; / / Non zòn aktyèl pou EM
STATUS_PROGRAM = 27 +2 + TCP_INDEX_INC ; / / Non aktyèl pwogram nan
STATUS_INPUTEXT_A_ACTIVE = 28 +2 + TCP_INDEX_INC ; / / Antre InputExtender A nan eta a aktif
STATUS_INPUTEXT_B_ACTIVE = 32 +2 + TCP_INDEX_INC ; / / Antre InputExtender B a nan yon eta a aktif
STATUS_INPUTEXT_C_ACTIVE = 36 +2 + TCP_INDEX_INC ; / / Antre InputExtender C nan eta a aktif
STATUS_INPUTEXT_A = 40 +2 + TCP_INDEX_INC ; / / Antre InputExtender Yon Alam pou epi Avètisman
STATUS_INPUTEXT_B = 50 +2 + TCP_INDEX_INC ; / Alam pou Antre / B InputExtender epi Avètisman
STATUS_INPUTEXT_C = 60 +2 + TCP_INDEX_INC ; / / Antre InputExtender C Alam pou epi Avètisman
/ / Status HeatManager
STATUS_ADC_HEART = 1 + +2 TCP_INDEX_INC ; / / Tanperati mezi apati 16 detèktè yo menm jan an kòm pou RM nan
STATUS_OUT_HEART = 33 +2 + TCP_INDEX_INC ; / / Pwodiksyon dijital eta menm bagay ak RM
WENT_MODE = 51 + TCP_INDEX_INC ;
RECU_MODE: = 50 + TCP_INDEX_INC ;
CURRENT_PGM: = 38 + TCP_INDEX_INC ;
/ / Status CommManager – entegre ak estati a nan de a chofè eHouse 1 (ibrid sistèm) eHouse 1 anba sipèvizyon CommManager
STATUS_EHOUSE1_DEVS = 0 ; / / Mete estati a nan aparèy ki konekte nan RS485 a (eHouse_1) pi wo a 71 bytes
STATUS_ADC_ETH = 72 ; / / ADC_measurements_16_inputs * 2B A / D_notation_as_for_RM_Vcc = 3V3
STATUS_ADC_ETH_END = STATUS_ADC_ETH +32 ; / / Fen mezi a A / D
STATUS_OUT_I2C = STATUS_ADC_ETH_END ; / / 2 fwa i2c 10 * 8 / / max = 160 sorti modil sou modil ekstansyon
STATUS_INPUTS_I2C = STATUS_OUT_I2C +20 ; / / 2 fwa i2c 6 * 8 / / max 96 entrain sou modil ekstansyon
STATUS_ALARM_I2C = STATUS_INPUTS_I2C +12 ; / / Input_in eta a alam (ki gen rapò ak mask la pou zòn sekirite a kounye a)
STATUS_WARNING_I2C = STATUS_ALARM_I2C +12 ; / / Input_warning eta a (ki gen rapò ak mask la pou zòn sekirite a kounye a)
STATUS_MONITORING_I2C = STATUS_WARNING_I2C +12 ; / / Input_condition siveyans (ki gen rapò ak mask la pou zòn sekirite a kounye a)
STATUS_PROGRAM_NR = STATUS_MONITORING_I2C +12 ; / / Program_number_CommManager
STATUS_ZONE_NR = STATUS_PROGRAM_NR +1 ; / / Number_CommManager_zone
STATUS_ADC_PROGRAM = STATUS_ZONE_NR +1 ; / / ADC_program_number
STATUS_ADC_PROGRAM STATUS_LIGHT_LEVEL = 2 ; / / Status 3 gradateur / / gradateur 3 * 2B
Kalkil egzanp pou moun ki tanperati a sou estati a nan HM
mwen = endèks analòg opinyon 0 . . 15 pou HM fonksyon gettemplm (msb , lsb) ;
TEMPHM [mwen]: = gettemplm (str [STATUS_ADC_HEART + mwen * 2 + TCP_INDEX_INC] , str [STATUS_ADC_HEART + mwen * 2 +1 + TCP_INDEX_INC]) eHouse_Home_Automation_OpenSource_Delphi