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


Zur Library Ultraschallsensor