Taula de continguts:
- Subministraments
- Pas 1: història
- Pas 2: teoria i metodologia
- Pas 3: Configuració del maquinari
- Pas 4: Configuració del programari
- Pas 5: Codi Arduino del sensor de color
Vídeo: Sensor de color DIY senzill de Magicbit: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
En aquest tutorial aprendrem sobre com fer un senzill sensor de color mitjançant Magicbit amb Arduino.
Subministraments
- Magicbit
- Cable USB-A a Micro-USB
Pas 1: història
Hola nois, en alguns moments heu d’utilitzar sensors de color per a alguns propòsits. Però pot ser que no sàpigues com funcionen. Així, en aquest tutorial aprendreu sobre com fer un senzill sensor de color de bricolatge mitjançant Magicbit amb Arduino. Comencem.
Pas 2: teoria i metodologia
En aquest projecte esperem ensenyar-vos a construir un sensor de color que pugui detectar els colors vermell, verd i blau. Aquest és un exemple molt bàsic. Llavors, com fer-ho. Amb aquest propòsit utilitzem el mòdul RGB de Magicbit i el LDR incorporat. Primer de tot, heu d’aprendre alguna teoria. Es tracta de la quantitat de reflexió de la llum. Ara us pregunto. Quina superfície de color que reflecteix més la llum de color vermell? També quines superfícies que reflecteixen la majoria de llums verds i blaus. Penseu poc. Però la resposta és senzilla. La superfície de color vermell reflecteix sobretot la llum de color vermell. També les superfícies verdes i blaves reflectiran les llums verdes i blaves. Per tant, en aquest projecte fem servir aquesta teoria. Per reconèixer el color, emetem llums vermells, verds i blaus un a un. Cada vegada que mesurem la quantitat de reflexió mitjançant el valor LDR. Si una mica de llum donarà la major reflexió que altres dues llums, llavors aquesta superfície hauria de reflectir-se sobretot en la superfície de color.
Pas 3: Configuració del maquinari
Això és molt senzill. Connecteu el mòdul RGB al port superior dret de Magicbit. Aquest mòdul té LED WS2812B Neopixel. Aquest LED té 4 pins. Dos per a la potència i dos per a l'entrada i sortida de dades. Com que fem servir un led, només necessitem pins i dades d'alimentació. Si no teniu aquest mòdul, podeu comprar el mòdul Neopixel. Si heu comprat aquest tipus de mòdul, heu de connectar pins i dades d'alimentació a Magicbit. Això és molt fàcil. Connecteu VCC i GND del Magicbit als pins d'alimentació del mòdul RGB i el pin D33 al pin de dades.
Pas 4: Configuració del programari
La major part de la programació. Utilitzem Arduino IDE per programar el nostre Magicbit. Al codi fem servir un parell de biblioteques. Són la biblioteca Adafruit Neopixel per al control de Neopixel LED i la biblioteca Adafruit OLED per al controlador OLED. A la configuració configurem les nostres entrades i sortides. També configureu la pantalla OLED integrada a Magicbit. Al bucle comprovem que el polsador de la mà esquerra està premut o no del Magicbit. Si es prem, el senyal d'entrada és 0. Com que la placa ja la tira cap amunt. Si es prem, fem la comprovació del color. Si no, la pantalla mostrarà la declaració "sense color". Quan es prem el botó, s'encenen automàticament els llums vermells, verds i blaus un per un i emmagatzemen la quantitat de reflexió dels colors en tres variables. A continuació, vam comparar aquests valors i vam seleccionar el color de valor màxim per mostrar com a color de sortida.
Connecteu el cable micro USB a Magicbit i seleccioneu el tipus de placa i els ports com correctament. Ara pengeu el codi. Llavors és el moment de provar el nostre sensor. Per provar-ho, mantingueu paper o full de superfície vermell, verd o blau al mòdul LDR i RGB i premeu el botó esquerre. A continuació, la pantalla OLED mostrarà quin és el color de la superfície. Si no està bé, la raó és que el color té una intensitat de llum elevada. Com a exemple en totes les superfícies verdes, la sortida és vermella, llavors heu de reduir la brillantor de la llum vermella d'alguna quantitat. Com que la llum vermella té una brillantor molt elevada en aquest cas. Per tant, han tingut una gran reflexió. Si no sabeu com controlar la brillantor, consulteu el tutorial a l'enllaç següent.
magicbit-arduino.readthedocs.io/en/latest/
En aquest enllaç podeu trobar com controlar aquest mòdul RGB des de Magicbit. I també podeu trobar com treballar amb LDR i el botó polsador mitjançant Magicbit. Llegiu aquest document i estudieu més a fons com millorar el sensor de color. Perquè aquest és un exemple molt bàsic sobre el funcionament dels sensors de color. La majoria dels tipus de sensors de color funcionen d’aquesta manera. Per tant, intenteu millorar-ho eliminant el soroll de la llum ambiental i altres sorolls.
Pas 5: Codi Arduino del sensor de color
#incloure
#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 display (128, 64); #define LDR 36 #define Botó 35 int R_value, G_value, B_value; void setup () {LED.begin (); LED.show (); pinMode (LDR, INPUT); pinMode (Button, INPUT); display.begin (SSD1306_SWITCHCAPVCC, 0x3C); display.display (); retard (1000); display.clearDisplay (); Serial.begin (9600); } void loop () {if (digitalRead (Button) == 0) {// si es prem el botó LED.setPixelColor (0, LED. Color (0, 50, 0)); // a color vermell LED.show (); retard (100); R_value = analogRead (LDR); // obtén el LED de muntatge vermell.setPixelColor (0, LED. Color (150, 0, 0)); // al LED de color gris.show (); retard (100); G_value = analogRead (LDR); // obtenir un muntatge verd LED.setPixelColor (0, LED. Color (0, 0, 255)); // a bluecolour LED.show (); retard (100); B_value = analogRead (LDR); // obtenir muntatge blau si (R_value> G_value && R_value> B_value) {// El vermell és el més reflectit Pantalla ("VERMELL", 3); } else if (G_value> R_value && G_value> B_value) {// el color verd es mostra més ("VERD", 3); } else if (B_value> R_value && B_value> G_value) {// blau és el més reflectit Pantalla ("BLAU", 3); } Serial.print ("RED ="); Serial.print (R_value); Serial.print ("VERD ="); Serial.print (G_value); Serial.print ("BLAU"); Serial.println (valor_B); } else {LED.setPixelColor (0, LED. Color (0, 0, 0)); // apagat RGB LED.show (); Pantalla ("SENSE COLOR", 2); }} void Display (String commond, int size) {// mostrar dades display.clearDisplay (); display.setTextSize (mida); // Normal: escala 1: 1 píxel display.setTextColor (BLANC); // Dibuixar text en blanc display.setCursor (0, 20); // Comenceu a la cantonada superior esquerra display.println (commond); display.display (); }
Recomanat:
LED USB senzill (i altres coses) de bricolatge senzill i senzill: 16 passos
LED USB (s) senzills i senzills de bricolatge barats (i altres coses): Hola i benvinguts a la meva primera instrucció :) Aposto a que estem configurant i repoblant els espais dels nostres creadors una vegada més després del virus, així que crec que ja és hora que els creadors tots hem après a fabricar els nostres propis USB en lloc de dependre de bateries fàcilment esgotables
Sensor d'alarma de porta amb interruptor magnètic, obert, projecte senzill, 100% en funcionament, codi font indicat: 3 passos
Sensor d'alarma de porta d'interruptor magnètic, obert, projecte senzill, 100% funcionant, codi font donat: Descripció: Hola, faré un tutorial sobre l'alarma del sensor d'interruptor magnètic MC-18 que funciona en mode obert normalment. Tipus de commutador: NO (tipus normal de tancament), el circuit està obert normalment i el circuit es connecta quan l'imant està a prop. La canya
Sensor de humitat del sòl senzill Arduino 7 segments de visualització: 4 passos (amb imatges)
Sensor de humitat del sòl senzill Arduino 7 segment Display: Hello! La quarantena pot ser dura. Tinc la sort de tenir un jardí petit i moltes plantes a la casa i això em va fer pensar que podria fer una petita eina per ajudar-me a cuidar-les mentre estic atrapat a casa. Aquest projecte és senzill i funcional
Sensor de llum senzill amb LED (analògic): 3 passos
Sensor de llum senzill amb un LED (analògic): Hola, en aquest instructiu us mostraré com fer un senzill sensor de llum amb un LED. Bàsicament, aquest circuit només encén el LED quan està exposat a la llum. Per a mi, aquest circuit és inútil perquè no es pot fer molt amb això, però crec que
Llum nocturna de canvi de color barat i senzill LED RGB: 3 passos
Llum nocturna de canvi de color barat i senzill amb LED RGB: Aquest projecte va ser bastant senzill un cop vaig jugar i ho vaig descobrir, cosa que va trigar una estona. La idea és poder canviar el color amb un commutador i tenir un opcions de led dimming també. Aquests són els elements que haureu de c