INHOUDSOPGAWE:

Helderheidsbeheer, Arduino (met animasies): 7 stappe
Helderheidsbeheer, Arduino (met animasies): 7 stappe

Video: Helderheidsbeheer, Arduino (met animasies): 7 stappe

Video: Helderheidsbeheer, Arduino (met animasies): 7 stappe
Video: Arduino Animation Experiment 2024, Julie
Anonim
Image
Image

Ek het die afgelope paar jaar twee flipperkastmasjiene (pinballdesign.com) en twee robotkoppe (grahamasker.com) gebou wat elk deur Arduinos beheer word. Nadat ek 'n loopbaan as meganiese ingenieur gehad het, is ek goed in die ontwerp van die meganismes, maar ek sukkel met die programmering. Ek het besluit om animasies te maak om 'n paar van die basiese konsepte van die Arduino te illustreer. Ek het gedink dit sal my en ander help om hulle te verstaan. 'N Foto is duisend woorde werd en 'n animasie kan duisend foto's wees!

Hier is 'n geanimeerde verduideliking oor helderheidsbeheer. Die animasie hierbo toon 'n skema van 'n potensiometer wat aan 'n Arduino gekoppel is. Dit wys hoe die aanpassing van die posisie van die potensiometer die helderheid van 'n LED kan verander. Ek gaan al die elemente van hierdie proses verduidelik. Vir almal wat nie bekend is met potensiometers en leds nie, sal ek daarmee begin. Ek sal dan verduidelik waarom die LED gekoppel moet word aan 'n PWM -aangeskakel Arduino -pen en hoe die MAP -funksie binne 'n Arduino -skets gebruik word om die insette van die potensiometer om te skakel na 'n uitgang wat geskik is vir die bestuur van 'n LED.

As u vertroud is met LED's en potensiometers, kan u afdeling 1 en 2 oorslaan.

Stap 1: OOR LED's

OOR LED's
OOR LED's

Die illustrasie links hierbo toon die kring simbool vir 'n LED en die polariteit van die geleide bene. Stroom vloei slegs deur 'n LED in een rigting, daarom is polariteit belangrik. Die langer been is die positiewe. Daar is ook 'n plat kant van die flens, dit is die negatiewe kant.

SPANNING en HUIDIG

Die spanning wat deur 'n LED benodig word, wissel van ongeveer 2.2v tot 3.2 volt, afhangende van die kleur daarvan. Hul huidige gradering is tipies 20mA. Om die stroom te beperk en te voorkom dat die LED oorverhit word, is dit nodig om 'n weerstand in serie met elke LED te gebruik. Ek beveel ongeveer 300 ohm aan.

Die illustrasie regs hierbo toon 'n manier om 'n weerstand aan 'n been van 'n LED te soldeer en te isoleer met 'n krimpkous.

Stap 2: POTENTIOMETER

POTENTIOMETER
POTENTIOMETER

In Arduino -terme is 'n potensiometer 'n sensor. 'Sensor' verwys na enige eksterne toestel wat deur die Arduino waargeneem kan word. Ons gaan 'n potensiometer gebruik wat aan die Arduino gekoppel is, om die helderheid van 'n LED te beheer. 'N Potensiometer word soms 'n spanningsverdeler genoem, wat volgens my 'n beter beskrywing is. Die diagram links bo dui die hoof van 'n spanningsverdeler aan. In hierdie voorbeeld word 'n weerstand aan die een kant aan die aarde gekoppel en deur 'n kragbron aan 5v aan die ander kant gehou. As 'n skuifbalk langs die weerstand beweeg word, is dit teen 'n spanning van 0v aan die linkerkant, 5v aan die regterkant. In enige ander posisie sal dit 'n waarde tussen 0v en 5v hê. Byvoorbeeld, halfpad, by 2,5V. As ons die rangskikking soos hierbo regs getoon, weergee, verteenwoordig dit die werking van 'n roterende potensiometer.

Stap 3: DIE KRINGBAND

DIE KRINGBAND
DIE KRINGBAND

Die illustrasie hierbo toon aan hoe ons die potensiometer en die LED met 'n Arduino moet verbind.

Die Ardunio moet die spanning wat deur die potensiometer aangevoer word, aanvoel. Die spanning verander glad terwyl die potensiometer gedraai word, dit is dus 'n analoog sein en moet dus gekoppel word aan 'n analoog ingangspen op die Arduino. Die spanning op hierdie pen sal deur die Arduino gelees word elke keer as die program dit versoek via die funksie "analogRead".

Die Arduino het slegs digitale uitsetpenne. Die penne met 'n tilde (~) langs hulle simuleer egter 'n analoog uitset wat geskik is om die helderheid van 'n LED te beheer. Hierdie proses word Pulse Width Modulation (PWM) genoem en word verduidelik deur die volgende animasie, Stap 4.

Stap 4: PWM

PWM, Pulse Width Modulation

Soos voorheen genoem, is die penne met 'n tilda, "~" langs hulle PWM -penne. Omdat die penne digitaal is, kan dit slegs by 0v of 5v wees, maar met PWM kan dit gebruik word om 'n LED te demp of die snelheid van 'n motor te beheer. Hulle doen dit deur 5v aan 'n LED te verskaf, maar dit tussen 0v en 5v by 500 Hz (500 keer per sekonde) te pols en die duur van elke 0v en 5v element van die pols te rek of te krimp. Aangesien die LED 'n langer 5v -puls as 'n 0v -puls sien, word dit helderder. In ons program gebruik ons die funksie analogueWrite () om 'n PWM "vierkantgolf" uit te voer. Dit het 256 inkremente, nul gee 'n 0% dienssiklus en 255 gee 100% 'duty cycle', dit wil sê deurlopende 5 volt. 127 gee dus 'n 50% dienssiklus, die helfte van die tyd by 0v en die helfte van die tyd by 5v. Die animasie hierbo wys hoe hierdie LED -siklus 100% gestrek word, dan word die LED helderder.

Stap 5: DIE PROGRAM (ARDUINO SKETCH)

Image
Image

Bogenoemde video loop deur 'n program (skets) wat gebruik kan word om die helderheid van 'n LED deur 'n potensiometer te beheer. Die stroombaan is dieselfde as in stap 3.

As u vind dat hierdie video vinnig (of stadig) is om gemaklik te lees, kan u die snelheid daarvan aanpas. Aan die regterkant van die onderste bedieningsbalk is 'n simbool in die vorm van 'n ratwiel (soms met 'n rooi 'HD' etiket daarop).) As u daarop klik, sal 'n spyskaart verskyn wat 'afspeelsnelheid' bevat.

Dit sou natuurlik beter wees as u op 'n knoppie kon klik om elke reël van die program op u eie spoed te stap, maar dit is ongelukkig nie moontlik om die interaktiewe metode hier te verskaf nie. As u die metode oor hierdie onderwerp en baie ander Arduino -onderwerpe verkies, is daar 'n gratis voorskouweergawe van 'n interaktiewe/geanimeerde e -boek beskikbaar op animatedarduino.com

Daar is een funksie in die program wat volgens my meer verduideliking benodig: op reël 14 word die 'kaart' -funksie gebruik. Daar is 'n verduideliking oor die doel daarvan in stap 6

Stap 6: KAART

Ons het die potensiometer gekoppel aan 'n analoog pen. Die potensiometer spanning wissel tussen 0v en 5v. Hierdie reeks word in 1024 stappe in die verwerker geregistreer. As die waarde -invoer gebruik word om 'n uitset via 'n PWM -geaktiveerde digitale pen te skep, moet hierdie reeks na die uitvoerreeks van 'n digitale pen gekoppel word. Dit het 255 inkremente. Die kaartfunksie word hiervoor gebruik en bied 'n uitset wat eweredig is aan die invoer.

Die video hierbo illustreer dit.

Stap 7: Geanimeerde Arduino

Die beelde in hierdie instruksies is geneem uit my e -boek Animated Arduino, wat beskikbaar is op www.animatedarduino.com, waarin ek 'n beter begrip wil gee van sommige van die konsepte wat ek teëkom terwyl ek leer om die Arduino te programmeer.

Daar is 'n gratis eksemplaar van die e -boek op die webwerf beskikbaar waarmee u die interaktiewe aard van die boek kan ervaar. Dit is basies 'n versameling voorbeeldbladsye en laat dus baie van die verduideliking weg. Dit bevat voorbeeldbladsye waarmee u op knoppies kan klik wat u deur elke reël van 'n program stap en verwante opmerkings kan sien. Ander bladsye bevat video -animasies en klankinhoud wat u kan beheer. 'N Inhoudsbladsy is ingesluit sodat u kan sien wat die volledige uitgawe bevat.

Aanbeveel: