RPi, Azure en Cortana gebruiken voor het automatiseren van uw huis! (6 / 15 stap)

Stap 6: Instellen van uw Raspberry Pi 2: codering de aanvankelijke opstelling


Alright! Tijd om daadwerkelijk naar beneden en vuil met sommige code! De code voor dit is eigenlijk vrij eenvoudig, en het is slechts ongeveer 50 lijnen van code. Dat gezegd zijnde, we proberen en maak een wandeling door het langzaam dus je een beter conceptueel begrip krijgen kunt van hoe het werkt. Als u gewoon "Grab and Go" zo te zeggen wilt, wordt het hele bestand bijgevoegd voor degenen die wensen te doen.

Importeren van bibliotheken

We hebben heel wat bibliotheken dient te importeren voor alle deze bewegende delen om te werken. Vergeet niet dat wij zijn ook het controleren van de pinnen, zullen we de GPIO functionaliteit ook importeren. In totaal moet de bovenkant van uw instructies import er als volgt uit:

De 3 excentrieke degenen zijn uiteraard de GPIO, Threading en Azure bibliotheken. Middelste degene, draadsnijden, lijkt misschien een beetje vreemd op het eerste. In wezen moeten we om te controleren of we actief "luisteren" naar de server-licentie. Om dit te doen effectief, lopen we die 'luistert' op een aparte thread.

Constante variabelen maken

Ja, dit kan een beetje triviale lijken, maar het zal ook helpen veel met het begrip van het verband tussen Azure en Python. De code is vrij ongecompliceerd:

# Zorg ervoor dat u het volgende:

De 'naamruimte' en 'GPIO' variabelen zou vrij duidelijk moeten zijn, maar het midden twee kan verwarring veroorzaken. In wezen, is dit uw speciale "login sleutel" die zal het verlenen van toegang aan uw Azure Service Bus. Voor nu, maak je geen zorgen over het (We zullen weten waar u deze sleutel in de volgende stap!).

Instellen van de lichten bij het opstarten

Wanneer we ons programma beginnen, wij willen onze lichten (of in ons geval, onze kleine geleid) een bepaalde status. In dit geval zullen we het ingesteld op ' OFF '

Start inkomende berichten Thread

Hier is waar we beginnen om de magische werk. Wij maken een draad en het richten van een nieuwe functie (die we nog niet hebben gemaakt) genaamd process_messages. In de volgende stap zullen we deze functie maken. Voor nu, laten we maken en starten van de draad.

Clean-up wachten

Wij zullen vervolgens 'wachten' voor elke raw_input van onze gebruikers. In wezen, niet eindigen dit programma, tenzij iemand een sleutel raakt. Ten slotte, we zullen middelen vrij te maken elke GPIO zodat een veilige uitgang uit ons programma.

Recap

Dus wat doet deze code doen? Nou, niet veel. In feite in zal niet zelfs compile nu (we missen die functie process_messages!). Maar we hebben opgezet met de structuur voor hoe onze IoT apparaat zal werken. We zullen stellen het licht op 'OFF', dan luisteren naar een opdracht uit de Service Bus op een aparte thread. De volgende stap zal tonen ons hoe dat te doen.

Gerelateerde Artikelen

Een DIY nabijheidssensor gebruiken voor het automatiseren van uw spookhuis

Een DIY nabijheidssensor gebruiken voor het automatiseren van uw spookhuis

De speciale effecten in een spookhuis moeten worden goed getimed. De beste manier om dit te doen is het gebruik van sensoren om te ontdekken waar uw gasten zich in het spookhuis. Dus ben ik bezig met een aantal projecten die aantonen een verscheidenh
Een bewegingsmelder te gebruiken voor het automatiseren van uw spookhuis

Een bewegingsmelder te gebruiken voor het automatiseren van uw spookhuis

Een van de nuttigste sensoren voor het automatiseren van een spookhuis is een bewegingssensor. Deze sensor kunt u activeren uw speciale effecten alleen wanneer een nieuwe groep mensen arriveert. Op die manier de verrassing zal niet worden geruïneerd
Een DIY drukschakelaar plaat gebruiken voor het automatiseren van uw spookhuis

Een DIY drukschakelaar plaat gebruiken voor het automatiseren van uw spookhuis

Bij het uitvoeren van een groot spookhuis, gewenste allermeest naar de speciale effecten worden geautomatiseerd. Maar voor dit effectief te zijn, moet je om de juiste timing. De beste manier om dit te doen is het gebruik van sensoren om te ontdekken
Foto's van kunst te gebruiken voor het verfraaien van ambachten en maken patronen

Foto's van kunst te gebruiken voor het verfraaien van ambachten en maken patronen

Dit instructable was geïnspireerd vanwege de geest voor de prijsvraag. Om voor mij te delen iets moest ik leren hoe een digitale programma moet gebruiken voor het maken van een ontwerp voor een project. Ik ben blij dat Hp Sprout een programma heeft o
Hoe maak je zeep. Gebruik het als een geschenk of voor het versieren van uw huis!

Hoe maak je zeep. Gebruik het als een geschenk of voor het versieren van uw huis!

Dit Instructable zal u tonen hoe te maken van zeep thuis (de oude, chemische weg!) en hoe om te zetten in een prachtig cadeau van de Kerstmis, of voor het versieren van uw huis. Het is erg goedkoop maar zeer customable!Stap 1: Instrumenten en ingredi
Een loopband DC Drive Motor en snelheidsregelaar PWM gebruiken voor het voeden van de hulpprogramma's

Een loopband DC Drive Motor en snelheidsregelaar PWM gebruiken voor het voeden van de hulpprogramma's

PowerTools zoals metaal snijden molens en draaibanken, boor-persen, bandsaws, sanders en meer voorschrijven .5HP aan 2HP motoren met de mogelijkheid om te fine-tunen van de snelheid met behoud van koppel.Toevallig meeste loopbanden gebruiken een 80-2
Een gitaar pedaal gebruiken voor het verzenden van muisgebeurtenissen naar uw PC via USB

Een gitaar pedaal gebruiken voor het verzenden van muisgebeurtenissen naar uw PC via USB

In dit instructable, zal ik uitleggen hoe ik een gitaar pedaal gebruikt als een voetschakelaar voor het verzenden van muisgebeurtenissen via USB.Ik moest een duurzame, betrouwbare voetschakelaar die ik gebruiken kon voor het verzenden van signalen na
Hoe Google Sites gebruiken voor het besturen van een Arduino!

Hoe Google Sites gebruiken voor het besturen van een Arduino!

CHECK OUT THE LIVE versie hier: https://sites.google.com/site/arduinoexampleswitch/ Dit is een tutorial die u de mogelijkheden van web-gebaseerde interfaces voor uw projecten tonen zal, vaak tijden die we allemaal maken voor de wereld willen zou te k
Batch gebruiken voor het afdrukken van een directory-structuur van een doelcomputer

Batch gebruiken voor het afdrukken van een directory-structuur van een doelcomputer

Ok, dus in dit Instructable ik u hoe vertellen zal te maken en gebruiken van een programma (met batch) waardoor een tekstbestand met een directory-structuur van een computer van uw keuze. Voor het programma om te werken u moet fysiek toegang hebben t
Zonne-energie voor het aandrijven van mijn huis!

Zonne-energie voor het aandrijven van mijn huis!

Mijn huis is zonne-energie aangedreven sinds juni 2013 en de power systeem zijn betrouwbaarheid heeft bewezen. Ik ben een trotse eigenaar van een OFF GRID zonne-energie systeem. Ik besloot te publiceren dit instructable te laten collega DIYers weten
Google Sketch-Up gebruiken voor het plannen van houtbewerkingsprojecten

Google Sketch-Up gebruiken voor het plannen van houtbewerkingsprojecten

Een dag ik vroeg me af hoe ik kon gemakkelijk visualiseren afmetingen voor een tabel zonder tekenen op potlood en papier (ik ben een verschrikkelijke kunstenaar). Vervolgens struikelde ik op dit fantastische programma genaamd Google Sketch-Up. Met Sk
Xbees (serie 2) gebruiken voor het besturen van een motor

Xbees (serie 2) gebruiken voor het besturen van een motor

met twee xbees, een arduino, een xbee exploreren een h-brug, draadloos bedienen een gelijkstroommotor om te draaien in beide richtingen (laatste video).Opmerking: Ik gebruikte de xbee ik gekoppeld aan, maar voor een één op één communicatie, in plaats
Hoe mBlock om software te gebruiken voor het programmeren van het intelligente Corridor licht circuit op basis van Arduino

Hoe mBlock om software te gebruiken voor het programmeren van het intelligente Corridor licht circuit op basis van Arduino

mBlock is een grafische programmering omgeving die speciaal is ontworpen voor beginners om gemakkelijk naar programma Arduino projecten en het maken van interactieve toepassingen. mBlock ondersteunt overvloedige hardware:Arduino UNOArduino Leonardo p
Het installeren van een windturbine voor het aandrijven van mijn huis!

Het installeren van een windturbine voor het aandrijven van mijn huis!

Mij tenslotte got mijn Aleko WG400 windturbine geïnstalleerd. Deze feeds generatorvermogen in mijn huis die al zonne is-aangedreven. Ik ben de eerste persoon geworden op mijn mooie eiland te voeren een hybride (zonne- en wind) stroom systeem voor hun