Tartalomjegyzék:
- Kellékek
- 1. lépés: Történet
- 2. lépés: Elmélet és módszertan
- 3. lépés: Hardver beállítása
- 4. lépés: Szoftver beállítása
- 5. lépés: Arduino színérzékelő kódja
Videó: Egyszerű DIY színérzékelő a Magicbit -től: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
Ebben az oktatóanyagban megtanuljuk, hogyan lehet egyszerű színérzékelőt készíteni a Magicbit és az Arduino segítségével.
Kellékek
- Magicbit
- USB-A-Micro-USB kábel
1. lépés: Történet
Sziasztok srácok, időnként színérzékelőket kell használni bizonyos célokra. De lehet, hogy nem tudod, hogyan működnek. Tehát ebben az oktatóanyagban megtudhatja, hogyan lehet egyszerű DIY színérzékelőt készíteni a Magicbit és az Arduino segítségével. Kezdjük.
2. lépés: Elmélet és módszertan
Ebben a projektben elvárjuk, hogy megtanítsuk Önt színérzékelő készítésére, amely képes észlelni a piros, zöld és kék színeket. Ez nagyon alapvető példa. Tehát hogyan kell ezt megtenni. Ebből a célból a Magicbit RGB modulját és a beépített LDR -t használjuk. Először is meg kell tanulnod néhány elméletet. Ez a fényvisszaverődés mennyiségéről szól. Most kérdezek tőled. Melyik színes felület tükrözi leginkább a vörös színű fényt? És milyen felületek tükrözik leginkább a zöld és a kék fényt. Gondolkozz egy kicsit. De a válasz egyszerű. A vörös színű felület többnyire vörös színű fényt tükröz. A zöld és kék felületek szintén zöld és kék fényeket tükröznek. Tehát ebben a projektben ezt az elméletet használjuk. A szín felismeréséhez egyenként vörös, zöld és kék fényt bocsátunk ki. Minden alkalommal LDR érték segítségével mérjük a visszaverődés mértékét. Ha valamelyik fény a legtöbb tükröződést adja, mint a másik két fény, akkor ennek a felületnek többnyire visszavert színű felületnek kell lennie.
3. lépés: Hardver beállítása
Ez nagyon egyszerű. Csatlakoztassa az RGB modult a Magicbit jobb felső portjához. Ez a modul WS2812B Neopixel LED -del rendelkezik. Ennek a LED -nek 4 csapja van. Kettő a tápellátáshoz, kettő az adatok ki- és bekapcsolásához. Mivel egy LED -et használunk, csak tápcsatlakozókra és adatokra van szükségünk. Ha nincs meg az a modul, megvásárolhatja a Neopixel modult. Ha ilyen modult vásárolt, akkor csatlakoztassa a tápcsatlakozókat és az adatokat pin -ben a Magicbit -hez. Ez nagyon könnyű. Csatlakoztassa a Magicbit VCC -jét és GND -jét az RGB modul tápcsatlakozóihoz és a D33 tűt az adatcsaphoz.
4. lépés: Szoftver beállítása
A legtöbbet a programozás végzi. Arduino IDE -t használunk a Magicbit programozásához. A kódban néhány könyvtárat használunk. Ezek az Adafruit Neopixel könyvtár a Neopixel LED vezérléséhez és az Adafruit OLED könyvtár az OLED fogantyúhoz. A beállítás során konfiguráljuk a bemeneteket és kimeneteket. Konfigurálja a Magicbit beépített OLED kijelzőjét is. A ciklusban ellenőrizzük, hogy a bal oldali nyomógomb megnyomva van -e vagy nem a Magicbit. Ha megnyomta, a bemeneti jel 0. Mivel a tábla már felhúzta. Ha megnyomta, színellenőrzést végzünk. Ha nem, akkor a képernyőn megjelenik a "nincs szín" kiírás. Amikor megnyomja a gombot, automatikusan kapcsolja be egyenként a piros, zöld és kék fényeket, és tárolja a színek visszaverődési mennyiségét három változóba. Ezután összehasonlítottuk ezeket az értékeket, és kiválasztottuk a maximális érték színét, hogy megjelenjen kimeneti színként.
Csatlakoztassa tehát a mikro -USB -kábelt a Magicbit -hez, és válassza ki a kártya típusát és a kom portokat. Most töltse fel a kódot. Akkor itt az ideje, hogy teszteljük az érzékelőnket. Ennek teszteléséhez tartson piros, zöld vagy kék felületű papírt vagy lapot az LDR és RGB modulon, majd nyomja meg a bal oldali nyomógombot. Ezután az OLED kijelző megmutatja a felület színét. Ha ez rossz, az oka annak, hogy bizonyos színek nagy fényerősségűek. Példaként minden zöld felületen a kimenet vörös, akkor bizonyos mennyiségről csökkentenie kell a vörös fény fényességét. Mivel a vörös fény ebben az esetben nagyon nagy fényerejű. Tehát nagy a visszaverődése. Ha nem tudja, hogyan kell szabályozni a fényerőt, olvassa el az alábbi linken található oktatóanyagot.
magicbit-arduino.readthedocs.io/en/latest/
Ezen a linken megtalálhatja, hogyan vezérelheti az adott RGB modult a Magicbit segítségével. Azt is megtudhatja, hogyan kell dolgozni az LDR -rel és a nyomógombbal a Magicbit segítségével. Olvassa el ezt a dokumentumot, és tanulmányozza tovább, hogyan javíthatja a színérzékelőt. Mert ez nagyon alapvető példa a színérzékelők működésére. A legtöbb színérzékelő ilyen módon működik. Tehát próbálja ezt javítani a környezeti fényzaj és egyéb zajok eltávolításával.
5. lépés: Arduino színérzékelő kódja
#befoglalni
#define LED_PIN 33
#define LED_COUNT 1 Adafruit_NeoPixel LED (LED_COUNT, LED_PIN, NEO_RGB + NEO_KHZ800); #include #include #include #define OLED_RESET 4 Adafruit_SSD1306 kijelző (128, 64); #define LDR 36 #define Button 35 int R_value, G_value, B_value; void setup () {LED.begin (); LED.show (); pinMode (LDR, INPUT); pinMode (gomb, INPUT); display.begin (SSD1306_SWITCHCAPVCC, 0x3C); display.display (); késleltetés (1000); display.clearDisplay (); Sorozat.kezdet (9600); } void loop () {if (digitalRead (Button) == 0) {// ha a gombot megnyomják LED.setPixelColor (0, LED. Color (0, 50, 0)); // a vörös színű LED -en.show (); késleltetés (100); R_érték = analógRead (LDR); // kap piros rögzítést LED.setPixelColor (0, LED. Color (150, 0, 0)); // on greencolour LED.show (); késleltetés (100); G_value = analogRead (LDR); // get green mount LED.setPixelColor (0, LED. Color (0, 0, 255)); // a kék színű LED -en.show (); késleltetés (100); B_érték = analóg olvasás (LDR); // kap kék rögzítést, ha (R_érték> G_érték && R_érték> B_érték) {// a piros a legjobban tükröződik Kijelző ("PIROS", 3); } else if (G_érték> R_érték && G_érték> B_érték) {// zöld a legjobban tükröződik Kijelző ("ZÖLD", 3); } else if (B_érték> R_érték && B_érték> G_érték) {// a kék a legjobban tükröződik Kijelző ("KÉK", 3); } Serial.print ("RED ="); Soros.nyomtatás (R_érték); Serial.print ("ZÖLD ="); Serial.print (G_value); Serial.print ("KÉK ="); Soros.println (B_érték); } else {LED.setPixelColor (0, LED. Color (0, 0, 0)); // ki RGB LED.show (); Kijelző ("NO COLOR", 2); }} void Display (String commond, int size) {// display data display.clearDisplay (); display.setTextSize (méret); // Normál 1: 1 képpont méretű kijelző.setTextColor (FEHÉR); // Fehér szöveg rajzolása display.setCursor (0, 20); // Kezdje a bal felső sarokban lévő kijelzővel.println (közös); display.display (); }
Ajánlott:
Oktatóanyag: A TCS230 RGB színérzékelő érzékelő használata Arduino UNO -val: 3 lépés
Oktatóanyag: A TCS230 RGB színérzékelő érzékelőjének használata az Arduino UNO -val: Leírás: Ez az oktatóanyag néhány egyszerű lépést mutat be az RGB színérzékelő érzékelő Arduino Uno használatával történő használatáról. Ennek az oktatóanyagnak a végén számos összehasonlítási eredményt kap néhány szín között. A TCS3200 teljes színmeghatározást biztosít
Színérzékelő LCD képernyővel: 6 lépés
Színérzékelő LCD -képernyővel: A cél egy olyan eszköz létrehozása, amely lehetővé teszi a színvakok számára a színek észlelését anélkül, hogy látniuk kellene a színt. Ha az LCD -képernyőt az érzékelővel használja, akkor a színek felveszik, majd szavakra viszik át az LCD -képernyőn. Ez a készülék
RFID + színérzékelő IoT projekt: 7 lépés
RFID + Színérzékelő IoT Projekt: Ennek a projektnek az az ötlete, hogy jutalmazza azokat az embereket, akik kávéscsészékből isznak, és megfelelően ártalmatlanítják őket. Vegyünk például egy olyan céget, mint Tim Hortons; 2014 -ben 2 milliárd csésze kávét szolgáltak fel évente. Bár a csészéik újrahasznosíthatók
Egy Arduino WiFi hálózat (érzékelők és működtetők) - a színérzékelő: 4 lépés
Egy Arduino WiFi hálózat (érzékelők és működtető egységek) - a színérzékelő: Hányszor van olyan alkalmazás az Ön alkalmazásaiban, amely távol van tőled? Mennyire lehet kényelmes, ha egyetlen mester eszközt használ a számítógép közelében a wifi hálózaton keresztül csatlakoztatott különböző szolga eszközök kezelésére? Ebben a projektben
Színérzékelő: 5 lépés (képekkel)
Színérzékelő: Leírás: A színérzékelő modul egy teljes színérzékelő, amely 4 fehér LED -et és TAOS TCS3200 RGB érzékelő chipet tartalmaz. A négy fehér LED széles spektrumú fényforrást biztosít. A TCS230 8 x 8 fotodióda -sorral rendelkezik, színszűrővel