FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT IOAN SLAVICI TIMIȘOARA [309824]
FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT “IOAN SLAVICI” TIMIȘOARA
UNIVERSITATEA “IOAN SLAVICI” [anonimizat]. Molnar Florin Matei
ABSOLVENT: [anonimizat] 8
[anonimizat] 10
II.1 Responsabilitațiile unui NOC 10
II.2 Operțiuni realizate se NOC 10
II.3 Escaladarea unui deranjament nerezolvat 10
II.4 Criterii de escaladare 11
II.5 Managementul de rețea 11
II.5.1 Managementul configurării 12
II.5.2 Instalarea 13
II.5.3 Planificarea și dezvoltarea 13
II.5.4 Provizionarea 13
II.5.5 Control și stare 13
II.6 Managementul performanței 14
II.6.1 Monitorizarea performanței 14
II.6.2 Controlul performanței 15
II.6.3Analiza performanței 15
II.7 Managementul deranjamentelor 15
II.7.1 Asigurarea calității RAS 16
II.7.2 Supravegherea alarmelor 16
II.7.3 Localizarea deranjamentelor 16
II.7.4 Corectarea deranjamentelor 16
II.8 Testarea rețelei 17
II.9 Administrarea deranjamentelor 17
II.10 Managementul contabilizării 17
II.11 Managementul securității 17
II.11.1 Prevenirea 18
II.11.2 Detectarea 18
II.11.3 Recuperarea și controlul 18
II.11.4 Administratea securității 19
[anonimizat] 20
III.1 Portul paralel 20
III.2 Portul serial 21
III.3 Portul USB 22
III.4 Standard commands for programmable instruments SCPI 23
III.5 Standardul Modbus 24
III.6 Standardul RS 232 27
III.7 Standardul RS485 28
III.8 Standardul IEEE-488 General Purpose Interface Bus (GPIB) 29
III.9 Standardul Transmission Control Protocol/ Internet Protocol TCP/IP 31
[anonimizat] 33
IV.1 Selectarea și asamblarea părților electronice 33
IV.2 Microcontrollerul Arduino Mega 2560 34
IV.3 Shield Ethernet Wiznet W5100 compatibil Mega 2560 36
IV.4 Unitățiile de senzori utilizați în proiect 37
IV.5 Unitatea de relee 37
IV.6 Senzor de temperatură și umiditate 38
IV.7 Senzorul magnetic pentru ușă 39
IV.8 Senzorul de prezență și mișcare 39
IV.9 Senzorul de tensiune 40
IV.10 Senzorul de intensitate 41
IV.11 Diagrama de program 42
IV.12 Arhitectura software 42
IV.13 Bucla de inițializare 43
IV.14 Diagrama de secvență a aplicției 43
IV.15 Afișarea paginii cu mesaje 44
Capitolul V Testarea Sistemului de monitorizare și alarmare 45
VI Concluzii 47
Bibliografie 48
Anexa I Programul sistemului de monitorizare și alarmare 49
Anexa II Index figuri și tabele 55
CAPITOLUL I Introducere
Securitatea și monitorizarea camerelor tehnice, a site-[anonimizat] o conditiție obligatorie încă din faza de proiectare a [anonimizat], [anonimizat] o preocupare a tuturor agenților economici.
[anonimizat]-o eroare poate cauza pagube însemnate. [anonimizat], necesitățile clienților cât și de normele de legislație aflate în vigoare.
Complementar cerințelor inițiale ale sistemelor de protecție și monitorizare cum ar fi protecția impotriva accesului neautorizat, profitabilitatea, compatibilitatea cu infrastructura existentă, accesibilitatea etc. sunt necesare câteva caracteristici care ar fi transabilitatea, extinderea facilă, modificarea paramentrilor de funcționare , materealizarea sistemelor într-un raport cost/timp cât mai optim.
Sistemul de monitorizare și alarmare prezentat în această lucrare este conceput și realizat in principal ca o componentă a sistemelor utilizate în principiu de către Centrele Operaționale (Network Operaiting Center in limba engleză, uzual se folosește acronimul de NOC). Noc-ul este format din una sau mai multe locații din care se exercită controlul unei rețele de telecomunicații, a unui computer, a emisiei de radio și televiziune. NOC-urile sunt responsabile cu monitorizarea alarmelor și a parametrilor de funcționare care impun o monitorizare deosebită pentru evitarea oricărui impact negativ asupra rețelelor de telecomunicații. NOC-ul monitorizează aceesul in incintele de interes, căderile de tensiune, mediul fizic în care funcționează echipamentele, alarmele liniilor de telecomunicație (cedarea fizică a echipamentelor, erori de biți, erori de codificare, erori de transmisie) și alți parametrii de calitate ce pot afecta calitatea serviciilor oferite de rețele[8].
Centrul de operare al rețelei analizează orice tip de problemă aparută în rețea, implementeză testele de depanare, comunică cu departamentele tehnice cu scopul de a rezolva prompt și în timp util problemele apărute, dacă este necesar NOC-ul, problemele nerezolvate le escaladează către nivelul ierarhic superior. Procedurile conepute și implementate pentru NOC permit acestuia ca situațiile imposibil de anticipat cum sunt avariile la liniile de alimentare cu tensiune electrică, a cablurilor de fibră optică, avarierea cablurilor de RF precum și alte situații să trimită imediat echipele de tehnicieni specilizate pe tipul de deranjament apărut la remedierea promptă a acestuia. Orice fel de eroare apăruta NOC-ul o escaladează ierarhic astfel, dacă eroarea nu este remediată intr-un anumit interval de timp este informat următorul nivel ierarhic pentru a se putea lua cele mai bune decizii în contextul respectiv. Structurarea NOC-urilr este de obicei pe mai multe niveluri, noii angajați cu experiență puțină sunt considerați de nivel 1, în timp ce un tehnician cu mai mulți ani de experiența și care a deținut mai multe poziții din care a avut contact cu diferite situații este considera de nivel 3 sau 4, drept urmare problemele sunt escaladate in interiorul NOC-ului îaninte de a fi transmise altei persoane sau inginerilor altei rețele [5].
Noțiunea de NOC este de obicei folosită când se referă la furnizorii de telecomunicții deși mai multe organizații și companii private (Google, Microsoft, Facebook etc.) au de asemenea astfel de centre de gestionare a serviciilor, atât pentru rețelele intenrne cât și pentru terți. Centrele Operaționale conțin mai multe sau toate serverele și alte echipamente care rulează în rețea, dar foarte des este întâlnit și cazul în care un NOC monitorizează și controlează mai multe rețele de telecomunicații sau mai multe site-uri dispersate din punct de vedere geografic.
Pentru centrele de operare a rețelelor sistemele de monitorizare și alarmare sunt foarte importante, deoarece aceste sisteme oferă informații despre starea camerelor tehnice și despre starea echipamentelor de comunicații. Din centrele de monitorizare se supraveghează o mulțime de parametrii, cum ar fi, accesul în camerele tehnice ( senzori de prezență, senzori de ușă, camere de supraveghere, alarme acustice și luminoase), mediul din camerele tehnice prin senzori dedicați ( senzori de temperatură, de umiditate, de fum,etc.), parametrii legați de alimentarea cu energie electrică, energia fiind un factor esențial pentru funcționarea oricărui dispozitiv electric și electronic, din acest motiv toți administratorii de servicii din domeniul telecomunicațiilor se asigură pentru alimentarea cu energie electrică cu sisteme de rezervă cum sunt stațiile de energie echipate cu acumulatori, redresori, invertoare de tensiune, generatoare de curent electric fixe și mobile, independente de distribuitorii de energie electrică. Transportul și securitatea datelor este scopul principal al unui serviciu de telecomunicații, penru aceste lucruri sunt monitorizați cu atenție parametrii de funcționare a echipamentelor, cum sunt întârzierile de transfer, variația întârzierilor, rata de pierdere, rata de eroare, timpii de propagare, rata de biți eronați, validarea și autentificarea în conturile de administratori și clienți etc.
Sistemul de monitorizare și alarmare pentru centrele de operare a rețelelor dezvoltat în această lucrare are ca scop obținerea de parametrii fizici din camerele tehnice, monitorizarea de la distanță a acestora, controlul automat al mediului din camerele tehnice și descurajarea accesului neautorizat, supravegherea și controlul ce țin de alimentarea cu energie electrică. Cerințele pentru dezvoltarea sistemului au fost generate de necesitatea creării unui sistem simplu, cu un cost mic, care acoperă nevoile primare ale unui sistemde monitorizare și alarmare, unui sistem ușor de instalat și depanat, a unui sistem ușor de dezvoltat ulterior prin adăugarea de noi funcții și utilități.
CAPITOLUL II – Scopul înființării iunui NOC
Creearea unui centru unic pentru coordonarea, monitorizarea, planificarea și intervenția în rețelele de comunicații și echipamente cu posiblitați de monitorizare și management local sau la distanță la echipamente a fost necesară datorită creșterii complexității și dimensiunilor rețelelor cât și datorită necesității, creștere calității a serviciilor oferite și depistarea incipientă a deranjamentelor, a timpilor de reacție și rezolvare a acestora.
II.1 Responsabilitațiile unui NOC
Noc-ul este unicul punct de conexiune cu rețelele de cooperare, aici se primesc notficăriile despre deranjamentele și lucrările de mentenanță planificate a fi executate in rețea și informează beneficiarii despre impactul acestora asupra activității lor, remediază deranjamentele din rețea semnalate de beneficiari, uneori când situația o impune stabilește acordurile de servicii, sunt stabilite între furnizorul de servicii și client(“SLA” Service Level Agreement), monitorizeză respectarea SLA-urilor, monitorizeză indirect starea tuturor circuitelor (end-to-end),se recepționeaza și procesează rapoartele primate de la entitățiile implicate în reparații, remedierea deranjamentelor sau modificări din rețea și anunță operatorii implicați în rețea despre schimbările survenite aflate din rapoarte directe ori din activitatea de monitorizare și ierarhic se escaladează situațiile nerezolvate sau care depășesc decisional competența lor[4][6].
II.2 Operțiuni realizate se NOC
NOC-ul relizează studii de impact al lucrărilor de mentenanță sau modificare a rețelelor asupra servicilor asumate prin SLA beneficiarilor, investighează și soluționează deranjamente semnalate de beneficiari, trimite notificări beneficiarilor despre limitarea parametrilor conveniți asupra servicilor, trimite notificări (tichete de deranjament) către rețelele cu care colaborează sau departamentelor tehnice ca urmare a rezultatelor obținute din activitatea de monitorizare privind degradarea rețelei, procesează tichetele de deranjament trimise de beneficiari și dacă este cazul le trimite către rețelele cu care cooperează spre soluționare, interacționează cu baza de date a rețelei ( bază de date ce conține toate datele rețelei, proprietăți tehnice, scheme de implementare) pentru determinarea cauzelor unui deranjament, pentru că în practică rareori o situație este determinată de o singură cauză[5].
II.3 Escaladarea unui deranjament nerezolvat
Punctul de escaladare este un element din cadrul general de întreținere din organizarea servicilor de telecomunicații conceput pentru rezolvarea situațiilor din rețea ce nu pot fi remediate prin folosirea procedurilor de cooperare inter-rețea.
Persoanele sau departamentele cu responsabilități in punctele de escaladare vor avea autoritatea necesară pentru audit tehnic, discuții, propuneri tehnice și financiare cu rețele cooperante în funcție de procedurile de escaladare [2].
Atributul unui punct de escaladare este acela de a prelua de la eșalonul inferior sau de la departamentele tehnice, spre soluționare acele evenimente apărute în funcționarea rețelelor pe care aceștia nu le pot rezolva și care ar presupune discuții cu conducerea sau consiliul de administrație al societății economice, cu omologi din alte societăți, suplimentarea sau reorganizarea resurselor umane pentru remedierea situaților apărute, priotirizarea sarcinilor aflate în delurare, demararea unui audit modular. Persoanele din punctele de escaladare trebuie să fie accesibile și menționate în documentele de contact semnate cu beneficiarii.
Comunicarea în escaladarea unei situații în mod normal ar trebui să se desfășoare pe orizontală, între structuri aflate pe aceelași nivel cu toate că uneori este necesară comunicarea între nivlurile superioare ale adminstrațiilor pentru rezolvarea situaților respective ca în figura 2.1:
Figura 2.1 Escaladarea comunicării
II.4 Criterii de escaladare
Procedurile de tratare și escaladare a deranjamentelor sunt stabilite și implementate de către administrațiile furnizorilor de servicii[2].
Criteriile de escaladare pot fi :
parametrii de funcționare deficitari a rețelelor in pofida investigațiilor tehnice repetate;
repetarea aceluiași tip de deranjament într-un interval de timp rezonabil;
pierderea cu 2% a conexiuniilor din rețelele telefonice;
pierderea cu 5% din traficul pe o rută;
pierderea cu 10% a capacitățiilor de transmisie intre două centre;
pierderea unei căi de transmisie;
funcționare deficitară majoră ( căderea unui sistem radio, a unui nod de comutare, etc.);
dezastrele naturale cu efect mare asupra infrastructurii cum sunt incendiile, cutremure, furtuni, chiar și atacuri teroriste sau cibernetice.
Procentele expuse mai sus sunt orientative ele sunt stabilite, discutate și negociate de administrațiile părților implicate.
II.5 Managementul de rețea
Întâlnit in limba engleză ca Telecommunication Management Network ( TMN ),conceptul de management FCAPS ( fault management, configuration management, accounting management, performance management, security management ) [3]. Cele cinci funcții asociate cu managementul în rețea: configurarea ,deranjamentul, performanța, securitatea și contabilizarea gestionează fiecare un set de activitați așa cum se prezintă in figura 2.2.
Figura 2.2 Managementul Rețelei
II.5.1 Managementul configurării
Mangementul configurării cuprinde echipamentele hardware cât și configurările software necesare pentru furnizarea eficientă a serviciilor oferite. Astfel, managementul configurării constă în mangementul echipamentelor, incluzând cabluri, calculatoare, servere, routere, switchuri, convertoare, criptoare,centrale ,etc., împreună cu configurarea logică a rețelei, sistemele de operare, protocoalele sau stivele de protocoale alese[7] .
Pe scurt managementul configurării se referă la setările de rețea, inclusive permisiunile acordate și rutarea ce permit beneficiarilor să acceseze diferite servicii sau servere,deși pare că se implică managementul securității de fapt el este o consecință a setărilor, distribuirii posturilor în rețea și accesul la fișiere, de fapt configurarea logică a rețelei permite beneficiarilor să folosescă facilitățile rețelei atâta timp cât sunt conectați la ea, în timpe ce managementul securității este abilitatea de a primii acces la rețea pentru a beneficia de diferitele facilități puse la dispoziție de managementul configurării[3].
Managementul configurării are ca scop:
centralizarea și configurarea echipamentelor dint-o rețea locală sau la distanță;
simplificarea modului de configurare;
da a monitoriza schimbările de configurare;
de a furniza circuite sau căi directe în rețele necomutate ;
Managementul configurării deține funcțiile de exercitare a controlului, identificarea, colectarea și transmiterea datelor.
Acesta acceptă următoarele grupuri de funcții stabilite:
Inginerie și planificarea de rețea este asociată cu necesitatea continuă a capacității de transport a rețelelor, cu introducerea de noi tehnologii și existența în permanență a unor planuri pentru fiecare grup și include funcțiile:
funcția de planificare și respectare a bugetului;
furnizor al tehnologiei și politicii de rețea;
planificarea infrastructurii;
planificarea și managementul proceselor de inginerie;
planificarea infrastructurii de acces;
funcția de prognoză de rețea.
II.5.2 Instalarea
Departamentul de instalare acordă sprijin în instalarea echipamentelor din rețelele de telecomunicații, în extinderea sau reducerea acestora și include următoarele funcții:
funcția de achiziții;
managementul instalărilor;
managementul contractărilor;
respectarea planurilor de instalări stabilite;
administrarea instalărilor;
mangemntul stocurilor de materialelor și echipamentelor;
administrarea software-lor.
II.5.3 Planificarea și dezvoltarea
Departamentul de planificare și dezvoltare se ocupă cu dezvoltarea de servicii existente și introducerea de servicii noi, contracte de servicii și are următorele funcții:
– funcția de planificare;
– definirea serviciilor oferite;
– funcția de marketing;
– managementul vânzărilor;
– stabilirea și consolidarea relațiilor externe ( publice, juridice, contractante, etc.);
– funcția de identificare a cliențiilor;
– definirea funcției de serviciu clienți.
II.5.4 Provizionarea
Este operațiunea de introducere a unui echipament în serviciu, mai puțin instalarea, implică funcțiile de management ale echipamentului ce sunt puse automat în funcțiune, astfel încât status-ul unui echipament poate fi urmărit prin funcțiile de provizionare, este necesară pentru echipamentele digitale de comutație sau cele de interconectare.Provizionarea reunește următorul set de funcții:
– dezvoltarea politicii de provizionare;
-gestionarea materialelor;
-determinarea traseului echipamentelor;
– alegerea rutelor circuitelor;
– designul circuitelor;
– inventarierea circuitelor;
– baza de date a circuitelor;
– managementul și administrarea software-lor folosite.
II.5.5 Control și stare
Managementul rețelelor de telecomunicații la cerere poate controla și monitoriza toate aspectele legate de ingineria de rețea, ca schimbarea sau verificarea stării unui serviciu sau efectuarea unor teste de diagnosticare. Parte a rutinei de interținere poate fi controlul, efectuat după un program stabilit va permite excluderea echipamentelor defecte și reconfigurarea rețelei sau re-rutarea servicilor. Managementul rețelelor de telecomunicații permite analiza configurărilor și studii de fezabilitate înainte de a fi puse în aplicare. Include următoarele funcții:
– politica de priotirizare a serviciilor;
– stabilirea priorității de restaurare a serviciilor;- starea circuitelor;
– starea rețelei de transport, stabilirea acecesului la informații privind starea;
– notificări privind starea circuitelor.
II.6 Managementul performanței
Performanța invocă toate activitățile necesare pentru funcționarea fără intreruperi a rețelei sau întârzieri nejustificate ale serviciilor. Managementul performanței este strâns legat de activitatea de monitorizare a rețelei și serviciilor pentru a se asigura că nu există factori ce afectează performanța. Monitorizarea poate include fluxul de date între stații, servere, routerele, switch-urile, gateway-urile și capacitatea de utilizare a fiecărui segment de rețea.
Informațiile obținute prin monitorizare folosesc la ajustarea generală a rețelei atât din punct de vedere hardware cât și din punct de vedere a software-lor folosite pentru creșterea generală a performanței și eliminarea blocajelor. Managementul performanței oferă funcții pentru raportarea și comportamentul echipamentelor de telecomuniații și a rețelei în general, rolul său este de a colecta și analiza date statistice în scopul monitorizării și corectării comportamentului rețelei, datele pot fi colectate din rapoartele de calitate a serviciilor de la inginerii de rețea in mod programat[3][7].
Calitatea serviciilor include înregistrarea și monitorizarea următorilor parametrii
– stabilitatea conexiunii;
– calitatea conexiunii;
– integritatea de facturare;
– cooperarea cu managementul de mentenanță și deranjamente pentru a preîntâmpina posibile surse de deranjament și de a oferii soluții de routare dacă este cazul;
– efectuarea de teste pentru a monitoriza parametrii de calitate a serviciilor.
Managementul performanței include următoarele funcții:
– asigurarea calității;
– monitorizarea performanței;
– controlul performanței;
– analiza performanței.
Asigurarea calității
Sprijină procesele de decizie ce stabilesc nevoile beneficiarului și măsurile adecvate de instituit din punct de vedere al managementului performanței, include următoarele funcții:
– stabilirea nivelului de calitate;
– stabilirea obiectivă a calității rețelei;
– criteriile de stabilire a calității serviciului la abonat;
– criterii de evaluare a calității serviciului;
– criterii de evaluare a calității rețelei;
– funcția de verificare a integrității datelor.
II.6.1 Monitorizarea performanței
Implică colectarea continuă de date privind performanța rețelei. Condițiile de producere a deranjamentelor sunt detectate prin metode de supraveghere a rețelei și a tendinței de degradare a calității serviciilor oferite, include următoarele funcții:
– stabilirea politicii de monitorizare a performanței;
– funcții de agregare a datelor și a tendințelor rețelei;
– colectarea datelor despre circuite;
– colectarea datelor despre trafic;
– analiza tendințelor;
– detectarea, raportarea și stocarea datelor privitoare la performanță.
II.6.2 Controlul performanței
Face transferul informației către zona de management a performanței pentru a controla calitatea rețelei.Pentru managementul trficului în rețea această parte include controlul traficului și controlul de dirijare și rutare a traficului de date. Pentru managementul transportului în rețea acesta include stabilirea pragurilor nivelelor de semnal și algoritmii de analiză și colectarea datelor despre performanță fără a avea efect direct asupra managementului rețelei și include următoarele funcții:
– face politica de gestionare a traficului;
– administrează trficul;
– controlează traficul;
– rapoarte de audit asupra traficului.
II.6.3Analiza performanței
Analiza performanței cere prelucrarea suplimentară și anliza amănunțită a datelor provenite din monitorizarea rețelei și din rapoartele rezultate în urma efectuării testelor,pentru a se stabili nivelul de performanța, include următoarele funcții:
– stabilirea de recomandări pentru îmbunătățirea performanței;
– stabilește politica privind excepțiile;
– prognoza traficului;
– performanța traficului la beneficiar;
– analiza excepțiilor;
– analiza capacității de trafic;
– analiza performanțelor rețelelor.
II.7 Managementul deranjamentelor
Rețelele sunt formate dintr-o gamă variată de echipamente în care componentele acestora creează dernjamente, configurarea neadecvtă a software-urilor sau defectarea unor componente hardware afectează performanțele sau chiar întreruperi ale funcționării unor rețele. Managementul deranjamentelor este un set de funcții necesare pentru a detecta, izola și corecta problemele din rețea. Scopul managementului deranjamentelor este să depisteze, să izoleze și să corecteze problemele de disfuncționalitate a rețelei, nu doar după producerea acestora cât mai ales prin analiza tendințelor din rețea, astfel încât serviciile oferite să fie disponibile fără întreruperi. Tendințele sunt urmărite prin sistemele și software-le de monitorizare a diverșilor parametrii tehnici de funcționare a rețelei sau a componentelor acesteia, de exemplu: timpul de răspuns, lărgimea de bandă, factor de ocupare a memoriilor și procesoarelor, temperaturile interne și externe echipamentelor, valoarea tensiunilor curenților de alimentare, etc. Accesul ușor la un număr mare de produse hardware și software, inclusiv la cele personalizate, prântâmpină deranjamentele pe echipamente, cabluri, rețeaua de alimentare electrică, cele mai comune sunt reflectometre, senzori și analizoare de protocol LAN. Managementul deranjamentelor conține un set de funcții care permit detectarea, izolarea, și corectarea disfuncționalităților rețelei și a mediului de telecomunicații.
Asigurarea calității masurătorilor include componente pentru măsurători de fiabilitate, disponibilitate și de supraviețuire (RAS- Realiability, Availability and Survivability)[4][5].
II.7.1 Asigurarea calității RAS
Stabiliește ghidul criteriilor de fiabilitate privind proiectarea rețelei de echipamente redundante aflate in responsabilitatea managementului de configurare și altor grupuri din zona de responsabilitate, are următoarele funcții[4]:
– scopul rețelei RAS;
– stabilirea obiectivului de responsabilitate a serviciilor;
– evaluarea rețelei din punct de vedere RAS;
– funcția de raportare a căderilor a rețelei și a serviciilor.
II.7.2 Supravegherea alarmelor
Sistemele de management a rețelelor au posibilitatea monitorizării în timp real al deranjamentelor, în urma produceri unui astfel de eveniment, inginerii de rețea sunt avertizați despre acesta printr-o alarmă care indică nivelul, natura, gravitatea și efectele asupra beneficiarilor. Această avertizare se poate obține fie prin varianta în care există o bază de date prin care se interpretează semnalele binare provenite de la echipamente, fie prin varianta în care echipamentele transmit sistemului de management mesaje auto- explicative[3][5]. Alarmele se pot transmite în timp real sau pot fi stocate pentru analiză ulterioară, capabilitatea unui sistem să efectueze alarmarea în cazul deranjamentelor, constă în:
– lucrul în timp real;
– permiterea interogării rețelei privitoare la alarmă in condițiile date;
– accesul la logo-urile alarmelor pentru identificarea acestora.
Supravegherea alarmelor include funcțiile:
– politica de tratare a alarmelor;
– analiza,corelarea și filtrarea deranjamentelor;
– setarea alarmelor de schimbarea stării echipamentelor;
– raportarea și rezumatul alarmelor;
-criteriile de stabilire a alarmelor;
– alarmarea in cazul unor erori de management;
– controlul istoriei alarmelor;
– detectarea și semnalizarea deranjamentelor.
II.7.3 Localizarea deranjamentelor
Există situații în care informațiile primare nu oferă date clare despre localizarea deranjamentelor, caz în care trebuie facute măsurători suplimentare pentru identificarea locului deranjamentelor ceea ce implică următorele funcții:
– dezvoltarea procedurilor de localizare a deranjamentelor;
– verificarea parametrilor de conectivitate;
– localizarea deranjamentelor;
– efectuarea rutinelor de diagnosticare.
II.7.4 Corectarea deranjamentelor
Transferă date cu privire la procedurile necesare remedierii și controlării deranjamentelor fiind folosite resurse pentru înlocuirea echipamentelor defecte și sunt necesare funcțiile:
-administrarea procesului de reparare;
– contractul de garanție și reparație stabilite cu beneficiarul;
– programarea, administrarea și trimiterea resurselor implicate;
– corectarea deranjamentelor și restaurarea automată.
II.8 Testarea rețelei
Testarea rețelei se poate efectua in două moduri, primul mod implică trimiterea unei cereri către inginerii de rețea prin care se solicită efectuarea de teste de rețea și de echipamente, al doilea mod este de a se efectua teste automat de sistemul de management fără a se interacționa cu inginerii de rețea, sunt icluse următoarele funcții:
– stabilirea politicii și punctelor de testare;
– localizarea și selectarea circuitelor deranjate și corelarea testelor;
– selectarea testelor efectuate;
– testarea și controlul accesului în rețea și recuperarea în caz de urgență;
– configurarea testelor de acces;
– configurarea testelor pe circuite;
– raportarea stării.
II.9 Administrarea deranjamentelor
Transferă rapoartele de deranjament și tichetele de deranjament provenite de la beneficiari către departamentele destinate rezolvării deranjamentelor făcând investigații asupra acestors și are incluse funcțiile:
– dezvoltarea politicii de raportare a deranjamentelor;
– notificările privind schimbările de stare;
– creearea și administrarea tichetelor de deranjament.
II.10 Managementul contabilizării
Reprezintă un set de activități capabile să determine gradul de folosire a rețelei, să genereze rapoarte despre folosirea acesteia in ansamblu și de către fiecare utilizator sau grup, capabilă să stabilească costurile aferente. Sistemele de operare uzual pun la dispoziție astfel de statistci, dar pentru acuratețe mai are se pot folosi pachete de sofware care generează rapoarte exacte, în urma cărora sa se poată calcula costul folosirii rețelei, este un caz comun întâlnit în rețelele mari și pentru serviciile de poștă electronică, dar nu se întâlnește în rețele locale decât dacă se doresc prognoze de trafic[6].
II.11 Managementul securității
Managementul securității implică în primul rând utilizarea parolelor și permisiunilor de acces la aplicații și fișiere. Responsabilitatea de protejare a rețelei împotriva folosirii neautorizate și de limitarea posibilităților de sabotare electronică și fizică revine acestui sector care deasemenea este raspunzător de autentificarea și autorizarea utilizatorilor, precum și de confidențialitatea informațiilor acestora. Managementul securității constă și în amplasarea stațiilor și echipamentelor în zone cu acces restricționat și de selectarea se sistemelor de securitate, a software-urilor specializate de securitate.
Managementul de securitate prevede gestionarea evenimentelor de securitate, este necesar pentru toate zonele funcționale și pentru toate acțiunile managementului rețelelor de telecomunicații. Uniunea Internațională de Telecomunicații ( ITU– International Telecomunication Union) în recomandările sale tratează ca parte aparte managementul de securitate ce include servicii de asigurare a securității comunicaților, de detectare și raportare a evenimentelor de securitate[1]. Pentru furnizorii de servicii de telecomunicații privind autentificarea, confidențialitatea datelor, controlul accesului, integritatea datelor, nerespingerea care pot apărea între clienți și sisteme interne sau între utilizatori și sisteme, în plus sunt definite seturi de mecanisme de securitate aplicabile pentru orice comunicare.Pentru serviciile cu crescut de securitate raportarea oricăror activități ce pot fi considerate incidente de securitate cum ar fi utilizarea neauorizată, modificări în configurarea echipamentelor sunt necesare următoarele funcții prevenirea, detectarea, recuperarea și controlul și administrarea securității[6].
II.11.1 Prevenirea
Prevenirea ce conține funcțiile prevenirii intuziunii cum sunt:
– stabilirea cadrului juridic;
-stabilirea securității accesului fizic;
– paza și supravegherea zonelor stabilite;
– analiza riscului de personal;
– funcția de afișare a nivelului de securitate.
II.11.2 Detectarea
2. Detectarea conține setul de funcții necesare detectării intuziunilor:
– semnalizarea și investigarea modificărilor de la configurația inițială;
– alarmarea intruziunii de la beneficiar;
– crearea profilurilor de utilizatori externi;
– analiza folosirii serviciilor;
– prevenirea și investigarea furtului de servicii;
– analiza traficului de date intern;
– alarmarea în rețea;
– sofware de audit pentru intruziuni;
– raportarea intruziunilor.
II.11.3 Recuperarea și controlul
3. Recuperarea și controlul conține seturi de funcții necesare impiedicării accesului unui intrus, funcții pentru repararea și recuperarea după eventuale daune produse după o intruziune, are următoarele funcții:
– protejarea datelor stocate;
– acțiunea de raportare a excepțiilor;
– proceduri de urmat in caz de furt de serviciu;
– temeiul juridic de a acționa, răspundere penală, cerere de arestare, clauze contractuale, etc.;
– recuperarea datelor in cazul intruziunii și lista de revocare a beneficiarilor;
– stocarea și protejarea datelor beneficiarilor;
– protejarea și recuperarea datelor de configurare a rețelei și stabilirea setului de conexiuni interne.
II.11.4 Administratea securității
Administrarea securității, stabiliște ce funcții sunt necesare pentru planificarea, gestionare și administrarea politicii de securitate și a datelor necesare în acest scop, are următoarele funcții[1]:
-stabilește politica de securitate;
-planifică recuperarea datelor și configurărilor în caz de necesitate;
– mangementul pazei, administratea accesului și analiza alarmelor de securitate;
– evaluarea integrității datelor stocate;
– administrarea criptoarelor și cheilor de criptare;
– administrarea procesului de audit a beneficiarilor și managementul alarmelor la beneficiari;
– administrarea protocoalelor de securitate;
– testarea mecanismului de auditare;
– administrarea controlului intern al accesului și a autentificării interne;
– administrarea certificatelor de securitate interna;
– managementul alarmelor de securitate.
Capitolul III – Porturi si Standarde în telecomunicații
III.1 Portul paralel
Portul paralel poate fi mai ușor de interfațat decât celelalte porturi ale calculatorului din punct de vedere electronic, asta în special în cadrul unor proiecte dezvoltate individual, acasă[10] . Portul paralel este descris in standardul IEEE 1284, fiind compus din trei module:
– modulul de control ( 4 linii );
– modulul de stare ( 5 linii );
– modulul de date ( 8 linii ).
Conectorul portului paralel are 25 de pini, de tip mamă, standard adoptat înanul 1994, calculatoarele mai vechi puteau fi echipate cu două porturi paralele, pentru primul port adresea este 378H, iar pentru cel de al doilea 278H. Numărul porturilor paralele este determinat la pornirea calculatorului de BIOS, care le atașează etichete ( LPT1, LPT2, etc. ) , când calculatorul găsește un port, el devine LPT1, cea de a doua locație este căutată la adresa 378H, în cazul în care există un port fizic la această adresă portul primește următoarea etichetă, adresa 278H este ultima verificată.
Modulul de date are 8 pini, modulul de starea are 5 pini prin care se citește starea portului ( status port ), prin modulul de control se folosesc cei 4 pini de iesire, cei 8 pini rămși sunt legați la masă. La aresa de bază este localizat portul de date, registrul respectiv doar poate fi scris nu și citit. Datele de la portul de stare localizat la adresa e bază +1 pot fi ignorate, la adresa de bază +2 se află portul de control, pe nivelul ”0” este activ pinul ”busy”[13]. Pinii sun descriși în tabelul din 3.1 :
Tabelul 3.1 Descrierea pinilor portului paralel. Pinii portului paralel
Portul paralel a fost proiectat ca un port de scriere, liniile /Srobe, /Autofeed, Initialize și /Select sunt în configurație open-collector ca urmare când sunt folosite liinile acestora trebuie prevăzute cu rezistoare pull-up.În tabelul 3.2 se poate vedea ordinea liniilor de la adresele indicate, se mai poate vedea că la adresa de bază +2 sunt doi biți care fizic nu au corespondent la pinii portului paralel, aceștia au rolul de a activa transferul bidirecțional de date prin liniile magistralei de date ( enable bidirecțional), IRQ enable dacă este activ generează o întrerupere pe frontul crescător al pinului /ACK.
Tabelul 3.2 Ordinea liniilor de la adresele indicate
Conectorii aferenți porturilor de rețea, paralel, serial și USB se pot vedea în figura 3.1:
Figura 3.1 Conectori de porturi
III.2 Portul serial
Portul serial a fost unul foarte important, acum cele mai multe interfațări se fac pe portul USB. Prin portul serial datele sunt transmise bit după bit succesiv, transferul de date se poate face în mod sincron sau asincron, portul serial este ilustrat in figura nr.5 [9]. În zilele noastre portul serial este utilizat în special cu sisteme embedded, în cazul în care calculatoarele, laptop-urile nu sunt echipate cu port serial se utilizează un convertor serial-USB, implementându-se un port virtual. Standardul RS-232 este utilizat pentru a transmite și recepționa și date, în acest standard nivelul logic ”1” este transmis în intervalul -3V, -24V, iar nivelul logic ”0” este transmis în intervalul 3V-25V, valorile folosite în mod normal sunt 5V- 12V. Semnalul este mai bine protejat la zgomot fața de trasmiterea semnalului între valorile 0-5V, drept urmare transmisia se poate face la distanțe mai mari în condiții de siguranță decât cea paralelă fără măsuri suplimentare. La transmsia asincronă fiecare octet este precedat de un bit de start care semnalizează receptorului începutul transferului, această transmisie poate conține și un bit de parietate. Sfârșitul transmisiei este semnalizată prin bitul de stop, bitul de start al următorului octet se trimite oricând dupa transmiterea bitului de stop al actualului octet, bitul de start are valoarea ”0” logic, deși bitul de start este unul singur,pot fi 1, 1,5, 2 biți de stop. La transmisia asincronă este necesar ca ambii participanți să lucreze pe aceeleași frcvențe. În transmisia serială vitezele de transfer au valori standardizate 110, 150, 300, 600, 1200, 2400, 4800, 9600,19200, 38400, 57600, 115200 baud ( unitate de măsură a vitezei de transfer)[10].
La modul sincron de transfer a datelor, linia de trasmitere a datelor este activă permanent.Transferul de date începe cu transferul octetului de sincronizare, după care se trimit octeții de date, dacă datele lipsesc datele de sincronizare de la emițator sunt transmise continuu. Liniile portului serial sunt descrise in tabelul 3.3.
Tabelul 3.3 Liniile portului Serial
III.3 Portul USB
Magistrala Universal Serial Bus, USB este dezvoltată pentru conectarea la calculator a perifericelor ( scanere, imprimante, memorii stik, aparate foto, tastatură și mouse, etc.) și este una de tip serial. Standardul USB prevedea conectarea dispozitivelor la o așa zisă gazdă (host), interconctarea folosită de acest standard este de tip stea structurată pe mai multe nivele, punctul central denumit uzual hub. Segmentele tipologiei formează conexiuni punct la punct între hub și gazdă ori hub și periferic[14].
Magistrala USB este caracterizată prin:
– transmisie serială;
-conectarea și deconectarea în timpul funcționării se face automat;
– modelul de conectoare și cabluri de conexiune este unic;
– pentru USB 1.0 rata de transfer este de până la 12Mb/s, pentru USB 2.0 de până la 480 Mb/s și USB 3.0 cu o rată de transfer de până la 5 Gbit/s care este de aproape 10 ori mai rapid secât USB 2.0;
– maximul de periferice conectate prin USB este de 127;
– standardizarea conectării perifericelor la calculator, carcteristicile fiecărui periferic fiind preluat de sotware;
– datele sunt transferate în pachete.
Standardul USB include 3 tipuri de pachete, ” token” care este emis doar de host, ”data” care trasferă pachete de date, ”handshake” ce indică dacă informația a fost sau nu acceptată de receptor.
USB folosește doua modele de conectare A și B, astefel conectarea în mod greșit este imposibilă din cauze mecanice, pe carcasa calculatorului conectorii sunt de tip A, sunt două tipuri de conectoare A-B și A-A, cablul de tip A-B se folosește între calculator și periferice.
Conectorii USB au patru pini:
– data +, folosit pentru transportul datelor;
– data -, folosit pentru trasportul datelor în pereche cu data +;
– V+ , alimentare 5 Vcc ( permite utilizarea memoriilor flash);
– GND, masă.
Standardul USB este prevăzut cu culoarea verde pentru ” data + ”, culoarea albă pentru ” data –”, culoare roșie pentru ” V + ” și GND este de culoare neagră. Dispozitivul master la inițializarea interfeței USB enumeră perifericele conectate prin USB și le atribuie o adresă fiecăruia, standardizat prevăzută pe șapte biți, când se conectează un periferic nou i se atribuie o adresă, după conectare se stabilește modul și rata de transfer. Pentru stabilirea comunicării cu toate perifericele, dispozitivul master partajează timpul în sloturi cu o durată de 1 ms pentru USB cu rată de transfer redusă și mare și de 125 ms pentru viteză de transfer ridicată. Tranzacțiile pot fi mai multe, pe durate diferite de timp în slotul de timp utilizându-se multiplexarea. Multiplexat în timp fiecare cadru USB permite comunicarea cu diverse periferice, viteza de transfer fiind stabilite în funcție de periferic, priotirizarea există in acest standard, prioritățile bazate pe modul de transfer,control și bulk sunt onorate, intervalul rămas in cadrul slotului de timp este folosit pentru alte tranzacții.
Arhitectura hardware a USB 2.0 prevazută cu o rată de transfer de pâna la 480MB/s, este mai complexă decât a USB 1.0, compatibilitate între cele două versiuni ale standardului există și îndeplinește transferul către periferice de tip USB 1.0. Cel mai recent este standardul USB 3.0 cu o viteză de comunicație care poate crește până la circa 3.2Gb/sfolosindu-se o magistrală de transfer denumită SuperSpeed. Dacă sunt vizualizate datele transmise pe magistrala USB, citirea biților nu este ușoară datorită faptului că datele sunt codificate folosind mecanismul NRZI ( non- return to zero inverted ), 0 logic este reprezentat de o tranziție iar 1 logic este reprezentat prin pastrarea nemodificată a stării liniei. În trasmisia USB bitul LSB ( less signified bit ) se transferă primul, avantajul acestei codificări este că pe aceeași linie se transferă datele, cât și tactul, mecanismul NRZI nu necesită biți de start și de stop, sunt utliizate tehnicile bit staffing și SYNC fields pentu transmisie ceea ce adaugă însă biți de transmis. Când toți biți de date sunt 0 numărul de tranziții este mare, toți biți dacă sunt 1 în lipsa tranzițiilor poate apărea desincronizarea, pentru a o evita se folosește bit-stuffing ce inserează o tranziție ( un 0 ) după șase biți de 1 consecutivi, receptorul elimină bitul apărut după 6 biți consecutivi, totuși sincronizarea nu este asigurată de bit-sutffing în toate cazurile, momentul de începere a transmisiei nu este cunoscut de receptor. Pentru păstrarea sincronizării fiecare pachet de date are un câmp de sincronizare, SYNC FIELD, la rată de transfer mică SYNC este din opt biți: KJKJKJKK ( ultimii 2 sunt KK), mai eficient decât în cazul standardului RS232 dacă pachetul are mai mult de patru octeți, eficiența este maximă la pachete de date mari, la rată de transfer mare SYNC este de dimensiune mai mare ( 32 biți), deci câmpul are 15 perechi KJ urmate de KK, ce semnalează sfârșitul câmpului de sincronizare, semnalizarea sfârșitului unui pachet este facută de transmisiterea END-of-Paket având ca efect trecerea liniei în strea Idle și pregătirea transferarea unui pachet nou[10].
III.4 Standard commands for programmable instruments SCPI
SCPI este un protocol de comunicație care permite controlul instrumentelor cu ajutorul calculatorului, pentru orice mărime măsurată, definește o comandă unică ceea ce permite determinarea parametrului indiferent de fabricantul aparatului de măsură, acest standard a fost dezvoltat pentru a reduce durata de dezvoltare a software-urilor pentru echipamentele automate de test. Standardul SCPI asigură un mediu consistent de programare ce cuprinde mesaje, formate de date și raspunsul instrumentației pentru dispozitive indiferent de producătorul acestora. SCPI beneficiaza de verticalitate, definind mesaje pentru instrumente din aceeași clasă și de orizontalitate care folosește aceeași comandă pentru controlul funcțiilor similare la clase diferite de instrumente, punându-se la dispoziție câteva nivele de control în instrumentație, comenzile simple de măsurare oferă control rapid și utilizare facilă, se utilizează nume standard în instrumentație, fiind expandabil cu comenzi noi ceea ce din punct de vedere al programării nu implică probleme, totodată este public disponibil pentru promovarea sa. SCPI este dezvoltat să opereze deasupra modulelor IEEE 488.2, putând fi folosit cu intrfețe ca Vxbus, RS232, etc., unele module instrumentale folosesc transmisia serială peste infrastructura hardware a USB[9][15].
Principalele două tipuri de comenzi ale standardului SCPI sunt:
– comenzi uzuale, independente de dispozitiv, cuvântul de comandă poate conține unul sau mai mulți parametrii fiind precedat de un asterisc;
– comenzi dependente de instrumentul controlat;
Comenzile uzuale sunt:
– *CLS – Clear Status Comand;
– *ESR – Standard Event Status Register Query
– *ESE – Standard Event Status Enable;
– *IDN? – Identificatorul Query;
– *OPC? – Operation Complet Query;
– *OPC – Operation Complete Command;
– *RST – Reset;
– *SRE? – Service Request Enable Query;
– *SRE – Service Request Enable;
– *STB? – Read Status Byte Query;
– *TST? – Self-Test Query;
– *WAI – Wait to Continue.
Menționate în standardul IEEE 488.2 sunt trei comenzi posibil de folosit pentru sincronizare a comenzilor suprapuse: *OPC, *WAI, OPC?. Bazate pe o structură grafică sub forma unui arbore sunt comenzile dependente de instrumentul controlat, comenzile se construiesc cu ajutorul uneia sau a mai multora mnemonici în structura aceasta, de exemplu mnemonica SENSe. Comenzile sunt de două tipuri din punct de vedere al acțiunii lor, de setare a unei marimi/operații și de interogare a unei mărimi/operații. Instrucțiunile de setare stabilesc valoarea unei mărimi, de exemplu se poate stabili valoarea tensiunii de ieșire a unei surse de curent, comenzile de interogare sunt instrucțiuni in urma cărora instrumentul controlat trimite un răspuns[10].
Structura de comandă de tip SCPI este organizată sub formă de arbore, unde comenziile sunt grupate în ramuri, cuvintele de comandă cheie se numesc noduri, primul nod se numește rădăcină. Comenzile se scriu textual,cu litere mici cât și mari (caracterele mari indică o formă scurtă a comenzilor ), între mnemonicele diferitelor noduri se pun ”:”, de exemplu” MEASure:VOLTage:DC?”.
III.5 Standardul Modbus
Standardul Modbus a fost dezvoltat de Programable Logic Controller, (PLC), astăzi făcând parte dein grupul Schneider-Telemecanique, după publicarea sa acest standard a fost acceptat relativ repede datorită calităților și simplității sale. Structura Modbus este de tip master-slave, utilizează pentru comunicație noduri între care se trimit mesaje. Prima variantă folosea ca suport fizic standardul RS 232, ulterior s-a trecut la standardul RS 485 oferind posibilitatea comunicației la distanțe mai mari. După apariția sa la scurt timp, Modbus a devenit standard industrial de comunicație. Avantajele Modbus constau în flexibilitate, ușurința implementării acestuia. Sistemele ce folosesc Modbus sunt microcontrolele, PLC-urile, inclusiv senzorii inteligenți. Standardul Modbus folosea la început comunicația serială, în zilele noastre sunt extensii ce folosesc interfața TCP/IP. Modbus folosește mesaje cu structură independentă de tipul de intefața folosit, astfel încât mesajele folosite pe suport RS232 sunt identice cu cele folosite pe interfața TCP/IP, aspect ce oferă posibilitatea de dezvoltare fără a fi necesare modificări de software. Dacă se folosesc interfețe diferite Modbus poate comunica cu mai multe noduri în aceelași timp, cu interfețele simple RS485 și RS232 mesajele sunt trimise direct în rețea, rețeaua concepută astfel fiind dedicată standardului Modbus, dacă se utilizează alte tipuri de rețele ca TCP/IP mesajele sunt împachetate în formatul specific acesteia[9][16].
Mesajele in standardul Modbus au aceeași structură, ce conține patru elemente de bază, elemente ce sunt în aceeași ordine pentru fiecare mesaj pentru ușurarea selecției mesajelor. Conversația in rețelele Modbus sunt inițializate de dispozitivul master, care trimite un mesaj și în funcție de conținutul mesajului un dispozitiv slave răspunde. Protocolul Modbus permite intr-o rețea existența a mai multor dispozitive master, mesajele conțin adresa dispozitivului slave căruia-i este adresat mesajul exemplificat în tabelul din 3.4:
Tabelul3.4 Structura unui mesaj Modbus cu câmp de adresare
Structura unui mesaj Modbus este prezentată în tabelul 3.5:
Tabelul 3.5 Structură Mesaj Modbus
Modurile de transmisie Modbus ASCII și Modbus Remote Terminal Unit ( RTU ), sunt modurile de transmisie de bază, modurile de transmisie denotă felul în care sunt codate mesajele, în Modbus ASCII mesajele sunt citibile în formatul ASCII, în timp ce Modbus RTU utilizează codificarea binară, fapt ce face ca mesajele să nu fie ușor de citit dar reduce dimensiunea msajului, făcând posibilă creșterea numărului de date și comenzi care pot fi trimise sau recepționate în unitatea de timp. De menționat este faptul că nodurile unei rețele Modbus folosesc aceelași format, astfel încât dispozitivul Modbus ASCII nu descifrează mesajele Modbus RTU și viceversa. Structura mesajelor Modbus RTU diferă de cele în ASCII unde se utilizează caractere pentru începutul și sfârșitul mesajului, în RTU începutul este semnalizat de un interval de timp în care nu se transmite nimic de 3,5 caractere, pauza detectată de destinatar este de minim 1,5 caractere și o întelege ca început de mesaj nou.
Tabelul 3.6, prezintă cele două tipuri de mesaj comparativ:
Tabelul 3.6 Moduri de transmisie Modbus
Într-un mesaj Modbus prima informație care apare este adresa destinatarului, spațiul de adresare este de un octet ( pe 8 biți ), în Modbus ASCII adresa este codificată pe două caractere în hexazecimal, iar Modbus RTU adresa este codificată pe un octet. Între adresele 0 și 247 este cuprins spațiul de adresare. Standardul Modbus utilizează ca adresă de emisie adresa ”0”, fiind de obicei atribuită masterului, dispozitivele slave prezente în rețea au adresa cuprinsă între 1 și 247, dacă sunt mesaje trimise pe adrese mai mari de 247 acestea sunt acceptate de toate dispozitivele Modbus slave ( broadcasting)[10]. Dispozitivul slave răspunde întodeauna mesajului Modbus adresat lui, mesajul de răspuns utilizează adresa utilizată de master, astfel încât dispozitivul master detectează dispozitivul slave care răspunde. Standardul Modbus utilizează în timpul comunicației regiștrii de intrare sau de stocare, intrări și ieșiri, elemente care au un număr cuprins între 1 și 10000, pentru citire/scriere a valorilor protocolul utilizează adrese diferite, în intervalul 0-9999 se află adresele valide. În tabelul 3.7 sunt prezentate adresele Modbus:
Tabelul3.7 Adrese Modbus
Al doilea parametru din fiecare mesaj Modbus este codul funcție, cel care definește tipul mesajului și tipul acțiunii necesare, este realizat pe un octet ( 1…..255), în Modbus ASCII pe două cifre hexazecimale este prezentat codul funcției, nu toate dispozitivele Modbus recunosc aceeleși seturi de coduri de funcție. Dispozitivul slave folosește același cod funcție ca mesajul inițial atunci când formulează un răspuns, când se detectează o eroare bitul cel mai semnificativ este înlocuit semnalizând o eroare. Cele mai folosite funcții cod Modbus sunt prezentate în tabelul 3.8:
Tabelul 3.8 Funcții cod Modbus
Funcția 01 de citire a unei ieșiri, poate fi utilizată pentru citirea unei singure ieșiri, modul broadcasting nu este disponibil, structura mesajului de citire a unei ieșiri este prezentată în tabelul 3.9
Tabelul 3.9 Structura mesajului funcției de citire a unei ieșiri
La recepționarea unui mesaj cu funcția de citire a unei ieșiri dispozitivul slave identifică valorile de ieșire și va construi un mesaj Modbus, ieșirea acestuia este dependentă de numărul de valori ce trebuie returnate, dacă este necesară returnarea unui numar de valori N este nevoie de un număr corespunzător de adrese care să stocheze aceste valori. Structura răspunsului funcției unei ieșiri este prezentată în tabelul 3.10:
Tabelul 3.10 Structura raspunsului funcției 01
Funcția 02 de citire a unei intrări se face la fel ca citirea ieșirii și poate fi folosită și pentru citirea unei singure intrări, modul broadcasting nu este valabil.
Funcția 03 de citire a regiștrilor de ieșire, în regiștri de stocare sunt stocate valorile variabilelor interne, regiștrii sunt utilizați fie pentru stocarea parametriilor de configurare, fie pentru stocarea datelor măsurate ( putere,curent, turație, etc.) [10]. Adresa acestor regiștrii începe cu 40001, modulul broadcast nu este valabil cu funcția 03, modulul slave după procesarea mesajului, trimite data solicitată pe 16 biți, octetul cel mai semnificativ va fi trimis primul.
Structura funcției de citire a regiștrilor de ieșire este prezentată tabelul 3.11.
Tabelul 3.11 Structura mesajului funcției 03
III.6 Standardul RS 232
Standardul RS 232 este un protocol de transmisie serială, publicat în 1969, a fost utilizat pe scară largă pțnă acum câțiva ani, locul lui fiind luat de către USB sau FireWire, transmisia serială încă se folosește în instrumentație, la comunicațiile cu sisteme embedded. Protocolul RS 232 asigură transmisia serială de date între două terminale aflate la o distanță de până la 15 m, rata de transfer maximă a datelor este de 20kbit/sec, definește modulele hardware și semnalele utilizate. Conexiunea RS 232 între două module, este cea mai simplă conexiune după cum se vede in figura 3.2, acest standard necesită doar trei linii de conexiune transmisie, recepție și masă ( TX, RX, GND ), sistemul A este conectat prin linia TX la linia RX a sistemului B și invers, astfel se transmit caractere în codul ASCII între cele două sisteme[10][13].
Figura 3.2 Conexiunea serială cea mai simplă între două sisteme
Standardul RS 232 transmite pachetele de date au un bit de start, biți de stop ( unul, unul jumătate ori doi în funcție de alegerea utilizatorului), după cum se observă în figura nr.16 și un bit de parietate ( pară/impară ) nu apare în figura 3.3, utilizatorul în cadrul configurării transmisiei poate alege tipul de parietate, biții se transmit succesiv.
Figura 3.3 Transmisia unui octet în standardul RS 232
Protocolul RS 232 se folosește de logica inversă, nivelul scăzut de tensiune reprezintă ”1” logic iar nivelul ridicat de tensiune ”0” logic, astfel ”1„ logic este prezentat pe un nivel de tensiune -3V și -25V, iar ”0” logic între +3 și +25V, spațiul dintre -3 și +3V nu este definit, modulul hardware ( portul ) ce asigură comunicația vine cu recomandarea unui curent de maxim 500mA pentru a nu fi deteriorat.
Cu toate că cea mai simplă aplicație de comunicație serială se poate realiza cu doar trei conductori, portul serial cuprinde mai multe linii figurate în figura nr.6 din subcapitolul 3.2, câteva linii sunt folosite pentru handshaking,după cum se prezintă, linia Clear to Send arat că modemul sau sistemul cu care comunică este gata de comunicație, linia DCD, Data Carrier Detect se activează atunci se detectează o purtătoare de la modemul cu care se află conectat, linia DSR, Data Set Ready, arată faptul că modemul este pregătit pentru stabilirea unei comunicații, datele sunt pregătite pentru ai transmise, linia DTR, Data Terminal Ready semnalizează că portul serial este pregătit pentru stabilirea unei conexiuni, linia RTS, Request to send, semalizează modemului portul serial este apt pentru schimbul de date, linia RI, Ring Indicator, se activează când este detectat un semnal de la linia telefonică.
III.7 Standardul RS485
Standardul RS 485 descrie rețele de comunicații ce permit transmisii de date până la distanțe de aproximativ 1200m, acest standard permite configurări ale rețelelor în două moduri, un mod cu două cabluri răsucite pentru protecția la zgomot și cel de al doilea mod cu patru cabluri unde pe magistrală este un dispozitiv master conectat la modulele slave, dispozitivele în ambele moduri suntadresabile. La un moment un dispozitiv ia controlul magistralei, iar cele care nu sunt utilizate sunt puse în stare de înaltă impedanță.
Standardul RS485 face posibilă conectarea mai multor module, maxim 32, de tip ”daisy chain”, modul de conectare cu doi conductori este prezentat în figura 3.4.
Figura 3.4 Mod de conectare în standardul RS485
Culorile conductorilor sunt sandardizate la RS485 cu două cabluri, astfel A+ este albastru, B- este alb-albastru, iar firul de masă GND este alb-portocaliu, conform standardului conductorii nefolosiți vor fi conectate la masa prin rezistori de 1oo la ambele capete, este recomandat ca lungimea cablurilor nerăsucite să fie cât mai mică, se recomandă ca între module sa fie ecrananate, iar între module consecutive este recomandat ca lunimea conductorilor să fie mai mare de 0,3m. Ambele moduri de conectare în satndadul RS485 au avantaje și dezavantaje, modul cu doi conductori este limitat la transmisie half duplex, iar modul cu patru conductori este full duplex dar este condiționată de topologia master-slave în care dispozitivle slave nu pot comunica între ele[10][17].
III.8 Standardul IEEE-488 General Purpose Interface Bus (GPIB)
Standardul GPIB este o magistrală de control care permite comanda dispozitivelor în a căror componență se găsește, a fost dezvoltată de Hewlet-Pakard pentru conectarea instrumentelor de test cu calculatoarele, atât calculatorul cât și instrumentele au module electronice ce permit interfațarea și un set de răspunsuri standard la comenzi, o schemă bloc se află în figura 3.5 [15].
Figura 3.5 GPIB schemă bloc
Calculatorul este cel care controlează întreaga magistrală fiind pe post de master, acesta este singurul care poate iniția o comunicație cu orice dispozitiv, trimite instrucțiuni către acestea și recepționează răspunsunsurile lor, dispozitivele slave pot doar recepționa comenzi și trimite răspunsuri. Magistrala GPIB are în posesiune linii de control și de date pentru a-și putea exercita funcțiile. Conectorul GPIB are 24 de pini, din car 16 pini sunt linii semnal ( handshake, date și management de interfațare ), iar 8 linii sunt de masă, din cele 16 linii, opt sunt linii de date, trei dintre ele au rol de handshaking iar cinci folosesc managementului comunicației, liniile de date notate DI01….DI08 sunt folosite pentru transportul comenzilor și datelor, pentru a se deosebi datele de informații se folosește linia attention, ATN.
Figura 3.6 Conector GPIB
La transmisie comenzile folosesc caracterele ASCII pe 7 biți sau coduri ISO, în cazul acesta linia DI08 poate fi utilizată pentru parietate, liniile de handshake controlează controlul de mesaje între dispozitive, acestea sunt NRFD ( not ready for data ), NDA ( not data accepted ) și DV (data valid ), aceste linii se pot vizualiza în figura 3.6 Conectorul GPIB, NRFD indică dacă un dispozitiv este sau nu este pregătit pentru recepția datelor, NDAC indica dacă un dispozitiv a acceptat sau nu date, liniile NRFD și NDAC sunt comandate de dispozitivele controlate, linia DAV informează că datele sunt valide pe magistrală, semnalul acesta este comandat de controller. Linia Attention, ATN, este pusă pe ”1„ logic de controller pentru semnalizarea transmiterii unui mesaj sau unei adrese, la transmiterea datelor ATN este pusă pe ”0” logic, linia EOI, end or identify, poate fi folosită pentru a marca ultimul caracter dintr-un mesaj ori împreună cu linia ATN pentru polling, linia IFC, interface clear, este folosita de controller pentru trecerea interfeței în stare pasivă, linia REN, remote enable, este folosită de controller pentru selectarea controlului local sau remote, linia SRQ, request, este folosită de dizpozitivele slave. În tabelul 3.12 sunt prezentate comenzile GPIB [10].
Tabelul 3.12 Comenzi GPIB
III.9 Standardul Transmission Control Protocol/ Internet Protocol TCP/IP
Internetul este rezultatul gândirii unor vizonari care de la începutul erei calculatoarelor, au înțeles importanța schimbului de informații între calculatoare. În anii “60” Massachussets Institute of Tehnology, MIT, a propus pentru prima dată creearea unei rețele globale de calculatoare, la început gândită pentru schimbul de informații, internetul a evoluat până la stadiul actual, ce presupune conectarea fiecărui domiciliu, internet pe aproape toate telefoanele mobile, informațiile schimbate între clculatoare pot fi de orice natură [10].
Standardul TCP/IP este un ansamblu de mai multe protocoale, cele mai importante sunt:
– Transmission Control Protocol ( TCP );
– Internet Protocol ( IP ).
Cunoscut și sub denumirea de Internet Protocol Suite, acesta este cel mai frecvent numit TCP/IP un nume scurt și ușor de pronunțat, scopul principal la construirea TCP/IP fost construirea unei interconexiuni de rețele ( internetwork sau internet), folosind infrastructura fizică a rețelelor, internetul furnizează servicii de comunicație în toate spațiile geografice ale Pământului. În ceea ce este Internetul astăzi se găsesc:
– rețele de mari dimensiuni numite adesea coloana vertebrală ori rețele cu puncte de acces, Network Access Points, NAPs sau Internet Exchange Points, IXPS;
– rețele regionale, de genul ce leagă sediile universităților;
– rețele comerciale, ce leagă abonații de entitățiile mari;
– rețele locale, din cadrul birourilor unei companii [7].
În standardul TCP/IP a fost important să se creeze un set standardizat de mecanisme de comunicare oferit de fiecare tip de rețea, care au propia interfață de comunicare ce pune la dispoziție funcțiile de bază necesare pentru realizarea schimbului de date, servicii ce rulează între aplicațiile utilizatorilor și interfața de comunicație pentru care este necesar codul către serviciile TCP/IP. Pentru ca un computer să fie identificat în rețea i se atribuie un număr unic denumit adresă IP, dacă în calculator se află mai multe intrfețe de rețea fiecăruia i se atribuie câte o adresă IP. Adresa IP conține două câmpuri, adresa rețelei și adresa calculatorului ce corespunde adresei rețelei, și este stabilită de autoritatea centrală a rețelei. Adresa IP are patru câmpuri separate de ”.”, exemplu de adresă IP este 192.168.0.01, primele două câmpuri arată că este vorba de o rețea locală, ultimele două specifică adresa unui dispozitiv conectat la rețea, într-o rețea locală se pot conecta 256 de dispozitive, adresa IP locală este atribuită de un router ce oferă servicii de interfațare între rețeaua locală și cea externă, ultimul digit ”1” este stabilit de router în cazul unei adrese dinamice, fie de către utilizator dacă este vorba de o adresă statică, caz în care dacă două dispozitive au aceeași adresă apare un conflict de adrese IP. Routerul văzut de rețea are și el adresă IP diferită de adresa locală din aceeași clasă de adresare cu cea a rețelei, routerul face diferența între dispozitive printr-un număr de port, stabilit într-un tabel setat în router folosit de un dispozitiv conectat la router, care are o adresă locală, la care conectarea din exterior se face prin folosirea adresei de rețea a router-ului căreia i se adaugă valoarea portului, de exemplu pentru conectarea la o cameră de supraveghere cu IP conectată la un router care este într-o rețea de Internet se accesează adresa ” http:// 68.79.172.80:1910”, unde 1910 este valoarea de port atribuită de la router camerei de supraveghere[6].
Protocolul TCP/IP este organizat pe straturi, acest tip de structură introduce noțiunea de stivă, noțiune ce se referă la stiva de straturi de protocoale, comunicația între straturi se realizează prin interfețe stabilite de standardul de comunicație, fiecare strat este client pentru stratul inferior și furnizor pentru stratul superior, acest tip de organizare permite diviziunea sarcinilor între straturi, un exemplu este stratul TCP ce permite trimiterea datelor de la un computer la altul fără garanția livrării datelor. Straturile ce cooperează pentru transmisia de date sunt:
– stratul aplicației, Application Layer;
– stratul de transport, Transport Layer;
– stratul inter-rețea, Internetwork Layer;
– stratul de interfață de rețea, Network Interface Layer.
În figura 3.7 se pot vizualiza straturile menționate, stratul superior, dominant al protocolului TCP/IP este cel aferent aplicației, este cel care interacționează direct cu aplicația, este singurul vizibil de utilizator.
Figura 3.7 Modelul structural al standardului TCP/IP
Protocolul TCP/IP include câteva aplicații importante, SMTP pentru poștă electronică, FTP pentru transfer de fișiere, TelNet pentru acces, etc., cu toata acestea utilizatorul are posibilitatea de a-și dezvolta proprile aplicații care utilizează acest standard, folosit de toate aplicațiile pentru comunicații ce folosesc acest standard au la dispoziție cele două structuri de transport TCP sau UDP, utile și la îndemâna dezvoltatorului de software, este de amintit că User Datagram Protocol, UDP, nu garantează livrarea pachetului de date, lucru lăsat în seama aplicației, utilizarea TCP este mai ușoară, conexiunea este sigură și garantează livrarea datelor transmise.
Conexiunea client-server este una foarte des utilizată, ambele părți din dialog sunt aplicații ce rulează pe calculatoare diferite, dar pot rula și pe aceelași calculator. Clientul este programul care solicită un serviciu pus la dispoziție de către server, care similar vânzătorului de la un magazin așteaptă un client căruia să-i ofere un serviciu, funcțional severul primește un serviciu, execută și returnează rezultatul. Comunicația dintre un client și un server se realizează printr-un port de dinainte stabilit, valori tipice de port sunt utilizate pentru comunicația aplicaților consacrate, cele mai cunoscut sunt 80 și 8080 [10].
Capitolul IV – Proiectarea și programarea sistemului de monitorizare și alarmare
Sistemul de monitorizare și alarmare este absolut necesar pentru centrele de operare rețele. Dimensiunile mari și diversificarea serviciilor oferite de rețele au făcut ca numărul și diversitatea echipamentelor din rețea să fie foarte mare, totodată dispunerea fizică a lor în locații foarte variate cum sunt camerele tehnice, spații închiriate în diverse locuri și cu destinație variată și foarte des întâlnite spațiile din afara intravilanului localitățiilor, altfel spuse ”în câmp”, denumite în domeniul telecomunicațiilor ca site-uri, a dus la necesitatea de a putea monitoriza și de a alarma personalul tehnic despre orice schimbare de parametrii din aceste site-uri.
Cei mai importanți parametrii care pot afecta grav funcționarea sunt: lipsa curentului electric, temperatura ambientală care poate genera funcționarea deficitară a echipamentelor sau chiar defectarea lor și nu în ultimul rând efracția care la rândul său aduce din păcate pagube însemnate operatorilor de telecomunicții.
Sistemul de monitorizare și alarmare are în comonență trei părți: partea care colectează informații de la senzorii prezenți în dispozitiv, partea automată de acționare a releelor și partea de interfațare între om și mașină.
Etapele ce au fost necesare pentru construirea sistemului de monitorizare și alarmare sunt:
– selectarea și asamblarea părtilor electronice ce au intrat în componența sistemului;
– proiectarea și realizarea software-ului necesar funcționării sistemului;
– realizarea și testarea modelului sistemului.
Subcapitolele următoare prezintă în detaliu etapele prezentate mai sus.
Schema bloc a sistemului de monitorizare și alarmare este prezentată în figura 4.1.
Figura 4.1 Schemă bloc sistem
IV.1 Selectarea și asamblarea părților electronice
Structura electronică a sistemului de monitorizare și alarmare este alcătuită din următoarele componente:
– Arduino Mega 2560 este unitatea centrală a sistemului:
– Shield Ethernet compatibil Mega 2560, interfață responsabilă pentru interacțiunea om-mașină;
– unitățiile de senzori, senzor de temperatură și umiditate, senzor de prezență, senzor de tensiune, senzor de putere curent consumat, senzor magnetic de ușă;
– o unitate de relee comandate de placa de dezvoltare Arduino Mega 2560;
– dispozive periferice comandate: led, ventilator, sunerie de alarmă;
– router.
IV.2 Microcontrollerul Arduino Mega 2560
Microcontroller ul Arduino Mega 2560 este unitatea centrală a sistemului, este un contorller format din 54 intrări și ieșiri, dintre care 15 pot fi utilizate de ieșire PWM, 16 pini analogici, 4 porturi de comunicație serială, UART, un oscilator de 16 MHz, o conexiune USB, memorie flash de 256 KB dintre care 8 KB sunt ocupați de bootloader și un conector de alimentare cu curent continuu sau o baterie, controller-ul este comparibil cu o serie mare de shield-uri concepute pentru Arduino [21]. Portul USB poate asigura alimentatrea cu energie electrică a controllerului, este de recomandat ca alimentarea cu energie să se asigure cu o sursă externă de 6-20V DC, datorită cazului în care controllerul este alimentat cu mai puțin de 7V, există posibilitatea ca pinii de alimentare să aibă la ieșire o tensiune mai mică de 5V, și atunci controllerul poate avea o funcționare instabilă, este de prferat ca alimentarea să se facă într-un interval de tensiune de 7-12V, la tensiune mai mare se poate să se supraîncălzească regulatorul de tensiune și deteriora controllerul, microcontrollerul Arduino MEGA 2560 este prezentat în fotografia din figura 4.2.
Figura 4.2 Microcontroller Arduino Mega 2560
Datorită evoluției în timp controllerul Mega2560 are în componența sa un cip Atmega 16U2 programat ca convertor USB la serial, noile funcții sunt legate de următorii pini:
– pini SCl și SDA apropiați de pinul AREF și doi pini IOREF,ce permit ca tensiunea furnizată de placă să fie adaptată de ecrane conectate la ea;
– circuit de resetare mai evoluat;
– Atmega 8U2 este înlocuit cu Atmega16U2.
Pinii de alimentare cu tensiune electrică sunt:
– Pinii Vin, tensiunea de intrare a Mega2560 când aceasta este alimentată electric de o sursă externă, nu de conexiunea USB cu 5V, se poate alimenta electric prin acest pin dacă tensiunea electrică este furnizată controllerului prin conectorul de alimentare;
– cei 5 volți necesari alimentării controllerului și altor componente poate fi de la pinul VIN prin un regulator de pe placă, de la USB sau de la altă sursă de alimentare;
– 3,3 volți este o tensiune electrică furnizată de regulatorul de pe placă;
– legătura la pământ, GND.
Memoria controllerului Mega 2560 este de 256 KB pentru memorarea programului, din care 8 KB memorie SRAM și 4 KB de EEPROM ce pot fi citiți și scriși cu biblioteca EEPROM.
Pinii de intrare/ieșire:
Arduino Mega 2560 dispune de 54 pini digitali, fiecare dintre aceștia, fiecare dintre ei pot fi utilizați ca intrare sau ieșire, folosind funcția pinMode(), digitalWrite sau digitalRead, tensiunea electrică de funcționare a piniilor este de 5V, pinii pot furniza fiecare un curent cu intensitatea de 40mA și au un rezistor de ridicare intern de 20-50KOhm ( deconectat în mod implicit ), unii pini beneficiază de funcții speciale. Pini de transmisie și recepție TX/RX date seriale, pinii 0 și 1 sunt corespunzători cipului ATmega16U, USB-to-Serial, de transmitere, TX sunt pinii 1, 18, 16, 14 și pinii de recepție, RX sunt pinii 0, 19,17,15.
Controllerul dispune de pini cu întreruperi externe ce pot fi configurați pentru declanșarea unei întruperi la o anumită valoare, mică, în creștere, în scădere sau la o schimbare de valoare, pentru a se folosi o înrerupere se utilizează funcția ”attachInterrupt (), pentru placa Mega 2560 sunt disponibile un număr de șase funcții de întrerupere externă după cum urmează:
– pinul 2, întreruperea zero;
– pinul3, întreruperea unu;
– pinul 21, întreruperea doi;
– pinul 20, întreruperea trei;
– pinul19, întreruperea patru;
– pinul 18, întreruperea cinci.
Pini de la 0-13, sunt pini ce asigură ieșire PWM pe 8 biți, cu funcția analogWrite() , Pulse Width Modulation, tehnică prin care se obțin rezultate analogice cu cu mijloace digitale.
Interfața serială periferică, SPI, pinul 50 MISO, linie de transmitere a datelor către dispozitivul master, 51 MOSI, linia masterului de a transmite date către dispozitive periferice, 52 SCK, serial clock, 53 SS, selectarea dispozitivului slave. De pinul 13 este conectat un led, care atunci când pinul este în starea High, ledul este aprins, iar când este LOW este stins.
Interfața TWI cu pini 20 SDA, linia de date și 21 SCL, linia de clock, suportă comunicarea Two Wire Interface folosind biblioteca Wire [20].
Controllerul dispune de 16 intrări analogice oferind 1024 valori distincte, adică 10 biți de rezoluție, în configurare prestabilită de la masă avem o valoare de 5V, dar cu funcțiile AREF pin și analogReference este posibil să se schimbe valoarea superioară. Linia de reset, punerea ei în stare de LOW resetează controllerul, pinul se utilizează pentru adăugarea butonului de reset la scuturile atașate controllerului și se blochează accesul la butonul plăcii.
Controllerul Arduimo Mega 2560 are la dispoziție o suită de funcții pentru comunicare cu un calculator, un alt controller Arduino și alte controllere, dispune de patru porturi de comunicație serială asincronă, UART, folosind nivelele logige TTL (5V), pe un controller Arduino Mega 2560 cu chip ATmega16U2 pe canalele existente, conexiunea între controller și un calculator se realizează prin portul USB printr-un port de comunicație virtual, COM, sistemele de operare Linux și OSX recunosc controllerul printr-un COM automat, sistemul de operare Windows are nevoie de un fișier .inf pentru realizarea conexiunii. Softul Ardunino are inclus un monitor serial pentru transmiterea de date sub formă de text la și de la placă, trnsmisia și recepția sunt semnalizate prin clipirea ledurilor de TX și RX la efectuarea schimbului de date cu caculatorul prin interfața USB. Pentru comunicare serială controllerul Mega 2560 folosește biblioteca SoftwareSerial pe oricare din pinii digitali, pentru folosirea magistralei Wire se folosește biblioteca Wire iar pentru comunicația SPI este folosită biblioteca Spi.
Programarea controllerului Mega 2560 se realizează cu softwareul Arduino, utilizând protocolul STK500, pentru încărcarea codului program este preinstalat un booloader fără a fi necesară utilizarea unui programator extern, este posibilă progrmarea controllerului fără utilizarea bootloaderului prin standardul de programare serială ICSP, In Circuit Programming Serial [23].
IV.3 Shield Ethernet Wiznet W5100 compatibil Mega 2560
Interfața dintre om și mașină din cadrul proiectului acesta este placa similară Ethernet Shield W5100 folosită ca server, dar poate fi folosită și ca client, capabilă de a suporta 4 conexiuni simultan. Scutul de rețea permite ca controllerul Mega 2560 să fie conectat la internet, utilizând biblioteca Arduino Ethernet , W5100 oferă posibilitatea controllerului de a obține o stivă de rețea, IP, pentru comunicare ăn standardul TCP și UDP. Ecranul de ethernet se conectează la Mega 2560 direct prin pini existenți pe scut, pastrându-se utilizarea pinilor din Mega 2560 prin scutul de rețea, care deține un slot de card SD pe care pot fi stocate date.
Arduino Mega 2560 poate comunica cu scutul de rețea și cu cardul SD, se folosește de magistrala SPI prin pinii 50, 51, 52, pinul 10 este folosit pentru selectarea scutului de rețea iar pinul 4 pentru memoria SD, pinul 53 este folosit ca ieșire spre interfața SPI. Deoarece placa de rețea și cardul SD împărtășesc magistrala SPI doar un singur mod poate fi activ la un moment dat.
Placa de rețea este prevăzută cu un conector ethernet RJ45, buton de reset, ce resetează atât placa de rețea cât și Mega 2560, led-ul PWR indică alimentarea electrică a scutului, led-ul link indică prezența traficului de date, ledul full indică că conexiunea la rețea este complet duplex, ledul 100Mb/s indică prezența conexiunii de 100 Mb/s, în figura 4.3 este prezentat placa de rețea Ethernet Shield W5100 [25].
Figura 4.3 Ethernet Shield W5100
IV.4 Unitățiile de senzori utilizați în proiect
În proiectarea, construcția și în implementarea Sistemului de Monitorizare și Alarmare s-a urmărit posibilitatea de a se putea vizualiza starea și condițiile fizice dintr-o cameră tehnică, pentru aceste scopuri este necesară obținerea de date exacte în timp real, în cadrul NOC-urilor accesul la date exacte în timp real este strâs legat de însăși filosofia existenței sale. Obținerea parametriilor de temperatură și umiditate, de prezență fizică a persoanelor, de efracție , de prezență a curentului electric și de intesitatea acesutuia se realizează cu ajutorul senzorilor dedicați, senzorii sunt dispozitivele care măsoară o mărime pe care o trnsformă într-un semnal citibil de către utilizator. Releele și senzorii folosiți pentru acest proiect sunt compatibili biblioteticilor Arduino și sunt descriși după cum urmează.
IV.5 Unitatea de relee
Pentru sistemul de alarmare și monitorizare s-a folosit un modul de relee cu 4 canale, folosit pentru a controla ledul de iluminat, ventilatorul și alarma de ușă, cu ajutorul releelor se controlează aparate ce funcționează la o tensiune electrică înaltă cu plăcile de dezvoltare. Releele din modul pot funcționa la o tensiune de 250V curent alternativ sau 30V curent continuu, necesarul de tensiune pentru funcționarea optocuploarelor este de 5V cu un curent de 5mA. Conectarea consumatorilor se realizează la bornele de forță prevăzute cu șuruburi, fiecare modul se poate conecta în mod normal închis sau normal deschis, borna ”normal închis” este în legătură cu borna comună când pinul de control nu are tensiune electrică, când este alimentat pinul de control borna normal închis este deconectată fiind în legătură borna comună și borna ”normal deschis”, în figura 4.4 este prezentată ordinea de declarare a pinilor plăcii de dezvoltare Mega 2560 pentru comanda dispozitivelor controlate și modul de conectare a dispozitivelor la terminalele releelor.
Figura 4.4 Modul Relee și mod de conectare
IV.6 Senzor de temperatură și umiditate
Senzorul de temperatură și umiditate DHT11 este un senzor convenabil cu o precizie bună, este simplu de utilizat și de dimensiune redusă cu un preț mic. Senzorul DHT11 măsoară temperatura între 0 – 50 °C cu precizie de 2 °C, umiditatea este măsurată într-un interval de 20% – 90% cu precizia de 5%, măsurarea temperaturii și umidității este de un senzor capacitiv de umiditate, iar un termistor măsoară temperatura mediului înconjurător. Senzorul DHT11 masoară umiditatea relativă a mediului înconjurător, adică măsoară cantitatea de vapori de apă din aer comparativ cu punctul de saturațe a vaporilor de apă, vaporii de apă dein aer la punctul de saturație se condensează formând pe suprafețe pelicule umede și picături de apă, temperatura aerului modifică punctul de saturație, aerul cald menține mai mulți vapori de apă înainte de saturație iar aerul rece mai puțini, umiditatea este exprimată în procente și umiditatea relativă se calculează ca raport între densitatea vaporilor de apă și densitatea vporilor de apă la saturație înmulțit cu 100%., la umiditate de 100% apare fenomenul de condensare, iar la 0% aerul este complet uscat.
Conectarea senzorului la controller se realizează prin pini existenți pe carcasă, astfel pinul 1 se conectează la pinul de 3,3V sau de 5V al controllerului, pinul 2 se coectează la un pin digital și pinul 4 la masă [26].
Citirea senzorului de temperatură și umiditate se realizează în funcția readSensors(), sunt declarate bibliotecile Ethernet, EthernetServer, SimpleDHT și magistrala SPI, este declarat modelul de senzor către bibliotecă, se declară pinii reelelor, se transmit parametrii către server și pritr-o funcție condițonată în funcție de valorile setate se ia decizia de a schimba starea unui pin, în cazul de fața pinul 38 de pe placa Mega2560 dacă temperatura depășește o valoare de 27°C, trece în stare ”High” și cuplând releul declarat pentru pornirea ventilatorului de evacuare a căldurii. Bucla de citire a senzorului DHT11 și comanda releului ce pornește ventilatorul se poate vedea în figura 4.6.
Figura 4.6 Senzorul DHT și bucla de citire și execuție pentru DHT11
IV.7 Senzorul magnetic pentru ușă
Pentru monitorizarea accesului în camera tehnică s-a folosit un senzor magnetic normal închis, în programul sistemului de monitorizare și alarmare s-a inițializat pinul 25, în mod PULLUP de pe Mega 2560 ca pin pentru snzorul magnetic pentru ușă, pentru citire și comanda releului alarmei sonore de la ușa s-a folosit pinul 40, dacă starea pinului 40 este High, atunci releul 4 de pe modulul de relee trece în mod normal deschis alimentând electric alarama sonoră din camer tehnică, în aceelași timp pe serverul de ethernet, dacă pinul 40 este în stare HIGH apare mesajul ” Ușă Deschisă A fost pornită alarma sonoră”, dacă este în stare LOW este afișat Mesajul ” Ușă Închisă”, figura nr.24 prezintă modul de conectare la modulul de relee. Figura 4.7 prezintă schema buclei de program pentru senzorul de ușă.
Figura 4.7 Bucla de citire și exexuție pentru senzorul de ușă
IV.8 Senzorul de prezență și mișcare
Modulul cu senzor PIR HC-SR501 folosește tehnologia IR (infrared), deseori folosit pentru detecția oamenilor și pentru a comanda iluminatul dintr-o incintă, tensiunea de alimentare electrică este între 5-20V și intensitate de 65mA, foarte ușor de utilizat împreună cu microcontrollere din cauza tensiunii de ieșire de 3,3V, cu senzitivitate și timp de acțiune reglabil, oferă un unghi de detecție de 140° la o distanță de până la 7m [27]. Pentru realizarea sistemului de monitorizare și alarmare am folosit un astfel de senzor pentru detectarea prezenței umane și a comanda prin modulul de relee iluminatul. Pe placa de dezvoltare Mega 2560, senzorul de mișcare a fost inițializat pe pinul 27, citirea datelor și comanda releului se face prin funcția digitlRead de pe pinul 42, dacă starea pinului este LOW, atuci releul este pe modul normal închis iar dacă starea este HIGH releul normal deschis și este alimentat sistemul de iuminat, totodată pe serverul HTML dacă starea pinului este low este trimis mesajul predefinit ” Nu este mișcare ”, dacă este pe HIGH se transmite mesajul deasemenea predefinit ” S-a detectat mișcare. A fost pornită lumina”, în figura 4.8 este prezentat senzorul PIR și schema buclei de program aferentă lui.
Figura 4.8 Senzor PIR și schemă buclă de program
IV.9 Senzorul de tensiune
Pentru funcționarea echipamentelor electrice și electronice cel mai important aspect este prezența curentului electric fără de care nimic din aceaste categorii nu ar putea funcționa.
Centrele de monitorizare și control ale rețelelor de comunicții, obligatoriu trebuie să monitorizeze parametrii legați de curentul electric. Pentru realizarea proiectului prezentat în acestă lucrare s-a ținut cont de acest aspect și s-a folosit un senzor de tensiune și un senzor de intensitate. Senzorul de voltaj lucrează cu precizia de detecție în plaja de 0,02445V – 25V DC, modul de conectarea a senzorului este următorul, borna pozitivă este VCC, borna negativă este GND și pinul S la placa de dezvoltare Mega2560, senzorul de voltaj este prezentat în figura 4.9 împreună cu diagrama de programe.
Figura 4.9 Senzor voltaj și diagrama de program
IV.10 Senzorul de intensitate
Intensitatea curentului sau puterea sa este un parametru important pentru NOC-uri, de exemplu, într-o cameră tehnică se modifică intensitatea curentului și se depășește puterea instalată se poate interpreta ca o defecțiune la un echipament sau la o sursă de alimentare, poate sugera un transformator defect ce se supraîncălzește, prin monitorizarea intensității se pot evita situații ce pot genera deranjamente. Pentru măsurarea intensității s-a folosit un senzor de curent Hall ACS712, tensiunea de alimentare a senzorului trebuie să fie între 4,5V-5,5V cu un consum de 10 mA, pe pinul A5 al contollerului Mega 2560 a fost definit senzorul de intensitate, i-a fost definită senzitivitatea și eșantionarea înainte de a se face media, deoarece este o citire digitală. Placa de dezvoltare citește senzorul și trimite citirea pe serverul de ethernet,are doar funcția de citire, senzorul și diagrama de citire sunt în figura 4.10.
Figura 4.10 Senzor ACS712, diagrama de citire
Schema bloc de conectare a tuturor senzorilor folosiți pentru realizarea sistemului de monitorizare și alarmare este prezentată în figura 4.11.
Figura 4.11 Schemă de conectare senzori
IV.11 Diagrama de program
În figura 4.12 este prezentată diagrama de program pentru sistemul de monitorizare și alarmare conceput pentru supravegherea încăperilor destinate echipamentelor electrice și electronice, codul sursă pentru placa de dezvoltare Arduino Mega 2560 este atașat acestei lucrări în Anexa 1.
Figura 4.12 Diagramă de program
IV.12 Arhitectura software
Ingineria programării se referă la etapele de dezvoltare, cerințele, designul, implementarea, testarea, integrarea și validarea unui produs software[21][22][23].
Unul dintre elementele principale ale unui program este blocul de inițializare în care funcții din bibliotecă, diferite variabile sunt inițializate în program pentru funcționarea corectă a modelului.
Blocul buclei principale , este o buclă fără condiții de oprire, este blocul în care se verifică dacă blocul de tratare a stărilor determină nevoia de citire a datelor furnizate de senzorii din blocul de citire a senzorilor, după 15s pagina de afișare (web) este reîmprospătată afișând textul predefinit stărilor , în subcapitolele precedente au fost prezentate citirile și maesajele afișate furnizate după citirea senzorilor, arhitectura software a sistemului este prezentată în figura 4.13.
Figura 4.13 Arhitectura software a sistemului de monitorizare și alarmare
IV.13 Bucla de inițializare
În cadrul funcției setup() este implementat blocul de inițializare, funcția aceasta este executată când controllerul este alimentat cu tensiune electrică, înaintea funcției main().
Funcția de inițializare este folosită pentru utilizarea bibliotecilor, setări a pinililor, a inițializa diferite variabile, această funcție funcționează o dată, după fiecare pornire sau resetare a contrllerului Mega 2560, schema logică a blocului de inițializare este prezentată în figura 4.14.
Figura 4.14 Schema logică a blocului de inițializare
IV.14 Diagrama de secvență a aplicției
Alimentarea cu energie electrică a controllerului Arduino Mega 2560 se execută funcția de inițializare setup (), după executrea acestei funcții se intră în bucla principală fără condiții oprire, în cadrul acestei funcții se trimite către server mesajul actual în funcție de citirea stării sistemului, după care se revine în funcția loop () și se apelează funcția reaSensors(), în funcție de parametrii citiți de la senzori se trece la funcția if () , în care dacă se îndeplinesc condițiile se trece stare piniilor definiți releelor în stare HIGH sau LOW, placa de dezvoltare revine în funcția loop() și se afișează parametrii reactualizați de pe pagina de afișare. Programul sursă pentru sistemul de monitorizare și alarmare se gasește în anexa 1, în figura 4.15 este prezentată diagrama de secvență a aplicației pentru sistem.
Figura 4.15 Diagrama de secvență a aplicației
IV.15 Afișarea paginii cu mesaje
Pentru creearea paginii web s-a folosit limbajul HTML ( HyperText Markup Language), un limbaj de marcare folosit pentru prezentarea într-un anumit format a informaților text, tabele, paragrafe, fonturi, culori, imagini. Pentru sistemul de monitorizare și alarmare pagina web se găsește memorată în memoria plăcii de dezvoltare Arduino Mega 2560, care funcționează în regim de server pentru operatorii din centrul de operare.
HTML este un limbaj dezvoltat pentru prezentarea documentelor text într-o pagină, creearea de fișiere HTML este simplă, poate fi realizată cu ajutorul unui editor de text, însă pentru corectitudinea codului scris este recomandată folosirea unui editor specializat care să evidențieze diverse elemente de marcare, Tag-uri denumite etichete sau elemente sau să verifice codul scris și chiar să detecteze erori spre exemplu Notepad++.
Pentru sistemul dezvoltat pentru această lucrare s-au definit mesajele de generat în funcție de starea sistemului respectiv în funcție de temperatura ambientală, starea senzorului magnetic de ușa, prezența umană, curentul consumat și tensiunea de alimentare. Diagrama de program pentru afișarea mesajelor pe pagina web este prezentată în figura 4.16.
Figura 4.16 Diagrama de program pentru mesajele afișate
Capitolul V Testarea Sistemului de monitorizare și alarmare
Centrele operaționale a rețelelor au nevoie de a monitoriza, colecta date și parametrii de funcționalitate a rețelei, procesele de colectare date și parametrii sunt implementate de toți operatorii de rețele.
Capitolul 5 prezintă sistemul de monitorizare și alarmare construit și implementat înt-o machetă funcțională. Testarea sistemului presupune verificarea corectă a tuturor componentelor sale, afișarea corectă a datelor preluate de sistem, funcționarea dispozitivelor comandate de controller, trimiterea datelor către operatorii conectați la serverul din sistem. Alimentarea electrică a machetei conduce la inițializarea piniilor conectați la senzori și la modulul de relee și apoi la trimiterea de date și mesaje prin interfața ethernet la router, ulterior operatorii se pot conecta la serverul cu IP 192.168.1.20, autorizându-se cu numele de marius.lalescu și parola pass1234. Macheta sistemului realizat și pagina web cu toți parametrii de funcționare normali și unde se văd datele trimise de sistem sunt prezentate în figura 5.1.
Figura 5.1 Machetă sistem și pagină Web
Temperatura dintr-un site este un parametru ce trebuie monitorizat și controlat din cauza efectului ce-l poate avea asupra echipamentelor electronice, figura 5.2 prezintă macheta cu ventilator a sistemului și pagina Web cu mesajul de funcționarea a ventilatorului și temperarura din interiorul machetei.
Figura 5.2 Machetă cu ventilator și mesaj transmis
Accesul în camerele tehnice precum și semnalizarea prezenței umane este un alt parametru ce necesită atenția operatorilor din domeniul telecomunicațiilor, deorece furtul din siteuri și vandalizarea acestora creează prejudicii directe și indirecte însemnate atât operarorilor cât și clienților acestora. Sistemul de monitorizare și alarmare a fost proiectat și construit ținându-se seama și de aceste aspecte. În figura 5.3 este prezentat atât modul de alarmare a operatorilor din cadrul NOC-ului cât și partea fizică din funcționalitatea sistemului, adică ceea ce se întâmplă fizic în camerle tehnice, prezența umană și alarma sonoră de la fața locului.
Figura 5.3 Detecția umană și mesaje transmise către operatori
VI Concluzii
Sistemul de monitorizare și alarmare oferă posibilitatea operatorilor din centrele de operare a rețelelor să obțină date despre starea camerelor tehnice în timp real, administratorii companiilor cu un cost scăzut pentru o unitate de sistem beneficiază de faptul că investițiile în tehnologie nouă și echipamentele deținute sunt în siguranță și funcționează în parametrii fizici recomandați de producătorii lor.
Lucrarea prezintă organizarea, ierarhizarea și funcționarea și beneficiile existenței centrelor de operara a rețelelor, în textul lucrării sunt prezentate câteva din standardele de comunicație întâlnite într-o multitudine de echipamente.
Componentele fizice ale sistemului au fost selectate pentru funcționalitatea și rentabilitatea lor, s-a avut în vedere posibilitatea de dezvoltare și extindere a sistemului cât și ușurința și costul scăzut la care se remediază defecțiunile sistemului, de exemplu în timpul dezvoltării sistemului a apărut un incident legate de sursa de alimentare a sistemului și a fost afectat procesorul controllerului devenind inutilizabil, cu un cost mic s-a înlocuit piesa defectă foarte ușor, sistemul fiind funcțional în timp foarte scurt de la incident.
Dezvoltarea tehnologiilor bazate pe programe aduce beneficii însemnate utilizatorilor oferindu-le capabilitatea de administrare în controlul accesului, detecția efracției, controlul
parametriilor de funcționare a echipamentelor, supravegherea video, controlul inteligent al locuinței, economisirea energiei, folosirea resurselor în mod optim pentru beneficiar și totodată pentru ecosistem, este din ce în ce mai importantă conștientizarea că resursele necesare susținerii vieții la un standard mulțumitor pe Pământ sunt limitate și trebuie folosite în mod echilibrat. Soluțiile adaptate în funcție de necesitățiile reale ale utilizatorilor cu funcții de compatibilitate între sisteme și de dezvoltare ulterioră sunt soluții optime ce aduc beneficii atât utilizatorilor cât și din punct de vedere ecologic pentru economisirea și refolosirea resurselor.
Programul sistemului este prenzentat în Anexa 1, el a fost conceput ca să ofere date exacte despre starea camerelor, tehnice să regleze temperatura din ele, să limiteze accesul neautorizat, să funcționeze automat, total independent de intervenția umană, funcția umană fiind doar aceea de citire a stării incăperilor tehnice.
Sistemul de monitorizare și alarmare este un sistem fiabil, ușor de implementat și folositor, prin modelul construit lucrarea de față și-a atins obiectivul, totuși modelul rămâne deschis la adăugarea unor noi funcții și senzori în funcție de cerințele și nevoia de control și monitorizare a altor parametrii specifici domenilor de activitate.
[1] International Telecomunication Union, Telecomunication management network Recomandation M. 3016, 1998;
[2] International Telecomunication Union, Maintenance, Designation and Information Exchange Escalation Procedure, M. 1560, 1992;
[3] International Telecomunication Union, telecomunication Management network, Management function, M. 3400, Telecomunication Standardization Sector, 2000;
[4] International Telecomunication Union, Framework of a service level agreement Telecomunication Standardization Sector, E.860, 2002;
[5] Communications Service Office (CSO) Standard Operating Procedure for Trouble Reporting, Activity Scheduling, Mission Freeze, and Major Outage Notifications Issue Date: March 2017 (htpps://cso.nasa.gov);
[6] Network Administrators Survival Guide – Anand Deveriya, Cisco Press 2005, ISBN-10: 1-58705-211-3;ISBN-13: 978-1-58705-211-8;
[7] Ethernet Networks: Design, Implementation, Operation, Management. Gilbert Held, 2003 John Wiley & Sons, Ltd, 2003, ISBN: 9780470844762 , ISBN:9780470855645;
[8] https://en.wikipedia.org/wiki/Network_operations_center;
[9] Stanciu, I.R., Molnar-Matei, F., Sisteme de monitorizare și control în timp real, Editura Eurostampa, Timișoara 2013, ISBN 978-606-569-542-9;
[10] Stanciu I.R, Șorândaru C., Instrumentație Virtuală , Automatizări și control cu calculatorul, Editura Eurostampa, ISBN 978-60[6] Network Administrators Survival Guide – Anand Deveriya, Cisco Press 2005, ISBN-10: 1-58705-211-3;ISBN-13: 978-1-58705-211-8;6-32-0107-3, 2015;
[12] H. Ciocârlie; Universul limbajelor de programare Ed, A 2-a rev. – Timișoara: Orizonturi Universitare, 2013;
[13] Axelson J., Serial Port Complet, Lakeview Research, II edition, ISBN-13:978-1931448062, 2007;
[14] Axelson J., USB Port Complet, Lakeview Research, IV edition, ISBN-13:978-1931448086, 2009;
[15] Standard commands for programmable instruments ( SCPI ), vol.1: Syntax and Style, http://sdphc.ucsd.edu/Lab_Equip_Manuals/scpi-99.pdf;
[16] Modicon Modbus reference guide, 1996, PI-MBUS-300 Rev.J;
[17] RS-422 and RS-485 Standards Overview and System Configuration, Application Report, Soltero; Manny; Zhang; Jing; Cokril, Kevin; Kinnaird; Clark, 2010;
[18]Molnar-Matei, F., Sisteme încorporate, notițe de curs, 2018;
[19] L. Darcey, S. Conder, Sams Teach Yourself Android Application Development in 24 Hours, Second Edition, Sams Publishig House, 2012;
[20] D. Wilcher, Learn Electronics with Arduino, Apress Access, 2012;
[21] Arduino Mega, http://www.arduino.cc/en/Main/ArduinoBoardMega2560;
[22] Ciocârlie H.; Universul limbajelor de programare, ediția II a rev. – Timișoara: Orizonturi Universitare, 2013;
[23] Brian W. Evans, Arduino programming notebook, August 2007;
[24] Ingineria Programării, Curs, prof.Naghiu F., 2017;
[25] https://www.arduino.cc/en/Main/ArduinoEthernetShieldV1;
[26] http://www.circuitbasics.com/how-to-set-up-the-dht11-humidity-sensor-on-an-arduino;
[27] https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/overview;
[28] http://roboromania.ro/senzor-tensiune-compatibil-arduino.
Anexa I Programul sistemului de monitorizare și alarmare
#include <Ethernet.h>
#include <EthernetServer.h>
#include <SimpleDHT.h>
#include <SPI.h>
//#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // adresă mac placa retea
byte gateway[] = { 192, 168, 1, 1 }; // adresă gateway rețea
byte subnet[] = { 255, 255, 255, 0 }; // masca de rețea
IPAddress ip(192, 168, 1, 20); // adresa IP
EthernetServer server(80); // server la port 80
int pinDHT11 = A0; // pin senzor temperatură și umiditate
SimpleDHT11 dht11; // declară modelul de senzor către bibliotecă
int analogInput = 1; // pin senzor tensiune
float value = 0.0; //setează valoarea inițiala a tensiunii
int switchPin25 = 25; // pin senzor usă
int stare = 0; //variabilă stare senzor usă
int sensor = 27; // pin senzor mișcare
int val = 0; //variabilă stare senzor miscare
#define ACS A5 // definește pinul senzorului ce măsoara amperajul
#define SENSITIVITY 185 // acs712 model SENSITIVITY in mv
#define SAMPLING 100.0 // setează numărul de eșantioane pentru calculul mediei
void setup()
{
pinMode(sensor, INPUT); // initializare senzor usă
pinMode(switchPin25, INPUT_PULLUP); // se trece pinul senzor usă in mod pullup
pinMode(36, OUTPUT); // setare 4 pini pentru a acționa releele
pinMode(38, OUTPUT);
pinMode(40, OUTPUT);
pinMode(42, OUTPUT);
pinMode(ACS, INPUT); // inițializare senzor de amperaj
pinMode(1, INPUT); // inițializare senzor de tensiune
Serial.begin(9600);
pinMode(4, OUTPUT); // setează pinul 4 in lipsa unui card de memorie
digitalWrite(4, HIGH);
Ethernet.begin(mac, ip); // activează rețeaua ETH
server.begin();
}
void SendOKpage(EthernetClient &client) // setează afișarea paginii web către browser
{
float avgAmps;
avgAmps=0;
for (int i = 0; i < SAMPLING; i++) {
int rawACS = analogRead(ACS);
float mv = (rawACS / 1024.0) * 5000.0;
float rawAmps = (mv – 2500.0) / SENSITIVITY; // calibrează senzorul ampermetru
if (rawAmps >= 0) {
avgAmps += rawAmps;
}
else {
avgAmps -= rawAmps;
}
}
float Amps = avgAmps / SAMPLING;
val = digitalRead(sensor); //senzor mișcare
stare = digitalRead(switchPin25); //senzor ușa
value = analogRead(analogInput) / 42.525; //calculează empiric tensiunea
byte temperature = 0; //setează valoarea inițiala a temperaturii
byte humidity = 0; //setează valoarea inițiala a umiditații
int err = SimpleDHTErrSuccess;
if ((err = dht11.read(pinDHT11, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess)
{
Serial.print("Read DHT11 failed, err="); Serial.println(err);delay(1000);
return;
}
// trimite raspuns http standard
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connnection: close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.println("<head>");
// setează timpul în care se face reîmprospătarea automat la pagină, mărimea acesteia, culoarea de fundal și titlul
client.print("<meta http-equiv=\"refresh\" content=\"5\">");
client.println("<div style='width:340px; height:350px;'>");
client.print ("<body style=background-color:LightGreen>"); //set background
client.println("<title>Monitorizare site telecomunicatii</title>");
client.println("</head>");
// permite afișarea paginii pe alte tipuri de dispozitive mobile
client.println("<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">");
client.println("<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"default\">");
client.println("<meta name=\"viewport\" content=\"width=device-width, user-scalable=no\"/>");
client.println("<body>");
client.println("<h1><center><font size=4>–––STARE SITE RADIO–––</h1>");
client.println("<p><b><font size=4><font color = 'black'>ENERGIE");
client.print("<p><small><font size=2>Tens. Alim.: ");
client.print(value);
client.print("Vcc ");
if (value <8)
{
client.print("<small><font size=2><font color = 'blue'>Bateria suplimentara conectata");
}
if (value >8)
{
}
client.print("<p><font color = 'black'><font size=2>Consum: ");
client.print(Amps*1000);
client.print("mA");
client.print("<p><b><font size=4><font color = 'black'>AMBIENT");
client.print("<p><small><font size=2><p>Temp: ");
client.print(temperature);
client.print("* Celsius");
if (temperature >27)
{
client.print("<small><font size=2><font color = 'blue'> Ventilatoarele in functiune");
}
if (temperature <27)
{
}
client.print("<p><font color = 'black'>Umid: ");
client.print(humidity);
client.print(" %");
//client.print("<p><font color = 'black'>__________________");
client.print("<p><b><font size=4><font color = 'black'>ACCES SITE");
//client.print(stare);
if (stare == LOW)
{
//digitalWrite(40,LOW);
client.print("<p><small><font size=2> Usa Inchisa");
}
if (stare == HIGH)
{
//digitalWrite(40,HIGH);
client.print("<p><small><font size=2><font color = 'red'> Usa Deschisa <font color = 'blue'> A fost pornita alarma sonora");
}
//client.print("<p><font color = 'black'>__________________");
client.print("<p><font size=4><font color = 'black'>DETECT. MISCARE");
//client.print(val);
if (val == HIGH)
{
// digitalWrite(42,HIGH);
client.print("<p><small><font size=2><font color = 'red'> S-a detectat miscare <font color = 'blue'> A fost pornita lumina");
//client.print("<p><font color = 'black'>__________________");
}
if (val == LOW)
{
// digitalWrite(42,LOW);
client.print("<p><small><font size=2> Nu este miscare");
//client.print("<p><font color = 'black'>__________________");
}
client.println("<p></p>");
client.println("</body>");
client.println("</html>");
delay(100);
}
void SendAuthentificationpage(EthernetClient &client)
{
client.println("HTTP/1.1 401 Autorizare Necesara");
client.println("WWW-Authenticate: Basic realm=\"Zona sigura\"");
client.println("Content-Type: text/html");
client.println("Connnection: close");
client.println();
// trimite pagina web
client.println("<!DOCTYPE HTML>");
client.println("<HTML> <HEAD> <TITLE>Error</TITLE>");
client.println(" </HEAD> <BODY><H1>401 Acces Neautorizat.</H1></BODY> </HTML>");
}
char linebuf[80];
int charcount=0;
boolean authentificated=false;
void loop()
{
value = analogRead(analogInput) / 42.525;
stare = digitalRead(switchPin25);
val = digitalRead(sensor);
byte temperature = 0;
byte humidity = 0; //setează valoarea inițială a umiditătii
int err = SimpleDHTErrSuccess;
if ((err = dht11.read(pinDHT11, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess)
{
Serial.print("Read DHT11 failed, err="); Serial.println(err);delay(1000);
return;
}
if (value <8) //compară tensiunea față de pragul de 8 Vcc
{
digitalWrite(36,HIGH);
}
if (value >8)
{
digitalWrite(36,LOW);
}
delay(100);
if (temperature >27) //compară temperatura cu pragul de 26 grade celsius
{
digitalWrite(38,HIGH);
}
if (temperature <27)
{
digitalWrite(38,LOW);
}
delay(100);
if (val == HIGH) //stare senzor PIR
{
digitalWrite(42,HIGH);
}
if (val == LOW)
{
digitalWrite(42,LOW);
}
delay(100);
if (stare == LOW) //stare senzor magnetic ușă
{
digitalWrite(40,LOW);
}
if (stare == HIGH)
{
digitalWrite(40,HIGH);
}
delay(100);
// așteaptă clienți pentru conectare
EthernetClient client = server.available();
if (client) {
memset(linebuf,0,sizeof(linebuf));
charcount=0;
authentificated=false;
// trimite răspuns http
boolean currentLineIsBlank = true;
while (client.connected())
{
if (client.available())
{
char c = client.read();
linebuf[charcount]=c;
if (charcount<sizeof(linebuf)-1) charcount++;
if (c == '\n' && currentLineIsBlank)
{
if (authentificated)
SendOKpage(client); //dacă autentificarea este validă trimite la pagina de afișat
else
SendAuthentificationpage(client); //trimite la pagina de autentificare
break;
}
if (c == '\n')
{
currentLineIsBlank = true;
if (strstr(linebuf,"Authorization: Basic")>0 && strstr(linebuf,"bWFyaXVzLmxhbGVzY3U6cGFzczEyMzQ=")>0) //user si parola in BASE64
authentificated=true;
memset(linebuf,0,sizeof(linebuf));
charcount=0;
}
else if (c != '\r')
{
currentLineIsBlank = false;
}
}
}
// timp browser pt receptie date
delay(200);
// inchide conexiunea
client.stop();
}
Anexa II Index figuri și tabele
Figura 2.1 Escaladarea comunicării 7
Figura 2.2 Managementul Rețelei 8
Tabelul 3.1 Descrierea pinilor portului paralel. Pinii portului paralel 16
Tabelul 3.2 Ordinea liniilor de la adresele indicate 17
Figura 3.1 Conectori de porturi 17
Tabelul 3.3 Liniile portului Serial 18
Tabelul3.4 Structura unui mesaj Modbus cu câmp de adresare 21
Tabelul 3.5 Structură Mesaj Modbus 21
Tabelul 3.6 Moduri de transmisie Modbus 21
Tabelul3.7 Adrese Modbus 22
Tabelul 3.8 Funcții cod Modbus 22
Tabelul 3.9 Structura mesajului funcției de citire a unei ieșiri 23
Tabelul 3.10 Structura raspunsului funcției 01 23
Tabelul 3.11 Structura mesajului funcției 03 23
Figura 3.2 Conexiunea serială cea mai simplă între două sisteme 24
Figura 3.3 Transmisia unui octet în standardul RS 232 24
Figura 3.4 Mod de conectare în standardul RS485 25
Tabelul 3.12 Comenzi GPIB 26
Figura 3.7 Modelul structural al standardului TCP/IP 28
Figura 4.1 Schemă bloc sistem 29
Figura 4.2 Microcontroller Arduino Mega 2560 30
Figura 4.3 Ethernet Shield W5100 32
Figura 4.4 Modul Relee și mod de conectare 33
Figura 4.6 Senzorul DHT și bucla de citire și execuție pentru DHT11 34
Figura 4.7 Bucla de citire și exexuție pentru senzorul de ușă 35
Figura 4.8 Senzor PIR și schemă buclă de program 36
Figura 4.10 Senzor ACS712, diagrama de citire 37
Figura 4.11 Schemă de conectare senzori 37
Figura 4.12 Diagramă de program 38
Figura 4.13 Arhitectura software a sistemului de monitorizare și alarmare 39
Figura 4.14 Schema logică a blocului de inițializare 39
Figura 4.15 Diagrama de secvență a aplicației 40
Figura 4.16 Diagrama de program pentru mesajele afișate…………………………………………………………………………………………..40
Figura 5.1 Machetă sistem și pagină Web 41
Figura 5.3 Detecția umană și mesaje transmise către operatori 42
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT IOAN SLAVICI TIMIȘOARA [309824] (ID: 309824)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
