ˇ ˇeska ´ univerzita v Cesk ´ ch Bude ˇjovic´ıch Jihoc y Pedagogick´a fakulta
ˇ ızen´ı klimatu poˇ R´ c´ıtaˇ cov´ eho s´ alu pomoc´ı SDS MICRO Control of climate in server room using SDS MICRO Bakal´aˇrsk´a pr´ace
Vypracoval: Petr Jarol´ımek, DiS. Vedouc´ı pr´ ace: PaedDr. Petr Pexa, Ph.D. ˇ e Budˇejovice 2015 Cesk´ Katedra informatiky
Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze svoji bakal´aˇrskou pr´aci jsem vypracoval samostatnˇe pouze s pouˇzit´ım pramen˚ u a literatury uveden´ ych v seznamu citovan´e literatury. Prohlaˇsuji, ˇze v souladu s S 47b z´akona ˇc. 111/1998 Sb. v platn´em znˇen´ı souhlas´ım se zveˇrejnˇen´ım sv´e bakal´aˇrsk´e pr´ace, v nezkr´acen´e podobˇe elektronickou cestou ve veˇrejnˇe pˇr´ıstupn´e ˇca´sti datab´aze STAG provozovan´e Jihoˇceskou univerˇ ych Budˇejovic´ıch na jej´ıch internetov´ zitou v Cesk´ ych str´ank´ach, a to se zachov´an´ım m´eho autorsk´eho pr´ava k odevzdan´emu textu t´eto kvalifikaˇcn´ı pr´ace. Souhlas´ım d´ale s t´ım, aby tout´eˇz elektronickou cestou byly v souladu s uveden´ ym ustanoven´ım z´akona ˇc. 111/1998 Sb. zveˇrejnˇeny posudky ˇskolitele a oponent˚ u pr´ace i z´aznam o pr˚ ubˇehu a v´ ysledku obhajoby kvalifikaˇcn´ı pr´ace. Rovnˇeˇz souhlas´ım s porovn´an´ım textu m´e kvalifikaˇcn´ı pr´ace s datab´az´ı kvalifikaˇcn´ıch prac´ı Theses.cz provozovanou N´arodn´ım registrem vysokoˇskolsk´ ych kvalifikaˇcn´ıch prac´ı a syst´emem na odhalov´an´ı plagi´at˚ u.
ˇ ych Budˇejovic´ıch dne 17. dubna 2015 V Cesk´
Petr Jarol´ımek, DiS.
Abstrakt C´ılem bakal´aˇrsk´e pr´ace je popis parametr˚ u inteligentn´ıch PAC/PLC modul˚ u SDS Micro z dostupn´ ych zdroj˚ u. Pr´ace se bude d´ale zab´ yvat klady a z´apory dan´e problematiky a zjist´ı, jak´a nab´ıdka je v tomto ohledu dostupn´a na ˇcesk´em trhu. SDS MICRO neboli s´ıt’ov´ y dohledov´ y syst´em je velmi efektivn´ı technologie pro sledov´an´ı u ´daj˚ u o odbˇeru energi´ı, d´alkov´ ych odeˇct˚ u, mˇeˇren´ı teploty a vlhkosti. V praktick´e ˇc´asti je detailnˇe pops´ano a zdokumentov´ano vlastn´ı zprovoznˇen´ı SDS MICRO technologie, kter´a je vyuˇzita v poˇc´ıtaˇcov´em s´alu. Hlavn´ım u ´ˇcelem tohoto zaˇr´ızen´ı je ovl´ad´an´ı klimatick´eho prostˇred´ı. Aktu´aln´ı hodnoty jsou zobrazeny na webov´e str´ance prostˇrednictv´ım jazyka HTML5 a JavaScriptu pˇr´ımo v zaˇr´ızen´ı SDS Micro. Data jsou ukl´ad´ana a archivov´ana pomoc´ı jazyka PHP do datab´aze MySQL a d´ale zpracov´av´ana v podobˇe graf˚ u a pˇrehledu hodnot.
Abstract The aim of the thesis in the first part is the description of the parameters of the intellingent SDS Micro PAC/PLC modules from the available sources. This module provides a clear overview of the information concerning this technology. The thesis also deals with pluses and minuses of the issues in question and looks into what the Czech market has to offer in this respect. SDS (network supervising system) is a very efficient kind of technology used for monitoring data about energy consumption, remote reading of data and temperature and humidity measurement. The practical part provides a detailed description and documentation of the installation of the SDS MICRO technology used in a computer room. The main purpose of the device is the control of the climatic environment. The current data are to be found on the website by means of HTML5 and JavaScript directly in the SDS Micro module. The data are stored and archived in a PHP language in the MySQL database and further processed in the form of graphs and overviews.
Kl´ıˇ cov´ a slova SDS Micro, PAC/PLC moduly, HTML5, Java Script, klima
Keywords SDS Micro, PAC/PLC modules, HTML5, Java Script, climate
Podˇ ekov´ an´ı R´ad bych podˇekoval panu PaedDr. Petru Pexovi za ochotu, vstˇr´ıcnost a spolupr´aci pˇri veden´ı m´e pr´ace, za odborn´e rady a cenn´e pˇripom´ınky, kter´e mi poskytl i za trpˇelivost a ˇcas, kter´ y mi vˇenoval. D´ale bych r´ad podˇekoval za spolupr´aci odborn´ ym server˚ um Root a Zdroj´ak, kter´e sv´ ym odkazov´an´ım v´ yznamnˇe pˇrispˇely. D´ale bych r´ad podˇekoval sv´e rodinˇe a vˇsem z´ uˇcastnˇen´ ym lidem, kteˇr´ı se pod´ıleli na realizaci moj´ı pr´ace.
Obsah ´ 1 Uvod 10 1.1 C´ıle pr´ace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2 V´ ychodiska pr´ace . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3 Metody pr´ace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2 Teoretick´ aˇ c´ ast 2.1 Technick´e parametry PAC a PLC modul˚ u . 2.2 Obecn´ y popis jednotky SDS Micro . . . . . 2.3 V´ yvojov´e prostˇred´ı . . . . . . . . . . . . . . 2.4 Sezn´amen´ı s programovac´ım jazykem SDS-C 2.4.1 Z´akladn´ı funkce main, koment´aˇre . . 2.4.2 Funkce init . . . . . . . . . . . . . . 2.4.3 Funkce echo . . . . . . . . . . . . . . 2.4.4 Promˇenn´e . . . . . . . . . . . . . . . 2.4.5 Matematick´e operace . . . . . . . . . 2.4.6 Vlastn´ı funkce . . . . . . . . . . . . . 2.4.7 Podm´ınky a logick´e oper´atory . . . . 2.4.8 Smyˇcky . . . . . . . . . . . . . . . . 2.4.9 Prvn´ı program . . . . . . . . . . . . 2.5 Nejd˚ uleˇzitˇejˇs´ı funkce a syst´emov´e promˇenn´e 2.6 Moˇznosti vyuˇzit´ı jednotky SDS Micro . . . . 2.7 Zp˚ usob monitorov´an´ı a archivace dat . . . . 2.7.1 Vyuˇzit´ı E port´alu . . . . . . . . . . . 2.7.2 Vlastn´ı archivace . . . . . . . . . . . 2.8 Klady a z´apory technologie . . . . . . . . . . 2.9 Nab´ıdka technologie na ˇcesk´em trhu . . . . . 3 Praktick´ aˇ c´ ast 3.1 Pˇredstaven´ı projektu . . . . . . . . . . . . . 3.2 Technick´e a minim´aln´ı poˇzadavky na projekt 3.3 Sch´ema zapojen´ı . . . . . . . . . . . . . . . ˇ ızen´ı technologie . . . . . . . . . . . . . . . 3.4 R´
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
13 13 15 17 18 19 20 20 21 22 22 23 26 27 28 30 31 32 33 33 34
. . . .
35 35 37 39 41
3.5 3.6
Monitoring a archivace dat . . . . . . . . . . . . . . . . . . . . Probl´emy, kter´e mohou nastat . . . . . . . . . . . . . . . . . . 3.6.1 Teplotn´ı ˇcidlo vrac´ı vysokou hodnotu v ˇra´du tis´ıc˚ u . . 3.6.2 Teplotn´ı ˇcidlo pokud ˇcidlo vrac´ı hodnotu 85°C . . . . 3.6.3 Varov´an´ı pˇrekroˇcen´ı teploty se zobraz´ı, ale nepˇrich´az´ı rovn´ y email . . . . . . . . . . . . . . . . . . . . . . . . 3.6.4 Teplota byla pˇrekroˇcena, ale varov´an´ı se nezobrazuje . 3.6.5 Hodnota pro pˇrekroˇcen´ı teploty se pˇrep´ıˇse . . . . . . . 3.6.6 Pˇrechod na zimn´ı ˇci letn´ı ˇcas . . . . . . . . . . . . . . .
4 Z´ avˇ er
. . . . . . . . . . . . va. . . . . . . . . . . .
46 49 50 50 50 51 51 51 52
´ 1 UVOD
1
´ Uvod
Cel´a moje bakal´aˇrsk´a pr´ace se zab´ yv´a problematikou ˇr´ızen´ı teplot za pomoci urˇcit´ ych periferi´ı a moˇznost´ı jejich n´asledn´eho vyuˇzit´ı. S t´ım souvis´ı nejprve teoretick´e prozkoum´an´ı a popis vybran´ ych technologi´ı a zaˇr´ızen´ı. D´ale sezn´amen´ı s konkr´etn´ı technologi´ı a tak´e naprogramov´an´ı nutn´ ych program˚ u pro ˇr´ızen´ı klimatick´ ych podm´ınek. Dalˇs´ı ˇca´st´ı je vytvoˇren´ı ˇr´ıd´ıc´ıho programu spoleˇcnˇe s webovou aplikac´ı zobrazuj´ıc´ı z´ıskan´a data. V teoretick´e ˇca´sti m´e pr´ace se zab´ yv´am jednak obecnou problematikou zm´ınˇen´ ych periferi´ı, ale tak´e jejich konkr´etn´ım technick´ ym popisem. V n´avaznosti na to v praktick´e ˇc´asti pr´ace jiˇz ˇreˇs´ım a popisuji konkr´etn´ı projekt a jeho technickou realizaci. V souˇcasn´e, bohuˇzel velmi hektick´e a chaotick´e, dobˇe se v n´avaznosti na jak´ekoli technologie st´ale citelnˇeji objevuje ot´azka nejen ochrany osobn´ıch u ´daj˚ u, ale tak´e soukrom´ı dotˇcen´ ych klient˚ u. S t´ım souvis´ı i t´ema moj´ı pr´ace. Jedn´ım z c´ıl˚ u bylo vytvoˇren´ı technologie, kter´a by splˇ novala pr´avˇe zm´ınˇen´e parametry. Jak ovl´adat techniku bez fyzick´e u ´ˇcasti spr´avce syst´emu? To je jedna ze stˇeˇzejn´ıch ot´azek mnou zpracovan´eho projektu a z´aroveˇ n t´eto pr´ace. Jedn´ım z parametr˚ u m´eho projektu bylo pr´avˇe vytvoˇren´ı syst´emu, kter´ y bude schopen v z´asadˇe pracovat samostatnˇe, ˇci za asistence vzd´alen´ ych pˇr´ıkaz˚ u.
1.1
C´ıle pr´ ace
C´ılem pr´ace je sezn´amen´ı s technologi´ı SDS Micro a aplikovat tuto technologii v praxi v poˇc´ıtaˇcov´em s´ale, kde bude toto zaˇr´ızen´ı ˇr´ıdit klimatick´e podm´ınky. Je koncipov´ana tak, aby poskytla nejen informace o tom, jak zaˇr´ızen´ı funguje, jak´ ym zp˚ usobem bude provozov´ano, ale tak´e ˇreˇs´ı praktickou uk´azku nasazen´ı t´eto technologie. Dalˇs´ım z c´ıl˚ u je pˇr´ıprava praktick´ ych program˚ u pro ˇr´ızen´ı dan´e jednotky. S t´ım souvis´ı zobrazen´ı aktu´aln´ıch dat pomoc´ı webov´eho prohl´ıˇzeˇce a v neposledn´ı ˇradˇe ukl´ad´an´ı namˇeˇren´ ych hodnot do glob´aln´ıho u ´loˇziˇstˇe. Z´ıskan´e informace se zobraz´ı pomoc´ı webov´e str´anky tak´e ve formˇe graf˚ u. Jedna z hlavn´ıch ˇca´st´ı je tvoˇrena pˇredstaven´ım a vysvˇetlen´ım jednotliv´ ych kom-
10
´ 1 UVOD
ponent˚ u, kde jsou srozumitelnˇe pops´any a probr´any z´akladn´ı vlastnosti s pˇr´ısluˇsn´ ymi zdrojov´ ymi k´ody. Souˇca´st´ı praktick´e ˇca´sti je popis postupu, jak zaˇr´ızen´ı instalovat, a n´asledn´e moˇznosti pr´ace s dan´ ym zaˇr´ızen´ım. V posledn´ı ˇc´asti budu porovn´avat tuto technologii s konkurenc´ı a zkoumat jej´ı v´ yhody a nev´ yhody.
1.2
V´ ychodiska pr´ ace
Pr´ace vych´az´ı z potˇreby zpracovat problematiku ˇr´ızen´ı klimatick´ ych podm´ınek, vˇcetnˇe pˇr´ıklad˚ u a zdrojov´ ych k´od˚ u. C´ılem t´eto bakal´aˇrsk´e pr´ace je popsat a sezn´amit se s PLC technologi´ı SDS Micro, kter´a bude pouˇzita v poˇc´ıtaˇcov´em s´ale k ˇr´ızen´ı klimatick´ ych podm´ınek. V dneˇsn´ı dobˇe se klade velk´ y d˚ uraz na ochranu citliv´ ych dat, kter´e jsou um´ıstˇeny v tˇechto prostor´ach. Toto zaˇr´ızen´ı poskytuje moˇznost ˇr´ıdit klimatick´e podm´ınky pomoc´ı teplotn´ıch ˇcidel bez nutnosti fyzick´e pˇr´ıtomnosti uˇzivatele. D´ale zaznamen´avat z´ıskan´a data z ˇr´ıd´ıc´ıho programu, kter´a se odes´ılaj´ı na glob´aln´ı uloˇziˇstˇe a pot´e jsou zpracov´av´ana pomoc´ı jazyka PHP do datab´aze MySQL. Integrovan´ y interpret jazyka SDS-C zajist´ı obsluhu tohoto hardwaru. Aktu´aln´ı i archivovan´a data se zobrazuj´ı pomoc´ı HTML5 jako webov´a uˇzivatelsk´a str´anka, slouˇz´ıc´ı z´aroveˇ n jako zpˇetn´a vazba uˇzivateli o spr´avn´e funkˇcnosti zm´ınˇen´eho zaˇr´ızen´ı.
1.3
Metody pr´ ace
Vu ´vodu pr´ace bude rozebr´ana t´ematika technick´ ych parametr˚ u PAC a PLC modul˚ u. Tato sumarizace informac´ı o technologii pom˚ uˇze budouc´ım z´ajemc˚ um z´ıskat pˇrehled a l´epe se tak v t´eto problematice orientovat. Souˇc´ast´ı tohoto rozboru technologie bude obecn´ y popis jednotky SDS Micro, sezn´amen´ı se s programovac´ım jazykem SDS-C, porovn´an´ı klad˚ u a z´apor˚ u jednotliv´ ych typ˚ u. D´ale popis nejd˚ uleˇzitˇejˇs´ıch funkc´ı, moˇznosti vyuˇzit´ı jednotky SDS Micro, archivace z´ıskan´ ych dat a v neposledn´ı ˇradˇe i nab´ıdka t´eto technologie na ˇcesk´em trhu. Jedn´ım z n´asleduj´ıc´ıch hlavn´ıch bod˚ u pr´ace bude praktick´a ˇc´ast, kter´a se jiˇz bude zab´ yvat konkr´etn´ım zaˇr´ızen´ım, jeho pˇredstaven´ım a popisem realizace. 11
´ 1 UVOD
Budou zde probr´any i technick´e poˇzadavky na projekt, sch´ema zapojen´ı, monitoring a archivace dat a ˇr´ızen´ı samotn´e technologie. Tato ˇca´st bude slouˇzit jako jak´ ysi manu´al pro realizace dalˇs´ıch projekt˚ u.
12
´ C ˇ AST ´ 2 TEORETICKA
2
Teoretick´ aˇ c´ ast
V teoretick´e ˇc´asti pr´ace je rozebr´ana t´ematika technick´ ych parametr˚ u PAC1 a PLC2 modul˚ u. Toto uskupen´ı informac´ı o technologii pom˚ uˇze budouc´ım z´ajemc˚ um z´ıskat pˇrehled a l´epe se tak v t´eto problematice orientovat. Souˇca´st´ı tohoto rozboru technologie je tak´e obecn´ y popis jednotky SDS3 Micro, sezn´amen´ı s programovac´ım jazykem SDS-C4 , porovn´an´ı klad˚ u a z´apor˚ u jednotliv´ ych typ˚ u, popis nejd˚ uleˇzitˇejˇs´ıch funkc´ı, moˇznosti vyuˇzit´ı jednotky SDS Micro, archivace z´ıskan´ ych dat a v neposledn´ı ˇradˇe i nab´ıdka t´eto technologie na ˇcesk´em trhu.
2.1
Technick´ e parametry PAC a PLC modul˚ u
PLC modul neboli programovateln´ y logick´ y automat je kompaktn´ı ˇradiˇc pouˇz´ıvan´ y pro automatizaci proces˚ u v re´aln´em ˇcase - napˇr. pˇri ˇr´ızen´ı stroj˚ u, ˇci v´ yrobn´ıch linek. Tento ˇradiˇc je ˇr´ızen mikroprocesorem a je pro nˇej charakteristick´a pr´ace v cyklech, jejichˇz periferie je uzp˚ usobena k napojen´ı na technologick´e procesy. V tomto pˇr´ıpadˇe pˇrev´aˇznou ˇc´ast periferi´ı tvoˇr´ı digit´aln´ı vstupy (DI) a digit´aln´ı v´ ystupy (DO)[10]. D´ale pro dalˇs´ı zpracov´an´ı sign´al˚ u a napojen´ı na technologii je urˇcen analogov´ y vstup (AI) a v´ ystup (AO), slouˇz´ıc´ı ke zpracov´an´ı spojit´ ych sign´al˚ u[10]. Vzhledem k tomu, ˇze se pr˚ umysl neust´ale automatizuje, jsou pouˇz´ıv´any k modulu PLC napˇr´ıklad r˚ uzn´e funkˇcn´ı modely (FM) pro polohov´an´ı, ˇci komunikaˇcn´ı procesory (CP) pro sbˇer a pˇrenos dat. Moduly PLC m˚ uˇzeme dle konstrukˇcn´ıho hlediska rozdˇelit na skupinu kompaktn´ıch a modul´arn´ıch syst´em˚ u. Kompaktn´ı syst´em se vyznaˇcuje pˇr´ıtomnost´ı CPU5 , digit´aln´ıch i analogov´ ych vstup˚ u a v´ ystup˚ u a z´akladn´ı podporou komunikace. V nˇekter´ ych pˇr´ıpadech je pˇr´ıtomen i zdroj, ovˇsem rozˇs´ıˇritelnost tˇechto kompaktn´ıch syst´em˚ u je velmi omezena. V pˇr´ıpadˇe modul´arn´ıho syst´emu jsou pˇr´ıtomn´e jednotliv´e komponenty celku rozdˇeleny do modul˚ u. PLC syst´em se tedy skl´ad´a z modul˚ u zdroje, CPU, funkˇcn´ıch modul˚ u, vstup˚ u a v´ ystup˚ u. Tento modul´arn´ı syst´em je moˇzno d´ale rozˇsiˇrovat 1
Programmable Automation Controller Programmable Logic Controller 3 S´ıt’ov´ y dohledov´ y syst´em 4 Programovac´ı jazyk 5 Centr´ aln´ı procesorov´ a jednotka 2
13
´ C ˇ AST ´ 2 TEORETICKA
v nepomˇernˇe vˇetˇs´ım rozsahu neˇz u prvn´ı skupiny. V souˇcasn´e dobˇe jsou PLC v´ ykonn´ ymi syst´emy, kter´e jsou velmi jednoduch´e a inteligentn´ı a poskytuj´ı velk´e mnoˇzstv´ı uˇziteˇcn´ ych vlastnost´ı napˇr.: [9] v´ yvojov´e prostˇred´ı - podpora r˚ uzn´ ych programovac´ıch jazyk˚ u, lad´ıc´ı n´astroje,
webov´e rozhran´ı umoˇzn ˇuj´ıc´ı lehkou administraci n´ızk´a n´akladovost - n´ızk´a cena poˇr´ızen´ı a provozu komunikaˇcn´ı schopnosti - centralizovan´e i vzd´alen´e propojen´ı pomoc´ı s´ıt’o-
v´eho rozhran´ı konstrukce - robustnost umoˇzn ˇuje ˇsirokou moˇznost nasazen´ı ˇradiˇce i do pr˚ u-
myslov´eho prostˇred´ı rozˇsiˇritelnost - moˇznost jednoduch´eho rozˇs´ıˇren´ı pro vyuˇzit´ı dalˇs´ıch vstup˚ u
a v´ ystup˚ u ˇsk´alovatelnost - snadn´a ˇsk´ alovatelnost za u ´ˇcelem zv´ yˇsen´ı funkˇcnosti a v´ ykonu,
podpora velk´eho mnoˇzstv´ı mikroprocesor˚ u PAC je relativnˇe mal´ y pr˚ umyslov´ y poˇc´ıtaˇc, kombinuj´ıc´ı vlastnosti a moˇznosti ˇr´ıd´ıc´ıho syst´emu zaloˇzen´eho na klasick´em PC6 stoln´ım poˇc´ıtaˇci s vlastnostmi a moˇznostmi ˇradiˇc˚ u PLC. Tato kombinace vlastnost´ı poskytuje uˇzivateli nejen vysokou spolehlivost ˇradiˇce PLC, ale tak´e flexibilitu a velmi dobr´ y v´ ypoˇcetn´ı v´ ykon stoln´ıho poˇc´ıtaˇce. PAC modul obecnˇe poskytuje lepˇs´ı vlastnosti neˇz PLC moduly, a to: komunikaˇcn´ı standard - standardn´ı komunikaˇcn´ı protokoly jsou pouˇz´ıv´ any za
u ´ˇcelem maxim´aln´ı standardizace pouˇzit´ı PAC ˇradiˇc˚ u modul´arn´ı architektura - d´ıky architektuˇre je moˇznost pˇrid´ av´an´ı a libovoln´e
v´ ymˇeny r˚ uzn´ ych ˇc´ast´ı syst´emu, d´ale PAC ˇradiˇce podporuj´ı pr´aci s dalˇs´ımi komponenty, kter´e jsou zabudovan´e ve fin´aln´ım ˇr´ıd´ıc´ım syst´emu 6
Personal computer
14
´ C ˇ AST ´ 2 TEORETICKA multitasking - PAC ˇradiˇc podporuje zpracov´ an´ı v´ıce u ´loh souˇcasnˇe, kaˇzd´ y
z tˇechto proces˚ u m˚ uˇze b´ yt nez´avisle ˇcten a zapisov´an do syst´emov´ ych promˇenn´ ych Moment´alnˇe jsou rozd´ıly mezi PAC a PLC modulem velmi minim´aln´ı a nejvˇetˇs´ı ˇ ıd´ıc´ı jednotka SDS Micro je zaloˇzena na ˇradiˇci rozd´ıl nalezneme zejm´ena v cenˇe. R´ PLC, ke kter´emu je pˇripojeno nav´ıc i s´ıt’ov´e rozhran´ı Ethernet.
2.2
Obecn´ y popis jednotky SDS Micro
SDS Micro je ˇr´ıd´ıc´ı jednotka, kter´a umoˇzn ˇuje nastaven´ı a kontrolu z´akladn´ıch provozn´ıch parametr˚ u pomoc´ı integrovan´eho syst´emov´eho prostˇred´ı SDS-C a webov´eho administraˇcn´ıho rozhran´ı. V´ yrobce pˇr´ımo neuv´ad´ı, ze kter´ ych prvk˚ u se ˇr´ıd´ıc´ı jednotka skl´ad´a, ale dle zjiˇstˇen´ ych informac´ı vypl´ yv´a, ˇze hlavn´ım ˇr´ıd´ıc´ım ˇcipem je mikro procesor od spoleˇcnosti Atmel. ˇ ıd´ıc´ı jednotka SDS Micro se dod´av´a jako zkompletovan´ R´ y v´ yrobek. Pro uˇzivatelskou komunikaci je souˇca´st´ı klasick´ y eternetov´ y port prostˇrednictv´ım proto7 kolu TCP/IP , kter´ y umoˇzn ˇuje pˇripojen´ı tohoto zaˇr´ızen´ı do s´ıtˇe LAN8 . Po tomto rozhran´ı je zprostˇredkov´ana komunikace pro n´asledn´ y pˇrenos SDS-C ˇr´ıd´ıc´ıho programu (d´ale jen ˇr´ıd´ıc´ıho programu) a uˇzivatelsk´e HTML9 str´anky (d´ale jen uˇzivatelsk´a str´anka). Pro pˇripojen´ı vstup˚ u a v´ ystup˚ u jsou na zaˇr´ızen´ı k dispozici svorky. D´ale jedTM10 notka obsahuje sbˇernici 1-Wire , kter´a umoˇzn ˇuje zapojit k jednotce nˇekolik zaˇr´ızen´ı, v tomto pˇr´ıpadˇe teplotn´ıch ˇcidel. 7
Transmission Control Protocol / Internet Protocol Local Area Network 9 Hypertext Markup Language 10 1-WireTM komunikaˇcn´ı sbˇernice pro seriov´e zapojen´ı teplotn´ıch ˇcidel 8
15
´ C ˇ AST ´ 2 TEORETICKA
Obr´azek 1: Sch´ema SDS Micro
16
´ C ˇ AST ´ 2 TEORETICKA
V´ ychoz´ı parametry
Hodnota
IP adresa
192.168.1.250
Br´ana
192.168.1.1
Maska
255.255.255.0
Heslo
test
Tabulka 1: V´ ychoz´ı parametry s´ıt’ov´e komunikace ˇ ıd´ıc´ı program se vytv´aˇr´ı v jazyce SDS-C, kter´ R´ y je odvozen od jazyka C11 . Tento ˇr´ıd´ıc´ı program je pomoc´ı v´ yvojov´eho prostˇred´ı (viz. kapitola 1.4) kompilov´an a nahr´an do ˇr´ıd´ıc´ı jednotky. Jazyk SDS-C umoˇzn ˇuje ˇcten´ı vstupn´ıch hodnot a ovl´ad´an´ı v´ ystup˚ u pomoc´ı syst´emov´ ych promˇenn´ ych. Dalˇs´ı ned´ılnou souˇca´st´ı s´ıt’ov´eho rozhran´ı ˇr´ıd´ıc´ı jednotky je uˇzivatelsk´a str´anka, kter´a n´am umoˇzn ˇuje zobrazovat z´ıskan´e hodnoty, uˇzivatelsky definovan´e hodnoty, syst´emov´e promˇenn´e ˇci ovl´adat chov´an´ı ˇr´ıd´ıc´ı jednotky. Jednotka obsahuje integrovan´e aministraˇcn´ı webov´e rozhran´ı, kter´e umoˇzn ˇuje pˇristupovat pˇres webov´ y pro12 hl´ıˇzeˇc prostˇrednictv´ım protokolu HTTP a nastavovat jej´ı z´akladn´ı parametry. D´ale umoˇzn ˇuje zobrazen´ı v´ ypisu konzole ˇr´ıd´ıc´ıho programu, syst´emov´e historie, historie komunikaˇcn´ıch protokol˚ u a pˇrihl´aˇsen´ ych uˇzivatel˚ u. Jednotka disponuje vnitˇrn´ı pamˇet´ı Data Flash o velikosti 2 MB13 (souˇcasn´a verze). Tato pamˇet je pˇridelˇena pro ˇr´ıd´ıc´ı program, uˇzivatelskou str´anku a syst´emov´e promˇenn´e.
2.3
V´ yvojov´ e prostˇ red´ı
V´ yvojov´e prostˇred´ı je dod´av´ano spolu s v´ yrobkem, nebo je volnˇe ke staˇzen´ı na str´ank´ach v´ yrobce. Lze jej spustit na platformˇe Microsoft Windows bez pˇredchoz´ı instalace. Tato v´ yvojov´a aplikace byla vyvinuta tˇret´ı stranou a je velmi uˇzivatelsky jednoduch´a. Aplikace pˇredstavuje rozhran´ı pro v´ yvoj, u ´pravu, kompilaci a ladˇen´ı ˇ ıd´ıc´ı program zdrojov´eho k´odu a n´asledn´e nahr´an´ı ˇr´ıd´ıc´ıho programu do jednotky. R´ 11
Programovac´ı jazyk C HyperText Transfer Protocol 13 MegaByte 12
17
´ C ˇ AST ´ 2 TEORETICKA
je zad´av´an textovou formou a je n´aslednˇe pˇreloˇzen do intern´ıho pseudok´odu. V´ yvojov´a aplikace d´ale obsahuje HTML editor pro definici uˇzivatelsk´e str´anky. Souˇca´st´ı v´ yvojov´e aplikace je n´astroj pro odlazen´ı chyb, simul´ator ˇr´ıd´ıc´ıho programu, kter´ y umoˇzn ˇuje simulovat veˇsker´e vstupy a v´ ystupy, v´ ypisy z konzole a v neposledn´ı ˇradˇe tak´e krokovat ˇr´ıd´ıc´ı program. V´ yvojov´a aplikace umoˇzn ˇuje nahr´an´ı ˇr´ıd´ıc´ıho programu, uˇzivatelsk´e str´anky a aktualizaci firmware pomoc´ı protokolu TCP/IP.
2.4
Sezn´ amen´ı s programovac´ım jazykem SDS-C
SDS-C umoˇzn ˇuje uˇzivateli v´ yrobku dodateˇcnˇe naprogramovat a upravovat chov´an´ı ˇr´ıd´ıc´ıho programu. Uˇzivatel tedy nap´ıˇse program v jazyce SDS-C, kter´ y je nahr´an do zaˇr´ızen´ı SDS Micro. SDS-C je zjednoduˇsen´a verze FULL-C proto, aby mohl i uˇzivatel zaˇca´teˇcn´ık programovat. FULL-C skriptovac´ı jazyk je odvozen od ANSI14 C programovac´ıho jazyka. SDS-C je tedy souˇca´st´ı firmwaru SDS Micro. (1) Program je provozov´an a vykon´av´an pouze staticky v alokovan´e pamˇeti, programov´ y k´od je vykon´av´an a st´ale opakov´an po celou dobu, kdy je zaˇr´ızen´ı zapnut´e. Kaˇzd´ y ˇr´ıd´ıc´ı program mus´ı obsahovat funkci main (odkaz na main), stejnˇe jako tomu je u jazyka C. Uvnitˇr t´eto funkce vykon´av´ame dalˇs´ı pˇr´ıkazy ˇci vol´ame funkce, kter´e se vyuˇz´ıvaj´ı pro pravideln´ y sbˇer dat z ˇr´ıd´ıc´ı jednotky. Omezen´ı a pozn´amky pro SDS-C programy:[1] lze pouˇz´ıt jen glob´ aln´ı promˇenn´e, vˇsechny promˇenn´e jsou glob´aln´ı, i ty defi-
novan´e uvnitˇr funkc´ı funkce jsou definov´any vˇzdy jako void (tj. nevracej´ı hodnotu, ani nemaj´ı
vstupn´ı promˇenn´e, pouˇz´ıvaj´ı se glob´aln´ı promˇenn´e) z´ apis (deklarace) funkce je jen pomoc´ı n´azvu funkce tj. bez parametr˚ u a je
pˇredpokl´ad´ano rezervovan´e slovo (void) funkce tedy nevracej´ı hodnotu a nepˇreb´ıraj´ı parametry (ve FULL-C: void
funkce(void){ ... }; se v SDS-C p´ıˇse: funkce { ... }; 14
American National Standards Institute
18
´ C ˇ AST ´ 2 TEORETICKA funkce se volaj´ı jen sv´ ym n´azvem, napˇr. mojefunkce(); (nezapomeˇ nme na
z´avorky (), i kdyˇz nepˇred´av´ame ˇza´dn´e parametry) n´ azvy n´avˇest´ı (pro goto skoky) mus´ı zaˇc´ınat p´ısmenkem, a mohou, ale ne-
mus´ı, b´ yt (pro pˇrehlednost) uvedeny kl´ıˇcov´ ym slovem label jedin´e povolen´e promˇenn´e typu pole“ jsou: sys[] (reflektuje fyzick´ y stav ” zaˇr´ızen´ı, nav´ıc jako parametr lze zapsat jen pˇr´ımo ˇc´ıslo) a ram[] a text[] pro if je moˇzn´e pouˇz´ıt podbloky k´odu ohraniˇcen´e { a } (pouze pro v´ ysledky
if, viz detaily) podm´ınky lze testovat pomoc´ı IF, s bˇeˇzn´ ym C z´apisem, vykon´any jsou vˇzdy
vˇsechny podm´ınky, test se nezobrazuje cyklus for nen´ı k dispozici (realizaci provedeme pomoc´ı if a skok˚ u goto) cyklus while nen´ı k dispozici (opˇet - lze nahradit n´avˇest´ım a if) vˇsechny promˇenn´e jsou typu signed 32-bit (tj. v rozsahu -2147483647 aˇz
+2147483648) vˇsechny promˇenn´e mus´ı b´ yt deklarov´any (pˇr´ıklad: var i, j;) pˇredt´ım neˇz
se nˇekde v programu pouˇzij´ı ˇretˇezce lze pouˇz´ıt jen jako konstanty (pevn´e vstupy do funkc´ı), nebo si m˚ u-
ˇzeme pomoci polem text[] ˇretˇezce se uvozuj´ı jednoduchou ˇca´rkou ’ (oproti znaku uvozovky ” kter´ y je
pouˇzit ve FULL-C) 2.4.1
Z´ akladn´ı funkce main, koment´ aˇ re
Kaˇzd´ y program mus´ı obsahovat funkci main. Uvnitˇr t´eto funkce je provedeno spuˇstˇen´ı programu (z t´eto funkce jsou vol´any intern´ı funkce nebo v´ami vytvoˇren´e funkce). Tato funkce je tzv. nekoneˇcn´a smyˇcka, pokud se vykonaj´ı vˇsechny pˇr´ıkazy aˇz do konce, zaˇcnou se prov´adˇet pˇr´ıkazy znovu od zaˇca´tku. Tato smyˇcka m˚ uˇze b´ yt pozastavena uˇzivatelem viz 2.4.8 19
´ C ˇ AST ´ 2 TEORETICKA
Jednoˇra´dkov´ y koment´aˇr je oznaˇcen dvˇema lom´ıtky // toto je komentar“. ” [3] 1 main 2 { 3
// toto je funkce main
4 }
Pˇr´ıklad 1: Funkce main
2.4.2
Funkce init
Pokud je potˇreba prov´est nˇejakou ˇcinnost, ale jen jednou po resetu programu, pouˇzije se vyhrazen´a funkce init. [3] 1 init 2 { 3
// toto je funkce init
4 }
Pˇr´ıklad 2: Funkce init
2.4.3
Funkce echo
Tato funkce vypisuje do tzv. konzole text ˇci libovolnou promˇennou. V´ ypis lze kombinovat. Konzole je zobrazena ve webov´em administraˇcn´ım rozhran´ı. [3] 1 main 2 { 3
// vypis libovolneho textu
4
echo ( ' Testovac´ ı text ' ) ;
5
// vypis promenne sys [310] , hodnota teplotniho cidla 1 v dan´ e m okamziku
6
echo ( sys [310]) ;
7
// kombinovany vypis
8
echo ( ' Aktu´ a ln´ ı teplota ˇ c idla 1 je :
20
'
, sys [310]) ;
´ C ˇ AST ´ 2 TEORETICKA
9 }
Pˇr´ıklad 3: Funkce echo
2.4.4
Promˇ enn´ e
V jazyku SDS-C rozezn´av´ame nˇekolik typ˚ u promˇenn´ ych podle typu vyuˇzit´ı: pevnˇe definovan´e, tzv. syst´emov´e – sv´ azan´e s hardwarem
Tyto promˇenn´e se oznaˇcuj´ı kl´ıˇcov´ ymi slovy sys[] a ˇc´ıseln´ ym indexem napˇr. sys[213]. Syst´emov´e promˇenn´e jsou ve vˇetˇsinˇe pˇr´ıpad˚ u pˇrepisovateln´e, ale existuji i syst´emov´e promˇenn´e, kter´e jsou tzv. readonly (pouze pro ˇcten´ı – nelze mˇenit jejich hodnotu). Viz tabulka promˇenn´ ych 2.5 uˇzivatelsky definovan´e – definovan´e uˇzivatelem
Tyto promˇenn´e jsou reprezentov´any kl´ıˇcov´ ym slovem var a n´azvem promˇenn´e. Uˇzivatelsky definovan´e promˇenn´e nesm´ı obsahovat mezeru. POZOR: promˇenn´a je pˇr´ıstupna od definice d´ale, nelze pouˇz´ıt pˇred definic´ı [3] 1 // definice uzivatelske promenne 2 var pr ; 3 main 4 { 5
// systemova promenna , prirazeni hodnoty 1 , zapnuti prvniho rele
6
sys [231] = 1;
7
// prirazeni hodnoty 1 do uzivatelske promenne
8
pr = 1;
9 }
Pˇr´ıklad 4: Promˇenn´e
21
´ C ˇ AST ´ 2 TEORETICKA
2.4.5
Matematick´ e operace
1 // definice uzivatelske promenne pr 2 var pr ; 3 // definice uzivatelske promenne pr2 4 var pr2 ; 5 6 main 7 { 8
// prirazeni hodnoty
9
pr = 1;
10
// prirazeni systemove promenne do uzivatelske
11
pr2 = sys [310];
12
// prirazeni vysledku , matematicka operace
13
pr2 = pr2 / 100;
14
// prirazeni vysledku , matematicka operace
15
pr = pr +10;
16
// vypis
17
echo ( ' Aktu´ a ln´ ı hodnota promˇ e nn´ e pr je :
18
echo ( ' Aktu´ a ln´ ı teplota ˇ c idla 1 je :
'
'
, pr ) ;
, pr2 ) ;
19 }
Pˇr´ıklad 5: Matematick´e operace
2.4.6
Vlastn´ı funkce
Definuj´ı se n´azvem funkce a sloˇzen´ ymi uvozovkami (stejnˇe jako funkce main), n´azev funkce mus´ı b´ yt jedineˇcn´ y a nem˚ uˇzeme znovu definovat intern´ı funkce (jako je main). Funkce jsou tu proto, abychom mohli tyto funkce volat z r˚ uzn´ ych ˇc´ast´ı programu a uˇsetˇrili t´ım duplicitu k´odu. Vol´an´ı funkce je velmi jednoduch´e, a to n´azvem funkce se sloˇzen´ ymi z´avorkami. Pozn. Funkce mus´ı b´ yt definov´ana pˇred jej´ım vol´an´ım [5] 1 moje 2 {
22
´ C ˇ AST ´ 2 TEORETICKA
3
// vypis
4
echo ( ' V´ y pis z funkce moje ' ) ;
5 } 6 7 main 8 { 9
// vypis z funkce main
10
echo ( ' V´ y pis z funkce main ' ) ;
11
// volani funkce moje
12
moje () ;
13
// opetovne volani funkce
14
moje () ;
15 }
Pˇr´ıklad 6: Vlastn´ı funkce
2.4.7
Podm´ınky a logick´ e oper´ atory
Mezi nejd˚ uleˇzitˇejˇs´ı pˇr´ıkazy v programov´an´ı patˇr´ı podm´ınky, schopnost se rozhodnout, zdali porovn´an´ı stav˚ u je pravdiv´e ˇci ne. Veˇsker´e rozhodov´an´ı se prov´ad´ı z´apisem konstrukce if“. Napˇr. pokud budeme mˇeˇrit teplotu a budeme cht´ıt prov´est ” urˇcit´ y pˇr´ıkaz, kdyˇz teplota bude vˇetˇs´ı neˇz stanoven´ y limit. [3]
23
´ C ˇ AST ´ 2 TEORETICKA
==
rovnost
!=
nerovnost
>
vˇetˇs´ı
<
menˇs´ı
>=
vˇetˇs´ı nebo rovno
<=
menˇs´ı nebo rovno
%
zbytek po dˇelen´ı (modulo)
&&
z´aroveˇ n (AND)
||
nebo (OR)
Tabulka 2: Logick´e oper´atory 1 main 2 { 3
// pokud je rele zapnuto , provedeme vypis do konzole
4
if ( sys [231] == 1) { echo ( ' Prvn´ ı rel´ e je zapnuto ' ) ;
}
5 }
Pˇr´ıklad 7: Jednoduch´a podm´ınka I V´ ypis se provede jak v pˇr´ıpadˇe zapnut´eho ˇci vypnut´eho stavu Pozor! Pokud za IF pouˇzijete podblok, tj. { } , pak mus´ıte do podbloku um´ıstit jak k´od pˇred else, tak i za else. 1 main 2 { 3
// pokud je rele zapnuto vypiseme do konzole Zapnuto jinak Vypnuto
4
if ( sys [231] == 1) { echo ( ' Zapnuto ' ) ; } else { echo ( ' Vypnuto
'
);
}
24
´ C ˇ AST ´ 2 TEORETICKA
5 }
Pˇr´ıklad 8: Jednoduch´a podm´ınka II 1
zapnuto
2 { 3
echo ( ' Zapnuto ' ) ;
4 } 5 6
vypnuto
7 { 8
echo ( Vypnuto ' ) ;
9 } 10 11 main 12 { 13
if ( sys [231] == 1) zapnuto () else vypnuto () ;
14 }
Pˇr´ıklad 9: Podm´ınky s vol´an´ım vlastn´ıch funkc´ı 1 var pr ; 2 var i ; 3 4 neco 5 { 6
echo ( ' cokoliv ' ) ;
7 } 8 9 main 10 { 11
if ( pr >= 102 && (( i % 2 == 0) || ( sys [310] <= 0) ) ) neco () ;
12 }
Pˇr´ıklad 10: Pouˇzit´ı kombinace oper´ator˚ u
25
´ C ˇ AST ´ 2 TEORETICKA
2.4.8
Smyˇ cky
Jelikoˇz SDS-C v t´eto verzi je odvozen od programovac´ıho jazyku FULL-C, jsou tu urˇcit´a omezen´ı 2.4, proto zde nem´ame moˇznost vytv´aˇret cykly (nejzn´amˇejˇs´ı funkce for) a tud´ıˇz se mus´ıme sezn´amit se smyˇckami. Smyˇcka je definov´ana n´azvem a dvojteˇckou (pro pˇrehlednost v k´odu se m˚ uˇze pouˇz´ıt rezervovan´e slovo label“ pˇred n´azvem). Smyˇcka je uzavˇrena rezervovan´ ym slovem goto“ a n´azvem ” ” smyˇcky.[7] 1 // definice promenne 2 var i ; 3 4 main 5 { 6
// prirazeni hodnoty
7
i = 0;
8
// definice smycky
9
label smycka :
10
// vypis
11
echo ( ' hodnota i je :
12
// iterovani promene ( zvetseni o 1)
13
i ++;
14
// otestovani , pokud je splneno , navrat na
'
, i);
zacatek smycky 15
if ( i < 10) goto smycka ;
16 }
Pˇr´ıklad 11: Jednoduch´a smyˇcka 1 main 2 { 3
// definice smycky
4
smycka :
5
// po vstoupeni do smycky jsem presmerovan zvonu na zacatek
6
goto smycka ;
26
´ C ˇ AST ´ 2 TEORETICKA
7 8
// do tohoto mista se program nikdy nedostane
9 }
Pˇr´ıklad 12: Nekoneˇcn´a smyˇcka
2.4.9
Prvn´ı program
Tento vzorov´ y program zjiˇst’uje teplotu z prvn´ıho teplotn´ıho ˇcidla a pˇri pˇrekroˇcen´ı teploty nad stanoven´ y limit odeˇsle chybovou zpr´avu formou mailu. Jako druh´ ym krokem je sepnut´ı prvn´ıho rel´e, kter´e zajist´ı sepnut´ı ventil´atoru. Uk´azka programu:[4][8] 1 var send_email ; 2 var temp_limit ; 3 var temp ; 4 5 // tato funkce je volana po celou dobu , kde teplota neprekrocila dany limit 6 ok 7 { 8
// povolime odeslani emailu
9
send_email = 0;
10
// vypneme prvni rele
11
sys [231] = 0;
12 } 13 14 // tato funkce je zavolana pouze pri prekroceni teplotniho limitu 15
alert
16 { 17
// zabraneni duplicitniho odeslani emailu
18
if ( send_email == 0) {
19
// odeslat mail
20
smtp_send ( ' emailova@adresa ' , '
);
27
'
Pˇ r edmˇ et ' ,
'
Tˇ e lo
´ C ˇ AST ´ 2 TEORETICKA
21
// zmena stavu - email byl odeslan
22
send_email = 1;
23
}
24
// zapnuti prvniho rele
25
sys [231] = 1;
26 } 27 28 main 29 { 30
// vychozi stav
31
send_email = 0;
32
// nastaveni limitu
33
temp_limit = 25;
34
// pockani 10 s na nabehnuti systemu
35
wait (10000) ;
36
// hlavni smycka
37
label cycle :
38
// vypocet teploty
39
temp = ( sys [310] / 100) ;
40
// testovani co budeme volat
41
if ( temp < temp_limit ) ok () ;
42
if ( temp > temp_limit ) alert () ;
43
// zpet na zacatek smycky
44
goto cycle ;
45 }
Pˇr´ıklad 13: Prvn´ı program
2.5
Nejd˚ uleˇ zitˇ ejˇ s´ı funkce a syst´ emov´ e promˇ enn´ e
Mezi nejd˚ uleˇzitˇejˇs´ı funkce pro z´ısk´an´ı systemov´ ych promˇenn´ ych pomoc´ı webov´eho rozhran´ı patˇr´ı funkce get_sys. Funkce vyˇzaduje index, kter´ y je uveden v hranat´ ych 15 z´avork´ach. D´al´e m˚ uˇzeme volitelnˇe pouˇz´ıt URL parametr rd, kter´ y ud´av´a poˇcet poˇzadovan´ ych syst´emov´ ych promˇenn´ ych. 15
Uniform Resource Locators
28
´ C ˇ AST ´ 2 TEORETICKA
1 // HTTP pozadavek je hodnota prvniho teplotniho cidla 2 3 http :// IP_adresa_zarizeni / get_sys [310] 4 5 // HTTP odpoved : 1400
Pˇr´ıklad 14: Z´ısk´an´ı systemov´e promˇenn´e 1 // HTTP pozadavek jsou hodnoty teplotnich cidel 1 -5 , oddelene znakem svisla cara | 2 3 http :// IP_adresa_zarizeni / get_sys [310]& rd =5 4 5 // HTTP odpoved : 1 400 |1 2 50 |1 0 00 |0 | 18 0 0
Pˇr´ıklad 15: Z´ısk´an´ı syst´emov´ ych promˇenn´ ych Nejv´ıce pouˇz´ıvan´a funkce v ˇr´ıd´ıc´ım programu je funkce http_get(), kter´a zajist´ı odesl´an´ı urˇcen´ ych hodnot na vybran´ y server pomoc´ı HTTP protokolu. D´ıky t´eto funkci m˚ uˇzeme d´ale zpracov´avat (archivovat) poˇr´ızen´a data. 1 main 2 { 3
// odeslani hodnot teplotnich cidel 1 -2 na server
4
http_get ( IP_adresa_zarizeni , php ? t1 = sys [310] ,
'
'
hostname ' ,
'
/ index .
& t2 = ' , sys [311]) ;
5 }
Pˇr´ıklad 16: Odesl´an´ı HTTP poˇzadavku Pˇrehled nejpouˇz´ıvanˇejˇs´ıch syst´emov´ ych promˇenn´ ych, u ´pln´ y seznam syst´emov´ ych promˇenn´ ych je dostupn´ y na internetov´ ych str´ank´ach v´ yrobce http://wiki.merenienergie.cz/index.php/Sdsc sysp
29
´ C ˇ AST ´ 2 TEORETICKA
Poˇc´ateˇcn´ı hodnota
Poˇcet n´asleduj´ıc´ıh
Popis
12
4
IP4 adresa zaˇr´ızen´ım
61
1
Gener´ator n´ahodn´ ych ˇc´ısel
64
1
Sekundov´ y odpoˇc´ıt´avaˇc
64
1
Status code - n´avratov´a hodnota integrovan´ ych funkc´ı
100
16
Data uloˇzen´a do permanentn´ı pamˇeti
140
8
Uˇzivatelsk´e promˇenn´e
231
1
V´ ystupn´ı rel´e ˇc. 1
232
1
V´ ystupn´ı rel´e ˇc. 2
310
16
Hodnoty z teplotn´ıch ˇcidel
Tabulka 3: Pˇrehled syst´emov´ ych promˇenn´ ych
2.6
Moˇ znosti vyuˇ zit´ı jednotky SDS Micro
Zaˇr´ızen´ı je vybaveno mnoha vstupy a v´ ystupy, kter´e n´am umoˇznuj´ı zpracov´avat napˇr.: mˇeˇren´ı teploty mˇeˇren´ı vlhkosti mˇeˇren´ı napˇet´ı 0-30V detekce napˇet´ı 230V digit´ aln´ı v´ ystup D0 a PWM16 odeˇcet elektromˇer˚ u, plynomˇer˚ u, vodomˇer˚ u sp´ın´an´ı rel´e 16
Pulse Width Modulation
30
´ C ˇ AST ´ 2 TEORETICKA
Praktick´e pˇr´ıklady: inteligentn´ı d˚ um ovl´ ad´an´ı sol´arn´ıch elektr´aren meteorologick´ a stanice d´ alkov´ y odeˇcet spotˇrebovan´e elektrick´e energie resetov´an´ı s´ıt’ov´ ych zaˇr´ızen´ı ˇr´ızen´ı klimatizaˇcn´ı jednotky ˇr´ızen´ı veˇrejn´eho osvˇetlen´ı dohled na ISP17 AP18 bodem
2.7
Zp˚ usob monitorov´ an´ı a archivace dat
Z´akladn´ım zp˚ usobem monitorov´an´ı dat je vyuˇzit´ı webov´eho rozhran´ı, kter´e je integrovan´e v zaˇr´ızen´ı. Jedn´a se o rozhran´ı, kter´e poskytuje n´asleduj´ıc´ı funkce: rozhran´ı pro administaci zaˇr´ızen´ı, kter´e jiˇz bylo pops´ ano v kapitole 2.2, ob-
sahuje str´anku Aktu´aln´ı stav“, kde m˚ uˇzeme vidˇet aktu´aln´ı hodnoty vstup˚ u ” a v´ ystup˚ u v aktu´aln´ım ˇcase uˇzivatelsk´ a str´anka slouˇz´ıc´ı pro vytvoˇren´ı vlastn´ıho webov´eho programu,
umoˇzn ˇuj´ıc´ı monitorov´an´ı aktu´aln´ıch vstup˚ u a v´ ystup˚ u, a d´ale zobrazen´ı z´ıskan´ ych hodnot na webov´e str´ance pro archivaci pouˇzijeme ˇr´ıd´ıc´ı program, kter´ y m˚ uˇze obsahovat pravideln´e
vol´an´ı ˇca´sti k´odu, jeˇz pomoc´ı funkce http_get() odeˇsle vybran´a data na server 17 18
Internet Service Provider Access point
31
´ C ˇ AST ´ 2 TEORETICKA Funkce http_get vytvoˇr´ı TCP19 spojen´ı na vzd´alen´ y server, poˇsle http GET20 s vybran´ ymi daty jako URL parametry formul´aˇre. Server, kter´ y obdrˇz´ı poˇzadavek, d´ale data pˇreˇcte a uloˇz´ı do pˇr´ısluˇsn´e datab´aze. 2.7.1
Vyuˇ zit´ı E port´ alu
Ke kaˇzd´emu zakoupen´emu v´ yrobku v´ yrobce poskytuje moˇznost vyuˇzit´ı tzv. Eport´alu pro uchov´av´an´ı dat. Port´al se nach´az´ı na str´ance http://eportal.merenienergie.cz/. Po registraci obdrˇz´ıme kompletn´ı pˇr´ıstup a moˇznost vyuˇz´ıt veˇsker´e moˇznosti zaˇr´ızen´ı. Port´al je pˇripraven tak, aby zpracoval a uchoval veˇsker´e hodnoty vstupn´ıch i v´ ystupn´ıch perif´eri´ı zaˇr´ızen´ı SDS Micro. Jeho ovl´ad´an´ı a nastaven´ı je velmi jednoduch´e a pˇrehledn´e, bohuˇzel toto webov´e rozhran´ı neumoˇznuje uˇzivateli doprogramovat sv´e dodateˇcn´e poˇzadavky.
Obr´azek 2: Port´al eportal.merenienergie.cz 19 20
Transmission Control Protocol Dotazovac´ı metoda
32
´ C ˇ AST ´ 2 TEORETICKA
Velkou v´ yhodou poskytovan´e aplikace je velmi jednoduch´e spojen´ı zaˇr´ızen´ı SDS Micro, bez znalosti programovac´ıho jazyka a programovan´ı ˇr´ıd´ıc´ıho progamu. Veˇsker´e potˇrebn´e nastaven´ı nalezneme na str´ance Nastaven´ı“. ” Mus´ıme zde definovat, jak´e vstupy a v´ ystupy budeme na tento port´al pomoc´ı ˇr´ıd´ıc´ıho programu pos´ılat, emailovou adresu uˇzivatele a tzv. k´od identifikace. Tento k´od slouˇz´ı pro identifikaci zaˇr´ızen´ı v HTTP poˇzadavku, jenˇz je zas´ılan´ y na tento server. Jako posledn´ı krok m´ame moˇznost staˇzen´ı pˇripraven´eho ˇr´ıd´ıc´ıho programu, kter´ y nalezneme v z´aloˇzce Program“. M´ame na v´ ybˇer ze ˇctyˇr pˇripraven´ ych pro” gram˚ u, kter´e staˇc´ı pouze st´ahnout a nahr´at do zaˇr´ızen´ı pomoc´ı v´ yvojov´eho prostˇred´ı. 2.7.2
Vlastn´ı archivace
V dneˇsn´ı dobˇe se m˚ uˇzeme setkat s mnoha druhy zaˇr´ızen´ı, jako jsou napˇr. mini poˇc´ıtaˇce (Raspberry PI), poˇc´ıtaˇce, servery a diskov´a pole (Synology), kter´e umoˇzn ˇuj´ı potˇrebn´e instalace softwar˚ u, ˇci je jiˇz obsahuj´ı. Tento zp˚ usob je realizov´an stejnˇe jako v pˇredchoz´ım pˇr´ıpadˇe v ˇr´ıd´ıc´ım programu, kter´ y odeˇsle poˇzadovan´a data pomoc´ı funkce http_get na vlastn´ı server, jenˇz je d´ale zpracuje. Archivace lze realizovat na libovoln´em zaˇr´ızen´ı, kter´e n´am umoˇzn´ı instalaci, ˇci jiˇz obsahuje webov´ y server, napˇr. Apahe, d´ale programovac´ı 21 jazyk, napˇr. PHP , a datab´azi, napˇr. MySQL. Za nejvˇetˇs´ı klady vlastn´ı archivace by se dala povaˇzovat moˇznost programovatelnosti chov´an´ı archivace, bez nutnosti internetov´eho pˇripojen´ı.
2.8
Klady a z´ apory technologie
Klady: n´ızk´e poˇrizovac´ı n´ aklady mal´a energetick´a z´ atˇeˇz n´ızk´e n´ aroky na schopnosti uˇzivatele - uˇzivatelsky nen´aroˇcn´e moˇznost vytvoˇren´ı vlastn´ıho ovl´ ad´an´ı, dle potˇreb uˇzivatele 21
Hypertext Preprocessor
33
´ C ˇ AST ´ 2 TEORETICKA vysok´ a spolehlivost cenov´a dostupnost moˇznost ukl´ad´ an´ı dat a namˇeˇren´ ych hodnot na eportal
Z´apory: omezen´ y poˇcet vstup˚ u a v´ ystup˚ u - bez moˇznosti rozˇs´ıˇren´ı omezen´ a funkˇcnost dod´avan´eho firmwaru omezenost programovac´ıho jazyka omezenost velikosti intern´ı pamˇeti
Pˇrestoˇze v´ yrobce neposkytuje dostateˇcnou dokumentaci k tomuto v´ yrobku, je tato ˇr´ıd´ıc´ı jednotka velmi spolehliv´a, cenovˇe dostupn´a a jej´ı vlastnosti d´avaj´ı uˇzivateli ˇsirokou moˇznost vyuˇzit´ı.
2.9
Nab´ıdka technologie na ˇ cesk´ em trhu
Na ˇcesk´em trhu je dod´avka tohoto zaˇr´ızen´ı zajiˇstˇena pouze jedn´ım v´ yrobcem a z´arovˇen ˇ i dodavatelem, a to firmou LazNet s. r. o. Tato firma nab´ız´ı nejen zaˇr´ızen´ı SDS Micro, ale i SDS Macro, SDS TTCPRO a SDS-UPS pro vzd´alen´e ˇr´ızen´ı, sledov´an´ı dan´ ych ˇci uˇzivatelem pˇrednastaven´ ych funkc´ı pˇres Ethernet/Internet. ˇ na toto zaˇr´ızen´ı tzv. monopol, Lze tedy tvrdit, ˇze fima LazNet s. r. o. m´a v CR ovˇsem ceny jsou i tak velmi pˇrijateln´e.
34
´ C ˇ AST ´ 3 PRAKTICKA
3
Praktick´ aˇ c´ ast
V r´amci praktick´e ˇca´sti byl vytvoˇren projekt, kter´ y ukazuje uˇzivateli pˇr´ıklad implementace SDS Micro syst´emu do praxe. Tento pˇr´ıklad byl vytvoˇren za u ´ˇcelem ˇr´ızen´ı mikroklimatu poˇc´ıtaˇcov´eho s´alu. Popis projektu m˚ uˇze souˇcasnˇe slouˇzit jako uˇzivatelsk´ y manu´al, ˇci jako pˇr´ıklad dalˇs´ıho vyuˇzit´ı tohoto syst´emu.
3.1
Pˇ redstaven´ı projektu
Jako pˇr´ıklad pouˇzit´ı syst´emu v praxi byl sestaven syst´em pro ˇr´ızen´ı klimatizovan´eho poˇc´ıtaˇcov´eho s´alu a archivaci z´ıskan´ ych hodnot. Projekt vyuˇz´ıv´a integrovan´e vstupy a v´ ystupy zaˇr´ızen´ı, uˇzivatelsky definovanou webovou str´anku, d´ale tak´e extern´ı zaˇr´ızen´ı pro archivaci a zobrazen´ı uloˇzen´ ych dat v datab´azi MySQL. Poˇc´ıtaˇcov´ y s´al je vybaven dvˇema rackov´ ymi skˇr´ınˇemi s poˇc´ıtaˇcov´ ym vybaven´ım (jako jsou servery, switche, datov´a uloˇziˇstˇe atd.), kter´e produkuj´ı mnoho tepla, a proto jsou zde naistalov´any dvˇe klimatizaˇcn´ı jednotky A/C1, A/C2, zapojen´e neust´ale a d´ale jednou klimatizaˇcn´ı jednotkou v reˇzimu stand-by A/C3. Po cel´e m´ıstnosti jsou rozm´ıstˇena teplotn´ı ˇcidla jak v prostoru, tak v rackov´ ych skˇr´ın´ıch (ve tˇrech u ´rovn´ıch - horn´ı, stˇredov´e, doln´ı), d´ale je v tzv. radiaˇcn´ım ” krytu“ ˇzaluziov´eho typu um´ıstˇeno hlavn´ı venkovn´ı teplotn´ı ˇcidlo TEMP11 . Teplotn´ı ˇcidla TEMP1, TEMP2 hl´ıdaj´ı v´ ystupn´ı teplotu z obou online klimatizaˇcn´ıch zaˇr´ızen´ı. Ventil´ator FAN1, jehoˇz ot´aˇcky jsou ˇr´ızeny ˇr´ıd´ıc´ım programem, je v racku. Ventil´ator FAN2 je ˇr´ızen rozd´ılnou technologi´ı z d˚ uvodu porovn´an´ı v´ ysledk˚ u PLC automat˚ u.
35
´ C ˇ AST ´ 3 PRAKTICKA
Obr´azek 3: Rozloˇzen´ı vstupn´ıch a v´ ystupn´ıch zaˇr´ızen´ı ˇ ıd´ıc´ı program sleduje mnoˇzstv´ı teplotn´ıch ˇcidel, um´ıstˇen´ R´ ych ve skˇr´ın´ıch a prostoru, vyhodnocuje na z´akladˇe z´ıskan´ ych hodnot, zdali je poˇzadovan´a teplota v poˇc´ıtaˇcov´em s´alu optim´aln´ı. Pokud dojde k pˇrekroˇcen´ı poˇzadovan´ ych limit˚ u, program zaˇr´ıd´ı sepnut´ı integrovan´eho rel´e, kter´e pomoc´ı pˇripojen´eho extern´ıho rel´e zapne pˇr´ıdavnou klimatizaci, odeˇsle varovn´ y email a d´ale reguluje rychlost ot´aˇcek ventil´atoru. Pro zobrazen´ı aktu´aln´ıch (re´aln´ ych) hodnot teplotn´ıch ˇcidel, rychlost ot´aˇcek a stavu rel´e jsem pˇripravil vizualizaci, kter´a je vytvoˇrena jako HTML str´anka a je dostupn´a na uˇzivatelsky definovan´e str´ance v zaˇr´ızen´ı. Uˇzivatelsk´a str´anka vyuˇz´ıv´a metody GET spojen´e s technologi´ı AJAX22 , kter´a z´ısk´av´a hodnoty syst´emov´ ych promˇenn´ ych ze zaˇr´ızen´ı a d´ale je pˇred´av´a k zobrazen´ı. Aktu´alnˇe vyˇcten´e a zobrazen´e hodnoty jsou znovu naˇcteny a zobrazeny kaˇzdou sekundu. 22
Asynchronous JavaScript and XML
36
´ C ˇ AST ´ 3 PRAKTICKA
D´ale ˇr´ıd´ıc´ı program zas´ıl´a hodnoty v dan´ ych intervalech na glob´aln´ı u ´loˇziˇstˇe pomoc´ı HTTP protokolu. Syst´em vyuˇz´ıv´a funkci http_get, kter´a odeˇsle data na glob´aln´ı u ´loˇziˇstˇe, kde je spuˇstˇen webov´ y server Apache spoleˇcnˇe s jazykem PHP. Skript PHP zpracov´av´a tyto hodnoty a ukl´ad´a je do MySQL datab´aze. Posledn´ı ˇca´st´ı je vytvoˇren´ı webov´e aplikace, zobrazuj´ıc´ı archivovan´a data v podobˇe graf˚ u. Tato aplikace bˇeˇz´ı na extern´ım zaˇr´ızen´ı.
3.2
Technick´ e a minim´ aln´ı poˇ zadavky na projekt
Ku ´spˇeˇsn´e realizaci projektu budeme potˇrebovat PLC automat SDS Micro spoleˇcnˇe s dalˇs´ımi perif´eriemi jako jsou teplotn´ı ˇcidla, rel´e, zdroj atd.. Ned´ılnou souˇca´st´ı projektu je nutnost m´ıt nainstalovan´ y libovoln´ y stroj ˇci server, kter´ y n´am umoˇzn´ı zprovoznit naˇs´ı vlastn´ı archivaci. Ve sv´em projektu jsem si vybral minipoˇc´ıtaˇc Raspberri Pi, na kter´em jsem si nainstaloval webov´ y server Apache s modulem PHP, MySQL datab´azi a FTP23 pˇr´ıstup. SDS Micro Light E (SDS Micro DIN) verze 12V Raspberri Pi [11] sada teplotn´ıch ˇcidel DALLAS [6] pomocn´e rel´e 12V/230V stabilizovan´ y nap´ajec´ı zdroj 12V 1A ventil´ator 12V max. 0,3A kabel pro pˇripojen´ı teplotn´ıch ˇcidel (s´ıt’ov´ y kabel min. CAT5e24 ) kabel pro pˇripojen´ı pomocn´eho rel´e 12V (dvoulinka o pr˚ uˇrezu 1mm2[2]) kabel pro pˇripojen´ı pomocn´eho rel´e 230V a z´ aloˇzn´ı klimatizace (kabel o pr˚ u-
ˇrezu 2,5mm2[2]) drobn´ y instalaˇcn´ı materi´al 23 24
File Transfer Protocol Kabel kategorie 5
37
´ C ˇ AST ´ 3 PRAKTICKA
Po u ´spˇeˇsn´em zapojen´ı zaˇr´ızen´ı do zdrojov´e s´ıtˇe a s´ıtˇe LAN, je zapotˇreb´ı prov´est z´akladn´ı nastaven´ı zaˇr´ızen´ı. Po pˇripojen´ı do webov´e administrace zaˇr´ızen´ı, je zapotˇreb´ı na str´ance Administrace nastavit parametry s´ıtˇe LAN, nastaven´ı SMTP25 serveru, a NTP26 IP adresu serveru. Pˇri nastaven´ı emailov´e komunikace je tˇreba zn´at IP adresu SMTP serveru a zdali server vyˇzaduje bezpeˇcnostn´ı ovˇeˇren´ı. Tyto informace zjist´ıme u poskytovatele s´ıt’ov´ ych sluˇzeb internetu. Pokud jiˇz m´ate v s´ıti stejn´e ˇci podobn´e zaˇr´ızen´ı, v´ yrobce doporuˇcuje zmˇenu MAC27 adresy z d˚ uvodu vyhnut´ı se kolizi s jin´ ym zaˇr´ızen´ım. Vlastnost
V´ ychoz´ı hodnota
Nastaven´a hodnota
IP adresa
192.168.1.250
10.31.12.35
Maska
255.255.255.0
255.255.255.0
Br´ana
192.168.1.1
10.31.12.251
NTP IP serveru
-
10.31.2.32
SMTP IP serveru
-
14.1.1.10
Emailov´a adresa odes´ılatele
-
[email protected]
Heslo webov´e administace
test
test
Tabulka 4: Z´akladn´ı nastaven´ı SDS Micro ˇ Dalˇs´ım krokem je rozm´ıstˇen´ı a instalace teplotn´ıch ˇcidel. Cidla jsou zapojena s´eriovˇe, tzv. za sebou pomoc´ı s´ıt’ov´eho kabelu CAT5e pˇripojen´eho k zaˇr´ızen´ı 1WIRE konektorem. K propojen´ı jednotliv´ ych teplotn´ıch ˇcidel je zapotˇreb´ı trocha zruˇcn´e pr´ace, nebo lze koupit u v´ yrobce propojovac´ı modul. Doporuˇcen´a d´elka propojovac´ıho kabelu by nemˇela pˇres´ahnout 80m. Pˇripojen´a teplotn´ı ˇcidla je zapotˇreb´ı ˇ detekovat pomoc´ı webov´e administrace na str´ance Cidla teploty. Pro spuˇstˇen´ı detekce teplotn´ıch ˇcidel slouˇz´ı tlaˇc´ıtko Prohledat“. Prohled´an´ı sbˇernice 1-WIRE trv´a ” ˇ zhruba 10 sekund, po uplynut´ı t´eto doby znovu naˇcteme str´anku Cidla teploty“. ” Pokud byla ˇcidla spr´avnˇe zapojena, jejich v´ ypis bude na t´eto str´ance zobrazen. 25
Simple Mail Transfer Protocol Network Time Protocol 27 Media Access Control 26
38
´ C ˇ AST ´ 3 PRAKTICKA Kaˇzd´e teplotn´ı ˇcidlo je identifikov´ano jednoznaˇcn´ ym tzv. ROM28 k´odem, kter´ y nen´ı pro uˇzivatele pˇr´ıliˇs zapamatovateln´ y, z tohoto d˚ uvodu si m˚ uˇzeme kaˇzd´e teplotn´ı ˇcidlo popsat sv´ ym n´azvem. V neposledn´ı ˇradˇe je zapotˇreb´ı pˇripojit a otestovat pomocn´e rel´e, kter´e n´am bude sp´ınat pomocnou klimatizaˇcn´ı jednotu. Spr´avnou funkci pomocn´eho rel´e otestujeme v administraˇcn´ım rozhran´ı zaˇr´ızen´ı na str´ance V´ ystupy“. Pro sepnut´ı rel´e ” slouˇz´ı tlaˇc´ıtko Trvale ZAP“ a pro vypnut´ı rel´e Trvale VYP“. Indikaci zapnut´eho ” ” rel´e m˚ uˇzeme vidˇet na desce zaˇr´ızen´ı, kde bude sv´ıtit ˇcerven´a dioda. Jako posledn´ı ˇc´ast zapoj´ıme a otestujeme funkˇcnost ventil´atoru. Jeho spr´avnou funkci otestujeme v administraˇcn´ım rozhran´ı zaˇr´ızen´ı na str´ance V´ ystupy“, ” kde mus´ıme nastavit spr´avn´e PWM hodnoty. Frekvence PWM modul´atoru bude 100Hz29 a PWM pomˇer nastav´ıme 50Fm30 . Po stisknut´ı tlaˇc´ıtka Jen zkus!“ se ” ventil´ator rozbˇehne na 50% v´ ykonu.
3.3
Sch´ ema zapojen´ı
Sch´ema zapojen´ı ukazuje, jak´ ym zp˚ usobem je ˇr´ıd´ıc´ı jednotka SDS Micro propojena s ostan´ımi perif´eriemi. Jiˇz na prvn´ı pohled je vidˇet, ˇze jsou zde pouˇzity dva typy proudu. A to stejnosmˇern´ y 12V pro nap´ajen´ı SDS Micro, ventil´ator˚ u a sp´ınan´eho extern´ıho rel´e. Pro pˇripojen´ı z´aloˇzn´ı klimatizaˇcn´ı jednotky je pouˇzit jednof´azov´ y stˇr´ıdav´ y proud o napˇet´ı 230V. Teplotn´ı ˇcidla jsou zapojena do s´erie pomoc´ı s´ıt’ov´eho kabelu CAT5e a pˇripojena do SDS zaˇr´ızen´ı pomoc´ı 1-WIRE rozhran´ı. 28
Read Only Memory Hertz 30 Frekvenˇcn´ı mˇeniˇc 29
39
´ C ˇ AST ´ 3 PRAKTICKA
Obr´azek 4: Sch´ema zapojen´ı vstup˚ u a v´ ystup˚ u Dalˇs´ı obr´azek zn´azorˇ nuje, jak´ ym zp˚ usobem prob´ıh´a komunikace mezi jednotliv´ ymi perif´eriemi. Tyto perif´erie m˚ uˇzeme rozdˇelit na fyzickou a s´ıt’ovou komunikaci, obˇe komunikace jsou ovl´ad´any pomoc´ı ˇr´ıd´ıc´ıho programu v SDS Micro.
40
´ C ˇ AST ´ 3 PRAKTICKA
Obr´azek 5: Sch´ema komunikace mezi perif´eriemi
3.4
ˇ ızen´ı technologie R´
ˇ ıd´ıc´ı program bˇeˇz´ı v nekoneˇcn´e smyˇcce, reguluje teplotu v m´ıstnosti za pomoci R´ z´ıskan´ ych teplot z um´ıstˇen´ ych teplotn´ıch ˇcidel a ovl´ad´a chov´an´ı pˇripojen´ ych perif´eri´ı. Z´ıskan´e hodnoty z teplotn´ıch ˇcidel jsou odes´ıl´any v pˇrednastaven´em intervalu na glob´aln´ı u ´loˇziˇstˇe. Pˇri pˇrekroˇcen´ı tepeln´e hodnoty teplotn´ıho ˇcidla IN“ o pˇred” nastavenou hodnotu, program odeˇsle varovn´ y email. Program obsahuje n´asleduj´ıc´ı funkce: zpracujRele - vol´ ana kaˇzdou sekundu, pˇri pˇrekroˇcn´ı nastaven´eho limitu za-
pne integrovan´e rel´e, odeˇsle varovn´ y email, zap´ıˇse do syst´emov´e promˇenn´e hodnotu pro zobrazen´ı alarmu na uˇzivatelsk´e str´ance zpracujPWM - vol´ ana kaˇzdou sekundu, nastavuje rychlost ot´aˇcek ventil´ator˚ u
41
´ C ˇ AST ´ 3 PRAKTICKA zpracujTeploty - vol´ ana v pˇrednastaven´ y ˇcasov´ y interval uloˇzen´ y v promˇenn´e
_portal_timeout, z´ısk´av´a hodnoty teplot z teplotn´ıch ˇcidel a odes´ıl´a je na glob´aln´ı u ´loˇziˇstˇe 1 // definice promennych teplotnich cidel pro levy rack 2 # define SRVTOP sys [314]; 3 # define SRVMID sys [315]; 4 # define SRVBOT sys [310]; 5 6 // definice promennych teplotnich cidel pro pravy rack 7 # define SWTOP sys [313]; 8 # define SWMID sys [312]; 9 # define SWBOT sys [317]; 10 11 // definice promennych teplotnich cidel pro klimatizace 12 # define CLIM1 sys [318]; 13 # define CLIM2 sys [316]; 14 15 // definice promennych teplotnich cidel pro vnitrni a venkovni teplotu 16 # define IN sys [311]; 17 # define OUT sys [319]; 18 19 // definice promenne pro upozorneni 20 # define IN_ALERT sys [140]; 21 22 // definice promenne je / neni upozorneni 23 # define ALERT ram [100]; 24 25 // deklarace pomocnych promennych 26 var _portal_timeout ; 27 var _portal_timeoutget ;
42
´ C ˇ AST ´ 3 PRAKTICKA
28 var _temp ; 29 var _pwm_avg ; 30 31 // inicializacni funkce 32 init 33
{
34
echo ( ' Start SDS programu . ' ) ;
35
sys [77]=1;
36
sys [191]=100;
37
sys [192]=100;
38
IN_ALERT =40;
39
ALERT =0;
40
_portal_timeoutget =0;
41
_portal_timeout =60;
42
}
43 44 // funkce pro zapnuti / vypnuti rele , odeslani mailu pri prekroceni teploty 45 46 47
zpracujRele { if ( IN
>= ( IN_ALERT * 100) ) {
48
ALERT = 1;
49
if ( sys [231] != 255) {
50 51
sys [231] = 255; }
52 53
if ( sys [64] == 0) {
54
_temp = IN /100;
55
smtp_send ( ' petr . jaro lim ek @mo nd igr oup . com ' , Alert ' , '
56
'
SDS
Hranice teploty presahla , teplota je :
, _temp ,
'
C ') ;
label cekam_na_mail :
57
if ( sys [65] == 0) goto cekam_na_mail ;
58
goto zpracuj_konec_mail ;
59
'
return ;
43
´ C ˇ AST ´ 3 PRAKTICKA
60 61
label zpracuj_konec_mail :
62
_temp = 0;
63
echo ( ' Email odeslan : ' , sys [65]) ;
64
}
65
} else {
66
ALERT = 0;
67
if ( sys [231] != 0) {
68
sys [231] = 0;
69
}
70
}
71 } 72 73 // funkce pro rizeni rychlosti otacek ventilatoru 74 75
zpracujPWM {
76
_pwm_avg = (( SRVTOP + SRVMID + SRVBOT ) / 3) / 100;
77
if ( _pwm_avg < 23) { sys [192] = 50; }
78
if ( _pwm_avg == 23) { sys [192] = 60; }
79
if ( _pwm_avg == 24) { sys [192] = 70; }
80
if ( _pwm_avg == 25) { sys [192] = 80; }
81
if ( _pwm_avg == 26) { sys [192] = 90; }
82
if ( _pwm_avg > 27) { sys [192] = 100; }
83
}
84 85 // funkce pro ziskani / zpracovani / odesilani hodnot z teplotnich cidel 86 87
zpracujTeploty {
88
if ( _portal_timeoutget ==0) goto odesli_data_get ;
89
if ( sys [65]==0 && _portal_timeoutget >= sys [3]) goto zpracuj_konec ;
90
if ( _portal_timeoutget < sys [3]) goto odesli_chyba ;
91 92
label odesli_data_get :
44
´ C ˇ AST ´ 3 PRAKTICKA
93
if ( OUT != 8500) {
94
sys [99] = OUT ; }
http_get (10 ,31 ,12 ,36 , ' default ' , ' / index . php ? key = v i G q G e e 1 m x X a o 5 d Y f V c F b d I c f h h r e z & datetime = ' , sys [4] ,
'
& tA1 = ' , sys [310] ,
tA3 = ' , sys [312] , sys [314] , '
'
'
'
& tA2 = ' , sys [311] ,
& tA4 = ' , sys [313] ,
& tA6 = ' , sys [315] ,
& tA8 = ' , sys [317] ,
'
'
'
'
&
& tA5 = ' ,
& tA7 = ' , sys [316] ,
& tA9 = ' , sys [318] ,
'
& tA10
= ' , sys [99]) ; 95 96
sys [64] = _portal_timeout ;;
97 98
label cekam_na_http :
99
if ( sys [64] == 0) goto odesli_chyba ;
100
if ( sys [65] == 0) goto cekam_na_http ;
101
if (( sys [65] != 1024) ||( sys [75] != 200) ) goto odesli_chyba ;
102
echo ( ' Data odeslana , HTTP :
103
_portal_timeoutget =0;
104
goto zpracuj_konec ;
105
'
, sys [75]) ;
return ;
106 107
label odesli_chyba :
108
echo ( ' Chyba komunikace s www serverem , HTTP : sys [75]) ;
109 110
label zpracuj_konec : }
111 112 // hlavni funkce 113 main 114 115 116
{ if ( sys [64] == 0) zpracujTeploty () ;
117 118
zpracujRele () ;
119
zpracujPWM () ;
45
'
,
´ C ˇ AST ´ 3 PRAKTICKA
120
}
Pˇr´ıklad 17: Program pro ˇr´ızen´ı klimatick´ ych podm´ınek
3.5
Monitoring a archivace dat
Monitoring dat je tzv. uˇzivatelsk´a str´anka vyuˇz´ıvaj´ıc´ı technologie HTML5 a Javascriptu. Pˇripraven´a str´anka byla pomoc´ı v´ yvojov´eho prostˇred´ı nahr´ana do zaˇr´ızen´ı SDS Micro a je dostupn´a na adrese http://10.31.12.35/user.htm. Po otevˇren´ı t´eto str´anky program z´ısk´a potˇrebn´e hodnoty z jednotky SDS Micro pomoc´ı protokolu HTTP a technologie AJAX a d´ale data zpracovav´a a zobrazuje. Aktualizace dat na str´ance je nastavena na 1 sekundu, kdy se na pozad´ı prohl´ıˇzeˇce vol´a pˇr´ısluˇsn´ y k´od, kter´ y opˇetovnˇe z´ısk´av´a data ze zaˇr´ızen´ı SDS Micro, zpracov´av´a a zobrazuje bez znovunaˇcten´ı str´anky.
Obr´azek 6: Uˇzivatelsk´a str´anka SDS Micro Webov´a str´anka zobrazuje hodnoty teplotn´ıch ˇcidel, d´ale pr˚ umˇery teplot seskupen´ ych ˇcidel jednotliv´ ych rackov´ ych skˇr´ın´ı, rychlost ot´aˇcek ventil´atoru a v neposledn´ı ˇradˇe varovn´e hl´aˇsen´ı, pokud dojde k pˇrekroˇcen´ı teploty. Hodnota hranice pro zapnut´ı pˇr´ıdavn´e klimatizaˇcn´ı jednoty a zobrazen´ı chybov´eho hl´aˇsen´ı je uloˇzena v syst´emov´e promˇenn´e sys[140] v zaˇr´ızen´ı SDS Micro, kter´a je zmˇeniteln´a 46
´ C ˇ AST ´ 3 PRAKTICKA
v administraˇcn´ım webov´em rozhran´ı pod z´aloˇzkou SDS-C“, Zmˇen ˇte uˇzivatelsk´e ” ” promˇenn´e zde!“ nebo na adrese http://10.31.12.35/control.
Obr´azek 7: Nastaven´ı hodnoty hranice syst´emov´e promˇenn´e sys[140] Vytvoˇren´a webov´a aplikace zpracov´av´a data k archivaci na glob´aln´ım u ´loˇziˇsti, a d´ale zpracov´av´a HTTP poˇzadavky a ukl´ad´a je do datab´aze. Tyto poˇzadavky jsou odes´ıl´any z ˇr´ıd´ıc´ıho programu SDS Micro spoleˇcnˇe s daty o ˇcase, p´arovac´ıho k´odu a hodnot´ach teplotn´ıch ˇcidel. HTTP poˇzadavky jsou odes´ıl´any v pˇrednastaven´ ych intervalech pˇr´ımo v ˇr´ıd´ıc´ım programu. 1 // HTTP pozadavek odeslany na globalni uloziste 2
http_get (10 ,31 ,12 ,36 , ' default ' , ' / index . php ? key = v i G q G e e 1 m x X a o 5 d Y f V c F b d I c f h h r e z & datetime = ' , sys [4] ,
'
& tA1 = ' , sys [310] ,
= ' , sys [312] ,
'
'
& tA2 = ' , sys [311] ,
& tA4 = ' , sys [313] ,
47
'
'
& tA3
& tA5 = ' , sys
´ C ˇ AST ´ 3 PRAKTICKA
[314] ,
'
& tA6 = ' , sys [315] ,
tA8 = ' , sys [317] ,
'
'
& tA7 = ' , sys [316] ,
& tA9 = ' , sys [318] ,
'
'
&
& tA10 = ' , sys
[99]) ;
Pˇr´ıklad 18: HTTP poˇzadavek Data uloˇzen´a v datab´azi jsou d´ale zobrazena v podobˇe grafu, kter´ y zobrazuje pr˚ ubˇeh hodnot teplot za konkr´etn´ı vybran´e ˇcasov´e obdob´ı. Pro porovn´an´ı hodnot slouˇz´ı tabulka, ve kter´e jsou vypoˇc´ıt´any minima, maxima a pr˚ umˇery jednotliv´ ych teplotn´ıch ˇcidel. V neposledn´ı ˇradˇe tabulka obsahuje aktu´aln´ı hodnoty teplotn´ıch ˇcidel, z´ıskan´ ych pomoc´ı technologie AJAX pˇr´ımo z SDS Micro zaˇr´ızen´ı. Pro vytvoˇren´ı graf˚ u byla pouˇzita knihovna Highcharts[13].
48
´ C ˇ AST ´ 3 PRAKTICKA
Obr´azek 8: Webov´a str´anka s daty z glob´an´ıho u ´loˇziˇstˇe Z´akladn´ı nastaven´ı aplikace jako je napˇr. p´arovac´ı k´od, n´azvy teplotn´ıch ˇcidel, pˇr´ıstupov´e u ´daje k datab´azi atd., jsou nastaviteln´e v souboru config.php ve sloˇzce inc. Aplikace je navrˇzena dynamicky z d˚ uvodu moˇznosti modifikace ˇci rozˇs´ıˇren´ı funkˇcnosti. Zdrojov´e k´ody zm´ınˇen´e aplikace jsou znaˇcnˇe rozs´ahl´e, proto jsou uloˇzeny pouze na pˇriloˇzen´em CD.
3.6
Probl´ emy, kter´ e mohou nastat
V n´asleduj´ıc´ıch podkapitol´ach popisuji probl´emy, se kter´ ymi jsem se setkal pˇri realizaci sv´eho projektu. 49
´ C ˇ AST ´ 3 PRAKTICKA
3.6.1
Teplotn´ı ˇ cidlo vrac´ı vysokou hodnotu v ˇ r´ adu tis´ıc˚ u
Teplotn´ı ˇcidla vrac´ı hodnotu, kter´a je zapotˇreb´ı vydˇelit hodnotou 100, abychom dostali hodnotu ve stupn´ıch Celsia. 1 // vypocet teploty 2
tep lo t a_ v e_ st u pn ic h _C = sys [310] / 100;
Pˇr´ıklad 19: V´ ypoˇcet teploty
3.6.2
Teplotn´ı ˇ cidlo pokud ˇ cidlo vrac´ı hodnotu 85°C
Pˇr´ıˇcina: Chybn´e ˇcidlo, moc dlouh´e zapojen´ı, chybn´e zapojen´ı. ˇ sen´ı: Reˇ Posledn´ı teplotn´ı ˇcidlo je venkovn´ı, bohuˇzel propojovac´ı kabel je jiˇz nad doporuˇcen´ ym limitem d´elky, proto se v n´ahodn´ ych ˇcasov´ ych intervalech st´av´a, ˇze teplotn´ı ˇcidlo vrac´ı hodnotu 85°C. Z tohoto d˚ uvodu je v ˇr´ıd´ıc´ım program vyuˇzita pomocn´a promˇenn´a, kter´a nab´ yv´a hodnoty pouze pokud hodnota teplotn´ıho ˇcidla nen´ı 85°C. T´ım nedoch´az´ı k pˇren´aˇsen´ı chybn´ ych hodnot do uˇzivatelsk´eho rozhran´ı. Tento probl´em je vyˇreˇsen i v archivaˇcn´ı aplikaci, jak pro ukl´ad´an´ı hodnoty venkovn´ıho ˇcidla do datab´aze, tak pro zobrazen´ı hodnot v tabulce pro porovn´an´ı. 3.6.3
Varov´ an´ı pˇ rekroˇ cen´ı teploty se zobraz´ı, ale nepˇ rich´ az´ı varovn´ y email
Pˇr´ıˇcina: ˇ Spatnˇ e nastaven´e SMTP hodnoty pro odes´ıl´an´ı poˇsty. ˇ Reˇsen´ı: Nutn´e zkontrolovat nastaven´ı SMTP protokolu v administraˇcn´ım rozhran´ı na str´ance Administrace“. Nˇekter´e mailov´e servery vyˇzaduj´ı ovˇeˇren´ı uˇzivatelsk´ ym ” jm´enem a heslem.
50
´ C ˇ AST ´ 3 PRAKTICKA
3.6.4
Teplota byla pˇ rekroˇ cena, ale varov´ an´ı se nezobrazuje
Kontrola nastaven´e hodnoty systemov´e promˇenn´e sys[140] limitu v administraˇcn´ım rozhran´ı na str´ance SDS-C“, Zmˇen ˇte uˇzivatelsk´e promˇenn´e zde!“. ” ” 3.6.5
Hodnota pro pˇ rekroˇ cen´ı teploty se pˇ rep´ıˇ se
Hodnota je uloˇzena na systemov´em u ´loˇziˇsti, kter´e nen´ı permanentn´ı, proto pˇri odpojen´ı nap´ajen´ı ˇci restartu zaˇr´ızen´ı se tato hodnota nastav´ı z ˇr´ıd´ıc´ıho programu, kde je pevnˇe uloˇzena. 3.6.6
Pˇ rechod na zimn´ı ˇ ci letn´ı ˇ cas
SDS-C v aktu´aln´ı verzi nem´a integrov´an syst´em automatick´eho pˇrep´ın´an´ı letn´ıho / zimn´ıho ˇcasu, pˇri pˇrechodu je nutn´e v administraˇcn´ım rozhran´ı pˇrenastavit GMT31 ofset32 na str´ance Administrace“. ”
31
Greenwich Mean Time Casov´ y odstup
32 ˇ
51
´ ER ˇ 4 ZAV
4
Z´ avˇ er
SDS-Micro je znaˇcnˇe konkurenceschopn´ ym zaˇr´ızen´ım mezi modern´ımi PLC automaty, kter´e m˚ uˇze m´ıt v souˇcasn´e technice v´ yznamn´e um´ıstˇen´ı a vyuˇzit´ı. C´ılem pr´ace bylo vytvoˇren´ı nejen uˇzivatelsk´eho manu´alu, ale tak´e obecn´ y n´ahled do problematiky ˇr´ızen´ı klimatu pˇri vyuˇzit´ı specifick´ ych zaˇr´ızen´ı. V souvislosti s t´ım tak´e vyplynulo ˇreˇsen´ı probl´em˚ u pˇri bˇeˇzn´em pouˇzit´ı konkr´etn´ıho zaˇr´ızen´ı. Pˇri aplikaci mohou nastat u ´skal´ı v naprogramov´an´ı nutn´eho programu ˇradov´ ym uˇzivatelem. To by se ale v z´asadˇe dalo po d˚ ukladn´em pˇreˇcten´ı manu´alu povaˇzovat za neopodstatnˇen´e. Jedn´ım z c´ıl˚ u bylo tak´e moˇzn´e vyuˇzit´ı zm´ınˇen´eho zaˇr´ızen´ı. Dle zjiˇstˇen´ ych informac´ı se d´a ˇr´ıci, ˇze vyuˇzit´ı je v podstatˇe t´emˇeˇr neomezen´e. S t´ım samozˇrejmˇe tak´e souvis´ı porovn´an´ı s konkurenˇcn´ımi spoleˇcnostmi a jejich zaˇr´ızen´ımi. V dneˇsn´ı dobˇe je bohuˇzel jedn´ım z d˚ uleˇzit´ ych aspekt˚ u porovn´an´ı jak v´ ykonu, tak i finanˇcn´ı n´aroˇcnosti. D´a se tedy ˇr´ıci, ˇze v tomto ohledu je mnou pouˇzit´e zaˇr´ızen´ı adekv´atn´ım parametrem pro vˇetˇsinu uˇzivatel˚ u. V souvislosti s t´ım vˇsak mus´ım zm´ınit i z´aporn´e str´anky. Jednou z nich je omezen´a hardwarov´a kapacita moˇzn´ ych vstup˚ u a v´ ystup˚ u. V re´aln´em pˇr´ıpadˇe toto znamen´a niˇzˇs´ı m´ıru pouˇzitelnosti u vˇetˇs´ıch projekt˚ u. Pro vˇetˇsinu uˇzivatel˚ u vˇsak tato z´aporn´a str´anka nen´ı nikterak d˚ uleˇzit´a, z d˚ uvodu bˇeˇzn´eho vyuˇzit´ı v re´aln´ ych pˇr´ıpadech (menˇs´ı prostory, nasazen´ı do urˇcit´eho poˇctu vstupn´ıch a v´ ystupn´ıch periferi´ı). Z d˚ uvodu dalˇs´ıho zpracov´an´ı byla vytvoˇrena glob´aln´ı aplikace pro archivaci z´ıskan´ ych dat, kter´a jednak pˇrij´ım´a zm´ınˇen´a data a z´aroveˇ n je zobrazuje pomoc´ı webov´eho prohl´ıˇzeˇce v podobˇe graf˚ u. D˚ usledkem toho lze vyvodit r˚ uzn´e moˇznosti ˇreˇsen´ı dan´e situace. Dalˇs´ım zjiˇstˇen´ ym u ´skal´ım se m˚ uˇze v nˇekter´ ych pˇr´ıpadech st´at nutnost vytvoˇren´ı konkr´etn´ıch program˚ u k ˇr´ızen´ı jiˇz zm´ınˇen´e ˇr´ıd´ıc´ı jednotky. S t´ım souvis´ı moˇzn´a n´aroˇcnost na ˇradov´eho uˇzivatele. Ale na tuto problematiku m˚ uˇzeme vˇsak narazit i u jin´ ych poskytovatel˚ u adekv´atn´ıho zaˇr´ızen´ı.
52
ˇ A ´ LITERATURA A ZDROJE POUZIT
Pouˇ zit´ a literatura a zdroje [1] SDS-C ONLINETECHNOLOGY.CZ. Popis jazyka SDS-C [online]. [cit. 201410-31]. Dostupn´e z: http://wiki.merenienergie.cz/index.php/SDS-C. ˇ [2] CSN 33 2130 ED.2 (332130) Elektrick´e instalace n´ızk´eho napˇet´ı - Vnitˇrn´ı elektrick´e rozvody [3] SDS-C ONLINETECHNOLOGY.CZ. SDS-C [online]. [cit. 2014-10-31]. Dostupn´e z: http://wiki.merenienergie.cz/index.php/SDS-C-START [4] SDS-C ONLINETECHNOLOGY.CZ. Prvn´ı program - jak na to [online]. [cit. 2014-10-31]. Dostupn´e z: http://wiki.merenienergie.cz/index.php/SDSC-START [5] SDS-C ONLINETECHNOLOGY.CZ. Dalˇs´ı vlastn´ı funkce [online]. [cit. 201410-31]. Dostupn´e z: http://wiki.merenienergie.cz/index.php/SDS-C-START [6] DS18B20 Programmable Resolution 1-Wire tal Thermometer [online]. [cit. 2014-10-31]. z:http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf
DigiDostupn´e
[7] SDS-C ONLINETECHNOLOGY.CZ. Jak dˇelat smyˇcky [online]. [cit. 201410-31]. Dostupn´e z: http://wiki.merenienergie.cz/index.php/SDS-C-START [8] SDS-C ONLINETECHNOLOGY.CZ. Prvn´ı uˇziteˇcn´ y SDS-C program [online]. [cit. 2014-10-31]. Dostupn´e z: http://wiki.merenienergie.cz/index.php/SDSC-START [9] Bal´ate, J.: Automatick´a ˇr´ızen´ı. Praha: BEN - technick´a literatura, prvn´ı vyd´an´ı, 2004, ISBN 97-8807-300-1483. ˇ - TECHNICKA ´ UNI[10] Nov´ak, P.: Pr˚ umyslov´e ˇr´ıdic´ı syst´emy. Ostrava: VSB VERZITA OSTRAVA, prvn´ı vyd´an´ı, 2000, ISBN 80-7078-733-3. [11] RASPBERRY PI 1 MODEL B+ [online]. [cit. 2014-10-31]. Dostupn´e z: http://www.raspberrypi.org/products/model-b-plus/
53
ˇ A ´ LITERATURA A ZDROJE POUZIT
[12] W3C.ORG. HTML5 [online]. http://www.w3.org/TR/html5/ [13] Highcharts JS [online]. www.highcharts.com
2014
2014
54
[cit.
[cit.
2014-11-31].
2014-11-31].
Dostupn´e
Dostupn´e
z:
z:
´ U ˚ SEZNAM OBRAZK
Seznam obr´ azk˚ u 1 2 3 4 5 6 7 8
Sch´ema SDS Micro . . . . . . . . . . . . . . . . . . . . . Port´al eportal.merenienergie.cz . . . . . . . . . . . . . . Rozloˇzen´ı vstupn´ıch a v´ ystupn´ıch zaˇr´ızen´ı . . . . . . . . Sch´ema zapojen´ı vstup˚ u a v´ ystup˚ u . . . . . . . . . . . . Sch´ema komunikace mezi perif´eriemi . . . . . . . . . . . Uˇzivatelsk´a str´anka SDS Micro . . . . . . . . . . . . . . Nastaven´ı hodnoty hranice syst´emov´e promˇenn´e sys[140] Webov´a str´anka s daty z glob´an´ıho u ´loˇziˇstˇe . . . . . . .
55
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
16 32 36 40 41 46 47 49
ˇ ´IKLADU ˚ SEZNAM PR
Seznam pˇ r´ıklad˚ u 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Funkce main . . . . . . . . . . . . . . . . . Funkce init . . . . . . . . . . . . . . . . . Funkce echo . . . . . . . . . . . . . . . . . Promˇenn´e . . . . . . . . . . . . . . . . . . Matematick´e operace . . . . . . . . . . . . Vlastn´ı funkce . . . . . . . . . . . . . . . . Jednoduch´a podm´ınka I . . . . . . . . . . Jednoduch´a podm´ınka II . . . . . . . . . . Podm´ınky s vol´an´ım vlastn´ıch funkc´ı . . . Pouˇzit´ı kombinace oper´ator˚ u . . . . . . . . Jednoduch´a smyˇcka . . . . . . . . . . . . . Nekoneˇcn´a smyˇcka . . . . . . . . . . . . . Prvn´ı program . . . . . . . . . . . . . . . . Z´ısk´an´ı systemov´e promˇenn´e . . . . . . . . Z´ısk´an´ı syst´emov´ ych promˇenn´ ych . . . . . Odesl´an´ı HTTP poˇzadavku . . . . . . . . Program pro ˇr´ızen´ı klimatick´ ych podm´ınek HTTP poˇzadavek . . . . . . . . . . . . . . V´ ypoˇcet teploty . . . . . . . . . . . . . . .
56
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
20 20 20 21 22 22 24 24 25 25 26 26 27 29 29 29 42 47 50
SEZNAM TABULEK
Seznam tabulek 1 2 3 4
V´ ychoz´ı parametry s´ıt’ov´e komunikace Logick´e oper´atory . . . . . . . . . . . . Pˇrehled syst´emov´ ych promˇenn´ ych . . . Z´akladn´ı nastaven´ı SDS Micro . . . . .
57
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
17 24 30 38
ˇ ´ILOHY PR
Pˇ r´ılohy 1. DVD – na pˇriloˇzen´em DVD se nach´az´ı pln´e znˇen´ı bakalaˇrsk´e pr´ace pod n´azvem souboru jarolimek_bakalarska-prace.pdf, d´ale jsou zde uloˇzeny zdrojov´e k´ody ˇr´ıd´ıc´ıho programu pod sloˇzkou sds-c, uˇzivatelsk´eho programu pod sloˇzkou www a webov´e aplikace pro zpracov´an´ı a zobrazen´ı archivaˇcn´ıch dat pod sloˇzkou raspberry
58