Alarmanlage - Ultraschallsensor
// Ultraschallsensor HC-SR04; Erklärung von Götz Müller-Dürholt; http://www.youtube.com/watch?v=wWkQJ3UaHrQ
int triggerPin=9; // wird benutzt um den Schall abzusenden
int echoPin=8; // wird benutzt um den Schall aufzunehmen
long messung=0; // es wird die Zeit gemessen, die der Schall braucht
int entfernung=0; // Entfernung, die der Schall zurückgelegt hat
int buzzer=10; // Lautsprecher der den Alarmton abgibt
int echoPin=8; // wird benutzt um den Schall aufzunehmen
long messung=0; // es wird die Zeit gemessen, die der Schall braucht
int entfernung=0; // Entfernung, die der Schall zurückgelegt hat
int buzzer=10; // Lautsprecher der den Alarmton abgibt
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); // Serielle Kommuntikation starten
pinMode(triggerPin, OUTPUT); // der PIN wird als Output definiert
pinMode(echoPin, INPUT); // der PIN wird als Input definiert
pinMode(buzzer, OUTPUT); // der PIN wird als Output definiert
}
// put your setup code here, to run once:
Serial.begin(9600); // Serielle Kommuntikation starten
pinMode(triggerPin, OUTPUT); // der PIN wird als Output definiert
pinMode(echoPin, INPUT); // der PIN wird als Input definiert
pinMode(buzzer, OUTPUT); // der PIN wird als Output definiert
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(triggerPin, LOW); // der Ultraschallsensor gibt keinen Schall mehr ab
delayMicroseconds(2); // warte 2 Microsekunden
// put your main code here, to run repeatedly:
digitalWrite(triggerPin, LOW); // der Ultraschallsensor gibt keinen Schall mehr ab
delayMicroseconds(2); // warte 2 Microsekunden
digitalWrite (triggerPin, HIGH); // der Ultraschallsensor gibt Schall ab
delay (10); // warte 10 Milliskunden
digitalWrite(triggerPin, LOW); // der Ultraschallsenso gibt keinen Schall mehr ab
delay (10); // warte 10 Milliskunden
digitalWrite(triggerPin, LOW); // der Ultraschallsenso gibt keinen Schall mehr ab
messung = pulseIn(echoPin, HIGH); // der Arduino misst die Zeit bis der Schall aufgenommen wird
entfernung = (messung/2) / 29; // der Wert wird durch 2 geteilt, da der Schall hin und zurück muss
Serial.println (entfernung); // Zeige Entfernung auf seriellen Monitor an
delay (60); // warte 60 Millisekunden
delay (60); // warte 60 Millisekunden
{
if (entfernung <= 300) // Entfernung kleiner als 300mm --> etwas soll ausgelöst werden
{
digitalWrite (buzzer, HIGH); //Alarmton
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
}
else // wenn sie größer als 300mm ist, passiert etwas
{
noTone(buzzer); // der Ton wird ausgeschaltet bzw. nicht angeschaltet
}
if (entfernung <= 300) // Entfernung kleiner als 300mm --> etwas soll ausgelöst werden
{
digitalWrite (buzzer, HIGH); //Alarmton
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
digitalWrite (buzzer, HIGH);
delay(150);
digitalWrite (buzzer, LOW);
delay (150);
}
else // wenn sie größer als 300mm ist, passiert etwas
{
noTone(buzzer); // der Ton wird ausgeschaltet bzw. nicht angeschaltet
}
Erstellt: Max Wolter (04.03.2020)
Letzte Änderung: Max Wolter (04.03.2020)