Seite 1 von 1

Python Script für Arduion -> Raspberry -> Thingspeak

Verfasst: Freitag 16. Oktober 2020, 11:54
von Randolph23
Hallo liebe Gemeinde,

bin absoluter Python Neuling und hätte eine Frage mit der Bitte um Hilfe :)

Ich habe einen Arduino an einen Raspberry angeschlossen und lese damit die analoge Schnittstelle eines kapazitiven Feuchtigkeitsmessers über /dev/ttyAMC0 aus
Diese Daten würde ich gerne per Python Script an Thingspeak senden.
Bei meinem DHT22 Sensor klappt das wunderbar, aber wie kann ich die Ausgabe der o.g. Schnittstelle mit übergeben? (Die Kanäle bei Thingspeak sind natürlich schon eingerichtet)

mein bisheriges Script:

Code: Alles auswählen

import thingspeak
import time
import Adafruit_DHT

channel_id = 4711
write_key  = '######
read_key   = '######
pin = 2

sensor = Adafruit_DHT.DHT22

def measure(channel):
    try:
        humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
        # write
        response = channel.update({'field1': temperature, 'field2': humidity})

        # read
        read = channel.get({})
        print("Read:", read)

    except:
        print("connection failed")

if __name__ == "__main__":
    channel = thingspeak.Channel(id=channel_id, write_key=write_key, api_key=read_key)
    while True:
        measure(channel)
        # free account has an api limit of 15sec
        time.sleep(30)
Vielen Dank im voraus!

Re: Python Script für Arduion -> Raspberry -> Thingspeak

Verfasst: Freitag 16. Oktober 2020, 14:01
von Sirius3
Und wo ist jetzt das konkrete Problem? Statt `Adafruit_DHT.read_retry` rufst Du halt die Routine für Deinen Feuchtigkeitssensor auf.
Nackte `except` sind schlecht, weil man die Ursache des Fehlers verschluckt, und damit eine Fehlersuche unmöglich macht. Zumindest die Fehlermeldung inklusive komplettem Traceback sollte man ausgeben. logging.exception wäre da ein Möglichkeit.
Konstanten schreibt man komplett gross: CHANNEL_ID, PIN, READ_KEY, ...