Аутоматизација у зградама еХоусе – Креирање Виндовс софтвера прекриваче и прилагођене алгоритме

Хоме Аутоматион еХоусе са ПЦ софтвер омогућава вам да направите прекривача за систем аутоматизације зграда .
Ово вам омогућава да креирате сопствене , индивидуални алгоритми , се не спроводе у фирмваре или возач софтвера који контролише серијски Хоме Аутоматион еХоусе .
У том крају , пружамо корисницима са шифрама софтвера изворних (у Делпхију 5) . Они могу бити састављени са новијим верзијама Делпхија или користити за друге програмске језике .
Ми свесно изабрали овај архаичне верзије јер су већ доступни за бесплатно за аматерске програм .
Они раде исто као поуздано на Виндовс КСП , Видик , Виндовс 7 и 32 и 64 бита .
Овај софтвер се зове еХоусеЛогАнализер и ове апликације шаблона стабла да читају текстуалне датотеке до датума .
Може се управљати и надгледати КиллВдт апликација . еке .
Кључне карактеристике примене:

  • Читање из статуса и имена свих возача
  • Прочитајте статус и унесите имена свих возача
  • Прочитајте мерења и имена свих возача мерним инпуте
  • Ставите све податке на интерну меморију програма , која се може даље процесуирати пријаве

Апликација користи статус креиране фајлове текстуалних фајлова у директоријуму ‘ логс / статус / ‘ продужетак ‘ . статус ‘ .
Датотека се чита само у случају промена у пријавном еХоусе . еке .

Података контролери се учитавају у следећим случајевима рекорда ” ехоусе_рм_ем_хм ” наведена у низу РМ .

Додатно , Подаци се чувају ХеатМанагер следеће варијабле:
бонфире_статус: стринг ; / / Статус ватру за ХеатМанагер – Стање огњиште грејање панела еХоусе . еке
боилер_статус: стринг ; / / Статус котла за ХМ – статус котла за грејање панела еХоусе . еке
Солар_статус: стринг ; / / Статус Сунчевог система – статус соларних панела еХоусе грејање . еке
рецуператор_статус: стринг ; / / Статус опоравка , вентилација , ваздушно грејање – статус грејање вентилацију и топлоте
ХАДЦ: арраи [0 . . 15] од дупло ; / / Температуре топлоте менаџер – мерења температуре ХеатМанагер
/ / Хеат Руководилац индекси за директан приступ ХАДЦ низа – Константна температура индекси за директним очитавањем температуре ХеатМанагер
УСТАВНИ ХМ_ГВЦ = 3 ; / / ГВЦ – Приземље топлоте
ХМ_КОМ1 = 4 ; / / Камин Грб 1 – Ломача воде јакна 1
ХМ_КОМКОНВ = 5 ; / / Камин конвекцијне – конвекција Ломача
ХМ_КОМ2 = 6 ; / / Освежавање АВИОН 2 – Логорска ватра вода јакна 2 (бацкуп)
ХМ_ТВЕВН = 7 ; / / Унутрашња собна температура – унутрашња температура
ХМ_СОЛАР = 9 ; / / Колектор сунце – соларни систем
ХМ_ЗЕВНПН = 8 ; / / Спољна температура север – спољашње температуре север
ХМ_ЗЕВНПД = 1 ; / / Спољна температура на југу – спољашње температуре југ
ХМ_КОЦ = 10 ; / / Температура котла – котао температура
ХМ_БАНДОЛ = 11 ; / / ЦО / топлу воду доле – топла ваттер дно бафер
ХМ_РЕКИН = 12 ; / / Чист ваздух повратник улаз – Опоравак чист ваздух улаз
ХМ_РЕКОУТ = 13 ; / / Излаз повратник кући – хеатен опоравак свеж ваздух ударац у собу – температура
ХМ_НАГ = 14 ; / / Температура контролише три – вентил за грејање и за радијаторе – Температура после три начина цутофф за бојлер или другог система за грејање
ХМ_РЕКВИЦ = 15 ; / / Почетна повратник екстракт прљав – Опоравак од куће прљавог издувних темп
ХМ_БАНГОРА = 2 ; / / Грејање / топлу воду гора – топла вода бафер ВРХ
ХМ_БАНСРО = 0 ; / / Грејање / топла вода резервоар средства за – СРЕДЊИ топла вода бафер
вар ХАДЦНамес: арраи [0 . . 15] од низа ; / / Имена сензора (мерење улаза) ХеатМанагера
Основна функција ЕхоусеЛогАнализер:
поступак инит_хеат_температуре_намес ; / / Иницијализација и / или температурни сензори прочитао имена ХМ
Поступак лоаднамес_рм ; / / Лоад РоомМанагерАłв имена (еХоусе 1)
поступак реадетхернетдевс ; / / Чита Етхернет Дривер имена (еХоусе 2)
гет_индек_рм функција (стр: стринг): интегер ; / / Даје индекс табели са роомМанагерами претраживање по статусу имена датотеке
Функција гб (Цхр: цхар): боолеан ; / / Враћа боолеан вредност за читање статуса
адц_хм поступак (стр: стринг ; Индекс: интегер) ; / / Конвертује стринг са снимљеним температурама очитавање стања ХеатМанагера
адц_рм поступак (стр: стринг ; Индекс: интегер) ; / / Претвара низ аналогних мерења приликом читања статуса РоомМанагерАłв
ГБС функција (б: боолеан): Стринг ; / / Врите боолеан у текстуалном облику (0 , 1)
РМДевицеИндекБиНаме функција (стр: стринг): интегер ; / / Даје индекс табели са РоомМанагерами Претрага по имену возача
РМГетОутпутСтатеНр функција (индекс: интегер ; ОутпутНр: интегер): боолеан ; / / Повратак на РМ излазни државну [индек] и излаз број ОутпутНР
РМГетОутпутСтате функција (индекс: интегер ; ОутпутНаме: стринг): боолеан ; / / Даје излаз држава РМ [индек] и прозвао ОутпутНаме
РМГетИнпутСтатеНр функција (индекс: интегер ; ИнпутНр: интегер): боолеан ; / / Даје статус улазног РМ [индек] и број улазак ИнпутНр
РМГетИнпутСтате функција (индекс: интегер ; ИнпутНаме: стринг): боолеан ; / / Даје статус улазног РМ [индек] и назив улазног ИнпутНаме
РМГетТемпНр функција (индекс: интегер ; ИнпутНр: интегер): дупли ; / / Враћа РМ температуру [индек] и број улазак ИнпутНр
РМГетТемп функција (индекс: интегер ; ИнпутНаме: стринг): дупли ; / / Враћа РМ температуру [индек] и назив улазног ИнпутНаме
РМГетИнвПерцент функција (индекс: интегер ; ИнпутНаме: стринг): дупли ; / / Даје проценат мерења уназад 100 % – к РМ [индек] и име ставке ИнпутНаме (у односу на контролер напона)
РМГетИнвПерцентНр функција (индекс: интегер ; ИнпутНр: интегер): дупли ; / / Даје проценат мерења уназад 100 % – к РМ [индек] и број уласка ИнпутНр (у односу на контролер напона)
РМГетПерцент функција (индекс: интегер ; ИнпутНаме: стринг): дупли ; / / Даје проценат мерења РМ [Индек] и име ставке ИнпутНаме (у односу на контролер напона)
РМГетПерцентНр функција (индекс: интегер ; ИнпутНр: интегер): дупли ; / / Даје проценат мерења уназад 100 % – к РМ [индек] и име ставке ИнпутНр (у односу на контролер напона)
РМГетДевицеОутпутСтате функција (Девнаме: стринг ; ОутпутНаме: стринг): боолеан ; / / Даје стање излазног возача зове Девнаме и прозвао ОутпутНаме
РМГетДевицеИнпутСтате функција (Девнаме: стринг ; ИнпутНаме: стринг): боолеан ; / / Даје статус возача име и име ИнпутНаме улазак Девнаме
ХМГетТемп функција (ИнпутНаме: стринг): дупли ; / / Повратак температура мерног улаза позвао ХеатМанагера ИнпутНаме
ХМГетТемпНр функција (ИнпутНр: интегер): дупли ; / / Повратак температура мерног улазног броја за ХеатМанагера ИнпутНр (1 . . 16)
цхк_инт функција (ст: стринг): интегер ; / / Безбедно за конвертовање стринг у цео број
Поступак упдате_статус ; / / Ажурирање статуса свих возача у табели (мора се покренути периодично)
Поступак Тест_саве ; / / Тест процедура да напишем резултате у текст фајл за лако
Иницијализација возача и сва имена су се једанпут апликација покрене (ФормЦреате)
Поступак ТФорм1 . ФормЦреате (Сендер: ТОбјецт) ;
почети
путања: = гетцуррентдир () ; / / Гет тренутна путања програма мора бити у директоријуму % еХоусе_ДИР % \ БИН \
путања: = стрингреплаце (путања , ‘ \ Бин ‘ , ‘ \ ‘ , [Рфигнорецасе]) ; / / Гет путању апликације еХоусе – поставља путање апликације еХоусе
лоаднамес_рм ; / / Лоад контролер имена ехоусе1 – оптерећења возача име еХоусе 1
инит_хеат_температуре_намес ; / / Сензори Лоад хеатМанагера име
реадетхернетдевс ; / / Лоад контролори етхернет еХоусе имена – читање имена уређаја еХоусе 2
тимер1 . Интервал: = 3000 ; / / Сет циклични задатак интервал у милисекундама – Поставља време за почетак провере података цикличним
тимер1 . Омогућено: = труе ; / / Почетак аутоматске задатке (статус упдате – подразумева редовну проверу података
упдате_статус ; / / Чита први статус
крај ;
Циклична провера података врши функцију Тимер1 (Тимер1Тимер) траје у интервалу од времена утврђеног у параметру Тимер1 . Интервал (у милисекундама) .
Поступак ТФорм1 . Тимер1Тимер (Сендер: ТОбјецт) ;
вар тф: ТектФиле ;
почети
упдате_статус ; / / Претвара статус возача
Тест_саве ; / / За тест пише све резултате у текстуалној датотеци
покушајте / / креира фајл маркер за примену КиллЕкец . еке који могу ” гледати ” примену пре несреће
АссигнФиле (тф , пут + ‘ резање \ лог – анализер . СТП ‘ ) ;
/ / Обавести ВДТ То апликација раде исправно користећи стампфиле ” лог \ дневника – анализер . СТП ”
коригујте (ТФ) ;
врителн (тф , ‘ 1 ‘ ) ;
коначно ;
цлосефиле (ТФ) ;
крај ;
крај ;