3.9 Măsurare cu encoder


Acest document descrie teoria encoderului, elementele de bază ale măsurării unui codificator și opțiunile pentru măsurarea encoderelor ce folosesc hardware NI.


Cuprins


Prezentare encoder și aplicații

Cum se face o măsurare cu encoderul

Conectarea unui encoder la un instrument

Resurse aditionale

1. Prezentare encoder și aplicații


Un encoder este un dispozitiv electromecanic care poate măsura mișcarea sau poziția. Majoritatea encoderelor utilizează senzori optici pentru a furniza semnale electrice sub formă de trenuri de impulsuri, care, la rândul lor, pot fi traduse în mișcare, direcție sau poziție.

Encoderele rotative sunt utilizate pentru a măsura mișcarea de rotație a unui arbore. Figura 1 arată componentele fundamentale ale unui encoder rotativ, care constă dintr-o diodă (LED) emițătoare de lumină, un disc și un detector de lumină pe partea opusă a discului. Discul, care este montat pe arborele rotativ, are modele de sectoare opace și transparente codificate în disc. Pe măsură ce discul se rotește, segmentele opace blochează lumina și unde geamul este limpede, lumina trece. Aceasta generează impulsuri de unde dreptunghiulare, care pot fi apoi interpretate ca poziție sau mișcare.

Encoderele au de obicei de la 100 la 6000 de segmente pe rotație. Aceasta înseamnă că acești codificatori pot oferi o rezoluție de 3,6 grade pentru encoderul cu 100 de segmente și 0,06 grade rezoluție pentru encoder cu 6000 de segmente.


Encoderele liniare funcționează sub același principiu ca și encoderele rotative, cu excepția faptului că, în locul unui disc rotativ, există o bandă opacă staționară cu fante transparente de-a lungul suprafeței sale, iar ansamblul LED-detector este atașat corpului mobil.

Figura 1. Componentele optice ale encoderului


Un encoder cu un set de impulsuri nu ar fi util pentru că nu ar putea indica direcția de rotație. Folosind două piste de coduri cu sectoare poziționate la 90 de grade de fază (figura 2), cele două canale de ieșire ale codorului în cuadratură indică atât poziția cât și direcția de rotație. Dacă A conduce B, de exemplu, discul se rotește în sensul acelor de ceasornic. Dacă B conduce A, atunci discul se rotește în sens invers acelor de ceasornic. Prin urmare, monitorizând atât numărul de impulsuri, cât și faza relativă a semnalelor A și B, puteți urmări atât poziția, cât și direcția de rotație.

Figura 2. Semnalele de ieșire A și B pentru encoderul în cuadratură


În plus, unele encodere în cuadratură includ un al treilea canal de ieșire - numit semnal de zero sau de referință - care furnizează un singur impuls per rotație. Puteți utiliza acest impuls singur pentru o determinare precisă a unei poziții de referință. În majoritatea encoderelor, acest semnal este numit Terminal-Z sau index.


Până în prezent, acest document a abordat numai ceea ce se numesc encodere incrementale în cuadratură single-ended. Acestea se numesc single-ended, deoarece semnalele A și B sunt ambele referite la masă, deci există un fir (sau un capăt) per semnal. Un alt tip de encoder utilizat în mod obișnuit este un encoder diferențial, unde există două linii pentru fiecare semnal A și B. Cele două linii pentru semnalul A sunt A' și A, iar cele două linii pentru semnalul B sunt B' și B. Acest tip de configurație se numește și push-pull deoarece toate cele patru linii furnizează întotdeauna o tensiune cunoscută (fie 0 V fie VCC). Atunci când A este VCC, A' este 0 V și atunci când A este 0 V, A' este VCC. În cazul unui encoder single-ended, A este fie VCC fie flotantă. Encoderele diferențiale sunt adesea folosite în medii zgomotoase electric, deoarece măsurătorile diferențiale protejează integritatea semnalului.


Cu ajutorul encoderelor incrementale, puteți măsura numai modificările poziției (de la care puteți determina viteza și accelerația), dar nu este posibil să determinați poziția absolută a unui obiect. Un al treilea tip de encoder, numit codificator absolut,este capabil să determine poziția absolută a unui obiect. Acest tip de codificator are segmente opace și transparente alternante, cum ar fi encoder-ul incremental, dar encoder-ul absolut utilizează mai multe grupuri de segmente care formează cercuri concentrice pe roata encoderului ca un ochi de taur pe o țintă sau o țintă pentru săgeți. Cercurile concentrice încep în mijlocul roții encoderului și, pe măsură ce inelele ies către exteriorul inelului, fiecare are un număr dublu de segmente decât inelul interior anterior. Primul inel, cel mai interior inel, are un segment transparent și unul opac. Al doilea inel din mijloc are două segmente transparente și două opace, iar al treilea inel are patru din fiecare segment. Dacă encoderul are 10 inele, inelul său exterior are 512 de segmente și dacă are 16 inele, inelul exterior are 32 768 de segmente.


Deoarece fiecare inel al encoderului absolut are dublul numărului de segmente ale inelului anterior, valorile formează numere pentru un sistem binar de numărare. În acest tip de codificator, există o sursă de lumină și un receptor pentru fiecare inel de pe roata encoderului. Aceasta înseamnă că encoderul cu 10 inele are 10 seturi de surse de lumină și receptoare, iar codificatorul cu 16 inele are 16 surse de lumină și receptoare.


Avantajul codorului absolut este că îl puteți fixa astfel încât roata encoderului să facă o rotație pe întreaga lungime a deplasării mașinii. Dacă deplasarea mașinii este de 10 inci și encoderul acesteia are o rezoluție pe 16 biți, rezoluția aparatului este de 10/65.536, care este de 0,00015 in. Dacă deplasarea pentru mașină este mai lungă, cum ar fi 6 ft, un resolver grosier poate urmări fiecare pas de deplasare și un al doilea resolver numit resolver fin poate urmări poziția în limita a 1 ft. Aceasta înseamnă că puteți angrena encoderul grosier, astfel încât să facă o rotație pe întreaga distanță de 6 ft și angrena encoderul fin, astfel încât întreaga sa rezoluție să fie împărțită pe 1 ft (12 in.).


2. Cum se face o măsurare cu encoderul


Pentru a efectua măsurători cu encoderul, aveți nevoie de o componentă electronică de bază numită contor. Bazându-se pe mai multe intrări, un contor de bază emite o valoare care reprezintă numărul de fronturi (tranziții de la un nivel la altul la o formă de undă) numărate. Majoritatea contoarelor au trei intrări relevante - poarta, sursa și sus/jos. Contorul numără evenimentele înregistrate în intrarea sursă și, în funcție de starea liniei sus/jos, fie crește numărul, fie îl scade. De exemplu, dacă linia sus/jos este "high", contorul incrementează numărul și dacă este "low", contorul scade numărul. Figura 3 prezintă o versiune simplificată a unui contor.

Figura 3. Modelul simplificat al unui contor


Un encoder are, de obicei, cinci fire care trebuie conectate la instrument și, în funcție de encoder, aceste fire au culori diferite. Puteți utiliza aceste fire pentru a alimenta encoderul și a citi semnalele A, B și Z. Figura 4 prezintă o tabel tipic al schemei de conectare pentru un codificator incremental.

Figura 4. Pinout encoder incremental


Următorul pas este determinarea locului în care trebuie să conectați fiecare dintre aceste fire. Având în vedere contorul descris mai sus, semnalul A este conectat la terminalul sursă, făcând astfel semnalul de la care sunt numărate impulsurile. Semnalul B este conectat la terminalul up/down și puteți conecta semnalele +5 VDC și masă la orice sursă de alimentare - în majoritatea cazurilor este suficientă o linie digitală într-o placă de dispozitiv pentru achiziția de date.


Odată ce fronturile sunt numărate, următorul concept pe care trebuie să-l luați în considerare este modul în care aceste valori sunt convertite în poziție. Procesul prin care numărul de fronturi este convertit în poziție depinde de tipul de codificare utilizat. Există trei tipuri de codare de bază, X1, X2 și X4.


Codificare X1


Figura 5 prezintă un ciclu de cuadratură și creșterile și decrementele rezultate pentru codarea X1. Atunci când canalul A conduce pe canalul B, incrementul are loc pe frontul în creștere a canalului A. Când canalul B conduce pe canalul A, scăderea are loc pe frontul descendent al canalului A.

Figura 5. Codificarea X1


Codificare X2


Același comportament este valabil și pentru codificarea X2, cu excepția incrementărilor sau decrementărilor pe fiecare front al canalului A, în funcție de ce canal conduce pe celălalt. Fiecare ciclu are două creșteri sau descreșteri, după cum se arată în figura 6.

Figura 6. Codificarea X2


Codificare X4


Contorul crește sau scade în mod similar pe fiecare front al canalelor A și B pentru codarea X4. Indiferent dacă contorul incrementează sau decrementează depinde de ce canal conduce pe celălalt. Fiecare ciclu are patru creșteri sau descreșteri, după cum se arată în figura 7.

Figura 7. Codificarea X4


Odată ce ați setat tipul de codare și ați numărat impulsurile, conversia în poziție este o chestiune de utilizare a uneia dintre următoarele formule:


Pentru poziția unghiulară:

Cantitatea de rotație este

unde N = numărul de impulsuri generate de encoder pe rotația arborelui

x = tip de codificare


Pentru poziția liniară:

Cantitatea de deplasare este

unde PPI = impulsuri per inch (un parametru specific pentru fiecare encoder)


3. Conectarea unui encoder la un instrument


Pentru această secțiune, luați în considerare un exemplu folosind șasiul NI cDAQ-9178 și modulul I/O digitale NI 9401 C Series. Procedura este similară atunci când se utilizează un alt instrument sau dispozitiv de măsurare.

Figura 8. Șasiul NI cDAQ-9178 și modulul I/O digitale NI 9401


Echipament necesar:

  • Șasiu NI CompactDAQ

  • Modul I/O digital bidirecțional de mare viteză NI 9401 cu opt canale, 5 V/ TTL

  • Codificator rotativ cu patru impulsuri/tur


NI 9401 are un conector DSUB care oferă conexiuni pentru cele opt canale digitale. Fiecare canal are un pin digital I/O la care puteți conecta un dispozitiv de intrare sau ieșire digitală. Accesul la cele patru contoare ale șasiului CompactDAQ este disponibil în oricare dintre sloturile șasiului; dacă utilizați cDAQ-9172, accesul la cele două contoare este disponibil numai prin sloturile 5 și 6, prin urmare introduceți 9401 în slotul 5. Figura 9 prezintă pinout-ul pentru această configurație, iar Tabelul 1 prezintă terminalele contorului implicit.

Figura 9. Schema de conectare pentru NI 9401 (slotul 5)

Tabel 1. Terminale implicite ale contorului


Conform acestor specificații, Wire A este conectat la Pinul 14, Wire B este conectat la Pinul 17, „5 VDC Power” este conectat la orice linie digitală neutilizată setată la „high”, iar „Ground” este conectat la orice terminal COM.


Cum să vă vedeți măsurarea


Acum că aveți codificatorul conectat la dispozitivul de măsurare, puteți utiliza software-ul de programare grafică NI LabVIEW pentru a transfera datele în computer pentru vizualizare și analiză.


Tabelul 1 prezintă un exemplu de afișare a numărului de fronturi și a creșterilor de poziție corespunzătoare în mediul de programare LabVIEW.

Figura 10. Panoul frontal LabVIEW care prezintă măsurători


4. Resurse suplimentare