Skocz do zawartości

Czujnik HC-SR04 źle określa wartości poniżej 6 cm


Pomocna odpowiedź

Czujnik poprawnie wykrywa odległości na dystansie 6 - 100 cm. Przy przeszkodzie znajdującej się 2-5 cm od czujnika, otrzymywana wartość utrzymuje się na 6cm. Czy ktoś spotkał się kiedyś z podobnym problemem ?

Czujnik: https://botland.com.pl/pl/ultradzwiekowe-czujniki-odleglosci/1420-ultradzwiekowy-czujnik-odleglosci-hc-sr04-2-200cm-5903351241366.html

Sposób podłączenia: https://tutorials-raspberrypi.com/raspberry-pi-ultrasonic-sensor-hc-sr04/

Kod programu:

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO_TRIGGER = 2
GPIO_ECHO = 3
GPIO.setup(GPIO_TRIGGER, GPIO.OUT)
GPIO.setup(GPIO_ECHO, GPIO.IN)


def distance():
    GPIO.output(GPIO_TRIGGER, False)
    time.sleep(0.1)

    GPIO.output(GPIO_TRIGGER, True)
    time.sleep(0.00001)
    GPIO.output(GPIO_TRIGGER, False)

    while GPIO.input(GPIO_ECHO) == 0:
        pulse_start = time.time()
    while GPIO.input(GPIO_ECHO) == 1:
        pulse_end = time.time()

    pulse_duration = pulse_end - pulse_start
    distance = round(pulse_duration * 17150, 2)
    return distance


if __name__ == '__main__':
    try:
        while True:
            dist = distance()
            print(dist)

    except KeyboardInterrupt:
        print("Measurement stopped by User")
        GPIO.cleanup()

 

Link to post
Share on other sites

Bo:

a) w RPi nie możesz wyłączyć przerwań/multitaskingu, poza tym

b) wykonanie time.time() i podstawienia trochę trwa, w związku z tym

c) program w Pythonie na RPi nie potrafi tak precyzyjnie zmierzyć czasu, a więc

d) pomiar odległości za pomocą tego czujnika jest niestety wyłącznie pobożnym życzeniem.

Wrzuć w Google hasło "raspberry hc-sr04 kernel" - jest tam kilka rozwiązań. Nie sprawdzałem, do precyzyjniejszych pomiarów przerzuciłem się na laserowe TOF.

  • Lubię! 2
Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.