Untitled
unknown
plain_text
a year ago
915 B
10
Indexable
import paho.mqtt.client as mqtt
import RPi.GPIO as GPIO
import time
# MQTT-Konfiguration
MQTT_BROKER = "192.168.178.112"
MQTT_TOPIC = "s0_meter/impulses"
# GPIO-Konfiguration
S0_PIN = 17
GPIO.setmode(GPIO.BCM)
GPIO.setup(S0_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)
# Zähler
counter = 0
def on_pulse(channel):
global counter
counter += 1
mqtt_client.publish(MQTT_TOPIC, counter)
print(f"Impulse: {counter}")
# MQTT-Client konfigurieren
mqtt_client = mqtt.Client()
mqtt_client.connect(MQTT_BROKER, 1883, 60)
# GPIO-Ereignis
GPIO.add_event_detect(S0_PIN, GPIO.FALLING, callback=on_pulse, bouncetime=100)
try:
print("Starte S0 zu MQTT...")
mqtt_client.loop_start()
while True:
time.sleep(1)
except KeyboardInterrupt:
print("Beende Programm...")
finally:
GPIO.cleanup()
mqtt_client.loop_stop()
mqtt_client.disconnect()
Editor is loading...
Leave a Comment