Tartalomjegyzék:

Fényerő -szabályozás, Arduino (animációkkal): 7 lépés
Fényerő -szabályozás, Arduino (animációkkal): 7 lépés

Videó: Fényerő -szabályozás, Arduino (animációkkal): 7 lépés

Videó: Fényerő -szabályozás, Arduino (animációkkal): 7 lépés
Videó: WS2812 [Programmable LED Strip] 2024, November
Anonim
Image
Image

Az elmúlt néhány évben két flippergépet (pinballdesign.com) és két robotfejet (grahamasker.com) építettem, mindegyiket az Arduinos irányítja. Gépészmérnöki pályafutásom után jól vagyok a mechanizmusok tervezésével, de küzdök a programozással. Úgy döntöttem, hogy animációkat készítek az Arduino néhány alapfogalmának illusztrálására. Azt hittem, segít nekem és másoknak megérteni őket. Egy kép ezer szót ér, az animáció pedig ezer képet!

Tehát itt van egy animált magyarázat a Fényerő -szabályozás témakörben. A fenti animáció egy Arduino -hoz csatlakoztatott potenciométer vázlatát mutatja. Megmutatja, hogy a potenciométer helyzetének beállítása hogyan változtathatja meg a LED fényerejét. Megmagyarázom ennek a folyamatnak az összes elemét. Aki nem ismeri a potenciométereket és a ledeket, azoknál kezdem. Ezt követően elmagyarázom, hogy miért kell a LED -et PWM -kompatibilis Arduino tűhöz csatlakoztatni, és hogyan lehet a MAP funkciót használni az Arduino -vázlaton belül, hogy a potenciométer bemenetét a LED vezérlésére alkalmas kimenetre alakítsák át.

Ha ismeri a LED -eket és a potenciométereket, akkor kihagyhatja az 1. és 2. részt.

1. lépés: A LED -ekről

A LED -ekről
A LED -ekről

A fenti bal oldali ábra egy led áramkörének szimbólumát és a vezetett lábak polaritását mutatja. Az áram csak egy irányban áramlik a LED -en, ezért fontos a polaritás. A hosszabb láb pozitív. A karimának van egy lapos oldala is, ez a negatív oldala.

FESZÜLTSÉG és ÁRAM

A LED által igényelt feszültség színétől függően körülbelül 2,2–3,2 volt között mozog. A jelenlegi besorolásuk jellemzően 20mA. Az áram korlátozása és a LED túlmelegedésének megakadályozása érdekében minden LED -hez soros ellenállást kell használni. Azt javaslom, körülbelül 300 ohm.

A fenti jobb oldali ábra azt mutatja be, hogyan lehet az ellenállást egy led lábához forrasztani, és hőre zsugorodó hüvellyel szigetelni.

2. lépés: POTENCIOMÉTER

POTENCIOMÉTER
POTENCIOMÉTER

Arduino kifejezéssel élve a potenciométer egy érzékelő. Az „érzékelő” minden olyan külső eszközt jelent, amelyet az Arduino érzékelhet a bemeneti tűkhöz csatlakoztatva. Az Arduino -hoz csatlakoztatott potenciométert fogjuk használni a LED fényerejének szabályozására. A potenciométert néha feszültségosztónak nevezik, ami szerintem jobb leírás. A fenti bal oldali diagram a feszültségosztó elvét mutatja. Ebben a példában az ellenállást az egyik végén a földhöz csatlakoztatják, és valamilyen áramforrás a másik végén 5V -ra tartja. Ha egy csúszkát az ellenállás mentén mozgatnak, akkor a bal oldalon 0v, a jobb oldalon 5v feszültség lesz. Bármely más helyzetben 0v és 5v közötti érték lesz. Félúton például 2,5V lesz. Ha a fenti jobb oldali ábra szerint alakítjuk át az elrendezést, akkor ez egy forgó potenciométer működését jelenti.

3. lépés: A KÖR

A KÖR
A KÖR

A fenti ábra azt mutatja, hogyan kell csatlakoztatni a potenciométert és a ledet egy Arduino -hoz.

Az Ardunio -nak érzékelnie kell a potenciométerrel táplált feszültséget. A feszültség simán változik, amikor a potenciométert elforgatják, így analóg jel, ezért csatlakoztatni kell az Arduino analóg bemeneti tűjéhez. Ennek a tűnek a feszültségét az Arduino minden alkalommal leolvassa, amikor a program az „analogRead” funkción keresztül kéri.

Az Arduino csak digitális kimeneti csapokkal rendelkezik. Mindazonáltal azok a csapok, amelyek mellett tilde (~) van, egy analóg kimenetet szimulálnak, amely alkalmas a LED fényerejének szabályozására. Ezt a folyamatot impulzusszélesség -modulációnak (PWM) hívják, és a következő animációban, a 4. lépésben ismertetik.

4. lépés: PWM

PWM, impulzusszélesség -moduláció

Amint azt már korábban említettük, a tildával ellátott „~” csapok mellettük PWM csapok találhatók. Mivel a csapok digitálisak, csak 0 vagy 5 V feszültségűek lehetnek, a PWM használatával azonban LED -ek tompítására vagy a motor fordulatszámának szabályozására használhatók. Ezt úgy teszik, hogy 5 V -ot táplálnak a LED -nek, de 0 és 5 V között pulzálnak 500 Hz -en (500 -szor másodpercenként), és az impulzus minden 0- és 5 V -os elemének időtartamát nyújtják vagy csökkentik. Mivel a LED hosszabb 5 V -os impulzust lát, mint egy 0 V -os, akkor fényesebb lesz. Programunkban az analógWrite () függvényt használjuk PWM „négyzethullám” kimenetére. 256 lépcsővel rendelkezik, a nulla 0% -os, a 255 pedig 100% -os „ciklus”, azaz folyamatos 5 volt. Így a 127 50% -os terhelési ciklust eredményez, fele az időnek 0v -nál és fele -fele 5v -nál. A fenti animáció azt mutatja, hogy amikor ez a munkaciklus 100% -ra húzódik, akkor a LED fényesebb lesz.

5. lépés: A PROGRAM (ARDUINO SKETCH)

Image
Image

A fenti videó egy programon (vázlaton) keresztül lép, amely egy potenciométer segítségével szabályozható egy LED fényerejéhez. Az áramkör ugyanaz, mint a 3. lépésben.

Ha úgy találja, hogy ez a videó gyorsan (vagy lassan) kényelmesen olvasható, akkor beállíthatja a sebességét Az alsó vezérlőpult jobb végén egy fogaskerék alakú szimbólum látható (néha piros „HD” felirattal).) Ha rákattint, megjelenik egy menü, amely tartalmazza a "lejátszási sebességet".

Természetesen jobb lenne, ha rákattinthatna egy gombra, hogy a saját sebességével lépjen végig a program minden során, de sajnos itt nem lehetséges az interaktív módszer megadása. Ha inkább ezt a módszert szeretné használni ebben a témában és sok más Arduino témában, akkor az interaktív/animált e -könyv ingyenes előnézeti verziója elérhető az animatedarduino.com webhelyen

A programban van egy olyan funkció, amely szerintem bővebb magyarázatra szorul: a 14. sorban a "térkép" funkciót használják. Célja a következő lépésben, a 6. lépésben található

6. lépés: TÉRKÉP

A potenciométert analóg csaphoz csatlakoztattuk. A potenciométer feszültsége 0 és 5 V között változik. Ezt a tartományt a processzor 1024 lépésben regisztrálja. Ha az értékbemenetet használja a kimenet létrehozásához PWM -kompatibilis digitális tűn keresztül, akkor ezt a tartományt hozzá kell rendelni a digitális tű kimeneti tartományához. Ennek 255 lépése van. A térkép funkciót használják erre a célra, és a bemenettel arányos kimenetet biztosít.

A fenti videó ezt szemlélteti.

7. lépés: Animált Arduino

Az ebben az utasításban szereplő képek az Animated Arduino című e -könyvemből származnak, amely elérhető a www.animatedarduino.com címen, és amelynek célja, hogy jobban megértsem néhány olyan fogalmat, amelyek az Arduino programozása során tanultak.

A webhelyen elérhető az e -könyv ingyenes előzetes példánya, amely lehetővé teszi a könyv interaktív jellegének megtapasztalását. Ez alapvetően mintaoldalak gyűjteménye, és így sok magyarázatot kihagy. Mintaoldalakat tartalmaz, amelyek lehetővé teszik a gombok kattintását, amelyek végigvezetik a program minden sorát, és megtekinthetik a kapcsolódó megjegyzéseket. Más oldalak videoanimációkat és audiotartalmat tartalmaznak, amelyeket Ön szabályozhat. Tartalmazást tartalmaz, hogy láthassa, mit tartalmaz a teljes kiadás.

Ajánlott: