Sisällysluettelo:

Kirkkauden säätö, Arduino (animaatioilla): 7 vaihetta
Kirkkauden säätö, Arduino (animaatioilla): 7 vaihetta

Video: Kirkkauden säätö, Arduino (animaatioilla): 7 vaihetta

Video: Kirkkauden säätö, Arduino (animaatioilla): 7 vaihetta
Video: WS2812 [Programmable LED Strip] 2024, Joulukuu
Anonim
Image
Image

Viimeisten vuosien aikana olen rakentanut kaksi flipperia (pinballdesign.com) ja kaksi robottipäätä (grahamasker.com), joista jokainen on Arduinoksen ohjaama. Koneinsinöörin uran jälkeen olen hyvin mekanismien suunnittelussa, mutta kamppailen ohjelmoinnin kanssa. Päätin luoda animaatioita havainnollistamaan joitain Arduinon peruskäsitteitä. Ajattelin, että se auttaisi minua ja muita ymmärtämään niitä. Kuva on tuhannen sanan arvoinen ja animaatio voi olla tuhat kuvaa!

Joten tässä on animoitu selitys kirkkauden säädöstä. Yllä oleva animaatio näyttää kaavion potentiometristä, joka on kytketty Arduinoon. Se osoittaa, kuinka potentiometrin asennon säätäminen voi muuttaa ledin kirkkautta. Aion selittää kaikki tämän prosessin elementit. Niille, jotka eivät tunne potentiometrejä ja ledejä, aloitan niistä. Selitän sitten, miksi led on kytkettävä PWM -yhteensopivaan Arduino -nastaan ja miten MAP -toimintoa käytetään Arduino -luonnoksessa potentiometrin tulon muuntamiseksi lähtöksi, joka soveltuu ledin ohjaamiseen.

Jos tunnet ledit ja potentiometrit, voit ohittaa kohdat 1 ja 2.

Vaihe 1: TIETOJA LED -valoista

TIETOJA LED -valoista
TIETOJA LED -valoista

Yllä oleva vasen kuva esittää ledin piirisymbolia ja led -jalkojen napaisuutta. Virta kulkee LEDin läpi vain yhteen suuntaan, joten napaisuus on tärkeää. Pitkä jalka on positiivinen. Laipalla on myös tasainen puoli, tämä on negatiivinen puoli.

JÄNNITE ja VIRTA

LEDin tarvitsema jännite vaihtelee noin 2,2 - 3,2 voltista sen väristä riippuen. Niiden nykyinen luokitus on tyypillisesti 20 mA. Virran rajoittamiseksi ja LEDin ylikuumenemisen estämiseksi on tarpeen käyttää sarjaan kuuluvia vastuksia jokaisen LED -valon kanssa. Suosittelen noin 300 ohmia.

Yllä oikealla oleva kuva esittää tapaa juottaa vastus ledin jalaan ja eristää se kutistekuorella.

Vaihe 2: POTENTIOMETRI

POTENTIOMETRI
POTENTIOMETRI

Arduinon sanoin potentiometri on anturi. "Anturi" tarkoittaa mitä tahansa ulkoista laitetta, jonka Arduino voi tunnistaa tuloihin. Aiomme käyttää Arduinoon kytkettyä potentiometriä LEDin kirkkauden säätämiseen. Potentiometriä kutsutaan joskus jännitteenjakajaksi, mikä on mielestäni parempi kuvaus. Yllä vasemmalla oleva kaavio osoittaa jännitteenjakajan periaatteen. Tässä esimerkissä vastus on kytketty maahan toisesta päästä ja jonkin virtalähteen toisessa päässä olevaan 5 V: n pitoon. Jos liukusäädintä liikutetaan vastusta pitkin, sen jännite on 0v vasemmassa päässä ja 5v oikeassa päässä. Missä tahansa muussa asennossa se on välillä 0v ja 5v. Esimerkiksi puolessa välissä se on 2,5 V. Jos muokkaamme järjestelyä, kuten yllä oikealla, tämä edustaa pyörivän potentiometrin toimintaa.

Vaihe 3: VIRTA

PIIRI
PIIRI

Yllä oleva kuva osoittaa, kuinka meidän on kytkettävä potentiometri ja ledi Arduinoon.

Ardunion täytyy tunnistaa jännite, joka syötetään sille potentiometrillä. Jännite muuttuu tasaisesti, kun potentiometriä käännetään, se on siten analoginen signaali ja siksi se on kytkettävä Arduinon analogiseen tulotappiin. Arduino lukee tämän nastan jännitteen aina, kun ohjelma pyytää sitä toiminnolla “analogRead”.

Arduinolla on vain digitaaliset lähtönastat. Kuitenkin neulat, joiden vieressä on tilde (~), simuloivat analogista lähtöä, joka soveltuu LED -valon kirkkauden säätämiseen. Tätä prosessia kutsutaan pulssinleveysmodulaatioksi (PWM) ja se selitetään seuraavassa animaatiossa, vaiheessa 4.

Vaihe 4: PWM

PWM, pulssinleveysmodulaatio

Kuten aiemmin mainittiin, nastat, joissa on tilda, "~" vieressä ovat PWM -tapit. Koska nastat ovat digitaalisia, ne voivat olla vain 0 tai 5 voltin jännitteellä, mutta PWM -tekniikalla niitä voidaan käyttää himmentämään LED -valoa tai ohjaamaan moottorin nopeutta. He tekevät niin syöttämällä 5 V: n LED -valolle, mutta sykkimällä sitä välillä 0 V - 5 V taajuudella 500 Hz (500 kertaa sekunnissa) ja venyttämällä tai kutistamalla jokaisen 0- ja 5 V: n pulssielementin kestoa. Kun LED näkee pidemmän 5 V: n pulssin kuin 0 V: n pulssi, se muuttuu kirkkaammaksi. Ohjelmassamme käytämme funktiota analogueWrite () PWM -neliöaallon tuottamiseksi. Siinä on 256 askelta, Zero antaa 0%: n käyttöjakson ja 255 antaa 100%: n "käyttöjakson" eli jatkuvan 5 voltin. Siten 127 antaa 50%: n käyttöjakson, puolet ajasta 0v ja puolet ajasta 5v. Yllä oleva animaatio osoittaa, että kun tätä käyttöjaksoa venytetään kohti 100%, ledistä tulee kirkkaampi.

Vaihe 5: OHJELMA (ARDUINO SKETCH)

Image
Image

Yllä oleva video käy läpi ohjelman (luonnos), jota voidaan käyttää ledin kirkkauden säätämiseen potentiometrin avulla. Piiri on sama kuin vaiheessa 3.

Jos tämä video on mielestäsi nopea (tai hidas) luettavaksi mukavasti, voit säätää sen nopeutta Alemman ohjauspalkin oikeassa päässä on hammaspyörän muotoinen symboli (joskus punainen HD -tarra.) Jos sitä napsautetaan, näkyviin tulee valikko, joka sisältää "toistonopeuden".

Olisi tietysti parempi, jos voisit napsauttaa painiketta siirtyäksesi ohjelman jokaisen rivin läpi omalla nopeudellasi, mutta valitettavasti ei ole mahdollista tarjota tätä vuorovaikutteista menetelmää täällä. Jos haluat mieluummin käyttää tätä menetelmää tästä aiheesta ja monista muista Arduino -aiheista, interaktiivisesta/animoidusta e -kirjasta on saatavana ilmainen esikatseluversio osoitteessa animatedarduino.com

Ohjelmassa on yksi ominaisuus, joka mielestäni tarvitsee enemmän selitystä: rivillä 14 käytetään "kartta" -toimintoa. Sen tarkoitus selitetään seuraavassa vaiheessa 6

Vaihe 6: MAP

Meillä on potentiometri kytketty analogiseen nastaan. Potentiometrin jännite vaihtelee välillä 0v ja 5v. Tämä alue rekisteröidään prosessoriin 1024 askelin. Kun arvotulolla luodaan lähtö PWM -yhteensopivan digitaalisen nastan kautta, tämä alue on yhdistettävä digitaalisen nastan lähtöalueeseen. Tässä on 255 askelta. Karttatoimintoa käytetään tähän tarkoitukseen ja se tuottaa tulon, joka on verrannollinen tuloon.

Yllä oleva video havainnollistaa tätä.

Vaihe 7: Animoitu Arduino

Tämän ohjeen kuvat on otettu e -kirjastani Animated Arduino, joka on saatavilla osoitteessa www.animatedarduino.com, jossa pyrin ymmärtämään paremmin joitain käsitteitä, joita on havaittu Arduinon ohjelmoinnin oppimisen aikana.

Verkkosivustolta on saatavana ilmainen esikatselukopio e -kirjasta, jonka avulla voit kokea kirjan interaktiivisuuden. Se on pohjimmiltaan kokoelma näytesivuja, joten se jättää paljon selityksiä pois. Se sisältää esimerkkisivuja, joiden avulla voit napsauttaa painikkeita, jotka ohjaavat ohjelman jokaisen rivin läpi ja tarkastella aiheeseen liittyviä kommentteja. Muilla sivuilla on videoanimaatioita ja äänisisältöä, joita voit hallita. Sisältösivu on mukana, jotta voit nähdä, mitä koko painos sisältää.

Suositeltava: