Kategorijos: Mikrovaldiklio grandinės
Peržiūrų skaičius: 16,299
Straipsnio komentarai: 0
Kaip prisijungti prie Arduino prieauginį kodą
Dažnai mikrokontrolerių įrenginiuose turite organizuoti meniu elementų valdymą arba atlikti kai kuriuos pakeitimus. Yra daugybė būdų: naudoti mygtukus, kintamuosius rezistorius arba kodavimo įrenginius. Prieauginis kodavimo įtaisas leidžia jums ką nors valdyti nesibaigiant rankenos pasukimu. Šiame straipsnyje mes apžvelgsime, kaip priversti prieauginį kodavimo įrenginį ir Arduino veikti.

Papildomos kodavimo priemonės
Prieauginis kodavimo įtaisas, kaip ir bet kurio kito tipo kodavimo įrenginys, yra įtaisas su besisukančia rankena. Nuotoliniu būdu jis primena potenciometrą. Pagrindinis skirtumas nuo potenciometro yra tas, kad kodavimo įrenginio rankena sukasi 360 laipsnių. Jis neturi jokių kraštutinių nuostatų.
Koderiai būna įvairių rūšių. Padidėjimas skiriasi tuo, kad su jo pagalba neįmanoma žinoti rankenos padėties, o tik sukimosi tam tikra kryptimi faktas - į kairę arba į dešinę. Pagal signalo impulsų skaičių jau galite apskaičiuoti, kokiu kampu jis pasisuko.

Tokiu būdu galite praeiti mikrovaldiklis komanda, pvz., valdyti meniu, garsumo lygį ir pan. Kasdieniniame gyvenime galėjai juos pamatyti automobilių radijuose ir kitoje įrangoje. Jis naudojamas kaip daugiafunkcinis lygio reguliavimo organas, ekvalaizeris ir meniu naršymas.

Darbo principas
Prieauginio kodavimo įrenginyje yra diskas su etiketėmis ir slankikliais, kurie liečiasi su jais. Jo struktūra panaši į potenciometro.

Aukščiau esančiame paveikslėlyje matote diską su žymėmis, kurie yra reikalingi, norint nutraukti elektrinį ryšį su kilnojamuoju kontaktu, todėl gausite duomenis apie sukimosi kryptį. Gaminio dizainas nėra toks svarbus, supraskime veikimo principą.

Koderis turi tris informacijos išvestis, vienas bendras, kiti du paprastai yra vadinami „A“ ir „B“, aukščiau esančiame paveikslėlyje matote kodavimo priemonės kaištį su mygtuku - signalą galite gauti spustelėję jo veleną.
Kokį signalą gausime? Atsižvelgiant į sukimosi kryptį, loginis mazgas pirmiausia pasirodys ant kaiščio A arba B, todėl gauname fazės poslinkio signalą, ir šis poslinkis leidžia mums nustatyti, kuria kryptimi. Signalas gaunamas stačiakampio formos pavidalu, o mikrovaldiklis valdomas po to, kai apdorojami sukimosi krypties ir impulsų skaičiaus duomenys.

Paveikslėlyje pavaizduotas disko simbolis su kontaktais, viduryje yra išvesties signalų schema, o dešinėje - būsenos lentelė. Šis prietaisas dažnai piešiamas kaip du klavišai, ir tai yra logiška, nes iš tikrųjų mes gauname signalą „pirmyn“ arba „atgal“, „aukštyn“ ar „žemyn“ ir veiksmų skaičių.

Čia pateiktas realaus kodavimo įrenginio pavyzdys:

Įdomu:
Sugedusį kodavimo įrenginį galima pakeisti dviem mygtukais, neužrakinant, ir atvirkščiai: valdymą namuose, kuriame du iš šių mygtukų gali būti baigti nustatant kodavimo įrenginį.
Žemiau esančiame vaizdo įraše matote signalo kaitą gnybtuose - sklandaus sukimosi metu šviesos diodai užsidega seka, atspindėta ankstesniame grafike.
Ne mažiau aiškiai parodyta šioje animacijoje (spustelėkite paveikslėlį):
Koderis gali būti ir optinis (signalą generuoja fotodetektorių skleidžiami skleidėjai, žr. Paveikslą žemiau), ir magnetinis (jis veikia su Halės efektu). Tokiu atveju jis neturi jokių kontaktų ir ilgesnio tarnavimo laiko.

Kaip jau minėta, sukimosi kryptį galima nustatyti pagal tai, kuris išėjimo signalas anksčiau pasikeitė, tačiau taip atrodo praktiškai!

Valdymo tikslumas priklauso nuo enkoderio skyros - impulsų skaičiaus per apsisukimą. Impulsų skaičius gali būti nuo vienetų iki tūkstančių vienetų. Kadangi kodavimo įtaisas gali veikti kaip padėties jutiklis, tuo daugiau impulsų, tuo tiksliau nustatoma.Šis parametras vadinamas PPR - impulsas per apsisukimą.
Tačiau yra nedidelis niuansas, būtent, panašus žymėjimas LPR yra etikečių skaičius diske.
Ir perdirbtų impulsų skaičius. Kiekviena etiketė diske suteikia po 1 stačiakampį impulsą kiekviename iš dviejų išėjimų. Impulsas turi du frontus - galinį ir priekinį. Kadangi yra du išėjimai, iš kiekvieno iš jų iš viso gauname 4 impulsus, kurių vertes galite apdoroti.
PPR = LPRx4
Prisijunkite prie Arduino
Mes išsiaiškinome, ką reikia žinoti apie prieauginį kodavimo įrenginį, dabar išsiaiškinkime, kaip jį prijungti prie Arduino. Apsvarstykite ryšio schemą:

Kodavimo modulis yra plokštė, ant kurios yra prieauginis kodavimo įtaisas ir traukos varžai. Galite naudoti bet kokius kaiščius.

Jei neturite modulio, bet atskirą kodavimo įrenginį, jums tiesiog reikia pridėti šiuos rezistorius, grandinė iš esmės nesiskirs. Norėdami patikrinti sukimosi kryptį ir jo veikimą kartu su Arduino galime perskaityti informaciją iš nuosekliojo prievado.

Išanalizuokime kodą išsamiau, eilės tvarka. In void setup () paskelbėme, kad naudosime ryšį per nuoseklųjį prievadą, o tada įvesties režime nustatysime 2 ir 8 kaiščius. Remdamiesi savo ryšio schema, patys pasirinkite PIN kodus. INPUT_PULLUP konstanta nustato įvesties režimą, arduino turi dvi galimybes:
-
INPUT - įėjimas be traukiamųjų varžų;
-
INPUT_PULLUP - prijungimas prie traukiamų rezistorių įėjimo. Mikrovaldiklio viduje jau yra rezistoriai, per kuriuos įėjimas yra prijungtas prie maitinimo pliuso (traukimo).
Jei naudojate rezistorius, kad pritvirtintumėte prie galios pliusą, kaip parodyta aukščiau pateiktose schemose, arba naudojate kodavimo modulį - naudokite komandą INPUT, o jei dėl kokių nors priežasčių negalite ar nenorite naudoti išorinių rezistorių, - INPUT_PULLUP.
Pagrindinės programos logika yra tokia: jei mes turime vieną prie įvesties „2“, jis išves monitoriaus prievadą H, jei ne, L. Taigi, sukdami ta pačia kryptimi nuosekliojo prievado monitoriuje, gausite kažką panašaus: LL HL HH LH LL. Ir atvirkščiai: LL LH HH HL LL.
Jei atidžiai perskaitėte eilutes, tikriausiai pastebėjote, kad vienu atveju pirmasis simbolis įgavo vertę, o kitu atveju pirmiausia pasikeitė antrasis simbolis.
Išvada
Inkrementiniai kodavimo įrenginiai rado platų praktinį pritaikymą akustinių sistemų stiprintuvuose - jie buvo naudojami kaip garsumo valdymas, automobilių radijuose - garso parametrams reguliuoti ir naršyti meniu, kompiuterinėmis pelėmis, su kuriomis kasdien slinkite puslapius (ant jo veleno sumontuotas ratas). . Matavimo įrankiuose, CNC staklėse, robotuose, atliekant ne tik valdymą, bet ir matuojant reikšmes bei nustatant padėtį.
Taip pat žiūrėkite tinklalapyje electro-lt.tomathouse.com
: