Draadloze Phone Remote-Controlled LED Strips: RasPi w / Fadecandy stuurprogramma w / WS2811/WS2812 adresseerbare LED Strips w / TouchOSC Smartphone App w / Iphone of Droid (14 / 16 stap)

Stap 14: Python programma controle LED-strip

Wat doet het Python programma moet doen, nu?

Setup de OPC-client (om te communiceren met onze Fadecandy-board)
Instelling OSC server (om input ontvangen TouchOSC app via Wifi aangesloten telefoon)
Setup enkele variabelen voor het opslaan van de huidige waarden die kunnen worden gebruikt door alle functies ik deed dit met globale variabelen met succes, maar ik ben niet zeker als dit de beste praktijken is.
Worden kundig voor speurder relatieve-tot-mens-reactie-tijd snel asynchrone input (ingang komt niet regelmatige tussenpozen maken uw algehele Python programma structuur hoeft te controleren om zo vaak mogelijk ingang)
Het inkomende bericht van OSC van TouchOSC in een karakter array opslaan
Parseren van de matrix voor OSC gegevens (naam van het kanaal, kenmerknaam en kenmerk bereik; Aanpasbare in TouchOSC Editor in het eigenschappen menu links)
Verdeelde gegevens worden opgeslagen in tijdelijke functie variabelen
Tijdelijke functie waarde wordt opgeslagen in de relevante globale variabele (programma krijgt een nieuwe OSC bericht; Ik verhuisde een fader, het is nu op een waarde van 10; de fader werd op pagina 1 en heet "redfader" dus ik moet bijwerken mijn globale variabele pixelcolorred (of de beschrijvende naam die je wilt). De globale variabele was de heuristische aanpak. Ik gebruik het omdat ik kan gemakkelijk zien welke functie is knoeien met het vanwege het verdeelde osc-bericht. Ik heb begrepen dat er een gevaarlijke variabele omdat alles kunt openen en bewerken, maar thats wat was soort van de manier waarop ik zag de werking van het programma.
Opstarten in een hoofdlus op een initiële modus in een tijdje lus (zoals kanalen op een tv). Dit is de standaardmodus van de landing die het eerste "effect worden zal" de matrix LED begint te lopen wanneer het Python programma wordt opgestart (die bij het opstarten worden zal)
Kunnen uit dat de modus effect while-lus snel genoeg om op te schakelen niet aankondiging lag

Het programma vraagt voortdurend de client als geen nieuwe OSC berichten zijn ontvangen. Elke wijziging van een van de besturingselementen voor TouchOSC stuurt de relevante OSC boodschap die zal worden gedetecteerd op elke regel die wordt gebruikt:
server.handle_request()

Wanneer een moduswijziging wordt gedetecteerd (via vergelijkbare functionaliteit naar het voorbeeld van de wijziging van de fader wordt gedetecteerd) zal het programma van het voorafgaand breken terwijl lus, ga door de lijst, terwijl de lussen totdat hij vindt de juiste modus lus, en looppas die tot een andere modus wijzigen wordt gedetecteerd. Ik heb geprobeerd om het organiseren van de modi in functies in plaats van ze allemaal in de hoofdlus van run-time, maar dan kreeg een beetje meer ingewikkeld / volgestopt met behulp van de functie server.handle_request() binnenkant van de andere functie nest, en ik wilde niet vrij om te gaan met die.

Ik wil niet te specifiek om hier te komen want dat is waar de creativiteit komt, samen met sommige Python ervaring die ik niet volledig krijgen in. (Ik ben van plan om te bewerken in een aantal van de OPC en OSC setup in Python) maar sommige groot voorgerecht-middelen kunnen hier worden gevonden:

Enkele nuttige hulpprogramma's vindt u in:

  • Math bibliotheek (absolute waarde)
  • tijd (goed voor een andere willekeurige variabele is die lineair verloopt)
  • willekeurige (het genereren van pseudo-willekeurige waarde)
  • color_utils (sommige klemmen functies vergrendeling een mix en max, bereiken, remapping en andere nuttige functies met betrekking tot LED control) en komt uit een Open Pixel controle Python bibliotheek toegevoegd op

Gerelateerde Artikelen

Remote Controlled LED met behulp van HC-05 Bluetooth Arduino en mobiele telefoon App

Remote Controlled LED met behulp van HC-05 Bluetooth Arduino en mobiele telefoon App

Technologie vordert in razend tempo, iedereen van ons heeft slimme telefoons nu-een-dag, er zijn cool apps die laten we blijven in contact met onze vrienden en familie, krijgen van de meest recente informatie over het weer of verblijf-bijgewerkt met
TV remote controlled LED dotmatrix snake spel

TV remote controlled LED dotmatrix snake spel

slang is een videospel dat ontstond tijdens de late jaren 1970 in arcades en onderhoudt populariteit sinds dan, om iets van een klassieker. Na in 1998 werd het de standaard vooraf geladen spel op Nokia-telefoons, vond Snake een massale publiek.Hier m
Remote controlled LED lint

Remote controlled LED lint

voor een lange tijd had ik het plan om meer verlichting toevoegt aan een wand van mijnwoonkamer, de LED-lint werd gekocht van een Chinese leverancier op eBay, meer dan een jaar geleden. Nu eindelijk ik heb dit gedaan en wil de resultaten met u delen.
Remote Controlled LED met behulp van de mobiele telefoon en Internet

Remote Controlled LED met behulp van de mobiele telefoon en Internet

Eerder schreef ik een tutorial over het besturen van een LED met behulp van uw mobiele telefoon app, Arduino en HC-05 bluetooth-module. In de huidige tutorial die ik ga uit te breiden op eerdere one en deze tijd in plaats van bluetooth, we zullen wor
Remote controlled LED

Remote controlled LED

Dit is een zeer eenvoudig te bouwen. Helemaal u nood zit1 x geborsteld ESC1 x 12 Volt LED1 x 3s Lipo1 x RC zender en ontvangerMet het geborstelde ESC zal u zitten kundig voor afstandsbediening de helderheid van de LED.Stap 1: Sluit de geborsteld ESCH
Remote Controlled Band Flyer Lamp

Remote Controlled Band Flyer Lamp

Laten we aftrap dit ding met een paar prejudiciële vragen.Heb je ogen?Marajk ontzagwekkende dingen?Als u hebt ja geantwoord op meer dan geen van deze vragen, dan heb ik het perfecte project voor u!Ik ga u tonen hoe te maken van een externe gecontrole
Remote controlled webcam met behulp van de Arduino, SensorMonkey, jQuery en Justin.tv

Remote controlled webcam met behulp van de Arduino, SensorMonkey, jQuery en Justin.tv

Web in te schakelen voor uw interactieve sensoren over desktop, smartphone en tablet apparaten.Deze tutorial beschrijft in detail hoe met de gratis SensorMonkey -service op afstand besturen van een pan en tilt webcam aangesloten op een Arduino met ni
Arduino Remote Control (ARC)

Arduino Remote Control (ARC)

In dit project, zullen we het maken van een Arduino Remote Control (ARC) die elke infrarood (IR) afstandsbediening in hex of enige andere vorm ontcijferen en deze gebruiken om te schakelen LED on/off!Het is een vrij eenvoudig project en zou kunnen wo
Remote Controlled onderzeeër / Underwater ROV

Remote Controlled onderzeeër / Underwater ROV

wat is er leuker dan het verkennen van de diepten van donker, het vinden van nieuwe visplaatsen, boot onderhoud of schat met uw zeer eigen Remote Controlled onderzeeër ontdekken? I 'm gonna worden verwijst naar de extern gecontroleerde onderzeeër als
Met behulp van 433 MHz Remote Controlled schakelaars op Arduino

Met behulp van 433 MHz Remote Controlled schakelaars op Arduino

Ik denk dat iedereen weet die extern gecontroleerde schakelaars die in hun meest eenvoudige vorm komen in een aantal (meestal 3) voor switcheable apparaten aansluiten op het lichtnet stopcontact en die ontvangt een stekker van een lamp of iets en dat
Remote Controlled Arduino Car

Remote Controlled Arduino Car

Ik heb graag altijd naar kampen, etc waar een dag als ik was op zoek up youtube voor afstandsbediening auto's, er zijn veel van mijn vrienden en ik altijd graag met een heleboel vrienden, en hoe ze werden gemaakt, ik bedacht dat ik voor mezelf uit de
Remote Controlled Confetti kanon

Remote Controlled Confetti kanon

Confetti kanonnen zijn een heleboel plezier. Een explosie van confetti kan een feest beter maken. Maar het is niet altijd handig zijn als iemand naast het kanon te verrekenen. Dus vandaag ga ik u tonen hoe te maken van een externe gecontroleerde conf
DIY Arduino Remote Control en Lego RC voertuig!

DIY Arduino Remote Control en Lego RC voertuig!

UPDATE (8/29/13): dank u lezers voor uw enthousiasme en soort opmerkingen met betrekking tot dit project! Het is een geweldige reis sinds ik begon dit project terug in maart, maar ik ben erg blij met het resulterende product en de opwinding waarmee h
How To: Maak een Android App met Android Studio controle LED

How To: Maak een Android App met Android Studio controle LED

Dit is een stapsgewijze tutorial voor het maken van een android apk via bluetooth.Vóór de start codering,Download Android Studio IDE en bijwerken van Java.Java en C programmeren zal helpen.Deze tutorial zal niet uitleggen Java programmering.Als u cod