Capitolul 1.Prezentare generală 1.1 Ce este o casă inteligentă. Definiția În zilele noastre o casă devine tot mai „ inteligentă”. Timpul și cele mai… [305837]
Introducere
Capitolul 1.Prezentare generală
1.1 Ce este o casă inteligentă. Definiția
În zilele noastre o casă devine tot mai „ inteligentă”.
Timpul și cele mai recente evoluții tehnice au transformat foarte mult ideea unei case inteligente. Acum, [anonimizat].
Se controlează o ,,Casă inteligentă’’ [anonimizat], calculator sau prin intermediul internetului. Treptat, intra în modă o nouă funcție a [anonimizat].
[anonimizat]. Controlul de la distanță presupune o [anonimizat].
Un exemplu clasic de comunicare directă este reglementarea sistemelor de încălzire a unei case inteligente. Atunci când sunteți plecat pentru o perioadă mai lungă de timp în vacanță sau într-o [anonimizat] – aproximativ 5 grade. [anonimizat], sistemului de încălzire îi este suficient aplicarea unui semnal de la un telefon mobil. După ce a [anonimizat] "încălzească".
Sistemul de securitate a casei inteligente de multe ori implică în mod direct un feedback. [anonimizat], cu mecanisme de deschidere a ușilor, de spargere a geamurilor vor informa proprietarul în caz de amenințare a securității locuinței. [anonimizat]-informatori. Ei oferă posibilitatea de a [anonimizat], [anonimizat].
[anonimizat]. În cazul în care persistă vru-n pericol , [anonimizat] a trimite un semnal pentru blocarea ferestrelor și a ușilor, de a porni sirena și a apela la serviciile corespunzătoare de securitate.
Siguranța în caz de incendiu nu este mai puțin importantă. [anonimizat]-o clădire inteligentă. [anonimizat]. În cazul în care în casa există o [anonimizat], [anonimizat] "inteligentă", deci va opune rezistență contra spargerilor. Aici intervine utilitatea controlului la distanță.
[anonimizat]: [anonimizat], să porniți instalația de aer condiționat sau încălzirea și multe alte operațiuni care sunt introduse in sistem. Este foarte convenabil și economisește o grămadă de timp. Control de la distanță este util în cazul în care cineva a [anonimizat].
[anonimizat], [anonimizat] de alimentare. Prin urmare, casa inteligentă este întotdeauna în contact cu dumneavoastră!
O Casa Inteligentă – este în primul rând un sistem. Ce elemente alcătuiesc sistemul "Casa inteligentă"?
Dacă consultăm enciclopedia, termenul "sistem" este tradus din limba greacă ca "un ansamblu compus din părți."
Sistem – un set de elemente care se află în relații și legături între ele, care formează o anumită integritate, unitate.
Dacă ne uităm la orice casă modernă, chiar dacă acesta nu este inteligentă, vom găsi un set minim de sisteme specifice, fără de care Casa sau apartamentul nu ar fi potrivite pentru trai: sistem de alimentare cu apă, sistem de canalizare, sistem de încălzire, sistem electric și altele.
Sistemul "casă inteligentă"- este concepția unui centru unic de control a sistemelor de uz casnic, sistemelor de divertisment, dar și a sistemelor de securitate a casei.
Toate sistemele dintr-o casă sunt dirijate de un element central (procesor) care răspunde de toate subsistemele care îi sunt în subordine.
Elementul central (sau controlerul Smart Home) direcționează componentele și controlează întregul sistem. El poate fi conectat la un calculator, și poate primi comenzi de la distanță prin internet sau mesaje de la un telefon mobil. Pentru sistemul Smart Home controllerul este inima si creierul, cel mai important element, baza puterii intelectuale.
În calitate de dispozitiv de acționare poate fi orice aparat de uz casnic, începând cu simplu bec și terminând cu sistemul sofisticat de securitate, dar într-o casă inteligentă își au locul și o mulțime de senzori care răspund de anumite lucruri care se întâmplă și care de asemenea sunt conectați la elementul central.
Senzorul este un dispozitiv tehnic care reacționează calitativ sau cantitativ prin proprii mărimi măsurabile, la anumite proprietăți fizice sau chimice ale mediului din preajma lui. Ca parte componentă a unui aparat sau sistem tehnic detector poate măsura/înregistra de exemplu presiunea, umiditatea, câmpul magnetic, accelerația, forța, intensitatea sonoră, radiații ș.a. Vine din latină: sensus=simț.
Senzorul este un dispozitiv care măsoară o cantitate fizică(masa, presiune, temperatura, umiditate, etc) și o transforma într-un semnal care poate fi citit de către un observator printr-un instrument sau poate fi prelucrat.
Exista mai multe clasificări, una dintre ele se referă la senzori de tip:
1. Activ: consumator de energie, de exemplu radar (măsurarea distanțelor prin emitere de radiații electromagnetice)
2. Pasiv: de exemplu fotorezistența cu care se poate măsura intensitatea luminii incidente.
În automatizare, informația calitativă/cantitativa măsurabilă livrată de senzori, dupa o eventuală amplificare și prelucrare servește la controlul și reglarea sistemelor tehnice automate.
Casa inteligentă – o casă de tip modern care este organizata pentru locuirea oamenilor fiind ajutați de dispozitive de automatizare și high-tech.
Casa inteligentă – desemnează două concepte de automatizare pentru locuințe: de automatizare pentru casă și de automatizare a unei clădiri.
În Statele Unite și în Europa unde aceste tehnologii se dezvoltă rapid smart home și building automation sunt forte diferite deoarece automatizarea se poate face la un apartament în parte sau la o clădire în întregime.
Prin casă "inteligentă" ar trebui să se înțeleagă un sistem care asigură siguranța și resursele necesare pentru toți utilizatorii. În cel mai simplu caz, ar trebui să fie în măsură să identifice situațiile specifice care au loc în casă și să răspundă în mod adecvat : una dintre sistemele poate controla comportamentul altora datorită unor algoritmi. In plus, prin automatizarea unui număr de subsisteme se asigură un efect sinergic pentru întregul complex.
1.2 Evoluția. Scurt Istoric
In fiecare an, giganții din industria electronică din întreaga lume scot pe piață dispozitive din în ce în ce mai sofisticate și cu funcțional mai îmbunătățit. Progresul înaintează cu pași grăbiți. Dar poate că trebuie să aruncăm o privire în trecut și să vedem de la ce a început totul …
Ideea de bază a "Smart House" a apărut în anii '60 ai secolului 20 și a fost asociată cu mai multe mașini robotizate care închid ușile din urma proprietarului, sting lumina, la comandă spală pardoseala și ventilează încăperile.
Începutul erei de confort, este considerată a fi invenția lui Joel și Ruth Spira din Philadelphia.
În anul 1961 ei au inventat și patentat primul dimmer- dispozitiv pentru reglarea luminozității sursei de lumină. Astfel a fost înființată firma electrică Lutron Electronics Company făcând un pas uriaș în formarea conceptului de o casă confortabilă și inteligentă. Lutron a introdus concepte, cum ar fi scena de lumină și zona iluminată.
În 1975 a fost făcut următorul pas important în dezvoltarea tehnologiilor pentru casa inteligentă- compania de origine scoțiană Pico Electronics a dezvoltat primul transfer standard de semnale automatizate acasă. Specialiștii acestei companii au dezvoltat metodica de control al playerului muzical prin utilizarea rețelei energetice a casei. Testele de succes au confirmat perspectivele proiectului și au dat un impuls dezvoltării ideii- aplicarea acestei tehnologii pentru a economisi energie, și în curând pentru a controla toate aparatele electrocasnice. Acest lucru a permis o gamă completă de posibilități practic – aveți posibilitatea de a controla lumina, aparate de uz casnic, audio și video fără a utiliza cabluri suplimentare. Inginerii din Scoția aleg piața americană ca fiind cea mai promițătoare și de perspectivă și înființează compania X10 USA (X10 Inc.). A început promovarea unei noi tehnologii pe piață: mai întâi vânzarea modulelor prin poștă, apoi printr-o rețea de magazine de electronice. Atunci acest standard a câștigat foarte repede popularitate in SUA din cauza costului redus și simplității sale. Și chiar și astăzi, în ciuda faptului că există mai multe tehnologii mult mai avansate, X10 este cel mai popular protocol de automatizare a caselor în Statele Unite, câștigând o popularitate serioasă în Europa și țările CSI. Dispozitive compatibile cu X10 produc astfel de companii mari precum Philips, Leviton, Marmitek, IBM, SmartLinc, Powerhouse și altele . Introducând îmbunătățiri în X10, marii producători de electronice s-au unit în Electronics Industries Alliance (EIA), iar în 1992 au aprobat un nou standard CEBus (Consumer Electronic Bus). Viteza a fost crescută și fiabilitatea transmisiei de date, dar, în același timp, a crescut semnificativ și costul echipamentului. Poate că acest lucru este motivul pentru care, CEBus nu a putut schimba X10 ca standard de facto în Statele Unite ale Americii. Acest standard este deschis, si orice companie poate produce echipamente folosind un protocol de comunicare CEBus.
In 1982, Scott Miller și soția lui Roslyn (Dallas, SUA) au creat compania AMX, care a pășit cu încredere pe piața automatizării caselor în pas cu timpul. Și chiar deseori întrecând-ul. Primul produs a fost controlerul AMX care vă permite să controlați proiectoare de diapozitive, dar gama sa extins rapid. Companiile de marketing s-au concentrat anume pe nivelul de utilizator, adică designul și ușurința de interacțiune între oameni și electronică. AMX, spre deosebire de X10, așa-numitele variante Hi-End pe cât erau de frumoase pe atât erau și de scumpe. La acea vreme idea automatizării clădirilor atât de tare a cuprins sectorul construcțiilor mondiale încât fiecare producător de electro-automatizări a clădirilor mai mult sau mai puțin cunoscut se considera obligat sa-și producă propriul produs de comunicare prin protocoale. Acest lucru a dat naștere la multe probleme de interoperabilitate a echipamentelor, scalabilitate a sistemelor și așa mai departe. Producătorii majori au încercat să remedieze situația prin dezvoltarea protocoale deschise sau parțial deschise standardizate și introducerea unor noi standarde pentru rețele de date.
În 1984, Comisia Electrotehnică Internațională (IEC), a făcut o încercare de a dezvolta un singur standard de magistrală de câmp IEC61158 (fieldbus), care determină cerințele generale pentru rețeaua de la locul de producere a dispozitivelor I / O, controlere, comutatoare, condiții de transparență de protocol. Nu a fost acceptat în prima sa instanță, deoarece atâta timp cât s-a elaborat a învechit moral și tehnic. Cu toate acestea, revizuit IEC61158 a intrat în vigoare și a devenit un standard fundamental pentru rețelele industriale în diverse domenii de producție.
KNX SMART HOME HAYLINGISLAND MANSION. Acesta este un proiect al unei case de locuit pentru o familie mare de pe coasta de sud a Angliei. Acesta include un KNX-sistem de control lumină, încălzire, jaluzele, uși de garaj si alarma. Piscina completată de un impresionant sistem cu LED-uri pentru a crea efecte de culoare. Proprietarii casei au fost frapați de flexibilitatea și de fiabilitatea sistemului "casa inteligentă".
În 1987 s-a marcat începutul proiectului, cunoscut sub numele de Profibus. Inițiatorul proiectului a fost Ministerul Federal al Cercetării și Tehnologiei din Germania. La dezvoltare s-au alăturat un grup de specialiști de la 13 companii și 5 instituții. Cu ajutorul familiilor de protocoale Profibus dispozitive de la diferiți producători pot lucra împreună, fără interfețe speciale. Patru ani mai târziu, proiectul a fost certificat în Germania, și a fost numit DIN1924.
Compania Robert Bosch GmbH la mijlocul anilor '80 prezintă noul standard de magistrală CAN, predestinat pentru conectarea blocurilor unităților electronice de comandă. CAN a fost proiectat special pentru funcționarea stabilă într-un mediu zgomotos saturat și cu interferențe din mediul ambiant. Inițial a fost creat pentru utilizarea construcția automobilelor, dar acum este utilizat într-o gamă largă de sisteme de control, inclusiv automatizarea clădirilor de locuit.
In anul 1987, Societatea Americană de ingineri pe ramura de încălzire, răcire si aer condiționat (ASHRAE) au inițiat crearea unui nou protocol de date deschise pentru gestionarea și automatizarea clădirilor BACnet (Building Automation and Control network). În 1995, BACnet primește statutul de standard american (ANSI / ASHRAE Standard 135 1995) și standardul internațional ISO (164845), în 2003.
In anul 1987, un grup de companii Berker, Insta, Jung, Gira, Merten și Siemens cu eforturi comune au creat un nou protocol european de automatizare a casei, care este numit European Installation Bus (European Bus Instalare). Există două abreviaturi a acestei intitulări (EIB) și (Instabus).
Pentru înaintarea tehnologiei EIB în 1990, prin efort comun a 150 de companii a fost înființată asociația European Installation Bus Association (EIBA), împuternicită să învețe specialiști, să monitorizeze calitatea, compatibilitatea și de stabilire a prețurilor echipamentelor.
În 1999 rezultatul reuniunii EIBA cu BatiBus Club International (BCI) și European Home Systems Association (EHSA) este creată o nouă asociație- Konnex, a cărui sarcină principală este de a promova noul standard unic al bus-ului KNX (fosta EIB) pentru automatizarea caselor de locuit. Astăzi KNx fără exagerare este, standardul cel mai întâlnit standard pentru automatizare caselor în Europa.
În 2008-2009, sa format conceptul de "obiecte și internet", care, în esență, este o lume aparte, în care rețeaua de Internet conectează oameni și dispozitive, creând o interacțiune armonioasă a întregului sistem de tehnologie care ne înconjoară.
În 2014, Apple a făcut anunțul unui nou cadru numit HomeKit, creat pentru integrarea ecosistemului case "inteligente" cu dispozitive de pe iOS.
În prezent sistemul ”Casa inteligentă” permite oamenilor să gestioneze cu toate procesele care se întâmplă fiind la o distanță mare de casă.
La această oră tehnologia se dezvoltă continuu pe toate ramurile, una dintre ele este și ramura tehnologiilor în casele înteligente.
1.3 Avantaje. Dezavantaje
O întrebare foarte frecventă este ,, Pentru ce ne trebuie o casă inteligentă?”, un răspuns ar fi că: Casele inteligente ne ușurează viața oferind un confort sporit, un nivel de securitate ridicat și eficiența energetică.
Cum ne poate ușura viața o casă inteligentă?
De exemplu dimineața aparatul de cafea pregătește cafeaua înainte cu cîteva minute de a va trezi întâmpinându-vă cu o aroma îmbatătoare și oferindu-vă doza de energie pe întrega zi. Frigiderul care știe să dea comandă singur de produse de pe internet. Aerul condiționat pornește automat la temperatura confortabilă cu cîteva minute înainte de a ajunge acasă. Cada cu apă se umple singură așteptându-vă după o zi stresanta la serviciu.
Dacă plecați în concediu nu va mai trebui să stați cu grija pentru că nu mai țineți minte dacă ați deconectat fierul de călcat, ați stins luminile sau ați încuiat ușa de la intrare, acest lucru puteți sal verificați de la distanță cu ajutorul unui calculator sau de pe telefon.
Ca avantaje mai putem atribui:
gradul de confort ridicat prin automatizare cit mai complexa
ușurința de a controla permanent sistemul inteligent
anumite operații preprogramate și personalizate care nu necesită atenția proprietarului de fiecare dată când sunt îndeplinite
economiile semnificative la costul de întreținere
Dezavantaje
Ca un prim dezavantaj și cel mai semnificativ putem menționa că este prețul. Un sistem complet cu echipamente de înaltă calitate, proiectate și instalate de către un producător de încredere poate costa o avere.
Un rol important îl are experiența și calitatea instalatorilor de echipamente. Ca orice sistem complex, "casa inteligentă" se poate defecta. Nu toate echipamentele sunt compatibile între ele.
Orice tehnică, chiar și cea mai modernă periodic se strică, iar dacă în sistemul casa inteligentă se defectează ceva anume, asta poate cauza un lanț de defecțiuni la o parte considerabilă a sistemului.
Raționalitatea. Trebuie să înțelegem că tehnologia a fost dezvoltat mai mult pentru casele de vacanță, în cazul în care există o încălzire independentă și mai dificil de a asigura securitatea. Un sistem complet de "casă inteligentă", într-un apartament mic cu încălzire centrală – este destul de costisitor.
Sistemul este foarte sensibil la tot felul de căderi. Desigur, vă puteți asigura alimentarea continuă cu ajutorul unor echipamente de rezervă, dar nu se poate asigura echipamentul de întreruperi de energie, internet, etc.
Noile tehnologii se dezvoltă foarte repede, tot așa de repede se învechesc cele vechi, de aici rezultă că pe zi ce trece apar tot mai multe tehnologii și mai performante, iar la rândul lor cele apărute deja pierd în preț și modernitate.
Un sistem complet de "casă inteligentă" nu este cu siguranță ceva ce se face o dată și pentru totdeauna. Peste 5-10 ani tehnologia se va schimba fundamental, iar vechiul sistem își va pierde relevanța. Practic, din cauza vitezei de dezvoltare cu care zburam "în viitor."
Capitolul 2. Descrierea elementelor componente ale unei case inteligente
2.1 Arduino
Arduino – este o platforma open-source, care este format din două părți principale: placa (adesea numit microcontroler) și software sau IDE (Integrated Development Environment). Software-ul rulează pe un PC și vă permite să încărcați codul dezvoltat pe microcontroler.
Arduino a câștigat o popularitate deosebit de puternică în rândul persoanelor care au început să se ocupe cu electronica. Există mai multe motive. Spre deosebire de majoritatea predecesorilor, Arduino nu are nevoie de hardware suplimentar (programator) pentru a încărca codul pe placa – este nevoie doar un simplu cablu USB. Mediul de programare – Arduino IDE folosește o versiune simplificată a C ++, ceea ce facilitează procesul de învățare pentru începători. În plus Arduino folosește un form factor standard pentru majoritatea plăților, astfel că există un întreg set de shilduri adăugătoare.
Arduino – Una dintre cele mai populare plăci și una dintre cele mai simplu de utilizat platforme cu microcontroller, este o alegere excelentă pentru începători. Poate fi comparată cu un minicalculator care poate să opereze cu informații de la diferiți senzori.
La ce vă folosește Arduino?
Arduino este proiectat pentru … Toți. Lista celor care-l folosesc : artiști, designeri, hackeri, programatori, ingineri, și pentru toți cei interesați în dezvoltarea și punerea în aplicare a proiectelor interactive. Arduino poate interacționa cu butoane, LED-uri, cartele RFID, motoare, acceleratii ale dispozitivelor in miscare, difuzoare, GPS module, senzori de temperatura, senzor de incediu, gaz GPL, senzori ce determina nivelul de alcool in aerul respirat, camera foto, internet și chiar telefonul inteligent sau TV! Această flexibilitate, combinată cu faptul că software-ul de la Arduino – complet gratuit și plăcuțele sunt relativ ieftine și ușor de utilizat a condus la o comunitate mare de fani ai acestei platforme, care inventează propriile coduri, biblioteci și instrucțiuni pentru numărul mare de proiecte folosind Arduino. Arduino este folosit ca "creierul" pentru roboți, imprimante 3D în sisteme de udare automate, cuburi cu Led, aparate de încălzire și în sistemele "case inteligente", etc. Lista este în continuă creștere. Să spunem doar: Arduino sunt utilizate în aproape orice proiect care necesita automatizare.
Din ce este alcătuită placa Arduino?
Sunt disponibile diverse modele Arduino. Fiecare dintre ele este "creat" pentru diferite sarcini. Unele placi sunt în mod fundamental diferite de cea prezentată în figura de mai jos. Dar cele mai multe dintre ele au aceleași următoarele componente:
Figura 2.1.1 Arduino UNO
Fiecare placă Arduino trebuie să fie conectată la o sursa de alimentare.:
Arduino poate fi alimentat de la un cablul USB de la PC sau dintr-un adaptor separat, care se conectează la conectorul furnizat de pe placa. În figura de mai sus conectorul USB este indicat cu cifra (1) iar conectorul de la o sursă externă este menționat cu cifra (2).
USB este de asemenea folosit pentru a încărca programul (sketch) pe placă.
NOTĂ! Nu utilizați o sursă de alimentare cu o tensiune la ieșire mai mare de 20 de volți. Acest lucru poate duce la faptul că la placa se va arde. Tensiunea de alimentare recomandată pentru Arduino – între 6 și 12 volți.
Conectori (pini) (5V, 3.3V, GND, analog, digital, PWM, AREF)
Pinii pe plată sunt prevăzuți pentru conectarea firelor de la dispozitivele periferice (de multe ori sunt folosite pentru prototipuri(breadboard)și fire cu conectori ). Arduino are mai multe tipuri de pini, fiecare dintre acestia fiind semnat conform funcției.
GND (3) o abreviere a "Ground" – "Pământ". Pe plată sunt câțva pini GND, fiecare dintre aceștia putând fi folosit ca împământare pentru circuitul care urmează a fi creat.
5V (4) și 3,3V (5): după cum v-ați dat seama -pini care asigură o putere de ieșire de 5 volți și 3,3 volți, respectiv. Cele mai multe dintre componentele care sunt conectate la Arduino, în condiții de siguranță sunt alimentate cu 5 sau 3,3 volți.
Analog (6), în zona, care a fost semnat ‘Analog In’ (de la A0 până la A5 pe Arduino UNO) sunt localizate ca intrări analogice. Acești pini permit citirea de la senzori analogici (ca de exemplu senzorul de temperatură) și să le transforme datele în valori digitale, cu care putem opera mai departe.
Digital (7): pinii digitali se află în fața pinilor analogici (de la 0 la 13 pe Arduino Uno). Acești pini sunt folosiți pentru semnale digitale de intrare (input) și pentru generarea unui semnal de ieșire (output) (de exemplu alimentarea unui led).
PWM (8): Este posibil să fi observat un semn (~) de lângă niște pini digitali (3, 5, 6, 9, 10 și 11 pe UNO). Acești pini lucrează de obicei în modul digital, sau în modul PWM de modulare.Pentru a explica pe scurt – acești pini pot simula un semnal de ieșire analogic (de exemplu, pentru stingerea treptată a LED-ului).
AREF (9): Acest pin este folosit rar. În unele cazuri, acesta este conectat la circuit pentru a seta valoarea maximă a tensiunii pe intrări analogice (0 la 5 volți).
Reset (Buton de resetare) (10) Arduino are un buton de resetare, la apăsarea căruia sketchul încărcat pe placa își începe rularea de la început. Este o funcție folositoare pentru programele care funcționează fără repetare.
Indicatorul de putere (Power Led) Puțin mai la dreapta și sub inscripția "UNO" se află ledul de semnal(11). LED-ul se va aprinde atunci când conectați Arduino la o sursă de alimentare. Dacă LED-ul nu se aprinde – un semn rău(ceva nu este în regulă).
Ledurile TX și RX.(12) TX prescurtat de la Transmit (a transmite), RX prescurtat de la Receive (primire). Aceste simboluri adesea întâlnite în electronică indica contactele care sunt responsabile de schimbul de date seriale. Aceste Leduri vă permit vizual să urmăriți dacă plata primește sau transmite date (de exemplu la încărcarea sketchului pe plată).
Circuitul integrat (13) Detaliu negru cu conectori metalici pe ambele părți ale acestui circuit integrat(IC), microprocesor. Putem spune cu încredere că acesta este „creierul’’ plății. Acest chip este diferit în diferite modele ale Arduino, dar de obicei se referă la microprocesoare gama ATmega de la compania ATMEL. Acest lucru poate fi important în încărcarea codului pe plată. Modelul circuitului integrat de obicei este incripționat pe partea de sus a chipului.
Regulator de tensiune (14) monitorizează tensiunea care este furnizată pe placa Arduino. Vi-l puteți imagina ca un agent de pază, care nu scapă prea multă tensine pe placă pentru a se evita deteriorarea acesteia. Trebuie de ținut cont că Arduino nu trebuie alimentat cu o tensiune ce depășește 20 de volți.
2.1.1 Arduino Pro Mini
Figura 2.1.1 Arduino Pro Mini
Plățile originale Arduino sunt niște controlere open-source documentația cărora poate fi găsită în internet. Puteți să vă creați singuri plata proprie datorită informațiilor expuse. Una din companiile care au clonat Arduino este SparkFun.
Ce este Arduino Pro Mini?
Arduino Pro Mini este un microcontroler bord bazat pe ATmega328 . Are 14 pini digitali de intrare / ieșire (din care 6 pot fi utilizate ca ieșiri PWM), 6 intrări analogice, un rezonator la bord, un buton de resetare, și găuri pentru montarea antete de pini.
Pentru început să ne clarificăm care sunt diferențele dintr-o Arduino Pro Mini și una dintre cele mai populare plăți Arduino Uno.
Prima și cea mai vizibilă diferență este mărimea. Plate Arduino Pro Mini este destul de mică. Dimensiunile ei 1.3×0.70, ceea ce constituie aproximativ 1/6 dintr-o plată Arduino Uno. Construcție compactă a plății determină utilizarea sa pe scară largă în dispozitive mobile de mici dimensiuni. Desigur Shildurile care vin pe Arduino Uno nu vin și pe Arduino Pro Mini dar se pot conecta prin folosirea conectorilor căci pini pe plată sunt deajuns.
Pe figura de mai jos puteți vedea diferența de marime dintre Arduino Uno și Arduino Pro Mini
Figura 2.1.2 Diferența de mărime dintre Arduino Pro Mini și Arduino Uno
Caracteristicile plăcii Arduino Pro Mini sunt foarte similare cu standardele celorlalte plăți Arduino, dar înainte de a vă adapta proiectele pe acest microprocesor în miniatură trebuie să țineți cont de câteva lucruri. Exista doua versiune a Pro Mini. Unul ruleaza la 3,3V și 8 MHz, celălalt la 5V și 16 MHz.
Prima diferență considerabilă este că Arduino Pro Mini operează cu o tensiune de 3.3V față de Arduino Uno pe care este instalat un regulator de 5V și 3.3V. Asta însemnă că dacă folosiți în proiect elemente periferice care se alimentează de la 5V, atunci va trebui să folosiți un regulator adiacent sau de la început să va luați o plăcuță care operează cu o tensiune de 5V.
A doua diferență este viteza cu care lucrează cipul ATmega 328. Pe placa Pro Mini 3,3V microprocesorul funcționează la o frecvență de 8 MHz, care este jumătate din viteza Arduino Uno. Reducerea vitezei de lucru nu are un impact asupra proiectlor. Practi orice idee care se realizează pe Arduino Uno este realizabilă și pe Arduino Pro Mini.
Ultima diferență este ca pe Pro Mini lipsește convertorul Atmega16U2 USB-to-Serial și ieșirea USB. Datorită acestui fapt plata câștigă în dimensiuni dar intervine necesitatea de a folosi un modul adăugător FTDI Basic Breakout sau analogul sau.
Date tehnice
Microcontrolerul ATmega328
Tensiune de operare 3.3V sau 5V (în funcție de model)
Tensiune de intrare 3,35 -12 V (modelul 3.3V) sau 5 – 12 V (5V model)
Pini de intrare/iesire 14 digitali (din care 6 furnizează PWM de ieșire)
Pini de intrare analogice 6
DC Curent pe I / O Pin 40 mA
Memorie flash 32 kB (din care 0,5 kB utilizată de bootloader)
SRAM 2 kB
EEPROM 1 kB
Ceas de viteză 8 MHz (modelul 3.3V) sau 16 MHz (5V model)
Alimentare Pro Mini
Figura 2.1.3 Alimentare Pro Mini
Cel mai important aspect al oricărui proiect – alimentarea cu energie electrică. Pe Arduino Pro Mini nu este nici o mufă separată pentru alimentarea cu energie.
Arduino Pro Mini poate fi alimentat cu un cablu FTDI sau o placă Breakout conectat la capul său de șase pini cum se poate vedea în figura de mai sus, sau cu 3.3V reglementat sau 5V de aprovizionare (în funcție de model) pe pinul Vcc. Există un regulator de tensiune de la bord, astfel că poate accepta tensiune de până la 12V DC. Dacă are loc alimentarea cu energie neregulată la bord, asigurați-vă dacă se face conectarea la "RAW" nu este conectat pinul VCC.
Pinii de alimentare sunt următorii:
RAW. Pentru alimentarea unei tensiuni prime la bord.
VCC. Un control alimentare cu 3.3 sau 5 volți.
GND. pini la sol.
Schema electrică și contactele Arduino Pro Mini
Schema electrică și contactele Pro Mini sunt împărțite în trei blocuri principale: un regulator de tensiune, ATmega328 și terminalele sale pentru conectarea dispozitivelor externe.
Figura 2.1.4 Schema Alimentare Pro Mini
Comunicare
Arduino Pro Mini are o serie de facilități pentru a comunica cu un computer, un alt Arduino, sau alte microcontrolere. ATmega328 oferă UART TTL de comunicație serială, care este disponibil pe pinii digitale 0 (RX) și 1 (TX). Software-ul include un monitor de serie care permite unor date simple textuale să fie trimise la și de la placa Arduino printr-o conexiune USB. O bibliotecă de SoftwareSerial permite comunicarea serială pe oricare dintre pini digitale Pro Mini . ATmega328 suportă, de asemenea, I2C (TWI) și comunicare SPI. Software-ul include o bibliotecă Wire pentru a simplifica utilizarea magistralei I2C;. Pentru a utiliza comunicarea SPI, vă rugăm să consultați fișa tehnică ATmega328.
Memorie
Arduino Pro Mini are 32 ATmega328 kB de memorie flash pentru stocarea de cod (din care este utilizat pentru 0,5 KB bootloader). Acesta are 2 kB SRAM și 1kB de EEPROM (care pot fi citite și scrise cu biblioteca EEPROM).
Intrare și ieșire
Fiecare dintre cei 14 pini digitali de pe Pro Mini pot fi utilizati ca intrare sau ieșire, folosind funcțiilepinMode , digitalWrite și digitalRead . Acestea funcționează la 3,3 sau 5 volți (în funcție de model). Fiecare PIN poate furniza sau primi un maxim de 40 mA și are o rezistență pull-up intern (deconectat implicit) de 20-50 kohmi. In plus, unii pini au funcții specializate:
Serial: 0 (RX) și 1 (TX). Se utilizează pentru a primi (RX) și transmite date seriale (TX) TTL. Acești pini sunt conectați la TX-0 și RX-1 pinii din antet.
Întreruperile externe: 2 și 3. Acești pini pot fi configurati pentru a declanșa o întrerupere la o valoare mică, o margine în creștere sau în scădere, sau o modificare a valorii.
PWM: 3, 5, 6, 9, 10 și 11. Furnizeaza 8 biți PWM de iesire cu funcția analogic Write ().
SPI: 10 (SS), 11 (Mosi), 12 (MISO), 13 (SCK). Acești pini suportă comunicare SPI, care, deși este furnizat de către hardware-ul de bază, nu este inclus în prezent în limbajul Arduino.
LED: 13. Există un built-in LED conectat la pinul digital 13. Atunci când PIN-ul este HIGH, LED-ul este aprins, atunci când PIN-ul este LOW, este oprit.
Pro Mini are 8 intrări analogice, fiecare dintre care oferă 10 biți de rezoluție (adică 1024 valori diferite). Patru dintre ele sunt pe antetul de pe marginea tablei; două intrări (4 și 5), cu găuri în interiorul plăcii. Măsura de intrări analogice de la sol la VCC. În plus, unii pini au funcții speciale:
I2C: A4 (SDA) și A5 (SCL). Suport I2C (TWI) Comunicarea folosind biblioteca Wire.
Există un alt PIN pe bord:
Resetare. Aduce această linie LOW pentru a reseta microcontroler. Folosit de obicei pentru a adăuga un buton de resetare la scuturi care blochează cea de pe bord. Pinii pe Arduino Pro Mini sunt situați pe trei dintre cele patru laturi. Pinii de pe cele două laturi lungi sunt contacte pentru semnale de putere și de ieșire / intrare. Iar pinii de pe latura mai scurtă sunt predestinați programării plăcii.
Figura 2.1.5 Pinii Alimentare și Programare Pro Mini
Resetarea Automata
Mai degrabă necesită o apăsare fizică a butonului de resetare înainte de o încărcare, Pro Mini este proiectat într-un mod care îi permite să fie resetat prin software-ul care rulează de pe un computer conectat. Unul dintre pinii de pe antetul de șase pini este conectat la linia de resetare a ATmega328 printr-un condensator nF 100. Acest PIN se conectează la una dintre liniile de control al fluxului de hardware ale convertorului USB-serial conectat la antetul: RTS atunci când se utilizează un cablu FTDI, DTR atunci când se utilizează placa Breakout Sparkfun. Atunci când această linie se afirmă (ia scăzut), linia de resetare cade suficient de mult pentru a reseta cipul. Software-ul utilizează această capacitate pentru a vă permite să încărcați codul prin simpla apăsare pe butonul de încărcare în mediul . Acest lucru înseamnă că bootloader-ul poate avea un timp de expirare mai scurt, deoarece coborârea liniei de resetare poate fi bine coordonate cu începerea încărcării.
2.1.2 Arduino Mega
Prezentare generală
Figura 2.1.2.1Arduino Mega
Arduino Mega este un microcontroler bord bazat pe ATmega1280 (foaie de date). Acesta are 54 de pini digitale de intrare / ieșire (dintre care 14 pot fi utilizate ca ieșiri PWM), 16 intrări analogice, 4 UARTs (porturi seriale hardware), un oscilator cu cristal de 16 MHz, o conexiune USB, un jack de putere, un antet ICSP, și un buton de resetare. Acesta conține tot ce este necesar pentru a sprijini microcontroler; pur și simplu conectați-l la un calculator prin intermediul unui cablu USB sau de alimentare cu un adaptor sau baterie AC-DC pentru a începe. Mega este compatibil cu cele mai multe scuturi concepute pentru Arduino Duemilanove sau Diecimila.
Date tehnice
Microcontrolerul ATmega1280
Tensiune 5V
Tensiune de intrare (recomandat) 7-12V
Tensiune de intrare (limite) 6-20V
Digital I / O 54 (de la 15 PWM de ieșire care asigură)
Intrare analogică 16
DC Curent pe I / O 40 mA
DC Curent 3.3V Pin 50 mA
Memorie Flash 128 KB din care 4 KB utilizată de bootloader
SRAM 8 KB
EEPROM 4 KB
Ceas de viteză 16 MHz
Alimentare
Arduino Mega poate fi alimentat prin intermediul conexiunii USB, sau de la sursa de alimentare externă. Sursa de alimentare este selectată automat.
Puterea externa (non-USB) poate proveni fie de la un adaptor AC-DC sau baterie. Adaptorul poate fi conectat prin intermediul unui ștecher 2.1mm. Oportunitati de la o baterie poate fi introdusă în Gnd și VCC in anteturile PIN al conectorului POWER.
Placa poate funcționa de la sursă externă de 6 până la 20 de volți. În cazul în care se livrează mai puțin de 7V, de exemplude 5V placa poate fi instabilă. În cazul în care utilizați mai mult decât 12V, regulatorul de tensiune se poate supraîncălzi și deteriora placa. Intervalul recomandat este de 7 până la 12 volți.
Pinii de alimentare sunt următorii:
VIN. Tensiunea de intrare se folosește de la o sursa de alimentare externă (față de 5 volți de la conexiunea USB sau a altei surse de alimentare reglementate). Se poate furniza tensiune prin acest pin.
5V. Alimentarea cu energie reglementată utilizata pentru a alimenta microcontrolerul și alte componente de pe placa. Aceasta energie poate proveni fie de la pinul VIN printr-un regulator de la bord, sau pot fi livrata prin USB sau o altă sursă de 5V reglementata.
3V3. O sursă de 3,3 volți generata de FTDI cip de la bord. Consumul maxim de curent este de 50 mA.
GND. Pini la sol.
Figura 2.1.2.Arduino Mega Schema electrică
Memoria
ATmega1280 are 128 KB de memorie flash pentru cod (din care 4 KB este utilizată pentru bootloader, 8 KB SRAM și 4 KB de EEPROM (care pot fi citite și scrise cu biblioteca EEPROM).
Intrari si iesiri
Fiecare din cei 54 de pini de Mega pot fi folositi ca intrari sau ca iesiri, folosind functiile pinMode(), digitalWrite() si digitalRead(). Ei opereaza la o tensiune de 5V. Fiecare pin poate da sau primi maxim 40mA și are un rezistor pull-up intern (deconectat implicit) de 20-50 kohmi. In plus, unii pini au funcții speciale:
Serial: 0 (RX) si 1 (TX); Serial 1: 19 (RX) si 18 (TX); Serial 2: 17 (RX) si 16 (TX); Serial 3: 15 (RX) si14 (TX). Sunt folositi pentru a primi (RX) și transmite date seriale (TX) TTL. Pinii 0 și 1 sunt, prin urmare, conectati la pinii corespondenti ai FTDI USB-TTL cip de serie.
Intreruperi externe: 2 (întrerupe 0), 3 (întrerupe 1), 18 (întrerupe 5), 19 (întrerupe 4), 20 (întrerupe 3), si 21 (întrerupe 2).
Acești pini pot fi configurati pentru a declanșa o întrerupere la o valoare mică, o margine în creștere sau în scădere, sau o modificare a valorii.
PWM: 2 până la 13 și 44 până la 46. Furnizarea 8 biți PWM de ieșire cu funcția analogică scriere.
SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Acești pini suportă comunicare SPI, care, sunt furnizati de hardware-ul de bază, nu sunt inclusi în prezent în limbajul Arduino. Pinii SPI sunt atât de defalcate pe antetul ICSP, care este compatibil fizic cu Duemilanove și Diecimila.
LED: 13. Există un built-in LED conectat la pinul digital 13. Atunci când PIN-ul are o valoare mare, LED-ul este aprins, Când PIN-ul este LOW, este oprit.
2C: 20 (SDA) și 21 (SCL_. Suport I2C (TWI) Comunicarea folosind biblioteca Wire.
Mega are 16 intrări analogice, fiecare care asigură 10 de biți de rezoluție (adică 1024 valori diferite). În mod implicit acestea măsoară de la sol până la 5 volți, deși este posibil să se schimbe limita superioară a intervalului lor folosind PIN-ul AREF și funcția analogReference.
Există o serie de alti pini de pe placa:
AREF. Tensiunea de referință pentru intrări analogice. Folosit cu analogReference.
Resetare. Aduce această linie LOW pentru a reseta microcontrole
Comunicarea
Arduino Mega are o serie de facilități pentru a comunica cu un computer, un alt Arduino, sau alte microcontrolere. Software-ul Arduino include un monitor de serie care permite unor date simple textuale să fie trimise la și de la bord Arduino. RX și TX LED-urile de pe bord va clipi atunci când datele sunt transmise prin intermediul cipului FTDI și USB conexiunea la calculator (dar nu și pentru comunicația serială pe pinii 0 și 1). O bibliotecă de software permite comunicarea serială pe oricare dintre Mega poansoanelor digital . Prin urmare, ATmega1280 suportă I2C și comunicare SPI. Software-ul Arduino include o bibliotecă Wire pentru a simplifica utilizarea magistralei I2C.
Programarea
Arduino Mega poate fi programat cu software-ul Arduino. ATmega1280 pe Mega Arduino vine cu un bootloader preinstalat care permite utilizatorului să încarce un cod fără utilizarea unui programator hardware extern. Comunicind folosind protocolul STK500.
Resetarea automata
Mai degrabă decât cerând o apasare fizică a butonului de resetare, înainte de a încărca, Mega Arduino este proiectat într-un mod care îi permite să fie resetat prin software-ul care rulează pe pe un computer conectat.
Una dintre liniile de control a fluxului de hardware (DTR) a FT232RL este conectat la linia de resetare a ATmega1280 printr-un condensator 100 nanofarad. Atunci când această linie se afirmă linia de resetare scade suficient de mult pentru a reseta cipul. Software-ul Arduino utilizează această capacitate pentru a vă permite să încărcați codul prin simpla apăsare pe butonul de încărcare în mediul Arduino. Acest lucru inseaman, ca bootloader poate avea un timp de expirare mai scurt, deoarece scăderea TDR poate fi bine coordonata cu începerea încărcării.
Această configurare are și alte implicații. În cazul în care Mega este conectat la un calculator fie care rulează Mac OS X sau Linux, se resetează de fiecare dată când o conexiune este făcută de la software (prin USB). Pentru următoarele acțiuni de jumătate de secundă sau cam asa ceva, bootloader-ul rulează pe Mega. În timp ce este programat să ignore datele malformate (adică nimic în afară de a încărca codul nou), acesta va intercepta primii câțiva octeți de date trimise la bord după o conexiune este deschisă. Daca un sketch ruleaza pe placa primind configuratii sau alte date cind porneste prima data, asigurativa ca softul cu care comunica asteapta o secunda dupa care se deschide conexiunea si inainte de a transmite aceste date. Mega contine trasee care pot fi taiate ca sa dezactiveze auto-resetarea. Deci, ați putea fi capabil de a dezactiva auto-resetare prin conectarea unui rezistor de 110 ohmi de la 5V la linia de resetare.
USB supracurent
Arduino Mega are o siguranta resetabila care protejează porturile USB ale computerului de la supraincarcari și supracurent. Cu toate că cele mai multe calculatoare au propria lor protecție internă , siguranța asigură un extra-strat de protecție. În cazul în care mai mult de 500 mA este aplicată la portul USB, siguranța va intrerupe în mod automat conexiunea până cindsuprasarcina este eliminata.
Caracteristici fizice și Compatibilitate
Lungimea maximă și lățimea PCBului sunt de 4 și respectiv 2,1 inch. Trei găuri pentru șuruburi permit placa să fie atașată la o suprafață . Distanța între pinii digitali 7 și 8 este de 160 ml (0.16"). Mega este conceput pentru a fi compatibile cu cele mai multe scuturi concepute pentru Duemilanove sau Diecimila. Pini digitali de la 0 la 13 și (AREF Adiacent și pinii GND), intrări analogice 0 la 5, în antetul de putere, și antet ICSP sunt toate în locații echivalente.
2.2 Elemente de intrare/ieșire
Figura 2.2.1 Tipuri de senzori Arduino
La plăcile Arduino se pot conecta o mulțime de senzori.
Acesta este un dispozitiv separat, care poate măsura anumite mărimi fizice sau pot răspunde la anumite fenomene fizice și redau informațiile măsurate prin semnale electrice.
Clasificare
Senzorii se deosebesc prin ceea ce fixează. Există senzori pentru măsurarea temperaturii, distanței, vibrațiilor, sunetului, umidității, mișcare, câmpului magnetic și altele.
Aceștia se mai deosebesc după tipul de semnal. Unii transmit semnalul sub forma curent alternativ (analogic), alții sub formă de tensiune înaltă și joasă (digital). Tipul semnalului determină modul în care indicațiile fizice sunt proiectate în mărimi electrice valabile pentru citire.
Mai departe senzorii se deosebesc după protocol. Se identifică ca partea care primește informații (de exemplu Arduino) trebuie să interpreteze semnalul transmis de senzor, ca să primească valorea măsurată. Pentru unii senzori, valoarea măsurată este direct proporțională cu valoarea tensiunii transmise, alții transmit numai ,,da/nu” cu ajutorul a două valori de tensiune, alții își transmit măsurările lor sub forma unei secvențe de biți, în cazul absenței tensiunii valoarea corespunde cu 0, și prezența tensiunii – 1. Protocolul de transmite de date al fiecărui senzor este determinat de producătorul de senzor.
In plus, senzorii diferă după modul în care se face conexiunea fizică. Majoritatea senzorilor compatibili cu Arduino pot fi ușor conectați prin trei fire. Alți senzori au contacte, potrivite pentru conectarea prin breadboard.
Conectarea și folosirea
Pentru a conecta orice senzor cu Arduino și a citi datele de pe el trebuie:
De determinat ce tip de semnal corespunde senzorului: analogic, digital, rezistență.
De conectat fizic senzorul la Arduino. În dependență de senzor: cu trei fire sau prin breadboard.
Să se identifice prin ce protocol sunt transmise datele: în dependență de tensiune, binar, și de scris un program pentru primirea datelor.
În continuare vom analiza fiecare element a Casei inteligente în parte.
2.2.1 Servomotor
Figura 2.2.1.1 Servomotor model SG90 9 g. Dimensiunile acestuia.
Specificații:
Greutate: 9 g
Dimensiuni: 22.2 x 11.8 x 31 mm aproximativ
Viteză de operare: 0.1 s/60 grade
Tensiune de operare : 4.8 V (~5V)
Lățimea benzii moarte: 10 µs
Interval de temperatură: 0 șC – 55 șC
Servomotor de model SG90 9 g este un motor mic și ușor cu o putere de ieșire mare. Se poate roti la aproximativ 180 de grade (90 în fiecare direcție), și funcționează la fel ca tipurile standard, dar mai mici. Se pot folosi orice tip de servo cod, librărie sau hardware pentru a controla acest tip de servo. Este potrivit pentru începători, se potrivește pentru proiecte de dimensiuni mici.
Informații generale
Servomotoarele-un tip de motor, care se folosesc des în robotică, mecatronică, proiecte cu Ardiono. Servomotoarele sunt controlate printr-o serie de impulsuri. Poziția arborelui de ieșire al servomotorului este determinată de lungimea impulsului. Motorul poate primi impulsuri la fiecare 20 de milisecunde. Dacă impulsul high este egal cu 1 milisecundă, unghiul de rotație va fi zero. Dacă impulsul va fi 1.5 milisecunde, atunci servo va fi lansat în poziția sa centrală, iar în cazul în care impulsul va fi două milisecunde – vine într-o poziție care corespunde cu 180 de grade.
Figura 2.2.1.2 Poziția arborelui de rotire în dependență de timp
Pozițiile extreme ale servomotoarele pot varia. In plus, multe servo mecanisme se pot roti doar la 170 de grade. Există, de asemenea, servomotoare "Continuu" care se pot roti la 360 de grade.
Figura 2.2.1.3 Conectarea servomotorului la Arduino
2.2.2 Senzor umiditate și temperatura DHT11
Figura 2.2.2.1 Senzor de umiditate și temperatură DHT11
Acest tip de senzor sunt simple după construcția lor. DHT11 este compus din două părți: un senzor de umiditate și un termistor. În carcasă mai este instalat și un cip de transformare a semnalului analog în digital.
Se folosește la echipamente de testare și control, în industria auto, în automatică, stații meteo, electrocasnice, regulatoare de umiditate, la echipamente medicale.
Există două versiuni de senzori DHT. Arată la fel, pinii sunt la fel, diferențele esențiale sunt în caracteristici.
Caracteristicile DHT11
În primul rând este ieftin
Stabilitate pe termen lung
Transmiterea semnalului pe distanțe lungi
Răspuns rapid
Alimentarea de la 3 la 5V
Consumul maxim de curent -2.5 mA (la interogarea datelor).
Conceput pentru măsurarea nivelului de umiditate în intervalul de la 20% la 80%. Precizia de măsurare în intervalul de 5%.
Măsoară temperatura în intervalul de la 0 la 50 de grade, cu o precizie de plus sau minus 2%.
Rata de măsurare este de 1 GHz (o măsurătoare pe secundă)
Dimensiuni: 15,5 mm x 12 mm x 5,5 mm.
4 conectori: VCC de la 3 la 5V, ieșirea pentru citirea datelor, GND, unu nu se conectează.
Conectarea la Arduino
Se conectează ușor datorită conectorilor destul de lungi, se pot amplasa direct pe placa de montare sau se pot conecta prin fire la Arduino. În figura de mai jos este arătată schema de conectare DHT11 la Arduino.
Figura 2.2.2.2 Conectarea Senzorului de umiditate și temperatură DHT11 la Arduino
2.2.3 Rfid RC-522
Figura 2.2.3.1 Rfid RC-522
RFID sau identificarea prin radiofrecvență, este un sistem pentru transferul de date pe distanțe scurte (de obicei, mai puțin de 6 inch). Cum putem observa în figura de mai sus kit-ul conține : un card de plastic și un breloc, modulul RFID citire-scriere a etichetelor și pinii de conectare care se lipesc pe plata de citire. De obicei numai este alimentat numai modul de citire-scriere, cardurile de acces fiind pasive.
În timpul nostru, există o introducere rapidă a tehnologiei RFID în diverse domenii. Sistemele RFID sunt folosite pentru a plăti pentru transportul public
Caracteristici:
Tensiune 3,3 V
Modurile de consum curent
12 mA stand-by
de obicei, nu mai mult de 26 mA
cel mai mare de 30 mA
Frecvența HF 13,56 MHz
Banda de frecvențe 13,55-13,57 MHz
Distanta de citire 0-25 mm
Carduri de însoțire
Clase de S50, S70, ultralight, Pro, DESFire
tipuri de Mifare S50, Mifare S70, Mifare UltraLight, Mifare Pro, Mifare DESFire
Rata de transmitere a informațiilor 106, 212, 424, 848 kbit / s
Protocol NFC Cititor standard ISO 14443 Un protocol Mifare clasic
Securitate Criptare Caracteristici Mifare clasic ™
Dimensiuni 40 x 60 mm
Temperatură operare -20 … 80 ° C,
Umiditate relativă 5-95%
Contactele și semnalele
Figura 2.2.3.2 Contactele Rfid RC-522
SDA (SS, CS, NSS) selectarea slave, intrare SPI
SCK SPI semnal de intrare de ceas
Transmisia Mosi de la maestru la asistent, de intrare SPI
Transmisie MISO de la un asistent la master, ieșire SPI
IRQ ieșire întrerupere
GND comun
RST reset de intrare
Alimentare cu 3,3 V putere
Cititor acceptă interfață SPI, UART și I2C prin care face schimbul de date cu alte dispozitive. Cu o Arduino pot lucra mai multe dispozitive conectate la magistrala SPI.
Conectare
Modul poate fi conecta la mai diferite plăci Arduino dar trebuie de ținut cont că la fiecare plată pinii de conectare sunt diferiți. În tabelul de mai jos putem vedea acest lucru.
Conectarea pinilor la diferite modele Arduino
Figura 2.2.3.3 Exemplu de conectare a modului Rfid la Arduino Uno
2.2.4 Senzor de mișcare PIR
Figura 2.2.4.1 PIR senzor
Senzor de mișcare infraroșu piroelectric (PIR) permit captarea mișcării. Sunt foarte des utilizate în sistemele de alarmă. Acești senzori sunt de dimensiuni reduse, au un consum redus de energie, sunt ieftine, sunt ușor de utilizat și sunt puțin supuși uzurii.
Detectoare de mișcare PIR constau, în esență, din elementul sensibil piroelectrică (piese cilindrice cu un cristal dreptunghiular în centru), care captează nivelul de radiații infraroșii.
Senzorii PIR sunt ideali pentru proiecte în care aveți nevoie pentru a determina prezența sau absența unei persoane într-un anumit spațiu de lucru. Au o zonă mare de sensibilitate dar trebuie de ținut cont că senzorul nu furnizează informații cu privire la cât de mulți oameni suntîn jurul lui, și cât de aproape sunt de el.
Principiul de funcționare a senzorilor sunt similare , deși specificațiile pot varia.
Informații tehnice
Sensibilitatea de până la 6 metri. Unghiul de vizualizare de 110 ° x 70 °;
Putere: 3V – 9V, dar cea mai bună opțiune – 5 volți;
Forma: dreptunghi;
Dimensiuni: înălțime 25.4 mm, lungime 32.2 mm, lățime 24.3 mm.
Principiul de funcționare al piezoelectrice (PIR) detectoare de mișcare
Senzorii PIR nu sunt așa de simpli cum s-ar putea părea la prima vedere. Principalul motiv – un număr mare de variabile care influențează semnalele sale de intrare și ieșire. Pentru a explica elementele de bază ale senzorilor PIR, vom folosi desenul de mai jos. Senzor de mișcare piroelectric este format din două părți principale. Fiecare parte include un material special, care este sensibil la radiații infraroșii. Când senzorul este în repaus, ambii senzori determină aceeași cantitate de radiații. Cînd prima zonă de sensibilitate a senzorului este întreruptă de o persoană sau un animal PIR generează două valori diferite de radiație. Atunci când o persoană părăsește zona sensibilă, valorile sunt egale. Această modificare în citirile celor doi senzori sunt înregistrate și generează impulsuri de ieșire HIGH sau LOW.
Figura 2.2.4.2 Schema de detecție a PIR senzor
Construcția senzorului
Elemente de sensibilitate Senzor PIR este instalat într-o carcasă metalică sigilată, care protejează împotriva zgomotului exterior, schimbările de temperatură și umiditate. Dreptunghiul din mijloc este realizat dintr-un material care transmite radiația infraroșie (de obicei, un material pe bază de silicon). În spatele acestei plăci sunt instalați doi senzori.
Figura 2.2.4.3 Elementul de sensibilitate și schema internă de cablare a PIR senzor
Lentile
Detectoare de mișcare sunt practic identice în structură. Principala diferență – sensibilitatea care depinde de elementele sensibile. Dar și optica joacă un rol semnificativ.
Figura de mai jos prezintă un exemplu de lentile din plastic. Acest lucru înseamnă că intervalul de sensibilitate a senzorului este de două dreptunghiuri. Cum putem face ca unghiul de vizibilitate sa fie mai mare – lentila pentru senzorul de mișcare ar trebui să fie mici, subțiri și realizate din material plastic, deși se adaugă zgomot la măsurarea.
Figura 2.2.4.4 Exemplu lentilă PIR
Conectarea unui senzor de mișcare PIR la Arduino
Se aplică puterea la senzor de 5 volți. GND. Apoi conectăm PIN-ul de la senzor, cu un pin digital pe Arduino. Acest exemplu folosește pinul 2.
Figura 2.2.4.5 Conectarea senzorului PIR la Arduino
2.2.5 Modul relee
Figura 2.2.5.1 Rele
Sunt mai multe tipuri de relee, unele dintre cele mai întâlnite în habitaclu Arduino sunt cele de la firma SONGLE modelul SRD-05VDC.
Acest tip de rele se alimentează cu 5V și poate sa comute până la 10A 30V și 10A 250V AC.
În esența sa releele sunt niște comutatoare mecanice care pot fi controlate de un microcontroler, cu ar fi Arduino. Legătura electrică dintre componentele electronice de comandă și sarcina comutată este absentă. Cu relee, puteți activa și dezactiva aparatele care sunt conectate la o priză de uz casnic de 220 V. Fără relee nu se poate în construcția unei case inteligente. Se mai pot folosi în aparatele de uz casnic, în mașinării pentru oficii, echipament audio și altele.
Conectarea la Arduino
Figura 2.2.5.2 Schema de conectare a Releelor la Arduino
Modulul are 3 pini (standard) de 2.54mm : VCC(5V), GND, IN (terminal semnal de intrare).
2.2.6 Senzor Ultrasonic
Figura2.2.6.1
Senzorul de distanță cu ultrasunete – Modulul HC-SR04 utilizează radiația acustică pentru a determina distanța până la obiect. Acest senzor de proximitate oferă o precizie ridicată și stabilitate. Intervalul de masurare este de la 2 cm la 400 cm. Senzorul de citire nu este afectat de razele solare și de zgomotul electromagnetic.
Caracteristici tehnice
Alimentare: + 5V – DC;
Curent de lucru: 15mA;
Unghiul de funcționare efectivă: <15 °;
Măsurători la distanță: de la 2 cm la 400 cm (1 – 13 inch);
Rezoluție: 0,3 cm;
Unghi de măsurare: 30 grade;
Lățimea impulsului de declanșare 10 microsecunde;
Dimensiuni: 45 mm x 20 mm x 15 mm.
Pinii:
VCC: +5 volți (DC)
Trig: Declanșatorul (INPUT)
Echo: Echo (IEȘIRE)
GND: Pământ
Figura2.2.6.2 Schema de conectare HC-SR04 la Arduino
2.2.7 Modul Bluetooth Hc-06
Figura2.2.7.1 Modul Bluetooth HC-06
Modulul Bluetooth este foarte folosit în sfera proiectării cu Arduino. În esență este o plată mica pe care sunt instalate componentele de legătura de emisie-recepție bluetooth. Aparatul are 2 moduri, activ și pasiv, cu un consum redus.
În modul de repaus, aparatul va comuta automat după 5 secunde de inactivitate, se trezește atunci când primește vreo comandă.
În modul de funcționare, consumul de 5V ușor mai mult decât 20mA.
HC-06 poate acționa numai în slave-mode. Acest lucru înseamnă că nu se poate conecta la alte dispozitive de sinestătător.
Caracteristici
Tensiunea de aliimentare 3.3 până la 6V
Consumul maxim de curent 45mA
Rata de transfer date 1200-1382400 baud
Distanța de comunicare pe linie clară de vedere 30 m
Figura2.2.7.2 Conectarea Bluetooth la Arduino
2.2.8 Ventilator
Pe piață este expusă o gamă largă de ventilatoare de diferite feluri și pentru întrebuințări diferite. De la cele mai mici mărimi 20×20 mm până la cele mai mari pot fi predestinate pentru diferite domenii de utilizare. Datorită diapazanolui de alimentare de la 5V la 220 V pot fi încorporate in diferite instalații fără o sursă de alimentare adaugătoare.
În figura de mai jos vedem un model de ventilator cu parametrii de mărime specificați.
Figura2.2.8.1 Model ventilator
Caracteristici
Tip Rulare rulment
Tensiune de operare 12V
Curent 0,09A
Viteză, rot. / min. 6000
Zgomot 24 dBA
Dimensiuni cadru, 40×40 mm
Grosime 10 mm
2.2.9 Tranzistori
Figura 2.2.9.1 Modele de tranzistoare
Tranzistorul este un dispozitiv electronic din categoria semiconductoarelor care are cel puțin trei terminale (borne sau electrozi), care fac legătura la regiuni diferite ale cristalului semiconductor. Este folosit mai ales pentru a amplifica și a comuta semnale electronice și putere electrică.
Aspectul tranzistoarelor depinde de natura aplicației pentru care sunt destinate. În 2013 încă unele tranzistori sunt ambalate individual, dar mai multe sunt găsite încorporate în circuite integrate.
Tranzistorul este componenta fundamentală a dispozitivelor electronice moderne, și este omniprezent în sistemele electronice. Ca urmare a dezvoltării sale la începutul anilor 1950, tranzistorul a revoluționat domeniul electronicii, și a deschis calea pentru echipamente electronice mai mici si mai ieftine cum ar fi aparate de radio, televizoare, telefoane mobile, calculatoare de buzunar, computere și altele.
Construcție
Tranzistorii se realizează pe un substrat semiconductor (în general siliciu, mai rar germaniu, dar nu numai). Tehnologia de realizare diferă în funcție de tipul tranzistorului dorit. De exemplu, un tranzistor de tip PNP se realizează pe un substrat de tip P, în care se creează prin diferite metode (difuzie, de exemplu) o zona de tip N, care va constitui baza tranzistorului.
Utilizare
Tranzistoarele pot fi folosite în echipamentele electronice cu componente discrete în amplificatoare de semnal (în domeniul audio, video, radio), amplificatoare de instrumentatie, oscilatoare, modulatoare si demodulatoare, filtre, surse de alimentare liniare sau în comutație sau în circuite integrate, tehnologia de astăzi permițând integrarea într-o singură capsulă a milioane de tranzistori.
2.2.10 Breadboard
Breadboard- unul dintre instrumentele principale atât pentru începători cât și pentru profesioniști în domeniul electronicii.
La ce este folosit?
Este o platformă excelentă pentru realizarea de prototipuri electronice, datorită căreia nu veți avea nevoie de ciocan de lipit și tot ce este legat de acesta.
Figura 2.2.10.1 Imaginea unui breadboard și construcția acestuia
În dezvoltarea unui proiect, avem nevoie de a alimenta mai multe componente. Cum putem observa în figura de mai sus șinele de pe lateral sunt predestinate anume alimentării fiind evidențiate cu două culori diferite roșu și albastru.
În elaborarea unui proiect nu este nevoie să ne limităm numai la o placă deoarece construcția breadbordului ne permite alipirea mai multor plăci la un loc, astfel putem folosi atâtea plăci de câte avem nevoie.
2.3 Tehnologia Bluetooth
Tehnologia Bluetooth asigură comunicația radio (wireless) între mai multe dispozitive situate la mică distanță între ele. Dezvoltată inițial de către Ericsson Mobile Communications în 1994, tehnologia Bluetooth a suferit o evoluție continuă a specificațiilor tehnice, asigurate de SIG (Bluetooth Special Interest Group). Astăzi aceste specificații tehnice sunt standardizate în cadrul IEEE (Institute of Electrical and Electronics Engineers) și standardul corespunzător acestei tehnologii este IEEE 802.15.
Specificațiile Bluetooth definesc posibilitățile de stabilire de legături radio pe distanțe scurte (aproximativ 10m) sau opțional pe distanțe medii (aproximativ 100m) pentru transmisii vocale sau de date de capacitate maximă 720kbps pe canal.
Unitățile Bluetooth aflate în același domeniu spațial de acțiune radio pot realiza ad-hoc conexiuni punct-la-punct și/sau punct-la-multipunct. Unitățile pot fi adăugate sau deconectate în mod dinamic la rețea. Două sau mai multe unități pot utiliza în comun un canal al unei rețele locale denumită piconet (picorețea), fig.2.3.1. Se pot forma mai multe picorețele și acestea se pot lega ad-hoc împreună formând scatternet, pentru a realiza configurații flexibile de comunicații și schimburi de date. Dacă într-un același domeniu spațial se află mai multe picorețele, fiecare lucrează independent și fiecare are acces la întreaga bandă de frecvențe. Fiecare picorețea este stabilită pe un canal diferit, cu salt în frecvență. Toți utilizatorii participanți la aceeași picorețea sunt sincronizați pe acest canal. În structura unei picorețele se pot integra până la 8 unități Bluetooth aflate în același domeniu spațial de acțiune radio și dintre acestea unul va fi master (M) iar celelalte unități (până la 7) vor fi slave (S).
Figura 2.3.1 Conexiuni Bluetooth
Bluetooth diferă de orice rețea cablată, deoarece nu există nici un cablu între dispozitivele care comunică între ele. Este foarte important de reținut că pentru stabilirea unei conexiuni prin tehnologia wireless Bluetooth condiția principală este ca ambele terminale să dorească realizarea acestei legături.
2.4 Arduino Studio
Arduino este un concept care implică atât partea hardware cât și partea software. Pentru a putea lucra cu plăcile din această familie trebuie înțeles atât modul de funcționare a componentelor hardware dar și modul de programare asociat.
Mediul de programare open-source IDE Arduino este derivat din proiectul software Processing- o colocție de instrumente open-source ce permit scrierea de programe orintate spre grafică pentru sistemele de tip PC.
IDE Arduino este disponibil pentru cele mai importante sisteme de operare actuale (Windows, Mac Os X, Linux). Atât versiunea compilată cât și sursele sunt disponibile gratuit pe site-ul proiectului Arduino. Pe lângă copierea aplicației software IDE Arduino mai este necesară instalarea driverului de comunicație USB pentru a putea încărca programele scrise pe placa Arduino.
Interfața mediului IDE Arduino este extrem de simplă fiind împărțită în patru zone (de sus în jos): Zona de meniuri, zona de pictograme pentru comenzi rapide, zona de editare a programului și zona de mesaje a procesului de compilare și transfer.
Figura 2.4.1 Interfața IDE Arduino
Cele cinci meniuri ale interfeței permit:
File – operații de bază cu fișierele ce conțin codul sursă de lucru (Save, New, Open, Print) dar și personalizarea interfeței de lucru (Preferences).
Edit – operații de bază cu diverse zone de text (Copy, Cut, Paste, Comment / Uncomment, Find).
Sketch – operații specifice procesului de compilare asupra programului scris (Compile, Import Library… ) – programul scris în IDE Arduino poartă denumirea de sketch – schiță.
Tools – pune la dispoziție o serie de instrumente ce permite accesarea unor acțiuni în conjuncție cu placa de dezvoltare (Serial Monitor, Board – alegerea plăcii pe care se încarcă programul, Programmer- alegerea unui programator specializat dacă este cazul, Burn Bootloader).
Help – meniu specific accesării documentației mediului de programare.
2.5 Visual Basic
Figura 2.5.1 Fereastră Visual Studio
Visual Basic face parte din pachetul Visual Studio al companiei Microsoft si, ca de altfel si celelalte limbaje 'vizuale' ale Microsoft (mai putin Visual C++), este axat pe componenta de interfața a programului, programatorul putand realiza cu usurinta interfete standardizate de tip Windows (ferestre, butoane, liste etc.) fara a fi nevoie de scrierea de cod pentru acest lucru. Visual Basic deține o biblioteca de componente vizuale (liste, calendare, meniuri etc.) a caror componente (grafica si functionala) sunt deja implementate, avand posibilitatea ca programatorul sa introduca si sa foloseasca componente proprii sau realizate de alti programatori.
Visual Basic este un limbaj pur orientat pe obiecte (OO), avand deja implementata o lista de clase cu utilizare generala. Pana la versiunea 6, VB putea utiliza si dezvolta componente COM/COM+ si ActivX dar si librarii clasice de functii tip DLL. Odata cu aparitia versiunii 7, adica odata cu aparitia tehnologiei .NET, VB (acum VB .NET) poate utiliza si crea si componente .NET cu toate avantajele pe care acestea le aduc. VB este un limbaj de nivel inalt avand implementate mai multe nivelui de abstractizare a dezvoltarii unei aplicatii dar si posibilitatea de compilare in formatul Windows EXE sau DLL de 16 si 32 biti.
VB este un limbaj interpretat, adica orice cod scris in limbajul VB trebuie mai intai tradus intr-un limbaj de nivel inferior si dupa aceea executat (spre deosebire de limbajele native ex. C++). Acest lucru are avantaje (cum ar fi rularea fara compilare sau portabilitatea intre platforme) dar si dezavantaje (cum ar fi necesitatea unei masini virtuale pentru interpretarea codului).
Unul dintre punctele forte ale limbajului VB este acela ca se pot realiza intr-un timp relativ scurt aplicatii complexe si se pot utiliza relativ simplu sisteme informatice dedicate (cum ar fi bazele de date – VB poate utiliza toate sistemele de gestiune a bazelor de date cunoscute, direct sau prin intermediul ODBC).
Utilizarea limbajului VB este una generala, putand fi folosit la crearea de programe simple, educationale dar si la crearea de aplicatii complexe (ca de exemplu la jocuri – ex: Pharao). Teoretic oricine (mai mult sau mai putin experimentat) poate utiliza VB pentru ca este un limbaj de programare simplu (calitate de baza a limbajului Basic din care provine).
Evoluția limbajului Visual Basic
VB 1.0 a fost introdus in 1991. Abordarea conectarii limbajului de programare la o interfata grafica pentru utilizator a fost derivata dintr-un prototip dezvoltat de Alan Cooper numit Tripod. Microsoft a apelat la Cooper si asociatii sai pentru a dezvolta Tripod intr-un shell programabil pentru Windows 3.0, sunt numele de cod Ruby (fara absolut nicio legatura cu Ruby programming language).
Tripod nu a inclus niciun limbaj de programare, si Ruby continea doar un procesor de comenzi rudimentar suficient pentru rolul lui de shell pentru Windows. Microsoft a decis sa utilizeze shell-ul simplu Program Manager pentru Windows 3.0 in locul lui Ruby, si a combinat Ruby cu limbajul Basic pentru a crea Visual Basic.
Ruby a pus la dispozitie partea "vizuala" a lui Visual Basic – designerul de forme si uneltele de editare – impreuna cu posibilitatea de a incarca dynamic link libraries continand controale aditionale (numite generic "gizmos"). Aceste gizmos extensibile ale lui Ruby au devenit mai tarziu interfata VBX.
Capitolul 3. Implementarea casei inteligente
3.1 Proiectare machetă
Idea de proiectare a machetei a venit de la titlul lucrării. Astfel m-am gândit să realizez o machetă în formă de casă care să îndeplinească funcțiile propuse cu ajutorul elementelor alese.
După cum putem observa în figura de mai jos ca orice casă este dotată cu:
bucătărie
sufragerie
baie
antreu
Figura 3.1.1 Plan machetă
Pentru realizarea machetei am ales un material ușor și durabil care sa-mi permită să realizez obiectivele propuse în acest proiect. Placajul din lemn de brad cu o grosime de 4 mm a fost ales pentru realizarea pereților exteriori și placajul de 3mm a fost ales pentru pereții interiori. Pentru a asigura rezistența construcției am folosit bucăți de lemn cu o mărime de 1cm x 1cm pentru o rezistență și duritate mai mare, acest lucru poate fi văzut în figura de mai jos.
Dimensiunile machetei sunt: 37cm lățime,40cm lungime,30 cm înălțime, aceste mărimi au fost alese astfel pentru a face macheta mai ușor de transportat, dar totodată să arate estetic în raport cu senzorii instalați care nu au cele mai mici mărimi.
Figura 3.1.2 Perete între camere
Macheta a fost proiectată cu pereți dubli deoarece asta a permis ca cablurile de la senzorii care sunt instalați să fie trase prin interiorul lor direct în sertarul tehnic care poate fi văzut în Figura 3.1.3 prin intermediul unor găuri făcute în podea în dreptul la fiecare cameră care permit tragerea cablurilor de la fiecare senzor în parte cu care este dotată camera, acest lucru poate fi văzut în figura de mai jos. Acest lucru face ca întregul proiect să arate mai bine, dar din punct de vedere tehnic în caz de defecțiune sau dacă un cablu nu este unit este puțin mai dificil de localizat problema.
Figura 3.1.3 Găuri pentru cabluri
Inițial pentru partea tehnică a fost proiectat un sertar la care în caz că intervine vreo problema, să permită accesul direct la componentele machetei. Datorită acestui sertar macheta a devenit mai înaltă, dar cred că asta a fost o soluție bună deoarece dacă se elabora o cameră aparte pentru partea tehnică acest fapt îngrela transportarea machetei dar totodată și marea volumul acesteia.
Figura 3.1.4 Sertar partea tehnică
3.2 Selecția elementelor
Am ales elementele după funcțiile pe care trebuie să le îndeplinească macheta.
Plata programabilă Arduino Mega a fost aleasă și folosită în acest proiect deoarece are un procesor mai puternic față de alte plăți Arduino, dispune de un număr mai mare de contacte, ceea ce permite conectarea mai multor elemente de intrare-ieșire. Nu are nevoie de un programator aparte ceea ce ușurează lucrul cu această plată.
Arduino Pro Mini este a doua plată folosită în acest proiect și desigur își are avantajele și dezavantajele sale. Ca avantaje putem atribui: compactibilitatea -acest lucru permite folosirea plații în locuri mai puțin spațioase dar în care necesitam o stabilitate de lucru.
Ca dezavantaje putem spune că: Necesită un programator adițional, nu dispune de un număr de pini ca Arduino Uno sau alte plăți Arduino și este dotată cu microprocesor mai puțin performant.
În continuare voi enumera funcțiile și elementele care îndeplinesc aceste funcții:
Deschiderea și închiderea ușii – această funcție este îndeplinită de un RFID-modul conectat la Arduino, și funcția de închidere și deschidere fiind îndeplinită de un servomotor deasemenea conectat la Arduino. Amplasarea acestora este făcută conform funcției pe care o îndeplinesc și anume : RFID- modulul este amplasat lângă ușă în partea de din afară, iar servomotorul este amplasat deasupra ușii acest lucru permițând-ui să deschidă și să închidă ușa, acest lucru poate fi căzut în figura de mai jos.
Figura 3.2.1RFID-modul și servomotor
Aprinderea și stingerea luminii – această funcție este îndeplinită de PIR-senzor care prin detecție de mișcare aprinde lumina în camera în care se află. Lumina este furnizată de o bandă cu diode care se alimentează la 12V. Trei din cele patru camere ale machetei sunt dotate cu astfel de senzori de mișcare. De asemenea lumina mai poate fi aprinsă de la calculator de la panoul de control de trei din cele patru relee care sunt conectate la Arduino prin intermediul modulului Bluetooth. Cum am menționat mai sus senzorii și banda de diode sunt amplasate în camere, senzorii aflându-se în unu din cele patru colțuri ale camerei, banda de diode fiind lipită la nivelul tavanului, ceea ce putem observa în figura de mai jos. Modulul cu relee și bluetooth-ul ambele sunt amplasate în zona tehnică a machetei adică în sertarul dedesubt astfel ele îndeplinindu-și funcția nefiind la vedere.
Figura 3.2.2 Senzor de mișcare și banda de diode
Deschiderea și închiderea perdelei- această funcție este îndeplinită de un servomotor și un potențiometru ambele conectate la placa Arduino. În dependență de rotațiile potențiometrului se rotește servomotorul astfel deschizând sau închizând perdeaua. Servomotorul este amplasat deasupra geamului ceea ce îi permite sa-și îndeplinească funcția, iar potențiometrul este amplasat într-un colț al camerei ceea ce îl face puțin observabil (Figura 3.2.3) .
Figura 3.2.3 Servomotor, potențiometru
Pornirea și oprirea ventilatorului din cameră- această funcție este realizată de la panoul de control de la calculator prin intermediul conexiunii bluetooth și prin intermediului unui releu. Ventilatorul este amplasat pe perete îndeplinind funcția de aer-condiționat (Figura 3.2.4).
Figura 3.2.4 Ventilator
Pornirea și oprirea ventilatorului prin intermediul senzorului de temperatură și umiditate- ventilatorul este amplasat în bucătărie îndeplinind rolul de hotă electrică fiind dotat și cu un potențiometru care permite reglarea rotațiilor în dependență de fluxul de aer cald care este de evacuat, acest ventilator este pus în funcțiune de senzorul de temperatură și umiditate care în dependență de temperatura pornește sau oprește ventilatorul (Figura 3.2.5).
Figura 3.2.5 Senzorul de umiditate și temperatură, Ventilator
Aprinderea luminii și pornirea ventilatorului în camera de baie- această funcție este efectuată de senzorul cu ultrasunet care fiind amplasat la mijlocul peretelui în camera de baie prin detecția de prezență pornește sau oprește lumina și ventilatorul care este amplasat sus în colțul camerei și îndeplinește funcția de evacuare a aerului cald (Figura 3.2.6)
Figura 3.2.6 Camera de baie și amplasarea elementelor
3.3 Programarea elementelor
Fiecare element ca să realizeze funcția pentru care este determinat trebuie programat. Pentru ca fiecare senzor conectat la o plată Arduino să funcționeze corespunzător el are nevoie de o bibliotecă specială.
Biblioteca Arduino este instrument care se folosește la programarea unui senzor, aceasta poate înlocui driverul necesar sau în ea pot fi scrise funcțiile care se folosesc cel mai des la utilizarea senzorului.
Există două tipuri principale de biblioteci Arduino: standard și opționale.
Bibliotecile standard:
Arduino IDE are un set de biblioteci standard, care sunt utilizate foarte des. Bibliotecile standard suportă funcții pentru a lucra cu dispozitivele periferice cele mai des întâlnite, cum ar fi motoare servo sau ecrane LCD.
Odată cu instalarea Ardiono IDE bibliotecile standard se instalează automat in mapa „Libraries”. Dacă aveți mai multe versiuni IDE, fiecare versiune va avea propriul set de biblioteci.
Bibliotecile opționale:
În internet puteți găsi o cantitate mare de biblioteci suplimentare cu funcționalitate convenabilă și drivere pentru diverse periferice. De scrierea acestor biblioteci deseori se ocupă companiile producătoare de senzori, plăci și alte circuite imprimate. Instalarea acestor biblioteci se face de asemenea în mapa „Libraries”, acest lucru va permite folosirea lor în toate versiunile Arduino IDE. Este important ca bibliotecile să fie instalate corect și în mapa care trebuie, în caz contrar, compilatorul nu va fi în măsură să le găsească atunci când compilați și încărcați codul.
În continuare voi prezenta bucăți de cod pentru fiecare element programabil în proiectul ”Casa Inteligentă”.
Figura 3.3.1 Exemplu de cod pentru Servomotor
Figura 3.3.2 Exemplu de cod senzorul de temperatură și umiditate
Figura 3.3.3 Exemplu de cod pentru senzorul de mișcare și relee
Figura 3.3.4 Exemplu de cod pentru senzorul cu ultrasunet
Figura 3.3.4 Exemplu de cod pentru modulul RFID
3.4 Realizarea casei inteligente
Casa Inteligentă este dezvoltată pe două platforme și anume: Arduino Mega și Arduino Pro Mini.
Fiecare din cele două Arduino are conectați senzorii cu care rulează. În figura de mai jos putem vedea schema de conexiune a senzorilor la placa Arduino Pro Mini.
Figura 3.4.1 Schema de conexiune a elementelor la Arduino Pro Mini
După cum putem observa din schema de mai sus majoritatea pinilor de plată sunt ocupați.
La pinii 6, 10, 11, 12, 13 este conectat Rfid-modulul cu ajutorul căruia se activează servomotorul care deschide ușa care la rândul sau este conectat la pinul 7.
La pinii 8 și 9 avem conectat senzorul cu ultrasunet care răspunde de aprinderea și stingerea luminii și a ventilatorului în camera de baie.
La pinul A0 avem conectat un bazer care în caz ca se încerca accesul în casă prin aplicarea altei cartele la Rfid-modul ne atenționează cu un semnal sonor.
La pinul 5 este conectat ventilatorul din baie care în dependență de semnal la intrarea lui pornește.
Toate aceste componente sunt amplasate pe placă breadboard care ne permite alimentarea lor la fiecare cu cât este necesar.
În continuare putem trece la analiza următoarei scheme care este bazată pe plata Arduino Mega.
Figura 3.4.2 Schema de conectare a componentelor la Arduino Mega
După cum putem observa în Figura 3.4.2 la pinul 8 avem conectat senzorul de temperatură și umiditate care cooperează cu ventilatorul conectat la pinul 7, în dependență de temperatura care este pe senzor ventilatorul pornește sau oprește.
La pinul 6 avem conectat servomotorul care răspunde de închiderea sau deschiderea perdelei, acesta de asemenea conlucrează cu potențiometrul care este conectat la pinul A0.
Releele sunt conectate la pinii 2, 3, 4, 5. Cu ajutorul releelor pornește lumina în cele trei camere și ventilatorul de pe perete din sufragerie.
Modulul Bluetooth este conectat la pinii RX și TX..
În acest proiect am folosit o conexiune paralelă a senzorilor de mișcare și a releelor, care permite aprinderea luminilor pe machetă atât fizic cât și de la panoul de control. Acest lucru a putut fi realizabil cu ajutorul tranzistorilor.
Pe schemă avem și tranzistori care poate fi folosit ca un comutator electric controlabil, în regim de comutație. Știm că tranzistorul are trei terminale: bază, emițător și colector. Dacă la baza acestuia nu se aplică curent tranzistorul este oprit si invers cu aplicarea semnalului la baza tranzistorul se deschide si permite trecerea curentului de la colector la emitor.
In circuitul meu am folosit tranzistorul in conexiunea emitor comun.
Arduino nu poate sa ofere tensiune si curentul necesar pentru alimentarea unei benzi cu LED-uri, de aceea am folosit tranzistorul. Tranzistorul trebuie sa fie de putere mare sau de aceiași putere ca sarcina, în cazul nostru Banda cu Leduri(12W). Banda se conectează intre sursa de alimentare(12V/1A) și colector, emitorul se conectează la GND.
Important: Potențialul negativ de la Arduino și cu potențialul sursei de alimentare trebuie sa fie legate împreună.
Figura 3.4.3 Schema de conectare a benzii cu leduri prin tranzistor la Arduino
În cazul senzorilor de mișcare am folosit tranzistori de oarece între pinul de ieșire și GND avem potențial de 3.3V care nu este suficient pentru comutarea releului. Tranzistori folosit sunt de putere mica de oarece sarcina consuma 5V/300mA.
Figura 3.4.4 Schema de conectare a senzorilor de mișcare prin tranzistor la relee
În schema din Figura 3.4.2 putem observa că conectarea senzorilor de mișcare și a releelor la Arduino se face prin tranzistor dar și prin diode.
Am folosit diodele de oarece dioda are 2 terminale, are rezistență mică la trecerea curentului într-o direcție și rezistență mare la trecerea în cealaltă direcție. Ea este constituita dintr-un material semiconductor având la bază o joncțiune p-n.
In circuitul meu am utilizat dioda 1N548MIC care are ca parametri(.900v/.300mA).
Aceasta nu permite trecerea curentului spre pinul de ieșire al arduino.
În cazul meu semnalul de la arduino si semnalul de la senzorul de mișcare (2 diferențe de potențial) se întâlnesc într-un singur punct, pinul de comutare al releului. Pentru a proteja pinul de ieșire al arduino folosim o dioda care permite trecere semnalului într-o singura direcție.
Figura 3.4.4 Schema de conexiune la Arduino a senzorului de mișcare și a releelor
Aplicația este scrisă în limbajul C# , Visual Studio 2013.
Panoul de control și calculatorul conlucrează prin intermediul modulului Bluetooth care este conectat la pinii RX și TX. Acest modul practic înlocuiește serial portul și în cazul recepționării unor date le transmite la Arduino. Mai departe în dependență de comanda recepționată se îndeplinesc anumiți algoritmi. Programul în sine este doar transmițător a unor comenzi în dependență de ce butoane sunt apăsate. În cazul pierderii conexiunii bluetooth, Aduino continuă îndeplinirea ultimii funcții recepționate până la reluarea conexiunii și primirea unei noi comenzi.
Pentru conexiunea bluetooth dintre calculator și modulul bloetooth trebuie să:
Deschidem fereastra Parametri din meniul Start
Apăsăm pe Dispozitive
Alegem blouetooth
Găsim modulul nostru
Apăsăm pe el, facem legătura
Introducem parola standard 1234
Apăsă, continuare
Se face legătura
Figura 3.4.5 Panou de control
Prim program controlăm aprinderea și stingerea luminii, mai concret controlăm poziția releului la care este conectată lumina.
În panoul de control în colțul din stânga sus putem observa butoanele: Conectare, Anulare, Deconectare, care sunt predestinate conectării bluetooth modulului HC-06 cu calculatorul.
În partea dreaptă din Figura 3.4.5 observăm comutatoarele cu care se controlează lumina din trei camere ale machetei și un ventilator.
Pentru adăugarea unui astfel comutator trebuie îndepliniți următorii pași:
În panoul de elemente deschidem fereastra cu toate elementele
Găsim elementul ToggleSwitch, pe care îl tragem în spațiul de lucru.
În partea de jos a ecranului avem meniul unde putem face modificările necesare pentru acest element.
Pentru schimbarea numelui scriem comanda x:Name=”nume”
În continuare trebuie să creăm prelucrător de evenimente datorită căruia aplicația va ști ce să facă când apăsăm pe acest comutator.
Mai departe deschidem fișierul MainPage.cs, acesta este codul din spatele fișierului în limbajul de programare C# unde vom scrie funcția pe care comutatorul o va îndeplini.
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: Capitolul 1.Prezentare generală 1.1 Ce este o casă inteligentă. Definiția În zilele noastre o casă devine tot mai „ inteligentă”. Timpul și cele mai… [305837] (ID: 305837)
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.
