Voilà un aperçu de la conception de plus en plus complète de mon dernier projet. Voici une vidéo que j’ai téléchargé la liste des fonctionnalités :
La progression d’idée originale a quelque chose comme ce qui suit :
- Adressable LED strip (s, nous voulons toujours plus les choses brillantes!!!) pour obtenir des effets visuels cool qui pourraient être programmés (en quelque sorte)
- contrôlé par un iPhone (ou un téléphone Android) à l’aide de diverses fonctionnalités matérielles disponibles présentes dans les smartphones plus modernes (accéléromètre, écran tactile, wifi/bluetooth capacité, capable d’exécuter des applications plus & plus complexes maintenant)
- pas besoin d’un véritable ordinateur de bureau ou portable à exécuter. J’avais vu des amis utilisent le langage avec divers référentiels GitHub pour intégrer la Wiimote d’entrée ou les données provenant des iPad pour divers projets différents de Python. Également nécessaire parce qu’elle serait utilisée pour l’installation de l’art et je ne voulais pas besoin d’un ordinateur est pas effectué avec la structure de l’art.
- Je savais que le Pi de framboise était un micro-ordinateur viable à bas prix (un cran au dessus des microcontrôleurs en fonctionnalité et en vitesse) qui pourrait s’exécuter un certain programme jusqu’au jour où qu'il mourut, en particulier avec les langages Python et C. Je ne pas vraiment avoir aucune expérience de Python et trouvé la plupart de ce que je devais mettre en place en Python alors j’ai décidé d’aller dans cette voie. L’ordinateur réel de Pi est la taille de carte de crédit et de l’épaisseur d’un quart. A besoin d’aucun radiateur et est bon marché (sous 40 dollars, mais finit par être autour de 70 $ avec certains accessoires nécessaires et luxe)
J’ai trouvé beaucoup d’aide dans les guides d’apprentissage Adafruit et beaucoup d’idées d’installation ont été greffés de leur équipe impressionnante, mais beaucoup d’ajouts de conception ont été ajoutés sur ma configuration aussi bien. Par exemple :
- J’ai installation mine d’exécuter via un programme Python (vs qui ont besoin d’un ordinateur en réseau)
- J’ai ajouté la télécommande sans-fil des LED via PyOSC (permet le programme Python et le téléphone avec TouchOSC app pour communiquer)
- J’ai la configuration du programme Python à exécuter au démarrage de sorte que quand je sors au milieu de nulle part, tout ce que je dois faire c’est brancher et le programme des effets LED sera le démarrage (et aussi pas besoin de l’application téléphone ouvrez pour ce faire)
- Aucun moniteur ou la souris ne nécessaires une fois le programme d’installation SSH
- Intégration de PyOSC avec PyOPC et en ajoutant dans certaines bibliothèques utiles d’inclure cette aide avec certains événements communs avec la programmation de LED
- Quelques explications supplémentaires sur certains des ajustements programmation doit apporté tenir compte de la réelle interaction numérique (correction gamma et le tramage comme exemples)
Adafruit (forum, détaillant de composant et connaissances moyeu http://www.adafruit.com/ ) vend les bandes WS2811/WS2812 (ils les appellent "Neopixels"), et ils ont un tas d’excellentes ressources pour des projets plus impressionnants. Leur communauté du forum et les guides de modérateur/administrateurs/projet chamans sont étonnants.
Les bandes de LED ont normalement besoin d’un contrôleur Arduino à courir, mais Micah Scott de Scanlime conçu un /driver contrôleur spécial qui permet de cacher loin cette nécessité. Le pilote de contrôleur pour les bandes de LED intègre la possibilité d’utiliser Open Pixel Control avec tramage et capacités de correction gamma.
Voici l’article de la Scanlime sur le Fadecandy :
http://scanlime.org/2013/11/fadecandy-easier-tasti...
Le tramage est un effet pertinent à la perception de la fréquence. Il peut être appliqué à la musique, tout comme il est aux images. Tramage d’actes comme une diffusion entre deux zones de profondeur de couleur faible. Le manque de profondeur de couleur mène à des artefacts dans les captures numériques d’un environnement et tramage aide à lisse les transitions. Avec LEDs, cela conduit à intensité modulée pour donner plus de profondeur couleur et entraînera souvent une sorte de scintillement (qui je pense est superbe, comme clin de œil startlight).
La correction gamma permet de re-mettre à l’échelle la courbe de chaque intensité de LED bleue verte rouge. Nos yeux ne perçoivent pas l’intensité de la lumière d’une manière linéaire donc correction gamma contribue à faire un dégradé linéaire sur rouge de 0 à 255 semblent plus linéaire à nos yeux. Si un variateur de lumière a été mis à l’échelle linéaire, la première moitié semblerait pour allumer extrêmement rapide, mais la dernière moitié semblerait pas beaucoup plus brillant parent. Correction gamma puis applique l’inverse de la courbe naturelle de le œil pour s’assurer que les LEDs fonctionnent d’une manière visuelle droite.
Open Pixel Control (OPC) permet un moyen simple de réseau et simplifier la communication avec des tableaux de pixels RVB. PyOPC puis qui prend l’étape plus loin et langage de programmation Python permet d’arranger un serveur de client OPC entre les brins de pixel et le pilote/contrôleur de Fadecandy qui peut recevoir et utiliser des messages de l’OPC.
TouchOSC est la dernière pièce du puzzle et c’est ce qui permet des fonctionnalités uniques et personnalisables génial. Je connaissais TouchOSC de l’usage de DJ. Dans ce scénario, j’utilise les fonctionnalités MIDI de TouchOSC, mais je savais qu’il était également capable d’envoyer des messages de Open Sound Control simultanées. J’ai fait quelques recherches et trouvé que c’était en effet en mesure de s’interfacer avec le langage par l’intermédiaire de PyOSC de programmation Python.
Les meilleures pièces sur TouchOSC app :
- Facile à utiliser application TouchOSC Editor permet vite intuitive contrôleur design
- Simple fonction sync-to-phone via communément connexion connexion WIFI permet un moyen facile de mettre à jour les mises en page, que vous rendre dans l’éditeur (j’ai utilisé une connexion ad-hoc de synchronisation lorsqu’un routeur n’était pas présent)
- tire parti des fonctionnalités de matériel préexistant du téléphone (accéléromètre & écran tactile compatible multi-entrée)
- interface propre facile à utiliser app / design