Stap 12: Codering je Raspberry Pi
Wij gaan ervan uit dat u een werkende Raspberry Pi die in verbinding met het Internet hebt. Als dat niet het geval is, controleer dit blogbericht over het instellen van de WiFi in de Raspberry Pi. Dan inloggen via een terminal in uw Raspberry Pi en het instellen van de SPI-module om te communiceren met de PiFace Digital:
sudo nano /etc/modprobe.d/raspi-blacklist.conf
Voeg een "#"-teken vóór de lijn spi-bcm2708, dan druk CTRL-X, typt u j en op Enter. Hierdoor SPI van boot. Nu laten we installeren en instellen van de PiFace Digital-bibliotheek:
sudo apt-get updatesudo apt-get install python3-pifacedigitalio python-pifacedigitalio
Herstart uw Pi:
sudo reboot
Geweldig! We zijn klaar om te beginnen met coderen van ons project. Maak een nieuw bestand met de naam "valve.py" (door te typen "nano valve.py") en plak de volgende code erin:
import pifacedigitalio #Library for pifacedigitalio from ubidots import ApiClient #Library for Ubidots pifacedigital = pifacedigitalio.PiFaceDigital() #Declare piface object try: api = ApiClient("1fc7a56bf4b539725ace7a3f4aa623e9e9620612") #Don't forget to put your own Apikey valve = api.get_variable('53cd4cb07625425b70f5c21e') #Put here your valve ID's valveState = api.get_variable("53ce95547625420403d81468") #Put here your realy state ID's except: print("cant connect") #Check your Apikey, variable's ID and internet connectionwhile(True): lastValue = valve.get_values(1) #Get the last value of valve from Ubidots rele = pifacedigital.relays[0].value #Save relay state valveState.save_value({'value':rele}) #Send relay state to Ubidots for a in lastValue: print a['value'] if(a['value']): #Turn on or off the relay pifacedigital.output_pins[0].turn_on() else: pifacedigital.output_pins[0].turn_off()