Super billig trådlös dörrklocka (5 / 8 steg)
Steg 5: Koden
Här är koden jag använde (också bifogas):
#! / usr/bin/python
Importera tid
importera Adafruit_BBIO. ADC som ADC
importera datetime
importera prowlpy
API_KEY = "< vad din är >"
sensor_pin = 'P9_39' # AIN0
reading_threshold = 0,2
wait_before_notify = 10 # bara meddela en gång i detta många sekunder
last_notify = datetime.datetime.min
om __name__ == "__main__":
ADC.setup()
p = prowlpy. Prowl(API_KEY)
medan 1:
läsning = ADC.read(sensor_pin)
skriva ut ("% f\n" % (behandlingen))
om läser < reading_threshold och (datetime.datetime.now() - last_notify) .seconds > wait_before_notify: skriva ut "saker gjort hände"
försök:
p.Add ("Dörr", "Besökare", "Du har en besökare", 1, ingen, ingen)
Förutom undantag, msg:
skriva ut msg
last_notify = datetime.datetime.now()
Time.Sleep(.1)
Knappast någon kod alls. Är inte Python bra?
Du kommer att behöva lägga till din egen jakt API-nyckel som diskuterats tidigare. Du måste med all sannolikhet också träning vad din tröskelvärde är, eftersom du kan ha olika fotocell än jag använde. Tja, goda nyheter alla, detta är lätt att göra.
Köra Python för lite och titta på avläsningarna. Sedan utlöser rörelsesensorn och se hur lågt avläsningarna gå när lampan blinkar. Det bör vara ganska stor skillnad i värden. Plocka något i mitten och använda det som "reading_threshold" värde.