Taula de continguts:
- Pas 1: explorar la idea
- Pas 2: maquinari
- Pas 3: Muntatge
- Pas 4: controlar?
- Pas 5: fer-ho fàcil
- Pas 6: primers experiments
- Pas 7: control en temps real
- Pas 8: Conclusions
Vídeo: Llum ambiental interactiva: 8 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:16
Aquest és el meu primer instructable! Si us plau, tingueu en compte mentre lluito per escriure un anglès adequat. No dubteu a corregir-me! Vaig començar aquest projecte just després de començar el concurs "Let it glow". M’agradaria haver fet molt més i haver acabat el que volia fer. Però, entre l’escola i la feina, no m’ha quedat tant de temps com desitjava. Tot i això, deixo aquí un informe dels meus experiments com a instructiu, perquè tothom pugui provar de fer el que vaig fer. Aquesta instrucció no pretén servir com a guia i ensenyar a fer aquest artifici. No és una guia per a principiants en electrònica. És més com compartir una idea i un objectiu que vull perseguir. Si sou un principiant / complet ignorant de l’electrònica i voleu fer alguna cosa així, ho sento. Però sempre podem intentar ajudar-lo. Vegeu l’últim pas. Ja hem vist molts projectes de llum ambiental. La majoria d'ells utilitzen LED RGB: - Per il·luminar una habitació amb un sol color, configurant un ambient que coincideixi amb el vostre estat d'ànim - Per crear efectes de llum a partir del color del televisor / monitor o de l'àudio. Fins i tot n’hi ha uns quants a instructables.com Relacionats: Sistemes de llum ambiental de bricolatge Il·luminació ambiental de la barra de llum Construir les vostres pròpies barres d’il·luminació de color ambient Utilitzant aquesta competència com a excusa, vaig començar un projecte que feia temps que pensava. Sempre he volgut fer alguna cosa semblant a aquestes llums ambientals i omplir les parets de la meva habitació amb LED RGB. Però, fent un pas més enllà, fent que tots i cadascun d’ells siguin controlables. Amb esperança, aquest projecte tindrà com a resultat un kit electrònic de codi obert per a aficionats i informàtics electrònics, que permetrà la pirateria de maquinari / programari i la integració sensorial. Aquí teniu una petita vista prèvia del que vaig fer:
Pas 1: explorar la idea
Vull poder omplir les parets de la meva habitació amb LED RGB, controlant el color i la brillantor de cada led. Vaig a utilitzar un microcontrolador per facilitar-ne l’ús i la flexibilitat. Malauradament, no puc controlar centenars de LEDs amb els pocs pins disponibles als microcontroladors. Fins i tot seria difícil codificar el control de tants LEDs. Així que vaig decidir dividir tots els LEDs en diverses barres més petites i per a cada barra podia utilitzar un microcontrolador. Després, faria servir les capacitats de comunicació dels microcontroladors per compartir informació entre ells. Aquesta informació podria ser el color i la brillantor dels LED, els patrons / seqüències de colors i la informació sensorial. Per a cada barra vaig decidir utilitzar 16 LED RGB. Això es tradueix en un bar ni massa gran ni petit. D’aquesta manera, faig servir un nombre acceptable de recursos per a cada led, reduint els costos de cada barra. No obstant això, 16 LED RGB són 48 LED (3 * 16 = 48) que el microcontrolador pot controlar. Tenint en compte els costos, vaig decidir utilitzar el microcontrolador més barat que podria utilitzar. Això vol dir que el microcontrolador només tindrà fins a 20 pins d'E / S, no suficient per a 48 LEDs. No vull utilitzar cap tipus de disc dur, ja que l'objectiu del projecte és il·luminar una habitació. alternativa que se m’acut que fa servir algun tipus de registre de tornes bloquejat Reprendre: - Fer llum ambiental interactiva - Fer una barra estàndard de LED controlables - Possibilitat de connectar diverses barres per omplir una sala - Permetre l’adaptació / configuració de l’usuari i la integració sensorial
Pas 2: maquinari
Com es va dir al pas anterior, vull fer diverses barres per il·luminar una habitació. Això recorda el problema dels costos. Intentaré que cada barra sigui la forma més rendible possible. El microcontrolador que he utilitzat era un AVR ATtiny2313. Aquests són bastant barats i en tenia uns quants estirats. ATtiny2313 també té una interfície sèrie universal i una interfície USART que es faran útils en els passos següents. També tenia tres expansors de ports d'E / S I2C de 16 bits MCP23016, el nombre correcte. He utilitzat cada expansor de ports per controlar un color dels 16 LED. Els LED … Malauradament, van ser els més econòmics que vaig poder trobar. Són 48 vermells, verds i blaus ~ 10000mcd 5mm amb un angle de 20 graus. Això no hauria d’importar per ara, ja que aquest és només un prototip. Malgrat aquest fet, el resultat és força maco! Estic executant el microcontrolador a 8 MHz. El bus I2C té un rellotge de 400 kHz. La freqüència de commutació del LED és d’uns 400 Hz. D’aquesta manera, si sóc capaç de conduir 48 LED sense arribar al límit, en faré més per més endavant.
Pas 3: Muntatge
Després de dissenyar el circuit, el vaig construir en diverses taules de suport, amb finalitats de prototipatge. Després de diverses hores tallant cables i muntant el circuit, he obtingut aquest resultat: una taula de pa gegant amb 48 LEDs i tones de filferro.
Pas 4: controlar?
Aquesta és la part més difícil del projecte. Volia fer un algorisme de control prou genèric per manejar patrons / seqüències i controlar també la brillantor i el color de cada LED. Per controlar els LED he d’enviar al MCP23016 un fotograma de 4 bytes. (1 byte = 8 bits). Un byte amb l'adreça del corresponsal IC al color, 1 byte amb l'ordre "write" i 2 bytes amb el valor dels 16 bits (LED). El CI està connectat als LED com a "pica", és a dir, un valor lògic 0 al pin il·luminarà el LED. I ara la part més difícil, com fer el control PWM per a 48 LED? Estudiem el PWM per a un LED. PWM va explicar @ Wikipedia. Si vull que la brillantor del LED sigui del 50%, el meu valor PWM és del 50%. Això significa que el LED, en un període de temps, hauria d’estar en la mateixa quantitat que apagat. Prenem un període d'1 segon. Un PWM del 50% significa que en aquest 1 segon, el temps d’activació és de 0,5 segons i el temps d’aturada és de 0,5 segons. PWM del 80%? 0,2 segons de descompte, 0,8 segons d’activació. Fàcil, oi? Al món digital: amb un període de 10 cicles de rellotge, el 50% significa que el LED està encès durant 5 cicles i que el LED està apagat durant 5 cicles més. 20%? 2 cicles activats, 8 cicles apagats. 45%? Bé, realment no podem obtenir un 45% … Com que el període és en cicles i només tenim 10 cicles, només podem dividir el PWM en un 10%. Això significa que l’evolució del pin ha de ser del 50%: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0; O fins i tot 1, 0, 1, 0, 1, 0, 1, 0, 1, 0; a la programació podem fer que aquesta seqüència d’encendre i apagar sigui una matriu. Per a cada cicle, sortim al pin el valor de l’índex en què es trobava el cicle. Tenia sentit fins ara? Si volem fer LED0 al 50% i LED1 al 20%, podem afegir les dues matrius.: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0; Per conduir el pin LED1: 2, 2, 0, 0, 0, 0, 0, 0, 0, 0; Resultat en LED0 + LED0: 3, 3, 1, 1, 1, 0, 0, 0, 0, 0; Sortint aquesta seqüència de nombres a l'IC d'expansió de ports, obtindríem el LED0 amb un 50% de brillantor i el LED1 amb un 20%! Senzill per a 2 LED, oi? Ara hem de fer això per a 16 LEDs per a cada color. Per a cadascuna d’aquestes matrius, tenim una combinació de brillantor per a cada color (16 LED). Cada vegada que volem una altra combinació de colors, hem de canviar aquesta matriu.
Pas 5: fer-ho fàcil
El pas anterior és massa feina per fer una seqüència simple … Així que vaig decidir fer un programa, on expliquem els colors de cada LED en un pas de la seqüència i obtenim les tres matrius del pas. He creat aquest programa a LabView a causa de restriccions de temps.
Pas 6: primers experiments
Carregant diversos passos al microcontrolador i obtenim alguna cosa així: Disculpeu la mala qualitat dels vídeos. He definit el nombre màxim de passos d’una seqüència a 8 i he limitat el PWM al 20% de salts. Aquesta decisió es basa en el tipus de control que estic fent servir i en la quantitat d'EEPROM que té l'ATtiny2313. En aquests experiments he intentat veure quin tipus d'efectes podria fer. He de dir que estic satisfet amb el resultat.
Pas 7: control en temps real
Com es va esmentar en passos anteriors, vull comunicar-me amb tots els microcontroladors que controlen els LED de la meva habitació. Així que vaig utilitzar la interfície USART disponible a ATtiny2313 i la vaig connectar al meu ordinador. També he creat un programa a LabView per controlar la barra LED. En aquest programa puc dir al microcontrolador quant de temps dura la seqüència, el color de cada LED i el temps entre passos d’una seqüència. demostrar com puc canviar el color dels LED i definir seqüències.
Pas 8: Conclusions
Crec que vaig tenir èxit en aquest primer enfocament del meu projecte. Puc controlar 16 LED RGB amb pocs recursos i limitacions. És possible controlar cada LED per separat, creant qualsevol seqüència desitjada.
Treballs futurs:
Si rebo comentaris positius de la gent, puc desenvolupar aquesta idea i fer un kit electrònic complet de bricolatge, amb plaques de circuits impresos i instruccions de muntatge.
Per a la meva pròxima versió, faré el següent: -Canviaré el microcontrolador per un amb ADC -Canviaré el MCP23016 per algun altre tipus de sortida en paral·lel que pugui enfonsar més corrent dels LED -Feu programari de codi obert per comunicar-vos amb el microcontrolador i controlar els LED -Desenvolupar la comunicació entre diversos microcontroladors.
Tens algun suggeriment o pregunta? O deixa un comentari!
Finalista del programa Let It Glow!
Recomanat:
Arduino Nano - Tutorial del sensor de llum ambiental TSL45315: 4 passos
Arduino Nano - Tutorial del sensor de llum ambiental TSL45315: TSL45315 és un sensor de llum ambiental digital. S’aproxima a la resposta de l’ull humà en diverses condicions d’il·luminació. Els dispositius tenen tres temps d’integració seleccionables i proporcionen una sortida lux de 16 bits directa a través d’una interfície de bus I2C. El dispositiu co
Raspberry Pi - Tutorial Java del sensor de llum ambiental TSL45315: 4 passos
Raspberry Pi: sensor de llum ambiental TSL45315 Tutorial de Java: TSL45315 és un sensor de llum ambiental digital. S’aproxima a la resposta de l’ull humà en diverses condicions d’il·luminació. Els dispositius tenen tres temps d’integració seleccionables i proporcionen una sortida lux de 16 bits directa a través d’una interfície de bus I2C. El dispositiu co
Controlador Bluetooth de tira LED RGB V3 + Sincronització de música + Control de llum ambiental: 6 passos (amb imatges)
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control: Aquest projecte utilitza arduino per controlar una tira LED RGB amb el telèfon mitjançant bluetooth. Podeu canviar de color, sincronitzar els llums amb la música o ajustar-los automàticament per a la il·luminació ambiental
Llum ambiental programable per a pantalla externa: 4 passos
Llum ambiental programable per a visualització externa: aquest projecte us ajuda a configurar la llum ambiental per al vostre monitor extern o televisor i us permet controlar el següent des de la comoditat de QUALSEVOL dispositiu que tingui un navegador web i estigui connectat al vostre encaminador. Color LED: freqüència de parpelleig que dóna un efecte DJ
Mini llum de nit de llum de nit / llum: 5 passos
Llum / làmpada nocturna de nit de mini LED: primer, hauria de dir que es va inspirar en la làmpada LED de peu Mini de Sunbanks. En lloc d’utilitzar un biro per mantenir el led allunyat de l’escriptori, he utilitzat un clar perspex per projectar la llum de la base. Aquest petit projecte és un prototip