Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. HC-SR04 an PiZeroW Messung nach ioBroker importieren...

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    HC-SR04 an PiZeroW Messung nach ioBroker importieren...

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      Albyricus last edited by

      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

      bahnuhr nukleuz 2 Replies Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active @Albyricus last edited by

        @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

        1 Reply Last reply Reply Quote 0
        • nukleuz
          nukleuz @Albyricus last edited by

          @albyricus

          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/

          A 1 Reply Last reply Reply Quote 0
          • A
            Albyricus @nukleuz last edited by

            @nukleuz said in HC-SR04 an PiZeroW Messung nach ioBroker importieren...:

            @albyricus

            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....

            nukleuz 1 Reply Last reply Reply Quote 0
            • nukleuz
              nukleuz @Albyricus last edited by

              @albyricus

              👍

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              497
              Online

              31.8k
              Users

              80.0k
              Topics

              1.3m
              Posts

              3
              5
              311
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo