KY-050 Ultraschallabstandssensor: Unterschied zwischen den Versionen
Aus Linkerkit.de
Zeile 60: | Zeile 60: | ||
distance = duration/58.2; | 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. | + | 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”); |
− | Serial.println(“Out Of Range”); | + | |
digitalWrite(LEDPinYellow, HIGH); | digitalWrite(LEDPinYellow, HIGH); | ||
digitalWrite(LEDPinGreen, LOW); | digitalWrite(LEDPinGreen, LOW); | ||
Zeile 85: | Zeile 84: | ||
Quelle: https://patakacs.wordpress.com/2014/02/04/ultrasonic-sensor-hc-sr04-and-piezo-speakers-measuring-distance-and-playing-a-tone-with-piezo/ | Quelle: https://patakacs.wordpress.com/2014/02/04/ultrasonic-sensor-hc-sr04-and-piezo-speakers-measuring-distance-and-playing-a-tone-with-piezo/ | ||
+ | |||
+ | |||
+ | “This document can be copied and modified under the conditions of GNU General Public License. [http://www.gnu.org/licenses/gpl.html http://www.gnu.org/licenses/gpl.html]“ |
Version vom 24. Februar 2016, 08:05 Uhr
Inhaltsverzeichnis
Bild
Technische Daten / Kurzbeschreibung
Wird am Trigger-Eingang ein Signal (fallende Flanke) eingegeben, so wird eine Abstandsmessung durchgeführt und am Echo-Ausgang als PWM-TTL Signal ausgegeben
messbare Distanz: 2cm—300cm Messauflösung: 3mm
Pin-Belegung
Codebeispiel Arduino
/* HC-SR04 Ping distance sensor: VCC to arduino 5v GND to arduino GND Echo to Arduino pin 7 Trig to Arduino pin 8 This sketch originates from Virtualmix: http://goo.gl/kJ8Gl Has been modified by Winkle ink here: http://winkleink.blogspot.com.au/2012/05/arduino-hc-sr04-ultrasonic-distance.html And modified further by ScottC here: http://arduinobasics.blogspot.com.au/2012/11/arduinobasics-hc-sr04-ultrasonic-sensor.html on 10 Nov 2012 Further 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/ */ int echoPin = 7; int trigPin = 8; int LEDPinYellow = 2; // Yellow LED int LEDPinGreen = 4; // Green LED int soundPin = 12; // Piezo int maximumRange = 100; int minimumRange = 0; long duration, distance; void setup() { Serial.begin (9600); // Init communications to serial monitor pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(LEDPinYellow, OUTPUT); pinMode(LEDPinGreen, OUTPUT); } 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); } // Mandatory delay delay(50); }
“This document can be copied and modified under the conditions of GNU General Public License. http://www.gnu.org/licenses/gpl.html“