kategória: Obvody mikrokontrolérov
Počet zobrazení: 16 299
Komentáre k článku: 0

Ako pripojiť inkrementálny kodér k Arduino

 

V zariadeniach s mikrokontrolérmi je často potrebné usporiadať správu položiek ponuky alebo vykonať určité úpravy. Existuje mnoho spôsobov: použitie tlačidiel, premenných odporov alebo kódovacích zariadení. Inkrementálny kódovač vám umožňuje niečo ovládať pomocou nekonečného otáčania rukoväte. V tomto článku sa zameriame na to, ako prinútiť inkrementálny kódovač a Arduino.

Ako pripojiť inkrementálny kodér k Arduino

Funkcie prírastkového snímača

Inkrementálny kódovač, rovnako ako akýkoľvek iný typ kodéra, je zariadenie s otočnou rukoväťou. Vzdialene sa podobá potenciometru. Hlavný rozdiel od potenciometra spočíva v tom, že rukoväť kódovača sa otáča o 360 stupňov. Nemá žiadne extrémne ustanovenia.

Kodéry sa dodávajú v mnohých typoch. Inkrementálne sa líši v tom, že s jeho pomocou nie je možné poznať polohu rukoväte, ale iba skutočnosť, že sa otáča v určitom smere - doľava alebo doprava. Podľa počtu signálových impulzov už môžete vypočítať, v akom uhle sa otočil.

Encoder a Arduino

Týmto spôsobom môžete prejsť mikroradič príkaz, spravovať menu, napríklad úroveň hlasitosti atď. V každodennom živote ste ich mohli vidieť v autorádiách a iných zariadeniach. Používa sa ako multifunkčný orgán na nastavenie úrovne, ekvalizér a navigáciu v ponuke.

Ovládač hlasitosti

Pracovný princíp

Vo vnútri inkrementálneho kodéra je disk s menovkami a posuvnými prvkami, ktoré s nimi prichádzajú do styku. Jeho štruktúra je podobná potenciometru.

Demontovaný enkodér

Na obrázku vyššie vidíte disk so značkami, ktoré sú potrebné na prerušenie elektrického spojenia s pohyblivým kontaktom, čo vedie k získaniu údajov o smere otáčania. Dizajn výrobku nie je taký dôležitý, poďme pochopiť princíp činnosti.

Dizajn enkodéra

Kodér má tri informačné výstupy, jeden spoločný, ostatné dva sa zvyčajne nazývajú „A“ a „B“, na obrázku vyššie vidíte kódovací pin s tlačidlom - môžete získať signál kliknutím na jeho hriadeľ.

Aký signál dostaneme? V závislosti od smeru otáčania sa logická jednotka najskôr objaví na kolíku A alebo B, takže dostaneme fázovo posunutý signál a tento posun nám umožňuje určiť, ktorým smerom. Signál sa získa vo forme pravouhlého tvaru a mikrokontrolér je riadený po spracovaní údajov o smere otáčania a počte impulzov.

Pracovný princíp

Obrázok ukazuje symbol disku s kontaktmi, v strede je graf výstupných signálov a napravo je stavová tabuľka. Toto zariadenie je často nakreslené ako dve kľúče, čo je logické, pretože v skutočnosti dostávame signál „dopredu“ alebo „späť“, „hore“ alebo „dolu“ a počet akcií.

Obvod enkodéra

Tu je príklad skutočného kódovacieho kódu:

Príklad skutočného kódovacieho pinoutu

Aj zázrak:

Chybný enkodér je možné nahradiť dvoma tlačidlami bez blokovania a naopak: domáci ovládač, v ktorom je možné dve z týchto tlačidiel dokončiť nastavením kodéra.

Vo videu nižšie vidíte striedanie signálu na svorkách - počas plynulého otáčania sa LED diódy rozsvietia v poradí, ktoré sa odráža v predchádzajúcom grafe.

Nemenej zreteľne ilustrované v nasledujúcej animácii (kliknite na obrázok):

Zariadenie a princíp činnosti kodéra

Kodér môže byť optický (signál je generovaný žiaričmi fotodetektormi, pozri obrázok nižšie), aj magnetický (pracuje na Hallovom efekte). V tomto prípade nemá žiadne kontakty a dlhšiu životnosť.

Uhlový snímač

Ako už bolo uvedené, smer otáčania je možné určiť podľa toho, ktorý z výstupných signálov sa predtým zmenil, ale takto to vyzerá v praxi!

Mechanické upevňovacie body

Presnosť riadenia závisí od rozlíšenia enkodéra - počtu impulzov na otáčku. Počet impulzov môže byť od jednotiek po tisíce kusov. Pretože enkodér môže pôsobiť ako snímač polohy, tým viac impulzov, tým presnejšie bude určenie.Tento parameter sa označuje ako PPR - impulz na otáčku.

Existuje však malá nuancia, konkrétne podobné označenie LPR je počet štítkov na disku.

A počet spracovaných impulzov. Každý štítok na disku dáva 1 pravouhlý impulz na každom z dvoch výstupov. Impulz má dve predné časti - zadnú a prednú. Pretože existujú dve možnosti, z každého z nich dostaneme celkom 4 impulzy, ktorých hodnoty môžete spracovať.

PPR = LPRx4


Pripojte sa k Arduino

Zistili sme, čo potrebujete vedieť o inkrementálnom kóderi, a teraz zistime, ako ho pripojiť k Arduino. Zvážte schému pripojenia:

Schéma pripojenia snímača polohy k Arduino

Kodérový modul je doska, na ktorej sú umiestnené inkrementálne kódovacie a pull-up rezistory. Môžete použiť akékoľvek špendlíky.

Schéma zapojenia snímača

Ak nemáte modul, ale samostatný enkodér, stačí pridať tieto odpory, obvod sa v zásade nebude líšiť. Skontrolujte smer otáčania a jeho funkčnosť v spojení s Arduino dokážeme prečítať informácie zo sériového portu.

Príklad programu

Poďme analyzovať kód podrobnejšie, v poriadku. Vo voľnom nastavení () sme oznámili, že použijeme komunikáciu cez sériový port a potom nastavíme kolíky 2 a 8 do vstupného režimu. Vyberte si čísla PIN sami na základe vašej schémy pripojenia. Konštanta INPUT_PULLUP nastavuje vstupný režim, arduino má dve možnosti:

  • INPUT - vstup bez pull-up rezistorov;

  • INPUT_PULLUP - pripojenie na vstup pull-up rezistorov. Vo vnútri mikrokontroléra už sú odpory, cez ktoré je vstup pripojený k napájaciemu plusu (pullup).

Ak použijete rezistory na dotiahnutie napájacieho napätia, ako je to znázornené na vyššie uvedených schémach, alebo používate modul enkodéra - použite príkaz INPUT, a ak z nejakého dôvodu nemôžete alebo nechcete použiť externé rezistory - INPUT_PULLUP.

Logika hlavného programu je nasledovná: ak ho máme na vstupe „2“, vyvedie port H na monitor, ak nie, L. Ak teda otáčate v rovnakom smere na monitore sériového portu, dostanete niečo také: LL HL HH LH LL. A naopak: LL LH HH HL LL.

Ak ste si pozorne prečítali riadky, pravdepodobne ste si všimli, že v jednom prípade hodnota prvého znaku získala hodnotu av druhom prípade sa prvý znak najskôr zmenil.


záver

Inkrementálne snímače našli široké praktické uplatnenie v zosilňovačoch pre akustické systémy - používali sa ako ovládanie hlasitosti, v autorádiách - na úpravu zvukových parametrov a navigáciu v ponukách, v počítačových myšiach s ňou každý deň listujete stránkami (na jeho hriadeli je nainštalované koleso) , A tiež v meracích nástrojoch, CNC strojoch, robotoch, selsyn nielen ako ovládacie prvky, ale aj pri meraní hodnôt a určovaní polohy.

Pozri tiež na bgv.electricianexp.com:

  • Metódy čítania a správy vstupov / výstupov Arduino
  • Ovládanie motora a servopohonu pomocou Arduino
  • Obsahuje pripojenie zariadení k Arduino
  • Pripojenie a programovanie Arduino pre začiatočníkov
  • Najpopulárnejšie senzory pre Arduino

  •