Sadržaj:

Kontrola svjetline, Arduino (s animacijama): 7 koraka
Kontrola svjetline, Arduino (s animacijama): 7 koraka

Video: Kontrola svjetline, Arduino (s animacijama): 7 koraka

Video: Kontrola svjetline, Arduino (s animacijama): 7 koraka
Video: Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light 2024, Srpanj
Anonim
Image
Image

U posljednjih nekoliko godina izgradio sam dva fliper stroja (pinballdesign.com) i dvije glave robota (grahamasker.com) kojima upravlja svaki Arduinos. Nakon što sam radio kao inženjer strojarstva, dobro sam s dizajnom mehanizama, međutim borim se s programiranjem. Odlučio sam stvoriti animacije kako bih ilustrirao neke od osnovnih koncepata Arduina. Mislio sam da će to pomoći meni i drugima da ih razumijemo. Slika vrijedi tisuću riječi, a animacija može biti tisuću slika!

Dakle, evo animiranog objašnjenja na temu Kontrola svjetline. Gornja animacija prikazuje shemu potenciometra spojenog na Arduino. Pokazuje kako se podešavanjem položaja potenciometra može promijeniti svjetlina LED diode. Objasnit ću sve elemente ovog procesa. Za sve koji nisu upoznati s potenciometrima i LED diodama, počet ću s njima. Zatim ću objasniti zašto LED treba biti spojen na Arduino pin s omogućenim PWM -om i kako se funkcija MAP koristi unutar Arduino skice za pretvaranje ulaza s potenciometra u izlaz koji je prikladan za upravljanje LED diodama.

Ako ste upoznati sa LED diodama i potenciometrima, možete preskočiti odjeljke 1 i 2.

Korak 1: O LED diodama

O LED diodama
O LED diodama

Lijeva gornja ilustracija prikazuje simbol sklopa za LED diodu i polaritet LED dioda. Struja će teći kroz LED samo u jednom smjeru pa je polaritet važan. Duža noga je pozitivna. Prirubnica također ima ravnu stranu, to je negativna strana.

NAPON I STRUJA

Napon potreban za LED diodu kreće se od oko 2,2 do 3,2 volta, ovisno o boji. Njihova trenutna vrijednost je obično 20mA. Kako bi se ograničila struja i spriječilo pregrijavanje LED diode, potrebno je za svaku LED koristiti serijski otpornik. Preporučujem oko 300 ohma.

Ilustracija desno gore prikazuje način lemljenja otpornika na nogu LED -a i njegovu izolaciju termoskupljajućom navlakom.

Korak 2: POTENTIOMETAR

POTENCIOMETAR
POTENCIOMETAR

Arduino izrazom potenciometar je senzor. "Senzor" se odnosi na bilo koji vanjski uređaj koji Arduino može osjetiti kada je spojen na ulazne pinove. Koristit ćemo potenciometar spojen na Arduino, za kontrolu svjetline LED diode. Potenciometar se ponekad naziva i razdjelnik napona, što mislim da je bolji opis. Dijagram s lijeve strane prikazuje princip razdjelnika napona. U ovom primjeru, otpornik je spojen na masu na jednom kraju i držan nekim izvorom napajanja na 5v na drugom kraju. Ako se klizač pomakne duž otpornika, bit će na naponu od 0v na lijevom kraju, 5v na desnom kraju. U bilo kojem drugom položaju bit će na vrijednosti između 0v i 5v. Na pola puta, na primjer, bit će na 2.5V. Ako preoblikujemo raspored kao što je prikazano desno gore, to predstavlja djelovanje rotirajućeg potenciometra.

Korak 3: KRUG

KRUG
KRUG

Gornja ilustracija prikazuje kako moramo spojiti potenciometar i elektrodu na Arduino.

Ardunio mora osjetiti napon koji na njega dovodi potenciometar. Napon se glatko mijenja pri okretanju potenciometra, stoga je analogni signal i stoga ga je potrebno spojiti na analogni ulazni pin na Arduinu. Arduino će očitati napon na ovom pinu svaki put kada ga program zatraži putem funkcije "analogRead".

Arduino ima samo digitalne izlazne pinove. Međutim, ti pinovi s tildom (~) pored sebe simuliraju analogni izlaz koji je prikladan za kontrolu svjetline LED -a. Taj se proces naziva Pulse Width Modulation (PWM) i objašnjava se kroz sljedeću animaciju, korak 4.

Korak 4: PWM

PWM, Pulse Width Modulation

Kao što je prethodno spomenuto, igle s tildom, "~" pored njih su PWM igle. Budući da su pinovi digitalni, mogu biti samo na 0v ili 5v, međutim s PWM -om se mogu koristiti za prigušivanje LED diode ili kontrolu brzine motora. To čine napajanjem 5v LED -om, ali pulsiranjem između 0v i 5v pri 500 Hz (500 puta u sekundi) te istezanjem ili smanjenjem trajanja svakog elementa od 0v i 5v impulsa. Kako LED vidi duži impuls od 5 V od impulsa od 0 V, tada postaje svjetliji. U našem programu koristimo funkciju analogueWrite () za izlaz PWM "kvadratnog vala". Ima 256 koraka, nula daje 0% radni ciklus i 255 daje 100% "radni ciklus", tj. Kontinuiranih 5 volti. Tako 127 daje 50% radni ciklus, pola vremena pri 0v i pola vremena pri 5v. Gornja animacija prikazuje kako se ovaj radni ciklus rasteže prema 100% tada LED dioda postaje svjetlija.

Korak 5: PROGRAM (ARDUINO SKIC)

Image
Image

Gornji video zapis prolazi kroz program (skicu) koji se može koristiti za kontrolu svjetline LED diode pomoću potenciometra. Krug je isti kao što je prikazano u koraku 3.

Ako smatrate da je ovaj videozapis brz (ili spor) za ugodno čitanje, možete prilagoditi njegovu brzinu Na desnom kraju donje upravljačke trake nalazi se simbol u obliku zupčanika (ponekad s crvenom oznakom "HD" na njemu).) Ako se pritisne, otvorit će se izbornik koji uključuje "brzinu reprodukcije".

Naravno, bilo bi bolje da možete pritisnuti gumb za korake kroz svaki redak programa vlastitom brzinom, međutim nažalost tu interaktivnu metodu nije moguće pružiti. Ako biste radije koristili tu metodu na ovu temu i mnoge druge teme o Arduinu, na web stranici animatedarduino.com dostupna je besplatna verzija za pregled interaktivne/animirane e -knjige

Postoji jedna značajka u programu za koju mislim da treba dodatno objašnjenje: na liniji14 koristi se funkcija "karta". Sljedeće, u koraku 6, postoji objašnjenje njegove svrhe

Korak 6: MAPA

Potenciometar imamo spojen na analogni pin. Napon potenciometra varira između 0v i 5v. Taj se raspon u procesoru registrira u 1024 koraka. Kada se ulazna vrijednost koristi za stvaranje izlaza putem PWM omogućenog digitalnog pina, ovaj raspon se mora mapirati u izlazni raspon digitalnog pina. Ovo ima 255 koraka. U tu se svrhu koristi funkcija karte koja daje izlaz proporcionalan ulazu.

Gornji video to ilustrira.

Korak 7: Animirani Arduino

Slike u ovom Instructableu preuzete su iz moje e -knjige Animated Arduino koja je dostupna na www.animatedarduino.com u kojoj želim pružiti bolje razumijevanje nekih koncepata koji su se pojavili tijekom učenja programiranja Arduina.

Na web stranici je dostupna besplatna kopija e -knjige u pretpregledu koja vam omogućuje da iskusite interaktivnost knjige. To je u osnovi zbirka primjera stranica i stoga izostavlja mnoga objašnjenja. Sadrži uzorke stranica koje vam omogućuju da kliknete gumbe koji vas vode kroz svaki redak programa i pregledate povezane komentare. Ostale stranice imaju video animacije i audio sadržaj kojim možete upravljati. Uključena je stranica sa sadržajem kako biste mogli vidjeti što kompletno izdanje sadrži.

Preporučeni: