Building Automation eHouse – Búa Windows hugbúnaður yfirborð og sérsniðin reiknirit

Home Automation eHouse með hugbúnaði PC gerir þér kleift að búa til yfirborð til að byggja upp sjálfvirkni kerfi .
Þetta leyfir þér að búa til þína eigin , einstaka reiknirit , eru ekki útfærð í vélbúnaðar eða bílstjóri hugbúnaður sem stýrir raðnúmer Home Automation eHouse .
Í þessu skyni , við bjóðum notendum með hugbúnaður númer (í Delphi 5) . Þeir geta verið saman með nýrri útgáfur af Delphi eða nota í öðrum tungumálum forritun .
Við kaus meðvitað þessa archaic útgáfur eins og þeir eru nú þegar í boði fyrir frjáls fyrir áhugamaður program .
Þeir vinna bara eins áreiðanlegur á Windows XP , Vista , Windows 7 bæði 32 og 64 bita .
Þessi hugbúnaður er kallað eHouseLogAnalizer og þessi sniðmát logs forrit sem lesa texta skrár upp til dagsetning .
Það er hægt að stjórna og hafa eftirlit með umsókn KillWdt . EXE .
Lykill lögun af the umsókn:

  • Lestur úr stöðu og nöfn allra ökumanna
  • Lesa stöðu og slá inn nöfn allra ökumanna
  • Lesa mælingar og nöfn allra ökumanna mæla inntak
  • Hlaða öll gögn á innri program minni , sem hægt er að frekari vinna við umsókn

Forritið notar stöðu skapa skrár texta skrár í möppu ‘ logs / staða / ‘ framlengingu ‘ . Staða ‘ .
Skráin er að lesa aðeins í ef breytingar í umsókn eHouse . EXE .

Gögn stýringar eru sóttar í eftirfarandi tilvikum Records ” ehouse_rm_em_hm ” skráð í array RM .

Auk , gögn eru geymd HeatManager eftirfarandi breytur:
bonfire_status: band ; / / Staða bál fyrir HeatManager – Staða arninum upphitun spjaldið eHouse . EXE
boiler_status: band ; / / Staða ketill fyrir HM – Staða upphitun ketils spjaldið eHouse . EXE
Solar_status: band ; / / Staða sólkerfinu – Staða sól upphitun pallborð eHouse . EXE
recuperator_status: band ; / / Staða enduruppbyggingu , loftræsting , loft hita – Staða loftræstingu hita og hita bata
HADC: array [0 . . 15] af tvöfaldur ; / / Heat Hitastig framkvæmdastjóri – hiti mælingar HeatManager
/ / Heat framkvæmdastjóri Vísitölur fyrir beinan aðgang HADC array – Constant vísitölur hitastig beinni lestur HeatManager hitastig
Const HM_GWC = 3 ; / / GWC – Ground varmaskipti
HM_KOM1 = 4 ; / / Arinn Coat 1 – Bál vatn jakka 1
HM_KOMKONV = 5 ; / / Arinn konvekcyjne – convection Bál
HM_KOM2 = 6 ; / / Fire flugvél 2 – bál vatn jakka 2 (öryggisafrit)
HM_TWEWN = 7 ; / / Innri stofuhita – innra stofuhita
HM_SOLAR = 9 ; / / Collector Sun – sólkerfi
HM_ZEWNPN = 8 ; / / Ytri hitastig norður – ytri hitastig norður
HM_ZEWNPD = 1 ; / / Ytri hitastig suður – ytri hitastig suður
HM_KOC = 10 ; / / Temperature ketils – katla hita
HM_BANDOL = 11 ; / / CO / heitt vatn tankur niður – heitt watter botn biðminni
HM_REQIN = 12 ; / / Clean Air recuperator inntak – enduruppbyggingu skýr loft inntak
HM_REQOUT = 13 ; / / Output recuperator heim – heaten enduruppbyggingu ferskt blása lofti í herbergið – hitastig
HM_NAG = 14 ; / / Temperature stjórnað þremur – vegur loki fyrir hita og ofn – hitastig eftir þrjá vegu cutoff fyrir hitari vatn eða önnur hitakerfi
HM_REQWYC = 15 ; / / Home recuperator þykkni óhreinum – enduruppbyggingu frá heimili dirty útblástur afleysingamanneskja
HM_BANGORA = 2 ; / / Upphitun / heitt vatn tankur Gora – heitt vatn biðminni TOP
HM_BANSRO = 0 ; / / Upphitun / heitt vatn geymsla tankur leið – MIDDLE heitt vatn biðminni
VAR HADCNames: array [0 . . 15] á band ; / / Nöfn skynjara (mæla inntak) HeatManagera
Basic aðgerðir EhouseLogAnalizer:
málsmeðferð init_heat_temperature_names ; / / Frumstilla og / eða hita skynjara lesa nöfn HM
málsmeðferð loadnames_rm ; / / Load RoomManagerĂłw nöfn (eHouse 1)
málsmeðferð readethernetdevs ; / / Les Ethernet nöfn bílstjóri (eHouse 2)
get_index_rm virka (STR: strengur): heiltala ; / / Skilar vísitölu í töflunni með roomManagerami leita eftir skrá nafn stöðu
virka GB (CHR: stafir): Boolean ; / / Gefur Boolean gildi fyrir lesa stöðu
adc_hm aðferð (STR: band ; vísitölu: heiltala) ; / / Breytir streng með skráð hitastig að lesa stöðu HeatManagera
adc_rm aðferð (STR: band ; vísitölu: heiltala) ; / / Breytir streng hliðstæðum mælingum við lestur stöðu RoomManagerĂłw
GBS virka (b: Boolean): String ; / / Skrifa Boolean í formi texta (0 , 1)
RMDeviceIndexByName virka (STR: strengur): heiltala ; / / Skilar vísitölu í töflunni með RoomManagerami leita eftir bílstjóri nafn
RMGetOutputStateNr virka (vísitölu: heiltala ; OutputNr: heiltala): Boolean ; / / Return ríkisins framleiðsla RM [Index] og fjölda framleiðsla OutputNR
RMGetOutputState virka (vísitölu: heiltala ; OutputName: String): Boolean ; / / Skilar stöðu framleiðsla RM [Index] og kallaði OutputName
RMGetInputStateNr virka (vísitölu: heiltala ; InputNr: heiltala): Boolean ; / / Skilar stöðu inntak RM [Index] og fjöldi InputNr færslu
RMGetInputState virka (vísitölu: heiltala ; InputName: String): Boolean ; / / Skilar stöðu inntak RM [Index] og nafn á færslu InputName
RMGetTempNr virka (vísitölu: heiltala ; InputNr: heiltala): tvöfaldur ; / / Skilar RM hitastig [Index] og fjöldi InputNr færslu
RMGetTemp virka (vísitölu: heiltala ; InputName: String): tvöfaldur ; / / Skilar RM hitastig [Index] og nafn á færslu InputName
RMGetInvPercent virka (vísitölu: heiltala ; InputName: String): tvöfaldur ; / / Skilar hlutfall mæling á öfugri 100 % – x RM [Index] og nafnið á færslunni InputName (í tengslum við spennu framboð stjórnandi)
RMGetInvPercentNr virka (vísitölu: heiltala ; InputNr: heiltala): tvöfaldur ; / / Skilar hlutfall mæling á öfugri 100 % – x RM [Index] og fjöldi InputNr innganga (í tengslum við spennu framboð stjórnandi)
RMGetPercent virka (vísitölu: heiltala ; InputName: String): tvöfaldur ; / / Skilar hlutfall mæling á RM [Index] og nafnið á færslunni InputName (í tengslum við spennu framboð stjórnandi)
RMGetPercentNr virka (vísitölu: heiltala ; InputNr: heiltala): tvöfaldur ; / / Skilar hlutfall mæling á öfugri 100 % – x RM [Index] og nafnið á færslunni InputNr (í tengslum við spennu framboð stjórnandi)
RMGetDeviceOutputState virka (Devname: band ; OutputName: String): Boolean ; / / Skilar ástand framleiðsla bílstjóri heitir Devname og kallaði OutputName
RMGetDeviceInputState virka (Devname: band ; InputName: String): Boolean ; / / Skilar stöðu ökumanns inntak nafn og nafn Devname færslu InputName
HMGetTemp virka (InputName: strengur): tvöfaldur ; / / Return hitastig mælingar inntak kallaði HeatManagera InputName
HMGetTempNr virka (InputNr: heiltala): tvöfaldur ; / / Return hitastig mælingar inntak númer fyrir HeatManagera InputNr (1 . . 16)
chk_int virka (ST: strengur): heiltala ; / / Safe að umbreyta a band til heiltölu
málsmeðferð update_status ; / / Uppfæra stöðu allra ökumanna í töflu (þarf að keyra reglulega)
málsmeðferð Test_save ; / / Test aðferð að skrifa niðurstöðurnar í textaskrá fyrir þægilegur
Frumstilla bílstjóri og öll nöfn eru gerðar þegar forritið er opnað (FormCreate)
málsmeðferð TForm1 . FormCreate (Sendandi: TObject) ;
byrja
slóð: = getcurrentdir () ; / / Fá núverandi slóð á forrit verður að vera í möppu % eHouse_DIR % \ BIN \
slóð: = stringreplace (slóð , ‘ \ Bin ‘ , ‘ \ ‘ , [Rfignorecase]) ; / / Fá slóð eHouse umsókn – setur slóð umsókn eHouse
loadnames_rm ; / / Load stjórnandi nöfn ehouse1 – hleðst ökumenn nafn eHouse 1
init_heat_temperature_names ; / / Hlaða skynjara heatManagera nafn
readethernetdevs ; / / Hlaða stýringar eter eHouse nöfn – lestur tæki Nöfn eHouse 2
timer1 . Interval: = 3000 ; / / Set hringlaga verkefni bil í millisekúndum – Stillir tíma til að byrja að skoða hringlaga gögn
timer1 . Virkt: = true ; / / Byrja sjálfvirka verkefni (staða uppfærslu – felur reglulega afstemmingu gagna
update_status ; / / Les fyrstu stöðu
enda ;
Hringlaga gögn stöðva er gert með fallinu Timer1 (Timer1Timer) rekur í millibili sett í breytu Timer1 . Bil (í millisekúndum) .
málsmeðferð TForm1 . Timer1Timer (Sendandi: TObject) ;
var TF: textaskrá ;
byrja
update_status ; / / Breytir stöðu ökumanns
Test_save ; / / Fyrir próf skrifar allar niðurstöður í textaskrá
reyna / / búa til falið skrá fyrir umsókn KillExec . Exe sem getur ” horfa ” umsókn fyrir hrun
AssignFile (TF , leið + ‘ logs \ Log – analizer . STP ‘ ) ;
/ / Tilkynna WDT Þessi forrit vinna rétt með stampfile ” skrá \ log – analizer . STP ”
umrita (TF) ;
writeln (TF , ‘ 1 ‘ ) ;
lokum ;
closefile (TF) ;
enda ;
enda ;