Ultraschallmessung fehlerhafte Werte

Rilith:
Hallo SpaghettiCode,

mhh bei 2cm Abstand müssten das mit hin und Rückweg ca. 117,6 µs sein. Was ja heißt, dass der Befehl:

duration = pulseIn(echoPin, HIGH);

die Zeit von 50 µs von dem Datenblatt bereits überbrückt oder? Damit ist der Delay am Ende ja überflüssig. Habe den Sensor nun auch schon ausgetauscht => gleiches Ergebnis. Jedoch hab ich auf der Suche nach anderen Datenblätter Unterschiede bzw. Abweichungen gefunden. Zum Beispiel besagt ein Datenblatt das maximal 50 Messungen pro Sekunde ausgeführt werden können. Das würde bedeuten, dass alle 20 Millisekunden eine Messung gemacht werden kann.

So ist das mit "Theorie und Praxis".
Meine bisherigen Erfahrungen haben gezeigt, dass eine Messung nicht zu schnell aufeinander folgen darf, sonst stören die Reflexionen das Messergebnis.

Evtl. musst du dich langsam an den Wert rantasten, den du für brauchbar siehst.
Mag sein, dass die 0,5 sek. zu hoch angesetzt sind, aber dabei habe ich die besten Erfahrungen gesammelt.
Für meine bisherigen Projekte war das jedenfalls ausreichend.