Bei der 'NewPing'-Bibliothek ist ein Beispiel mit 15 US-Sensoren dabei.
Bei der 'NewPing'-Bibliothek ist ein Beispiel mit 15 US-Sensoren dabei.
Also gut: Danke schön an Sisor und danimath.
Ich habe es nun verstanden, ich habe einfach nur übersehen, dass die Ranging Methode erst die Timing Methode aufruft. Ich habe es bis jetzt mit 4 hc-sr04 angeschlossen versucht und es hat wunderbar funktioniert.
Danke
Du musst halt aufpassen, da die meisten Beispiele und auch die Library die Arduino Funktion pulseIn() ohne Timeout verwenden!
Dann wird maximal 1 Sekunde gewartet, sollte mal nichts in Reichweite sein!
Das kann dann bei 8 Sensoren ganz schön lange dauern!
Bei NewPing-Lib:
NewPing(uint8_t trigger_pin, uint8_t echo_pin, int max_cm_distance );
Mit max_cm_distance kann man indirekt die maximale Echowartezeit bestimmen.
Mal ne Rechnung: Bei 2m maximal zu Detektierenden Entfernung sind das
2m / 340 m*s^-1 = 6ms.
6ms * 2 = 12ms (Hinweg = Rückweg, Gesamtweg = 2 * Hinweg)
Geändert von Sisor (27.03.2015 um 13:00 Uhr) Grund: Rechenfehler berichtigt!
... und wieder zurück macht 12ms.
Man kann aber US-Sensoren, die in völlig verschiedene Richtungen zeigen (ohne Gefahr der Echo- und Reflex-Echo-Überlappung) auch unmittelbar nacheinander zum Senden triggern und dann gemeinsam auf ihre Echos warten lassen - das spart Wartezeit... 8-)
Danke HaWe und Sisor
ich habe die newPing library verwendet und es hat wunderbar funktioniert.
Es spart tatsächlich zeit die MAXDISTANZ auf die wirklich benötigte distanz zu minimieren
Vielen Dank an alle und an dieses Forum !!!
RoboterSindCool
Lesezeichen