Funktionen der Library MyUltrasoundSensor
MyUltrasoundSensor MyHC(byte trigPin, byte echoPin)
Funktion: Erzeugt eine neue Instanz
Parameter: trigPin: TriggerPin - Arduino-Pin verbunden mit Sensor-Pin Trig
echoPin: EchoPin - Arduino-Pin verbunden mit Sensor-Pin Echo
float distance(void)
Funktion: Ermittelt die Entfernung bei Lufttemperatur (20 °C)
Parameter: keine
Rückgabe: Entfernung [cm], nicht temperaturkompensiert
float distanceTempComp(float temp)
Funktion: Ermittelt die Entfernung bei vorgegebener Lufttemperatur
Parameter: temp: Lufttemperatur [°C] (-50 <= temp <= +50) von Temperaturmessung
Rückgabe: Entfernung [cm], temperaturkompensiert
float distanceTempCompMedian(float temp)
Funktion: Ermittelt die Median-Entfernung bei vorgegebener Lufttemperatur
Parameter: temp: Lufttemperatur [°C] (-50 <= temp <= +50) von Temperaturmessung
Rückgabe: Median-Entfernung [cm], temperaturkompensiert
Bemerkung: Standardmäßig werden 5 Messwerte zur Medianbildung herangezogen. Diese Anzahl kann mit der Variablen "medianAnz" verändert werden (siehe unten "Variable byte medianAnz")
bool detect(float temp, byte vonAbstand, byte bisAbstand)
Funktion: Ermittlung, ob sich ein Gegenstand innerhalb des angegebenen Bereichs befindet
Parameter: temp: Lufttemperatur [°C] (-50 <= temp <= +50) von Temperaturmessung
vonAbstand: Beginn des Erfassungsbereiches [cm] (2 <= vonAbstand << 399)
bisAbstand: Ende des Erfassungsbereiches [cm] (3 <= vonAbstand << 400)
Rückgabe: Wenn Gegenstand im Bereich detektiert TRUE, sonst FALSE
float soundVelosity(float temp)
Funktion: Ermittlung der Schallgeschwindigkeit bei vorgegebener Lufttemperatur
Parameter: temp: Lufttemperatur [°C] (-50 <= temp <= +50) von Temperaturmessung
Rückgabe: Schallgeschwindigkeit [m/s]
Variable:
byte medianNumber
Funktion: Variable beinhaltet die Anzahl von Messungen bei Medianwertbildung
Bemerkung: Standardwert = 5 Messungen
kleinster Wert = 3 (Medianwert mit weniger als 3 Messungen ist nicht sinnvoll)
größter Wert = je nach Anwendung
(Pro Messung Verlängerung der Bearbeitungszeit um den "measureDelay"-Wert)
byte measureDelay
Funktion: Mindest-Verzögerung [ms] zwischen zwei Messungen
Bemerkung: Standardwert = 50 ms
Kürzest mögliche Verzögerung = 20 ms
Wird die Mindest-Verzögerung kleiner als 20 ms angegeben, beträgt die kürzeste Verzögerung trotzdem 20 ms.
Beim HC-SR04 muss die Zeit zwischen 2 Messungen mindestens 20 ms betragen (max. 50 Messungen pro Sekunde), beim HY-SRF05 mindestens 50 ms (max. 20 Messungen pro Sekunde)!
long maxEchoImpulsTime
Funktion: Länge des Echo-Impulses, ab dem die Library erkennt, dass sich kein Gegenstand innerhalb des Erfassungsbereiches befindet
Bemerkung: Standardwert: 160000L
Wird kein Gegenstand erfasst, beträgt die Dauer des Echo-Impulses des Sensors ca. 190000 bis 220000 us (190 - 220 ms). Wird von der Library ein Impuls mit dieser Dauer erkannt, gibt sie als Messergebnis (Entfernung) den Wert "maxOverflowVal" aus.
(Der Wert ändert nicht die Länge des Echoimpulses des Sensors, sondern legt nur fest, ab welchem Wert die Library den Messwert als ungültig erkennen soll.)
int maxOverflowVal
Funktion: Gibt den Wert an, der als Entfernung ausgegeben wird, wenn sich kein Gegenstand innerhalb des Erfassungsbereiches befindet (Messung ins "Leere")
Bemerkung: Standardwert = 999