Änderungen

Aus Linkerkit.de

Wechseln zu: Navigation, Suche

KY-050 Ultraschallabstandssensor

790 Byte entfernt, 13:38, 28. Apr. 2016
/* 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
int echoPin = 7;int trigPin = 8;int LEDPinYellow = 2; // Yellow LEDBenoetigte Variablen werden definiertint LEDPinGreen maximumRange = 4300; // Green LEDint soundPin minimumRange = 122; // Piezo int maximumRange = 100;int minimumRange = 0long Abstand;long duration, distanceDauer;
void setup() {
Serial.begin (9600); // Init communications to serial monitor pinMode(trigPinTrigger_AusgangsPin, OUTPUT); pinMode(echoPinEcho_EingangsPin, INPUT);pinMode Serial.begin (LEDPinYellow, OUTPUT);pinMode(LEDPinGreen, OUTPUT9600);
}
void loop() {
/* The following trigPin/echoPin cycle is used to determine the
distance of the nearest object by bouncing soundwaves off of it. */
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
 
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
 
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
 
//Calculate the distance (in cm) based on the speed of sound.
distance = duration/58.2;
 
if (distance >= maximumRange || distance <= minimumRange){// Yellow led indicated out of maximumRange. Prints “Out Of Range” to serial if target is outside maximumRange.Serial.println(“Out Of Range”);digitalWrite(LEDPinYellow, HIGH);digitalWrite(LEDPinGreen, LOW);}else {
// When ultasonic sensor picks up a signal _within_ maximumRange, print distance in cm to serial monitor, turn off YellowLed and turn on GreenLED.
Serial.print(“Distance = ” );
Serial.print(distance);
Serial.println(” cm” );
digitalWrite(LEDPinYellow, LOW);
digitalWrite(LEDPinGreen, HIGH);
tone(soundPin, 800, 300);
delay(distance); // Distance is the delay in ms between tones, ie Near maxRange -> Long tones, Near minimumRange -> Rapid tones.
noTone(soundPin);
// 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>
// Mandatory delaydelay(50);} </pre>'''Anschlussbelegung Arduino:'''
Quelle{| style="height: https58px; padding-left://patakacs.wordpress.com/2014/02/04/ultrasonic-sensor-hc-sr04-and-piezo-speakers-measuring-distance-and-playing30px;" width="228"|-a||VCC||=||[Pin 5V]|-tone||Echo||=||[Pin 7]|-with||Trigger||=||[Pin 8]|-piezo/||Sensor GND||=||[Pin GND]|}
'''Beispielprogramm Download'''
“This document can be copied and modified under the conditions of GNU General Public License. [http[Medium://wwwKY-050-UltraschallabstandSensor.gnuzip|KY-050-UltraschallabstandSensor.org/licenses/gpl.html http://www.gnu.org/licenses/gpl.htmlzip]]