Interfete

Generalitati

 Acest concept, al alarmarii oamenilor dintr-un anumit loc, in caz de intrari ale strainilor poate sa fie urmarit pana la vremea in care cainii avertizau oamenii cu privire la prezenta raufacatorilor.  Latratul lor era semnalul care ii alerta pe oameni cum ca ceva ar fi in neregula. Mai tarziu, oamenii au folosit clopotei. Astazi, sistemele de securitate au ajuns extrem de complexe.

Instalarea unui sistem de alarma este cea mai buna alegere in cazul in care se doreste protectia si siguranta anumitor bunuri, a locuintei si familiei sau, de ce nu, a unei intregi companii. Tinand cont de nivelul de risc la efractie, sistemele de alarma pot fi clasificate prin grade de securitate. Prin urmare configuratia optima a sistemului de alarma contra efractiilor este data de acest grad de securitate si de clasa de mediu. Sistemele antiefractie

Sistemele de alarma sunt sisteme electronice de protectie care detecteaza fenomene neobisnuite in locul unde sunt montate pe perioada in care sunt active. Aceste sisteme de alarma pot fi de o diversitate mare in funcție de sensorii folosiți, de modul de comunicare a sistemelor cu sensorii, a interfetei de comunicare a omului cu sistemul etc..

Sistemele de alarmă antiefractție sunt sisteme de protecție concepute pentru a proteja caile prin care un infractor poate patrunde într-o cladire si sustrage obiecte de valoare. Scopul acestui sistem este de a imbunatați securitatea locurilor protejate. Modul în care va fi detectata prezenta infractorului se face în functie de elementul protejat: usi, geamuri, spatii interioare.

Detecția poate fi facută cu diferiți sensori

Sensori de miscare

Sensori cu lumina IR

Sensori magnetic

Senzori cu ultrasunete

Sensori de presiune

Senzori de zgomot

Sistemele de alarma cu sensori de miscare sunt cele mai folosite. Acești sensori sunt sensibili la miscare, prin detecterea unei cantitati de caldura (caldura corpului) prin fata sa. Acesti sensori sunt foarte greu de pacalit, orice corp viu degaja in spatiu o cantitate de caldura. O problema a acestori sensori este pe perioada da vara cand temperaturile sunt ridicate. In general acesti tip de sensori sunt sensori de interior pe toata perioada unei zile si de exterior pe timp de noapte.

Sistemele de alarma cu emitatori si receptori IR sunt sisteme ce creeaza mai multe bariere de lumina IR generate de leduri IR si receptionatre de fototranzistori. In momentul in care un individ intrerupe o bariera de lumina fototranzistorul trimite un impuls la unitatea centrala care declanseaza alarma. Acest tip de sisteme de alarma sunt sigure si concepute pentru a fi plasate in special in interiorul locuințelor.

Sistemele de alarma cu sensori de tip magnetic sunt montati pe geamuri, uși și alte elemente mobile care prin deschiderea lor se poate petrunde intr-o locuința protejată.

Principiul de functionare al sensorilor magnetic este unul simplu. Sunt doua parti care se lipesc fata in fața pe partea fixa sic ea mobilă a geamului. O parte contine un magnet permanent iar cea dea doua contine un releu magnetic. Prin indepartarea magnetului de releu acesta transmite un impuls la unitatea central care declanșează alarma.

Unele sisteme de alarma sunt prevazute si cu camere de supraveghere care monitorizeaza permanent locul protejat, avand posibilitatea de a vizualiza cu ajutorul internetului exact interiorul protejat. Filmarile realizate se stocheaza pe o unitate hdd pe o perioada mare de timp.

Pentru a reduce memoria utillizata sistemul poate inregistra pe hdd doar cand detecteaza miscare in cadru (imaginile stationare nefiind inregistrate).

Tipuri de comunicare a sistemelor de alarma cu sensorii:

Comunicare prin cablu

comunicare wireless

Sistemele de alarma cablate sunt raspandite in majoritatea cazurilor, cele wireless fiind mai noi. Comunicarea prin cablu a sensorilor cu unitatea centrala se face cu diferite protocoale specificate de producatorii sensorilor. Protocoalele de comunicare cele mai des intalnite sunt I2C

, SPI, USART, protocoale de comunicare pe un singur fir etc…

Sistemele de alarma de tip wireless sunt sisteme nou aparute, cu o utilizare mare in locurile unde nu sunt instalatii cablate si au o eficienta ridicata. Alimentarea acestor sensori se face cu acumulatori avand un consum foarte mic. Comunicarea acostor sensori cu unitatea centrala se face prin unde radio.

Sistemele de alarma sunt prevazute cu tastaturi numerice sau mai nou telecomenzi pentru introducerea codurilor de acces activarea sau dezactivarea alarmei. Sistemele cu telecomanda sunt mai sigure.

Metode de protectie a sistemelor de alarma:

sistemele trebuie prevazute cu acumulatori pentru a putea fi mentinute active si in cazul incare apar defectiuni la instalatia electrica.

Sensorii trebuie conectati in asa fel incat cand comunicarea nu mai exista intre sensor si unitate, alarma sa porneasca.

Sa nu poata fi dezactivata decat de propritar

Daca contine camera de supraveghere, stocarea inregistrarilor sa se faca in alta locatie pentru a nu putea fi luata sau stearsa de intrusi

Descrierea functionarii sistemului de alarma

Unitatea centrala este cea mai importanta parte a sitemului de alarma. Pentru realizarea acestui sistem am folosit un microcontroller PIC18F4520.

In realizarea acestui proiect protocoalele de comunicare folosite sunt:

I2C folosit pentru citirea si scrierea unui RTC (Real Time Clock)

Usart pentru comunicarea serial cu modul GSM SIM900A

Nec citirea telecomenzii

Pentru afisarea starilor sistemului pe afisaj LCD alphanumeric

Principiul de functionare:

Senzorii PIR sunt montati intr-o incapere, cat timp ei nu detecteaza miscare la iesirea lor avem “0” logic. Microcontrolerul este configurat cu intrerupere la schimbarea starii a portului B

Avand resistorii de pull-up activio la intrerupere putem verifica starea pinilor portului. Daca pinii de intrare a portul sunt in “0” rezulta ca sensorii sunt in regula si nu au depistat nici o problema, altfel alarma se declanseaza.

La punerea in functiune, alarma este oprita urmand a fi activate la nevoie. La activare se acorda un timp de armare de 20 secunde pentru a avea timp suficient pentru a iesi din raza de actiune a sistemului. In cazul detectarii unui eveniment de sensori sistemul acorda un timp de 20 secunde pentru introducerea codului de dezactivare din telecomanda. Codul merge schimbat dupa preferinta utilizatorului. La activare sistemul transmite un mesaj scris catre numarul de telefon aflat in memorie cu textul corespunzator starii alarmei si ora la care este activata.

La dezarmarea alarmei mesajul trimis este adecvat situatiei doar in cazul scurgerii celor 20 secunde fara introducerea parolei. Sistemul merge configurat sa citeasca mesajele scrise primate de modulul GSM si in functie de mesajele care pot fi predefinite, sistemul sa ia decizii executabile, de exemplu oprire, pornire, dezactivare etc..

La acest tip de sistem de alarma se pot conecta diferiti sensori pentru alarmare in caz de: detectie fum, detectie gaz, detectie apa etc… Acesti sensori sunt foarte folositori si pot reduce la minim producerea unui eveniment care poate fi fatal locuintei.

Ca si element de executie am folosit un modul cu 8 releie comandat cu tranzistori de tip PNP. Folosind mai multe releie configurarile pot fi multiple. Pe un releu se pune o sirena care avertizeaza detectia unui eveniment neasteptat, pe alt releu oprirea alimentarii cu energie in cazul detectiei de gaz pentru a evita o explozie. Si multe alte aplicatii utile. Limita acestor aplicatii fiind felul in care gandeste omul.

Microcontrolerul folosit este un microcontroller pe 8 biti care se muleaza perfect unui sistem de alarma, datorita posibilitatilor extinse de comunicare cu dispozitivele externe (senzori, releie, afisaj, tastaturi,dispozitive analogice si digitale ). PIC18f4520 se bucura de o frecventa de lucru mare pana la max 40MHz, 32768 bytes memorie program, 16384 instructiuni scrise in memorie program, 20de surse de intrerupere, 5 porturi, 4 timere, 1 modul CCP (compare/capture/pwm), comunicatii seriala MSSP, USART,comunicatii paralele PSP, 13 CAN pe rezolutia de 10 bit.

Ora si data sunt citite de pe circuitul RTC si memorate la fiecare activare si dezactivare in doi vectori, memorare_activare[] si memorare dezactivare[].

Prin trimiterea unui mesaj scris cu textul “stare” de la numarul inregistrat in memorie sistemul raspunde cu mesaj scris care corespunde starii sistemului si ora de activare sau dezactivare a acestuia.

Capitolul.2. Interfete

2.1. Interfața seriala I2C

Generalitati:

Acronimul I2C vine de la “Inter-Integrated Circuit”. Acest tip de comunicare a fost definit de Philips în 1970 din dorința de simplificare și standardizare a liniilor de date din produsele lor. Prin această soluție s-a redus numărul de linii la două (SDA – date și SCL – ceas). Popular această interfață este cunoscută și sub numele de “comunicare pe două fire” sau “two wire interface”.

I2C presupune:
Rata de transfer: 10 Kb/s – 100Kb/s
SDA – Serial Data line
SCL – Serial Clock line
128 de adrese posibile
16 adrese rezervate
112 dispozitive se pot conecta pe I2C

Dispozitivele conectate trebuie sa aibă masa comuna (GND).

Descrierea interfetei:

Realizarea unui sistem I2C presupune interconectarea unor circuite integrate (specializate) prin numai trei linii: două de semnal și una de masă. Cele două linii de semnal sunt denumite "serial data" (SDA) și "serial clock" (SCL). Fiecare circuit integrat are o adresă unică și poate funcționa fie ca transmițător, fie ca receptor, în funcție de tipul circuitului. De exemplu, un circuit pentru comanda unui afișaj cu cristale lichide poate fi numai receptor, în timp ce un circuit de memorie RAM poate fi atât transmițător cât și receptor (evident, nu simultan).

Dintr-un alt punct de vedere, un circuit integrat din sistem poate fi coordonator sau executant.

Circuitul integrat coordonator este circuitul care inițiază un transfer de date și tot el generează semnalele de tact pentru a permite realizarea unui transfer. Orice alt circuit integrat adresat de coordonator este subordonat.

Rata maximă de transfer pe magistrală este de 100 kbit/s. Ultimile realizări de circuite integrate destinate să funcționeze în sisteme I2C admit rate maxime de transfer de 400 kbit/s.

Numărul de circuite care se pot conecta la magistrală este limitat numai de capacitatea maxim admisă pentru fiecare linie, care este de 400 pF.

Structura I2C este o structură multi-coordonator, adică se pot interconecta mai multe circuite care pot avea rolul de coordonator. Termenii implicați în descrierea funcționării interfeței I2C, precum și semnificația acestora sunt prezentate în tabelul urmator:

Ambele linii, SDA și SCL sunt linii bidirecționale, conectate la plusul sursei de alimentare prin câte un rezistor (rezistor “pull-up”). Dacă magistrala este liberă, ambele linii sunt la nivel ridicat. Etajele de ieșire ale fiecărui circuit care se conectează la magistrala I2C trebuie să aibă o ieșire de tip colector în gol sau drenă în gol, pentru a putea permite realizarea funcției ȘI-cablat.

Protocolul de transfer pe magistrala I2C

Protocolul de transfer al datelor pe magistrala I2C presupune inițierea transferului prin aducerea magistralei într-o condiție de START, transferul propriu-zis și încheierea transferului prin aducerea magistralei într-o condiție de STOP.

Condiția de START (S) este definită prin trecerea liniei SDA din 1 în 0, în timp ce linia SCL este menținută la nivel ridicat.

Condiția de STOP (P) este definită prin trecerea liniei SDA din 0 în 1, în timp ce linia SCL este menținută la nivel ridicat.

Fig 2.1 Definirea condițiilor de START și STOP.

Datele trebuie să fie stabile pe durata impulsurilor de tact Modificarea datelor se poate face pe durata pauzelor dintre impulsurile de tact

Fig 2.2 Definirea intervalelor în care datele se pot

schimba și în care trebuie să fie stabile.

Datele sunt transferate pe magistrală sub formă de octeți. După transmiterea fiecărui octet transmițătorul trebuie să afle dacă acesta a fost recepționat în bune condiții de către receptor. Aceasta se face prin procedura de acceptare (figura 2.3). După transmiterea celui de-al 8-lea bit, transmițătorul lasă în starea sus linia de date SDA; dacă recepția s-a facut corect (fiecare bit a fost preluat, s-a verificat paritatea, cuvântul recepționat în registrul de deplasare pentru recepție a fost preluat de registrul tampon pentru recepție), atunci receptorul trage jos linia SDA pe durata celui de-al 9-lea tact de pe linia SCL.

Fig 2.3 Procedura de acceptare a unui octet.

Fig 2.4 Transferul datelor pe magistrala I2C.

Numărul de octeți care poate fi transmis în cadrul unui transfer nu este limitat. În cadrul unui octet, primul bit transferat este bitul cel mai semnificativ (figura 2.4). După primele opt impulsuri de tact necesare transmiterii unui octet urmează un al nouălea impuls, utilizat pentru recunoașterea efectuării transferului (a se vedea mai sus).

Dacă, după recepția unui octet, receptorul nu admite un nou octet (pentru că, de exemplu, tratează o întrerupere internă), el poate menține linia SCL la nivel coborât pentru a forța transmițătorul într-o stare de așteptare. Transferul poate continua când receptorul este gata, situație indicată prin eliberarea liniei SCL (figura 8.24). În felul acesta se face adaptarea vitezei de transmisie după viteza celui mai lent participant.

Întotdeauna, primul octet transmis după condiția de START reprezintă adresa unui subordonat, împreună cu tipul operației solicitate (scriere sau citire). Primii șapte biți ai acestui octet reprezintă adresa. Tipul operației este precizat de bitul 8, notat R/W. Astfel, dacă R/W = 1, coordonatorul va citi date de la subordonatul adresat iar dacă R/W = 0, coordonatorul va transmite date subordonatului adresat.

Un transfer complet este ilustrat în figura 2.5

Fig 2.5 Transferul unui mesaj pe magistrala I2C.

Utilizarea tehnicii de recunoaștere a transferului este obligatorie pentru asigurarea unui transfer corect. Impulsul de tact corespunzător fiecărui octet, denumit impuls de recunoaștere, este generat de coordonator. Transmițătorul eliberează linia SDA pe durata impulsului de recunoaștere. Receptorul trebuie să aducă linia SDA la nivel coborât și să o mențină așa pe toată durata impulsului de recunoaștere, ceea ce garantează efectuarea corectă a transferului octetului respectiv. În general, un receptor adresat trebuie să recunoască fiecare octet transmis. Există și excepții, care însă nu fac obiectul acestei tratări.

Dacă un receptor subordonat nu recunoaște adresa care i-a fost trimisă pe magistrală (de exemplu, nu poate recepționa date pentru că execută o funcție în timp real), subordonatul trebuie să lase linia SDA la nivel ridicat. În această situație, coordonatorul poate genera o condiție de STOP pentru a abandona transferul.

Adresarea în sistemul I2C

În I2C se impune ca primul octet după condiția de start să fie adresa subordonatului cu care coordonatorul dorește să facă transfer. Adresa trebuie să urmeze după condiția S. Excepție de la această regulă este situația de “adresare generală” la care toate elementele din sistem trebuie să răspundă și care se codifică prin doi octeți. Totuși, există elemente care nu răspund (nu este util să răspundă) la “adresarea generală”. Ele vor ignora codul adresării generale.

La adresarea obișnuită, octetul ce urmează după condiția S codifică pe primii 7 biți mai semnificativi adresa subordonatului, iar bitul mai puțin semnificativ este bitul R/W și arată sensul transferului. Atunci când se transmite adresa, fiecare dispozitiv din sistem compară adresa recepționată cu propria adresă; dacă constată egalitatea, dispozitivul devine subordonat receptor sau subordonat transmițător, funcție de valoarea bitului R/W.

Adresa unui subordonat poate avea o parte fixă și o parte programabilă. Partea fixă definește clasa dispozitivului (spre exemplu: memorii, dispozitive de afișare, microprocesoare, etc.) iar partea programabilă identifică dispozitivul din clasa respectivă. Mărimea părții programabile depinde de numărul de pini pentru adresă pe care circuitul îi are. Spre exemplu, un circuit are 4 biți de adresa fixă și 3 biți programabili; aceasta înseamnă că se pot conecta la magistrala I2C 8 dispozitive de acest fel.

Comitetul de coordonare al magistralei I2C a recomandat o alocare a celor 127 de adrese prezentată în tabelul de mai sus. Există două grupe de câte 8 adrese: 0000xxx și 1111xxx rezervate pentru scopurile arătate în tabel. Adresele 11110xx sunt rezervate pentru adresarea cu 10 biți, folosită în sisteme I2C de mare întindere.

Parametrii comunicației seriale

Viteza de comunicație (numită și debit binar) este măsurată în biți/s (bps):

[biți/s] T D 1 unde T este perioada de timp necesară pentru transmisia sau recepția unui singur bit. Modemul reprezintă semnalele de date prin diferite stări electrice, în funcție de tipul de modulație pe care îl utilizează: frecvență, amplitudine, sau fază. Fiecare stare electrică este menținută la ieșirea modemului pentru un interval de timp numit perioadă de modulație ( ).

Viteza de modulație este inversul perioadei de modulație, reprezentând numărul schimbărilor pe secundă ale stării electrice a modemului: [baud] 1 m V Unitatea de măsură a vitezei de modulație este baud, după numele inginerului și tele-grafistului francez Jean-Maurice Baudot. Relația dintre viteza de comunicație D și viteza de modulație Vm este: D = Vm log2 n [biți/s] unde n este numărul stărilor electrice distincte ale modemului. În cazul particular când există doar două stări electrice distincte ale modemului, viteza de comunicație este egală cu viteza de modulație. În general însă, există un număr mai mare de stări electrice ale modemului, ast-fel încât viteza de comunicație este un multiplu al vitezei de modulație.

Viteza de modulație este confundată adesea cu viteza de comunicație (debitul binar). Viteza de modulație (exprimată în baud) este rata cu care se modifică stările electrice ale modemului într-o secundă. De exemplu, dacă se utilizează modulația în frecvență, iar frecvența semnalului purtător se poate modifica de către modem cu o rată de 2.400 de ori pe secundă, viteza de modulație este de 2.400 baud. Primele modemuri codificau un bit de 0 printr-o anumită frecvență și un bit de 1 printr-o altă frecvență. În acest caz particular, viteza de modulație are aceeași valoare cu viteza de comunicație. În general însă, modemurile codifică mai mulți biți de informație printr-o stare electrică. De exemplu, dacă modemul codifică 4 biți de informație printr-o anumită frecvență, pentru exemplul anterior viteza de comunicație va fi de 4 2.400 = 9.600 biți/s.

Tipuri de comunicație serial

Din punctul de vedere al direcției de transfer, se pot distinge următoarele tipuri de comunicație serială:

Simplex;

Semiduplex;

Duplex.

În cazul comunicației simplex, datele sunt transferate întotdeauna în aceeași direcție, de la echipamentul transmițător la cel receptor. La comunicația semiduplex, fiecare echipa-ment terminal de date funcționează alternativ ca transmițător, iar apoi ca receptor. Pentru acest tip de conexiune, este suficientă o singură linie de transmisie (două fire de legătură). Într-o comunicație duplex (numită și duplex integral), datele se transferă simultan în ambele direcții. Primele conexiuni duplex necesitau două linii de transmisie (patru fire de legătură), dar conexiunile ulterioare necesită o singură linie.

Din punctul de vedere al sincronizării dintre transmițător și receptor, există două tipuri de comunicație serială:

Asincronă;

Sincronă.

Comunicația asincronă

Pentru a asigura sincronizarea dintre transmițător și receptor, fiecare caracter transmis este precedat de un bit de START, cu valoarea logică 0 (“space”), și este urmat de cel puțin un bit de STOP, cu valoarea logică 1 (“mark”). Biții de START și de STOP încadrează deci fiecare caracter transmis; caracterul transmis între acești doi biți reprezintă un cadru de date. Un asemenea cadru reprezintă informația digitală de bază într-un sistem de comunicație seria-lă. În cazul comunicației asincrone, intervalul de timp între transmisia a două caractere succe-sive este variabil, pe durata acestui interval linia de comunicație fiind în starea 1 logic. Acest mod de comunicație este numit și start-stop.

Sincronizarea la nivel de bit se realizează cu ajutorul semnalelor de ceas locale cu aceeași frecvență. Atunci când receptorul detectează începutul unui caracter indicat prin bitul de START, pornește un oscilator de ceas local, care permite eșantionarea corectă a biților individuali ai caracterului. Eșantionarea biților se realizează aproximativ la mijlocul intervalului corespunzător fiecărui bit.

Figura 3.2 ilustrează transmisia caracterului cu codul ASCII 0x61. După bitul de START, având durata T corespunzătoare unui bit, transmisia caracterului începe cu bitul cel mai puțin semnificativ b0. După transmisia bitului cel mai semnificativ b7, se transmite un bit de paritate p; în acest exemplu, paritatea este impară. Bitul de paritate este opțional, iar în ca-zul în care se adaugă la caracterul transmis, paritatea poate fi selectată pentru a fi pară sau impară. Există și posibilitatea ca bitul de paritate să fie setat la 0 sau 1, indiferent de paritatea efectivă a caracterului. În exemplul ilustrat, la sfârșitul caracterului se transmit doi biți de STOP s1 și s2, după care linia rămâne în starea 1 logic un timp nedefinit. Acest timp cores-punde unui interval de pauză.

Figura 3.2

În cazul comunicației asincrone, sincronizarea la nivel de bit este asigurată numai pe durata transmisiei efective a fiecărui caracter. O asemenea comunicație este orientată pe ca-ractere individuale și are dezavantajul că necesită informații suplimentare în proporție de cel puțin 25% pentru identificarea fiecărui caracter.

Comunicația sincronă

În cazul comunicației sincrone, un cadru nu conține un singur caracter, ci un bloc de caractere sau un mesaj. Sincronizarea la nivel de bit trebuie asigurată permanent, nu numai în timpul transmisiei propriu-zise, ci și în intervalele de pauză. De aceea, timpul este divizat în mod continuu în intervale elementare la transmițător, intervale care trebuie regăsite apoi la receptor. Aceasta pune anumite probleme. Dacă ceasul local al receptorului are o frecvență care diferă într-o anumită măsură de frecvența transmițătorului, vor apare erori la recunoaște-rea caracterelor, din cauza lungimii blocurilor de caractere.

Pentru a se evita asemenea erori, ceasul receptorului trebuie resincronizat frecvent cu cel al transmițătorului. Aceasta se poate realiza dacă se asigură că există suficiente tranziții de la 1 la 0 și de la 0 la 1 în mesajul transmis. Dacă datele de transmis constau din șiruri lungi de 1 sau de 0, trebuie inserate tranziții suficiente pentru resincronizarea ceasurilor. Asemenea tehnici sunt dificil de implementat, astfel încât se utilizează de obicei o tehnică numită comunicație asincronă sincronizată (numită în mod simplu comunicație sincronă).

Acest tip de comunicație este caracterizat de faptul că, deși mesajul este transmis într-un mod sincron, nu există o sincronizare în intervalul de timp dintre două mesaje. Informația este transmisă sub forma unor blocuri de caractere sau a unor biți succesivi, fără biți de START și STOP. Pentru ajustarea oscilatorului local la începutul unui mesaj, fiecare mesaj este precedat de un număr de caractere speciale de sincronizare, de exemplu, caracterul SYN (0x16). Pentru menținerea sincronizării, se pot insera caractere de sincronizare suplimentare în mesajul transmis, la anumite intervale de timp.

La receptor există trei nivele de sincronizare:

Sincronizare la nivel de bit, utilizând circuite cu calare de fază PLL (Phase–Locked Loop)1, pe baza tranzițiilor existente în semnalul recepționat;

Sincronizare la nivel de caracter, asigurată prin recunoașterea anumitor caractere de sincronizare;

Sincronizare la nivel de bloc sau mesaj, care depinde de protocolul de date utilizat.

Transmit Data, TD (Transmisie Date)

Datele sunt transmise serial pe această linie de către calculator. După bitul de start, se transmite bitul cel mai puțin semnificativ al unui caracter. În general, pentru transmisia date-lor este necesar ca semnalele RTS, CTS, DTR și DSR să fie active. Aceste semnale sunt activa-te în cadrul unei secvențe de stabilire a legăturii cu modemul.

Receive Data, RD (Recepție date)

Această linie este utilizată de calculator pentru recepția datelor de la modem sau de la un echipament extern.

Data Terminal Ready, DTR

Atunci când calculatorul este operațional și pregătit pentru comunicația de date, acti-vează semnalul DTR. Modemul va răspunde la semnalul DTR prin activarea semnalului DSR.

Data Set Ready, DSR (Modem operațional)

Atunci când modemul sau echipamentul extern este operațional și pregătit pentru co-municația de date, activează semnalul DSR. Acest semnal este activat de modem ca răspuns la activarea semnalului DTR de către calculator. Calculatorul va transmite date către modem doar în cazul în care semnalul DSR este activ.

Request To Send, RTS (Cerere de emisie)

Atunci când calculatorul este pregătit pentru transmisia datelor, activează semnalul RTS. Acest semnal indică modemului faptul că poate transmite date către calculator. Un sem-nal RTS inactiv va preveni modemul de a transmite date către calculator. Aceasta permite cal-culatorului să controleze fluxul datelor transmise de modem. Răspunsul la semnalul RTS se recepționează de calculator pe linia CTS.

Clear To Send, CTS (Gata de emisie)

Prin activarea acestui semnal, modemul sau echipamentul extern indică faptul că este pregătit pentru recepția datelor de la calculator. Semnalul CTS este activat de modem ca răs-puns la activarea semnalului RTS de către calculator. Un semnal CTS inactiv va preveni calcu-latorul de a transmite date către modem. Aceasta permite modemului să controleze fluxul da-telor transmise de calculator.

Senzor PIR

Un senzor pasiv în infraroșu (senzor PIR) este un dispozitiv electronic care măsoară radiația infraroșie (IR) provenită de la obiecte aflate în raza sa de acțiune. Inițial mișcarea este detectată atunci când un corp cu o temperatură diferita fața de mediul inconjurator trece prin fața sursei infraroșu cu o altă temperatură, cum ar fi un perete. Acest lucru duce la schimbarea starii senzorului pe motivul că senzorul detectează căldura de la trecerea prin câmpul de acțiune al senzorului și acel corp rupe câmpul pe care senzorul l-a determinat anterior ca fiind normal. Orice obiect, chiar unul de aceeași temperatură ca și obiectele din jur va activa senzorul PIR dacă corpul se deplasează în raza de acțiune a senzorului.

Toate corpurile emit energie sub formă de radiații. Radiațiile infraroșii nu sunt vizibile pentru ochiul uman, dar pot fi detectate de dispozitive electronice concepute în acest sens.

Corpurile de iluminat cu tehnologia senzorilor de mișcare infraroșu (PIR) se aprinde atunci când o persoană trece prin câmpul de acțiune al senzorului, iar senzorul va activa lumina doar dacă o persoană este în mișcare în raza de acțiune a senzorului.

Senzorii de mișcare cu infraroșu sunt mai sensibil în zilele răcoroase decât în zilele calde. Acest lucru se datorează faptului că diferența de temperatură dintre aerul înconjurător și corpul uman este mai mare în zilele reci, senzorul sesizând ușor diferența de temperatura. Acest lucru are dezavantaje, în cazul în care senzorul este prea sensibil, senzorul va detecta și mișcarea animalelor mici creând alarme false, aprinderea inutilă a luminii sau aclanșarea sistemelor de alarma. Temperatura optimă de funcționare a senzorului de mișcare pentru sistemele de alarmă este cuprinsă între 150-200 C. La temperaturi mai mari de 300 C, sensibilitatea senzorului va scădea și emisiile în infraroșu vor fi detectate mai greu.

Niciun sistem de detectare a mișcării nu este perfect, dar senzorii PIR sunt ideali pentru sistemul de securitate al casei.

Protocolul NEC

Protocolul de transmisie NEC utilizeaza codarea mesajelor de biti folosind o secventa de pulsuri cu perioade bine definite pentru transmisa la distanta. Fiecare secventa de pulsuri are o perioada de 562.5μs la o frecventa purtatoare de 38kHz .

Starile logice a bitilor sunt transmise dupa cum urmeaza:

‘0’ logic – o secventa de pulsuri la frecventa de 38kHz pentru o perioada de 562.5μs urmate de

un spatiu de 562.5 μs, perioada totala fiind de 1.125ms.

‘1’ logic – o secventa de pulsuri la frecventa de 38kHz pentru o perioada de 562.5μs urmate de

un spatiu de 1.6875ms, perioada totala fiind de 2.25ms.

Când o tastă este apăsată pe telecomandă , mesajul transmis este format din următoarele, în ordine:

o perioada de 9ms semnalul sta in ‘1’

o perioada de 4.5ms semnalul sta in ‘0’

8 biti de adresa a receptorului

8 biti de adresa a receptorului inversati logic

8 biti de comanda

8 biti de comanda inversati logic

la final o secventa de pulsuri la frecventa de 38kHz pentru o perioada de 562.5μs care marcheaza sfarsitul mesajului transmis.

O transmisie compate are o perioada de 67,5ms nefiind luata in considerare secventa de incheiere.

Cand o tasta de la telecomanda este tinuta apasat un cod de repetare este emis la o perioada de 40ms de la secventa initiala a tastei. In componenta codului gasim:

o perioada de 9ms semnalul sta in ‘1’

o perioada de 2,5ms semnalul sta in ‘0’

o secventa de pulsuri la frecventa de 38kHz pentru o perioada de 562.5μs care marcheaza sfarsitul mesajului transmis

Decodarea semnalului IR se face cu receptor IR de tip TSOP1738. Diagram bloc interna a receptorului:

Logica de functionare:

La receptia semnalului IR cu frecventa de 38kHz trenzistorul din etajul final este comandat de unde rezulta ca la pinul de iesire gasim ‘0’ logic, iar in lipsa acestuia avem ‘1’ logic

ca in figura urmatoare:

In acest proiect citirea telecomenzii se face cu ajutorul blocurilor hardware TIMER1, TIMER3, CCP1, CCP2 interne a microcontrolerului pic 18F4520, unde TIMER1 sursa de clock pentru CCP1 si TIMER3 sursa de clock pentru CCP2.

Schema blocurilor interne si principiul de functionare este cel din imaginea urmatoare:

Frecventa de lucru a microcontrorelui este FOSC/4 = 40MHz/4 = 10MHz de unde rezulta ca

T=1/F =>T=1/10MHz=0.1 μs

Partea de captura a semnalului IR este impartita in 4 etape:

definirea variabilelor si constantelor

configurari ale registrelor microcontrolerului

captura semnalului dat de receptorul IR

prelucrarea rezultatelor

Definirea variabilelor si constantelor folosite in program:

#define START 6325 //se defineste secventa de start

#define LOGIC_ONE 2813 // se defineste ‘1’logic (0.1 μs *2813*4=2,250ms)

#define LOGIC_ZERO 1400 // se defineste ‘0’logic (0.1 μs *1400*4=1,20ms)

#define REPEAT 2810 // se defineste ‘REPEAT’ (0.1 μs * 2810*4=2.5ms)

Configurari ale registrelor microcontrolerului:

Aceasta parte contine configurari de register si porturi ale microcontrolerui necesara functionarii partilor hardware falosite.

Captura semnalului dat de receptorul IR:

La fiecare intrerupere data de registrul PIE.CCPIF se citesc valorile aflate in registrele CCPR1L si CCPR1H care se compara cu valorile definite anterior. In CCPR1L se gasesc datele TMR1L si in CCPR1H se gasesc datele TMR1H.

ir_time= CCPR1LH+CCPR1L;

if(START) ir_pntr++;

if((ir_time<LOGIC_ZERO_MAX)&&(ir_time>LOGIC_ZERO_MIN)) ir_buff[ir_pntr]='0';

elseif((ir_time<LOGIC_ONE_MAX)&&(ir_time>LOGIC_ONE_MIN))ir_buff[ir_pntr]='1';

else if((ir_time<REPEAT_MAX)&&(ir_time>REPEAT_MIN))ir_buff[0]='R';

else if((ir_time<START_MAX)&&(ir_time>START_MIN))F_FRAMESTART_ON();

secventa de mai sus se repeat de 32 de ori pentru a memora fiecare bit in octetul corespunzator .

byte0 = adresa ,byte1=adresa negata

byte2=cod, byte3=cod negat

Prelucrarea rezultatelor:

In partea de interpretare se iau cei patru octeti unde sunt introduse rezultatele conversiei si se verifica daca codul transmis este receptionat correct dupa cum urmaza:

if((byte0 == ~byte1)&&(byte2 == ~byte3)) //adevarat => data este valida

se convarteste in hexazecimal doar byte2 (cod buton) si se memoreaza intr-o variabila, care este folosita ulterior in diferite aplicatii.

Afișajul alfanumeric de tip LCD controlat cu microcontroler

Pentru afișarea caracterelor alfanumerice, utilizarea dispozitivelor de afișare cu cristale lichide in format matricial este cel mai comod și mai raspândit. Fiind o aplicatie complexă managementul datelor afișate trebuie gestinate de un microcontroler sau un microprocesor.

Tipul de LCD folosit este Hitachi HD44780 ce permite afișarea caracterelor alfanumerice în format matricial 5×7, pe 2 linii a cate 16 caractere pe linie. Afișajul permite afișajul a 192 de caractere ASCII, în forma memorată în memoria fixă a generatorului de caractere, precum și a maxim 8 caractere definite de utilizator.

Pentru controlul afișajului se folosește un microcontroller de tip PIC18F4520 pe 8 biți.

Schema bloc a dispozitivului de afișare HD44780

Dispozitivul de afișare se conecteaza la microcontroller prin intermediul magistralei da date DB0~DB7 (se pot scrie/citi date în/din controlerul dispozitivului de afișaj) și prin intermediul a trei linii de control astfel:

RS (Register Selection) selecție registru. Semnalul de pe aceasta linie selectează tipul registrului intern (Registru de date sau registru de instrucțiuni);

RW (Read/Write) citește/scrie. Semnalul de pe această linie precizează dacă operația cu registrele interne este de scriere sai citire.

E (Enable) autorizare. Semnalul de pe aceasta linie activează sau dezactivează conectarea controleruluidispozitivului de afișaj la microcontroler.

Pentru alimentare dispozitivele sunt prevazute cu două linii de alimentare VDD tipică de 5V și VSS(GND). Mai există o linie denumită VLC (tensiune de comandă cristale lichide). Tensiunea pe această linie variază intre 0 și VDD, funcție de această tensiune se controlează contrastul afișajului. Dacă linia este lăsată in aer, pe afișaj nu apare nici un caracter.

Instrucțiuni de utilizare

Registre

Controlerul HD44780 are doua tipuri de register de 8 biți:

Registru de instrucțiuni (IR)

Registru de date (DR)

Acestea sunt selectate de semnalul de selectie RS ca in tabelul urmator:

Registrul de instrucțiuni stochează codurile de instrucțiuni, el poate fi scris de catre microcontroller dar nu poate fi citit. Registrul de date(DR) stochează temporar datele ce trebuiesc scrise in DD RAM sau în CG RAM.

Descrierea instrucțiunilor:

Când o unitate cu microprocessor comandă controlerul de pe modul de afișare LCD, respectiva unitate controlează direct numai două register ale controlerului: registru de instrucțiuni și registru de date. Înainte sa înceapă o operație internă, controlerul stochează temporer informațiile de control in aceste register, pentru a permite interfațarea cu diferite tipuri de microprocesoare sau circuite integrate de control ce funcționeaza la diferite viteze și a le adapta cu viteza internă de lucru a controlerului.

Setul de instrucțiuni:

Timpul de execuție din tabelul de mai sus indică valoarea maximă când frecvența oscilatorului fosc=270kHz .

Flagul Busy (ocupat) (BF) Flagul busy indică dacă modulul este gata să accepte următoarea instrucțiune. După cum se arată în Tabelul 1, semnalul este scris la DB7 dacă RS = 0 și R/W = 1. Dacă starea este 1, modulul este în ciclu de funcționare internă și instrucțiunea nu poate fi acceptată. Dacă flagul busy este în starea 0, se poate scrie următoarea instrucțiune. Ca urmare, starea flagului busy trebuie testată înainte de executarea unei instrucțiuni. Pentru a executa o instrucțiune fără a testa starea flagului, trebuie să se aștepte mai mult decât timpul necesar executării instrucțiunii precedente. În capitolul “Descrierea instrucțiunilor” se găsește timpul necesar fiecărei instrucțiuni.

Contorul de adrese (AC) – Address Counter Contorul de adrese (AC) precizează o adresă atunci când data este scrisă în DD RAM sau CG RAM și când este extrasă prin citire data stocată în DD RAM sau CG RAM. Dacă o instrucțiune de setare adresă (pentru DD RAM sau CG RAM) este scrisă în registrul de instrucțiuni IR, informația despre adresă este transferată din registrul de instrucțiuni IR în contorul de adrese AC. Când datele afișate sunt scrise în sau citite din DD RAM sau CG RAM, contorul de adrese AC este incremetat sau decrementat automat, conform cu modul de introducere fixat. Conținutul contorului de adrese AC este extras la ieșirile DB0 la DB6 dacă RS = 0 și R/W = 1.

Memoria RAM a datelor afișate (DD RAM) – Display Data Random Access Memory Memoria DD RAM are capacitatea până la 80 x 8 biți, stocând date pentru 80 de caractere cu coduri de 8 biți. Unele zone de stocare ale memoriei DD RAM, nefolosite la afișare, pot fi utilizate ca locații de memorie de date RAM generale.

Circuitul de control al cursorului/licărire – Cursor/Blink Control Circuit Circuitul poate genera cursorul sau efectul de licărire. Când numărătorul de adrese (AC) selectează adreasa DD RAM, pe poziția digitului corespunzător adresei apare cursorul sau efect de licărire. Când contorul de adresă AC are conținutul 08H, cursorul sau efectul de licărire apare pe poziția digitului 9 de pe linia 1, cum se prezintă mai jos. Cursorul sau efectul de licărire apar și atunci când se selectează memoria RAM a generatorului de caractere (CG RAM) de către numărătorul de adrese. În acest caz cursorul sau efectul de licărire nu au nicio semnificație.

Similar Posts

  • Integrarea Experientelor Simple In Activitatile DE Cunoasterea Mediului

    INTEGRAREA EXPERIENTELOR SIMPLE IN ACTIVITATILE DE CUNOASTEREA MEDIULUI CUPRINS MOTO CAPITOLUL I 1.1.PARTICULARITATILE PSIHOLOGICE ALE COPIILOR DE LA NASTERE PANA LA VARSTA PRESCOLARA -educatia timpurie(0-3 ani); -varsta prescolara mica si mijlocie(3-5ani); -varsta prescolara mare(5-6/7 ani). 1.2. LOCUL ȘI ROLUL ACTIVITĂȚILOR DE CUNOAȘTEREA MEDIULUI ÎN GRĂDINIȚA DE COPII 1.2.1. Importanța cunoașterii mediului înconjurător de către copiii…

  • Generalitati Privind Imbinarea Lemnului, Tipuri Si Metode

    CAPITOLUL I GENERALITATI PRIVIND IMBINAREA LEMNULUI, TIPURI SI METODE Din cele mai vechi timpuri, activitatea omului s-a caracterizat prin doua forme de manifestare care se intrepatrund : una pentru indeplinirea cerintelor materiale ale vietii si alta pentru cele spirituale. Daca formele utile sunt determinate de ratiune, de fuctionalitate, de necesitatile materiale, ele trebuie concepute si…

  • Platforma Robotica Comandata Si Semicomandata

    Cuprins Capitolul 1. Introducere 1.1 Memoriu justificativ 1.2 Structura lucrării Capitolul 2. Fundamentare teoretică 2.1 Motoare de curent continuu nu ai spatiufără perii 2.2 Comanda motoarelor de curent continuu fără perii 2.3 Invertor trifazat 2.3.1Tranzistorul MOSFET 2.3.2Circuitul driver IR2101 2.4 Microcontrolere 2.4.1 Microcontroler PIC16F887 2.4.1 Microcontroler PIC18F4431 2.5 Senzori 2.5.1 Senzor de distanță cu ultrasunete…

  • Antene de Referinta

    1. NOȚIUNI GENERALE. ANTENE DE REFERINȚĂ 1.1 LOCUL ȘI ROLUL ANTENELOR Pentru realizarea unei linii de radiocomunicație de orice tip, este necesar să existe un emițător, un receptor și instalațiile de antenă-fider, care realizează, adaptarea acestora cu mediul prin care se propagă undele electromagnetice. Funcționarea aparaturii de emisie și recepție se studiază la cursuri independente….

  • Dozarea Unor Aminoacizi Prin Metoda Cinetica Landolt

    cuprins Introducere……………………………………………………………………….……………5 Capitolul I. Aminoacizi…………………………..……………………………………………6 1.1.Generalități…………………………………………………………….……………6 1.2.Clasificare………………………………………………………………………………………10 1.3.Proprietăți chimice și fizice……………………………………………………………..11 1.3.1.Reacții generale………………………………………………………………………..11 1.4.Rolul fiziologic al aminoacizilor………………………………………………………14 1.5.Aminoacizi ce se pretează la determinări cinetice…………………………….17 1.5.1.Cisteina……………………………………………………………………………………17 1.5.2.Metionina……………………………………………………………………………..18 1.5.3.Triptofanul…………………………….…………………………………..19 1.6. Metode comparative pentru determinarea aminoacizilor……………….20 1.6.1. Determinarea spectrofotometrică a metioninei din produsul MecoparForte, comprimate…………………………………………………..20 1.6.2 Determinarea spectrofotometrică a metioninei din produsul Metaspar, capsule………………………………………………………………20 1.6.3. Determinarea metioninei printr-o…

  • Actionari Hidraulice Clasice

    ACȚIONĂRI HIDRAULICE CLASICE Cuprins Rezumat Introducere CAPITOLUL I LICHIDELE FOLOSITE ÎN ACȚIONAREA HIDROSTATICĂ ȘI PROPRIETĂȚILE LOR CAPITOLUL II . CONSIDERAȚII TEORETICE ȘI RELAȚII DE BAZĂ ÎN ACȚIONAREA HIDRAULICĂ A MAȘINILOR-UNELTE CAPITOLUL III MAȘINI HIDRAULICE. POMPE ȘI MOTOARE 3.1. POMPE CENTRIFUGALE 3.1.1. Considerații generale 3.1.2. Determinarea ecuațiilor de bază ale pompelor centrifugale 3.2. POMPE CU DEPLASAMENT…