Tartalomjegyzék:
- 1. lépés: Alkatrészek és alkatrészek
- 2. lépés: Tervezze meg előrehaladását
- 3. lépés: A potenciométerek használata
- 4. lépés: A (3x) potenciométer bekötési rajza
- 5. lépés: Az AnalogRead () és a Variables használata
- 6. lépés: A soros monitor használata 1 gombbal
- 7. lépés: Az RGB LED használata
- 8. lépés: Potenciométerek használata az RGB LED vezérléséhez (egy hibával)
- 9. lépés: BÓNUSZ: Térkép () funkció és tisztító kód
Videó: Színkeverő Arduino -val: 9 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Kövesse a szerző további műveit:
Névjegy: Mindig tanul….. További információ a tliguori330 -ról »
A színkeverő nagyszerű projekt mindenkinek, aki az Arduino -val dolgozik és növekszik. Ennek az utasításnak a végére a gombok elforgatásával szinte minden elképzelhető színt elvegyíthet. A képzettségi szint elég alacsony ahhoz, hogy még egy teljes újonc is sikeresen befejezze, de elég érdekes is ahhoz, hogy élvezetes legyen egy tapasztalt állatorvos számára. Ennek a projektnek a költsége szinte semmi, és a legtöbb Arduino készlet tartalmazza a szükséges anyagokat. Ennek a kódnak a középpontjában néhány alapvető arduino függvény áll, amelyeket bárki, aki arduino -t használ, meg akarja érteni. Mélyre fogjuk térni az analogRead () és analogWrite () függvényekről, mint egy másik szokásos map () nevű függvényről. Ezek a linkek az ezekhez a funkciókhoz tartozó arduino referenciaoldalakra mutatnak.
1. lépés: Alkatrészek és alkatrészek
Arduino Uno
Potenciométer (x3)
RGB LED
220 ohmos ellenállás (x3)
Jumper vezetékek (x12)
Kenyeretábla
2. lépés: Tervezze meg előrehaladását
Nagyon hasznos lehet megtervezni, hogyan fogja befejezni a projektet. A kódolás lényege az egyik lépésről a másikra történő logikus haladás. Készítettem egy folyamatábrát, amely felvázolja, hogyan szeretném futtatni a vázlatomat. Az általános cél az, hogy 3 gomb (potenciométer) vezérelje az RGB LED három színét. Ennek eléréséhez létre kell hoznunk egy vázlatot, amely megfelel a folyamatábrának. Szeretnénk….
1) Olvassa el 3 különböző potenciométert, és mentse el értékeiket a változókba.
2) Ezeket az értékeket az RGB LED tartományához igazítjuk.
3) Végül írjuk az átalakított értékeket az RGB minden színéhez.
3. lépés: A potenciométerek használata
Az elektronikai készletek egyik legalapvetőbb alkatrésze, a potenciométer sokféle projektben használható. A potenciométerek úgy működnek, hogy lehetővé teszik a felhasználó számára, hogy fizikailag megváltoztassa az áramkör ellenállását. A potenciométer leginkább farmilar példája a fényszabályozó. a gomb elcsúsztatása vagy elforgatása megváltoztatja az áramkör hosszát. a hosszabb út nagyobb ellenállást eredményez. A megnövekedett ellenállás fordítva csökkenti az áramot és a fényt. Ezek különböző formájúak és méretűek lehetnek, de a legtöbbnek ugyanaz az alapbeállítása. Egy diák segítséget kért a gitárja javításához, és rájöttünk, hogy a gombok pontosan megegyeznek a potenciométerekkel. Általában a külső lábak voltak csatlakoztatva 5 volthoz és a földhöz, és a középső láb egy analóg tűhöz megy, mint az A0
4. lépés: A (3x) potenciométer bekötési rajza
A bal lábszár az 5V -hoz, a jobb láb pedig a GND -hez kapcsolódik. Valójában megfordíthatja ezt a két lépést, és nem fog nagyon fájni a projektnek. Mindössze annyit változtatna, hogy a gombot teljesen balra forgatja, és teljes fényerő lesz, nem pedig teljesen. A középső láb csatlakozik az Arduino egyik analóg csapjához. Mivel három gombunk lesz, háromszorosára szeretnénk növelni az elvégzett munkát. Mindegyik gomb 5 V -ot és GND -t igényel, így azokat kenyérlap segítségével lehet megosztani. A kenyértáblán lévő piros csík 5 V -ra, a kék csík pedig a földre van csatlakoztatva. Minden gombnak saját analóg csapjára van szüksége, így az A0, A1, A2 -hez csatlakoztatható.
5. lépés: Az AnalogRead () és a Variables használata
Ha a potenciométert helyesen állítja be, készen állunk az értékek leolvasására. Amikor ezt akarjuk tenni, akkor az analogRead () függvényt használjuk. A helyes szintaxis az analogRead (pin#); így középső potenciométerünk leolvasásához analógRead (A1); Annak érdekében, hogy dolgozzunk a gombokról az Arduino -hoz küldött számokkal, ezeket a számokat is el akarjuk menteni egy változóba. A kódsor elvégzi ezt a feladatot, amikor leolvassuk a potenciométert, és elmentjük aktuális számát a "val" egész változóba
int val = analogRead (A0);
6. lépés: A soros monitor használata 1 gombbal
Jelenleg képesek vagyunk a gombokból értékeket lekérni és egy változóban tárolni, de hasznos lenne, ha látnánk ezeket az értékeket. Ehhez ki kell használnunk a beépített soros monitort. Az alábbi kód az első vázlat, amelyet valójában az Arduino IDE -ben fogunk futtatni, amely letölthető a webhelyükről. Az üres beállításban () aktiváljuk a bemenetként a középső lábakhoz csatlakoztatott analóg érintkezőket, és aktiváljuk a soros monitort a Serial.begin (9600) segítségével; Ezután csak az egyik gombot olvassuk el, és tároljuk egy olyan változóban, mint korábban. A változás most az, hogy hozzáadtunk egy sort, amely kinyomtatja, hogy a változóban mennyi szám van tárolva. Ha összeállítja és futtatja a vázlatot, akkor megnyithatja a soros monitort, és láthatja a számok görgetését a képernyőn. Minden alkalommal, amikor a kód ismétlődik, újabb számot olvasunk és nyomtatunk. Ha elforgatja az A0-hoz kapcsolt gombot, akkor 0-1023 közötti értékeket kell látnia. később a cél az lesz, hogy mindhárom potmétert leolvassuk, amelyek további 2 analóg olvasót és 2 különböző változót igényelnek a mentéshez és nyomtatáshoz.
void setup () {
pinMode (A0, INPUT); pinMode (A1, BEMENET); pinMode (A2, BEMENET); Sorozat.kezdet (9600); } void loop () {int val = analogRead (A0); Soros.println (val); }
7. lépés: Az RGB LED használata
A 4 lábú RGB LED az egyik kedvenc alkatrészem az Arduino számára. Lenyűgözőnek találom azt a módot, ahogyan képes végtelen színeket létrehozni 3 alapszín keverékéből. A beállítás hasonló a szokásos LED -ekhez, de itt alapvetően piros, kék és zöld LED -ek vannak kombinálva. A rövid lábakat az arduino egyik PWM csapja fogja irányítani. A leghosszabb láb 5 voltra vagy földre lesz csatlakoztatva, attól függően, hogy a tiéd közös anódban vagy közös katód LED -ben van -e. A probléma megoldásának mindkét módját ki kell próbálnia. Már lesz 5v és GND csatlakoztatva a kenyértáblához, hogy könnyen cserélhető legyen. A fenti ábra 3 ellenállás használatát is mutatja. Valójában gyakran kihagyom ezt a lépést, mivel még nem volt, és a LED kialszik rajtam.
A színek elkészítéséhez az analogWrite () függvényt használjuk annak szabályozására, hogy mennyi pirosat, kéket vagy zöldet adjunk hozzá. Ennek a funkciónak a használatához meg kell mondania, hogy melyik# tűvel beszélünk, és egy 0-255 közötti számot. A 0 teljesen ki van kapcsolva, és a 255 a legnagyobb mennyiség egy színben. Csatlakoztassuk a piros lábat a 9 -es tűhöz, a zöldet a 10 -es tűhöz és a kéket a 11 -es tűhöz. Ez némi próbálkozást és hibát vehet igénybe annak megállapítására, hogy melyik láb melyik színű. Ha lila árnyalatot szeretnék készíteni, sok vöröset, zöldet és talán fél erősségű kéket is csinálhatnék. Arra biztatlak, hogy bánj ezekkel a számokkal, ez igazán izgalmas. Néhány általános példa a fenti képeken található
void setup () {
pinMode (9, KIMENET); pinMode (10, KIMENET); pinMode (11, KIMENET); } void loop () {analogWrite (9, 255); analogWrite (10, 0); analogWrite (11, 125)}
8. lépés: Potenciométerek használata az RGB LED vezérléséhez (egy hibával)
Itt az ideje, hogy elkezdjük összeolvasztani a két kódunkat. A szokásos kenyértáblán elegendő hely kell, hogy legyen mind a 3 gombhoz és az RGB LED -hez. Az ötlet az, hogy a piros kék és zöld értékek beírása helyett az egyes poteniométerekből mentett értékeket fogjuk használni a színek folyamatos megváltoztatásához. ebben az esetben 3 változóra lesz szükségünk. a redval, greenval, blueval különböző változók. Ne feledje, hogy ezeket a változókat bárminek nevezheti. ha elforgatja a "zöld" gombot, és a piros mennyiség megváltozik, akkor a neveket megfelelően egyeztetheti. most forgathatja az egyes gombokat és szabályozhatja a színeket !!
void setup () {
pinMode (A0, INPUT); pinMode (A1, BEMENET); pinMode (A2, BEMENET); pinMode (9, KIMENET); pinMode (10, KIMENET); pinMode (11, KIMENET); } void setup () {int redVal = analogRead (A0); int greenVal = analógRead (A1); int blueVal = analógRead (A2); analogWrite (9, redVal); analogWrite (10, zöldVal); analogWrite (11, blueVal); }
9. lépés: BÓNUSZ: Térkép () funkció és tisztító kód
Észreveheti, hogy amint elkezdi felfelé forgatni az egyik szín gombját, az növekedni fog, majd hirtelen leáll. Ez a növesztési minta, majd a gyors kikapcsolás 4 -szer megismétlődik, amikor teljesen felfelé fordítja a gombot. Ha emlékszel, azt mondtuk, hogy a potenciométerek 0 és 1023 közötti értékeket tudnak leolvasni. Az analogWrite () függvény csak 0 és 255 közötti értékeket fogad el. Miután a potenciométer 255 fölé emelkedik, alapvetően 0 -ról indul. Van egy szép funkció, amely segít a térkép () nevű hiba. egy lépésben egy számtartományt másik számtartománysá alakíthat át. 0-1023 számokat 0-255 számokká alakítjuk. Például, ha a gombot félig állították, akkor körülbelül 512. értéket kell olvasnia. Ez a szám 126 -ra változik, ami fele ereje a LED -nek. Ebben az utolsó vázlatban a kényelem kedvéért neveztem el a csapokat változó nevekkel. Most már kész színkeverővel kell kísérleteznie !!!
// potenciométer csapok változónevei
int redPot = A0; int greenPot = A1; int bluePot = A2 // az RGB csapok változónevei int redLED = 9; int zöldLED = 10; int blueLED = 11; void setup () {pinMode (redPot, INPUT); pinMode (greenPOT, INPUT); pinMode (bluePot, INPUT); pinMode (pirosLED, OUTPUT); pinMode (zöldLED, OUTPUT); pinMode (blueLED, OUTPUT); Sorozat, kezdés (9600); } void loop () {// értékek olvasása és mentése a potenciométerekből int redVal = analogRead (redPot); int greenVal = analógRead (greenPot); int blueVal - analogRead (bluePot); // konvertálja az értékeket 0-1023-ról 0-255-re az RGB LED redVal = map (redVal, 0, 1023, 0, 255) értékére; greenVal = térkép (greenVal, 0, 1023, 0, 255); blueVal = térkép (blueVal, 0, 1023, 0, 255); // írja ezeket az átalakított értékeket az RGB LED analogWrite minden színére (redLED, redVal); anaogWrite (zöldLED, zöldVal); analogWrite (blueLED, blueVal); // az értékek megjelenítése a soros monitoron Serial.print ("red:"); Serial.print (redVal); Serial.print ("zöld:"); Serial.print (greenVal); Serial.print ("kék:"); Serial.println (blueVal); }
Ajánlott:
Arduino Nano - Arduino Uno adapter: 6 lépés (képekkel)
Arduino Nano - Arduino Uno adapter: Az Arduino Nano egy szép, kicsi és olcsó tagja az Arduino családnak. Az Atmega328 chipen alapul, ami olyan erőteljes, mint a legnagyobb testvére, Arduino Uno, de kevesebb pénzért is beszerezhető. Az Ebay -en most a kínai verziók b
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: 7 lépés (képekkel)
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: Ezt a Rapsberry PI-t tervezem használni egy csomó szórakoztató projektben a blogomban. Nyugodtan nézd meg. Vissza akartam kezdeni a Raspberry PI használatát, de nem volt billentyűzetem vagy egér az új helyen. Rég volt, hogy beállítottam egy málnát
Bolt - DIY vezeték nélküli töltő éjszakai óra (6 lépés): 6 lépés (képekkel)
Bolt - DIY vezeték nélküli töltés éjszakai óra (6 lépés): Az induktív töltés (más néven vezeték nélküli töltés vagy vezeték nélküli töltés) a vezeték nélküli áramátvitel egyik típusa. Elektromágneses indukciót használ a hordozható eszközök áramellátásához. A leggyakoribb alkalmazás a Qi vezeték nélküli töltő
A számítógép szétszerelése egyszerű lépésekkel és képekkel: 13 lépés (képekkel)
A számítógép szétszerelése egyszerű lépésekkel és képekkel: Ez az utasítás a számítógép szétszereléséről szól. A legtöbb alapvető alkatrész moduláris és könnyen eltávolítható. Fontos azonban, hogy szervezett legyen ezzel kapcsolatban. Ez segít elkerülni az alkatrészek elvesztését, és az újra összerakást is
A legolcsóbb Arduino -- A legkisebb Arduino -- Arduino Pro Mini -- Programozás -- Arduino Neno: 6 lépés (képekkel)
A legolcsóbb Arduino || A legkisebb Arduino || Arduino Pro Mini || Programozás || Arduino Neno: …………………………. További videókért Iratkozz fel YouTube -csatornámra ……. .Ez a projekt arról szól, hogyan lehet a legkisebb és legolcsóbb arduino -t kezelni. A legkisebb és legolcsóbb arduino az arduino pro mini. Hasonló az arduino -hoz