Skocz do zawartości
Pigwas

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()

 

Udostępnij ten post


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

Udostępnij ten post


Link to post
Share on other sites

Poza tym, z tego co wiem to w czujniku HC-SR04 jest również dolny próg dokładności.

Udostępnij ten post


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!

Gość
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...