Construisez votre propre éclairage dynamique ambiante pour un media center

media center lumièreSi vous regardez beaucoup de films sur votre PC ou d`un centre des médias, je suis sûr que vous avez fait face l`éclairage dilemma- vous tournez complètement toutes les lumières? Avez-vous les garder à fond? Ou vous utilisez un gradateur pour garder une lueur jaune terne quelque part? Eh bien, ne plus souffrir.

Pour moins de 100 $, vous pouvez mettre en place un système d`éclairage étonnant qui va refléter ce qui est sur-écran- si la vidéo est une scène de bleu nuit, les lumières seront bleu- quand une flamme de feu d`orange clignote sur, ainsi que vos lumières . Bienvenue au monde de l`éclairage RGB ambiante.

Composants

  • bande de lumière RGB - Ce qui est une bande de 5 mètres de LED RGB qui peuvent être achetés sur eBay et expédiés de Hong Kong pour moins de £ 20 chacun. Si vous achetez dans les magasins d`électronique, vous devrez payer par le compteur et une bobine de 5m va coûter trois ou quatre fois, afin d`acheter en ligne. Ces types de bandes de LED peut être changé pour toutes les couleurs, mais seulement tout à la fois - ils ne peuvent pas être ajustés individuellement.
  • 12v alimentation - La puissance (ampage) requis dépend de la façon dont de nombreuses bandes de LED vous serez connectez. Chaque mètre tire approximativement 0,6 ampères, mais cela dépend de la densité de vos LEDs alors assurez-vous de vérifier votre bande de LED particulière. 3A serait suffisant pour la bande de 5m je liés ci-dessus, et des alimentations séparées peut être acheté pour environ £ 10 si vous ne pouvez pas une seule source ailleurs.
  • 3 x MOSFET N transistors - Vous pouvez probaby trouver moins cher, mais j`acheté un pack de 6 (Type STP16NF06FP) pour environ £ 10. Celles-ci sont utilisées pour isoler le courant de l`Arduino - raccorder les bandes directement à l`Arduino pourrait le faire revenir à la quantité de courant qu`ils tirent. Vous avez besoin de 1 transistor MOSFET par canal de couleur de LED, Rouge, Vert et Bleu.
  • Arduino - Je ne l`ai pas inclus le coût de ce point car il est supposé que vous aurez déjà un, et il y a une variété de clones, vous pouvez acheter si vous ne pouvez pas payer un officiel.

Le coût total était donc autour £ 40 non compris le Arduino.

introduction

Le projet se compose de deux parties. D`abord, nous allons créer un circuit Arduino de base qui écoute aux commandes de l`ordinateur, et fixe les LED RGB à une couleur appropriée. La seconde consiste à utiliser une nouvelle application appelée En traitement et Java sur le côté de l`ordinateur - de travailler sur ce que les couleurs sont actuellement à l`écran, en moyenne, et que la sortie du port de communication série pour le Arduino réagir à.

Partie 1: Circuit et Arduino

Le circuit que nous utilisons est très simple comme vous pouvez le voir sur le diagramme ci-dessous. La bande LED doit être fourni avec une prise mâle à une extrémité que vous pouvez placer directement dans la maquette.

media center lumière

Votre bande de LED peut varier, mais si vous regardez attentivement, vous verrez 12 V, R, G, B écrit sur les rails quelque part. Ces bandes peuvent effectivement être coupés à ces points de cuivre (tous les 3 LEDs sur celles que j`ai), donc si vous voulez couper les bandes dans les coins de votre téléviseur, vous pouvez le faire en toute sécurité que - vous ne devez pas utiliser l`ensemble 5m soit , de sorte que vous pouvez avoir une certaine gauche pour un projet futur. Connecter le 12v positif directement à l`alimentation externe.

éclairage dynamique ambiante

Les MOSFET ont trois Goupilles porte, drainer, et la source. La porte est comme le commutateur électronique qui l`Arduino contrôlera. Ceci permet de déterminer ensuite le courant qui circule entre la source et le drain. Le drain de chaque MOSFET doit être relié au sol de l`Arduino, et le sol de l`alimentation, tandis que la source se connecte à des canaux de bande LED.

éclairage dynamique ambiante

Lorsque vous avez terminé le circuit, télécharger et exécuter ce code de test (originaire de Ladyada, épingles modifiées). Vous devriez voir votre tourbillon de bande de LED à travers une variété de couleurs.

éclairage dynamique ambiante

Partie 2: Traitement

Télécharger En traitement et courir. Vous pourriez être surpris de trouver qu`il semble presque exactement comme le développement respectueux de l`environnement Arduino qui est parce que l`environnement Arduino est basé sur lui, si les deux fonctions différentes. Prenez ce code - à l`origine par République Silicon mais fortement modifiée par moi pour faire les réglages de taille d`écran automatique et avec une meilleure représentation des couleurs - Et de prendre un moment pour regarder au-dessus. Fondamentalement, il utilise une classe Java appelée Robot de faire une capture d`écran à chaque 10ms- il prend alors à chaque pixel impair et moyennes de la couleur totale. Si la performance est un problème pour vous, augmenter la skipValue variable pour 3 ou 4 pour passer plus de pixels - l`effet global devrait être la même, mais il va courir plus vite car il examine moins de pixels. Enfin, j`ai ajouté un filtre qui permet de saturer la couleur en augmentant le maximum et de diminuer les valeurs minimales RVB trouvés (Sans cela, je trouve les couleurs sont trop blanc). 

Exécutez le app- la première fois, vous obtiendrez probablement une erreur car il tente d`accéder au port série mal.

éclairage dynamique ambiante

Vérifiez la fenêtre de débogage pour une liste de ports série en cours, et notez le numéro à côté de ce que votre Arduino est branché. Dans mon cas, sur un Mac, la connexion USB est le port 4. Modifiez le numéro de cette ligne au bon port:

port = nouveau (cela, Serial.list () [4], 9600) de série - // set vitesse de transmission

Enregistrer et re-Exécuter- vous devriez voir une petite fenêtre pop up - ce qui représente la couleur moyenne de tout sur l`écran. Lancez une application de peinture ou quelque chose avec des couleurs fortes pour le tester, sinon il va probablement afficher une teinte sombre du gris. Arrêtez l`application lorsque vous avez fini de tester que nous avons besoin de l`accès au port série pour programmer l`Arduino.

media center lumière

Enfin, charger ce code sur votre Arduino. Au lieu d`envoyer des couleurs aléatoires à la bande de LED, ce code lit les valeurs du port série (qui Processing est sortie vers). Il est assez facile à comprendre, la seule partie difficile est peut-être l`utilisation d`un marqueur dans les données de série:

if (Serial.available ()> = 4) {if (Serial.read () == 0xff) {rouge = Serial.read () - vert = Serial.read () - bleu = Serial.read () -}}

Cela garantit que nous lisons les valeurs d`octets corrects - l`application de traitement émet un marqueur comme un "point d`arrêt" entre chaque ensemble de valeurs de sorte que l`Arduino ne sortira pas de la synchronisation et de penser que la valeur verte est pour le bleu, etc.

Une fois le code Arduino est téléchargé (il devrait y avoir aucune sortie sur la bande de LED initialement), alors vous pouvez charger et exécuter le traitement app- immédiatement, vous devriez voir votre travail de la lumière ambiante.

Voici une vidéo de démonstration de la façon dont cela a fonctionné pour moi avec une certaine vidéo de musique trippy aléatoire.

Qu`est-ce que tu penses?! Bien qu`il ne soit pas aussi impressionnant que quelque chose qui analyse chaque partie de l`écran et les utilisations individuels pixels LED, il est beaucoup moins cher et beaucoup plus lumineux. Le seul inconvénient est que tout doit être exécuté sur votre ordinateur Media Center - il ne fonctionnera pas avec la radiodiffusion télévisuelle régulière ou de votre Xbox 360, par exemple. Si vous avez des problèmes, des questions ou suggestions, s`il vous plaît demander lien loin- ou peut-être à une vidéo de votre installation terminée.

» » Construisez votre propre éclairage dynamique ambiante pour un media center