Pöördkooder

**Pöördkooder** on elektromehaaniline seade, mis muundab võlli pöördenurga (asendi ehk positsiooni) või selle muutused koodiks.  Pöördkooderid saab jaotada inkrementaal- ja absoluutkoodriks. Lisaks võib need jaotada töömehanismi alusel mehaaniliseks, optiliseks ja magnetiliseks. Absoluutkooder väljastab hetkelise võlli asendi täispöörde raames. Inkrementaalkooder väljastab võlli liikumisinfo, millest saab järeldada nurkkiiruse, asendi ning läbitud vahemaa.

Pöördkoodereid kasutatakse nii juhtimiseks kui ka info saamiseks. Näiteks kasutatakse neid kaamera objektiivides  , arvutihiire rullikutes, mõõteriistade näidikutes ja nuppudes ning tööstusmasinate konveierliinides.

## Töömehanismid
### Mehaaniline pöördkooder
Sisaldab ringikujuliselt asetsevaid fikseeritud vaskradu ning kontaktnõelu. Absoluutkoodri puhul vastab igale pöördenurga vahemikule kindel vaskradade konfiguratsioon. Inkrementaalkoodri puhul korduvad vaskradade konfiguratsioonid ühe täispöörde vältel ning info saamiseks tuleb arvestada konfiguratsioonide muutumist ajas. Mehaanilised koodrid on odavad, kuid võivad sagedasel kasutamisel kuluda. 

### Optiline pöördkooder
Sisaldab valgusallikat, fotodioodi ja ringselt paigutatud piludega klaas-, plastik- või metallplaati. Pilude asemel võivad olla ka peegeldavad ja mittepeegeldavad alad. Optilised pöördkoodrid võivad olla nii inkrementaalsed kui ka absoluutsed, kuid on enamjaolt inkrementaalkoodrid.  Optiliste koodrite eelised on immuunsus elektri- ja magnetväljade vastu, kõrge temperatuuri taluvus ja kõrge tundlikkus. Lisaks ei teki kulumist, kuna liikuvate osade vahel puudub otsene kontakt. Puudused on tundlikkus valgust hajutavate ja varjutavate tegurite vastu nagu tolm, suits ja niiskus ning kõrgem hind. 

### Magnetiline pöördkooder (teljepealne)
Sisaldab üht lapiku silindri kujulist magnetit, mis on kinnitatud mootori võllile ning magnetvälja sensorit. Magnetvälja sensoriks võib olla näiteks Halli tajur, mis kasutab Halli efekti, et väljastada magnetvälja tugevusega proportsionaalne pinge. Sensor asub magneti teljel. Magnetvälja sensor mõõdab magnetvälja tugevust kahes ristuvas suunas. Tavaliselt on tegemist on absoluutkoodriga, kus igale pöördenurgale vastab kindel kahe suuna magnetinduktsioonide (*magnetic flux density*) paar. Magnetiliste koodrite eelised on tolmu-, vedeliku- ja kulumiskindlus ning võimalus kasutada väikeste mõõtmete ja kaaluga koodrit. 

### Magnetiline pöördkooder (teljelt väljas)
Sisaldab rõngakujulist magnetit ja sensorit nagu teljepealsel magnetilisel pöördkoodrilgi, kuid sensor ei asu magneti teljel. Selle eelis teljepealse koodri ees on, et magneti teljele saab paigutada muid masina osi ning kooder saab olla ka seest õõnes. Tegemist on tavaliselt absoluutkoodriga ning pöördenurga saab leida sensori kahes suunas mõõdetud magnetinduktsioonide paaride kaudu. 

## Absoluutkooder
Digitaalse absoluutkooderi igale pöördenurgale vastab kindel kood, mis sõltub mehaanilise koodri puhul vaskradade konfiguratsioonide asetusest üksteise suhtes ning optilise koodri puhul pilude või peegeldavate alade erinevate mustrite asetusest üksteise suhtes ringjoonel. Nende kahe koodri tüübi puhul on väljastatav signaal diskreetne. Magnetiliste koodrite puhul võib olla Halli tajuri väljastatav pinge pidev, kuid pöördenurga digitaalse signaali leidmiseks tuleb see pinge esmalt mõõta ning mõõdetud väärtus saab AD-muundurit kasutades olla vaid diskreetne. Täielikult analoogse magnetilise koodri puhul võib aga väljastatav pöördenurga info olla ka pidev.

Mehaanilisel koodril on mingi arv ühise keskpunktiga aga erineva suurusega rõngaid, mis on samal alusel ning liiguvad ühes tükis. Iga rõnga jaoks on eraldi kontaktnõel. Kontaktnõelad on reas ning püsivad paigal. Rõngaste liikumisel muutuvad kontaktnõelade loetavad signaalid – mõni nõel on ühendatud juhtiva materjaliga ning mõni mitte. Igale kontaktnõelade summaarsele signaalile vastab kindel pöördenurk. Kui näiteks iga juhtiva materjaliga ühenduses olev nõel kannab edasi kõrge signaali ning iga mittejuhtiva materjaliga ühenduses olev nõel kannab edasi madala signaali, siis saab neist välja lugeda binaarkoodi. Pöördenurga resolutsioon sõltub rõngaste arvust – n rõngaga koodril on kõige rohkem 2n erinevat nurkade vahemikku. See, mis binaarkoodis signaal millisele vahemikule vastab määratakse rõngaste asetusega ning dekodeerimiseks on mitmeid standardeid. [wiki]

Optilisete koodrite pöörlev ketas on tavaliselt valmistatud klaasist, plastikust või metallist ning sellel on läbipaistvad ja läbipaistmatud alad. Rida valgussensoreid tuvastavad enda ja valgusallika vahel oleva ketta pilude mustrist tekkiva signaali. See võib olla näiteks binaarkoodis ning sellest saab pöördenurga kätte kasutades ettemääratud dekodeerimisstandardi tabelit. Optiliste koodrite puhul kasutatakse tihti Gray koodi ehk peegeldunud kahendkoodi. Dekodeerimine käib kontrollseadme, näiteks mikroprotsessori või mikrokontrolleri kaudu. [wiki]

Magnetiliste koodrite puhul pöörleb magnet ning magnetvälja sensor püsib paigal. Sensor mõõdab magnetinduktsiooni kahes suunas. Tüüpiliselt on nendeks kaks ristuvat telge (x-telg ja y-telg), mis on omakorda risti magneti pöörlemisteljega. Teljepealse magnetkoodri puhul moodustub mõõdetud x- ja y-telje väärtuste esitamisel koordinaatteljestikul punktide ühendamisel ring. Pöördenurga saab arvutada võttes arkustangensi magnetinduktsiooni y-telje väärtuse ja x-telje väärtuse jagatisest (φ = arctan(By/Bx)).  Magnetkoodri resolutsioon sõltub AD-muunduri kvantimissügavusest ning täpsus sõltub kõigi mõõteseadmete kvaliteedist ja koodri osade asendist üksteise suhtes.

Absoluutkooder säilitab toite eemaldamisel asendi. See tähendab, et juhul, kui koodri asendit vahepeal ei muudeta, on voolu sisselülitamisel asendiinfo sama, mis väljalülitamisel. 

### Kodeerimise standardid
#### Standardne binaarkodeerimine (standard binary encoding)

 
Kui kontaktide arv on n, siis on maksimaalne vahemike arv 2n. Näites n=3, seega on maksimaalselt 23=8 pöördenurkade vahemikku. Standardse binaarkodeerimise puhul vastab arvule 0 vähimate pöördenurkade vahemik ning arvule 2n-1 suurimate pöördenurkade vahemik ning vahemike alumine nivoo on proportsionaalne vastavale binaarkoodis arvule. Selline kodeerimine on aga probleemne kui kontaktnõelte rida jääb kahe vahemiku vahele, sest tegelikkuses ei ole kontaktnõelad täielikult sirges reas. Et seda probleemi illustreerida, vaatleme situatsiooni, kus on 3 kontaktnõela ning pöördenurk muutub 179,9 kraadilt 180,1 kraadiks, mis tähendab, et mingil hetkel läheb *off-on-on* muster üle *on-off-off* mustriks. Vahepeal on aga ka kaks vahepositsiooni, sest kontaktid liiguvad ühest sektorist teise üksteise järel. Kui esimesena liigub edasi esimene nõel, siis kolmas ning viimasena teine, siis on mustrite järjekord järgnev:

*off-on-on* -> *on-on-on* -> *on-on-off* -> *on-off-off*

Nendele mustritele vastavad vasakult paremale sektorid 3, 7, 6 ja 4. Selline sektorite vahel hüppamine teeb koodri ebausaldusväärseks ning võib tekitada kontrollitavas süsteemis ebasobivaid reaktsioone.

#### Gray kodeerimine

Et ülal kirjeldatud probleemi vältida, kasutatakse Gray kodeerimist. Selles süsteemis erineb kahele järjestikkusele vahemikule vastav binaarkood alati ühe biti võrra. Kolme kontaktnõela korral vastaks täispöördele järgnev tabel.

## Inkrementaalkooder

Inkrementaalkooder võib olla nii mehaaniline, optiline kui ka magnetiline. Inkrementaalkoodritel on tavaliselt kaks väljundsignaali, A ja B. Paigal seistes on mõlema signaali väärtus püsiv. Koodrit pöörates hakkavad mõlema kanali väljundid aga perioodiliselt muutuma. Olenevalt sellest, kummale poole koodrit pööratakse on kas signaal A 90° signaalist B ees või vastupidi. Sellest, kumb signaal on ees, saab teada pöörlemissuuna. Teades koodri resolutsiooni, saab pöörlemiskiiruse arvutada ühe kanali väljundsignaali väärtuste vaheldumise kiiruse kaudu.[wiki]

Inkrementaalkoodrid võivad sisaldada ka kolmandat väljundsignaali, Z. Tüüpiliselt on see väljundsignaal kõrge vaid ühel korral täispöörde jooksul. Z kanalit kasutatakse seadetes, kus on oluline tuvastada mõne kindla asendi saabumist.[wiki]

On ka vaid ühe väljundsignaaliga inkrementaalkoodreid. Neid ei saa kasutada pöörlemissuuna määramiseks, kuid pöörlemiskiirust saab nendega tuvastada. Lisaks saab tuvastada asendit kaks korda täispöörde jooksul (kui pöörlemine võib toimuda mõlemas suunas) või suhtelist asendit alguspunkti suhtes (kui pöörlemine võib toimuda vaid ühe suunas).[wiki]

Inkrementaalkoodrid on tänu oma lihtsusele väiksema latentsuse ja kiirema andmeedastuskiirusega kui absoluutkoodrid.  Nendel põhjustel eelistatakse neid absoluutkoodrite ees, juhtudel kus asendi ja kiiruse info peab olema täpne.[wiki]

## Viited