Obsah:

Ovládanie jasu, Arduino (s animáciami): 7 krokov
Ovládanie jasu, Arduino (s animáciami): 7 krokov

Video: Ovládanie jasu, Arduino (s animáciami): 7 krokov

Video: Ovládanie jasu, Arduino (s animáciami): 7 krokov
Video: Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light 2024, November
Anonim
Image
Image

Za posledných niekoľko rokov som postavil dva automaty na pinball (pinballdesign.com) a dve hlavy robotov (grahamasker.com), z ktorých každý ovládal Arduinos. Po kariére strojného inžiniera som s návrhom mechanizmov v poriadku, s programovaním však zápasím. Rozhodol som sa vytvoriť animácie na ilustráciu niektorých základných konceptov Arduina. Myslel som si, že to pomôže mne a ostatným porozumieť im. Obrázok má hodnotu tisíc slov a animácia môže byť tisíc obrázkov!

Tu je teda animované vysvetlenie na tému Ovládanie jasu. Animácia vyššie zobrazuje schému potenciometra pripojeného k Arduinu. Ukazuje, ako úprava polohy potenciometra môže zmeniť jas LED diódy. Vysvetlím všetky prvky tohto procesu. Pre niekoho, kto nie je oboznámený s potenciometrami a LED diódami, začnem s nimi. Potom vysvetlím, prečo musí byť LED dióda pripojená k Arduino pinu s povoleným PWM a ako sa funkcia MAP používa v náčrte Arduino na prevod vstupu z potenciometra na výstup, ktorý je vhodný na ovládanie LED.

Ak poznáte diódy a potenciometre, môžete sekcie 1 a 2 preskočiť.

Krok 1: O LED diódach

O LED diódach
O LED diódach

Ľavý obrázok vyššie zobrazuje symbol obvodu pre LED a polaritu nožičiek LED. Prúd bude pretekať LED iba v jednom smere, takže je dôležitá polarita. Pozitívom je dlhšia noha. K prírube je tiež plochá strana, toto je negatívna strana.

NAPÄTIE a AKTUÁLNE

Napätie požadované LED diódou sa pohybuje od približne 2,2 V do 3,2 V v závislosti od jej farby. Ich súčasné hodnotenie je zvyčajne 20 mA. Aby sa obmedzil prúd a zabránilo sa prehriatiu LED, je potrebné použiť odpor v sérii s každou LED. Odporúčam asi 300 ohmov.

Obrázok vpravo hore ukazuje spôsob spájkovania rezistora s nožičkou diódy a jeho izoláciu pomocou zmršťovacej objímky.

Krok 2: POTENTIOMETER

POTENCIOMETER
POTENCIOMETER

V pojmoch Arduino je potenciometer snímač. „Senzor“sa týka akéhokoľvek externého zariadenia, ktoré keď je pripojené k vstupným kolíkom, môže Arduino snímať. Na ovládanie jasu LED použijeme potenciometer pripojený k Arduinu. Potenciometru sa niekedy hovorí aj delič napätia, čo je podľa mňa lepší popis. Diagram vľavo hore ukazuje princíp deliča napätia. V tomto prípade je odpor na jednom konci spojený so zemou a niektorým zdrojom energie je držaný na 5 V na druhom konci. Ak sa posúvač pohybuje po rezistore, bude mať napätie 0v na ľavom konci, 5v na pravom konci. V akejkoľvek inej polohe bude mať hodnotu medzi 0v a 5v. Na polovici cesty bude napríklad pri 2,5V. Ak zmeníme usporiadanie tak, ako je to znázornené vpravo hore, potom to predstavuje činnosť rotujúceho potenciometra.

Krok 3: OBVOD

OKRUH
OKRUH

Vyššie uvedený obrázok ukazuje, ako potrebujeme pripojiť potenciometer a LED k Arduinu.

Ardunio musí cítiť napätie, ktoré k nemu privádza potenciometer. Pri otáčaní potenciometra sa napätie plynulo mení, je to teda analógový signál, a preto musí byť pripojené k analógovému vstupnému kolíku na Arduine. Napätie na tomto pine bude Arduino čítať vždy, keď to program požaduje prostredníctvom funkcie „analogRead“.

Arduino má iba digitálne výstupné piny. Tieto kolíky s vlnovkou (~) vedľa nich však simulujú analógový výstup, ktorý je vhodný na ovládanie jasu diódy LED. Tento proces sa nazýva modulácia šírky impulzu (PWM) a je vysvetlený v ďalšej animácii, krok 4.

Krok 4: PWM

PWM, modulácia šírky impulzu

Ako už bolo spomenuté, kolíky s tildou „~“vedľa nich sú kolíky PWM. Pretože kolíky sú digitálne, môžu byť iba na 0 V alebo 5 V, avšak s PWM môžu byť použité na stmievanie LED alebo ovládanie otáčok motora. Robia to tak, že dodávajú 5 V na LED, ale pulzujú medzi 0 V a 5 V pri 500 Hz (500 krát za sekundu) a predlžujú alebo skracujú trvanie každého 0 V a 5 V prvku impulzu. Keď LED dióda vidí dlhší 5v impulz ako 0v impulz, začne byť jasnejšia. V našom programe používame funkciu analogueWrite () na výstup PWM „štvorcovej vlny“. Má 256 prírastkov, nula dáva 0% pracovný cyklus a 255 dáva 100% „pracovný cyklus“, t.j. nepretržitých 5 voltov. 127 by teda poskytlo 50% pracovný cyklus, polovičný čas pri 0 V a polovičný čas pri 5 V. Animácia vyššie ukazuje, ako sa tento pracovný cyklus natiahne smerom k 100% a potom sa dióda rozsvieti.

Krok 5: PROGRAM (ARDUINO SKETCH)

Image
Image

Vyššie uvedené video postupuje v programe (skica), ktorý je možné použiť na ovládanie jasu LED pomocou potenciometra. Obvod je rovnaký ako v kroku 3.

Ak vám toto video pripadá pohodlné (alebo naopak pomalé) na pohodlné čítanie, môžete si nastaviť jeho rýchlosť. Na pravom konci spodnej ovládacej lišty je symbol v tvare ozubeného kolesa (niekedy s červeným štítkom „HD“).) Po kliknutí sa zobrazí ponuka, ktorá obsahuje „rýchlosť prehrávania“.

Bolo by samozrejme lepšie, keby ste mohli kliknúť na tlačidlo a prechádzať každým riadkom programu vlastnou rýchlosťou, bohužiaľ tu nie je možné poskytnúť túto interaktívnu metódu. Ak by ste chceli použiť túto metódu na túto tému a mnoho ďalších tém pre Arduino, potom je k dispozícii bezplatná ukážka interaktívnej/animovanej e -knihy na adrese animatedarduino.com

Existuje jedna funkcia v programe, ktorá si myslím, že potrebuje ďalšie vysvetlenie: na riadku 14 sa používa funkcia „mapa“. V kroku 6 je vysvetlenie jeho účelu

Krok 6: MAPA

Potenciometer máme pripojený k analógovému kolíku. Napätie potenciometra sa pohybuje medzi 0v a 5V. Tento rozsah je v procesore zaregistrovaný v 1024 krokoch. Keď sa vstup hodnoty používa na vytvorenie výstupu prostredníctvom digitálneho pinu s povoleným PWM, tento rozsah sa musí mapovať do výstupného rozsahu digitálneho pinu. Toto má 255 prírastkov. Na tento účel sa používa funkcia mapy a poskytuje výstup, ktorý je úmerný vstupu.

Ilustruje to vyššie uvedené video.

Krok 7: Animované Arduino

Obrázky v tomto návode boli prevzaté z mojej e -knihy Animované Arduino, ktorá je k dispozícii na www.animatedarduino.com, v ktorej sa snažím lepšie porozumieť niektorým konceptom, s ktorými sa stretávate počas učenia sa programovať Arduino.

Na webovej stránke je k dispozícii bezplatná ukážka e -knihy, ktorá vám umožní vyskúšať si interaktívny charakter knihy. Je to v podstate zbierka vzorových stránok, a preto mnohé vysvetlenie vynecháva. Obsahuje ukážkové stránky, ktoré vám umožňujú kliknúť na tlačidlá, ktoré vás prevedú každým riadkom programu a zobrazia súvisiace komentáre. Ostatné stránky majú video animácie a zvukový obsah, ktoré môžete ovládať. Je zahrnutá stránka s obsahom, aby ste videli, čo úplné vydanie obsahuje.

Odporúča: