eHouse 1 – Home Automation – controller binary inprimaki estatu

eHouse Home Automation , Eraikina kudeaketa version 1 – sistema kontroladore egoera markoa Home Automation .
Guztiz funtzionala Sortu , eraginkorra behar duten kontrol-panel bisualizazioa software propioa behar zuzeneko deskodetzeko eHouse 1 kontrolatzailea egoera ezartzeko modu bitarrean . Eragilearen normal moduan edo hedatua helbidea (Extended_address) aukeratu arabera , kontrolatzailearen egoera bidaltzeko marko gisa (parentesi artean markatu Modu hedatua helbidea aldea) .
Modu honek CommManager kontrolatzailearen gainbegiratuta lan egin behar da, eta mezu helmuga helbidea bidaltzen gertaerak kanpo , Norberak helburuko gailua bidaltzailearen helbidea esan ahal gertaerak jasotzeko (eskuz – astindu) .
Interface RS bada – 485 behin betiko ez gomendatzen zuzeneko gidariari konektatzeko saiakera , komando batzuk, hala nola, garbiketa-programaren memoria (firmware) bidaltzen bailezakete Kontrolagailu horrek bere bizitza amaitzeko .
Beste komandoak edo ausazko RS seinaleak – 485 sistemaren egonkortasuna ahuldu edo behin betiko mantsotu bere lana .
Native eHouse Automatika kontrolagailu ekoizle aplikazio gainbegiratuta ” eHouse . exe ” .
Segurtasun arrazoiengatik , gidarien egoera aplikazio eHouse bidez konektatzean gabe irakurri ahal izango duzu . Exe (UDP protokoloa eta LAN) .
Hau ez da – inbaditzaileak irakurketa , ez, ez software ez kontrolagailu kargatzeko , eta zer gehiago , RS bidez edozein modu transferentzia protokoloa ez intrusiboa – 485 .
Egoera ezberdina da CommManager gainbegiratzea eHouse_1 kontrolagailu pean lan .
CommManager controller status (eHouse 1 CommManager pakete integratua) bidali ahal izango , UDP LAN eta datu horiek sartzeko connectionless da eta ez da – inbaditzaileak, baita zuzenean CommManager edo beste Ethernet Ehouse kontrolagailu .
Bidez datuak jasotzea UDP egoera ezin dugu kalte gidariek , eta sarrerako datuak gehienez misinterpret .
EHouse sistema ezer ez bidaltzeko UDP kontrolatzailearen segurtasuna , Kontrolatzailea ez axola bezero datuak jasotzen den ala ez UDP bidez bidalitako edo ez , 0 edo 250 edo bezero Aldaketa den ala ez .
EHouse domotikak sistema datuak jasotzea , UDP segurua da, eta ez da inola kontrolagailu eHouse software kargatu , LAN emankizunak (UDP_broadcast) bidaltzeko .
Status kutxa honako formatu ditu:
< ; ; data_size> ; ; (< ; ; The_destination_address_H> ; ; < ; ; The_destination_address_L> ; ; ) < ; ; Local_addres_H> ; ; < ; ; Local_address_L> ; ; < ; ; command> ; ; < ; ; data_1> ; ; . . . . . < ; ; Datuak> ; ; < ; ; Data_N> ; ; < ; ; data_size> ; ; (< ; ; The_destination_address_H> ; ; < ; ; The_destination_address_L> ; ; ) < ; ; Local_address_H> ; ; < ; ; Local_address_L> ; ; < ; ; command> ; ; < ; ; data_1> ; ; . . . . . < ; ; Datuak> ; ; < ; ; Data_N> ; ; < ; ; 0> ; ;
Normal Mode / vs . (Extended Helbidea)
1 . datuen tamaina (datuak tamaina)
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 . . gainerako datuak jakin batean komando .
Bidali kontrolatzailearen egoera bada ' ; s control command ‘ s ‘ .
Jarraitu modu bitarrean datuak jarraitu serieko RS bidez informazio transferentzia minimizatzeko – 485 .
Segurtasunerako , datuak erantsita dagoen egiaztatu – Laburbilduz okerra emankizunak egiteko kentzeko .
Bidali komandoaren egoeraren ‘ s ‘ ,
Frame gidarien egoera Home Automation eHouse 1 eta byte kopurua azalpena (indizea shift eragile moduan (normal edo extended_address arabera) .
TCP_INDEX_INC azpitik izeneko honek etengabe aldatzearen . Moduaren arabera , 3 balio bat hartu ahal izango du helbide hedatua edo transmisioa normal 0 . Software idatziz , parametro hau kontuan hartu beharko duzu aldagai gisa , aukera ematen du, erraz manipulatzeko bertsio ondorengo datuak delako markoa da, modu batean edo bestean desplazatzen bada .
Aurkibideak byte marko bakoitzaren egoera gidarien eHouse 1 (markoaren Irteeran):
STATUS_ADC = 1 +2 + TCP_INDEX_INC ; / / A/D_converters_2_bytes_1B = MSB balioa , 2B = LSB! .
STATUS_OUT = 17 +2 + TCP_INDEX_INC ; / / Lehenengo irteera digital indizea dio

/ / Bakoitzak irteera 1 bit txikiena LSB zenbakia , MSB handiena
STATUS_IN = 20 +2 + TCP_INDEX_INC ; / / Input digitalak estatu LSB txikiena kopurua , MSB handiena
STATUS_INT = 21 +2 + TCP_INDEX_INC ; / / Input digital (interrupt) LSB txikiena zenbakia States , MSB handiena
STATUS_OUT25 = 22 +2 + TCP_INDEX_INC ; / / Produktibitateak 25 estatu . . 32 irteera bezala
STATUS_LIGHT = 23 +2 + TCP_INDEX_INC ; / / Bat dimmer dimmer 1B Status
STATUS_ZONE_PGM = 26 +2 + TCP_INDEX_INC ; / / Uneko EM eremua No
STATUS_PROGRAM = 27 +2 + TCP_INDEX_INC ; / / Uneko programa No
STATUS_INPUTEXT_A_ACTIVE = 28 +2 + TCP_INDEX_INC ; / / Input inputextender egoera aktiboan A
STATUS_INPUTEXT_B_ACTIVE = 32 +2 + TCP_INDEX_INC ; / / Input inputextender egoera aktiboan B
STATUS_INPUTEXT_C_ACTIVE = 36 +2 + TCP_INDEX_INC ; / Egoera aktiboan inputextender / Input C
STATUS_INPUTEXT_A = 40 +2 + TCP_INDEX_INC ; / / Input inputextender Alarmak A eta Abisua
STATUS_INPUTEXT_B = 50 +2 + TCP_INDEX_INC ; / / Input inputextender B Alarmak eta Abisua
STATUS_INPUTEXT_C = 60 +2 + TCP_INDEX_INC ; / / Input inputextender C Alarmak eta Abisua
/ / Status HeatManager
STATUS_ADC_HEART = 1 +2 + TCP_INDEX_INC ; / / Tenperatura 16 sentsoreak neurketak RM, modu berean
STATUS_OUT_HEART = 33 +2 + TCP_INDEX_INC ; / / Irteera digitalak dio, era berean, RM
WENT_MODE = 51 + TCP_INDEX_INC ;
RECU_MODE: = 50 + TCP_INDEX_INC ;
CURRENT_PGM: = 38 + TCP_INDEX_INC ;
/ / Status commmanager – gidarien eHouse 1 (sistema hibrido) eHouse 1 CommManager de gainbegiratuta egoera integratuta
STATUS_EHOUSE1_DEVS = 0 ; / / Kokatu to RS485 konektatutako gailu egoera (eHouse_1) 71 byte gainetik
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 ; / / A / D neurketa amaiera
STATUS_OUT_I2C = STATUS_ADC_ETH_END ; / / 2 aldiz i2c 10 * 8 / / max = 160 modulu irteerak luzapena modulua
STATUS_INPUTS_I2C = STATUS_OUT_I2C +20 ; / / 2 aldiz i2c 6 * 8 / / max 96 luzapena modulua inputak
STATUS_ALARM_I2C = STATUS_INPUTS_I2C +12 ; / / Input_in alarma egoera (egungo segurtasun zona maskara aldean)
STATUS_WARNING_I2C = STATUS_ALARM_I2C +12 ; / / Input_warning egoera (egungo segurtasun zona maskara aldean)
STATUS_MONITORING_I2C = STATUS_WARNING_I2C +12 ; / / Input_condition jarraipena (gaur egungo segurtasun zona maskara aldean)
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 dimmers / / Dimmer 3 * 2B
Adibidea tenperatura kalkulatzeko HM egoera
index = i analogikoa sarrerako 0 . . 15 HM gettemplm funtzioa (msb , LSB) ;
TEMPHM [i]: = gettemplm (str [STATUS_ADC_HEART + i * 2 + TCP_INDEX_INC] , str [STATUS_ADC_HEART + i * 2 +1 + TCP_INDEX_INC]) eHouse_Home_Automation_OpenSource_Delphi