AUTOMATIZAREA LOCUINȚELOR CIVILE CU AJUTORUL APLICAȚIILOR CLIENT-SERVER PRIN INTERNET [305695]
UNIVERSITATEA HYPERION din BUCURESTI
FACULTATEA de ȘTIINȚE EXACTE ȘI INGINEREȘTI
Program de studii: AUTOMATICĂ ȘI INFORMATICĂ APLICATĂ
PROIECT DE LICENȚĂ
COORDONATOR ȘTIINȚIFIC:
Prof. Univ. Dr. SEVER SPÂNULESCU
ABSOLVENT: [anonimizat] 2019
UNIVERSITATEA HYPERION din BUCURESTI
FACULTATEA de ȘTIINȚE EXACTE ȘI INGINEREȘTI
Program de studii: [anonimizat]:
Prof. Univ. Dr. SEVER SPÂNULESCU
ABSOLVENT: [anonimizat] – 2019
TEMA PROIECTULUI
Să se realizeze o automatizare pentru o [anonimizat] 2650 si Raspberry Pi 3b+. Folosind relee cu bobina la 5V, se vor controla dispozitivele ce sunt alimentate la 12V. Luminile vor avea posibilitate de reglare a intensității, iar dacă o camera deține mai mult de o lumină, acestea vor avea posibilitatea de aprindere împreunată sau separată.
Senzorii necesari sunt:
Senzor de temperatură
Senzor de gaze
Senzor de umiditate
Senzor de lumină
Senzorul de temperatură va afișa in timp real schimbările de temperatură survenite în urma unor evenimente provocate de către utilizator.
[anonimizat].
[anonimizat] / încăperea unde acesta este poziționat.
Senzorul de lumină va fi responsabil de aprinderea luminii de veghe din afara locuinței îndată ce lumina zilei se va diminua.
[anonimizat].js, si se va pune la dispoziție posibilitatea de reconfigurare a controalelor in funcție de camera / etajul localizării dispozitivului de control (tabletă, laptop, telefon, etc.) .
CUPRINS
INTRODUCERE
Într-o eră a [anonimizat] “ajute” [anonimizat].
[anonimizat], [anonimizat] (Internet of Things), sa fie o tehnologie înglobată in multe domenii.
Lumea este într-o continuă expansiune tehnologică și științifică datorită cercetărilor în domeniul sistemelor de control automate. [anonimizat]. [anonimizat], [anonimizat].
Lucrarea de față face referire la evoluția și structura sistemele automate de control și dezvoltarea elementelor esențiale a [anonimizat]: [anonimizat].
CAPITOLUL 1
Automatizările
1.1 [anonimizat] a reduce consumul de energie al automatizărilor. Toate acestea au fost posibile cu integrarea microprocesoarelor sau microcontrolerelor, consumul de energie scăzând cu aproape 90%.. Fiind o ramură a inteligenței artificiale, automatizarea oferă sistemelor capacitatea de a învăța din experiență și de a îmbunătății rezultatele. In ultimii ani, automatizarea s-a extins enorm fiind integrată in telefoane, tablete, drone, mașini, etc. [1]
In același timp cu evoluția tehnologiei, device-urile noastre portabile sau fixe, au căpătat noi funcții inteligente cum ar fi:
Recunoașterea vocală,
Realitatea augmentată,
Funcții inteligente ale camerei,
Recunoaștere facială,
Securitate îmbunătățită a dispozitivului.
Se poate spune că automatizarea a început încă de pe vremea erei de piatra când omul căuta metode de amplificare a puterii musculare prin pârghii sau scripeți. In următoarele sute de ani au fost inventate diverse mașini care funcționau pe baza roților de apa și mai târziu pe baza aburilor.
Motorul cu aburi a jucat un rol foarte important in dezvoltarea mașinilor cu motor, în anul 1784 când se considera începutul Revoluției Industriale și prima aplicare a acestei tehnologii a fost in industria textilă de către Anglia.
Automatizarea cum o cunoaștem in zilele noastre, este definita ca un șir de procese de comenzi programate.
1.2 Definiția Automatizărilor
Automatizarea este ramură tehnica având ca scop înlăturarea operatorului uman prin crearea mașinilor sau instalațiilor automate și independente. Acest țel este atins prin gradul de automatizare folosit. In instalațiile automatizate, intervenția forței de muncă umane rămâne la nivel de supraveghere, aprovizionare cu materiale sau de transport ale produselor finite. Microprocesoarele accelerează procesele de automatizare și in același timp, protejează operatorul uman de activități grele și monotone, totodată ridicând calitatea produselor și productivitatea proceselor cu o reducere semnificativa a costurilor pentru resursele umane folosite. Aceasta este împărțita in mai multe capitole: [1]
Măsurători;
Comandă;
Reglare;
Comunicare;
Deservire;
Implementare. [1]
Măsurătorile au fost dezvoltate pentru a defini fiecare mărime fizica. Acest lucru a dus la crearea unor dispozitive de măsură numite senzori. Senzorii măsoară valori din domeniul aplicabilității folosind semnale standardizate. [1]
Activitățile de comandă și programare din trecut erau realizate folosind legături electrice fizice fixe. In prezent, programele de lucru se realizează folosind instalații care utilizează unul sau mai multe microcontrolere in care se memorează programele.[1]
Reglarea se realizează folosind bucla de reacție indiferent de domeniul de aplicare. Bucla de reacție sau “traductorul” a dus la nenumărate rezolvări rezultate din aplicarea specifică a acesteia. [1]
Necesitatea senzorilor in număr mare, intervine odată cu gradul ridicat al automatizării. Datele prelucrate fiind de mare capacitate, acestea sunt comunicate prin intermediul sistemelor cu interfață Ethernet sau Wireless. [1]
O instalație de automatizare este dotată cu un sistem de observație (vizualizare) care ajută operatorul uman sa vizualizeze toate informațiile necesare funcționării instalației de care este răspunzător (Interfața Om-Mașină). [1]
Implementarea se execută cu ajutorul specialistului in automatizare care lucrează nemijlocit împreună cu constructorul mașinii și a instalației, deoarece acestuia ii sunt necesare pe lângă descrierea funcționarii instalației, schemele instalației, instrumente, flux tehnologic, etc. [1]
1.3 Automatele programabile
Un automat programabil sau PLC ( programable logic controller) este un sistem proiectat pentru utilizarea in mediul industrial. Acesta beneficiază de o memorie programabila pentru stocarea instrucțiunilor utilizate pentru implementarea unor funcții specifice pentru a controla diferite tipuri de mașini sau procese, cu ajutorul intrărilor sau ieșirilor acestuia. [21]
Un AP conține o secvență de cod de program al cărui rol este să ruleze in buclă și sa scaneze porturile de intrare in vederea depistării combinațiilor de semnale care modifică statusul porturilor de ieșire. [21]
PLC-ul poate fi înlocuit și de un computer de tip PC având unele limitări cum ar fi, gabaritul, sistemul de operare de nivel înalt, porturi intrare/ieșire reduse. Un PLC poate fi construit modular și beneficiază de porturi I/O (in/out). [21]
Sistemele cu logica cablată, implementează secvențe rigide de operații fiind exclusă posibilitatea de adaptare la stări noi, iar schimbarea logicii de control necesită refacerea cablării și schimbarea configurației hard. AP-urile algoritmice evoluează in timp pe baza instrucțiunilor memorate in chipul EPROM iar programarea se face la nivel de cod. Cele vectoriale folosesc programe specializate pentru a realiza programarea, iar pentru realizarea unor procese de amploare, se pot folosi aplicații complexe create cu limbaj de programare de nivel înalt, modulare sau orientate pe obiecte. [21]
Raspberry Pi, poate fi numit și mini-calculator sau platformă cu microprocesor. Acesta se prezintă sub forma unei plăcute de circuit imprimat pe care vei descoperi un microprocesor similar celui dintr-un laptop, o memorie de 1GB și un procesor grafic cu ieșire HDMI și RCA (integrat in mufa audio). Chiar dacă dimensiunile sale sunt cat ale unui card de credit, acesta poate îndeplini aproape orice sarcina pe care o îndeplinește un calculator obișnuit, sistemul de operare fiind bazat pe Linux sau Windows. [21]
In ciuda dimensiunilor sale, Raspberry oferă posibilitatea realizării de conexiuni hardware directe cu alte dispozitive (senzori de umiditate, temperatură, lumină, relee, butoane, drivere de motoare, presiune atmosferică, etc.) prin intermediul pinilor GPIO. Aceștia sunt expuși in lateralul plăcii și pot fi controlați de Raspberry prin programe scrise in orice limbaj de programare care rulează pe acesta. [21]
Datorita dimensiunilor și preturilor scăzute de achiziție raportat la performantele oferite, Raspberry prezinta alegerea perfecta pentru multe proiecte din diverse domenii cum ar fi robotica, servere web, stații meteo, etc. [21]
Pentru a folosi un dispozitiv de ieșire pentru redare video, Raspberry este echipat cu o conexiune HDMI și RCA, putând conecta orice tip de monitor pană la o rezoluție de 1920×1080 (Full HD), procesorul video fiind independent de procesorul principal. [21]
In cele din urmă pentru a deveni operațional, Raspberry necesită o sursă de tensiune de 5V și un curent de minim 700mA, acest lucru fiind posibil prin mufa dedicata micro-USB. Sursa de alimentare reprezintă un factor important in funcționarea lui și trebuie aleasă cu atenție. Dacă Raspberry nu primește minimul necesar pentru funcționare, acesta poate avea rezultate neplăcute ca resetarea sistemului, pierderi de date, distrugerea cardului sau chiar a plăcii. [21]
CAPITOLUL 2
Descrierea Componentelor
2.1 Considerații generale
Raspberry, este unul dintre cele mai folosite microcontrolere in dezvoltarea proiectelor cum ar fi dronele, automatizări diverse, sisteme de securitate, etc., datorita capabilităților sale de procesare grafica și stabilitate. Ca sistem de operare pentru acesta, putem alege intre următoarele:
Raspbian care este bazat pe o distribuție Debian si este alegerea cea mai potrivita in ceea ce privește utilizatorul de rând. [8]
OSMC (Open Source Media Center) care este, așa cum spune și numele, un server media center care permite folosirea Raspberry pentru a reda conținuturi media. [8]
OpenELEC (Open Embedded Linux Entertainment Center) este o alternativa la OSMC daca acesta nu îndeplinește dorințele utilizatorului. [8]
Windows IoT Core este special creat pentru Raspberry pentru programatorii care doresc sa creeze prototipuri de IoT folosind Raspberry Pi și Windows 10. [8]
RetroPie înglobează jocurile de odinioară găsite in jocurile pe televizor și permite redarea lor in epoca moderna a vitezei de procesare și ecrane LCD/OLED. [8]
2.2 Structura Raspberry
Raspberry este fabricat încă din 2006 și erau bazate pe un microcontroler ATmega644. Reprezentatul Eben Upton, a pus bazele unui computer inspirațional pentru copii, cu ajutorul unui grup de profesori și academicieni pasionați. Inspirația a venit din trecut, de la Chris Curry și Herman Hauser fondatorii Acorn care mai târziu au devenit cunoscuți datorita BBC Micro, acesta fiind cel mai mic computer existent la acea vreme, având dimensiunile unui stick USB. [2]
SBC-ul Raspberry (Single-board computer), are dimensiunile unui card de credit și este mai lent decât un laptop sau PC, însă poate oferi acces la majoritatea aplicațiilor cum ar fi conectare la internet, editare text, redare video/audio și chiar jocuri, totul la un consum redus de energie. Porturile GPIO aduc o caracteristică specială pe care computerele nu o folosesc, oferind posibilitatea de a conecta diverse componente ca senzori, butoane, LCD, relee, etc. [2]
Raspberry Pi 3b+ este compus din următoarele componente de bază:
modul wireless;
conector display (DSI);
conectori GPIO;
microcontroler BCM2837B;
conector micro-usb alimentare;
conector HDMI;
controler USB și RJ45;
porturi USB;
conector RJ45;
conector audio/video;
conector cameră CSI;
conectori POE. [22]
Fig. 2.1 – Placa de dezvoltare Raspberry Pi [19]
2.3 Structura Arduino
Arduino și-a făcut apariția in 2005 ca un proiect studențesc la Institutul de Interacțiune a Designului din Ivrea, Italia și a înlocuit o plăcuță de dezvoltare numita „Basic Stamp”, considerată prea costisitoare pentru studenti. Numele acestuia ii provine de la un bar local unde obișnuiau să se întâlnească o parte din fondatori. [6]
Spre deosebire de Raspberry Pi, acesta este compus dintr-un microcontroler Atmel AVR de 8 – 16 sau 32 de biți care facilitează programarea si incorporarea cu alte circuite. La fel ca Raspberry Pi, acesta dispune de conectori I/O (in-out), care permit utilizatorilor sa conecteze diferite module (shield-uri) sau senzori care comunică prin pinii digitali sau analogici dar și prin magistrala seriala I2C putând fi conectate mai multe module in paralel. [7]
Programarea lui se face prin conexiune seriala iar implementarea diferă in funcție de hardware-ul utilizat (Arduino Uno, Arduino Mega, Arduino Leonard, etc.). Din motivul deținerii unei plăci Arduino Mega 2560, am hotărât sa îl integrez in acest proiect pentru achiziția de date de la o parte din senzori.
Elementele din care Arduino Mega 2560 este alcătuit sunt următoarele:
1. Port USB alimentare/programare;
2. Mufa alimentare 9-12VDC;
3. Microcontroler ATMEGA 2560;
4. Controler USB;
5. Buton resetare;
6. Pini ISCP ;
7. Regulator 5V;
8. Pini I2C;
9. Pini I/O Digitali / PWM;
10. Pini comunicare serială / UART;
11. Pini I/O Digitali;
12. Pini I/O Analog;
13. Pini iesire 3.3V / 5V. [11]
Fig. 2.2 – Placa de dezvoltare Arduino Mega 2560 [20]
Arduino este însă preferat de către automatiști având o interfața simplă, iar programarea lui se face folosind orice limbaj atâta timp cat compilatorul este capabil sa producă cod mașină binar. Costurile sale sunt mici iar instrucțiunile sale sunt scrise in memoria integrată fată de Raspberry care necesita un card microSD pentru a memora instrucțiunile sau pachetele de programe folosite.
2.3 Relee magnetice
Releul este un dispozitiv electromecanic, care este alcătuit dintr-o bobină cu conductori izolați, formată dintr-un miez metalic cu unul sau mai multe contacte. In timp ce acesta este alimentat cu o tensiune la bornele bobinei, curentul care străbate bobina va genera un câmp magnetic care mișcă armatura închizând contactele. Se ajunge la starea inițială și dispare orice câmp magnetic in momentul in care tensiunea este întreruptă, contactele revenind la starea initiala.[16]
Datorita construcției și faptului ca, aceste dispozitive sunt cu acționare mecanica, numărul de acționări este limitat, lucru care atrage după sine întreținerea frecventă a acestora sau chiar înlocuirea lor. Numărul mare de relee îngreunează procesul de întreținere, fapt care a dus la utilizarea automatelor programabile pe o scara larga. [16]
Automatele programabile au fost introduse la începutul anilor 60. Motivul principal pentru proiectarea unui asemenea dispozitiv a fost eliminarea costurilor mari aferente înlocuirii sistemelor de control bazate pe relee. [16]
Fig. 2.3 – Relee Electromagnetice [30]
2.4 Senzorul si tipuri de senzori.
Senzorul reprezintă o componenta primară a unui sistem, capabilă de a prelua informații despre mărimi fizice din domeniul folosit și sa le transmită către un receptor pentru a fi prelucrat, prin intermediul unui canal de comunicație. [4]
Noțiunile de traductor și senzor au fost considerate mult timp ca fiind similare iar in ultimii ani au căpătat semnificații diferite.
Traductorul sau „transducere” cum era numit in latina, este dispozitivul care convertește o mărime a unui sistem într-o formă de semnal destinata unui alt sistem fiind un element funcțional tipic component al sistemelor automate, care are rolul de a furniza echipamentelor de conducere, informații necesare cu privire la procesul automatizat. Elementul sensibil al unui traductor reprezintă componenta primară a acestuia, capabilă sa seziseze prezența unei mărimi fizice sau chimice de interes și sa o transmită prin intermediul unui element de legătura spre blocul de adaptare al traductorului. In concluzie senzorii pot fi considerați ca parte a traductoarelor. [4]
Senzorii pot fi clasați in funcție de natura elementelor detectoare, din punct de vedere energetic fiind de tip pasiv sau activ. In cazul senzorilor pasivi, semnalul electric este produs cu ajutorul unor surse de energie externe care pun in evidenta variații ale unor parametrii electrici de circuit determinate de mărimile de intrare, cei activi generând la ieșire semnale electrice care au asociată o mărime activă preluată de la mărimile de intrare și care nu necesita surse externe de energie. Aceștia pot fi senzori de temperatură, tactili, acustici, vizuali, olfactivi, discreți sau integrați. [4]
2.5 Senzorul si tipuri de senzori.
CAPITOLUL 3
MICROCONTROLERE
3.1 Generalități
Microcontrolerul este o structură electronică care permite controlul unui proces sau interacțiune cu mediul extern fără necesitatea factorului uman. Primele microcontrolere au fost realizate cu ajutorul componentelor discrete sau electromecanice (relee). Acest tip de circuit integrează un microcip si alte dispozitive periferice într-un singur chip si ațintește costuri reduse de producție si energie electrica. Diferența intre microprocesor si microcontroler fiind aceea ca microcontrolerul integrează memoria de program, de date si interfețe de intrare si ieșire. [9]
Apariția microcontrolerelor a dus la o reducere considerabila a costurilor in ceea ce privește consumul de energie, dimensiunilor si cresterea fiabilitatii. Frecventa de pana la 4 kHz, permite consumul infim de energie de ordinul microwaților si au capacitatea de a păstra funcționalitatea in timp ce așteaptă un eveniment ca apăsarea unui buton sau o alta întrerupere. Ceasul procesorului pe timp de stand-by, poate consuma doar câțiva nanowați. [9]
Microcontrolerele sunt componente compacte care cuprind o serie de elemente necesare pentru funcționare si pentru memorarea instrucțiunilor, dar si executarea lor. Elementele de baza din orice microcontroler sunt următoarele: [9]
Unitatea centrala;
Generatorul de tact căruia i se adaugă un cuarț extern;
Memoria volatila RAM;
Memoria nevolatila ROM/EPROM;
Dispozitivele I/O seriale si paralele;
Controler de întreruperi, DMA, numărător/temporizator, convertoare A-D si D-A, etc.;
Periferice. [10]
Un microcontroler se poate considera a fi un sistem autonom cu procesor cu toate elementele necesare integrate (memorie, periferice) si poate fi utilizat ca sistem incorporat (embeded).
Releele, solenoidele si afișajele cu cristale lichide mici sau personalizate, senzorii pentru date cum ar fi nivelul luminii, temperatura, umiditatea, etc., sau alte dispozitive de intrare sau de ieșire sunt aparate tipice care pot sa nu prezinte dispozitive de interacțiune umana. [9]
3.2 Atmel AVR
Aceasta familie AVR de la Atmel, este construita din microcontrolere cu arhitectura pe 8 biți si un set de instrucțiuni redus. Aceasta a fost conceputa si introdusa pe piață încă din 1996 fiind printre primele controlere care foloseau o memorie Flash in locul memoriilor OTPROM sau EPROM folosite in competiție. [18]
Memoriile Flash sunt integrate in același chip nemaifiind nevoie de memorie externa, permițând programului format din instrucțiuni pe 16 biți sa fie stocat direct in memoria Flash nevolatila. [18]
Un avantaj al acestei familii de microcontrolere este acela ca arhitectura AVR este optimizata pentru execuția de cod C compilat. [18]
Modul cel mai simplu de comunicare dintre microcontroler si mediul extern, este prin folosirea celor patru porturi digitale numite PORTA, PORTB, PORTC si PORTD, acestea având corespondenta cu mediul extern prin pinii circuitului integrat. Având in vedere ca arhitectura AVR este pe 8 biți iar porturile au corespondent registrele interne, acestea au la rândul cate 8 pini pentru fiecare ieșire : pin 1 – 8 pentru PORTB, pin 14 – 20 pentru PORTD, etc. [18]
Fiind bidirecționale, toate cele patru porturi pot transmite date către exterior sau din exterior către chip, fiecare bit putând fi controlat independent si folosit ca intrare sau ieșire digitala. [18]
3.3 Ansamblul Hardware – blocuri principale, timere, watchdog
3.3.1 Întreruperi
Timpul de răspuns previzibil si nu neapărat rapid, este unul dintre caracteristicile cele mai importante ale unui microcontroler deoarece trebuie sa furnizeze răspuns in timp real la evenimentele sistemului incorporat pe care îl controlează. Atunci când sunt semnalate anumite evenimente, sistemul de întrerupere poate trimite un semnal unității centrale, sa suspende procesare instrucțiunilor curente si sa înceapă o rutina de întrerupere a serviciului, care va efectua orice prelucrare necesara înainte de a reveni la procesarea instrucțiunilor inițiale.
Sursele de întrerupere pot fi, o apăsare de buton/tasta, realizarea unei conversii analog-digitala, o schimbare de nivel logic pe o intrare. Dacă consumul de energie este important in cazul dispozitivelor dotate cu o baterie, întreruperile pot scoate din starea de stand-by un microcontroler unde procesorul este oprit pana la semnalul unui eveniment periferic. [23]
3.3.2 Programele
De obicei, microcontrolerele au cerințe minime pentru memorie si lungimea programului, fără sistem de operare si complexitate scăzută a software-ului. [23]
In general, microcontrolerele trebuie sa aibă memorie integrată in chip, deoarece costurile pentru adăugarea memoriei externe, ar fi mult mai ridicate. Utilizarea dispozitivelor programabile pe un microcontroler, permite modificarea sau actualizarea software-ului la locație (pe teren) sau poate permite aducerea de modificări la produsele care au fost asamblate si nu au fost încă livrate, făcând memoria programabila ideala pentru a reduce timpul necesar implementării unui produs nou. [23]
Fig. 3.1 – Schema simplificata a unui microcontroler [10]
CAPITOLUL 4
PLATFORMA EXPERIMENTALĂ
4.1 Definirea funcțiilor SoC Raspberry Pi 3b+
Cu ajutorul unui SoC (sistem on Chip) Raspberry Pi 3b+, am pus bazele comunicării intre client si server folosind Node.js pentru hostare locala.
Am decis sa utilizez Raspberry Pi 3b+ pentru performantele superioare modelului anterior,
De-a lungul timpului, au existat mai multe modele fiecare ațintite nevoilor utilizatorilor, însă cel mai popular si mai recunoscut dintre ele fiind Raspberry Pi 3b si 3b+, datorita specificațiilor puternice si interfețelor puse la dispoziție.
Fig. 4.1 Comparatie intre versiunea 3B+ si 3B [24]
Platforma Raspberry Pi 3b+ este realizată foarte compact, cu dimensiuni reduse, toate componentele și dispozitivele electronice fiind dispuse corespunzător și eficient pentru un acces facil la blocurile electronice componente.
Structura sa conține următoarea configurație a pinilor:
Pini neconfigurabili si voltaje
doi pini cu tensiunea de 5V
doi pini cu tensiunea de 3,3V
opt pini de ground (masa)
Ieșiri
pinii GPIO (general purpose input output) poate fi configurat sa aibă o tensiune de 3.3V (high) sau 0V (low)
Intrări
orice pin poate fi setat ca intrare fără folosirea rezistentelor externe, Raspberry fiind echipat cu rezistente interne configurabile din software, tip pull-up si pull-down
Fig. 4.2 Diagrama pinilor Raspberry Pi 3b+
Din nefericire însă, pentru a conecta mai mulți senzori sau consumatori, este recomandata folosirea unei surse de curent externe deoarece aceste microcontrolere nu permit folosirea a mai mult de 16mA / pin.
Plăcii de dezvoltare, i-am configurat opt canale de ieșire, care sunt interfațate cu microrelee electromagnetice având bobina alimentată la 5Vcc. Contactele acestora pot asigura un curent maxim de 10A. Doar cu un releu se poate comanda o putere de maxim 2Kw măsurat la tensiunea de ~220V.
Funcțiile descrise în acest paragraf sunt realizate de către blocurile funcționale reprezentate în schema din figura 4.3.
Fig. 4.3 – Schema bloc a proiectului
4.2 Simulare schema electronica
4.2.1 Schema electronica
Pentru realizarea schemei electronice, am utilizat programul MultiSim. Aceasta conține modulul de expansiune GPIO, microcontrolerul, portul HDMI, intrare 5V, porturile USB si Ethernet.
Conceperea schemei electronice in MultiSim a fost realizată urmărind specificațiile schemei bloc din figura de mai sus, figura 4.3.
Se deschide programul propriu-zis, MultiSim și se selectează din meniul File opțiunea “New Design”.
Fig.4.4 – MultiSim 11.0
Fig 4.5 – Creare planșă noua
După urmarea pașilor de mai sus, se poate utiliza funcția click-dreapta pentru afișarea meniului rapid de adăugare a pieselor pe planșă.
Fig. 4.6 – Popularea planșei
In (fig. 4.7) se pot alege componentele pe care dorim să le folosim in realizarea schemei electronice.
Fig.4.7– Selectarea componentelor
Fig. 4.8, reprezintă schema mufei tip USB-mini, responsabila de alimentarea plăcii de dezvoltare Raspberry Pi
Fig. 4.8 – USB-mini, tensiune de intrare 5V
Fig. 4.9 – Portul HDMI
In Fig. 4.9 este reprezentat portul HDMI, care ne va ajuta sa redam imaginea pe orice monitor sau display care are interfața HDMI.
Regăsim extensia GPIO pentru conectarea diferiților senzori sau dispozitivele cărora dorim sa le transmitem semnale digitale in Fig. 4.10
Fig. 4.8 – Extensie GPIO
Fig. 4.10 – extensie GPIO
In Fig. 4.11 se regăsește schema cu microcontrolerul BCM2837B si anume procesorul plăcii noastre de dezvoltare cu toate ieșirile GPIO
Fig. 4.11 – microcontroler BCM2837B
Fig. 4.12 – portul Ethernet & USB
4.3 Pregatire Arduino
Pentru Arduino-MEGA2560, lucrurile nu stau chiar atât de diferit de Raspberry Pi, însă pe acesta se pot încărca doar instrucțiuni din limbajul C++. Vom folosi Arduino pentru conectarea senzorului de temperatură DHT11. Pentru aceasta vom folosi mediul integrat de programare Arduino IDE, care este livrat sub licență open-source.
Fig. 4.13 Interfața Arduino IDE
In Arduino IDE, selectam tipul plăcii folosite mergând la meniul Tools > Board si alegem din lista placa pe care o utilizam.
Fig. 4.14. Selectarea tipului de microcontroler
Pentru selectarea portului de comunicare, prin aceiași pași ca in Fig. 4.14, se selectează Port > COM X. Daca computerul folosit pentru programare are mai multe dispozitive conectate si nu suntem siguri care este microcontrolerul nostru, vom merge in Device Manager > Universal Serial Bus controllers > Arduino XX. Exact ca in Fig. 4.15.
Fig. 4.15. Device Manager
Pentru ca Arduino sa comunice cu Raspberry Pi sau cu Pc-ul pe portul serial, se va încărca următorul program: [17]
In acest moment, daca deschidem Serial Monitor din Arduino IDE din Raspberry sau PC, com avea un flux de date ca cel din Fig. 4.16.
Fig. 4.16. Monitorizare Seriala Arduino IDE
Pentru programarea Arduino direct din interfața Raspberry Pi, pașii sunt aproximativ identici cu cei folosiți in programarea lui pe un PC.
4.4 Pregatire Raspberry Pi
Interfața grafica se va face folosind Node-Red, o aplicație open source si freeware. Cu ajutorul acesteia se vor trasa conexiunile intre componentele folosite și elementele de control ale acestora. Vom avea nevoie sa facem upgrade la sistemul de operare pentru a-și descărca ultimele versiuni disponibile pentru pachetele folosite dar si instalarea nodejs care va fi serverul nostru pentru hostarea node-red. [25]
Pașii necesari instalării sistemului de operare pe Raspberry Pi 3b+ sunt următorii:
se va descărca imaginea cu sistemul de operare pe dispozitivul folosit pc/mac de pe https://www.raspberrypi.org/downloads/raspbian/[25]
cu un adaptor microSD – SD , se va verifica daca, cardul (minim 8GB) este funcțional.
se descarcă programul pentru scrierea imaginilor de tip ISO pe card, de pe https://etcher.io/ iar după instalarea lui, îl putem accesa. Pagina principala trebuie sa arate ca in fig. 4.17.
click pe „Select image” și indicați calea descărcării fișierului Raspbian.zip.
click pe „Select drive” și specificați cardul de memorie ca locație de scriere.
click pe „Flash!” pentru a scrie imaginea pe cardul SD.
după finalizarea procesului de scriere a imaginii pe cardul de memorie, acesta se poate îndepărta din pc/mac.
Fig. 4.17. interfața de pornire Etcher [25]
Configurarea Raspberry Pi după pregătirea cardului SD.
Introduceți cardul MicroSD in slotul de pe Raspberry.
Conectați o tastatura USB.
Conectați cablul HDMI.
Conectați cablul de internet (daca nu folosiți conexiunea WI-FI).
Conectați alimentatorul la micro-USB.
In acest moment Raspberry ar trebui sa intre in secvența de bootare. [25]
Cand Raspberry va porni, va cere numele de utilizator si parola, care predefinit de sistemul de operare, sunt următoarele:
Utilizator : pi
Parola: raspberry
Pasul acesta este doar pentru utilizatorii care au optat sa folosească conexiunea wi-fi in locul celei pe cablu si este adresata doar utilizatorilor de Raspberry 3, cu wi-fi integrat. [25]
Se executa următoarea comanda pentru a scana rețelele wireless disponibile:
pi@raspberrypi:~ $ sudo iwlist wlan0 scan
Pasul de mai sus va lista toate rețelele wireless disponibile si totodată va confirma ca, modulul wireless este funcțional. Însă pentru conectarea la una din rețelele găsite, va trebui sa creăm un fișier cu procesorul de text integrat „vi” sau „nano” in felul următor:
pi@raspberrypi:~ $ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
(Pentru ca instrucțiunile sa funcționeze, fișierul va trebui creat in folderul „root” in care vom ajunge folosind comanda: pi@raspberrypi:~ $ cd $) [25]
Îndată ce editorul de text s-a deschis, putem începe sa scriem instrucțiunile de conectare la rețeaua wireless aleasa de noi.
network={
ssid="wifiName"
psk="wifiPassword"
}
Pentru a confirma modificările efectuate in fișier, se apasă combinația de taste „Ctrl+x” urmat de „y” pentru a accepta si apoi „Enter” pentru confirmare.
Resetați raspberry folosind pi@raspberrypi:~ $ sudo reboot [25]
După resetare, ne logăm din nou cu credențialele de mai sus si verificam daca WI-FI-ul este conectat si funcționează cu comanda pi@raspberrypi:~ $ ifconfig wlan0. Daca totul este in regula si daca i-a fost alocata adresa de IP, Raspberry ar trebui sa afișeze ceva asemănător cu asta inet addr:192.168.43.111. [25]
Adresa IP de mai sus, va fi folosita pentru conexiunea prin SSH. Acesta permite conectarea la Raspberry fara a folosi o tastatura si monitor. Însă pentru a putea fi capabil de conectare, Raspberry trebuie sa aiba SSH activat.
Pentru activare, vom folosi comanda pi@raspberrypi:~ $ sudo raspi-config care va deschide un meniu asemănător cu cel din Fig. 4.18.
Fig. 4.18. Meniu principal configurare [25]
Selectam „Interfacing Options” după care din noua lista, alegem SSH cu tasta „Enter”, fereastra pe care o închidem selectând „<Yes>”. Navigând din tasta „jos”, selectam „<Finish>” pentru a părăsi meniul si a reporni Raspberry. Lucru pe care îl facem confirmând cu „<Yes>” atunci când apare opțiunea.
După ce s-au urmat pașii de mai sus, putem instala clientul SSH preferat, in cazul nostru Putty si se completează câmpul „Host Name” cu portul 22 ca in Fig. 4.19.
Fig. 4.19. Interfața Putty
Continuarea pașilor de mai sus se va face prin upgrade-ul sistemului de operare si a pachetelor folosite de acesta. Folosind următoarele comenzi, distribuția de linux Raspberian, se va auto-updata și upgrada. [25]
pi@raspberrypi:~ $ sudo apt-get update
pi@raspberrypi:~ $ sudo apt-get dist-upgrade
In cele ce urmează vom descărca ultima versiune de nodejs folosind următoarea comandă.
pi@raspberrypi:~ $ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash –
Verificarea versiunii si daca s-a efectuat instalarea, se va folosi comanda
pi@raspberrypi:~ $ node -v
4.5 Execuția platformei de simulare
4.5.1 Materiale folosite
Pentru realizarea proiectului fizic, am ales sa creez o macheta ce va simula încăperile unei locuințe.
Materialul folosit este un placaj de 2150 x 1800 x 4 mm
Fig. 4.20 – Măsurători placaj
Fig. 4.21 – Realizarea Machetei
Dimensiunile au fost debitate folosind un polizor unghiular, îmbinările au fost întărite folosind rigle de lemn cu dimensiunea 10 x 10 mm, iar adezivul folosit este lipici PVA.
4.5.2 Asamblarea fizică
Deoarece Raspberry Pi 3b+ suporta un consum de pana la 16mA pe fiecare pin, iar Arduino pană la 40mA pe intrare/ieșire, am decis sa folosesc o sursa externa cu răcire activa pentru a evita eventualele neplăceri cum ar fi supraîncălzirea microcontrolerului sau îngreunarea rulării sistemului.
Sursa aleasa are caracteristicile următoare:
5V 30A
12V 28A
5V SB 3A
Pentru ca sistemul sa funcționeze fără a porni sursa, acesta a fost atașat ieșirii de 5V SB (Stand-by), la care au fost adăugate doua porturi USB si leduri indicatoare de tensiune, împreună cu un voltmetru digital pentru a monitoriza tensiunea de ieșire.
Cablurile standard au fost îndepărtate de pe circuitul imprimat si au fost adăugate doua cabluri tip MYYM 2*0.75, pentru ieșirea de 5V respectiv 12V. pe ieșirea de 5V, am adăugat cleme rapide pentru a putea ramifica tensiunea in funcție de nevoi, prima alimentata fiind placa de teste tip Breadboard, ca in fig. 4.22. In acest moment, întreaga latura indicata cu linie roșie si albastra, are tensiunea de 5V
+ 5V
– 5V
Fig. 4.22 – Alimentare breadboard
Întrucât placa de dezvoltare Raspberry Pi nu vine cu o extensie a pinilor GPIO, am încercat folosirea unui cablu IDE tip panglica de la vechile PC-uri, care s-a dovedit a nu fi compatibila cu Raspberry Pi, deși conține același număr de ieșiri tip mama, aceștia au in conector, mici ansambluri de punți conductoare intre alți pini ale aceluiași conector. In final am achiziționat o panglica pentru prelungirea acestora, însă aceasta doar transfera ieșirile pe o distanta de 20cm fără a putea folosi ieșirile pe ambele nivele ale machetei.
Pentru a duplica ieșirile, am folosit o placa cu cablaj de test pe care am cositorit pini tip header si fire tip Dupont mamă-mamă pentru conexiunea dintre GPIO si pini. Pentru folosirea ulterioară a cablajului imprimat de test, recomand a se folosi o placă calitativă deoarece cele cu cost redus, au tendința de a comunica intre cele doua nivele prin găuri la introducerea pinilor.
Iluminatul interior
Pentru realizarea iluminatului din încăperi, am utilizat leduri albe de 5 mm, iar orificiile au fost efectuate cu ajutorul unui burghiu de lemn cu diametrul de 5 mm.
Un led transparent cu lumina alba, are intre 12000 – 15000 mcd (milicandela) si folosind formula de calcul pentru a transforma in lumeni, fluxul luminos al acestuia este de doar 1.78 lm (lumeni). [12]
Φv(lm) = Iv(mcd) × Ω(sr) / 1000 [12]
Deoarece lumina produsa de led este sub forma de fascicul sub un unghi de 25°, am ales sa folosesc hârtie abraziva pentru a mătui suprafata si a mări unghiul luminos. Consumul ledului prezentat mai sus, este de 10mA, așa ca îl putem conecta direct la ieșirile GPIO ale Raspberry.
Temperatura și umiditate
Pentru aflarea acestor valori, am optat pentru un senzor DHT11 deoarece acesta este un senzor de temperatură si umiditate complex cu ieșire digitala calibrata a semnalului. Prin folosirea tehnicii de achiziții de date, acest senzor garantează stabilitate pe termen lung si fiabilitate ridicata. [14]
Fig. 4.23 – Tabel simplificat cu specificațiile senzorului DHT11 [14]
Fig. 4.24 – Caracteristici electronice [14]
Aplicațiile standard folosesc configurația din Fig. 4.25 pentru comunicarea cu senzorul DHT11.
Fig. 4.25 – Schema bloc a senzorului DHT11 [14]
Folosirea acestui senzor necesita asigurarea unei tensiuni de 3.3 – 5V, iar daca lungimea cablului folosit pentru transmiterea datelor nu depășește 20ml, se recomanda folosirea unui rezistor de 5K. Atunci când microcontrolerul trimite semnal de pornire, DHT11 trece din modul stand-by in stadiul de funcționare. Senzorul trimite către microcontroler răspuns de date de 40biti care cuprind informații despre temperatura si umiditate. Folosind Arduino in cazul nostru, acesta a fost programat sa colecteze aceste date. Secvența de pornire explicata mai sus, se repeta ori de cate ori are loc evenimentul de achiziție a datelor de către MCU (microcontroler). [14]
Fig. 4.26 – Fluxul de semnal intre microcontroler si senzor [14]
Protecție împotriva scurgerilor de gaz
Când vine vorba de siguranța noastră sau a locuinței, gazul reprezintă un potențial pericol atunci când nu este supravegheat sau când instalația nu mai respecta parametrii inițiali. De aceea, senzorii de gaz metan sunt montați in casele noastre încă din 2009. Pentru a prevenii eventualele dezastre, senzorii de gaze simt prezenta gazului metan si trimit un semnal la o electrovalva legata pe conducta principala imediat după contor.
Unul dintre aspectele care mi-au atras însă atenția, a fost că gazul, după oprirea electrovalvei, rămâne in încăpere. Pentru asta am studiat un pic motoarele brushless si am aflat ca, acestea lucrează cu ajutorul câmpului magnetic si nu cu perii care generează scânteie.
Senzorul folosit MQ2, lucrează pe baza de staniu pregătit într-un cuptor reverberat la 1200-1300°C care capătă formula SnO2, iar majoritatea aburilor inflamabili generează conductivitate in aerul liber, declanșându-l. [26]
Motivul pentru care am considerat acest senzor potrivit aplicației din acest proiect, sunt in general caracteristicile care îndeplinesc nevoile oricărui domeniu fie el domestic, industrial sau portabil. [26]
Fig. 4.27 – Dimensiuni senzor
Senzorul poate fi utilizat într-un circuit simplu si unul dintre avantajele folosirii lui, este faptul ca intervalul tensiunii de lucru se pretează la valorile de ieșire al plăcilor de dezvoltare folosite in acest proiect si anume 5V ± 0.1V.
Fig. 4.28 – Circuit de baza pentru MQ2
Pentru ca acesta sa funcționeze cu Arduino, sunt o serie de valori care trebuiesc extrase mai întâi. Folosind codul de mai jos, extragem valoarea R0 care reprezintă rezistenta aerului din jurul celulei de staniu.
void setup() {
Serial.begin(9600);
}
void loop() {
float sensor_volt;
float RS_air; // Get the value of RS via in a clear air
float R0; // Get the value of R0 via in H2
float sensorValue;
for(int x = 0 ; x < 100 ; x++)
{ sensorValue = sensorValue + analogRead(A0); }
sensorValue = sensorValue/100.0;
sensor_volt = sensorValue/1024*5.0;
RS_air = (5.0-sensor_volt)/sensor_volt; // omit * RL
R0 = RS_air/9.8; // The ratio of RS/R0 is 9.8 in a clear air from Graph (Found using WebPlotDigitizer)
Serial.print("sensor_volt = ");
Serial.print(sensor_volt);
Serial.println("V");
Serial.print("R0 = ");
Serial.println(R0);
delay(1000); }
Îndată ce am încărcat acest program in memoria plăcii Arduino, ar trebui sa avem un rezultat ca cel din Fig. 4.29, in cazul nostru valoarea rezistentei R0 fiind de 0.10 Mohm
Fig. 4.29 – Citirea valorii R0
Pentru ca rezultatul de mai sus sa ne fie util, trebuie sa încărcam un nou program pe baza valorii rezultate din primul, modificând valoarea R0 cu valoarea citita.
void setup() {
Serial.begin(9600);}
void loop() {
float sensor_volt;
float RS_gas; // Get value of RS in a GAS
float ratio; // Get ratio RS_GAS/RS_air
int sensorValue = analogRead(A0);
sensor_volt=(float)sensorValue/1024*5.0;
RS_gas = (5.0-sensor_volt)/sensor_volt; // omit * RL
ratio = RS_gas/-0.10; // ratio = RS/R0
Serial.print("sensor_volt = ");
Serial.println(sensor_volt);
Serial.print("RS_ratio = ");
Serial.println(RS_gas);
Serial.print("Rs/R0 = ");
Serial.println(ratio);
Serial.print("\n\n");
delay(1000); }
Rezultatul programului de mai sus, reprezintă concentrația gazului in încăpere. In cazul de fata, valoarea măsurată este de 343,10 ppm. Unde ppm reprezintă cantitatea de particule de CO2 dintr-un milion. Asta înseamnă ca daca am avea un milion de particule, 334.10 ar fi de gaz metan, iar celelalte 999,656.9, alte gaze. Acest rezultat se afla in Fig. 4.30.
Fig. 4.30 – Măsurare concentrație gaz metan
Elementul Peltier
Deoarece implementarea încălzirii într-o macheta cu dimensiunile prezentate la punctul 4.5.1 nu permit instalarea unei soluții de încălzire de dimensiuni mari, am utilizat un element Peltier pentru a simula încălzirea unui radiator. Datorita rezultatelor rapide, face ca elementul Peltier sa fie cea mai potrivita alegere in proiectarea unui sistem de încălzire de mici dimensiuni.
Acesta a fost descoperit in 1834 si poate fi enunțat sub forma următoare:
Un curent electric care străbate punctul de contact dintre două fire sudate cauzează apariția unei diferențe de temperatură între cele două puncte sudate. [29]
Fluxul de căldură de la un capăt la celălalt al firelor (QPeltier) depinde de curentul purtătorilor de sarcină (j) precum și de coeficientul Peltier (ab) după cum urmează:
QPeltier πabqj .
Coeficientul Peltier al joncțiunii, ab, este definit ca fiind egal cu diferența coeficienților materialelor constituente (ab = a- b). Astfel, direcția de curgere a căldurii printr-o joncțiune depinde atât de materialele alese cât și de curentul care străbate joncțiunea. [29]
Interfata de comanda si control
Controlul elementelor care fac parte din acest proiect, a fost realizat cu ajutorul aplicației open source Node-Red, folosind nodurile configurabile. Node-RED este un instrument de cablare vizual pentru Internetul Lucrurilor fiind un proiect al Fundației JS. Acesta oferă un editor bazat pe browser, care facilitează conectarea împreună a fluxurilor utilizând o gamă largă de noduri în paleta care poate fi implementată la timpul său de execuție într-un singur click. [31]
În 2014, creatorii Node-RED, IBM, Nick O'Leary și Dave Conway-Jones, au lansat Node-RED ca un proiect open source cu licență Apache v2 pe GitHub (http://github.com/node-red/node- roșu), continuând cu viziunea lor de a face Node-RED un instrument indispensabil, open-source pentru Internetul Lucrurilor. [31]
Node-red pune la dispozitie numeroase noduri pentru toate tipurile de senzori dar si posibilitatea achizitiei de date din partea senzorilor care nu se afla in gama lui, prin posibilitatea de a crea noduri configurabile sau chiar librarii ale programului in sine.
Modul in care nodurile se configureaza, se regaseste in Fig. 4.31 iar pentru proiectul de față, nodurile utilizate sunt cele din Fig. 4.32. Fiecare nod in parte trebuie configurat conform nevoilor sau aplicatiei in care se foloseste.
Fig. 4.31 – Configurarea nodurilor
Fig. 4.32 – Realizarea conexiunilor intre noduri
Rezultatul Final
In cele din urma, după câteva săptămâni de la primul pas al micului meu proiect, am reușit sa pun bazele unei case automatizate și totodată sa acumulez cunoștințe noi si utile despre microcontrolere, microprocesoare, programare si electronica. Totodată, variantele de îmbunătățire sunt infinite si accesibile oricarui buzunar.
In Fig. 4.32, se poate observa rezultatul obtinut in urma configurarii nodurilor din subcapitolul de mai sus
Fig. 4.32 – Interfata utilizatorului
CAPITOLUL 5
5.1 Rezultate experimentale
In capitolul 1 din aceasta lucrare, este prezentat un scurt istoric al automatizarilor si starea incipienta a automatelor programabile. De la ceasuri cu apa la automatizarea pe care o cunoastem in zilele noastre, a fost o calatorie lunga, inca de pe vremea oamenilor preistorici, insa a meritat.
Tot in capitolul 1 am asamblat o scurta definitie a automatizarii si capitolele cuprinse de aceasta, cat si exemple de automate programabile folosite in industrie, sau in propriile case sau proiecte de automatizare.
Descrierea componentelor, aflata in capitolul 2, cuprinde consideratiile generale in ceea ce priveste Raspberry, care in timp a devenit una dintre cele mai apreciate solutii de automatizare in ceea ce privesc micile proiecte cum ar fi dronele, servere media, roboti, etc. si care pune la dispozitie o gama larga de sisteme de operare care indeplinesc cu succes orice exigenta a utilizatorilor.
In acelasi timp, si Arduino a fost inclus in acest proiect, pentru a arata cat de lejera este comunicarea intre cele doua dispozitive si cat de variata poate deveni controlarea senzorilor, motoarelor sau chiar a aparatelor electrocasnice cu sau fara un microprocesor integrat.
Microcontrolerul, una dintre cele mai grozave inventii din punct de vedere al procesarii rapide si exacte, a revolutionat industria textila a Angliei inca din 1789 cand aceasta a primit numele de atelierul lumii. In timp ce industria se confrunta cu consumul urias de energie produs de automatizarile realizate pe baza de componente discrete sau electromecanice, cat si intretinerea greoaie si consumatoare de timp, Inginerii automatisti au gasit o metoda de a reduce cu aproape 90% consumul unei automatizari. Odata cu descoperirea acestui dispozitiv au venit si reducerea dimensiunilor si cresterea fiabilitatii.
In capitolul 4, sunt prezentati pasii urmati pentru a realiza automatizarea folosita in proiectul de fata, si ce ar trebui sa stim atunci cand alegem placile de dezvoltare si a componentelor de intrare/iesire sau a senzorilor.
5.2 Concluzii
Cu putina rabdare, cercetare, cafea si tutun dupa caz, se pot obtine rezultate satisfacatoare fara a folosi o solutie profesionala si costisitoare. Aceasta platforma, reprezinta o solutie inginereasca care permite desfasurarea unor lucrari practice sau didactice, dar si a cercetarilor stiintifice specifice.
Platforma de față permite upgradări ulterioare ale structurii hardware dar si software. In acelasi timp, componentele folosite se pot inlocui cu solutii profesionale din aceeasi categorie, obtinand rezultate cu o toleranță mult mai scazuta.
Caracteristici pro:
Programarea elementelor folosite este rapida si intuitiva
Rezultatele sunt satisfacatoare
Consumul de energie este redus
Dimensiunile sunt reduse
Pretul scazut
Caracteristici contra:
Datorita aglomeratiei grafice, este posibil ca timpul de raspuns sa creasca
Utilizarea directa pe Raspberry este foarte lenta
Dimensiunile reduse fac configurarea fizica
Atentie la exprimari, modifica 3.3, modifica 3.2 , introdu si ARM (raspberry), scoate 3.3.1, 3.3.2,
Redenumire 4.3, redenumire 4.4
Concluzii bogate
Bibliografie
[1]. Automatizare – https://ro.wikipedia.org/wiki/Automatizare
[2]. Raspberry – https://www.slideshare.net/shailendrapatelco/raspberry-pi-presentation
[3]. Internet of Things- https://www.predauviitor.ro/2018/04/29/resurse-didactice-despre-introducere-internet-things-iot/
[4]. Achizitia ei prelucrarea semnalelor provenite de la sisteme multisenzoriale – Eugenie Posdărăscu Ed. MatrixRom Bucuresti 2007.
[5]. Node.Js – https://www.w3schools.com/nodejs/nodejs_raspberrypi.asp
[6]. Arduino – https://ro.wikipedia.org/wiki/Arduino
[7]. Specificații tehnice Arduino – http://www.circuitstoday.com/arduino-mega-pinout-schematics
[8]. Sisteme de operare Raspberry – https://www.fossmint.com/operating-systems-for-raspberry-pi/
[9]. Microcontrolerul – https://en.wikipedia.org/wiki/Microcontroller
[10]. Schema Microcontroler – http://www.scritub.com/stiinta/informatica/Notiunea-de-microcontroller-De95575.php
[11]. Specificații electrice Arduino – http://robotics.lib-ieronimoub.gr/?p=715
[12]. Specificații LED – https://www.cytron.io/p-led-super-bright-5mm-white
[13]. Transformare milicandela – https://www.rapidtables.com/calc/light/mcd-to-lumen-calculator.html
[14]. Senzorul DHT11 – https://www.mouser.com/ds/2/758/DHT11-Technical-Data-Sheet-Translated-Version-1143054.pdf
[15]. Fig. 4.22 – Breadboard – https://www.makerfabs.com/index.php?route=product/product&product_id=113
[16]. Releul – https://www.tpu.ro/auto-moto/ce-este-un-releu-si-cam-ce-face/
[17]. Pregătire Arduino – https://www.hackster.io/techno_z/dht11-temperature-humidity-sensor-98b03b
[18]. Atmel AVR – http://andrei.clubcisco.ro/cursuri/3pm/lab1.pdf
[19]. Fig. 2.1 – https://www.androidcentral.com/raspberry-pi-3-model-b-vs-3-b
[20]. Fig. 2.2 – https://www.amazon.com/ARDUINO-MEGA-2560-REV3-A000067/dp/B0046AMGW0
[21]. Automate programabile – https://mctr.mec.upt.ro/wp-content/uploads/2017/12/Curs_AP_2017.pdf
[22]. Specificații Raspberry Pi – https://www.raspberrypi.org/magpi/raspberry-pi-3bplus-specs-benchmarks/
[23]. Ansamblu Hardware Microcontroler – http://tet.pub.ro/pages/Microcontrolere/
[24]. Fig. 4.1 Comparație intre versiunile Raspberry 3B – https://tutorial.cytron.io/2018/07/25/raspberry-pi-3b-vs-3b/
[25]. Pregătire Raspberry – https://www.w3schools.com/nodejs/nodejs_raspberrypi.asp
[26]. Senzorul de gaz MQ2 – https://www.pololu.com/file/0J309/MQ2.pdf
[27]. Concentrația gazului – https://www.co2meter.com/blogs/news/15164297-co2-gas-concentration-defined
[28]. Măsurarea valorii MQ2 – http://wiki.seeedstudio.com/Grove-Gas_Sensor-MQ2/
[29]. Elementul Peltier – http://www.phys.ubbcluj.ro/~lucian.baia/courses/Efectul%20Peltier2003.pdf
[30]. Modul Relee – https://cleste.ro/modul-releu-cu-8-canale.html
[31]. Node Red – https://developer.ibm.com/dwblog/2016/node-red-programming-tool-open-source-iot/
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: AUTOMATIZAREA LOCUINȚELOR CIVILE CU AJUTORUL APLICAȚIILOR CLIENT-SERVER PRIN INTERNET [305695] (ID: 305695)
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.
