Taula de continguts:
- Pas 1: parts i components
- Pas 2: planifiqueu el vostre progrés
- Pas 3: Com utilitzar els potenciòmetres
- Pas 4: Esquema de cablejat per al potenciòmetre (3x)
- Pas 5: utilitzar AnalogRead () i variables
- Pas 6: utilitzar el monitor de sèrie amb 1 botó
- Pas 7: utilitzar el LED RGB
- Pas 8: utilitzar potenciòmetres per controlar el LED RGB (amb un error)
- Pas 9: BONUS: funció Map () i codi més net
Vídeo: Mesclador de colors amb Arduino: 9 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Per tliguori330 Segueix més de l'autor:
Quant a: Sempre aprenent ….. Més informació sobre tliguori330 »
Un mesclador de colors és un gran projecte per a tothom que treballa i creix amb Arduino. Al final d'aquest instructiu, podreu barrejar i combinar gairebé tots els colors imaginables girant 3 botons. El nivell d’habilitat és prou baix perquè fins i tot un debutant complet pugui completar-lo amb èxit, però també prou interessant com per ser agradable per a un veterinari experimentat. El cost d’aquest projecte és gairebé nul i la majoria dels kits Arduino inclouen els materials necessaris. Al nucli d’aquest codi hi ha algunes funcions fonamentals d’arduino que tothom que faci servir arduino voldrà entendre. Anirem en profunditat sobre les funcions analogRead () i analogWrite () com nosaltres com una altra funció habitual anomenada map (). Aquests enllaços us portaran a les pàgines de referència arduino per a aquestes funcions.
Pas 1: parts i components
Arduino Uno
Potenciòmetre (x3)
LED RGB
Resistència de 220 ohm (x3)
Cable de pont (x12)
Taula de pa
Pas 2: planifiqueu el vostre progrés
Pot ser molt útil planificar com completareu el vostre projecte. La codificació consisteix en la progressió lògica d’un pas a l’altre. He fet un diagrama de flux que descriu com vull que es faci el meu esbós. L’objectiu general és que tres comandaments (potenciòmetres) controlin cadascun dels tres colors d’un LED RGB. Per aconseguir-ho, haurem de crear un esbós que coincideixi amb el diagrama de flux. Voldrem …
1) Llegiu 3 potenciòmetres diferents i deseu els seus valors en variables.
2) Convertirem aquests valors perquè coincideixin amb l’interval del LED RGB.
3) Després, finalment, escriurem els valors convertits a cadascun dels colors del RGB.
Pas 3: Com utilitzar els potenciòmetres
Un dels components més bàsics dels kits electrònics, el potenciòmetre es pot utilitzar en molts projectes diferents. els potenciòmetres funcionen permetent a l'usuari canviar físicament la resistència del circuit. L’exemple més potent d’un potenciòmetre és un regulador de llum. lliscar o girar un pom canvia la longitud del circuit. un camí més llarg resulta en més resistència. L’augment de la resistència disminueix inversament el corrent i la llum es redueix. Aquests poden tenir diferents formes i mides, però la majoria té la mateixa configuració bàsica. Un estudiant va demanar ajuda per arreglar la seva guitarra i ens vam assabentar que els poms de la mateixa eren exactament els mateixos que els potenciòmetres. En general, les potes externes estaven connectades a terra i 5 volts i la pota central va a un pin analògic com A0
Pas 4: Esquema de cablejat per al potenciòmetre (3x)
La cama més esquerra estarà connectada a 5v i la cama més dreta estarà connectada a GND. En realitat, podeu invertir aquests dos passos i no afectarà molt el projecte. Tot el que canviaria és girar el comandament fins a l’esquerra per obtenir una brillantor total en lloc de desviar-se. La cama mitjana es connectarà a un dels pins analògics de l’Arduino. Com que tindrem tres comandaments, voldrem triplicar la feina que acabem de fer. Cada comandament necessita 5v i GND, de manera que es poden compartir mitjançant una taula de pa. La tira vermella de la placa de pa està connectada a 5 volts i la tira blava està connectada a terra. Cada comandament necessita el seu propi pin analògic perquè estigui connectat a A0, A1, A2.
Pas 5: utilitzar AnalogRead () i variables
Amb el potenciòmetre configurat correctament, estem preparats per llegir aquests valors. Quan volem fer-ho, fem servir la funció analogRead (). La sintaxi correcta és analogRead (pin #); de manera que per llegir el nostre potenciòmetre mitjà aniríem analogRead (A1); Per treballar amb els números que s’envien des del comandament a l’Arduino, també voldrem guardar-los en una variable. La línia de codi realitzarà aquesta tasca mentre llegim el potenciòmetre i desem el seu número actual a la variable sencera "val"
int val = analogRead (A0);
Pas 6: utilitzar el monitor de sèrie amb 1 botó
Actualment podem obtenir valors dels comandaments i emmagatzemar-los en una variable, però seria útil que poguéssim veure aquests valors. Per fer-ho, hem de fer ús del monitor sèrie incorporat. El codi següent és el primer esbós que realment executarem a l'IDE Arduino que es pot descarregar al seu lloc. A la configuració buida () activarem els pins analògics connectats a cada pota mitjana com a INPUT i activarem el monitor Serial mitjançant Serial.begin (9600); a continuació, només llegim un dels comandaments i el guardem en una variable com abans. El canvi ara és que hem afegit una línia que imprimeix quin nombre s’emmagatzema a la variable. Si compileu i executeu l’esbós, podeu obrir el monitor sèrie i veure els números que es desplacen a la pantalla. Cada vegada que el codi fa bucles, estem llegint i imprimint un altre número. Si gireu el comandament connectat a A0 hauríeu de veure valors que oscil·len entre 0-1023. més endavant l'objectiu serà llegir els 3 potntiòmetres que requeririen 2 lectures analògiques més i 2 variables diferents per desar i imprimir.
configuració nul·la () {
pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); Serial.begin (9600); } bucle buit () {int val = analogRead (A0); Serial.println (val); }
Pas 7: utilitzar el LED RGB
El LED RGB de quatre potes i un dels meus components preferits per Arduino. Em sembla fascinant la manera com és capaç de crear infinites colors a partir de mescles de 3 colors bàsics. La configuració és similar a qualsevol LED normal, però aquí bàsicament tenim un LED vermell, blau i verd combinat. Les potes curtes seran controlades per un dels pins PWM de l’arduino. La pota més llarga estarà connectada a 5 volts o a terra, depenent de la vostra en un ànode comú o un LED de càtode comú. Haureu de provar les dues maneres de solucionar aquest problema. Ja tindrem 5v i GND connectats a la taula de treball perquè sigui fàcil de canviar. El diagrama anterior mostra també l’ús de 3 resistències. De fet, salto aquest pas sovint, ja que no ho he tingut i em va saltar el LED.
Per fer colors utilitzarem la funció analogWrite () per controlar la quantitat de vermell, blau o verd que cal afegir. Per utilitzar aquesta funció, heu de dir amb quin pin # parlarem i un número entre 0-255. 0 està completament apagat i 255 és la quantitat màxima d’un color. Connectem la cama vermella al pin 9, el verd al pin 10 i el blau al pin 11. Això pot suposar una prova i un error per esbrinar quina pota té quin color. Si volgués fer una tonalitat porpra, podria fer molt de color vermell, sense verd i potser la meitat de blau. Us animo a jugar amb aquests números, és realment emocionant. Alguns exemples habituals es mostren a les imatges anteriors
configuració nul·la () {
pinMode (9, OUTPUT); pinMode (10, OUTPUT); pinMode (11, OUTPUT); } bucle buit () {analogWrite (9, 255); analogWrite (10, 0); analogWrite (11, 125)}
Pas 8: utilitzar potenciòmetres per controlar el LED RGB (amb un error)
És hora de començar a fusionar els nostres dos codis. Hauríeu de disposar d’espai suficient en una tauleta de pa estàndard per adaptar-se als 3 comandaments i al LED RGB. La idea és, en lloc d’escriure els valors de vermell blau i verd, utilitzarem els valors guardats de cada poteniòmetre per canviar els colors constantment. necessitarem 3 variables en aquest cas. el redval, el greenval i el blueval són variables diferents. Tingueu en compte que podeu anomenar aquestes variables com vulgueu. si gireu el pom "verd" i canvieu la quantitat vermella, podeu canviar els noms perquè coincideixin correctament. ara podeu girar cada botó i controlar els colors !!
configuració nul·la () {
pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); pinMode (9, OUTPUT); pinMode (10, OUTPUT); pinMode (11, OUTPUT); } void setup () {int redVal = analogRead (A0); int greenVal = analogRead (A1); int blueVal = analogRead (A2); analogWrite (9, redVal); analogWrite (10, greenVal); analogWrite (11, blueVal); }
Pas 9: BONUS: funció Map () i codi més net
És possible que noteu que a mesura que comenceu a girar el botó per obtenir un color creixerà i, de sobte, baixarà fins a apagar-lo. Aquest patró de creixement i apagat ràpidament es repeteix 4 vegades a mesura que gireu el comandament fins a dalt. Si recordeu, hem dit que els potenciòmetres poden llegir valors entre 0 i 1023. La funció analogWrite () només accepta valors entre 0 i 255. Un cop el potenciòmetre supera 255, bàsicament torna a començar a 0. Hi ha una bona funció per ajudar a error anomenat map (). podeu convertir un interval de números en un altre rang de números en un sol pas. convertirem números de 0-1023 en números de 0-255. Per exemple, si el comandament es va configurar a la meitat del recorregut, hauria de dir-se aproximadament 512. aquest nombre es canviaria a 126, que és la meitat de la força del LED. En aquest esbós final vaig anomenar els pins amb noms de variables per a la meva comoditat. Ara teniu un mesclador de colors complet per experimentar !!!
// noms de variables per als pins del potenciòmetre
int RedPot = A0; int greenPot = A1; int bluePot = A2 // noms de variables per als pins RGB int redLED = 9; int greenLED = 10; int blueLED = 11; void setup () {pinMode (redPot, INPUT); pinMode (greenPOT, INPUT); pinMode (bluePot, INPUT); pinMode (redLED, OUTPUT); pinMode (greenLED, OUTPUT); pinMode (blueLED, OUTPUT); Serial, begin (9600); } void loop () {// llegir i desar valors dels potenciòmetres int redVal = analogRead (redPot); int greenVal = analogRead (greenPot); int blueVal - analogRead (bluePot); // converteix els valors de 0-1023 a 0-255 per al LED RGB redVal = map (redVal, 0, 1023, 0, 255); greenVal = mapa (greenVal, 0, 1023, 0, 255); blueVal = mapa (blueVal, 0, 1023, 0, 255); // escriviu aquests valors convertits a cada color del LED RGB analogWrite (redLED, redVal); anaogWrite (greenLED, greenVal); analogWrite (blueLED, blueVal); // mostra els valors al monitor sèrie Serial.print ("vermell:"); Serial.print (redVal); Serial.print ("verd:"); Serial.print (greenVal); Serial.print ("blau:"); Serial.println (blueVal); }
Recomanat:
Preamplificador de mesclador de 4 micròfons: 6 passos (amb imatges)
Preamplificador del mesclador de 4 micròfons: Fa un temps em van demanar que resolgués el següent problema: un cor petit toca un nombre de quatre micròfons fixos. Els senyals d'àudio d'aquests quatre micròfons s'havien d'amplificar, barrejar i el senyal resultant s'havia d'aplicar a una potència d'àudio a
Fer un mesclador d'àudio: 20 passos (amb imatges)
Fer un mesclador d’àudio: aquest senzill mesclador d’àudio estèreo de bricolatge demostra les resistències que s’utilitzen. Quan dic estèreo, no parlo del vostre senyal d’entreteniment domèstic, sinó d’una pista d’àudio amb un canal esquerre i dret separat. Aquest mesclador ens permetrà combinar dos
Selector de colors Arduino RGB: seleccioneu els colors dels objectes de la vida real: 7 passos (amb imatges)
Arduino RGB Color Picker: seleccioneu els colors dels objectes de la vida real: escolliu fàcilment els colors dels objectes físics amb aquest selector de colors RGB basat en Arduino, que us permetrà recrear els colors que veieu als objectes de la vida real al vostre PC o telèfon mòbil. Simplement premeu un botó per escanejar el color de l'objecte amb un TCS347 barat
Mesclador de sons analògics i digitals: 7 passos (amb imatges)
Mezclador De Sonidos Analógicos Y Digital: Hola este es mi primer instructables y se har á n m á sEste projecte va ser per “ Computaci ó n f í sica ” un m ó dulo de formaci ó n en ciències b á sicas de ingenier í a multimedia del 3 a ñ o e
Mesclador automàtic de cartes: 6 passos (amb imatges)
Mescla automàtica de cartes: Hola! Aquesta instrucció es va crear per complir els requisits del projecte del Makecourse de la Universitat del Sud de Florida. (www.makecourse.com) En aquest instructiu us guiaré a través del procés de creació d'una barreja automàtica de cartes