Änderungen
Aus Linkerkit.de
/* Codebeispiel Arduino */
Das Beispielprogramm aktiviert nach o.g. Prinzip die Abstandsmessung und misst mit Hilfe der Arduino Funktion [https://www.arduino.cc/en/Reference/PulseIn pulseIn] die Zeit, wie lang das Ultraschallsignal in der Luft ist. Diese Zeit wird dann für die Umrechnung des Abstands als Basis genommen - das Ergebnis wird danach in der seriellen Ausgabe ausgegeben. Sollte das Signal außerhalb des Messbereichs sein, wird eine entsprechende Fehlermeldung ausgegeben.
<pre class="brush:cpp"> /*HC-SR04 Ping distance sensor:VCC to arduino 5vGND to arduino GNDEcho to Arduino pin #define Echo_EingangsPin 7Trig to Arduino pin 8This sketch originates from Virtualmix: http://goo.gl/kJ8GlHas been modified by Winkle ink here: http://winkleink.blogspot.com.au/2012/05/arduinoEcho Eingangs-hc-sr04-ultrasonic-distance.htmlPinAnd modified further by ScottC here: http:#define Trigger_AusgangsPin 8 //arduinobasics.blogspot.com.au/2012/11/arduinobasicsTrigger Ausgangs-hc-sr04-ultrasonic-sensor.htmlon 10 Nov 2012Further modified by Peter Takacs on 04/02/04 https://patakacs.wordpress.com/2014/02/04/ultrasonic-sensor-hc-sr04-and-piezo-speakers-measuring-distance-and-playing-a-tone-with-piezo/*/Pin
void setup() {
}
void loop() {
// Abstandsmessung wird mittels des 10us langen Triggersignals gestartet
digitalWrite(Trigger_AusgangsPin, HIGH);
delayMicroseconds(10);
digitalWrite(Trigger_AusgangsPin, LOW);
// Nun wird am Echo-Eingang gewartet, bis das Signal aktiviert wurde
// und danach die Zeit gemessen, wie lang es aktiviert bleibt
Dauer = pulseIn(Echo_EingangsPin, HIGH);
// Nun wird der Abstand mittels der aufgenommenen Zeit berechnet
Abstand = Dauer/58.2;
// Überprüfung ob gemessener Wert innerhalb der zulässingen Entfernung liegt
if (Abstand >= maximumRange || Abstand <= minimumRange)
{
// Falls nicht wird eine Fehlermeldung ausgegeben.
Serial.println("Abstand außerhalb des Messbereichs");
Serial.println("-----------------------------------");
}
else
{
// Der berechnete Abstand wird in der seriellen Ausgabe ausgegeben
Serial.print("Der Abstand betraegt:");
Serial.print(Abstand);
Serial.println("cm");
Serial.println("-----------------------------------");
}
// Pause zwischen den einzelnen Messungen
delay(500);
}
</pre>
'''Beispielprogramm Download'''