Utilizarea Comunicatiei Usb
CUPRINS
Capitolul I. Introducere.
Sisteme de achizitie a datelor. Generalități.
Considerații Ale Sistemelor DAQ
Componentele Unui Sistem De Achiziție
Clasificarea Sistemelor De Achiziție De Date
Capitolul II. Tipuri De Comunicații Pentru Sistemele De Achiziție
2.1 Interfețe De Comunicatie Folosite În Sistemele De Achizitie
2.2 Comunicația Serială
2.3 Comunicația paralelă
2.4 Comunicația USB
Capitolul III .Comunicația USB .Interfața USB
3.1 .Magistrala serială USB . Prezentare generală
3.2 . Funcționarea unui sistem cu magistrala USB 1.1
3.3. Îmbunătățiri introduse de versiunea USB 2.0
3.4 Protocolul USB.
3.5 Interfața USB .
Capitolul IV. Implementarea sistemului de achiziție
4.1.Aplicația Hardware
4.1.1. Convertorul MCP3301
4.1.2. 23LCV1024
4.1.3. Microcontrollerul AT89C51RB2
4.1.4. Modulul USB UMFT240XA
4.1.5.Microcontroller-ul FT240X
4.2. Aplicația Software
CAPITOLUL I . INTRODUCERE
Sisteme de achiziție a datelor. generalități
Oamenii au efectuat achiziții de date stiințifice de mii de ani.De la grecii antici și mayași, până în vremuri foarte recente, ea a fost întotdeauna făcută în același mod.O persoană se uită la un instrument stiințific și notează ceea ce observă.
Acest lucru a continuat neschimbat până la începutul secolului 20, atunci când a devenit disponibil paper-based chart recorder-ul (hărțile din hârtii ) și datele puteau astfel fi stocate.
În final, datele au putut fi achiziționate și stocate în mod automat.
Lucrurile au rămas în mare parte aceleași, până la introducerea calculatorului digital, care a furnizat platforma necesară nu numai pentru a dobândi și de a stoca date, dar, de asemenea, pentru a le analiza si a le raporta.
A existat un host de sisteme de calculatoare bazate pe achizitie de date (și într-o măsură mai mică, de control) in anii 1970,dar industria s-a născut într-adevăr în ziua când IBM a lansat PC-ul. Deși demn de milă față de standardele de azi, PC-ul original, a avut o varietate de caracteristici care făcea din acesta o platformă ideală de achiziție de date.
Caracteristicile cheie care au ajutat PC-ul la revoluționarea industriei de achiziții de date includ:
A fost ieftin (în raport cu alte calculatoare, cum ar fi HP-9825);
A fost ușor de programat (cu un interpretor de bază azedlive)
Oferea sloturi Intrare/iesire standardizate care puteau sustine o placa de achizitie
A devenit un standard de calcul aproape peste noapte
Astfel industria a evoluat,si până la mijlocul anilor 1980, a existat o mare varietate de firme care produceau interfețe de achiziție și control al datelor pentru PC.
Achiziția de date este procesul prin care se măsoară un fenomen fizic sau electric, masurând de exemplu mărimi cum ar fi tensiunea, curentul, temperatura, presiunea, nivel de zgomot(sunet) cu ajutorul unui calculator.
Achiziția de date este procesul de prelevare de probe de semnale care măsoară condițiile fizice din lumea reală și realizează o conversie a probelor rezultate în valori numerice digitale care pot fi manipulate de către un calculator.
Un sistem de achiziție este un ansamblu format din senzori, componente hardware de măsurare, si un calculator cu softuri programabile .
Comparat cu un sistem clasic de măsurare, sistemele de achiziție bazate pe calculatoare, exploatează puterea de procesare, productivitatea, afisajul, și capabilitățile de conectare a calculatoarelor standard folosite în industrie, oferind o soluție de măsurare mai puternică, flexibilă, și eficientă din punct de vedere al costului.
Utilizarea calculatoarelor numerice în industrie și cercetare se face pe scară din ce în ce mai largă pentru rezolvarea problemelor numerice și prelucrarea datelor, în aplicațiile concrete care implică cercetarea științifică fundamentală și experimentele de laborator, la simularea proceselor, pentru controlul și conducerea proceselor precum și în aplicațiile din domeniul transmiterii informației.
Un sistem de achiziție are în general trei componente principale (fig.1 și 2):
– achiziția datelor (analogică);
– transformarea datelor;
– prelucrarea datelor.
În figura 1.2 este prezentată structura generală a unui sistem de achiziție .
Fig.1.2. – Structura generală a unui sistem de achiziție de date
În figura 1.3 este prezentată amplasarea sistemului de achiziție în cadrul procesului care este asistat.
Fig.1.3.. – Amplasarea sistemului de achiziție a datelor în cadrul procesului asistat
Calculatoarele personale s-au răspândit pe scară largă, în ultimul timp, și sunt perfecționate continuu, având ca rezultat faptul că marile firme producătoare de sisteme de masurare caută să realizeze echipamente care să utilizeze calculatorul personal atât în achiziția de date din sistemele industriale, în reglajul unor parametrii sau instalații(procese) și supravegherea acestora; cât și în realizarea unor aparate de măsurare care au performanțe ridicate.
În prezent, calculatorul personal oferă resurse utilizate pentru efectuarea de sarcini cum ar fi: comanda, prelucrarea, gestiunea și afișarea datelor, care altfel ar fi preluate de un microprocesor, plasat în interiorul instrumentului.
Instrumentul de măsurare comunică cu PC-ul prin intermediul unei interfețe care are în mod obligatoriu un convertor analog-digital. La început erau folosite cartelele de achiziție de date pentru măsurători,în timp ce astăzi s-a renunțat la ele.
Prin intermediul tastaturii calculatorului, în momentul de față se poate comanda instrumentul de măsurare iar pe display pot fi vizualizate rezultatele măsurătorilor, sub formă grafică sau sub formă numerică.
În urma prelucrării datelor brute obținute de către calculator de la instrumentul de măsurare,apar,la cererea utilizatorului, aceste rezultate . Obținem așadar aparate cu preț de fabricare mult mai mic.
În forma cea mai simplă, un technician care notează temperatura unui cuptor pe o bucată de hartie, efectuează o achiziție de date .Pe măsură ce tehnologia a progresat, acest tip de proces a fost simplificat și făcut mai precis, versatil, și de încredere prin intermediul echipamentelor electronice.
Echipamentele variază de la simple aparate de înregistrare la sisteme informatice sofisticate. Produsele de achiziție de date servesc ca un punct focal într-un sistem, care leagă împreună o mare varietate de produse, cum ar fi senzori care indică temperatura, debitul, nivelul, sau presiunea .
Configurația și tipurile de circuite utilizate într-un sistem de achiziție de date – SAD – depind de o serie de factori:
rezoluția și precizia cu care se cere realizarea conversiei A/N;
numărul de canale analogice investigate;
frecvența de eșantionare pe fiecare canal;
capacitatea sistemului de prelucrare în timp real a datelor;
necesitatea condiționării (adaptării) semnalului analogic de intrare.
Datele achiziționate pot fi:
analogice (tensiuni, curenti – continue sau alternative) și reprezintă, de regulă, ieșirile unor traductoare ce supraveghează mărimile care intervin în procesul condus;
numerice, provenind de la traductoare cu ieșire azedl sau de la alte echipamente implicate în desfășurarea procesului.
SAD va fi prevăzut deci cu un număr corespunzător de intrări adecvate acestor date:
intrări analogice;
intrări numerice.
Sistemele de achiziție de date sunt sisteme complexe de supraveghere a unor procese în care intervin, de regulă, mai multe mărimi fizice.
Ele realizează prelevarea, prin intermediul unor traductoare adecvate, de semnale analogice sau numerice (în funcție de natura traductorului), în scopul memorării, transmiterii sau prelucrării informației achizitionate. Memorarea poate fi facută direct sau după prelucrarea datelor, pe intervale de timp mai lungi, medii sau scurte.
Transmiterea datelor e necesar a fi facută pe distanțe mai lungi sau mai scurte.
Prelucrarea informației poate consta în operații simple (comparări), până la prelucrări matematice complicate (integrări, diferențieri, medieri, calcul de transformate Fourier, etc.). Scopul prelucrării diferă de la caz la caz: comanda unui proces (industrial, militar, de cercetare), sau numai informare asupra evoluției procesului prin vizualizarea datelor.
Aceste sisteme sunt o componentă esențială a unei interfețe de process și au o arhitectură concepută ținând cont de raportul performantă/preț și de specificul aplicației pentru care se realizează. Structura unui sistem de achiziție monocanal este prezentat în Fig.1.4.
Convertorul Analog/Numeric este partea esențială a unui DAS, iar la limită (depinzând de aplicație) poate fi cea mai simplă formă a sa.
Pe lângă convertor, un DAS mai conține și circuite de condiționare a semnalelor(programabile sau nu). În principiu, un DAS este caracterizat de: rezoluția conversiei, numarul de canale analogice de intrare, rata de eșantionare/canal, rata de transfer a DAS, posibilități de condiționare a semnalelor de intrare. [9]
Fig.1. 4. Structura principială a unui sistem de achiziție monocanal
Structura prezentată în Fig.1.4. poate avea o singură intrare analogică asimetrică, diferențială, care în forma cea mai simplă poate fi format doar dintr-un convertor A/N și o interfață minimală. Blocul de condiționare realizează funcții cum ar fi: atenuare/amplificare programabilă, compresie/expandare, axare, filtrare, etc. Cu excepția scalării (atenuare/amplificare), toate celelalte operații se pot realizanumeric. Circuitul de eșantionare și memorare(SHC) asigură menținerea constantă a semnalului pe durata conversiei. Rezoluția și rata conversiei impun alegerea convertorului A/N și a circuitelor de comandă.
Un alt tip de sistem de achiziție este cel multicanal cu multiplexare numerică. Acesta este prezentat în figura 1.5. fiind alcătuit din mai multe DAS monocanal ce pot funcționa atât independent, cât și corelat, prin comenzi adecvate, furnizate de o logica de control. Avantajul acestei structuri este că se pot prelua semnale la frecvențe de eșantionare apropiate de cele permise de convertoare. Un alt avantaj se poate concretiza în aplicații cu transmitere la distanță a informației convertite, de exemplu multiplexarea numerică se poate realiza și în camera de control.
Fig.1.5. SAD-multicanal cu multiplexare numerică
O altă arhitectură a SAD este cea multicanal cu multiplexare analogică și eșantionare simultană, prezentată în Fig.1.6. Acesta este utilizat în aplicații cu rată de achiziție medie.
Fig.1.6. SAD -multicanal cu multiplexare analogică și eșantionare simultană
Convertorul trebuie să aibă o rată de eșantionare suficient de mare pentru a prelua valorile memorate în circuitele de eșantionare și memorare, fără ca acestea să se altereze semnificativ. Dezavantajul costului mai ridicat al convertorului A/N(care trebuie sa fie mai rapid) este compensat de faptul ca se utilizeaza doar un singur circuit. Deoarece este posibil ca procesorul(sau programul de achizitie-cand este vorba de PC) sa nu fie suficient de rapid, aceste sisteme de achiziție utilizează memorii tampon ce sunt încărcate sub controlul logicii proprii. Ulterior, eșantioanele pot fi preluate din aceste memorii prin program, via DMA de exemplu.
Fig.1.7. SAD-multicanal cu multiplexare analogică și eșantionare secvențială
SAD-multicanal cu multiplexare analogică și eșantionare secvențială reprezintă o simplificare a structurii precedente și poate fi utilizat acolo unde interesează corelația temporală a semnalelor de la intrările analogice. Structura este prezentată în Fig.1.7. În această structură, pentru a ridica viteza de achiziție, în timp ce eșantionul unui canal este convertit, multiplexorul selectează următorul canal. Blocul de control și sincronizare asigură secvențierea corectă a operațiilor de eșantionare, conversie și multiplexare, permițând și furnizarea unor informații de stare corespunzătoare. Selecția canalului se poate face software, sau cu o logică suplimentară de autoscanare. Acest tip de SAD este mai răspândit datorită uii. Ulterior, eșantioanele pot fi preluate din aceste memorii prin program, via DMA de exemplu.
Fig.1.7. SAD-multicanal cu multiplexare analogică și eșantionare secvențială
SAD-multicanal cu multiplexare analogică și eșantionare secvențială reprezintă o simplificare a structurii precedente și poate fi utilizat acolo unde interesează corelația temporală a semnalelor de la intrările analogice. Structura este prezentată în Fig.1.7. În această structură, pentru a ridica viteza de achiziție, în timp ce eșantionul unui canal este convertit, multiplexorul selectează următorul canal. Blocul de control și sincronizare asigură secvențierea corectă a operațiilor de eșantionare, conversie și multiplexare, permițând și furnizarea unor informații de stare corespunzătoare. Selecția canalului se poate face software, sau cu o logică suplimentară de autoscanare. Acest tip de SAD este mai răspândit datorită unui raport mai bun performanță/cost, dar și a faptului că pot fi realizate multe clase de aplicații și în domenii foarte variate.
Structurile SAD prezentate sunt doar principiale, și în funcție de aplicație se pot realiza diferite artificii de implementare cu scopul creșterii performanței sistemului și nu în ultimul rând al ușurinței de lucru cu acestea din punct de vedere al migrării spre prelucrare numerică.
În conformitate cu posibilitățile tehnologice de astăzi, o anumita arhitectura care a fost testată se poate realiza și în tehnologie monolitică, noul cip integrând toate funcțiunile suplimentare proiectate.
Ca obsevație, magistrala locală reprezintă modul de conexiune a unui SAD cu sistemul cu microprocesor. Este folosit termenul de magistrală mai ales pentru faptul că semnalele vehiculate sunt semnale logice.
Operația cea mai importantă este conversia analog – numerică, realizată cu unul sau mai multe circuite. În funcție de tipul aplicației mai pot fi necesare și alte circuite analogice de prelucrare.
Altă operație frecvent întâlnită în SAD este eșantionarea și memorarea temporară a eșantioanelor prelevate.
Circuitele de eșantionare și memorare reprezintã mijlocul prin care se poate realiza primul pas în conversia datelor, și anume discretizarea.
Frecvența de eșantionare se stabileste in funcție de:
spectrul de frecvență al semnalelor de intrare;
viteza de lucru a convertorului A/N;
precizia impusă a procesului de prelucrare.
O frecvență minimă și care permite determinarea parametrilor statistici ai semnalului este dublul frecvenței maxime din spectrul acestui semnal. Dacă se cere ca eșantioanele prelevate să reprezinte cu suficientă precizie un semnal continuu de la intrare, fară a mai calcula valori intermediare eșantioanelor prelevate, frecvența de eșantionare trebuie să fie de cel puțin 8…10 ori mai mare decât frecvența celei mai înalte armonici. Perioada de eșantionare nu poate fi mai mică decât timpul de conversie.
Înaintea eșantionării, semnalele analogice sunt supuse unor operații de adaptare cu sistemul de prelucrare, numite generic condiționare. Acestea pot fi:
amplificare/atenuare cu câștig programabil;
amplificare cu izolare galvanică;
comutare automată a intervalelor de măsurare;
compresie logaritmică;
filtrare;
conversie tensiune – frecvență;
conversie curent – tensiune.
1.2. CONSIDERAȚII ALE SISTEMELOR DAQ .
Distanța de la PC la senzorul de măsurare este foarte din 2 motive .
Cablurile lungi pot fi foarte scumpe, și în special în sistemele mari . De asemenea , fiecare azed de cablu spre un pc Gazdă crește sensibilitatea la zgomot. Montarea sistemului DAQ în apropierea sursei de semnal reduce zgomotul potențial .
,,Data Logger’’.
Un ,,data logger’’ este un aparat de achiziție a datelor obținute și conținute de el și care nu are nevoie de conectare sau interacțiune în timp real a unui PC gazdă pentru a funcționa .
Orice PC care achiziționează date în format digital este numit sistem de achiziție .
Înregistrarea datelor .
Data recorders sunt considerați loggeri de date ai achiziționării de date .Istoric , recorderii de date erau azed de date concepuți să captureze date de viteză mai mare, adesea input-uri audio sau vibrante.Capturau de asemenea diferite semnale de comunicare, precum ARINC-429.
BOARD-VS-BASE-BASED Systems
Sistemele de PC cu bază DAQ au o varietate de interfețe :Ethernet, PCI, USB, PXI, PCI Express, firewire, Compact Flash și chiar GPIB, RS-232/485 și ISA bus sunt populare.
Prima întrebare legată de noul proiect DAQ este dacă aplicarea este mai bună pe un sistem plug-in board sau pe un sistem de bază .(box).
Această problemă e sursă de confuzie chiar și azi. În zilele de început ale PC-DAQ regula era că măsurătorile de mare viteză erau stabilite de soluțiile de board pe când acuratețea era de domeniul cutiei externe.Între cele era o zonă ,,gri’’.
Portabilitate .
Anumite sisteme trebuie să fie portabile .
Sunt multe aparate mici, externe, care îndeplinesc această caracteristică în afară de un desktop PC.
Numărul canalelor I/O
Mulți oameni presupun că sistemele externe permit mai multă expandabilitate și pot avea o selecție mai bună. Aceasta este adevărat și multe aparate au câteva conexiuni I/O (sloturi),
Unele ajungând la sloturi de 16 sau 18 I/O (computerele industriale) .
Zgomotul .
Zgomotul este o eroare încă prezentă în sistemele de achiziție .
O mare parte a zgomotului în majoritatea sistemelor este generat în exterior la sistemul DAQ și “atras” de cabluri și de câmpul firelor .
Fiecare sistem de achiziție a moștenit și zgomotul. Acest zgomot este măsurat, în general, prin scurtcircuitarea ieșirilor de pe placă sau aparatul conector și achiziționarea unor serii de probe.Un răspuns ideal de sistem va avea o constantă de citire zero. În aproape toate sistemele totuși, citirea va oscila în jurul unui număr de citiri .
Magnitudinea oscilației este zgomotul moștenit. O specificare de zgomot poate fi oferită fie în biți sau volți, și ca vârf la vârf sau rădăcină medie pătrată Root Mean Square , (RMS).
Un sistem de intrare de 16-bit cu zgomot RMS de 3 biți nu va oferi o acuratețe mai bună de 13-biți. Cei 3 biți semnificativi vor fi dominați de zgomot și va conține foarte puțină informație folositoare, dacă nu sunt luate mai multe eșantioane și zgomotul nu este la nivel mediu .
Cele mai multe plăci de intrare DAQ folosesc un multiplexor cu multe canale conectat la un singur convertor A/D .
Multe descrieri de produs (de ex. 100 kilosample/sec, 8-channel, A/D board), specifică eșantioanele plăciii sau aparatelor .
Aceasta permite conectarea unui canal la 100 Kb/sec, dar dacă e nevoie de mai multe canale, 100 Kb/sec este împărțită pe mai multe canale. De exemplu, dacă cele două canale sunt incluse în eșantion, fiecare pot fi prelevate numai de la 50 kb /s fiecare.De asemenea 5 canale ar putea fi prelevate la 20 kb / s fiecare.
Un alt factor de rată de eșantionare poate fi considerat atunci când diferite semnale de intrare conțin variații largi de frecvență.
De exemplu, un sistem de testare automotiv are nevoie de a monitoriza o vibrație de 20 Kb/sec și o temperatură de 1b/sec. În cazul în care input-ul analog obține probe la o rată unică, sistemul va fi forțat să regleze temperatura probei la 20 kS / s și va pierde o mare parte din spațiul de memorie / disc cu cei 19,999 temperatură S / s care nu sunt necesare.
O grijă legată de rata de eșantionare finală este necesitatea de a proba suficient de repede, sau să ofere filtrare pentru a preveni aliasing-ul .
Dacă semnalele incluse în semnalul de intrare conțin frecvențe mai mari decât frecvența de eșantionare, există riscul de erori aliasing. Figura …..)=)=)= oferă o reprezentare grafică a fenomenului de aliere.
Fig.1.8. Aliasing-ul
Un exemplu din viata reala a aliasing-ului apare în filme. Elicele unui elicopter / avion sau spițele unei roți ce par a se mișca încet și / sau invers sunt un exemplu de aliasing. În filme, nu contează, dar dacă același fenomen apare în semnalul de intrare măsurat, este uneori, eroare critică. Aliasing-ul este posibil, atunci când rata de eșantionare este prea joasă .
Există două soluții pentru aliasing. Prima, și de multe ori cea mai simplă, este de a proba la o capacvitate și o frecvență mai mari decât cea mai înaltă componentă de frecvență a semnalului măsurat.
Oamenii nu folosesc filtre anti-aliasing pe termocuple, deoarece acestea nu sunt de multe ori necesare, și aliasing-ul nu este considerată o problemă .
În alte aplicații, cum ar fi analiza vibrațiilor și sunetelor, aliasing este o preocupare foarte reală și este dificil să se garanteze că o rată de eșantionare este mai rapidă decât fiecare componentă de frecvență în forma de undă.
Aceste aplicații necesită un filtru anti-aliasing. Aceste filtre au de obicei 4 poli sau sunt filtre mai mari setate la jumătate rata de eșantionare. Acestea împiedică semnalele de frecvență mai mari să ajungă la convertorii A / D, unde pot crea erori aliasing.
Sistemele de achizitie de date de obicei convertesc forme de undă analogice în valori digitale pentru prelucrare.
Cu toate că termenii achiziții de date si măsurare si testare nu pot fi definiți complet, majoritatea utilizatorilor de calculator, ingineri și oameni de știință sunt de acord, că există mai multe elemente comune:
• Un computer personal (PC), este utilizat pentru a programa echipamente de testare și a manipula sau a stoca date.Termenul „PC” este folosit în sens larg pentru a include orice calculator care rulează un sistem de operare și software-ul care sprijină rezultatul dorit.PC-ul poate fi de asemenea utilizat pentru funcțiile de sprijin, cum ar fi grafice în timp real sau generarea de rapoarte.
Pc-ul nu trebuie sa fie neapărat intr-un control constant al echipamentului de achizitie a datelor,sau sa ramana conectat la echipamentul de achizitie tot timpul.
• Echipamentul de testare poate consta din plăci de achiziție de tip plug-in pentru PC-uri, plăci cu șasiu extern, sau instrumente discrete. șasiul extern si instrumentele pot fi conectate la PC utilizând porturi standard de comunicație sau placă de interfațare cu PC-ul.
• Echipamentul de testare poate fi utilizat pentru măsurări si controlul unor procese multiple pe baza unor intrări / iesiri (I /O) analogice, I / O digitale sau alte funcții specializate.
Este dificil a diferenția termenii achiziții de date, testare si măsurători, măsurare și control pornind de la diferitele instrumente în baza operațiilor, proprietăților și performanțelor.
Sistemele de achiziție a datelor, așa cum sugerează și numele, sunt produse și/sau procese utilizate pentru a colecta informații (documentare) sau cu scopul de a demonstra sau analiza unele fenomene.
Utilizarea calculatoarelor numerice în industrie și cercetare se face pe scară din ce în ce mai largă pentru rezolvarea problemelor numerice și prelucrarea datelor, în aplicațiile concrete care implică cercetarea științifică fundamentală și experimentele de laborator, la simularea proceselor, pentru controlul și conducerea proceselor precum și în aplicațiile din domeniul transmiterii informației.
COMPONENTELE UNUI SISTEM DE ACHIZIȚIE
Printre componentele uzuale ce alcătuiesc sistemele de achiziție a datelor se pot enumera :
Senzori si traductoare
Senzorii si traductoarele – sunt dispozitivece realizează pe de o parte interfața intre lumea reală si sistemul de achiziție si respectiv conversia fenomenului fizic (mărimea de măsurat sau măsurandul) intr-un semnal electric proporțional acceptat de sistemele de condiționare.
Cabluri si conductoare de legătură
Cablurile de legătură – reprezintă suportul fizic pentru conectarea traductoarelor / senzorilor spre elementele de condiționarea semnalului. Prin specificul anunțat acestea pot fi cauza unor defecțiuni ale sistemului de achiziție si in acelasi timp ale unor erori in procesul de măsurare.
Cele mai des utilizate grupe de cabluri sunt: cablul coaxial, cablul torsadat
(ecranat si neecranat) si fibra optică.
convertoare analog-digitale, care reprezintă inima sistemului de achiziție
-convertesc semnalul analogic într-un semnal digital. În principal conversia analog-digitală este o operație de comparare, în care semnalul este comparat cu o valoare de referință și este convertit într-o fracție, care apoi este reprezentată sub forma unui număr codificat digital.
Există o varietate de convertoare analog-digitale folosite în achiziția de date .
O descriere detaliată s-ar putea întinde pe o carte întreagă.
Totuși, o cunoaștere detaliată a diferitelor tipuri de convertori și, în special, punctele lor tari sau slabe se poate dovedi benefică.Cel mai folosit convertor de tip A/D dintre produsele DAQ de astăzi sunt Successive Approximation, Delta Sigma (a.k.a. Sigma Delta), Flash, și Dual Slope/Integrating.
Generatorul de clock este o sursă pentru toate impulsurile de clock necesare tuturor dispozitivelor in vederea unei funcționări corecte.
Memoriile RAM/ROM sunt folosite la stocarea temporară sau permanentă a datelor. Memoria RAM utilizata de sistemul de achiziție poate fi cea a unui calculator sau poate fi dispusă direct pe placa de achiziție pentru a prelua și stoca datele de la ieșirea convertorului (până când calculatorul le va putea prelua).
Convertorul digital analogic poate fi utilizat în momentul în care se dorește obținerea unor semnale analogice de control ;
Interfața este un circuit ce conectează un element de un altul, de exemplu să conecteze un A/D de magistrala (bus-ul) unui procesor.
Transmiterea datelorse face conform standardelor, iar modalitatile de transmisie se adapteaza în functie de topologia ariei în care se desfasoara procesul precum si de amplasarea centrului de decizie. Astfel se poate folosii pentru transmisia de date standardul RS 232, 485 etc. (pentru transmisia seriala, în cazul în care distanta de transmisie este mai mica decât 200 m), transmisia pe portul paralel (prin rețea), transmisia prin MODEM (pentru distante mari) si nu în ultimul rând transmisia radio sau GSM.
Componenta software pentru achiziția de date. Hardul pentru achiziția de date este complet inutil fără soft – iar hardul pentru achiziție sprijinit de soft slab este cvasi-inutil. De aceea, în ultima vreme s-a produs o veritabilă explozie de produse de soft destinate acestui domeniu. Alături de perfecționarea continuă a vitezei și rezoluției pe care o doresc utilizatorii echipamentelor de măsură și testare, programarea aplicațiilor destinate achiziției de date a fost mult ușurată de apariția pachetelor de soft ce rulează sub Windows le oferă pe lângă o interfață ușor de utilizat – care este familiară multor ingineri, o posibilitate de standardizare care facilitează schimburile de date.
În consecință softul devine adesea un factor esențial (uneori chiar determinant) în proiectarea unor sisteme de achiziție de date. Deși producătorii de hard nu agreează această mentalitate. Adevărul este că trebuie să alegem mai întâi softul. Nu este totuna dacă îl vom rula pe un PC sau pe un HP.
Deși Windows scade puțin viteza de achiziție de date și a analizării lor, avantajele pe care le oferă surclasează acest aspect. Cererea de aplicații Windows pentru achiziția de date este tot mai mare.
Un alt avantaj oferit de Windows este faptul că permite aplicațiilor să fie conduse de evenimente, eliminând necesitatea de a efectua operațiuni de interogare ciclică (polling). Aceasta crește eficiența programării și asigură programatorului mai multă flexibilitate în ceea ce privește exploatarea posibilităților de multitasking din Windows. Să presupunem că într-un sistem cu polling, trebuie să preluăm 1000 de eșantioane. Softul ar trebui să pornească operația și apoi să interogheze sistemul după fiecare eșantionare, întrebând dacă s-a achiziționat eșantionul cu numărul 1000. Un sistem condus de evenimente pornește operațiunea, numără eșantioanele și trimite un mesaj după achiziționarea ultimului eșantion. În sistemele cu polling, operația este controlată de aplicație, într-un sistem condus de evenimente controlul este păstrat de sistemul de operare.
Echipamentele hard pentru achiziția de date tind să devină din ce în ce mai mult un fel de bunuri de larg consum. Această tendință determină transformarea softului major de diferențiere a sistemelor de achiziție de date. În destul de multe cazuri softul poate fi cea mai scumpă componentă a unui asemenea sistem.
Software-ul este dedicat pentru funcțiile specificate anterior. Software-ul
aplicativ lucrează pe un PC dotat cu un sistem de operare single-task (DOS) sau multitask (Windows, Unix, OS2).
Dintre pachetele software cu utilizare extinsă se pot aminti: LabView, DASYLab, InstaCal Matlab, dSpace, VEE și altele.
Sistemul de calcul,sau computerul de bază– prin configurația de care dispune, influențează calitatea sistemului de achiziție a datelor.
Ca regulă generală se poate spune că nu este necesar ca sistemul de calcul pentru achiziția de date să fie extrem de puternic. Totuși dacă aplicația implică o combinare a achiziției de date cu analiza datelor și reprezentarea lor grafică, este posibil ca investiția într-o platformă puternică să fie justificată. În ultima vreme, un număr din ce în ce mai mare de utilizatori ai sistemelor de achiziție de date ridică problema portabilității. Până nu de mult, printr-un asemenea sistem portabil se înțelegea un calculator laptop cu socLuri pentru expandare în care se conectează interfețe pentru achiziție.
Dar dimensiunile și consumul lor de energie electrică ridicau probleme în numeroase aplicații. Astăzi tot mai mulți specialiști sunt de părere că soluția o constituie calculatorul notebook. Aceste calculatoare ce nu dispun de achiziția de date, trebuie să fie cutii externe ce folosesc porturile seriale sau paralele ale computerului. Notebookurile din ziua de azi (ale căror prețuri scad) se apropie tot mai mult de PC-urile desktop în ceea ce privește puterea de comunicație, acoperind circa 90% din necesitățile celor care fac achiziție de date “portabilă“. Restul îl pot face cutiile externe .
Circuite de condiționarea semnalului
Elementele pentru condițioarea semnalului – vor cuprinde orice dispozitiv ce realizează conversia semnaluluielectric primar provenit de la senzor intr-un semnal acceptat de lanțul de măsurare ulterior, de exemplu un convertor analog digital. Principalelesarcini impuse acestor elemente sunt: filtrarea, amplificarea, liniarizarea, izolareagalvanică, alimentarea, conversie curent – tensiune (sau invers).
Filtrele anti-aliasing sunt folosite la îndepărtarea, (tăierea) semnalelor de frecvență prea mare ce nu mai pot fi convertite în mod corect de convertorul A/D folosit.
Circuite de eșantionare și reținere sunt circuite ce se folosesc înainte de multiplexare, la eșantionarea semnalelor provenite simultan de la mai multe canale sau înainte de convertorul A/D – circuitele de reținere – pentru a preveni modificarea semnalului de la intrarea convertorului atât timp cat încă mai are aloc conversia lui din analog în digital.
Multiplexorul (MUX) este un selector ce conectează pe rând câte un canal la convertorul A/D.
Componente hardware
Hardware-ul pentru achiziția datelor – include toate componentele necesare sistemului pentru indeplinirea următoarelor funcții:
• Intrarea, procesarea si conversia in format digital, ulizand convertoare A / D, a
semnalului analogic si transferarea pentru vizualizare, memorare si analiză;
• Intrarea pentru semnale digitale care transferă informație de la un sistem sau un proces;
• Procesarea, conversia in format analogic, utilizand convertoare D / A, a
semnalelor digitale care provin de la PC pentru controlul sistemelor si a proceselor;
• Iesirea pentru semnale digitale de la PC si destinate controlului sistemelor sau a
proceselor.
Aplicațiile de achiziție de date sunt controlate de programe software dezvoltate folosind diverse limbaje de uz general de programare, cum ar fi BASIC, C, Fortran, Java, Lisp, Pascal.
Există, de asemenea, pachete de software open-source care oferă toate instrumentele necesare pentru a obtine date de la echipamente hardware diferite.
Aceste instrumente vin din partea comunitatii stiintifice unde experimentele complexe necesită softuri rapide, flexibile și adaptabile.
CLASIFICAREA SISTEMELOR DE ACHIZIȚIE DE DATE
Sistemele de achiziție, se pot clasifica atât după condițiile de mediu în care lucrează, în care sunt folosite aceste sisteme, cât și dupănumărul de canale supravegheate.
După condițiile de mediu în care lucreazăexistă :
sisteme destinate unor medii favorabile (laborator),
SAD destinate utilizării în condiții grele de lucru (echipamente militare, instalații telecomandate, anumite procese azedliv, etc.).
După numărul de canale de preluare a datelor supravegheate:
SAD monocanal, cele care preiau datele de la un singur măsurand; cu una din variantele:
numai circuite pentru conversia directă a semnalului;
preamplificator urmat de circuitele de conversie;
preamplificator, circuite de eșantionare-memorare, urmate de circuite de conversie;
preamplificator, circuite de condiționare a semnalului și una din variantele anterioare;
SAD multicanal în una din variantele:
cu multiplexarea ieșirilor unor convertoare analog-numerice, fiecare convertor corespunzând unui canal;
cu multiplexarea intrărilor circuitelor de eșantionare-memorare (S/H – sample and hold –engleză.);
sisteme de achiziție destinate multiplexării semnalelor de nivel scăzut.
Sistemele multicanal mai pot fi :
-cu multiplexare analogică(comutarea intrărilor se face analogic);
-cu multiplexare digitală(comutarea intrărilor se face după ce au fost convertite).
Alegerea tipului de sistem de achiziție multicanal cu multiplexare analogică sau digitală se face în funcție de tipul si numărul mărimilor de măsurat, modul de variație al acestor mărimi, viteza de achiziție necesara etc.
În urma analizei caracteristicilor, funcțiilor si restricțiilor pe care trebuie să le satisfacă un sistem de achiziție și măsurare se poate avansa o arhitectură de sistem de măsurare, achiziție si monitorizare modern.
Fig. 1.6.Arhitectura unui sistem de măsurare, achiziție si monitorizare modern.
Capitolul II
Tipuri De Comunicații Și Interfețe Pentru Sistemele De Achiziție
2.1 Interfețe de comunicație folosite în sistemele de achiziție.
Sistemele de achiziție a datelor pot fi incluse alături de alte aparate electronice într-un sistem complex de măsurare, prelucrare a rezultatelor și conducere, coordonat de un calculator central. Principala problemă ce trebuie soluționată în cadrul unui astfel de sistem o constituie dialogul între elementele componente.
În sens larg, o interfață asigură comunicarea aparatelor electronice cu un calculator central, în scopul setării modului lor de funcționare precum și transferul propriu-zis de date.
Așa cum este de înțeles, fiecare echipament din sistem trebuie să fie prevăzut cu un bloc de interfață pentru interconectarea cu restul echipamentelor.
Transferul de date se realizează prin așa-numita magistrală, al cărei suport fizic poate fi unul cu fir (conductori convenționali) sau fără fir (canal radio sau transmisie în infraroșu). Realizarea unui sistem complex este mult ușurată dacă echipamentele ce urmează a fi conectate între ele sunt dotate cu interfețe standardizate.
Realizarea unor sisteme de achiziție a datelor de către un inginer automatist este un lucru relativ ușor. Acesta nu trebuie decât să conecteze un microcontroler la un CAN sau CNA în funcție de aplicația existentă. Pentru comunicația unui astfel de sistem cu o aplicație software cea mai simplă variantă este utilizarea interfeței seriale RS232.
Avantajele comunicației serie constă în numărul redus de linii de comunicație, precum și posibilitatea conectării relativ simple a două aparate aflate la distanțe mari. Din categoria
interfețelor/magistralelor seriale fac parte, de exemplu: RS 232, I2C, RS 485.
În prezent, există un mare număr de interfețe standard, care pot fi grupate în două categorii: interfețe de tip serie și interfețe de tip paralel.
În sistemele de achiziție sunt folosite mai multe tipuri de comunicații între sistem și pc. Dintre acestea cele mai importante sunt comunicația serială rs232, comunicația paralelă, și comunicația prin intermediul magistralei seriale universale- USB.
2.2 Comunicația de tip Serial. Interfețe de comunicație serială
Multe microcontrollere au incluse atât interfețe de comunicare sincrone cât și
Asincrone.Interfața serială sincronă este numită de obicei “serial communication interface”
(SCI sau UART), iar Interfața serială sincronă e numită de obicei “serial peripheral interface”(SPI).De obicei (dar nu obligatoriu) , o magistrală serială sincronă include o linie separată de clock .În acest fel se simplifică interfața între emițător și receptor, iar linia de ceas e susceptibilă la zgomot în cazul distanțelor mari.
La magistrala serială asincronă ceasurile emițătorului și receptorului sunt independente și se face o re-sincronizare pentru fiecare bit, după bitul de start.
Comunicația serială se folosește între microcontroller și alte subsisteme, in special pentru economie de pini la capsulă .
Interfața serială este un sistem de comunicație numerică introdus ca urmare a necesității de a controla un ansamblu tehnic cu elemente dispersate pe suprafețe mari. PC-urile sunt dotate cu mai multe porturi seriale (de obicei, două), utilizate, în cea mai mare parte, pentru comanda plotter-elor, a imprimantelor seriale și a unor mouse-uri. De asemenea, această interfață este folosită pentru comunicația cu PC-ul și de către dispozitive speciale, cum ar fi programatoarele EPROM și PAL, emulatoarele, controller-ele logice programabile sau anumite interfețe de achiziție de date.
Achiziția datelor se efectuează prin executarea unui program de achiziție de către calculatorul care asigură comanda mijlocului de măsurare, transferul datelor într-un fișier de date și prelucrarea lor imediată sau ulterioară.
Denumirea RS-232 (mai exact, RS-232C) corespunde normei americane a interfeței seriale, normă propusă inițial în 1960 și devenită variantă standard în 1969, apoi remodificată în 1987. Denumirea V24 este o prescurtare a normei franceze (și recomandată CEI). În principiu, ambele norme sunt identice.
În prezent există și module dedicate comunicației seriale performante, cum este RS-485 (de tip plug-in) pentru care se poate asigura comunicația până la distanța de 1,2 km, cu o viteză maximă de transfer de 100 kHz .
Definiție.
Transferul serial se defineste ca fiind transmisia secventiala a datelor între doua puncte de comunicatie. Suportul fizic necesar transferului de informatii este reprezentat de catre magistrale. Caracteristica principala a unei magistrale seriale este transmisia bit cu bit a informatiilor, folosindu-se pentru aceasta un numar redus de semnale sau linii de comunicatie.
Fig. 2.1.. Transferul serial al datelor
Spre deosebire de magistrala seriala, o magistrala paralela permite transferul simultan al mai multor biti pe mai multe linii de date. Transmisia seriala, desi asigura o viteza de transfer mai redusa în comparatie cu transmisia paralela, prezinta în plus o serie de avantaje, cum ar fi: un numar redus de linii de transmisie si o distanta de transfer mai mare.
Standardul RS-232.
Acesta este cel mai cunoscut standard de comunicație serială asincronă. Inițial
standardul a fost conceput cu scopul de a permite conectarea unui terminal
inteligent la un calculator central printr-o legatură telefonică.RS-232 este lent, destul de afectat de zgomot și are o rază destul de scurtă de acțiune, dar rămâne încă omniprezent .
Cu toate acestea, PC-urile noi au înlocuit o dată comunele porturi RS-232, cu porturi USB, și cele mai multe dispozitive „de consum” externe au abandonat RS-232. Ar putea acest lucru să ducă în cele din urmă la sfârșitul RS-232? Timpul va spune.
Standardul precizează interfața dintre un echipament de calcul (DTE- Data Terminal
Equipment) și adaptorul sau la linia telefonică – modem (DCE- Data CircuitEquipment) , ilustrate în figura următoare :
Figura 2.2. Componentele unui ansamblu de comunicatie în standardul RS-232
Interfața permite comunicația serială bidirecțională între calculator (DTE) și componenta de comunicație (DCE), la o viteză de transfer între 110 si 19200 bauds. Standardul se poate folosi și pentru a realiza legături seriale între diverse echipamente fără a mai folosi un modem.
Așa cum am mai spus, modul de transmisie este în acest caz serial asincron, bidirecțional. Codificarea informațiilor binare (1 logic, respectiv 0 logic) se face prin nivele de tensiune sau curent.
În standardul RS-232, avem următoarea structură a informației de transmis (figura 3):
– un bit de start (0 logic)
– 5-8 biți de date
– 0-1 bit de paritate (pentru detecția erorilor)
– 1-2 biti de stop (1 logic)
Figura 2.3. Structura unui bloc de date transmis în standardul RS-232
În cazul transmisiei seriale asincrone, sincronizarea între transmitator si receptor se realizeaza la începutul fiecarui caracter prin bitul de start (0 logic).
De precizat că în repaus linia este în 1 logic. Citirea datelor se face secvential, la jumatatea intervalelor de bit care urmeaza bitului de start. Protocolul asigura citirea corecta a datelor chiar si în cazul în care exista mici diferente (pina la 2%) între frecvența de emisie si cea de citire a datelor. Aceasta sincronizare nu s-ar păstra în cazul în care lungimea blocului de date ar fi mai lungă.
Interfața RS-232 C
Standardul RS-232 C, introdus de Electronic Industries Association (EIA), definește caracteristicile electrice ale unei interfețe dintre un echipament numeric – numit în standard Data Terminal Equipment (DTE) si un modem – denumit de standard Data Communications Equipment (DCE). Denumirea completă a interfeței RS-232 C este : Interface Between Data Terminal Equipment and Data Communication Equipment Employing Serial Binary Data Interchange. Litera C vine de la ultima revizie făcută standardului. Recomandarea V.24 a CCITT este aproape identică cu RS-232 C.
Standardul RS-232 C acoperă patru domenii :
1. Caracteristicile mecanice ale interfeței.
2. Semnalele electrice.
3. Funcția fiecărui semnal.
4. Subset de semnale pentru aplicații specifice.
Interfața RS-232 C poate funcționa asincron sau sincron. Cel mai adesea se folosește comunicarea asincronă. Numeroase aparate utilizează conectarea la calculator prin intermediul interfeței seriale RS-232. Norma clasifică aparatele în două categorii:
DTE (Data Terminal Equipments) – categorie din care fac parte PC-ul, tastatura, etc.
DCE (Data Communication Equipments) – modem-urile, aparatele de măsurare etc.
Modul de conectare poate să difere de la un aparat la altul. În principiu, se
poate conecta numai un singur aparat la o interfață serială. Programarea modului de comunicație poate fi, de asemenea, foarte diferită. De aceea, nu se poate vorbi de un standard. În forma minimală, o conexiune serială RS-232 se compune din numai 3 conductoare:
1. RXD (Receive Data), conductorul pentru semnalul de recepție;
2. TXD (Transmit Data), conductorul pentru semnalul de emisie;
3. GND (Ground), conductorul de masă.
2.3 COMUNICAȚIA DE TIP PARALEL
Pentru sistemele de măsurare ce utilizează aparate inteligente conduse de calculator, comunicația paralelă este cea mai indicată, asigurând viteze mari de comunicație, drept pentru care au fost realizate standarde internaționale la care s-au aliniat majoritatea constructorilor de aparate inteligente dotate cu microprocesoare.
Comunicația paralelă este utilizată și pentru alte aparate cuplate la calculator, cum ar fi: imprimante, plotter-e, dispozitive de memorie externă etc.
Până în anii ’60 au existat numai aparate de măsurare cu comandă manuală și de-abia o dată cu apariția aparatelor numerice, în deceniile următoare, s-au proiectat primele interfețe cu rolul, la început, de a permite cuplarea mai multor aparate de măsurare între ele. În anii ’70 s-a pus problema standardizării interfețelor, prima soluție constituind-o interfața RS-232 pentru interconectarea calculatoarelor ca și a perifericelor la acestea. Încă din 1965, însă, firma Hewlett-Packard lucra la definirea unui concept de interfață HPIB (Hewlett Packard Interface Bus), din care a decurs apoi norma internațională IEC 625-1, adoptată în 1976.
INTERFAȚA HPIB.
BUS-ul IEC 625 utilizează transmisia asincronă ceea ce înseamnă că viteza de comunicație este determinată de aparatul cel mai lent din sistem. Acesta este numai aparent un dezavantaj, deoarece timpul de măsurare al aparatelor este de obicei mult mai mare decât timpul necesar comunicației.
Se obțin astfel viteze de 2000-3000 kBaud ceea ce nu este deloc puțin în comparație cu comunicația serială prin RS-232 ce poate asigura maximum 38,4 kBaud.
BUS-ul IEC pentru sistemele de măsurare este cunoscut sub mai multe denumiri și variante, diferențele dintre acestea fiind însă minime. Astfel, între HPIB și GPIB, realizate după standardul american IEEE-488 și, respectiv, standardul internațional IEC-625, diferența este la conectarea în cuple și numărul de pini ai acestora. Prescurtările au următoarele semnificații:
• HPIB: Hewlett Packard Interface Bus
• GPIB: General Purpose Interface Bus
Conectorul utilizat de bus-ul HPIB este redat în fig.3.9. Acest conector are 24 de pini care sunt alocați conform standardului pentru intrări-ieșiri de date și comenzi și care vor fi explicitați în continuare.
Pentru realizarea unui sistem automat de măsurare prin interfața HPIB este necesar un echipament de calcul (PC), care să posede implementată pe magistrala proprie placa de interfața pentru acest Bus, iar aparatele utilizate trebuie să fie prevăzute de asemenea cu această interfață.
Sistemul poate fi format din maximum 15 aparate ce pot fi conectate la calculator în două moduri: în stea (fig. 2.27a) sau în serie (fig. 2.27b).
Legăturile între aparate trebuie să fie cât mai scurte și să nu depășească lungimea de 2 m.
Fig. 2.4.Conectorul HPIB.
Legătura în stea asigură o configurație mai avantajoasă asigurând distanțe minime între aparate și o viteză de comunicație mai mare, de aceea este mai recomandată.
Legătura în serie permite o dispersare mai mare a aparatelor, dar o conectare imperfectă la una dintre cuple poate crea probleme de reflexii pe cabluri sau chiar întreruperea comunicației între aparate. De asemenea, viteza de comunicație este mai mică, datorită traseelor mai lungi.
2.4 COMUNICAȚIA USB
USB este un standard de magistrală serială pentru interfațarea dispozitivelor.
Inițial creată pentru calculatoare, se folosește în prezent și pentru memorii portabile, console pentru jocuri video, PDA-uri, DVD-uri portabile, media-player-e, telefoane celulare și chiar televizoare, echipamente stereo fixe (audio-player-e digitale) sau de mașină, mouse-uri, imprimante, aparate foto, etc. Implementarea USB în spectrul radio e numita WirelessUSB.
USB a fost creat ca să inlocuiască toate porturile seriale și paralele de pe calculatoarele personale, care nu erau standardizate și necesitau o mulțime de drivere.
USB are o structura asimetrica cu un controler gazda „host-controller”, si o multime de dispozitive inseriate (daisy-chained). In lant pot fi incluse hub-uri USB suplimentare,
permitand bifurcarea intr-o structura de arbore, cu maxim cinci niveluri de bifurcare per
controler. La un controler gazda pot fi conectate maxim 127 de dispozitive pe bus.
Cablurile USB nu trebuie sa aiba terminator. Calculatoarele personale pot avea cateva controlere gazda permitand astfel conectarea unui mare numar de dispozitive USB. [7]
În figura 2.5 sunt prezentate tipurile de conectori USB folosiți .
Fig.2.5. conectori USB (tip A,B)
În plus, sunt disponibile mufe USB (plugs/receptacles) mai mici:
-Mini-A, Mini-B, specificate in „On-The-Go Supplement to the USB Specifications”
-Micro-USB, au aparut in 2007
USB (Magistrala Serială Universală) este o specificație ce stabilește comunicația între anumite dispozitive și gazda ce le controlează (de obicei, calculatoarele obișnuite). A fost creat în ianuarie 1996, la proiectarea sa contribuind Intel, Compaq, Microsoft, Digital Equipment Corporation, IBM și Northern Telecom. USB-ul este capabil de a conecta majoritatea perifericelor, precum mausuri, tastaturi, camere digitale, imprimante, hard-diskuri externe etc.
Există două feluri de a trimite informații printr-un cablu sau chiar de la aplicație la aplicație: serial și paralel – serial înseamnă bit cu bit pe un singur canal de comunicație și paralel înseamnă tot bit cu bit dar in paralel pe mai multe canale de comunicație.
Magistrala USB reprezintă soluția oferită comunicațiilor seriale de noua generație de calculatoare PC. Este o interfață serială rapidă, bidirecțională, ieftină și ușor de folosit. USB a fost creată ca un standard industrial, o extensie a arhitecturii PC orientată spre armonizarea cu standardele de comunicație din telefonie, ceea ce este numit CTI (Computer Telephony Integration). Acest aspect este considerat fundamental din punct de vedere al aplicațiilor generației următoare.
USB este o magistrală pe cablu care permite schimb de date între un calculator gazdă și o gamă largă de periferice accesibile simultan. Magistrala permite ca perifericul să fie atașat, configurat, folosit și deconectat în timp ce gazda și celelalte periferice operează. USB a fost proiectată în primul rând pentru utilizatorii care nu doresc să intre în detalii de instalare hardware, astfel sistemul complicat de cablare a fost înlocuit cu un control software. Toate problemele presupuse de interconectarea mai multor dispozitive cu performanțe și rate de transfer diferite sunt tratate prin software. [37]
Avantajele acestei soluții față de bătrâna interfață serială RS-232 transformată, sunt:
rata de transfer – poate atinge 12 Mbps față de 115 000 bps;
conectează pâna la 127 de dispozitive la PC, (ceea ce înseamnă că operează ca o magistrală) față de numai 2 dispozitive;
ușor de utilizat de către utilizatorul final (end user) – adăugarea/eliminarea de dispozitive în/din sistem este foarte comodă;
are un protocol flexibil;
este o soluție ieftină de interconectare.
Capitolul III. Comunicația USB. Interfața USB.
3.1.Magistrala serială USB . Prezentare generală
Magistrala USB (Universal Serial Bus) a fost dezvoltată în anul 1995 de un grup de firme care cuprinde Compaq, Hewlett Packard, Intel, Lucent, Microsoft, NEC și Philips. Scopul principal urmărit a fost definirea unei magistrale externe de extensie care să permită adăugarea simplă a perifericelor la calculatoarele IBM PC.
Actualmente, magistrala USB are un succes deosebit pe piață, cei mai mulți producători de periferice dezvoltând echipamente conforme cu specificațiile USB. Practic, toate calculatoarele noi dispun de unul sau mai multe porturi USB. Magistrala USB este una din tehnologiile care fac posibilă inițiativa Easy PC Initiative, propusă de Intel și Microsoft cu scopul de a simplifica utilizarea calculatoarelor IBM PC, fără a afecta conectivitatea și extensibilitatea acestora. În figura 3.1 este prezentată emblema USB.
Fig. 3.1. Emblema USB (trident)
…………0000 În prezent se lucrează la versiunea 2.0, care va permite creșterea ratei de transfer cu un factor de 40. Această extensie a versiunii 1.1 a specificațiilor USB presupune utilizarea acelorași cabluri, conectori și interfețe software.
Utilizatorii vor beneficia însă de o gamă suplimentară de periferice cu performanțe ridicate, ca de exemplu camere pentru video-conferințe, scannere și imprimante din generația viitoare, și dispozitive de memorare rapide.
USB oferă dezvoltatorilor o interfață standard ce poate fi utilizată în mai multe tipuri diferite de aplicații.Un dispozitiv USB este ușor de conectat și de folosit din cauza unui azedl azedliv de proiectare.
Magistrala USB a fost introdusă cu dorința de a oferi utilizatorilor o interfață universală, cu viteză mare și ușor de folosit, mai ieftină pentru că, fiind serială, cablurile și conectorii costă mai puțin. Aceste considerente au impus magistrala USB pe piață, în prezent aceasta ocupând o cotă mare de piață în domeniul interfațărilor. Complexitatea USB este mai mare decât a interfețelor înlocuite, adică a interfeței RS232 și a interfeței paralele, prin urmare
implementarea ei în microcontrollere a fost mai dificilă. În 2008 au fost vândute peste 3 miliarde de dispozitive USB, iar intrarea pe piață a USB 3.0 (SuperSpeed USB) în anul 2009,
cu o estimare de vânzări până în 2013 de 25% din totalul dispozitivelor USB asigură
condițiile supraviețuirii îndelungate.
3.2. Istoria USB.
USB este un standard industrial dezvoltat pentru conectarea perifericelor electronice prec um tastatură, mouse, modem-umuri, și harduri externe la un computer.
Acest standard a fost dezvoltat pentru a înlocui conexiuni mai mari și mai încete precum comunicația serială și cea paralelă. El a fost dezvoltat printr-un efort comun, începând cu 1994, între Compaq, DEC, IBM, Intel, Microsoft, NEC, și Nortel. S-a dorit dezvoltarea unei singure interfețe care putea fi folosită la mai multe aparate, să elimine mulții conectori diferiți disponibili în acel timp și să crească baza de date a aparatelor electronice .
De-a lungul anilor specificațiile USB au trecut prin numeroase revizii .
Versiunea inițială a standardului USB a fost 1.0 care a fost finalizat în ianuarie 1996.
Specificațiile originale includeau doar suport pentru 2 viteze : Low-speed (LS) ce suporta1.5 Mb/s și full-speed (FS), ce permitea viteze de 12 Mb/s.
În timp ce LS era mai înceată decât FS, era mult mai puțin susceptibilă la interferențe electromagnetice(EMI) ceea ce a facut-o atrăgătoare pentru mulți dezvoltatori de aparate USB, deoarece componentele cu cost redus puteau fi folosite.
În 1998, USB 1.1 a fost dezvoltat și a adăugat alte clarificări și îmbunătățiri la USB 1.0.
În anul 2006 a apărut versiunea USB 2.0 la inițiativa HP, Intel, Lucent,Microsoft, NEC și
Philips, pentru a permite rate de tramsfer mai mari decât versiunea 1.1, noua versiune
fiind compatibilă cu cele mai vechi 0.9, 1.0, 1.9 si 1.1.
Aceasta a adăugat o nouă viteză, high-speed(HS), făcând-o capabilă să funcționeze la 480 Mb/sec.
USB este reglementat de forum-ul de implementare USB(USB-IF), o organizație nonprofit ce are grijă de documentele USB, și de programele de conformitate .
3.3. O vedere largă asupra USB
Gazda însăși conține două componente, controller-ul gazdă și hub-ul rădăcină.Controlerul gazdă este un chipset hardware cu un driver software layer care este responsabil pentru următoarele sarcini :
a detecta montarea și demontarea dispozitivelor USB ;
Gestionarea fluxului de date între gazdă și azedlive ;
Furnizarea și gestionarea puterii dispozitivelor atașate ;
Monitorizarea activității de pe magistrală
Cel puțin un controller gazdă este prezent într-o gazdă și este posibil să avem mai mulți controlleri. Fiecare permite conectarea de până la 127 de aparate prin folosirea hub-urilor USB.
Hub-ul de bază este unul intern ce leagă controllerii gazdă și se comportă ca primul strat de interfață la un USB în sistem . Acum, sunt multiple porturi USB pe PC .
Aparatele USB au una sau mai multe funcții precum mouse, tastatură sau device-uri audio.
Comunicarea USB este făcută prin tuburi. Acestea tuburi sunt o cale de conectare numit endpoint(punct de capăt.).
Acesta stochează datele de la gazdă și pastrează datele ce se așteaptă a fi transmise la gazdă.
Un USB poate avea mai multe puncte de capăt și fiecare dintre ele are un tub asociat.
Sunt 2 tipuri de tuburi într-un sistem USB : tuburi de control și tuburi de date.
Orice tub folosit depinde de tipul de transfer al datelor.
Transferul control-trimit comenzi la device, ridică într3ebări și configurează deviceurile.
Acest transfer folosește tubul de control.
Transferuri întrerupere-trimit cantități mici de date ce au nevoie de o reducere de viteză minimă garantată.
Transferuri bulk folosite pentru transferul mai mare de date pe toate benzile USB disponibile fără garanții legate pe funcții de transfer.
Acest transfer folosește tubul de date.
Transferuri izocronice- au nevoie de o rată de distribuție garantată.
Fiecare device are un tub de control și prin acest tub se controlează transferurile de mesaje de la device-ul ce le oferă.
Opțional, poate avea și tuburi de date.
Tubul de control este singurul tub bidirecțional din sistemul USB .Toate tuburile de date sunt unidireționale. Fiecare cap de ieșire este accesat cu adresă de device și cu un număr.
Când un device USB este conectat pentru prima oară de o gazdă, procesul de enumerare USB este inițiat .Enumerarea este procesul de schimb de informații între device și gazdă .
În plus, enumerarea include dobândirea unei adrese, citirea descriptoilor și încărcarea unui driver.Acest proces are loc in câteva secunde. Odată ce procesul este încheiat, device-ul este gata sa transfere date spre gazdă.
Caracteristicile principale ale magistralei USB :
• rata de transfer este de 1,5 Mbps la USB 1.0 (Low Speed), 12Mbps la USB 1.1 (Full
Speed), 480Mbps la USB 2.0 (Hi Speed) și 4,8Gbps la USB 3.0 (Super Speed);
• conectează până la 127 de dispozitive la un calculator gazdă, dar nu se pot conecta
dispozitive USB fără gazdă ca la IEEE 1394;
• configurarea este automată, adică se poate conecta un dispozitiv USB fizic în mers
(Hot Plug In). Se remarcă creșterea complexității software față de partea hardware;
• cablul conține linii de alimentare, așa că dispozitivele USB pot fi alimentate de la
gazdă (bus powered device) sau pot avea alimentare proprie (self powered device).
Din acest motiv cablurile au conectori diferiți pentru conectarea spre gazdă (upstream)
și spre dispozitiv (downstream);
• distanța de conectare este de maximum 5m, distanța se poate mări prin inserarea de
hub-uri.
Specificațiile acestei magistrale descriu atributele de magistrală, definesc protocolul, tipurile
de tranzacții, administrarea magistralei (bus management) și totodată furnizează informații
necesare pentru construirea unui sistem în acest standard.
Magistrala USB definește trei categorii de dispozitive fizice:
• gazda USB (USB Host)
• funcții USB (USB function)
• distribuitoare USB (USB Hub)
Dispozitivele USB sunt conectate într-o topologie de tip stea multiplă. Topologia USB este
reprezentată în figura3.2. În nodul fiecărei stele se găsește un hub.
Fig.3.2. : Topologia USB
Legătura este multipunct pe magistrală dar punct la punct între hub și dispozitive. Este posibil ca un dispozitiv fizic să conțină mai multe funcții și un hub, acest dispozitiv numindu-se compus. Un exemplu este o multifuncțională care conține imprimantă, scanner și fax, toate
acestea fiind funcții USB.
Fiecare dispozitiv USB poate dispune de una sau mai multe endpoint-uri prin care gazda comunică cu dispozitivul. Un endpoint este un registru intern, adresabil de gazdă în care se pot trimite sau din care se pot citi informații specifice. Toate dispozitivele posedă un endpoint special, endpoint zero, care este privit ca pipe de control. Pipe-ului endpoint zero îi este asociată informația ce descrie complet dispozitivul USB: clasa de dispozitiv, informații de power management, producător etc.
Inițiatorul transferurilor de date pe magistrală este gazda USB. Protocolul folosit este protocol
prin interogare (de tip polled). Datele vehiculate pe magistrală sunt grupate în pachete iar o
tranzacție de magistrală implică transmiterea a cel mult trei pachete. Fiecare tranzacție începe
prin trimiterea de către gazdă a unui pachet de semnalizare –token packet- care descrie tipul și
sensul tranzacției, adresa dispozitivului USB și numărul nodului destinație (endpoint).
Dispozitivul adresat se selectează prin decodificarea adresei ce-i corespunde. Urmează
transferul de date de la gazdă spre dispozitivul adresat sau invers, după cum este specificat în
pachetul de semnalizare. Receptorul răspunde în această tranzacție printr-un pachet de dialog
-handshake packet- prin care se confirmă (sau nu) încheierea cu succes a transferului de date.
Aspectele electrice și mecanice ale interfeței sunt reglementate foarte precis în specificațiile
de magistrală. Semnalele electrice sunt transmise diferențial (D+ și D-). Codificarea utilizată
este NRZI cu împănare de biți (bit-stuffing) și tactul de recepție este generat din datele
transmise, codul fiind autosincronizabil. [8]
Cablul USB are patru fire, semnalul util este transportat pe două conductoare torsadate iar pe
celelalte două conductoare cablul transportă tensiunea de alimentare nominală de +5V (VBUS) și potențialul de referință (GND), figura 3.
Fig.3.3. :Cablu USB
Tensiunea transmisă pe linie nu este tensiunea de alimentare a calculatorului gazdă ci este
gestionată de controllerul USB, așa încât o suprasarcină este detectată și un mesaj de eroare
este afișat de sistemul de operare.
Ușurința cu care este utilizată USB rezultă din atributul special de tip plug-and-play al acestei
magistrale. USB acceptă cuplarea și decuplarea de dispozitive în orice moment; sistemul
software se adaptează dinamic la modificările fizice de topologie. Un dispozitiv USB este
plasat fizic în structură prin atașarea la portul unui hub. Hub-ul dispune de indicatori de stare
la fiecare port pentru a semnaliza cuplarea sau decuplarea unui dispozitiv. Gazda sesizează
semnalizarea de la hub și atribuie o adresă unică dispozitivului. La decuplare hub-ul
dezactivează portul și indică gazdei acest eveniment. Pentru a se adapta dinamic, sistemul
software USB este permanent într-un proces de inventariere a magistralei (bus counting). [8]
3.2. Funcționarea unui sistem cu magistrala USB 1.1
Elementele principale ale unui sistem care utilizează magistrala USB 1.1 sunt programele de sistem, “hub”-urile, cablurile USB și perifericele USB.
Programele de sistem asigură o tratare uniformă a sistemului de I/E de către toate programele de aplicații. Prin ascunderea detaliilor de implementare hardware, programele de aplicații vor fi mai portabile. Programele de sistem gestionează conectarea și deconectarea dinamică a perifericelor. Această fază, numită enumerare, implică comunicarea cu perifericele pentru determinarea driverului de dispozitiv care trebuie încărcat, și asignarea unei adrese unice fiecărui periferic. În timpul funcționării, calculatorul inițiază tranzacții cu anumite periferice, iar fiecare periferic va accepta tranzacțiile și va răspunde în mod corespunzător.
Un “hub” permite conectarea unui număr mai mare de periferice USB și asigură o putere de alimentare corespunzătoare fiecărui periferic. “Hub”-ul recunoaște conectarea dinamică a unui periferic și asigură o putere de cel puțin 0,5 W pentru fiecare periferic în timpul inițializării. Sub controlul programului de sistem, “hub”-ul poate asigura o putere suplimentară pentru funcționarea perifericelor, până la maxim 2,5 W. Prin atașarea unui nou “hub”, acestuia i se asignează o adresă unică, iar “hub”-urile pot fi conectate în cascadă până la cinci nivele. Un “hub” funcționează ca un repetor bidirecțional și va repeta semnalele USB pe cablurile de conectare cu calculatorul și pe cablurile de conectare cu perifericele. “Hub”-ul monitorizează de asemenea semnalele de pe aceste cabluri și gestionează tranzacțiile care îi sunt adresate. Toate celelalte tranzacții sunt repetate la dispozitivele atașate.
Perifericele USB sunt dispozitive “slave” care respectă un protocol definit. Aceste periferice trebuie să răspundă la cererile de tranzacție transmise de calculatorul gazdă. De exemplu, perifericele răspund la tranzacțiile de control care solicită informații detaliate despre dispozitiv și despre configurația acestuia. Perifericul transmite și recepționează date la/de la calculatorul gazdă utilizând un format standard USB. Perifericele USB 1.1 pot funcționa cu rate de transfer de 12 Mbiți/s sau 1,5 Mbiți/s.
3.3. Îmbunătățiri introduse de versiunea USB 2.0
Specificațiile USB 2.0 descriu o magistrală cu performanțe mai ridicate. Conectoarele și cablurile actuale, conforme cu specificațiile USB 1.1, permit obținerea ratelor de transfer mai ridicate ale magistralei USB 2.0 fără nici o modificare. Experimentele efectuate au arătat că se poate obține o rată de transfer de 480 Mbiți/s.
Perifericele USB 2.0 cu viteze de transfer superioare sunt conectate la un “hub” USB 2.0. Vitezele de transfer ridicate sunt negociate cu fiecare periferic, și dacă un periferic nu permite o viteză ridicată, legătura cu acest periferic va funcționa la viteza mai redusă de 12 Mbiți/s sau 1,5 Mbiți/s. Un “hub” USB 2.0 va avea porturi de ieșire pentru transferuri cu viteză ridicată și porturi pentru transferuri cu viteză redusă.
Rolul componentelor într-un sistem USB 2.0 este puțin modificat față de rolul acestora într-un sistem USB 1.1, după cum este prezentat mai jos.
Programele de sistem recunosc posibilitățile avansate ale perifericelor USB 2.0, astfel încât pot optimiza performanțele. Aceste programe pot detecta configurațiile sub-optimale, de exemplu un periferic USB 2.0 conectat la un “hub” USB 1.1, și vor recomanda utilizatorului o configurație optimă de conectare a perifericelor. Programele de aplicații existente vor continua să funcționeze cu perifericele USB 1.1. Noile programe de aplicații vor ține cont de avantajele vitezelor mai ridicate și de ușurința utilizării perifericelor USB 2.0.
Un “hub” USB 2.0 acceptă tranzacții de viteză ridicată și furnizează datele cu ratele corespunzătoare perifericelor USB 2.0 și perifericelor USB 1.1. Aceasta implică o complexitate mai ridicată a “hub”-urilor și necesitatea memorării temporare a datelor recepționate. Pentru comunicarea cu perifericele USB 1.1, un “hub” USB 2.0 modifică rata datelor în funcție de posibilitățile perifericelor.
Perifericele actuale nu necesită modificări pentru a funcționa într-un sistem USB 2.0. Multe dispozitive de intrare nu necesită performanțele superioare puse la dispoziție de USB 2.0. Ratele superioare de transfer permise de USB 2.0 vor deschide însă noi posibilități pentru alte tipuri de periferice: camere pentru video-conferințe, imprimante și scannere din generația viitoare, cu viteze și rezoluții mai ridicate, discuri CD-ROM și DVD. Aceste periferice necesită modificări minore ale interfeței, după cum se indică în specificațiile USB 2.0. Costurile suplimentare datorate acestor modificări vor fi minime.
3.4.Protocolul de comunicare USB.
USB folosește un protocol bazat pe pachete de date (Data Packet). Un pachet de date este o colecție de cadre de date (Data Frame). Numărul de biți dint-un cadru nu are o valoare fixă.
Majoritatea sistemelor folosesc cadre de 4 până la 8 biți de date. Biții sunt trimiși spre
magistrală astfel: primul bit este cel mai puțin semnificativ bit (LSB) din cadru, urmat de bitul
mai semnificativ până la trimiterea celui mai semnificativ (MSB) bit din cadrul respectiv.
Protocolul USB definește patru tipuri de pachete de date:
• pachet de semnalizare (Token Packet)-tranzacție azedl; device de identificare implicat în tranzacție; sunt mereu alimentate de gazdă ;
• pachet de date (Data Packet) este folosit pentru distribuții de date Payload;alimentate de gazdă și device ;
• pachet de dialog (Handshake Packet) –conștientizează reditecționarea de date lipsite de eroare alimentate de receiverul de date ;
• pachet special (Special Packet) – facilitează diferențialele de date alimentate de azed și de hub deviceuri .
Toate pachetele conțin la începutul lor un câmp de sincronizare, numit SYNC care permitebuclei PLL pentru refacerea tactului din receptor să se sincronizeze, și un câmp identificatorde pachet, numit PID (Packet Identifier).
SYNC este primul câmp din orice pachet USB. Câmpul de sincronizare este constituit dintr-o
serie de biți care produc un șir dens de tranziții utilizând schema de codificare NRZI cerută de
standardul USB. Câmpul apare ca o serie de trei tranziții 1/0 urmată de o marcă cu lățimea a
două impulsuri. Datele din câmp au succesiunea de valori 0000 0001. Câmpul PID urmează
câmpului SYNC într-un pachet USB și are lungimea de 8 biți. Primii patru biți indică tipul
pachetului, iar următorii patru sunt în ordine primii patru complementați (complement față de 1) și sunt folosiți ca biți de verificare pentru a confirma acuratețea primilor patru.
Orice transfer începe prin trimiterea de către gazdă a unui pachet de semnalizare. Un pachetare 32 de biți împărțiți în cinci câmpuri. Structura pachetului este reprezentată în figura 3.4.A.Informația propriu-zisă este transferată în sistemele USB sub forma unor pachete de date.
Structura acestui pachet este dată în figura 3.4.B. După câmpurile SYNC și PID urmeazăcâmpul de date care este compus dintr-un număr întreg de octeți, de la 0B la 1023B.
Corectitudinea câmpului de date este asigurată prin câmpul de verificare ciclică de 16b aflat la
sfârșitul pachetului.
Pachetele handshake sau de dialog sunt folosite pentru a raporta starea unui transfer de date,
pentru a indica recepția cu succes a datelor sau pentru a întoarce valori care indică acceptarea/
respingerea unei comenzi sau o stare de HALT la dispozitiv. Acest tip de pachet este compus
doar din două câmpuri; SYNC și PID. Structura este reprezentată în figura 3.4. C.
Câmpul PID definește trei categorii de pachete handshake:
• Pachetul handshake ACK indică emițătorului că pachetul de date a fost recepționat
fără erori;
• Pachetul handshake NAK indică faptul că o funcție nu a fost capabilă să recepționeze
date de la gazdă (într-o tranzacție OUT) sau că o funcție nu are date de transmis gazdei
(într-o tranzacție IN). O gazdă nu poate trimite niciodată NAK;
• Pachetul STALL este emis de o funcție ca răspuns la un pachet de semnalizare IN sau după o tranzacție de date OUT, indicând că funcția nu este capabilă să emită sau să
recepționeze date. Gazda nu poate răspunde cu pachet STALL.
Fig.3.4. Structura pachetelor USB
3.5 INTERFAȚA USB
Interfața USB (Universal Serial Bus) a fost proiectată cu scopul de a simplifica procedura de conectare a perifericelor la un PC, crescând viteza de transmisie prin intermediul unei comunicații de tip serial până la valori de 12 Mbit/s. Faptul că necesită o conectare mai facilă impune însă utilizarea unui protocol mai complex, pentru păstrarea eficienței și transparenței față de utilizator.
USB este deja recomandat pentru noua generație de PC-uri compatibile IBM de către PC’98 System Design Guide și este, deja inclus ca driver în sistemul de operare Windows 98.
Suportul hardware constă dintr-o conexiune pe patru conductoare, dintre care două sunt pentru alimentare (Vbus) respectiv masă (GND) iar celelalte două pentru transferul de date (D+ și D-). Prin intermediul USB se pot conecta simultanla un PC până la 126 de periferice cu avantajul suplimentar al reducerii costului și al spațiului alocat plăcii de bază a PC-ului (PCB) prin eliminarea necesității unui port suplimentar “tradițional” cum sunt cele ale tastaturii și/sau porturile seriale clasice. Bineînțeles că marele avantaj rezidă în costul scăzut al USB și în viteza (12 Mbit/s în așa-numitul “full-speed mode”) care permite transferul în timp real al semnalelor de voce sau video comprimat.
La sfârșitul anului 1999 a fost lansată oficial varianta USB2.0 care permite transferuri de până la 120, respectiv 240 Mbit/s. În cele ce urmează se prezintă protocolul USB 1.1, pe baza unui exemplu de implementare hardware: Infineon Technologies C541 embedded USB microcontroller.
3.6. Arhitectura USB .
Comunicația USB se compune din trei elemente principale – gazda (host), conectorii (hubs) și perifericele (devices). Conexiunea utilizează topologia “tiered-star” și poate fi structurată în nivele, deci poate avea până la 5 distribuitoare (hub tiers).
Doar o gazdă poate exista în sistem și comunicarea cu deviceurile este din perspectiva gazdei.O gazdă este un component ,,upstream” și device-ul este unul ,,downstream”
Figura 3.5. arată o astfel de reprezentare.Datele mutate de la gazdă presupun un transfer OUT și cele mutate spre gazdă sunt un transfer de tip IN.
Gazda, în special controllerul gazdă, controlează întregul trafic și comenzile la aparate. Sunt 3 tipuri de controlleri gazdă USB :
Interfața controller gazdă universal(UHCI), produs de Intel pentru USB 1.0 și USB 1.1. utilizarea acestei interfețe necesită o licență de la Intel.Acest controller suportă atât funcționarea la viteză redusă, cât și la mare viteză.UHCI permite câte o tranzacție pentru fiecare EP în fiecare cadru de aplicație (frame). Pachetele software ale echipamentelor USB trebuie să fie capabile să gestioneze comunicația cu fiecare dintre aceste tipuri de controller-e.
Interfața controller gazdă deschisă(OHCI) produsă pentru USB 1.0 și USB 1.1 de Compaq, Microsoft și National Semiconductor .Aceasta suportă conexiuni la viteză redusă și de mare viteză și tinde să fie mai eficientă decât UHCI fiind mai funcțională hardware.Din punct de vedere al aplicațiilor, OHCI poate gestiona multiple tranzacții pentru un anumit periferic End Point (EP) într-un interval de 1 ms.
Interfața controller gazdă extinsă (EHCI) produsă pentru USB 2.0.
EHCI este utilizat pentru tranzacțiile de mare viteză și autorizează operațiunile low-speed și full speed între controllerele OHCI și UHCI .
Figura 3.5.arată cum mai multe periferice pot fi conectate la o singură gazdă (host).
Fig.3.5. Conectarea mai multor periferice la o singură gazdă (host).
Unul sau mai multe aparate sunt atașate unei gazde (host).Fiecare device are o adresă și răspunde la comenzile gazdei.
Se așteaptă ca device-ul să aibă ceva funcționalitate și să nu fie pasive.Device-urile conțin un singur port upstream.Porturile sunt locurile fizice de conexiuneUSB de pe device .
Un hub este un aparat specializat ce permite comunicarea cu mai multe device-uri periferice .
Un device hub este transparent și se comportă ca o cale de transfer.De asemenea, se comportă ca un canal între gazdă și aparat.El are puncte de atașare adiționale ce permit conectarea mai multor aparate la o gazdă .
Fig.3.6. Conexiuni Hub
Cum am mai menționat, până la 127 de aparate pot fi conectate la gazdă prin hub-uri.Această limitare are la bază protocolul USB care limitează adresele de device la 7 biți.Adițional, maxim 5 hub-uri pot fi legate împreună, care sunt limitate din cauza constrângerilor de sincronizare din cauza întârzierilor de propagare pe cabluri și hub-uri .
Figura 3.7. arată o diagramă a sistemului de legare a USB și se poate vedea limitarea legăturilor hub-urilor și a device-urilor, ce determină un sistem pe 7 niveluri .
Fig.3.7.Conexiune USB pe niveluri .
O altă modalitate de a vedea interfața USB este a le diviza în straturi (layers) precum în figura 3.8. Bus Interface Layer asigură conexiunea fizică, semnalele electrice, și conectivitatea de pachete.Este layer-ul care este supravegheat de hardware într-un device .
Fig.3.8. Interfață USB abstractizare
În mod uzual, controller-ul gazdă (host controller) și hub-ul principal (de root) sunt implementate pe un același chip pe placa de bază a PC-ului. Controller-ul gazdă controlează transmisiile prin sistemul USB.
Un distribuitor principal acționează ca un port care se atașează echipamentului USB, permițând multiple conexiuni la sistemul USB și detectează momentele când echipamentele sunt conectate sau deconectate de la sistem. De asemenea, el transmite mai departe traficul pe bus între portul trece-sus (upstream) și porturile trece-jos adiacente (downstream).
Fiecare echipament dotat cu USB are alocate numere EP. Numărul EP0 este rezervat pentru configurarea echipamentelor de către gazdă. El asigură un punct de comunicație catre gazdă prin intermediul descriptorilor EP. Descriptorii EP comunică atributele echipamentelor și caracteristicile acestora gazdei. În conformitate cu aceste informații, gazda configurează echipamentul și-i alocă driver-ul software corespunzător (USB client software).
Celelalte EP pot fi considerate ca o funcție a echipamentelor și pot fi configurate separat pentru unul dintre tipurile de transfer pentru a comunica cu gazda. De exemplu, o aplicație de tastatură, care se clasifică în standardul USB “Human Interface Device”, HID, folosește EP0 pentru configurarea echipamentului (tastaturii) și poate folosi EP1 ca un transfer pe întreruperi pentru trimiterea datelor (key-scanned data) către gazdă.
Arhitectura USB distinge patru tipuri de bază de transferuri de date:
• transferuri de control (Control Transfers) – sunt folosite pentru configurare și comandă și obligatoriu trebuie să fie suportate de toate perifericele, execută comenzi de cereri de transfer de la gazdă către echipament;
• transferuri cu volum mare de date (Bulk Data Transfers) – permit dispozitivelor să
schimbe cantități mari de informație cu gazda pe măsură ce magistrala devine
disponibilă, (ex.: camere digitale, scannere sau imprimante);
• transferuri prin întreruperi (Interrupt Data Transfers) – a fost proiectat ca suport
pentru periferice de intrare controlate de om, (tastatură, mouse, joystick), care au
nevoie să comunice rar, cantități mici de date; datele transferate în acest mod sunt
caractere, coordonate sau semnalizări de evenimente organizate în unul sau mai mulți
octeți, permite transferul de date de la un interrupt driver device către gazdă;;
• transferuri izocrone (Isochronous Transfers) – asigură un acces garantat la magistrală, flux de date constant și tolerează erorile de transmisie; datele izocrone sunt continue și în timp real la toate nivelele: generare, emisie, recepție și utilizare la receptor; acest tip de transfer este folosit pentru fluxuri de transfer în timp real cum ar fi sistemele audio.
Fig.3.9.Structura generală a unei interfețe USB.
Capitolul IV. Implementarea Sistemului De Achiziție
În acest capitol se face referință la sistemul de achiziție propriu-zis, se urmărește și se explică functionarea schemei bloc și implicit cea electrică a montajului și prezintă metoda prin care fucționează softul de monitorizare al procesului .
Acest Sistem de achiziție poate efectua măsurarea datelor pe 2 canale, cu posibilitate de comunicare USB dar și cu posibilitatea de memorare locală a datelor și descărcarea ulterioară a acestora pe Pc pentru analiză .
Cele 2 canale pot fi comandate independent sau simultan. Fiecare canal poate face o conversie pe 12 biți cu semn .
Memoria serială poate memora până la 64.000 de conversii .
Viteza de realizare a conversiilor poate fi programată până la maxim 25.000 de conversii/secundă pentru un singur canal, sau 12.500 conversii/secundă pentru ambele canale, datele putând fi salvate în memorie .
Sistemul poate de asemenea să facă conversii și să transmită direct valorile prin comunicație USB, situație în care se pot face, programabil, până la aproximativ 5000 de conversii/secundă .
Sistemul poate fi de asemenea comandat atât prin intermediul comunicației USB, cât și prin standardul RS232, cu observația că în cazul comunicației RS232, viteza de achiziție și transfer adatelor este mult mai mică decât în cazul USB .
Sistemul de achiziție prezentat dispune de 2 canale analogice de intrare, având o posibilitate de memorare locală a datelor.
Comunicația cu calculatorul se realizează prin intermediul comunicației USB.
Totodată prin această comunicație USB se pot descărca și vizualiza datele măsurate pe PC.Analiza datelor este o altă caracteristică de care dispune acest sistem de achiziție.
Sistemul poate să măsoare diferența a 2 semnale, fiecare între 0 șo 4,1 Volți . Sistemul are inclus și un port în care poate fi introdus un conector pentru baterie externă, oferind posibilitatea de conectare a unei baterii pentru cazul în care se dorește păstrarea datelor în memorie .
Schema bloc a sistemului este prezentată în figura 4.1 :
Fig.4.1. Schema Bloc a sistemului de achiziție
4.1 Componente Hardware
Sistemul de achiziție este realizat cu următoarele componente :
două convertoare analog numerice de tip MCP3301 ;
doua placute de rami seriali de 128 ko
un microcontroller AT89C51RB2 ce funcționează pe 8 biți având inclusă o memorie flash de 16 k
4.1.1. Convertorul MCP3301
Descriere generală.
MCP3301 13-bit A/D este un convertor analog numeric care combină intrări complet diferențiale și consum redus de energie într-un pachet mic, ce este ideal pentru sistemele care sunt alimentate de baterii,sau aplicații de achiziție de date la distanță.
Convertorul analog numeric de 13 biți Încorporează o arhitectură de aproximări succesive, și are inclus circuit de eșantionare și memorare, cât și eșantionare simultană .
Interfața serială standard în industrie SPI permite ca acest convertor să poată fi adăugat la orice microcontroller PIC .
MCP3301 dispune de un design ce necesită curent scăzut, care permite operațiuni de standby tipic și activ la curenți de numai 50 nA respectiv 300 μA.
Dispozitivul este capabil de rate de conversie de până la 100 kbps cu specificațiile testate la o tensiune de alimentare cuprinsă între 4.5V și 5.5V .
Tensiunea de referință poate fi modificată de la 400 mV la 5V,îngăduind rezoluție de intrare menționată între 98 μV și 1,22 mV.
În figura 4.2. este prezentată schema bloc funcțională a acestui convertor.
Fig .4.2. Schema bloc funcțională
Aplicațiile în care poate fi folosit acest convertor sunt senzori de telecomenzi, sisteme alimentate cu baterii, interfețe de traductoare.
Convertorul MCP3301 este disponibil în versiuni cu 8 pini, 150 mil SOIC și pachete MSOP .
Intrările complet diferențiale ale acestui dispozitiv permit o gamă variată de semnale ce pot fi utilizate în aplicații cum ar fi achiziții de date la distanță, instrumente portabile, și aplicații care funcționează cu baterii.
MSOP, PDIP, SOIC
Fig.4.3. Tipuri de capsulă
Caracteristici
Convertorul MCP3301 are următoarele specificații :
Intrări complet diferențiale ;
±1 LSB max DNL ;
±1 LSB max INL (la versiunea MCP3301-B) ;
±2 LSB max INL (la versiunea MCP3301-C) ;
Single supply operation: 4.5V to 5.5V ;
100 ksps rată de eșantionare folosind o tensiune de alimentare de 5V ;
Curent de standby tipic de 50 nA , și 1 μA maxim ;
Curent maxim activ de 450 μA la 5V ;
Temperatura industrială la care poate fi folosit variază între -40°C și +85°C ;
pachete de 8 pini MSOP, PDIP, și SOIC
Descrierea conversiei .
Convertorul MCP3301 are o arhitectură SAR convențională. Cu această arhitectură potențialul dintre IN+și IN- sunt legate simultan și stocate în circuitele interne pentru rotații de 1,5 (tACQ).După timpul alocat, curentul de intrare ține deschis convertorul și aparatul produce un cod output de 13 biți .Acest proces de conversie este condus de un clock extern și trebuie să includă 13 cicluri de clock, unul pentru fiecare bit. În timpul procesului, bitul cel mai important (MSB) este primul output. Acest bit indică dacă IN+ sau IN-sunt la potențialul cel mai ridicat .
4.1.2. 23LCV1024
Descriere generală .
Acesta este un dispozitiv serial SRAM de 1 Mbit.
Memoria este accesată printr-o interfață serială periferică simplă (SPI) compatibilă cu magistrala serială .Semnalele de magistrală cerute sunt o intrare de clock(SCK) plus linii separate de date de intrare(SI) și ieșire (SO).
Accesul la dispozitiv este controlat printr-o intrare de chip select(CS).
În plus, dacă aplicația are nevoie de rate de transfer mai mari,este disponibil SDI(Serial Dual Interface, interfață serială duală).
Acest dispozitiv suportă de asemenea citiri și scrieri nelimitate în arialul de memorie,și permite realizarea unei copii de rezervă a datelor, prin intermediul unei baterii externe conectată la VBAT(pinul 7) .
Astfel că memoria RAM poate memora datele doar cu ajutorul unei baterii externe de 9 V .
Ram-ul serial 23LCV1024 este disponibil în capsule standard ce includ 8-lead SOIC, PDIP și TSSOP avansat.
Fig.4.4.Tipuri de capsulă
SOIC/TSSOP/PDIP
Funcționarea dispozitivului .
Principii de operare.
23LCV1024 este un RAM serial de 1 Mbit SRAM conceput să comunice direct cu portul interfeței SPI(Serial Peripheral Interface) al multor familii populare de microcontrollere de azi,incluzând microcontrollerele Microchip’s PIC.
De asemenea poate comunica și cu microcontrollere ce nu au un port SPI integrat,prin folosirea liniilor discrete de intrare/ieșire programate în mod corespunzător în firmware pentru a se potrivi protocolului SPI .
In completare, 23LCV1024 este de asemenea capabil să opereze în mod SDI (sau dual SPI).
Dispozitivul conține un registru de instrucțiuni de 8 Biți.
Aparatul este accesat prin pinul SI, cu date pontate la intrare pe nivelul de creștere al SCK.
Pin-ul CS trebuie ținut la nivel mic pentru întreaga operațiune.
Moduri de operare.
Ram-ul are 3 moduri de operare care sunt selectate prin setarea biților 7 și 6 din registrul MODE. Modurile de operare sunt Byte, Page și Burst.
Operațiunea Byte – e selectată când biții 7 și 6 din registrul Mode sunt setați la 00.În acest mod operațiile de citire/scriere sunt limitate la numai un Byte.Comanda urmată de o adresăde 24 Biți este stocată în aparat și datele de la/spre aparat sunt transferate la următoarele 8 clock-uri.
Operațiunea Page – este selectată când biții 7 și 6 din registrul Mode sunt setate la 10.
RAM-ul are 4096 pagini de 32 biți. În acest mod ,operațiile de citire/scriere sunt limitate în pagina de adresare(adresa este produsă intern în mod automat).Dacă datele ce trebuie citite sau scrise ajung la marginea paginii, contorul de adrese va trece la începutul paginii.
Operațiunea secvențială – este selectată când biții 7 și 6 din registrul MODE sunt setați la 01.Operațiunea secvențială permite întregului areal să fie citit sau scris.
Contorul de adrese intern este mărit automat și limitele de pagină sunt ignorate.Când contorul de adrese intern ajunge la sfârșitul arealului, contorul de adrese se va roti la 0x00000
4.1.3. Microcontrollerul AT89C51RB2
Microcontrollerul AT89C51RB2/RC2 este o versiune flash de mare performanță a microcontrollerului 80C51 pe 8 biți.Acesta conține o memorie bloc de 16 sau 32 kbiți, utilizată pentru programe și date.
Memoria flash poate fi programată fie în mod paralel fie în serie cu capacitatea ISP sau cu ajutorul software-ului.Tensiunea programată este generată intern de la pin-ul standard VCC.
Microcontrollerul AT98C51RB2/RC2 păstrează toate caracteristicile Microcontrollerului 80 C52,cu 256 biți de memorie ROM internă ,un controller de întrerupere cu 9 surse și 4 nivele
și 3 timere .
În figura 4.5 este prezentat acest Microcontroller.
Fig.4.5. Microcontrollerul AT89C51RB2/RC2
În plus, AT89C51RB2/RC2 are un numarator programabil , un XRAM de
1024 Biți, un timer hardware de tip Watchdog, o interfață tip tastatură, o interfață SPI, un canal serial mai versatil care facilitează comunicația multiprocesor (EUART), și un mecanism de îmbunătățire a vitezei (X2 mode).
Configurația pinilor este la fel ca standardul de 40/44 pini a lui C52.
Designul complet static reduce consumul de energie al sistemului cu AT89C51RB2/RC2, permițându-i să aducă frecvența de ceas până la orice valoare, chiar și DC, fără pierderi de date.
AT89C51RB2/RC2 are 2 moduri software selectabile de activitate redusă și un clock prescaler de 8-biți pentru o mai mare reducere a consumului de energie.
În modul Repaus (idle), procesorul este înghețat în timp ce perifericele și sistemul de întreruperi sunt încă funcționale.
La modul de oprire, power down, memoria RAM este salvată și toate celelalte funcții sunt neoperantive.
Caracteristicile adăugate ale microcontroller-ului AT89C51RB2/RC2 îl fac mai puternic pentru aplicații care necesită Modulația în Durată a Impulsurilor (PWM), intrări-ieșiri de mare viteză, și capacități de contorizare precum alarme, control al motorului, telefoane cu fir, și cititoare de carduri inteligente.
În figura 4.6 este prezentată schema bloc a microcontrollerului .
Fig.4.6.Diagrama Bloc
Note : 1. Alternate function of Port 1.
2. Alternate function of Port 3.
4.1.4. Modulul USB UMFT240XA
UMFT240XA este un modul de dezvoltare pentru FTDI240XQ, unul dintre aparatele de tip FTDI cu USB pentru aparate cu circuit integrat de interfață în serie .
Acesta are intrare microUSB pentru a permite dimensiuni cât mai mici ale modulului .
FT240X este o interfață USB la 245 FIFO cu o funcție de încărcare a bateriei, care permite bateriilor să fie încărcate cu un curent mai mare de la un port de încărcare dedicat.
Ca o completare, bitul asincron și cel sincron de pe modul interfață sunt disponibile .
Clock-ul generat intern (6MHz, 12MHz, 24MHz și 48MHz) poate fi scos printr-un conector BUS folosit pentru a dirija microprocesorul sau logica externă.
UMFT240XA este un modul care este proiectat pentru a intra într-un socket standard de 24 pini ,de tip DIP.
Toate componentele folosite ,inclusiv FT240XQ nu conțin substanțe periculoase, conform restricției de substanțe periculoase.
În figura 4.7. este prezentat modulul USB UMFT240XA.
Fig. 4.7. modulul USB UMFT240XA.
Trăsături .
UMFT240XA este echipat cu un FT40XQ, toate trăsăturile lui FT240X pot fi utilizate cu UMFT240X.
În plus, UMFT240XA are următoarele trăsături :
Modulul de asamblare PCB proiectat să se potrivească unui socket DIP standard cu 24 de pini.
Socket mini-B integrat pe placă ce permite conexiunea modulului la un PC printr-un cablu standard A-mini-B.
Socket DIP 24 de pini inclus in pachetul modulului.
Configurabil funcțional folosind link-uri de lipire. Configurarea link-uri implicit de lipire permite modulului să funcționeze fără fire periferice sau plăci de aplicație.
Alte configurații permit opțiuni externe de alimentare și variația nivelurilor de referință logică.
4.1.5. Microcontroller-ul FT240X
ModululUSB UMFT240XA folosit în sistemul de achiziție proiectat este echipat cu un microcontroller de tip FT240X.
FT240X este o interfață USB la paralel FIFO cu următoarele caracteristici avansate :
interfață de transfer de date bidirecțională într-un singur chip USB -paralel FIFO.
întregul protocol USB e manipulat pe chip, ceea ce înseamnă că nu necesită programare firmware specifică USB .
memorie multi-time-programmable ( MTP) de 2048 biți complet integrată ce stochează descriptorii dispozitivului și configurația FIFO IN/OUT.
Generare de clock complet integrată ce nu necesită cristal extern, plus selecție ieșire de clock opțională ce permite o interfață glue-less către MCU sau FPGA extern .
Rate de transfer de date cu viteze de până la 1Mbite/sec
Buffer primit de 512 biți, buffer transmis de 512 biți utilizând tehnologia de buffer smoothing pentru a permite transfer de date de mare viteză .
Driverele virtuale FTDI royalty-free Virtual Com Port (VCP) și Direct (D2XX)elimină, în cele mai multe cazuri cerința pentru dezvoltare driver USB.
Permite configurarea pinilor I / O ai interfeței FIFO.
Are oppțiuni de interfață bitbang sincrone și asincrone.
Detectarea încărcării bateriei prin USB. Permite dispozitivelor periferice USB să detecteze prezența unei surse de putere mai mare, pentru a permite încărcarea îmbunătățită.
Dispozitiv livrat pre-programat cu număr de serie unic USB.
Configurații de alimentare USB;
Convertor de nivel +3.3V integrat pt I/O USB
Circuit integrat de putere-pe-reset.
FT240X poate fi utilizat în următoarele aplicații tipice :
Utilizarea USB pentru a adăuga sistem de modularitate
Încorporarea interfețelor USB pentru a permite transferurile PC pentru dezvoltarea sistemelor de comunicare.
Cabluri și interfețe de transfer de date prin USB celular și Telefon fără fir
Transfer de date USB audio și Low Bandwidth Video
Cititoare de carduri USB
Control industrial USB
Interfețe USB pentru Mp3 playere
Scriitoare și cititoare USB flash card
Interfață Aparat foto digital ce utilizează USB
Soft și hardware de criptare Dongles
Instrumentație USB
Implementări dongle USB pentru Software / Hardware Encryption și module wireless
Oferă detecție de porturi de încărcare dedicate pentru încărcarea bateriilor în dispozitive portabile.
Descriere funcțională
FT240X este un dispozitiv interfață FIFO USB la paralel care simplifică implementările USB și reduce numărul componentelor externe prin integrarea deplină în dispozitivul de memorie MTP și un circuit integrat de ceas care nu necesită cristal extern. Acesta a fost proiectat pentru a funcționa în mod eficient cu controlere gazdă USB, prin utilizarea cât mai puțin posibil, a lățimii de bandă, în comparație cu lățimea de bandă USB totală disponibilă.
Caracteristici cheie
Cea mai importantă calitate este Integrarea funcțională.în plus,acesta are Memorie integrată complet MTP, generare de clock, de filtrare AVCC, power-on-reset (POR) și regulator LDO.
Opțiuni Pin configurabil CBUS I / O. Memoria MTP complet integrată permite configurarea funcționalității de control Bus (CBUS) și selecție de putere a driverului. Există două opțiuni configurabile CBUS I / O.
Liniile CBUS pot fi configurate cu oricare dintre aceste opțiuni de ieșire prin setarea biților în memoria internă MTP. Dispozitivul este livrat cu definițiile pinilor cei mai frecvent utilizați pre-programați .
Bit asincron Mode Bang. În modul bit-bang asincron, cele opt linii FIFO poate fi schimbat de la modul de interfață regulat la un scop general de 8-bit de port I / O. Pachete de date pot fi trimise la dispozitiv și vor fi trimise succesiv la interfața la o rată controlată de un timer intern (echivalentă cu rata de transfer de pre-scaler.
Bit sincron Mod Bang.FT240X acceptă modul bit bang sincron. Acest mod este diferit de modul bit bang asincron în care pinii de interfață sunt citite doar atunci când aparatul este scris. Acest lucru face mai ușor pentru programul de control pentru a măsura răspunsul la un stimul ieșire ca datele returnate este sincronă a datelor rezultate.
Opțiunea High Output Drive . Interfața FIFO paralel și cele patru FIFO pinii de strângere de mână se poate face pentru a alunga la de trei ori nivelul unitate de semnal standard, permițând astfel mai multe dispozitive pentru a fi condus, sau dispozitive care necesită o mai mare forță de acționare a semnalului pentru a fi conectata la FT240X. Această opțiune este configurat în memoria internă MTP.
FIFO RX Buffer Timeout programabil . FIFO RX buffer timeout este folosit pentru a alunga(to flush traducere..) datele rămase din buffer-ul primit. Implicit acest timeout este setat la 16 ms, dar este programabil prin USB în 1ms trepte, de la 2 ms la 255ms, permițând astfel ca dispozitivul să fie optimizat pentru protocoale care necesită un timp de răspuns rapid de pachete de date scurte.
Funcția de trezire. Dacă USB este în modul suspendat, și trezirea la distanță a fost activată în memoria internă MTP (este activată în mod implicit). Strobing (traducere) SIWU # pini minima pentru un minim de 20ms va determina FT240X de a solicita un CV de suspendare pe magistrala USB. În mod normal, acest lucru poate fi folosit pentru a trezi PC-ul gazdă de la suspendare.
Sursa de alimentare și consumul de energie. FT240X este capabilă să funcționeze la o sursă de tensiune între 3.3 V și 5.25 V, cu un mod de Curent nominal de 8mA și un USB nominal suspenda modul curent de 125μA. Acest lucru permite o mai mare marjă modele de periferice pentru a satisface USB suspenda limita de curent în modul de 2.5mA. Un convertor de nivel integrat permite în FT240X de interfață la logica rulează la 1.8 V la 3.3 V (5V tolerant).
Cu ajutorul acestui microcontroller putem realiza funcții cum ar fi :
Funcții prin care se citesc parametrii USB.
Exemplu :
FT_SetVIDPID -O comandă pentru a include un VID personalizat și combinație PID în tabelul listă al dispozitivului intern. Acest lucru va permite driverului să încarce pentru VID specificat și combinația PID.
FT_GetVIDPID – o comandă pentru a prelua VID curent și combinația PID din cadrul tabelului listă al dispozitivului intern.
Funcții ce permit crearea unei liste cu dispozitivele conectate și inițializarea și închiderea acestora .
Exemplu :
FT_ListDevices – Obține informații cu privire la dispozitivele conectate în prezent. Această funcție poate returna informații, cum ar fi numărul de dispozitive conectate, dispozitivul de numărul de serie și descrierea dispozitiv siruri de caractere, și ID-urile de localizare a dispozitivelor conectate.
FT_Open – Deschide dispozitivului și returnează un pretext care va fi folosit pentru accesări ulterioare.
FT_Close – Închide un dispozitiv deschis.
Funcții ce permit scrierea și citirea datelor utilizând comunicația USB .
Exemplu :
FT_Read – Citește date de la Dispozitiv
FT_Write – Scrie date aparatului .
Funcții pentru comunicația cu memoria EEprom internă a circuitului pentru comunicație USB .
Dispozitivele FTDI EEPROM pot fi atât cititeși programate folosind funcțiile enumerate în această secțiune.
Exemplu :
FT_ReadEE – Citește o valoare dintr-o locație EEPROM.
FT_WriteEE- Scrie o valoare într-o locație EEPROM.
FT_EraseEE – Șterge dispozitiveleEEPROM.
FT_EE_Read – funcția se folosește pnetru a citi conținutul EEPROM.
În Figura 4.8 este prezentată Diagrama Bloc a FT240X .
Fig. 4.8. Diagrama Bloc a FT240X
Fig.4.9. Interfața de legătură a USB cu Microcontrollerul FIFO
Configurații de alimentare USB :
Următoarele secțiuni ilustrează configurații posibile de alimentare USB pentru FT240X.
Configurație USB cu alimentare din portul USB .
Fig. 4.10. Configurație USB cu alimentare din portul USB .
Figura (4.10) ilustrează FT240X într-o configurație tipică de design alimentată de magistrala USB. Un dispozitiv USB este alimentat, își ia puterea de la magistrala USB. Reguli de bază pentru dispozitive alimentate de bus-ulUSB sunt după cum urmează :
i) Pe plug-in pentru USB, dispozitivul ar trebui să nu folosească mai mult curent decât 100mA.
ii) În USB modul Suspend dispozitivul ar trebui să nu depășească 2.5mA.
iii) Un dispozitiv alimentat USB de mare putere (una care atrage mai mult de 100mA), ar trebui să utilizeze PWREN # pentru a menține curentul mai jos de 100mA pe plug-in și 2.5mA pe USB suspendat.
iv) Un dispozitiv care consumă mai mult de 100 mA nu poate fi conectat într-un hub alimentat USB.
v) Niciun dispozitiv nu poate trage un curent mai mare de 500mA de la magistrala USB.
Descriptorii de putere în memoria internă a MTP FT240X trebuie programați pentru a se potrivi curentului tras de aparat .
Configurație cu alimentare proprie
Fig. 4.11.Configurație USB Realizată cu alimentare proprie .
Figura 4.11 ilustrează FT240X într-o configurație tipică cu alimentare USB. Un dispozitiv cu alimentare proprie își ia puterea de la sursa ei de energie, VCC, și nu trage curent de la magistrala USB.
Reguli de bază pentru dispozitive cu alimentare proprie sunt după cum urmează :
i) Un dispozitiv cu alimentare nu trebuie să forțeze curent pe magistrala USB atunci când gazda USB sau hub controler este alimentat în jos.
ii) Un dispozitiv auto-alimentat poate folosi la fel de mult curent cât are nevoie în timpul funcționării normale și USB suspendat, deoarece are propria sursă de alimentare.
iii) Un dispozitiv cu alimentare proprie poate fi folosit cu orice gazdă USB, un bus alimentat hub USB sau un auto hub alimentat USB.
Descriptorul putere în memoria internă a FT240X ar fi programat la o valoare de
zero (cu alimentare proprie).
Configurație USB Realizată cu comanda alimentării .
Figura 4.12. Magistrală Realizată cu comanda alimentării .
O cerință de aplicații de magistrală alimentată USB, este atunci când în modul USB suspendat, aplicația extrage un curent total de mai puțin de 2.5mA.
Această cerință include logică externă. Unele circuite de logică externă au capacitatea de a intra într-o stare de curent redus prin monitorizarea semnalului PWREN #.
Pentru logica extern că nu se poate alimenta în acest fel, FT240X oferă o metodă simplă, dar eficientă de a transforma
Pentru logica externă ce nu se poate alimenta în acest fel, FT240X oferă o metodă simplă, dar eficientă de a opri alimentarea cu energie în timpul modului USB de suspendare.
Figura 4.12 prezintă un exemplu de utilizare a unui MOSFET discret cu canal P Channel pentru a controla puterea de a extern logică. Un dispozitiv adecvat pentru a face acest lucru este un International Rectifier (www.irf.com) IRLML6402, sau echivalent. Ea Se recomandă ca un circuit de "start moale" constă dintr-o serie rezistor 1kΩ și un condensator 0.1μF este utilizat pentru a limita creșterea curentului, atunci când se transformă pe MOSFET. Fără circuitul de start moale, este posibil ca supratensiunea tranzitorie, a provocat atunci când MOSFET pornește, se va reseta FT240X sau USB host / hub controler. Circuitul de pornire prezentat în Figura 6.4 puteri cu un slew rate de approximativ 12.5V/ms. Astfel, tensiunea de alimentare a tranzițiilor logice externe de la GND la +5 V în aproximativ 400 de microsecunde.
Ca o alternativă la MOSFET, un comutator de alimentare dedicat IC cu inbuilt "soft-start", poate fi utilizat. Acomutatorul de alimentare potrivit IC pentru o astfel de cerere este MICREL (www.micrel.com) MIC2025-2BM sau echivalent.
În figura 4.13 este prezentată Schema electrică Implementată a sistemului proiectat,care arată în felul următor :
Fig.4.13.Schema electrică implementată
În figura 4.14. este prezentat modulul de alimentare al sistemului (fig.4.14) și cablajul imprimat al sistemului (fig.4.15).
Fig.4.14.Alimentarea sistemului .
Fig. 4.15.Cablajul sistemului de achiziție
Fig.4.16. Poze Sistem De Achiziție față/verso
4.2. Aplicația Software.
Aplicația software este realizată în mediul de dezvoltare Labwindows/ CVI. Labwindows/ CVI este o platformă pentru dezvoltare de software cu orientare spre aplicații de instrumentație. Denumirea de CVI înseamnă C for Virtual Instrumentation.
Acest mediu de dezvoltare folosește limbajul ANSI C, cu extensiile caracteristice.
CVI ne pune la dispoziție un mediu interactiv de dezvoltare a aplicațiilor pentru sistemul de operare Windows. LabWindows îmbină avantajele programării de tip vizual cu avantajele flexibilității și simplității limbajului C . [14]
NI LabWINDOWS/CVI este un mediu puternic de programare pentru dezvoltarea aplicațiilor specifice de măsurare. El include un set de biblioteci care pot fi rulate pentru controlul instrumentelor, achiziția de date, analiza lor și interfața cu utilizatorul. Conține de asemenea o serie de caracteristici care permit dezvoltarea aplicațiilor de măsurare mult mai simplu decât dezvoltarea în mediile C tradiționale.
Cu caracteristicile sale de dezvoltare, incluzând proiectarea interfeței cu utilizatorul cu mecanismul drag-and-drop, crearea interactivă și testarea codurilor și asistenții de creare a driverelor instrumentelor, LabWINDOWS/CVI simplifică activitatea de generare a aplicațiilor de măsurare în C.
Introdus prima dată în 1988, LabWINDOWS/CVI s -a dovedit un mediu solid de dezvoltare care a urmărit evoluția sistemelor de operare și a tehnologiilor de calcul. LabWINDOWS/CVI poate integra o mare varietate de echipamente de intrare/ieșire (I/O). [36]
Deși a fost creat special pentru aplicații de instrumentație și control, multiplele lui facilități îl fac capabil să suporte și dezvoltarea unor aplicații de mărime medie care să fie de altă factură . Fiecare funcție de bibliotecă din cadrul acestui mediu are o interfață specializată numită panoul funcției (function panel) ce permite ajutor on-line ,selectare și declarare de variabile sau constante necesare.De asemenea permite o execuție interactivă,cât și inserarea funcției editate într-un text sursă .
Mediul este deosebit de flexibil, permițând interfațarea bidirecțională cu alte compilatoare de C sau C++. Totodată se pot folosi și DLL-uri.
Puterea mediului Labwindows/ CVI este dată de bibliotecile puse la dispoziția programatorului, acestea conținând funcții pentru implementarea diferitelor faze care conduc la o aplicație din domeniul achiziției de date sau a controlului automat. [14]
Prin intermediul software-ului sistemului de achiziție se pot realiza funcții importante, de exemplu gestionarea datelor primite de la placa de achiziție, afișarea graficelor pe display-ul PC-ului, precum și prelucrări ale acestor date .
Driver-ul este un program, o altă componentă importantă a părții software, care însoțește întotdeauna fiecare placă de achiziție, și fără de care nu s-ar putea realiza conexiunea cu PC-ul. Driver-ul controleazǎ legǎtura intre calculator și un instrument programabil (imprimantă,cameră video ș.a).
În achiziția datelor, driverul are următoarele funcții:
a) intrarea/ieșirea datelor și controlul frecvenței la care se realizează acestea;
b) realizarea legăturii intre resursele hard ale plăcii de achiziție și ale calculatorului (memorie, intreruperi, DMA – direct memory access), respectiv cu alte plăci sau cu sistemul de condiționare a semnalului.
Prin intermediul driver-ului se integrează achiziția cu resursele PC-ului(Întreruperi, DMA, memorie). Driver-ul citește/scrie date de la placă, permite accesul la multiple ieșiri-intrări pe placă, permite de asemenea accesul la mai multe plăci de achiziție,
INTERFAȚA GRAFICĂ.
Sistemul de achiziție are următoarea interfață grafică :
În figura 4.17 este prezentată interfața grafică a softului sistemului de achiziție .
Fig.4.17. Interfața grafică a sistemului de achiziție .
Acesta este un sistem de achiziție cu ajutorul căruia putem măsura date primite atât prin comunicație USB cât și printr-o comunicație serială RS232.
4.2.1. Meniuri
În fereastra aplicației sunt disponibile următoarele meniuri din bara sistemului :
,,File”
Meniul ,,File” este un meniu obișnuit la majoritatea aplicațiilor . Acesta deschide submeniurile disponibile,după cum este arătat în figura 4.18.
Butonul Open ne permite deschiderea unnui fișier canal de tip,, .Ch”.
Opțiunea Save permite salvarea modificărilor și măsurărilor făcute cu ajutorul sistemului .
Save zoom permite salvarea unui grafic mărit sau micșorat cu ajutorul butoanelor de zoom. Butonul Close închide fișierul current, iar Exit este butonul ce închide aplicația.
Fig. 4.18. Meniul File
,,Setting”
Cu ajutorul acestui buton putem alege setările comunicației sistemului, fie RS232, fie USB.
În figura 4.19 sunt prezentate submeniurile ce apar din meniul setting.
Fig 4.19. meniul setting
Submeniul USB SET deschide o interfață minimală de identificare a modulelor USB inclusiv a celor de tipul UMFT, cum este cel utilizat în realizarea sistemului de achiziție.
Această interfață de identificare modul este prezentată în figura următoare, ea permite afișarea tuturor dispozitivelor de tip FTDI precum și numărul acestora . Odată ce dispozitivul este selectat din listă, apar date privind identificatorii specifici acestuia, id_device, locație_id, tip,cod serial,și alte informații utile.
Fig.4.20. Fereastra Identificare Modul .
,,Acq_to_RAM”
Acest meniu permite selecția canalelor de memorare a datelor în memoria RAM, putând alege din submeniurile USB_cmd respectiv RS232_CMD, fie primul canalul de achiziție, fie cel de-al doilea, sau ambele. ,,Acq_to_RAM“ face achiziția datelor doar cu salvare în memorie .
În figura 4.21 este prezentat acest meniu, cu submeniurile aferente.
Fig.4.21. Meniul Acq_to_RAM
,,Acq_to_Plot”- conține aceleași submeniuri ca și ,,Acq_to_RAM”
Această opțiune permite achiziția și plotarea directă pe acran fără a memora datele în memorie .
,,Acq_Single”– acest meniu permite efectuarea unei singure conversii în funcție de submeniul ales (Canalul 1, canalul doi sau ambele) ce este afișată pe monitorul calculatorului într-o casetă special destinată (CH single din colțul din dreapta)
Fig.4.22 Meniul Acq_Single
“Download”
Acest buton permite salvarea datelor în calculator . În meniul download sunt disponibile submeniurile USB_Cmd și RS232_CMD, ce permit selectarea comenzilor de la care se face download-ul .
Acestea la rândul lor conțin alte submeniuri, așa cum este prezentat în figura 4.23 :
Fig.4.23. Meniul Download
Submeniurile de download permit selectarea canalului de pe care se face descărcarea datelor .
,,Help” este un buton ce deschide o fereastră în care primim informații despre sistemul de achiziție implementat .
4.2.2. Butoane de configurare .
Pe lângă meniurile aferente interfeței, în fereastra softului avem disponibile și o serie de butoane care ne ajută în măsurările semnalelor primite de sistemul de achiziție și afișate în interfață.
„Delay” este un potențiometru care ne ajută să reglăm viteza de conversie între 2 eșantioane rezultând automat rata/ viteza de achiziție .
Interfața mai conține și două butoane cu ajutorul cărora putem face zoom pe o porțiune de grafic, dacă ne interesează o zonă anume.
Potențiometrul „Nr_sec/Graf ” face selecția numărului de secunde la care se face reîmprospătarea graficului .
Butoanele ,,Plot_Ch1” și „Plot_Ch2” permit selectarea canalului ce urmează a fi afișat . Acestea au două stări : On și Off ,adică activate sau dezactivate .
În interfața softului mai avem un cursor cu ajutorul căruia avem posibilitatea de a afișa graficul cu încă 2 ecrane în urmă care ulterior pot fi salvate în vederea analizei .
Pe fereastra graficului apar două cursoare ajutătoare ,unul marcat cu o linie albastră și celălalt cu una verde, care stabilesc bucata de grafic pe care urmează a fi făcut zoom .
Prin apăsarea butonului de zoom se afișează pe întreg graficul zona mărită .
,,CS_1” și „CS_2” indică poziția cursorului, atât pentru afișat cât și pentru setat .
Săgețile roșii alăturate butoanelor de zoom permit deplasarea pe ecran a zonei vizibile din grafic .
,,Autoscale” este un buton care face exact același lucru ca și denumirea, și anume permite autoscalarea ecranului de afișare .
Butonul „STOP” permite oprirea conversiei și afișării pe grafic .
În figura ….. este prezentat în ecran un grafic test al sistemului, ce afișează răspunsul primit de la potențiometru .
Fig.4.24. afișare grafic semnal primit de la potențiometru .
În figura 4.265 se prezintă o zonă din același grafic folosind funcția zoom și autoscalare .
Fig4..25 zoom porțiune grafic .
Cu ambele canale activate sistemul poate face pana la 462 de conversii pe minut .
Bibliografie:
[1]. http://www.utgjiu.ro/revista/ing/pdf/2010-01/7_FLORIN_GROFU.pdf
[2]. Costin Ștefănescu, Nicolae Cupcea, Electronică aplicată -Sisteme inteligente hardware-software De măsurare și control, BUCUREȘTI 2000
[3]. **Park,J., Mackay, S., Practical Data Acquisition for Instrumentation and Control Systems, Elsivier, Amsterdam, 2003, ISBN 0750657960
[4]. http://users.utcluj.ro/~baruch/papers/Standarde-Periferice.pdf accesat 14 martie 2014
[5]. Mircea Dabacan, Sisteme de Conversie si Achizitie de Date, 2001, Editura
Casa Cartii de Stiinta Cluj-Napoca, 2001
[6]. V. Naghi – Achiziția de date. In: Revista PC Report nr. 41, februarie/1996
[7]. http://www.tc.etc.upt.ro/teaching/cd/CD-8.pdf accesat 5 martie 2014
[8]. http://vega.unitbv.ro/~ogrutan/Microcontrollere2011/3-usb-ieee1394.pdf accesat 5 martie 2014
[9]. Notițe curs Conducerea Proceselor Energetice, Popescu Marian
[10]. http://andrei.clubcisco.ro/cursuri/2ad/Curs_AD_Electronica_aplicata.pdf
[11]. http://biblioteca.regielive.ro/download-64814.html accesat 16 martie 2014)
[12]. http://andrei.clubcisco.ro/cursuri/f/f-sym/2ad/02.pdf
[13]. Gacsádi Alexandru, Tiponuț Virgil -SISTEME DE ACHIZIȚII DE DATE, Oradea
Editura Universității din Oradea, 2005 , ISBN 973-613-868-2
[14]. http://www.saccs.tuiasi.ro/ro/academice/curricula/programe/ingineri/LabII/Lab01.pdf
[15]. http://mec.upt.ro/dolga/DAQ_1_2013.pdf , accesat 28 martie 2014
[16]. St. Gârlașu ș.a. – Electronică și automatizări industriale, Editura Didactică și Pedagogică, București 1982
[17]. http://www.omega.com/prodinfo/dataacquisition.html (19 martie 2014, 12:23:15)
[18]. L. Toma, “Sisteme de achiziție și prelucrarea numerică a semnalelor”, Editura de Vest, Timișoara, 1996.
[19]. http://www.ni.com/data-acquisition/what-is/ …21 martie 2014, 12:25:30
[20]. http://www.ueidaq.com/downloadable/intro-to-daq-4-13.pdf accesat 30 martie 2014:
[21]. http://biblioteca.regielive.ro/download-39411.zip
[22]. http://en.wikipedia.org/wiki/Data_acquisition
[23]. http://ecee.colorado.edu/~mcclurel/atmel_at89c51rc2_datasheet_doc4180.pdf
[24]. M. Antoniu – Măsurări electrice și electronice, vol.1- Editura Satya 2001
[25]. M. Antoniu – Măsurări electrice și electonice, vol.2 – Editura Satya 2001
[26]. Fl. Tărăboanță – Echipamente pentru prelucrarea și comunicarea datelor.Editura Astel Design Iași 2000
[27]. R. White. – Cum funcționează calculatoarele. Editura B.I.C. ALL, București 2002
[28]. * * * – Evoluția tehnologiei. Editura Aquila’93, Oradea 2001
[29]. S.A. Boyer, SCADA: Supervisory Control and Data Aqiusition, 3rd Edition, ISA, USA, ISBN:1-55617-660-0, 2004.
[30]. E. Nicolau ș.a. – Manualul inginerului electronist. Editura Tehnică, București 1979
[31]. * * – www. howstuffworks.com
[32]. http://www.referat.ro/laboratoare/Sistem_achizitii_de_date_4682e.html
[33]. G. Ionescu, V. Ionescu, Automatica de la A la Z, Editura Stiintifica si
Enciclopedica, Bucuresti, 1987.
[34]. Mircea Alexandru Dabacan – Bazele sistemelor de achizitie de date, Editura
Casa Cartii de Stiinta Cluj-Napoca, 2004
[35]. Sampaleanu M. – Circuite pentru conversia datelor, Editura Tehnica,
Bucuresti, 1980
[36].http://www.energ.pub.ro/fisiere/master/Subiecte%202012/Carti/Metodologia%20de%20achizitie%20si%20prelucrare%20date.pdf
[37]. http://ro.wikipedia.org/wiki/USB
Bibliografie:
[1]. http://www.utgjiu.ro/revista/ing/pdf/2010-01/7_FLORIN_GROFU.pdf
[2]. Costin Ștefănescu, Nicolae Cupcea, Electronică aplicată -Sisteme inteligente hardware-software De măsurare și control, BUCUREȘTI 2000
[3]. **Park,J., Mackay, S., Practical Data Acquisition for Instrumentation and Control Systems, Elsivier, Amsterdam, 2003, ISBN 0750657960
[4]. http://users.utcluj.ro/~baruch/papers/Standarde-Periferice.pdf accesat 14 martie 2014
[5]. Mircea Dabacan, Sisteme de Conversie si Achizitie de Date, 2001, Editura
Casa Cartii de Stiinta Cluj-Napoca, 2001
[6]. V. Naghi – Achiziția de date. In: Revista PC Report nr. 41, februarie/1996
[7]. http://www.tc.etc.upt.ro/teaching/cd/CD-8.pdf accesat 5 martie 2014
[8]. http://vega.unitbv.ro/~ogrutan/Microcontrollere2011/3-usb-ieee1394.pdf accesat 5 martie 2014
[9]. Notițe curs Conducerea Proceselor Energetice, Popescu Marian
[10]. http://andrei.clubcisco.ro/cursuri/2ad/Curs_AD_Electronica_aplicata.pdf
[11]. http://biblioteca.regielive.ro/download-64814.html accesat 16 martie 2014)
[12]. http://andrei.clubcisco.ro/cursuri/f/f-sym/2ad/02.pdf
[13]. Gacsádi Alexandru, Tiponuț Virgil -SISTEME DE ACHIZIȚII DE DATE, Oradea
Editura Universității din Oradea, 2005 , ISBN 973-613-868-2
[14]. http://www.saccs.tuiasi.ro/ro/academice/curricula/programe/ingineri/LabII/Lab01.pdf
[15]. http://mec.upt.ro/dolga/DAQ_1_2013.pdf , accesat 28 martie 2014
[16]. St. Gârlașu ș.a. – Electronică și automatizări industriale, Editura Didactică și Pedagogică, București 1982
[17]. http://www.omega.com/prodinfo/dataacquisition.html (19 martie 2014, 12:23:15)
[18]. L. Toma, “Sisteme de achiziție și prelucrarea numerică a semnalelor”, Editura de Vest, Timișoara, 1996.
[19]. http://www.ni.com/data-acquisition/what-is/ …21 martie 2014, 12:25:30
[20]. http://www.ueidaq.com/downloadable/intro-to-daq-4-13.pdf accesat 30 martie 2014:
[21]. http://biblioteca.regielive.ro/download-39411.zip
[22]. http://en.wikipedia.org/wiki/Data_acquisition
[23]. http://ecee.colorado.edu/~mcclurel/atmel_at89c51rc2_datasheet_doc4180.pdf
[24]. M. Antoniu – Măsurări electrice și electronice, vol.1- Editura Satya 2001
[25]. M. Antoniu – Măsurări electrice și electonice, vol.2 – Editura Satya 2001
[26]. Fl. Tărăboanță – Echipamente pentru prelucrarea și comunicarea datelor.Editura Astel Design Iași 2000
[27]. R. White. – Cum funcționează calculatoarele. Editura B.I.C. ALL, București 2002
[28]. * * * – Evoluția tehnologiei. Editura Aquila’93, Oradea 2001
[29]. S.A. Boyer, SCADA: Supervisory Control and Data Aqiusition, 3rd Edition, ISA, USA, ISBN:1-55617-660-0, 2004.
[30]. E. Nicolau ș.a. – Manualul inginerului electronist. Editura Tehnică, București 1979
[31]. * * – www. howstuffworks.com
[32]. http://www.referat.ro/laboratoare/Sistem_achizitii_de_date_4682e.html
[33]. G. Ionescu, V. Ionescu, Automatica de la A la Z, Editura Stiintifica si
Enciclopedica, Bucuresti, 1987.
[34]. Mircea Alexandru Dabacan – Bazele sistemelor de achizitie de date, Editura
Casa Cartii de Stiinta Cluj-Napoca, 2004
[35]. Sampaleanu M. – Circuite pentru conversia datelor, Editura Tehnica,
Bucuresti, 1980
[36].http://www.energ.pub.ro/fisiere/master/Subiecte%202012/Carti/Metodologia%20de%20achizitie%20si%20prelucrare%20date.pdf
[37]. http://ro.wikipedia.org/wiki/USB
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: Utilizarea Comunicatiei Usb (ID: 124717)
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.
