Si Të Lidhni Një Levë Me Arduino

Përmbajtje:

Si Të Lidhni Një Levë Me Arduino
Si Të Lidhni Një Levë Me Arduino

Video: Si Të Lidhni Një Levë Me Arduino

Video: Si Të Lidhni Një Levë Me Arduino
Video: Как использовать датчик переменного / постоянного тока Allegro ACS712 с Arduino 2024, Nëntor
Anonim

Ekzistojnë një larmi mënyrash për të transferuar informacionin nga një person në një mikrokontrollues ose kompjuter, dhe njëra prej tyre është duke përdorur një levë. Le të shohim se si të lidhim një levë analoge me dy akse dhe një buton me Arduino.

Joystick me dy akse dhe një buton
Joystick me dy akse dhe një buton

Është e nevojshme

  • - Arduino;
  • - levë me dy boshte;
  • - 3 rezistencë me një vlerë nominale prej 220 Ohm;
  • - 1 LED RGB ose 3 konvencional.

Udhëzimet

Hapi 1

Levë është një pajisje e përshtatshme dhe e lehtë për t'u përdorur për transmetimin e informacionit. Ekziston një numër i madh i llojeve të levave për sa i përket numrit të gradave të lirisë, parimit të leximit të indikacioneve dhe teknologjive të përdorura. Joysticks përdoren më shpesh për të kontrolluar lëvizjen e çdo mekanizmi, modele të kontrolluar, robotësh. Levë analog, të cilën ne do të shohim sot, është një dorezë e bashkangjitur në një bashkim topi me dy akse reciprokisht pingule. Kur doreza është e anuar, boshti rrotullon kontaktin e lëvizshëm të potenciometrit, për shkak të të cilit voltazhi në daljen e tij ndryshon. Gjithashtu, levë analoge ka një buton takt, i cili ndizet kur shtypni dorezën vertikalisht.

Diagrami skematik i levës
Diagrami skematik i levës

Hapi 2

Lidhni levën sipas diagramit më poshtë. Lidhni daljet analoge X dhe Y të levës me hyrjet analoge A1 dhe A2 të Arduino, dalja e butonit SW në hyrjen dixhitale 8. Xhosteli mundësohet nga një tension +5 V.

Diagrami i instalimeve elektrike të Ardhëses
Diagrami i instalimeve elektrike të Ardhëses

Hapi 3

Për të parë qartë se si funksionon levë, le të shkruajmë një skicë të tillë. Le të deklarojmë kunjat, të vendosim mënyrat e funksionimit për to. Vini re se në procedurën e konfigurimit (), ne vendosim hyrjen switchPin në një nivel të lartë. Kjo mundëson rezistencën tërheqëse të integruar në këtë port. Nëse nuk e ndizni, atëherë kur nuk shtypet butoni i levës, porta e 8-të Arduino do të varet në ajër dhe do të kapë kamionçina. Kjo do të çojë në pozitivë të rremë të padëshiruar, kaotik.

Në procedurën e lakut (), ne vazhdimisht anketojmë gjendjen e butonit dhe e shfaqim atë duke përdorur LED në dalje 13. Për shkak të hyrjes së switchPin që ngrihet lart, LED është vazhdimisht i ndezur, dhe kur shtypet butoni, ajo fiket, dhe jo anasjelltas.

Tjetra, ne lexojmë leximet e dy potenciometrave të levës - prodhimi i boshteve X dhe Y. Arduino ka një ADC 10-bit, kështu që vlerat e lexuara nga levë shtrihen në intervalin nga 0 në 1023. Në pozicionin e mesit të levës, siç mund ta shihni në ilustrim, vlerat në rajonin 500 janë rreth mesit të diapazonit.

Një skicë për të demonstruar funksionimin e levës
Një skicë për të demonstruar funksionimin e levës

Hapi 4

Zakonisht një levë përdoret për të kontrolluar motorët elektrikë. Por pse të mos e përdorni për të kontrolluar shkëlqimin e një LED, për shembull? Le të lidhim një LED RGB (ose tre LED të zakonshëm) në portat dixhitale 9, 10 dhe 11 të Arduino sipas diagramit të mësipërm, duke mos harruar, sigurisht, për rezistencat.

Diagrami i instalimeve elektrike dhe RGB LED te Arduino
Diagrami i instalimeve elektrike dhe RGB LED te Arduino

Hapi 5

Ne do të ndryshojmë shkëlqimin e ngjyrave përkatëse kur ndryshojmë pozicionin e levës përgjatë akseve, siç tregohet në figurë. Për shkak të faktit se levë nuk mund të përqendrohet saktësisht nga prodhuesi dhe të ketë mesin e shkallës jo rreth 512, por nga 490 në 525, LED mund të ndizet pak edhe kur levë është në pozicionin neutral. Nëse dëshironi që ajo të jetë plotësisht e fikur, atëherë bëni ndryshimet e duhura në program.

Diagrami i shpërndarjes së shkëlqimit të kanaleve R, G, B përgjatë boshteve X dhe Y
Diagrami i shpërndarjes së shkëlqimit të kanaleve R, G, B përgjatë boshteve X dhe Y

Hapi 6

Bazuar në diagramin e mësipërm, ne do të shkruajmë një skicë të kontrollit Arduino të shkëlqimit të RGB LED duke përdorur një levë.

Së pari, ne do të deklarojmë korrespondencën e kunjave dhe dy ndryshoreve - ledOn dhe prevSw - për të punuar me butonin. Në procedurën e konfigurimit (), caktoni funksionet te kunjat dhe lidhni rezistencën tërheqëse në kunjën e butonit me komandën digitalWrite (swPin, HIGH).

Në lak () ne përcaktojmë shtypjen e butonit të levës. Kur shtypni butonin, ne i kalojmë mënyrat e funksionimit midis mënyrës "elektrik dore" dhe mënyrës "muzikë me ngjyra".

Në modalitetin freeMode (), shkëlqimi i LED-ve kontrollohet duke anuar levën në drejtime të ndryshme: sa më e fortë të jetë animi përgjatë boshtit, aq më e ndritshme ngjyra përkatëse. Për më tepër, transformimin e vlerave e merr përsipër funksioni i hartës (vlera, ngaLower, fromUpper, toLower, toUpper). Funksioni hartë () transferon vlerat e matura (nga e Ulët, te e Lartë) përgjatë akseve të levës në intervalin e dëshiruar të ndriçimit (në Ulët, në Lartë). Ju mund të bëni të njëjtën gjë me operacionet e zakonshme aritmetike, por ky shënim është shumë më i shkurtër.

Në modalitetin discoMode (), tre ngjyra në mënyrë alternative fitojnë shkëlqim dhe shuhen. Për të qenë në gjendje të dilni nga cikli kur shtypet butoni, ne kontrollojmë çdo përsëritje për të parë nëse butoni është shtypur.

Skica për kontrollimin e shkëlqimit të LED duke përdorur një levë analoge
Skica për kontrollimin e shkëlqimit të LED duke përdorur një levë analoge

Hapi 7

Rezultati është një elektrik dore i bërë nga një LED RGB me tre ngjyra, shkëlqimi i secilës ngjyrë të cilës vendoset duke përdorur një levë. Dhe kur shtypni butonin, modaliteti "muzikë me ngjyra" aktivizohet. Edhe pse e përdor, përkundrazi, si një dritë nate.

Kështu, mësuam se si të lidhim një levë analoge me dy boshte me një buton në Arduino dhe të lexojmë leximet prej tij. Ju mund të mendoni dhe të zbatoni një përdorim më interesant të levës se sa shembulli ynë.

Recommended: