NEWS
HC-SR04 an PiZeroW Messung nach ioBroker importieren...
-
Hi Leute,
ich habe einen Pi4 als ioBroker Master laufen und an einem PiZeroW habe ich ein HC-SR04 Modul angeschlossen und kann über ein Pythonskipt auch wunderbar Entfernungen messen, jetzt wollte ich das ganze über den rpi adapter (wg. GPIO) und blocky in den iobroker aufnehmen und habe festgestellt, dass blocky wohl "nur" in millisekunden rechnen / messen kann... . Das ist für eine Entfernungsmessung viel zu ungenau.... Javascript kann ich leider nicht, und nach meinen bisherigen Recherchen ist javascript auch auf millisekunden beschränkt.... (oder sitzte ich hier einem Irrtum auf)
wie bringe ich denn jetzt die cm Werte aus folgendem Python-Skript am besten / einfachsten in meinen ioBroker???
#Bibliotheken einbinden import RPi.GPIO as GPIO import time #GPIO Modus (BOARD / BCM) GPIO.setmode(GPIO.BCM) #GPIO Pins zuweisen GPIO_TRIGGER = 18 GPIO_ECHO = 24 #Richtung der GPIO-Pins festlegen (IN / OUT) GPIO.setup(GPIO_TRIGGER, GPIO.OUT) GPIO.setup(GPIO_ECHO, GPIO.IN) def distanz(): # setze Trigger auf HIGH GPIO.output(GPIO_TRIGGER, True) # setze Trigger nach 0.01ms aus LOW time.sleep(0.00001) GPIO.output(GPIO_TRIGGER, False) StartZeit = time.time() StopZeit = time.time() # speichere Startzeit while GPIO.input(GPIO_ECHO) == 0: StartZeit = time.time() # speichere Ankunftszeit while GPIO.input(GPIO_ECHO) == 1: StopZeit = time.time() # Zeit Differenz zwischen Start und Ankunft TimeElapsed = StopZeit - StartZeit # mit der Schallgeschwindigkeit (34300 cm/s) multiplizieren # und durch 2 teilen, da hin und zurueck distanz = (TimeElapsed * 34300) / 2 return distanz if __name__ == '__main__': try: while True: abstand = distanz() print ("Gemessene Entfernung = %.1f cm" % abstand) time.sleep(1) # Beim Abbruch durch STRG+C resetten except KeyboardInterrupt: print("Messung vom User gestoppt") GPIO.cleanup()
Vielen Dank vorab und viele Grüße
-
@albyricus sagte in HC-SR04 an PiZeroW Messung nach ioBroker importieren...:
PiZeroW
wemos d1 mini
tasmota drauf
HC-sr04 anschließen
fertig.Kosten ca 5,- Euro für den D1
-
Du musst in deinem Skript lediglich über pip oder pip3 paho.mqtt installieren und im ioBroker den MQTt Adapter/Server installieren.
Hier ne Anleitung, die weiterhelfen sollte:
https://tutorials-raspberrypi.de/datenaustausch-raspberry-pi-mqtt-broker-client/ -
@nukleuz said in HC-SR04 an PiZeroW Messung nach ioBroker importieren...:
Du musst in deinem Skript lediglich über pip oder pip3 paho.mqtt installieren und im ioBroker den MQTt Adapter/Server installieren.
Hier ne Anleitung, die weiterhelfen sollte:
https://tutorials-raspberrypi.de/datenaustausch-raspberry-pi-mqtt-broker-client/Merci....
-