Sistem cu Comanda Vocala Pentru Persoanele Imobilizate
LUCRARE DE DIPLOMĂ
SISTEM CU COMANDĂ VOCALĂ PENTRU
PERSOANELE IMOBILIZATE
CUPRINS
CUPRINS
INTRODUCERE4
CAPITOLUL I. MICROCONTROLERE5
I.1 Generalități
I.2 Microprocesor contra microcontroler
I.3 Tipuri de microcontrolere
I..3.1 Microcontrolere CISC
I.3.2 Microcontrolere RISC
I.3.3 Microcontrolerul ATmega328
CAPITOLUL II. SISTEME DE COMUNICAȚII
II.1 Comunicațiile wireless
II.2 Transmisia digitală (RS232)
II.3 Comunicația SPI
II.4 LabVIEW
CAPITOLUL III. TRANSMITEREA ȘI CODAREA INFORMAȚIEI
III.1 Transmiterea informației
III.2 Codarea informației
III.3 Encodorul HT12A/HT12E
III.4 Decoderul HT12D/HT12F
CAPITOLUL IV. RECUNOAȘTEREA COMENZILOR VOCALE ȘI MODUL DE TRANSMITERE
IV.1 Transmițătoare și receptoare radio
IV.1.1 Transmițătorul radio TWS-DS
IV.1.2 Receptorul radio RWS-371
IV.2 Recunoașterea comenzilor vocale
IV.2.1 Utilizarea și defectele recunoașterii vocale
INTRODUCERE
Nevoile vieții cotidiene nu fac diferențe între oameni, acestea fiind în general aceleași indiferent de statutul, poziția socială sau sexul fiecăruia, însă diferențele apar datorită unor situații nefericite cînd apar boli sau accidente și unii oameni se află în imposibiltatea de ași îndeplinii unele dintre aceste nevoi. Inegalitățile care apar între persoanele lipsite de mobilitate față de cele sănătoase, datorită incapacității lor de a se deplasa, m-au determinat să fac ceva pentru a veni în sprijinul primei categorii și am decis să realizez un sistem bazat pe comenzi vocale, care permite executarea unor comenzi practice, doar prin rostirea unei comenzi vocale, deci oferă posibilitatea unui grad mai mare de independență oamenilor imobilizați, aceștia putînd să aprindă sau să stingă luminile dintr-o încăpere fără a necesita asistență pentru realizarea acestui fapt.
Avantajul acestui sistem cu comandă vocală este acela că, față de întrerupătoarele convenționale, care pentru a fi comutate este nevoie ca cineva să se deplaseze pentru a le modifica poziția, acest sistem cu comandă vocală nu are nevoie decît de o simplă comandă vocală pentru stingerea sau aprinderea luminilor dintr-o încăpere. Aplicabilitatea acestui sistem este mult mai vastă, el poate fi folosit și pentru realizarea altor lucruri, de exemplu închiderea respectiv deschiderea ușiilor sau a geamurilor, acțiuni atît de simple pentru noi cei sănătosi, însă pentru cineva imobilizat acestea sunt de-a dreptul imposibil de realizat. Eu am ales această implementare(cu leduri) pentru că, o consider relevantă la exemplificarea modului de funcționare al acestui sistem bazat pe o simplă comandă vocală.
Tehnologia folosită conferă multă acuratețe și precizie atunci când vine vorba de realizarea acțiunilor cerute de utilizator. Un alt avantaj al acestui sistem este reprezentat de faptul că este foarte ușor de folosit, el nu necesită niciun efort din partea utilizatorului.
Am ales ca și obiect de studiu realizarea unui sistem cu comandă vocală, deoarece are o mare aplicabilitate practică, nu este chiar așa ușor de realizat, este ușor de adaptat pentru alte nevoi și ca și aplicație practică consider că este o alternativă foarte bună la întrerupătoarele convenționale. În zilele noastre, consider că este foarte important ca toți oamenii să aiba șanse egale la o viață normală, iar cu acest sistem oamenii imobilizați au o șansă in plus la o viață normală.
Un astfel de sistem este cu atât mai bun cu cât este mai precis, mai ușor de utilizat, mai practic, cu o durată de viață mai mare și mai ușor de implementat.
CAPITOLUL I. MICROCONTROLERE
I.1 Generalități
Circumstanțele în care ne găsim astăzi în domeniul microcontrolelor și-au avut începuturile în dezvoltarea tehnologiei circuitelor integrate, această dezvoltare a făcut posibilă înmagazinarea a sute de mii de tranzistoare într-un singur cip. Acesta a fost un punct de plecare pentru producția în masă de microprocesoare, în plus primele calculatoare au fost făcute prin adăugarea perifericelor ca memorie, lini de intrări-ieșiri, timere și altele. Circuitele integrate au fost rezultatul creșterii a volumului capsulei. Acestea din urmă conțin atât procesorul cât și perifericile. Primul cip care a conținut un microcalculator a devenit mai târziu un microcontroler.
La ora actuală există un număr extrem de mare de tipuri constructive de microcontrolere, un prim criteriu de clasificare care se poate întotdeauna aplica este lungimea cuvântului de date (dimensiunea), funcția de putere de calcul dorită și în plus față de alte caracteristici se pot alege variante având dimensiunea cuvântului de date 4, 8, 16, 32 și 64 biți. Nu este nevoie ca dimensiunea unui cuvânt mașină să fie egală cu dimensiunea cuvântului de date.
Există și multe variante zise dedicate, neprogramabile de utilizator la nivel de cod mașină, strict specializate pe o anumită aplicație, prin intermediul codului preprogramat și al resurselor hardware, utilizate pentru comunicații, controlul tastaturilor, controlul aparaturii audio/video, prelucrarea numerică a semnalului, etc..
Toate microcontrolerele se realizează la ora actuală în tehnologie CMOS (tehnologii similare celor utilizate la seriile standard CMOS de circuite numerice: HC, AC, ALV, etc.). Se pot realiza astfel structuri cu o mare densitate de integrare, cu un consum redus (care va depinde de frecvența de lucru), permițând eventual alimentarea de la baterie. Logica internă este statică (total sau în cea mai mare parte) permițând astfel, în anumite condiții, micșorarea frecvenței de ceas sau chiar oprirea ceasului în ideea optimizării consumului. Tehnologia este caracterizată și de o imunitate mai mare la perturbații, esențială într-un mare număr de aplicatii specifice. Se realizează variante pentru domeniu extins al temperaturii de funcționare (de ex.- 40 – +85 C). Există foarte multe variante de încapsulare (capsule de plastic și mai rar de ceramică), multe din ele destinate montării pe suprafată (SMD): SOIC, PLCC, PQFP, TQFP (x100pini), etc., dar și variante clasice cu pini tip DIP/DIL (tipic de la 8 la 68 pini). [4]
Practic, microcontrolerele sunt componente electrice care înglobeaza în ele majoritatea componentelor dintr-un calculator PC, toate acestea într-o dimensiune cât mai redusă, astfel că acestea au o unitate centrală, porturi, memorii, convertoare analog – numerice,plus alte periferice și nu numai. Ele pot fi programate destul de simplu, numărul de intstrucțiuni ce pot fi utilizate într-un program este destul de mare pentru aplicațiile obișnuite, ca și exemplu PIC16F84 are o memorie de program de 1024 de locații de memorie, ceea ce este destul de mare, prin urmare cel mai probabil nu va folosi nimeni niciodată toate aceste locații. [6]
I.2 Microprocesor contra microcontroler
Microprocesorul, uneori numit și procesor, este unitatea centrală de prelucrare a informației (CPU) a unui calculator sau sistem structurat funcțional, care coordonează sistemul și care, fizic, se prezintă sub forma unui cip electronic.
Microcontrolerul este o structură electronică destinată controlului unui proces sau, mai general, este un microcircuit care încorporează o unitate centrală (CPU) și o memorie împreună cu resurse care-i permit interacțiunea cu mediul exterior. Microcontrolerul diferă de un microprocesor în multe feluri. În primul rând și cel mai important este funcționalitatea sa. Pentru a fi folosit, unui microprocesor trebuie să i se adauge alte componente ca memorie și componente pentru primirea și trimiterea de date. Pe de alt parte, microcontrolerul este proiectat să fie toate acestea într-unul singur, nu sunt necesare alte componente externe pentru utilizarea sa pentru că toate perifericele necesare sunt deja incluse în el. Astfel, economisim timpul și spațiul necesare pentru construirea de aparate.
Microcontrolere se pot utiliza în foarte multe domenii, cele mai multe fiind cele industriale, în continuare se vor enumera câteva domenii practice în care le întâlnim, astfel avem:
în industria automobilelor (controlul aprinderii motorului, diagnoză, climatizare, sisteme de alarmă, etc.);
în electronica de consum, aici ne referim la sistemele audio, televizoare, camere video, casetofoane, telefonia mobilă, până și la GPS-uri și jocurile electronice;
în aparatura electrocasnică (mașini de spălat, frigidere, cuptoare cu microunde, aspiratoare plus alte electronice care se mai găsesc prin casă;
în controlul mediului și climatizare, aici ca și exemple putem da sistemele de irigații, halele industriale și serele;
în industria aerospațială;
în medicină, în aparatele de măsurat și/sau monitorizat;
în realizarea de periferice pentru calculatoare;
în mijloacele moderne de măsurare, aici ar fi aparatele de măsură și control, senzorii și traductoarele inteligente.
Figura 1.2.1 Microprocesor contra microcontroler
Unitatea de memorie este o parte a microcontrolerului a cărei funcție este de a înmagazina datele, cel mai ușor mod de a înțelege este dacă ne închipuim că aceasta este un dulap mare cu multe sertare. Iar dacă marcăm fiecare „sertar”, accesul la unul dintre ele cănd avem nevoie se va face foarte ușor. Daca știm care este sertarul care ne interesează, atunci cu siguranța știm și informația care se află în acesta, prin urmare nu avem dubii în ceea ce privește autenticitatea informației. Într-o locație de memorie se poate citi (R) sau scrie (W).
Figura 1.2.2 Exemplu de memorie ROM cu 16 locații de câte 8 biți [1]
Memoria constă din toate locațiile de memorie și adresarea nu este altceva decât selectarea uneia dintre ele. Aceasta înseamnă că noi trebuie să selectăm locația de memorie la un capăt și la celălalt capăt trebuie să așteptăm conținutul acelei locații. Ca să se poată face și scrierea într-o memorie trebuie să se introducă o linie adițională numită linie de control.
Unitatea de procesare centrală (UPC) este un bloc specific care are capabilitatea de a executa operații arimetice, înmulțire, împărție, scădere, etc., iar rezultatul este mutat dintr-o locație de memorie în alta. Locațiile unități centrale de procesare sunt numiți regiștrii.
Figura 1.2.3 Structura unei unități centrale de procesare cu trei regiștri [3]
Bus-ul de date, adică magistrala este calea prin care circulă informația, pot fi 8, 16 sau mai multe fire. Există două tipuri de bus-uri: bus de adresă, constă din atâtea linii cât este cantitatea de memorie ce dorim să o adresăm și bus de date, lățimea acestuia este atât de mare pe cât sunt datele. Prin magistrala de adresă se face transmiterea adreselor de la CPU la memorie, iar magistrala de date la conectarea tuturor blocurilor din interiorul unui microcontroler.
Figura 1.2.4 Conexiunile între principalele componente ale unui microcontroler [5]
Majoritatea microprocesoarelor și microcontroalelor actuale utilizează arhitectura Von Neuman. Memoria de progran care este de fapt în acest caz și memoria de date, conține atât instrucțiunile cât și datele iar pentru a le vehicula este folosit un singur bus. În calculatoarele PC întâlnim tot arhitectura Von Neuman, dar Microchip utilizează totuși arhitectura Harvard în care instrucțiunile și datele de memorii diferite, sunt vehiculate înspre și dinspre unitatea de calcul pe două bus-uri diferite iar executarea unei instrucțiuni nu are nevoie de mai multe cicluri mașină pentru că datorită celor două magistrale, într-un singur ciclu mașina se poate manipula atât codul instrucțiunii de executat cât și datele utilizate. Microcontrolerele reprezintă un compromis rezonabil între performanțe și preț, pentru extrem de multe aplicații acestea sunt mai multe decât suficiente iar prețul și faptul că au dimensiuni foarte mici le fac extrem de utilizate în ultimi ani, plus că acestea au un set de intrucțiuni extrem de reduse (maxim 35), făcându-le mai ușor de utilizat. [2]
I.3 Tipuri de microcontrolere
I..3.1 Microcontrolere CISC
Există mai multe tipuri de microcontrolere, în cele ce urmează se vor prezenta cronologic câteva date prin care acestea au rămas în istorie. Primul microcontroler apărut pe piață este INTEL 4048, acestea avea o structură Harvard modificată, cu 64-256 octeți de RAM, în ceea ce privește gradul lui de utilizare și în ziua de azi este încă foarte folosit datorită prețului scăzut al acestuia.
A doua generație de microcontrolere este INTEL 8051, acesta în ziua de azi este fabricat și de alți producători datorită faptului că este cel mai vândut. Acesta are o structură Harvard modificată cu spațiu de adresare diferit pentru program și date. Dispozitivele de intrări/ieșiri au un spațiu de adresare, acesta mai dispune de un procesor boolean prin care se pot executa operații complexe la nivel de bit, iar în funcție de rezultate se pot face salturi, ca și costuri pentru acest tip de microcontroler se găseste foarte mult soft, atât gratuit cât și contra cost.
Deasemenea microcontrolerul are posibilitatea de adresare a unei memorii externe de program și a unei memorii externe de date cu capacitate maximă de 64k octeți. Toate microcontrolerele din familia MCS51 au spațiu separat pentru memoria de date și de program. Acest lucru permite o creștere de viteză datorată atât suprapunerii parțiale a unor microoperații, cât și crearea posibilitații de adresare scurtă (cu un singur octet de adresă). Memoria de program poate fi doar citită. La 8051 primii 4k octeți de program sunt în chip. Restul se află în exterior, iar pentru a citi această memorie de program externă se folosește semnalul PSEN (Program Store Enable).
Memoria de date ocupă un spațiu separat față de memoria program. La 8051 există 128 octeți RAM în chip. Memoria de date externă poate fi accesată prin generarea de către unitatea centrală a semnalelor de citire RD sau scriere WR. Memoria de program și cea de date (externă) pot fi combinate dacă dorim, prin folosirea semnalelor RD si PSEN pentru a genera semnal de citire pentru o memorie comună în care să avem atât memorie program cât și memorie de date. [8]
Figura 1.3.1.1 Principalele caracteristici ale familiei MCS51
INTEL 8501 este considerat ca fiind un standard în industria microcontrolerelor performante, el este implementat cu o structură pe 8 biți, acesta fiind produs însă în mai multe variante. Majoritatea firmelor producătoare de microcontrolere produc modele compatibile cu standardul 8501, câte uni venind și cu diverse îmbunătățiri.
Tabelul 1.3.1.2 Tipuri de microcontrolere din familia 8501 [10]
Microcontrolerul 8501 are următoarele caracteristici:
unitatea centrală de procesare pe 8 biți;
128 de octeți de RAM interni;
4 K octeți de ROM intern;
posibilitatea de adresare de 64 K octeți de memorie proogram;
prosibilitatea de adresare a 64 K octeți de memorie de date;
32 de linii de I/O bidirecționale adresabile individual;
2 timere/contoare pe 16 biți;
5 surse de întrerupere cu două nivele de priorități;
generator de tact intern;
posibilitatea de lucru pe biți.
A treia generație de microcontrolere produsă de INTEl este 80C196, acesta este pe 16 biți și admite un tact până la 50Hz. Mai conține blocuri arimetice, lucrează cu 6 moduri de adresare, convertor A/D, canal de comunicație serial, controler de întreruperi cu 8 surse până la 40 de porturi de intrări/ieșiri, generator și wachtdog.
Următoarele generații de microcontrolere sunt versiuni populare ale microprocesoarelor 8086 și 8088 care au echipat primele calculatoare de la IBM, acestea numindu-se INTEL 80186 și 80188. Pe chip sunt incluse 2 canale DMA, două numărătoare/temporizatoare, controler de temperaturi și bloc de reîmprospatare pentru memoria RAM. Un avantaj al acestor microcontrolere prezintă faptul că acestea pot folosi unelte de dezvoltare, cum ar fi compilatoarele, asambloarele și altele de le calculatoarele personale.
Primul microcontroler creat de Motorola este MC14500, acesta având o arhitectura RISC cu o cale de date de 1 bit, 16 instrucțiuni și era furnizat într-o capsulă mică (16 pini), el a fost scos ulterior de pe piață.
Motorola 6805 se bazează pe procesorul 6800 și este asemănător cu 6502 produs de WDC, acesta având o structură Von Neuman în care instrucțiunile, datele, dispozitivele I/O împart același spațiu de adresare. Stiva este limitată la 32 de poziții din cauza indicatorului de stivă pe 5 biți. În cadrul acestei familii, acest tip de microcontrolere include convertoare A/D, sintetizoare de frecvență cu PLL, canale seriale și altele.
COP800 de la National Semiconductor este un microcontroler de 8 biți care conține Microwire, UART, RAM, ROM, temporizatoare de 16 biți, controler de întreruperi, comparator, wachtdog, monitor de tact, generator PWM, transmisia în infraroșu, convertor A/D cu 8 canale, protecție la scăderea tensiuni de alimentare, un trigger SCHMITT și circuit de trezire cu mai multe intrări. Are și un set puternic de instrucțiuni, majoritatea fiind de un singur octet și executate într-un singur ciclu, acest lucru este unul bun, îmbunătățește eficiența.
HPC sunt microcontrolere de 16 biți de mare performanță, produs tot de cei de la National Semiconductor, acesta având o arhitectura Von Neuman. Unitatea centrală de procesare este capabilă să execute și operații arimetice. Ca și structură sunt bazate pe structura celor din familia COP800 având în plus canalele seriale HDLC (High Level Data Link Control) și elementele DSP, la o tensiune de alimentare de 3,3V. Acest tip de microcontrolere se folosește în telecomunicații, în sistemele de securitate, imprimante LASER, hard discuri, frâne ABS și nu în ultimul rând în aplicații militare.
Z8 (zilog) este unul dintre primele microcontrolere, modelul inițial UART, numărătoare, 40 de linii digitale intrări/ieșiri, controller de întreruperi. Z8671 avea în ROM un Basic simplu, iar modelul Z86C95 are o structura Harvard, facilități DS, etc.. Un avantaj al acestuia este că se pot folosi pentru extensii unele circuite de interfață din familia lui Z80.
Un alt microcontroler puternic este HD64180 de la Hitachi, acesta are la bază structura și posibilitățile lui Z80, având în plus 2 canale DMA, canal de comunicații sincrone și asincrone, numărătoare/temporizatoare și controler de întreruperi. Unele versiuni ale acestui microcontroler includ EPROM, RAM și PIO (Programmable Input Output). Rulează instrucțiunile lui Z80, dar în mai puține cicluri și are instrucțiuni în plus, unele variante funcționează până la 18 MHz.
TMS370 de la Texax Intruments este similar cu 8051, acesta conține RAM, ROM, două numărătoare respectiv temporizare de 16 biți, controller de întreruperi, watchdog, generator de PWM, convertor A/D cu 8 canale, SCI (Port Serial Asincron), SPI (Port Serial Sincron), comparator în plus mai poate executa și operații arimetice. Impulsul de tact poate ajunge până la 20MHz cu un 5MHz tact de magistrală.
MuP21 creat de Forth este un microcontroler care are puterea de calcul a unui procesor INTEL 80486 la un preț mult mai mic. Acesta are integrat un coprocesor video care gestionează o memorie video, deși se poate atașa direct la un monitor. Acest microcontroler a fost creat ca să ruleze programul OKAD, acesta fiind un program de proiectare VLSI, prin urmare datorită caracteristicilor sale foarte bune, acesta poate să ruleze de 10 ori mai repede decât 486. Microcontrolerul Mup21 are 40 de pini.
Există mai multe criterii de clasificare a microcontrolelor, acestea se pot clasifica în funcție de furnizor, după interfețele pe care le au incluse în configurație, după aplicațiile în care acestea se folosesc, dar în cele ce urmează se va face o scurtă clasificare a acestora după compatibiliatea software, astfel avem:
Microcontrolere CISC
compatibile 8051;
Motorola 68xx;
compatibile x86;
COP8 (National Semiconductor);
TMS370 (Texas Intruments);
ST (Thomson);
alte arhitecturi (Hitachi) – low cost;
Microcontrolere RISC
super H;
PIC;
Atmel. [7]
I.3.2 Microcontrolere RISC
PIC (MicroChip) sunt primele microcontrolere RISC apărute, acestea având un număr mic de intrucțiuni, aproximativ 33, simplitatea arhitecturii care este Harvard duce la realizarea unui chip de mici dimensiuni, cu puțini pini, consum de enrgie redus, preț mic și viteză mare. Tocmai acestea avantaje au dus la impunerea microcontroalelor PIC pe piață. Există trei linii de microcontrolere PIC: PIC16C5x, PIC16Cxx și PIC17Cxx, cel mai bine cotat pe piață este însă linia 16Cxx.
PIC este acronimul de la Peripheral Interface Controller, desemnând o familie de microcontrolere produse de Microchip Technology, având la bază PIC 1650 care a fost inițial dezvoltat de către General Intrument’s Microelectronics Division. Compania Microchip produce o gamă de peste 550 de microcontrolere pe 8, 16 sau 32 biți, destinate unei largi game de aplicații. [11]
Microcontrolerele pe 8 biți din familia PIC produsă de către Microchip au o arhitectură Harvard modificată, cu magistrala memoriei de date separată de magistrala memoriei pentru program, având lărgimea magistralei memoriei de program de 12, 14 sau 16 biți. În aceasta familie găsim o gamă largă și variată de microcontrolere, cu pini incepând de la 6 pana la 80 și cu o memorie pentru program între 384 octeți și 128 KB. Cele mai simple au un set de numai 33 de instrucțiuni, acest set se gîsește la majoritatea microcontrolelor pe 8 biți, acest lucru ajutând la compatibilitatea de pe un model pe un altul. Acesta permite ca programele scrise pentru un anumit microcontroler să poată fi rulate pe modele cu o arhitectură similară fără a fi necesare modificari ale codului.
În cele ce urmează se vor prezenta câteva dintre caracteristicile de bază ale microcontrolerului PIC pe 16 biți, astfel avem:
arhitectura RISC;
moduri de adresare indirectă, directă și relativă;
memorie RAM internă;
memorie EPROM sau FLASH;
porturi I/O digitale, suportă curenți mari de intrare/ieșire (maxim 25mA);
timer integrat cu prescalare pe 8 biți;
circuite de reset;
timer de urmărire;
mod de economisire a energiei;
interfață pentru semnalul de tact extern.
Microcontrolerul AVR are la bază un procesor RISC cu o arhitectură Harvard, adică unitatea centrală de procesare are memorie de program și memorie de date separate. Pe baza acestui nucleu RISC, firma Atmel a dezvoltat mai multe familii de microcontrolere, cu diferite structuri de memorie și de interfețe I/O, destinate diferitelor clase de aplicații. Aceste microcontrolere sunt destinate aplicațiilor simple cum ar fi: controlul motoarelor, controlul fluxului de informație pe portul USB sau controlul accesului de la distanță, plus alte aplicații diversificate.
Ca și caracteristici, microcontrolerele AVR pe 8 biți dețin următoarele caracteristici, astfel avem:
memorie flash programabilă integrată, folosită ca memorie de program, toate procesoarele AVR având o memorie de program integrată, asta însemnând că nu este nevoie de memorii EPROM sau ROM externe pentru a stoca codul programelor. Exista doua moduri de programare: serială și paralelă;
are 32 de registre de lucru de 8 biți fiecare, această caractersitică fiind specifică procesoarelor RISC. Un așa număr mare de registre permite stocarea variabilelor în interiorul procesorului, în locul stocări acestora în memorie, lucru care necesită un timp mai lung când vine vorba de accesare. Din moment ce salvarea datelor se face în procesor, acest lucru va duce la creșterea vitezei de execuție a programului, adică va rula mai repede;
are o frecvență de lucru care poate fi controlată din software de la 0 la 16 MHz, într-un singur ciclu de tact se execută cele mai multe instrucțiuni, acest fapt ducând la îmbunătățirea performanței de 10 ori față de procesoarele convenționale care operează la aceeași frecvență, ca și exemplu aici se poate da INTEL 8051;
AVR are o memorie de date integrată de tip EEPROM și o memorie RAM tot integrată. Unitatea centrală de procesare are arhitectura Hardvard, memoriile EEPROM și RAM ale microcontrolerului sunt memorii de date, acestea fiind folosite pentru a stoca variabile, respectiv constante;
acest tip de microcontroler poate să realizeze funcția RESET fără să fie nevoie de decuplarea circuitului;
are un timer programabil încorporat cu circuit de prescalare separat, acesta fiind folosit pentru sincronizarea aplicațiilor;
surse interne și externe de întrerupere;
pentru economisirea energiei are 6 moduri de operare, el putând lucra în modurile de operare SLEEP și POWER DOWN, moduri prin care se face economisirea de energie, atunci când procesorul nu lucrează;
are un oscilator integrat RC, care are rolul de a micșora și mai mult numărul componentelor în cazul microcontrolelor care–l conțin;
are un grad de compatibilate mare, pornind de la procesoare mici cu 8 pini și poate ajunge și la procesoare cu 100 de pini;
acest tip de microcontroler este prevăzut cu o gamă largă de I/O și de periferice incorporate.
Microcontroalerele din familia AVR prezintă o organizare de tip RISC din punctul de vedere al execuției unei instrucțiuni pe ciclu mașină. Prezenta unor blocuri interne precum oscilatorul intern, unitatea UART, interfața SPI, timerele, convertoarele analog-digitale, PWM, comparatoare analogice determină utilizarea acestor microcontrolere într-o gamă foarte largă de aplicații. Memoria de program este de tip flash integrală, poate fi programată fără scoaterea din sistem, ceea ce permite efectuarea rapidă de update-uri în programe.
Instrucțiunile acestei familii de microcontrolere au fost proiectate pentru a reduce dimensiunea unui program scris în limbajul de asmblare sau în limbajul C. Aceste microcontrolere au o gamă largă de răspândire datorită costului mic de dezvoltare a unei aplicații, timpul de proiectare este scurt, acest fapt se datorează posibilități programarii memoriei FLASH și a memoriei EEPROM. Aceste microcontrolere au un consum redus de energie, domeniul tensiunilor de alimentare este cuprins între 1,8 și 5V. Datorită diferitelor moduri de operare acesta ne asigură într-o oarecare măsură că acesta nu va consuma energie decât atunci când este nevoie.
Printre cele mai utilizate microcontrolere de uz general putem enumera: ATMEGA 8, ATMEGA 16, ATMEGA 128, ATMEGA 162, etc., cele cu funcții specializate se împart în următoarele categorii:
familia TINY AVR – cuprinde tipul de microcontrolere care sunt destinate unor aplicații simple, acestea având o memorie de program de 1 – 8KB;
familia MEGA AVR – cu un set dezvoltat de instrucțiuni și cu o memorie de program de 4 – 256 KB;
familia XMEGA AVR – destinată unor aplicații complexe, acestea au unități DMA (Direct Access Memory), și folosesc un spațiu de memorie de program între 16 – 384KB;
și ultima categorie care conține mai multe tipuri, LIGHTING AVR (acestea conțin un procesor de semnal, concepute pentru motoarele de curent continuu), LCD AVR (conțin un controler pentru adresarea dispozitivelor LCD) și CAN AVR (acestea conțin o interfață CAN implementată hardware).
Microcontrolerele din familia AVR de 8 biți au un set de 131 de instrucțiuni și 32 de registre de uz general, registrele sunt direct adresabile de unitatea arimetica și logică permițând accesarea a două registre independente într-o singură instrucțiune, astfel obținem o eficiență mult mai mare în ceea ce privește execuția, acestea fiind de vreo 10 ori mai rapide decât microcontrolerele convenționale cu arhitectura CISC. [9]
I.3.3 Microcontrolerul ATmega328
Pentru prelucrarea datelor s-a folosit un microcontroler de la Arduino Uno, respectiv Atmega328 R3, care este ultima versiune al celor de la Arduino Uno. Acesta este un microcontroler care are la bază Atmega328, un controler pe 8 biți. Acest tip de microcontroler este programabil prin portul USB și nu are nevoie de periferice adiționale sau programatori specializați. Arduino este o platformă open-source (accesul la codul sursă este gratis) și codul este scris în Java. Pentru conectarea la un PC prin portul USB este nevoie doar de un cablu USB. Ca și caracteristici tehnice se vor prezenta în continuare cele mai importante, astfel avem:
tensiunea de operare este de 5V;
tensiunea de alimentare recomandată este între 7 – 12V;
limitele de tensiune pe alimentare nu trebuie să depășească intervalul 6 – 20V;
intrări/ieșiri digitale în număr de 14 dintre care 6 sunt PWM;
pini pentru intrări analogice în număr de 6;
curentul continuu pe un pin de intrare/ieșire este de 40mA;
curentul continuu pentru pinul de 3,3V este de 50mA;
memoria FLASH este de 32KB, din care 0,5KB este folosit pentru încărcarea programului;
memoria SRAM este de 2KB;
memoria EEPROM este de 1KB;
oscilator de 16MHz; [12]
În cele ce urmează se vor prezenta părțile auxiliare ale microcontrolerului, cele care vor duce la îndeplinirea obiectivului, astfel avem :
Figura 1.3.3.1 Schema microcontroler-ului [15]
În figura de mai sus se poate vedea că are un bun circuit de resetare, două oscilatoare, intrări pentru ADC, pini digitali, intrări analogice, modul de alimentare, circuit de reset, un oscilator de 16MHz, dacă tensiunea este mai mare de 20V, unele componentă se pot distruge ceea ce duce la nefuncționarea circuitului. Alimentarea se mai poate face și direct printr-o mufă USB, din care se iau direct 5V.
Figura 1.3.3.2 Schematicul celui de-al doilea microcontroler [14]
Acesta nu este foarte diferit de primul, comunicarea dintre ele se face prin magistrale, acesta este cel care se conectează la PC și se programează.
Figura 1.3.3.3 Schema circuitului de alimentare
Figura 1.3.3.4 Schema circuitului de resetare
Figura 1.3.3.5 Schema intrărilor analogice
Pentru programarea pe portul USB s-a folsit o soluție standard de conectare la portul JTAG al microcontroler-ului, tehnologia FTDI (controler USB și driver de conectare) se găsește implementată aproape în toate sistemele cu microprocesor care au nevoie de control prin portul JTAG, pentru aplicație am folosit Atmega16U, o tehnologie tot low-power.
Figura 1.3.3.6 Schema circuitului de programare prin portul serial-virtual [13]
CAPITOLUL II. SISTEME DE COMUNICAȚII
În prezent, practic aproape toată lumea vrea și trebuie să cumunice cu toată lumea, prin urmare sistemele de telecomunicații, există și unele excepții, chiar dacă sunt rare acestea sunt structurate în rețele. Modul în care un sistem, o rețea de telecomunicații asigură legăturile între diverși utilizatori se numește conectivitate. Formele primare de conectivitate sunt: punct cu punct, punct cu multipunct, multipunct cu punct și multipunct cu multipunct. În mod normal legăturile trebuie să fie bidirecționale. Conectivitatea punct cu punct asigură legătura între două puncte fixe, în figura de mai jos se poate vedea un exemplu de astfel de sistem utilizat în CS, care în prezent nu prea se mai folosește.
Figura 2.1 Conectivitate punct cu punct
Conectivitatea punct cu multipunct, de tipul radiodifuzuine permite transmisii unidirecționale, dintr-o singură stație la numeroase altele care pot doar să recepționeze nu să și emită informație, aici ca și exemplu se pot da sistemele de televiziune prin satelit care sunt tipice acestui sistem de conectivitate.
Figura 2.2 Conectivitate punct cu multipunct
Conectivitatea multipunct cu punct permite conectarea bidirecțională din mai multe stații la o singură stație principală. De la satelit se transmite către numeroși utilizatori în sistem de radiodifuziune, de la stații se transmite spre satelit printr-o tehnică de acces multiplu. În mod normal procedeul asigură conectarea multor stații de capacitatea mică la o stație de mare capacitate.
Figura 2.3 Conectivitatea multipunct cu punct [19]
Conectivitatea multipunct cu multipunct este realizată atunci când mai multe stații folosesc în comun resursele satelistului, atât pentru transmisii cât și pentru recepții.
În prezent se folosesc pe scară largă mai multe tehnologii de telecomunicații: prin perechi de cablu torsadate (cele din telefonie), prin cablu coaxial și fibră optică, prin rețele radio locale, prin radiorelee și prin sateliți. Aceste tehnologii sunt mai mult complementare decât concurente, fiecare satisfăcând cu avantaje mai mari una decât cealaltă necesitățile specifice care sunt cerute.
Primele patru tehnologii sunt avatajoase și mai folosite pentru comunicațiile locale și regionale, cu conectivitate punct cu punct, se pot realiza și conectivității multipunct cu multipunct dar numai prin interconectarea punctelor prin comutare. Sistemele de CS prin însăși natura lor, acoperă arii imense și asigură orice tip de conectivitate fără comutare, din acest punct de vedere, avantajul este unul foarte mare. Sistemele de telecomunicații cu cablu coaxial și fibra optică pot asigura viteze de transmisie mult mai mari, iar sistemele cu cabluri torsadate există deja. Sistemele de RR sunt ieftine și totodată de ceva vreme în funcțiune. Rețelele radio locale sunt ieftine și mai ușor adaptabile necesităților locale. Într-un fel, sistemele RR și CS sunt asemănătoare, folosind aceleași principii de transmisie, cam aceleași benzi de frecvență și în consecință echipamente construite pe aceleași principii. Deosebirile majore provin din modul de lucru (punct cu punct în RR, multipunct cu multipunct în CS) și distanțele parcurse de unde între stații.
Mediul ambiant influențează funcționarea aparaturii electronice din sistemele de RR și CS precum și propagarea undelor electromagnetice. Mediul ambiant își exercită influența printr-un mare număr de factori, cum sunt: temperatura, umiditatea, presiunea, conținutul în microparticule de praf, fum, ceață, conținutul în particule cu sarcină, câmpurile gravitaționale și câmpurile electromagnetice existente, prin radiațiile atomice și electromagnetice.
Trăim într-o lume în continuă schimbare, plină de contradicții și contraste în care cel mai probabil cea mai remarcabilă evoluție o au tehnologiile de comunicații și de informații. Nu e de conceput un mediu de activitate umană care să nu depindă de aceste tehnologii, întreaga infrastructură de comunicație și prelucrarea informațiilor tinzând spre globalizarea absolută. [17]
Sistemele de comunicații reprezintă totalitatea echipamentelor care permit transportul informației între două sau mai multe puncte prestabilitate (fixe sau mobile), cu un anumit grad de fidelitate. Sistemele de comunicație cuprind sursa de informație pentru echipamentul de emisie, canalul de transmisie, echipamentul de recepție și un destinatar.
Figura 2.4 Schema bloc a unui sistem de comunicații
În general un sistem de comunicație este bidirecțional, așa numitele sisteme de comunicații pe 4 fire, sensurile de transmitere sunt separate fizic, sau sisteme de comunicație duplex, aici comunicația este simultan bidirecțională. Sistemele de comunicații pot fi:
duplex care permite comunicarea bidirecțională simultană;
simplex care permite doar comunicarea unidirecțională;
semiduplex care permite comunicarea bidirecțională, dar nu concomitent.
Sistemele duplex și semiduplex se pot împărți în sisteme de comunicații cu 2 fire, în care sensurile de transmisie sunt separate fie în frecvență fie în timp și sisteme de comunicații pe 4 fire, în care cele două canale sunt separate fizic, în această situație echipamentele terminale sunt identice.
Comunicațiile simplex au loc într-un singur sens și permit numai unui singur nod să transmită date în timp ce celelalte noduri ascultau canalul de comunicație. Acest lucru era posibil deoarece aceste transmisii se făceau în aceeași bandă de frecvență. Acest tip de comunicație se mai întâlnește încă și azi în cazul sistemelor de transmisie folosite de către posturile radio și de cele din televizune.
Figura 2.5 Diferența între semiduplex și duplex [20]
Un dispozitiv electronic care are în structura sa atât un emițător cât și un receptor și mai permite atât transmiterea informației cât și recepționarea sa, un astfel de dispozitiv se numește transceiver. Sistemele de comunicații duplex sunt în principiu acele sisteme care sunt compuse din cel puțin două noduri de comunicație și care pot să comunice reciproc în ambele direcții. Acestea sunt adoptate în aproape toate rețelele de comunicații, fie pentru a asigura o conexiune în ambele sensuri, fie pentru a implementa o cale de reacție care să realizeze o monitorizare sau un control de la distanță a diferitelor echipamente.
Sistemele semiduplex asigură o cale de comunicație în ambele direcții, dar numai o singură direcție este activă la un anumit moment, ideea principală este că amândouă simultan nu pot sa fie. În practică, într-un mod mai explicit ideea este că atunci când un nod de comunicație începe să transmită, nodul receptor nu poate să înceapă propria transmisie până când primul nod care a început transmisia nu transmite un mesaj prin care avertizează că și-a terminat transmisia, din acel moment nodul receptor trece în mod transmițător și poate și el din acel moment să își înceapă propria transmisie.
Un sistem duplex permite realizarea unei comunicații de date în ambele sensuri de direcții și spre deosebire de comunicațiile semiduplex, această comunicație se realizează în același timp. Ca și exemplu, cel mai des întâlnit și foarte util din viața de zi cu zi este telefonia. În cadrul acestor sisteme de comunicații, ambele noduri pot să transmită sau să recepționeze informații.
În general un sistem de comunicații preia informația nu de la o singură sursă ci de la mai multe, întrucât într-un lanț de comunicație, canalul este de regulă componenta cea mai costisitoare și în consecință este de dorit din punct de vedere economic, ca aceasta să fie cât mai încărcat, pentru o utilizare cât mai eficientă a canalului, sursele se multiplexează. Multiplexarea poate să fie frecvențială (FDM), temporară (TDM) și în lungime de undă (DM) iar sursele de informație pot să producă atât semnal analogic (SA) cât și semnal digital (SD).
Un semnal analogic se caracterizează printr-o variație continuă în timp ocupând un anumit domeniu al amplitudinilor și ocupă în general o bandă finită de frecvență, banda de bază a semnalului care are valoarea BB=fmsx-fmin. Un semnal digital poate să aibă un număr finit de valori diferite, ca și exemplu un semnal digital binar reprezintă o suită de simboluri care este compus numai din 0 și 1, un semnal digital ternar poate fi reprezentat prin 3 valori distincte, adică 0, 1 și 2.
Un sistem de comunicație analogic primește informația de la mai multe surse analogice, de obicei le multiplexează frecvențial, după care urmează o operație de modulare, semnalul este aplicat canalului. La recepție există un demodulator frecvențial și un demultiplexor în care se obțin semnalele analogice, SA1, SA2…..SAn.
Figura 2.6 Schema bloc a unui sistem de comunicații analogic
Sistemele de comunicație digitale sunt sistemele care asigură transmiterea informațiilor preluate de la mai multe surse digitale.
Figura 2.7 Schema bloc a unui sistem de comunicații digital
Ca să înțelegem fiecare componentă ce înseamnă, se vor spune cât mai pe scurt câteva cuvinte, astfel avem Mux TDM care realizează multiplexarea temporară, avem un codor sursă (CS), de obicei informația digitală de la ieșirea MUX e recodată pentru ca fiecare simbol să poarte maximul de informație posibilă, realizează o eficientizare a sursei care de obicei este redundantă, mai avem un codor canal (CC) care este necesar pentru a adapta informația digitală la posibilitățile canalului de transmitere, un canal zgomotos reclamă o codare suplimentară care să compenseze sau să corecteze erorile transmisiei prin cablu. De cele mai multe ori informația digitală obținută la ieșirea CC este modulată, în cadrul unei ultime operații necesare pentru a îmbunătăți fidelitatea transmiterii într-un astfel de canal de comunicație. Si ce este cel mai important de spus aici este că la recepție operațiile sunt executate în ordinea inversă celor de la emisie.
Transformarea unui semnal analogic într-unul numeric sau modulația impulsurilor în cod presupune eșantionarea, cuantizarea și codarea eșantioanelor cuantizate. Operația de cuantizare poate să urmeze sau să o preceadă pe cea de eșantionare, rezultatul rămânând neschimbat.
Echipamentul de linie este format din linia propriu-zisă care reprezintă mediul material prin care se propagă semnalul și un bloc numit repetor în cazul sistemelor de comunicație analogice sau generator pentru sistemele de comunicație numerice. Distanța între două repetoare sau generatoare este bine să fie cât mai mare. Principalele linii utilizate în practica în mediul material de transmisie sunt:
liniile aeriene care reprezintă un mediu de transmisiune format din două fire metalice paralele;
perechi simetrice care reprezintă un mediu de transmisiune format din două fire metalice izolate și torsadate;
perechea coaxială care este reprezentată prin două fire metalice concentrice separate printr-un dielectric;
fibre optice, se poate spune că sunt un ghid dielectric cilindric pentru unde electromagnetice; [16]
Sistemele de comunicații fără fir adică wireless includ radioreleele, sistemele bazate pe difracția troposferică, sistemele prin satelit, sistemele de comunicații personale (telefoanele mobile), rețelele de comunicații personale și rețelele de calculatoare fără fir (WLAN). Releele de microunde punct-la-punct, în vizibilitate directă au fost larg folosite până la cel de al doilea război mondial. Aceste relee acoperă de regulă o distanță de aproximativ 60 km. În jur de 100 de asemenea radiorelee pot acoperi întreaga suprafață a SUA și oferă servicii de comunicații de bandă largă. Difracția pe troposferă poate mări lungimea legăturii pâna la câteva sute de km.
După 1960, sateliții geostaționari au început să joace un rol important în telecomunicații, extinzând în mod dramatic lungimea legăturii la aproximativ 12000 km. Trei sateliți pot oferi servicii care să acopere toate concentrațiile importante de populație de pe glob. După 1980, devin populare telefoanele celulare și cele fără fir. Comunicațiile personale și comunicațiile celulare devin motorul dezvoltării industriei telecomunicațiilor. Mai multe sisteme de sateliți au fost desfășurate pentru a susține comunicatiile personale telefonice și de date între oricare două puncte de pe pămant.
Figura 2.8 Sistem de comunicații fără fir simplificat [18]
II.1 Comunicațiile wireless
Reprezintă o modalitate de transmisie a informației pe o anumită distanță fără a fi nevoie de folosirea unor conductori (fire). Distanțele pe care poate circula informația poate fi de cațiva metri sau de ordinul miilor de kilometri, aici contează foarte mult tipul de aplicație în care se folosesc astfel de transmisii. Acest tip de comunicații este folosit pentru aplicații în care sistemele clasice de comunicare (aici intră sistemele cu fir) nu pot fi implementate fizic și în același timp pot conecta într-o rețea noduri care se află la distanțe de zeci sau chiar sute de km.
Termenul de comunicații wireless este folosit atunci când se fac raportări la sistemele de comunicații, transmițătoare și receptoare radio, pentru control la distanță. Există mai multe posibilități în ceea ce privește comunicația wireless, astfel avem:
după tipul semnalului purtător de informație avem:
radio;
microunde;
infraroșu;
după modul în care se face comunicarea între noduri avem:
comunicații punct cu punct;
comunicații punct cu multipunct;
rețele mobile;
rețele wireless;
broadcasting.
Semnalele radio sunt semnale wireless a căror informație este transmisă cu ajutorul undelor radio. Aceste unde radio pot să atingă viteze de până la 300.000 de kilometri/secundă. Dacă dorim să facem raportare la viteza de transmisie a sunetelor (mai precis la viteza sunetului), să considerăm un exemplu, în care un concert este transmis în direct. În acest caz un semnal radio (care conține concertul sau parți din concert) va ajunge la radio-ascultători mai devreme decât va ajunge semnalul sonor la spectatorii situați în rândurile din spatele sălii. Transmisia informațiiilor de către aceste semnale este realizată de undele radio, care vor fi pe post de purtatoare ale informației transmise. Toate aceste unde au o anumită amplitudine, o anumită lungime de undă și o anumită frecvență. Toate aceste elemente componente ale undelor radio vor permite transmisia informațiilor de la emițător către receptor, transmisie care poate să fie modulat în amplitudine, în frecvență sau în fază.
II.2 Transmisia digitala (RS232)
Transmisia digitala (RS232) de date a evoluat de la conexiunea între un calculator cu echipamentele periferice, la calculatoare care comunică în rețele internaționale complexe. Mai sunt însa multe de învățat de la simpla legatură punct la punct, sau RS232 dupa standardul EIA. Cu toate că transferul paralel este mai rapid, majoritatea transmisiilor de date între calculatoare sunt făcute pe cale serială pentru a reduce costul cablului și conectorilor. Există și limitări fizice de distanță, care nu pot fi depășite de magistrale paralele. În comunicația serială, datele sunt transmise bit cu bit. Toate comunicațiile sunt caracterizate de trei elemente principale: date (înțelegerea lor, scheme de codificare, cantitate), temporizări (sincronizarea între receptor și emițător, frecvența și fază) și semnale (tratarea erorilor, controlul fluxului și rutarea).
Magistralele seriale se utilizează ca suport pentru transferul de informații între calculatoare sau între componentele autonome ale unui sistem de calcul. Caracteristica principală a oricărei magistrale seriale este transmisia secvențială, bit cu bit, a informațiilor, folosindu-se un număr redus de semnale (linii de comunicație).
În contrast, o magistrală paralelă permite transferul simultan al mai multor biți (8, 16, 32), folosind în acest scop mai multe linii de date. În principiu, transmisia serială asigură o viteză de transfer mai redusă, în comparație cu transmisia paralelă, însă este mai economică (număr mai redus de linii de transmisie), iar distanța maximă de transfer este semnificativ mai mare. Magistralele seriale pot fi clasificate după mai multe criterii :
după modul de sincronizare :
transfer sincron care utilizează un semnal explicit de ceas (de sincronizare) pentru specificarea momentului în care un bit de date este valid;
transfer asincron în care nu se utilizează un semnal de ceas, sincronizarea între unitatea emitentă și cea receptoare se face în mod implicit pe baza structurii specifice a datei transmise ( aici specific este standardul RS 232);
după lungimea blocului de date transmis :
transfer pe octet;
transfer pe bloc (număr mai mare de octeți);
după numărul de unități de comunicare :
transfer serial de tip punct-la-punct în care legătura se realizează între două echipamente;
transfer serial multipunct : legătura se realizează simultan între mai multe echipamente, din care la un moment dat unul transmite și restul ascultă;
după direcția de transfer :
transfer unidirecțional (într-un singur sens);
transfer bidirecțional sau full duplex (simultan în două sensuri);
transfer bidirecțional pe o singură linie sau halfduplex (se transmite pe rând în cele două direcții);
după domeniul de utilizare :
magistrale de sistem sunt folosite pentru interconectarea componentelor unui microsistem (de exemplu microcontrolor, memorii, convertoare A/D și D/A etc.);
canale de comunicație serială sunt folosite pentru interconectarea unor echipamente inteligente (de exemplu imprimanta, calculatoare, consola ) prin legătura punc-la-punct;
rețea de comunicație este folosită pentru asigurarea comunicației multipunct între un set de echipamente de calcul.
Transferul serial se realizează pe baza unui set de reguli care dezvoltă protocolul de comunicație. Două echipamente care comunică pe o magistrală serială (canal serial) trebuie să respecte același protocol și aceeași parametri de transmisie de exemplu viteza de transfer, mod de sincronizare, lungimea blocului de date, plus altele. Pentru a asigura interoperabilitatea între diferite echipamente realizate de diversi producători, s-au definit o serie de standarde internaționale, care specifică :
modul de transmisie a datelor (sincron/asincron);
modul de structurare a datelor transmise (octet, bloc);
viteza de transmisie;
mecanismele de detecție și corecție a eventualelor erori;
tipul semnalelor folosite pentru transmisie ( tensiune, curent, tensiune diferențiala, etc.);
mecanismele de sincronizare a echipamentelor comunicante;
tipul de conectori folosiți;
natura și parametri fizici ai mediului de transmisie (ex : cablu bifilar torsadat, cablu coaxial, fibră optică, etc.);
Cele mai cunoscute standarde folosite pentru comunicația serială sunt : RS 232 (V24),
RS 485, I2C și HDLC/SDLC.
Standardul RS232 este cel mai cunoscut și utilizat standard de comunicație serială asincronă. El a fost definit de mai multe organisme internaționale de standardizare sub diferite nume : IEC232, CCITT-V24, RS232C. Inițial standardul a fost conceput cu scopul de a permite conectarea unui terminal inteligent la un calculator central printr-o legatură telefonică. Standardul precizează interfața dintre un echipament de calcul (DTE- Data Terminal Equipment) și adaptorul sau la linia telefonică (DCE- Data Circuit-terminating Equipment), cunoscut și sub numele de modem (Modulator/Demodulator). Interfața permite comunicația serială bidirecțională între cele două echipamente, și este simetrică la cele două capete ale liniei. Ulterior specificațiile acestei interfețe s-au folosit pentru a realiza legături seriale între diverse echipamente fără a se mai folosi un modem.
Principalele precizări ale standardului RS232 se referă la :
modul de transmisie : serial asincron, bidirecțional (pe două linii de date separate);
codificarea informațiilor binare : prin nivele de tensiune sau curent (bucla de curent) :
1 logic – (-3V … -15V);
0 logic – (+3V…-15V);
structura informației elementare transmise :
un bit de start (0 logic);
5-8 biți de date;
0-1 bit de paritate (paritate pară sau impară);
1-2 biți de stop (1 logic);
semnale utilizate pentru transmisia de date și pentru controlul fluxului de date;
tipul de conectori folosiți (RK 25, mufă și soclu) și poziția semnalelor pe pinii conectorilor;
modul de interconectare a semnalelor la cele două capete ale unui cablu de transmisie;
viteza de transmisie (110, 300, 600, 1200, 2400, 4800, 9600, 19200 bauds);
reguli de control al fluxului de date (control hardware – protocolul DTR/DSR sau software – protocolul XON/XOFF).
Figura 2.2.1 Structura unui caracter transmis conform standardului RS232 [21]
În cazul transmisiei seriale asincrone, sincronizarea între unitatea receptoare și cea emitentă se realizează la începutul fiecărui caracter prin bitul de start (0 logic). De precizat este că în repaus linia este în 1 logic. Citirea datelor se face secvențial, la jumătatea intervalelor de bit care urmează bitului de start. Protocolul asigură citirea corectă a datelor chiar și în cazul în care există mici diferențe (mai mici de 2%) între frecvența de emisie și cea de citire a datelor. Aceasta sincronizare nu s-ar păstra în cazul în care lungimea datelor utile ar fi mai lungă.
Pentru controlul fluxului de date transmis se poate utiliza un protocol hardware sau unul software. În primul caz se utilizează semnale explicite (grupul de semnale DTR/DSR sau RTS/CTS). prin care unitatea receptoare poate să oprească temporar fluxul de date transmis. În acest fel se poate sincroniza frecvența de emisie a datelor la viteza de prelucrare a unității receptoare. A doua metodă nu utilizează semnale de control dar în schimb folosește un set de coduri speciale prin care poate să oprească (codul XOFF) sau să repornească (codul XON) fluxul de date. Aceasta metodă se poate utiliza numai la transmiterea unor date în codificare ASCII. La transmisia binara codurile de control ar putea să fie prezente în datele de transmis. În cazul în care se conectează două echipamente aflate la distantă mică (ex : în interiorul unei încăperi) se pot utiliza numai o parte din semnalele precizate în interfața RS232. În acest fel cablul de legătura devine mai ieftin și mai usor de manipulat.
Dacă emițătorul și receptorul au același semnal de tact atunci se spune că lucrează în mod sincron, altfel, dacă au semnale de tact separate, atunci lucrează în mod asincron. În modul asincron, emițătorul nu trimite un tact deodată cu datele, ci inserează un pseudo-impuls de tact, cunoscut ca bit de start, în fața fiecărui octet transmis. Astfel, pentru fiecare caracter ASCII avem o transmisie independentă, cu adăugarea biților de start, stop și paritate. Viteza de lucru se stabilește manual la începutul transmisiei. Pentru informația de fază, receptorul trebuie să detecteze începutul bitului de start. Pentru ca această metodă să funcționeze, trebuie să existe, o perioadă de liniște între caractere, realizată cu bitul de stop.
În modul sincron, caracterele sunt transmise rapid, unul după altul, fără biți de start și de stop. Pentru sincronizare, mesajul transmis este precedat de caractere speciale de sincronizare, detectabile de circuistica receptorului. Acestea sunt transmise încontinuu și când nu sunt date de transmis. Transmisiile în mod sincron pot folosi scheme de inteligente de modulare, care se bazează pe circuistica suplimentară, iar semnalele de date și tact folosesc aceeași pereche de fire. Această metodă, cunoscută sub numele de codificare Manchester, este folosită în rețelele ethernet. O metodă sincronă alternativă este folosită pentru transmisii seriale rapide non-caracter, orientate pe bit. Protocoale care folosesc această metodă permit transferul de date la viteze mari. Un astfel de protocol este și protocolul HLDC. [22]
II.3 Comunicatia SPI
SPI (Serial Peripheral Interface) este un standard sincron, la fel ca și I2C care este dezvoltat tot de Motorola, la acesta transferul de date are loc în ambele direcții simultan, adică este un full-duplex. Dispozitivele comunică folosind o relație de tipul master/multi slave, acesta nu suportă mai mulți masteri, în acest caz master-ul este cel care inițializează frame-urile de date. SPI se mai numeste și „patru fire” serial bus pentru a putea fi deosebit de celelalte standarde care folosesc maximum 3 fire, cele patru fire de pe magistrală folosite sunt: SCLK (Serial Clock), MOSI/SIMO (Master Output/Slave Input), MISO/SOMI (Master Input/Slave Output) si SS (Slave Select). [23]
Există două configurații de funcționare a interfeței SPI, configurația serială și configurația paralelă, cea mai utilizată configurație fiind cea paralelă. Majoritatea dispozitivelor slave au trei stări logice, prin urmare semnalul MISO devine deconectat atunci când dispozitivul nu este selectat. Dispozitivele fără cele trei stări logice nu pot împărți magistrala SPI cu alte dispozitive, doar acele slave-uri pot comunica cu master-ul și doar dacă au activat chip-select-ul.
Pentru a începe comunicarea, master-ul mai întâi configurează ceasul, folosind o frecvență mai mică sau egală cu maximul frecvenței suportată de slave. Aceste frecvențe sunt de obicei în intervalul 1-70 MHz. Atunci master-ul setează slave select-ul pe nivelul „low” pentru chip-ul dorit. Dacă este necesară o perioadă de așteptare (ca la conversia analog-digitală) atunci master-ul așteaptă cel puțin acea perioadă de timp înainte de a începe ciclurile de ceas. În timpul fiecărui ciclu de ceas SPI, apare o transmisie full duplex:
master-ul trimite un bit pe linia MOSI prin urmare slave-ul îl citește de pe aceeași linie;
slave-ul trimite un bit pe linia MISO si master-ul îl citește de pe aceeași linie.
În mod normal, transmisia implică existența a doi regiștrii de date de o lungime a oarecare a cuvântului, cum ar fi 8 biți, unul situat în dispozitivul master și celălalt în dispozitivul slave, fiecare din ei sunt conectați într-o configurație de tip inel. Informația este de obicei transferată începând cu cel mai semnificativ bit (MSB) și continuând bit cu bit până se transferă și cel mai nesemnificativ bit (LSB) pentru același registru. În această fază, putem afirma că cele două dispozitive master/slave și-au schimbat valorile din regiștrii. Imediat după, fiecare dispozitiv citește valoarea stocată în registrul de date și o prelucrează, cum ar fi scrierea într-o locație de memorie. Dacă mai sunt date de schimbat, regiștrii de schimb sunt încărcați cu noi date și procesul se repetă.
Transmisiile pot include un număr arbitrar de cicluri de ceas. Când transmisia datelor s-a încheiat, master-ul oprește comutarea ceasului. În mod normal, are loc și deselectarea slave-ul prin intermediul liniei de selecție dedicate. Adesea transmisiile sunt de cuvinte a 8 biți, și master-ul poate iniția multiple transmisii dacă are nevoie. Cu toate astea, alte mărimi ale cuvântului sunt obișnuite, cum ar fi cuvinte de 16 biți pentru controller-ul de touch-screen sau codec-uri audio ca TSC2101 de la Texas Instruments; sau cuvinte de 12 biți pentru diverse convertoare digitale-analog sau convertoare analog-digitale. Fiecare slave de pe magistrală care nu a fost activat folosind slave select-ul aferent nu trebuie să ia în considerare semnalul de ceas precum și datele de pe linia MOSI și să nu transmită nimic pe linia MISO. Master-ul trebuie să selecteze doar un slave la un moment dat. [24]
Figura 2.3.1 Comunicarea master – slave [25]
II.4 LabVIEW
LabVIEW este o aplicație de dezvoltare de program, asemănătoare cu sistemele de dezvoltare comerciale C sau Basic, sau National Instruments LabWindows. Totuși LabVIEW este diferit de acele aplicații dintr-un motiv foarte important. Celelalte sisteme de programare folosesc limbaje bazate pe texte pentru a crea linii de cod, în timp ce LabVIEW foloseste un limbaj de programare grafic, pentru a creea blocuri de programe sub formă de diagrame. LabVIEW se poate folosi chiar și cu cunostiințe minime de programare, el folosește icoane, terminologii și ideei care sunt familiare atât oamenilor de stiință cât și inginerilor, acesta se bazează mai degrabă pe simboluri grafice decât pe limbaj textual ca să descrie acțiunile de programare.
LabVIEW are librării extinse de funcții și subrutine pentru majoritatea task-urilor de programare. Pentru Windows, Macintosh și Sun, LabVIEW conține biblioteci de aplicații specifice pentru colectarea datelor și instrumente de control VXI. De asemenea LabVIEW mai conține biblioteci specifice pe aplicații pentru GPIB și instrumente de control seriale, analiză de date, prezentare de date și stocare de date. Acesta mai include și niște unelte convenționale de dezvoltare de program, astfel încât se pot seta puncte de întrerupere, se pot simula execuțiile de program pentru a vedea cum trec datele prin program și se mai poate trece pas cu pas prin program pentru eliminarea greșelilor și a face mai ușoară dezvoltarea programului.
LabVIEW include librării de funcții și unelte de dezvoltare concepute în mod specific pentru controlul instrumentelor. Pentru Windows, Macintosh și Sun, acesta conține librării de funcții și unelte de dezvoltare pentru colectarea datelor. Programele LabVIEW sunt numite instrumente virtuale deoarece aparența și operațiile lor imită instrumentele reale. Totuși, ele sunt asemănătoare cu funcțiile din limbajele de programare convenționale.
Instrumentele virtuale au atât o interfață de utilizator interactivă cât și echivalentul în cod sursă, acceptă parametrii de la instrumentele virtuale de nivel înalt.
instrumentele virtuale conțin o interfață de utilizator interactivă care se numește panou frontal, deoarece simulează panoul unui instrument fizic. Panoul frontal poate să conțină butoane, diagrame și alte mecanisme și indicatori. Datele se introduc printr-o tastatură și un mouse și apoi se vizualizează rezultatele pe ecran.
instrumentele virtuale primesc instrucțiuni de la o diagramă bloc care se creează în grafice. Diagrama bloc furnizează o soluție ilustrată (grafică) la o problemă de programare. Diagrama bloc conține codul sursă pentru instrumentul virtual.
instrumentele virtuale folosesc o structură ierarhică și modulară. Se pot folosi ca și programe de nivel înalt sau ca și subprograme din cadrul altor programe sau subprograme. Un instrument virtual într-un instrument virtual se numește subinstrument virtual. Iconițele și panoul conector al unui instrument virtual funcționează ca o listă grafică de parametrii astfel încât celelalte instrumente virtuale să-i poată pasa datele ca și subinstrument virtual.
Cu toate aceste caracteristici, LabVIEW promovează și aderă la conceptul de programare modulară. O aplicație se împarte într-o serie de task-uri care se pot împărți și acestea la rândul lor până în momentul în care o aplicație foarte complexă devine o serie de task-uri foarte ușor accesibile din punctul de vedere al dificultăți de execuție. Un instrument virtual se construiește pentru a îndeplini fiecare subsarcină după care se combină toate instrumentele virtuale într-o diagramă bloc pentru a îndeplini o sarcină mai mare. În final, instrumentele virtuale de nivel înalt conțin o colecție de subinstrumente virtuale care reprezintă funcțiile aplicației.
Deoarece se pot executa fiecare subinstrumente virtuale individual, separat de restul aplicației, eliminarea erorilor este mult mai ușor de realizat. Mai mult, multe subinstrumente virtuale de nivel scăzut deseori execută sarcini asemănătoare cu unele aplicații astfel încât să se poată dezvolta un set specializat de subinstrumente virtuale potrivit aplicațiilor care se pot construi.[26]
În ceea ce privește comunicarea, ca și privire de ansamblu, rețeaua se referă la comunicarea dintre mai multe procese pe calculatoare separate. Această comunicare apare de obicei peste o rețea hardware cum ar fi Ethernet sau LocalTalk. O utilizare primară a rețelei în aplicații software este aceea că pentru unul sau mai multe aplicații să folosească serviciile unei alte aplicații. De exemplu, aplicația care oferă servicii (serverul) poate fi sau o aplicație de colectare a datelor de pe un calculator dedicat sau un program de bază de date care furnizează informații altor aplicații. Ca să apară comunicare între procese, procesele trebuie să folosească un limbaj de comunicare comun, care se numește protocol.
Un protocol de comunicare te lasă să specifici datele pe care vrei să la trimiți sau să le primești și locația destinației sau sursa fără a fi nevoie să îți faci griji de cum ajung datele acolo. Protocolul transferă comenzile în date care sunt acceptate de driverele de rețea. Dupa aceasta driver-ele de rețea se ocupă de transferarea datelor în rețea.
Unele protocoale de rețea au ieșit în evidență ca și standardele acceptate pentru comunicare. În general un protocol nu este compatibil cu un altul. Totuși în aplicațiile de comunicare, unul din primele lucruri care trebuie făcute este sa fie ales protocolul care urmează a fi folosit. Dacă se dorește comunicarea cu o aplicație deja existentă atunci trebuie lucrat în cadrul protocoalelor suportate de acea aplicație. Când se scrie efectiv aplicația, există o flexibilitate mai mare în alegerea protocolului. Factorii care au un impact asupra alegerii protocolului includ tipul mecanismelor care vor rula procesele, tipul de hardware de rețea aflat în dispoziția și complexitatea comunicării necesare aplicației.
Unele protocoale sunt integrate în LabVIEW, dintre acestea câteva sunt specifice unui tip de calculator, acesta folosește următoarele protocoale pentru a putea face comunicarea între calculatoare:
TCP acesta se găsește pe toate calculatoarele;
UDP și acesta se găsește pe toate calculatoarele;
DDE acesta este disponibil pe PC, este folosit pentru comunicație între aplicațiile din Windows;
Active X disponibil pentru utilizare cu Windows 95 și Windows NT;
AppleEvents acesta este disponibil pe Macintosh și se folosește pentru a trimite mesaje între aplicațiile Macintosh;
PPC și acesta este disponibilă pe Macintosh și este folosit atât pentru a trimite cât și pentru a recepționa date între aplicațiile Macintosh.
Fiecare protocol este diferit mai ales în felul în care se atribuie locației de rețea a unei aplicații pentru control la distanță. Protocoalele sunt incompatibile unele cu celelalte așadar dacă se dorește comunicarea între un Macintosh și un PC trebuie folosit un protocol compatibil cu amândouă cum ar fi TCP. Există și alte opțiuni de comunicare care sunt folosite de LabVIEW, astfel mai avem:
System Exec VI care permite execuția unei comenzi la nivelul sistemului. Există două instrumente virtuale System Exec, unul este folosit pentru utilizarea cu toate versiunile de Windows iar celălalt pentru Sun și HP-UX;
Named Pipes disponibile doar pe UNIX;
HiQ disponibile pe Macintosh și PC (Personal Computer).
Înainte de implicarea profundă în protocoalele de comunicare, trebuie luat în considerare și o altă abordare mai potrivită pentru aplicație. De exemplu, luați în considerare o aplicație unde sistemul dedicat culege date și se dorește ca datele să fie înregistrate pe un alt calculator. S-ar putea scrie o aplicație care folosește protocoalele de rețea pentru a trimite datele de pe un calculator care colectează informațiile la masina care înregistreazaă datele, în care o aplicație separată colectează informațiile (datele) și le salvează pe un hard.
O metodă mai simplă ar putea implica capabilitățile de partajare de fișiere disponibile pe majoritatea calculatoarelor dintr-o rețea. Cu partajarea fișierelor, driverele care fac parte din sistemul de operare permit conectarea la alte echipamente. Mediul de stocare al echipamentului controlat de la distanță este tratat ca o extensie a mediului propriu de stocare. Odată ce s-au conectat două sisteme, partajarea fișierelor dintre cele două se face de obicei într-un mod „transparent” astfel că orice aplicație poate scrie în mediul de stocare controlat ca și cum ar fi conectat local. Partajarea de fișiere este deseori cea mai simplă metodă pentru a transfera date între echipamente.
Modelul client – server este un model comun pentru aplicațiile care folosesc rețeaua, în modelul client – server, un set de procese (clienți) solicită servicii de la un alt set de procese (servere). De exemplu, într-o aplicație se poate seta un calculator dedicat care să obțină masurători în mod real. Calculatorul se comportă ca un server când furnizează date altor calculatoare la cerere. Se comportă ca un client când solicită o altă aplicație, cum ar fi un program cu o bază de date, pentru a înregistra datele de care are nevoie. În LabVIEW se pot folosi aplicații client și aplicații server cu toate protocoalele în afara de Macintosh AppleEvents. AppleEvents se poate folosi pentru a trimite comenzi către alte aplicații. Nu se poate seta serverul de comandă în LabVIEW folosind AppleEvents. Dacă este nevoie de capabilitățile serverului pe Macintosh se poate folosi TCP, UDP sau PPC.
CAPITOLUL III. TRANSMITEREA ȘI CODAREA INFORMAȚIEI
III.1 Transmiterea informației
Noțiunea de informație a apărut mult mai târziu decât noțiunea de energie, iar legile după care informația apare, se transformă, se păstrează, se prelucrează și se folosește, sunt încă insuficient studiate, abia în zilele noastre se stabilesc bazele înțelegerii lor. Stabilirea noțiunii generalizate de informație pentru caracterizarea proceselor de conducere dintr-un punct de vedere unitar a fost un moment important în stiință, întocmai cum introducerea noțiunii de energie a permis să se analizeze toate fenomenele naturii dintr-un punct de vedere unic, independent de substratul lor fizic, tot asa, introducerea noțiunii de informație a permis studierea dintr-un punct de vedere comun a celor mai diferite procese de comandă din natură. Se numește informație orice știre care poartă în sine urma unui fapt, eveniment sau proces oarecare.
Informația este comunicarea (mesajul) ce aduce știri despre fapte, evenimente, obiecte și procese. În înțelesul mai larg, în noțiunea de informație se pot cuprinde toate știrile despre mediul care ne înconjoară sau, mai bine zis, care se obțin, în interacțiunea omului cu mediul înconjurător. A obține o informație înseamnă a afla lucruri ce nu se cunoșteau mai înainte sau a obține noi cunostințe asupra unui lucru, fapt etc., despre care s-a știut mai puțin înainte.
În procesele de comandă, procesele energetice care însoțesc transmiterea informației joacă un rol mai puțin important. Cantitatea de informație și efectul ei, nu sunt determinate de cantitatea de energie folosită pentru transmiterea informației. Esența proceselor de conducere, care se desfășoară pe baza schimbului de informație, constă tocmai în aceea că mișcarea și acțiunea unor mase materiale mari sau transmiterea și transformarea unor cantități mari de energie se dirijează și se controlează cu ajutorul unor mase materiale mici și al unor cantități reduse de energie.
Figura 3.1.1 Modelul de bază al comunicării [31]
În teoria informației, caracteristica energetică a fenomenelor trece pe plan secundar, evidențiindu-se în mod deosebit latura informațională a sistemului. Așadar, noțiunea de informație este foarte larg raspandită și se poate prezenta sub cele mai variate forme, astfel aceasta constituie una din proprietățile de seamă a informației. Prin mijloacele de telecomunicații cum este telefonul, telegraful și radioul se transmit informații. Prin intermediul văzului, auzului, precum și al celorlalte simțuri, omul primește zilnic tot felul de informații despre evenimentele din lumea ce îl înconjoară.
Comunicări complexe, ordine și dispoziții se transmit cu ajutorul telefonului, telegrafului și radioului. Comunicări și mai complexe sunt cele transmise prin intermediul televiziunii, unde imaginile în mișcare sunt însoțite de semnale audio. La toate aceste sisteme, transmiterea informației este insoțită de un fenomen nedorit, de adăugare la informația transmisă a unor semnale perturbatoare ce nu au fost produse de sursele inițiale de informații ca și exemplu se poate da faptul că în telefonie se distorsionează semnalul de vorbire, în televiziune se deformează imaginea și nu în ultimul rând în telegrafie apar greșeli de imprimare.
Aceste exemple evidențiază o altă proprietate de bază a informației, cum că, în nici un sistem fizic informația nu apare într-o formă curată, ci este însoțită de diferite perturbații care pot duce la greșeli. De aceea, una din problemele principale ale teoriei informației constă în stabilirea metodelor optime pentru extragerea informației din semnalele care sunt insoțite de perturbații. Noțiunea de informație a cucerit un loc sigur în stiință numai atunci când s-a găsit o măsură adecvată pentru caracterizarea ei. O altă proprietate de seamă a informației este aceea de a putea fi masurată.
Nu este suficient însă să se găsească o modalitate de măsurare a informației, mai trebuie să existe posibilitatea folosirii acestei măsuri, adică să existe siguranța că se păstrează obiectul măsurătorii. Tot așa, informația care ia naștere în cadrul unui sistem bine definit și se păstrează în limitele sistemului respectiv, poate fi măsurată, indiferent de natura sistemului. Problema principală a teoriei informației este studierea transformării, păstrării și transmiterii informației.
Analiza acestui fenomen a fost făcută pentru prima dată de inginerii de telecomunicații, care s-au ocupat cu organizarea canalelor destinate transmiterii informației.
Figura 3.1.2 Schema bloc a unui sistem de transmitere a informației [29]
Purtătorul material al informației, adică semnalul, își păstrează capacitatea sa de a transmite informație numai în cadrul unui sistem de transmisiuni. Coderul din figura de mai sus execută orice prelucrare a semnalului generat de sursă, o asemenea prelucrare poate să includă o anumită combinație de modulație, comprimare de date sau introducerea unei redundante pentru lupta cu perturbațiile.
Canalul este mediul fizic utilizat pentru transmiterea semanalului, de exemplu linia telefonică, linia radio sau radioreleu, dispozitivul de memorie sau organismul uman. Asupra canalului, de regulă, acționează diferite perturbații care în liniile de telefonie pot apărea din cauza modificărilor caracteristicii de frecvență, a convorbirilor ce se induc din alte linii, a zgomotului termic, a impulsurilor parazite, sursa cărora pot fi schemele de comutare sau a bruiajului intenționat al adversarului, plus altele.
Decoderul execută prelucrarea semnalului de la ieșirea canalului în scopul de a reproduce la partea de recepție o copie acceptabilă ieșirii sursei. Destinatarul poate fi omul sau un dispozitiv tehnic oarecare. Pentru a simplifica analiza modelelor de surse și canale este de dorit a separa efectele legate de sursă de efectele legate de canal.
Sarcina coderului sursei este de a reprezenta ieșirea sursei cu ajutorul succesiunilor de semnale binare, și una din problemele importante ce apar, constă în a stabili câte simboluri binare, în unitatea de timp sunt necesare pentru reprezentarea semnalului de la ieșirea unei surse date.
Sarcina coderului și decoderului canalului constă în a reproduce cât mai sigur succesiunile binare ale datelor obținute la ieșirea decoderului canalului și una din problemele inportante ce apare este dacă acest lucru este posibil să se realizeze. Coderul sursei transformă mesajul de la ieșirea sursei într-o succesiune de semnale binare sau care aparțin unui alfabet finit, din care decoderul sursei restabilește mesajul inițial cu o precizie stabilită de către destinatar. Astfel, independent de proprietățile sursei sau destinatarului, la intrarea coderului canalului și la ieșirea decoderului canalului, se formează o succesiune de simboluri binare sau de simboluri care aparțin unui alfabet finit. Reprezentarea informației de transmis sub forma unei succesiuni binare intermediare dă posibilitatea să se calculeze și să se construiască dispozitive de codificare și decodificare de canal, independent de dispozitivele corespunzătoare care se referă la sursă.
Sarcina sistemului de transmisiuni, este de a transmite mesajul de la sursă la destinatar, adică de a reproduce mesajul de la ieșirea sursei la locul indicat de destinatar. Când spunem reproduce nu înțelegem o reproducere absolut fidelă ci o reproducere care corespunde anumitor scopuri specifice, criteriul acceptabilității depinde de scopul transmisiuni. În descrierea obiectului transmis prin sistemul de transmisie trebuie inclus și criteriul acceptabilități. Astfel, obiectul ce se transmite nu determină numai proprietățile sursei, ci caracterizează proprietățile cuplului “sursă – destinatar", în continuare vom numi acest obiect informația transmisă.
Dacă avem un emițător care emite unde sinusiodale în aer cu ajutorul unei antene, atunci avem o stație de emisie radio, deși unda sinusoidală nu conține nici un fel de informație. Unda trebuie modulată în așa fel încât să se poată transmite informații cu aceasta, există trei feluri de a modula undele sinusoidale: modulație de fază, modulație de amplitudine și prin amplitudine de frecvență. Prin modulația de fază pur și simplu se pornește și se oprește unda sinusoidală, prin această metodă este foarte simplu să comunici sau să transmiți informație prin codul Morse. Modulația de fază nu este cea mai folosită din diferite motive, dar ca și exemplu de utilizare în viața de zi cu zi, sunt sistemele radio care transmit semnale ceasurilor controlate prin radio, din SUA de exemplu. Un astfel de emițător de modulație în fază (PM) poate să acopere întreaga suprafață a Statelor Unite.
Modulația în amplitudine (MA) se folosește la stațiile radio și în televiune, acestea o folosesc pentru a coda informația. În modulația în amplitudine, amplitudinea undei sinusoidale este schimbătoare, ca și exemplu ca să înțelegem mai bine, unda sinusoidală a unei persoane este suprapusă pe undele sinusoidale ale emițătorului pentru a-i varia amplitudinea.
Figura 3.1.3 Forma de undă a unui semnal modulat în amplitudine
Semnal purtător: ;
Semnalul mesaj modulat: m(t);
Semnalul MA: .
Modulația în frecvență (MF) se folosește în radio Fm și în sutele de tehnologii wireless, aici intră și telefoanele mobile. FM este cel mai folosit deoarece acesta este imun la zgomotul static, în MF, frecvența undelor sinusoidale este schimbătoare (și nu amplitudinea, ci valoarea frecvenței) în funcție de semnalul de informație. Odată ce s-a modulat o undă sinusoidală cu informație, această informație se poate transmite prin intermediul undelor.
Figura 3.1.4 Forma de undă a unui semnal modulat în frecvență
De mai bine de un secol, undele electromagnetice și-au demonstrat utilitatea în transmiterea unor informații, acestea, pentru a se propaga nu au nevoie neapărată de un conductor metalic, undele electromagnetice se propagă cu viteze destul de mari atât prin vid cât și prin unele materiale dielectrice. Ca să întelegem mai bine, să luăm ca exemplu lumina care este tot o undă electromagnetică, informația de ce nu s-ar putea deplasa de colo – colo ca și razele de soare.
Comunicațiile prin fibre optice utilizează unde electromagnetice în infraroșu. Pentru transmiterea unei informații prin fibra optică este necesar ca sursa să fie coerentă, iar lungimea spectrală să fie cât mai mică. Interferența este suprapunerea a două sau mai multe unde și combinarea lor în una singură, iar coerența este interferența a două unde care au aceeași lungime și un defazaj constant între ele. Comunicațiile prin fibra optică folosesc lungimi de undă în infraroșu cuprinse între 800 până la 1600 nm.
Figura 3.1.5 Comunicarea prin fibră optică
Un cablu de fibră optică este construit dintr-un fir cu diametrul mic, cu o structură formată dintr-un mijloc de sticlă sau de plastic, un înveliș tot de sticlă și cu un inveliș protector exterior care este din plastic. Diferența dintre cele două elemente de sticlă, miez și inveliș, constă în indicii de refracție diferiții. Învelișul de plastic furnizează o protecție mecanică dar ușurează și identificarea fibrelor pentru sudare prin culorile lor diverse, prin urmare se poate afirma că fibra optică este un ghid de undă optic.
Figura 3.1.6 Componentele cablului de fibră optică
La comunicațiile prin fir, principiul este puțin mai diferit față de transmiterea informațiilor fără fir, aici ca și exemplu se poate lua principiul unei transmisii vocale pe fire de cupru, astfel principiul este următorul: o persoană vorbește într-un microfon iar la capătul celălalt o altă persoană ascultă la un receptor. Unda sonoră a emitorului (vorbitorului) comprimă aerul și membrana microfonului vibrează corespunzător. În urma acestei vibrații se generează un curent alternativ, care la rândul său este modelat după undele sonore.
Dacă aceste variații electrice se transmit pe două fire din cupru până la receptor, acestea pot să producă într-un difuzor indepărtat oscilații ale membranei care reproduce sunetul original. Între emițător și receptor se pot afla și diverse alte echipamente și dispozitive suplimentare care pot interfera sau distorsiona informația transmisă. Acest tip de transmisie se numește analogic deoarece variațiile tensiuni și curentului electric sunt continue, valorile instantanee putând lua orice valoare între cea minimă și cea maximă. Transmisiunile digitale sunt o modalitate de comunicare bazată pe transmisiuni discrete de date, acestea sunt considerate a fi viitorul în telecomunicații.
Transmisiunile digitale cu cod în impulsuri (PCM) au apărut din nevoia de a folosi cât mai eficient banda de transmisie. Principiul de transmisie a modulări impulsurilor în cod este destul de simplu, constă în faptul că semnalul util este eșantionat, se codează printr-un algoritm de codare iar la recepție semnalul este refăcut din eșantioanele sale. Acest semnal de linie PCM este practic imun la perturbații electromagnetice, iar principiul lui de codare conferă o anumită păstrare în secret a informației transmise. Printre codurile de linie cele mai utilizate se enumeră: NRZ, AMI, HDB3 și CMI.
Codurile HDB3 se folosesc la transmisii cu viteze de până la 140 Mbit/s iar codurile CMI se folosesc la peste 140 Mbit/s. Codul HDB3 asigură o densitate de pulsuri suficiente pentru a reface semnalul util, dar este vulnerabil la salturile de fază ale impulsurilor. Codul CMI asigură o densitate foarte mare a impulsurilor, acest lucru îl face potrivit la transmiterea semnalelor de viteză mare, iar tactul de sincronizare al echipamentelor este extras foarte ușor. [30]
III.2 Codarea informației
Codarea informației este un proces prin care se urmărește micșorarea redundanței mesajului generat de o sursă, pentru a reduce resursele necesare memorării sau transmiterii acestui mesaj. Pentru memorarea sau transmiterea unui mesaj se folosește de regulă o formă intermediară, reprezentarea prin simboluri, prin umare cele mai multe metode de compresie folosesc metode de codare binar – binar, prin urmare se poate trage concluzia că obiectivul compresiei constă în reducerea numărului de simboluri binare necesar pentru reprezentarea mesajului sau codifcarea propriu-zisă a acestuia astfel, încet un intermediar nedorit care are acces în mod ilegal la mesajulul original acesta să nu înțeleagă nimic dacă nu știe metoda cu care s-a făcut codarea informației din acel mesaj.
Procedeul de reprezentare a informației conform unui anumit format poartă denumirea de codificare, iar codul este un set de simboluri elementare. Codificarea este procesul de stabilire a unui cod prin stabilirea corespondenței între vocabularul de intrare și alfabetul de ieșire.
Principalele sisteme de coduri utilizate sunt: sistemul în ordine numerică, sistemul în serie, sistemul pe grupe, sistemul zecimal și sistemul repetitiv.
Codurile alfanumerice sunt coduri binare, în sistemul de numerație binar există numai două cifre, 0 respectiv 1. O cifră binară conține cantitatea de informație de numai 1 bit. Acest sistem binar este în același timp și cel mai natural mod de stocare a informației în domeniul calculatoarelor, pentru că acolo 1 bit reprezintă unitatea elementară de informație, prin urmare valoarea bitului poate fi, fie în 0 fie în 1. Cele mai cunoscute coduril alfanumerice sunt codurile EBCDIC, codul ASCII și codul UNICODE. Codurile ASCII reprezintă caractere text pentru calculatoare, echipamente de comunicație și echipamente care lucrează cu text.
Sunetul reprezintă o serie alternativă de modificari ale presiuni aerului care se propagă sub formă de unde sferice concentrice, detectarea sunetului se face convertind și măsurând variațiile de presiune ale aerului, acestea fiind o undă elastică ce se propagă prin aer cu o viteză medie de aproximativ 344/s. Cel mai bun dispozitiv de captare a sunetelor este microfonul. Calitatea sunetului digital care se dorește a fi obținut depinde de numărul de biți folosiți pentru a reprezenta un cadru și intervalul de timp dintre cadre. Calitatea sunetului este mai bună cu cât numărul de biți pe cadru este mai mare și cu cât intervalul de timp dintre două cadre este mai mic. [32]
Codificarea binară se poate face cu porți logice, astfel că există porțile de reuniune (SI), de intersecție (SAU) și negația (NU) plus combinații ale acestora. Cel mai folosit sistem de numerație este cel zecimal, este cel mai ușor de folosit, odată transformat un astfel de număr din zecimal în binar acesta se poate transforma în octal prin gruparea de câte 3 biți sau hexazecimal prin gruparea de cate 4 biți. La gruparea în 4 biți se împarte începând de la LSB (cel din dreapta) pînă la MSB (cel din stînga), dacă mai rămân doar 2 biți când se face împărțirea la transformare se mai adaugă 2 biți ca să fie 4, și se adaugă 0. [33]
Figura 3.2.1 Echivalentul zecimal în binar, hexazecimal și octal [34]
Dupa cum șirul simbolurilor emise de sursă este împărțit, pentru codare un subșir de aceeași lungime sau de lungime variabilă și după lungimea, constantă sau variabilă a cuvintelor de cod, codurile de compresie se clasifică în bloc – bloc, bloc – variabil, variabil – bloc și variabil – variabil. Bloc – bloc indicând aceeași lungime pentru subșirurile sursei și cuvinte variabile ale subșirurilor și ale cuvintelor de cod. Din punctul de vedere al măsurării în care mesajul refăcut prin decompresie se aseamănă cu cel original, asupra căruia s-a acționat prin procesele de compresie, distingem două categorii de algoritmi de compresie, anume fară pierderi și cu pierderi. Algoritmii de compresie fără pierderi sunt reversibili, prin decompresie obținându-se mesajul original întocmai.
Algoritmi de compresie cu pierderi au ca rezultat diferențe relativ mici între mesajul rezultat prin decompresie și cel original și sunt utilizați în compresia imaginilor și a mesajelor video și audio.
III.3 Encodorul HT12A/HT12E
Acestă serie de CMOS LSIs este folosită pentru sistemele de control de la distanță care necesită protecție pentru protejarea informațiilor care se transmit. Acest tip de codor este capabil să codifice un număr de biți de N adrese și un număr de 12-N biți de date. Fiecare adresă sau dată de intrare poate fi setată la una din cele două stări logice pe care acesta le are. Adresa programată este transmisă împreună cu biți antet prin RF sau printr-un mediu infraroșu odată ce s-a primit un semnalul de declanșare. HT12A mai are în plus și un oscilator de 38kHz pentru sistemul de infraroșu.
Figura 3.3.1 Tabelul de selecție în funcție de cerințe
În aplicația de față s-a folosit codorul HT12E, prin urmare în ceea ce urmează se vor prezenta câteva date tehnice despre acesta. Tensiunea de alimentare este curinsă între 2,4 – 12V pentru HT12E, este construit în tehnologia CMOS, curentul în standby este foarte mic, are valoarea de 0,1A la o tensiune de alimentare de 5V. Ca și utilitate în aplicații acesta se folosește în sistemele de alarmă împotriva hoților, în sistemele de alarmă împotriva fumului și incendiilor, în controlul ușilor de garaj și chiar în controlul ușii mașinilor sau în sistemul de alarmă al unei mașini, ca sistem în telefoanele mobile sau alte sisteme de control, în principiu acest tip de codor se folosește pentru sistemele de securitate.
Figura 3.3.2 Distribuția pinilor pentru HT12E [35]
Tensiunea tipică de alimentare este de 5V iar temperatura la care lucrează în parametri normali este între -20 până la 75 grade Celsius pentru HT12A iar pentru HT12E este între -50 până la 125 grade Celsius. Pentru endoderul HT12A, transmisia este activată atunci când se aplică un semnal la unul dintre pini de date D8 – D11 iar pentru activarea transmisiei la HT12E se foloseste .
Figura 3.3.3 Diagrama funcționări logice a encodorului HT12E [35]
Figura 3.3.4 Aplicarea în circuit [35]
III.4 Decoderul HT12D/HT12F
Acest tip de decodor are la baza seria Holtek 212 și este construit practic tot pe stuctură CMOS LSI pentru aplicațiile de control de la distanță. Acest tip de decodor trebuie să aibă același număr de adrese și același tip de format de date pentru ca să fie compatibil cu encoderul folosit, cel puțin asta se urmarește când se folosesc atât encodere cât și decodere într-o aplicație, ca acestea să fie compatibile din toate punctele de vedere. S-a ales acest tip de decodor pentru aplicația mea deoarece acesta îndeplinește nevoile pentru care este utilizat iar prețul a fost și el destul de mic, ceea ce l-a făcut ideal pentru aplicația dată.
Figura 3.4.1 Tabelul de selecție în funcție de cerințe
Decodoarele recepționează datele serial și transmisia datelor de la encoder se face prin transmiterea de către un transmițător care trmite datele prin infraroșu sau prin RF. Ei compară datele primite de trei ori încontinuu cu adresele lor locale. Dacă nu se găsește nici o erooare, datele de intrare codate sunt decodate după care sunt transmise la pinii de ieșire. Când avem ceva de transmis la pinii de ieșire, pinul VT își modifică valoarea în 1 logic fapt care indică că avem o transmisie validă sau în curs de desfășurare. Acest tip de decodoare sunt capabile să decodifice informații ce conțin N biți de adrese și 12-N biți de date. La această serie, HT12D este capabil să obțină 8 biți de adrese și 4 biți de date, iar HT12F este folosit să decodifice 12 biți de informații de adrese.
Figura 3.4.2 Distribuția pinilor pentru HT12D [36]
Tensiunea de alimentare este cuprinsă între 2,4 V până la 12V, în modul stanby acesta are un consum foarte redus de curent, setările adreselor se pot face binar, capabile să decodifice 12 biți de informație, informațile codate primite le verifică de 3 ori, are un oscilator intern care are nevoie de doar 5% rezistență, are un indicator care indică validarea unei transmisiuni, are o interfață foarte agreabilă în ceea ce privește transmiterea datelor în RF. sau în mediul infraroșu, 18 pini DP iar pachetul SOP are 20 pini și cea mai importantă caracteristică este compatibilitatea cu encoderele din seria 212 de la Holtek.
Figura 3.4.3 Aplicarea în circuit [36]
Tensiunea tipică de alimentare este de 5V, curentul în modul standby este de 0,1, curentul consumat când acesta este în modul de operare este de 200, frecvența de oscilație a oscilatorului este de 150 kHz în modul normal de funcționare, temperatura de funcționare este de -20 până la 75 grade Celsius, iar temperatura de depozitare este de -50 până la 125 grade Celsius.
Figura 3.4.4 Diagrama funcționări logice a decodorului HT12D [36]
CAPITOLUL IV. RECUNOAȘTEREA COMENZILOR VOCALE ȘI MODUL DE TRANSMITERE
IV.1 Transmițătoare și receptoare radio
Sistemul de comunicații cuprinde ansamblul mijloacelor tehnice al instalațiilor de emisie și de recepție pentru realizarea legăturilor între sursă și destinație. În cazul transmisiilor analogice mărimea fizică corespunzatoare, informația, modifică parametri semnalului purtător (amplitudine, frecvență, fază) proporțional cu legea de variație a semnalului de informație. Spre deosebire de acestea, comunicațiile digitale transmit informația după ce aceasta a fost convertită în semnal digital (numeric) care mai apoi asigură modularea (codificarea) unei purtătoare de radiofrecvență.
În sistemele de radiocomunicații sunt necesare blocuri funcționale care să asigure la emisie prelucrarea informațiilor de la sursa de informație, transformarea acestora în unde electromagnetice și emiterea lor în spațiu, iar la recepție refacerea informației inițiale. În acest scop sistemele de radiocomunicații conțin:
antene de emisie și recepție;
oscilatoare pentru generarea frecvențelor de lucru;
modulatoare pentru introducerea semnalului de informație pe semnalul purtător;
filtre pentru introducerea sau extragerea numai a anumitor componente a semnalului de informație;
blocuri de multiplexare atunci când se urmărește introducerea mai multor semnale de intrare pe același semnal purtător;
demodulatoare pentru extragerea informației din semnalul purtător;
amplificatoare pentru mărirea puterii semnalelor;
circuite de conversie analog-digitale și digital-analogice în cazul transmisiilor digitale.
Pentru transmiterea semnalelor vocale (vorbire, muzică) acestea se aplică unui traductor acustoelectric (microfon) care le transformă în semnale de audiofrecvență în domeniul 30…20000 Hz. Aceste semnale se amplifică, se filtrează o parte din spectru de frecvențe, apoi se aplică modulatorului (codate sau nu) care le suprapune pe semnalul purtător. Oscilația de radiofrecvență (semnalul purtător) modulată se amplifică și apoi semnalul rezultat, după amplificarea finală, se aplică antenei de emisie.
Emițătorul asigură captarea informațiilor de natură auditivă sau /și vizuală pe care le transformă în semnale electrice prin intermediul dispozitivului de intrare. În instalația de emisie se realizează codificarea informației, suprapunerea acesteia pe semnalul purtător prin procesul de modulare și se asigură prin amplificare energia necesară propagării semnalelor prin unde electromagnetice care sunt radiate de antena de emisie..
Receptorul captează undele electromagnetice cu ajutorul antenei de recepție, selectează semnalele electrice din canalul ce conține informațiile utile, le amplifică și le decodifică, apoi prin demodulare extrage semnalul de informație pe care îl convertește în semnal sonor sau vizual, cu ajutorul dispozitivului de ieșire (difuzor, tub catodic, etc.). Legăturile radio, care se stabilesc între corespondenți pot funcționa numai într-un singur sens, de la emițător la receptor, așa cum este reprezentat în figura de mai jos sau în ambele sensuri, dacă fiecare corespondent dispune atât de emițător cât și de receptor.
Comunicațiile prin unde radio, care se desfășoară într-un singur sens sunt caracteristice transmisiilor de radiodifuziune și de televiziune, prin care se transmit informații destinate marelui public. În aceste situații se folosește un singur emițător și mai multe receptoare dispuse în teritoriu la distanțe și direcții diferite.
Figura 4.1.1 Comunicarea emițător – receptor prin unde radio [37]
Instalația de emisie asigură transmiterea semnalului de informație, preluat de la sursa de informație, prin intermediul undelor electromagnetice transmise de antena de emisie. Conține următoarele blocuri funcționale:
bloc de conversie a informației – transformă informația în semnale electrice prin intermediul unui traductor (de sunet, de imagine, etc.) și adaptează semnalele electrice la valoarea impusă de blocul de codare;
codor (bloc de codare) – acest bloc, care se utilizează numai la transmisiile codificate (sunete, imagini, date, etc.), transformă, pe baza unui algoritm de corespondență, semnalele electrice de informație în alte semnale electrice analogice sau în semnale digitale;
modulatorul – asigură suprapunerea informației din domeniul audio sau video pe oscilația de radiofrecvență;
generatorul de RF – asigură generarea și amplificarea oscilațiilor de radiofrecvență (frecvența purtătoare) la un nivel suficient pentru transferul lor în antenă;
antena de emisie – transformă curenții de radiofrecvență în unde electromagnetice.
Canalul de transmisie asigură propagarea undelor electromagnetice care conțin informația de la sursă la destinatar. În cazul radiocomunicațiilor canalul de transmisie îl constituie atmosfera terestră (eterul). Pe acest canal alături de semnalul util se suprapun semnale parazite (perturbații de natură electromagnetică, zgomote). Instalația de recepție extrage din canalul de transmisie semnalul de recepție dorit și asigură reconstituirea acestuia. Conține următoarele blocuri funcționale:
antenă de recepție – captează undele radio și le transformă în curenți de radiofrecvență;
circuit de intrare – asigură alegerea semnalelor corespunzătoare postului căutat;
amplificator selectiv – amplifică semnalul de radiofrecvență (RF) care conține semnalul util;
detector (demodulator) – extrage semnalul util (sunet, imagine sau date) din semnalul de radiofrecvență;
decodor – decodifică semnalul, în cazul în care acesta a fost codificat la transmisie, folosind procedura de reconstituire a informației;
amplificatorul – mărește semnalele electrice purtătoare de informații pentru a putea fi prelucrate de către dispozitivele finale de conversie;
bloc de conversie – transformă semnale electrice în informații finale prin intermediul unui traductor (difuzor, căști, tub catodic, etc.).
În stabilirea legăturii de radiocomunicații dintre instalația de emisie și instalația de recepție se folosesc undele radio, care sunt unde electromagnetice ce se propagă cu viteza luminii, în mediul de propagare pot suferi fenomene de difracție și de reflexie caracteristice luminii, ca urmare a influenței reliefului de pe direcția de propagare.
IV.1.1 Transmițătorul radio TWS-DS
Acesta este un transmițător radio wireless cu un modul de putere foarte mare de transmitere (RF ASK). Până în momentul de față există două versiuni, una aparută în 20 mai 2009 (V1.01) și alta aparută în 20 mai 2011 (V1.02) adică ediția a doua. În aplicația de față se va folosi transmițătorul TWS-DS-6, acesta are următoarele caracteristici principale, astfel avem: gama de frecvență este de 433.92 MHz, modul de modulație este de tip ASK, forma de circuit este SAW, rata de transmitere a datelor este de 8Kbps, tensiunea de alimentare este de 1,5V până la 12V, curentul electric consumat diferă în funcție de tensiunea de alimentare, astfel că la 5V avem 23mA, la 9V avem 40mA și la 12V avem 53mA, puterea este de 10dBm la 5V, 14,5dBm la 9V și 20dBm la 12V, temperatura de lucru este cuprinsă între -20 până la 85 grade Celsius, temperatura de lipire este de 230 grade Celsius (10 secunde), plus o sensibilitate foarte mare.
Figura 4.1.1.1 Forma încapsulată a transmițătorului TWS-DS [38]
Ca și aplicabilitate acesta se folosește în transmiterea de date wireless, control la distanță, pentru cheile de la mașină, pentru citirea automată a unor măsurători, jucări wireless, case inteligente sau controlul unor module din interiorul unor case inteligente și control de la distanță a unor echipamente de control, plus alte aplicații, acestea enumerate mai sus fiind cele mai uzuale.
Figura 4.1.1.2 Exemplu de aplicabilitate a lui TWS-DS [38]
Se poate vedea din schema de mai sus distribuția pinilor, astfel primul pin este GND, al doilea pin este pentru intrarea datelor, al treilea pin este pentru alimentare și cel din urmă este pinul legat la antenă (ANT).
IV.1.2 Receptorul radio RWS-371
Acesta este un receptor radio cu un modul wireless de înaltă sensibilitate (RF ASK). Până în momentul de față există 3 versiuni, prima versiune a apărut în 1 februarie 2004 (V1.01), a doua versiune a apărut în 2 iulie 2008 (V1.02) și cea mai recentă versiune existentă, care a apărut în 28 decembrie 2008 (V1.03).
Figura 4.1.2..1 Forma încapsulată a receptorului RWS-371[39]
Modelul folosit în această aplicație este RWS-371-6, acesta are urmatoarele caracteristici importante, astfel avem o gamă de frecvență de până la 433.92 MHz, modulul de modulare este de tip ASK, forma circuitului este de tip LC, rata de transfer a datelor este de 4800bps, selectarea se face la -10dBm, spațierea dintre canale este 500KHz, tensiunea de alimentare este de 5V, proiectarea îl face să fie cu o sensibilitate pasivă foarte ridicată și este foarte ușor de integrat în aplicații.
Figura 4.1.2.2 Exemplu de aplicabilitate a lui RWS-371 [39]
Se poate vedea pe schema de mai sus distribuția pinilor și semnificația fiecăruia, astfel avem la primul pin GND, al doilea este pentru ieșirea digitală, al treilea este pentru ieșirea liniară, pini 4 și 5 sunt pentru alimentare, pini 6 și 7 sunt pentru legarea la masă a circuitului (GND) iar ultimul pin este pentru antenă (ANT).
IV.2 Recunoașterea comenzilor vocale
Noi, ca ființe umane avem 5 simțuri dintre care unul este auzul, am specificat asta doarece cel mai utilizat mijloc de comunicare dintre doi oameni este cel verbal, adică pe cale vocală. Desigur vorbitul nu înseamnă nimic dacă oamenii nu se pot înțelege unul cu celălalt, de aceea pe lângă faptul de a putea vorbii, este necesar un alfabet, un vocabular și o limbă comună. Deși nimeni nu îi învață pe copii mici să vorbească, ei pot învăța ușor arta vorbitului. Este adevărat că recunoașterea vocală este ușoară pentru noi. Dar învățătura vorbirii și recunoașterii vocale, a fost subestimată de mai multe secole.
Multe progrese în tehnologie au dus la implementarea tehnicii de vorbire și a recunoașterii vocale în anumite aparate. În majoritatea filmelor SF din 1980-1990, vedeam oameni care vorbeau cu roboți și computere însă în ziua de astăzi aceste lucruri au devenit posibile. Deși recunoașterea vocală este o sarcină foarte dificilă, acesta poate fi folosită în multe aplicații de până la un anumit grad, pentru utilizarea mai facilă a acestora si pentru a conferi un grad de comfort sporit utilizatorului. Sistemele automate de recunoaștere vocală pot fi puse în aplicare în calculatoare, tablete sau telefoane deștepte pentru a fi utilizate în dictare și în controlul programelor, care pot fi foarte utile persoanelor cu handicap.
Recunoașterea vocală este procesul de conversie a unui semnal vorbit la o secvență de cuvinte în formă de date digitale, prin intermediul unui algoritm implementat ca un program de calculator. Cuvintele recunoscute pot fi rezultatele finale, pentru aplicații cum ar fi cele de comandă și control, introducere de date și pregătirea documentelor. De asemenea ele pot servi ca intrare pentru prelucrarea lingvistică, în scopul de a realiza înțelegerea vorbirii.
Sistemele de recunoaștere pot fi proiectate în mai multe moduri pentru a atinge un obiectiv specific sau un criteriu de performanță:
sistem dependend/independend de vorbitor, pentru sistemele dependente de vorbitor, utilizatorul trebuie să rostească cuvinte sau fraze predefinite, așa cum am făcut si eu la aplicația de față. Aceste semnale acustice formează datele de antrenament, care sunt utilizate pentru recunoașterea vocală. Din moment ce aceste sisteme sunt folosite doar pentru un vorbitor predefinit, performanța lor devine mai mare comparativ cu sistemele independente de vorbitor.
recunoașterea izolată a cuvintelor, de asemenea acesta este numit sistem discret de recunoaștere. În acest sistem, trebuie să existe pauze între rostirea cuvintelor. Prin urmare, sistemul nu trebuie să aibă grija de a găsi pauzele vocale dintre cuvinte.
recunoașterea vorbirii continue, aceste sisteme sunt scopul final al unui proces de recunoaștere, nu contează cum sau când un cuvânt este rostit, ele sunt recunoscute în timp real și acțiunea corespunzătoare este efectuată. Schimbări în viteza de vorbire, pronunțiile neglijent, detectarea sfârșitului de cuvânt sunt principalele probleme pentru acest mod de recunoaștere.
dimensiunea vocabularului, cu cât dimensiunea vocabularului într-un sistem de recunoaștere este mai mică cu atât este mai superioră performanța de recunoaștere. Sarcinile specifice pot folosi vocabulare mici. Cu toate acestea un sistem natural ar trebui să recunoască independent și continuu față de vorbitor, un vocabular mare, care este mai dificil.
recunoașterea cuvintelor cheie; aceste sisteme sunt utilizate pentru a detecta un cuvânt în vorbirea continuă. Din acest motiv, ele pot fi la fel de bune ca recunoașterea izolată, acestea având și capacitatea de gestiune continuă.
Dezvoltatorii folosesc mai multe metode pentru punerea în aplicare a recunoașterii vocale, cele mai frecvente metode sunt: Deformarea dinamica a timpului (DTW) și modelul Markos ascuns (HMM).
Deformarea dinamică a timpului este un algoritm pentru măsurarea similitudinii dintre două secvențe, care pot varia în timp sau viteză. Principiul de bază al deformari dinamice a timpului este de a permite unor serii de ,,măsuri’’ în spațiul intervalelor de timp în eșantion și să găsească o cale prin acel spațiu, care maximizează potrivirea locală între intervalele de timp aliniate, în funcție de constrângerile implicite în etapa admisă. Totalitatea costurilor similare găsite de algoritm este un bun indicator al similitudinii eșantionului cu șablonul, care poate fi folosit pentru alegerea celui mai asemănător șablon. Orice date care pot fi transformate in reprezentări liniare pot fi analizate cu DTW.
Majoritatea sistemelor de recunoaștere vocală moderne sunt bazate pe acest sistem care oferă modele statice din care ies o secvență de simboluri sau cantități. Din HMM ies o secveță de vectori cu valori reale de n dimensiuni astfel încât fiecare din acești vectori se compun din coeficienți, care se obțin luând o transformată Fourier dintr-o fereastră scurtă de timp de vorbire și decolerând spectrul folosind transformata cosinusului, luând apoi primii coeficienți. În fiecare stadiu, HMM va avea tendința să aibă o distribuție statică, care estre un amestec de diagonale cu o variate Gaussiene care vor oferii probabilitate pentru fiecare vector observat. Fiecare cuvânt sau fiecare fenomen va avea o distribuție de ieșire diferită.
Un HMM pentru o secvență de cuvinte sau fenomene se face prin concatenarea individuală a unui HMM instruit pentru cuvinte și fenomene separate. Decodarea cuvintelor se va face, probabil cu algoritmul Viterbi pentru a găsi cea mai bună cale și aici există o alegere între a crea dinamic o combinație de HMM care include atât informații modele acustice și de limbă, sau combinându-l static în prealabil.
IV.2.1 Utilizarea si defectele recunoasterii vocale
Practic recunoașterea vocală este folosită în două scopuri principale: prima este dictarea, care, în contextul recunoașterii vocale este transpunerea de cuvinte vorbite în cuvinte scrise; a doua este controlul unui computer sau a unui microcontroler.
Persoanele cu handicap pot beneficia de programe de recunoaștere vocală. Recunoașterea vocală este utilă mai ales pentru persoanele care au dificultăți în utilizarea mâinilor, în astfel de cazuri programele de recunoaștere vocală sunt mult mai benefice și pot fi folosite calculatoare de operare.
Programele de recunoaștere vocală sunt importante din punct de vedere militar, pentru Forțele Aeriene, recunoașterea vocală are un potențial clar de reducere a volumului de muncă al pilotului. Pe lângă Forțele Aeriene astfel de programe pot fi, de asemenea instruite pentru a fi utilizate în managementul de luptă și alte aplicații.
Persoanele cu dizabilități de învățare, care au probleme de comunicare (în esență, ei se gândesc la o idee, dar ea este procesată într-un mod incorect determinând-o să ajungă în mod diferit pe hârtie), pot beneficia de pe urma unui software de recunoaștere vocală. De asemenea recunoașterea vocală poate fi folosită în cadrul unui proiect pentru studiul roboticii.
Pe lângă toate aceste avantaje și beneficii pe care le oferă, încă nu este dezvoltat un sistem perfect de recunoștere vocală. Există un număr de factori care reduc acuratețea și performanța unui sistem de recunoaștere vocală. Procesul de recunoaștere vocală este o sarcină ușoară pentru un om, dar este dificilă pentru o mașinărie. Comparativ cu un om, programele de recunoaștere vocală par mai puțin inteligente, acest lucru se datorează faptului că omul are capacitatea naturală de gândire, înțelegere și de a reacționa, în timp ce, pentru un program de calculator este o sarcină complicată, mai întâi trebuie să înțeleagă cuvintele rostite (semnificația lor), și trebuie să creeze un echilibru între cuvinte, zgomote și pauze.
Un om are capacitatea de a filtra zgomotul unei conversații în timp ce o mașinărie necesită o pregătire. Calculatorul necesită ajutor pentru separarea sunetelor de vorbire de alte sunete. In cele ce urmează se vor prezenta câțiva factori care trebuiesc luați în considerare:
omonime, sunt cuvintele cu formă identică și același corp fonetic, dar cu înțeles total diferit. Este o provocare pentru mașinărie, să facă distincția între aceste tipuri de cuvinte.
vorbire suprapusă, o a doua provocare, este de a înțelege vorbirea rostită de către diferiți utilizatori, sistemele actuale au o dificultate de a separa vorbirea simultană a mai multor utilizatori.
factori de zgomot, trebuie să se audă cuvintele rostite distinct și clar. Orice sunet suplimentar poate crea interferențe, în primul rând trebuie să plasăm sistemul departe de medii zgomotoase și apoi să vorbim clar, astfel mașinăria nu va confunda și nu va amesteca cuvintele. [40]
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: Sistem cu Comanda Vocala Pentru Persoanele Imobilizate (ID: 163482)
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.
