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.