Erschreckende Töne
Was man braucht:
Kabel
Ultraschall
Lautsprecher
Breadboard
Arduino
Arduino
Code:
int trigger = 9; //Der Anschluss TRIG am Ultraschallsensor geht an Pin 9
int echo = 11; //Der Anschluss ECHO am Ultraschallsensor geht an Pin 11
long dauer = 0; // dauer = Variable unter der die Zeit gespeichert wird
long entfernung = 0; //entfernung = Variable unter der die Entfernung gespeichert wird
// long ist ein Befehl wie int. Er hat den Vorteil, dass eine höhere Zahl gespeichert wird, benötigt aber mehr Speicherplatz
int LPin = 13;
int ledpin2 = 8; //Der Anschluss der Status - LED geht an Pin 8
void setup() {
pinMode(trigger, OUTPUT); //trigger ist ein Ausgang
pinMode(echo, INPUT); //echo ist ein Eingang
pinMode(LPin, OUTPUT); //ledpin ist ein Ausgang
pinMode(ledpin2, OUTPUT); //ledpin2 ist ein Ausgang
digitalWrite(ledpin2, HIGH); //Schalte die Status LED an
pinMode(xmas,INPUT);
digitalWrite(xmas,HIGH);
}
void loop() {
digitalWrite(xmas ,LOW);
delay(1000);
digitalWrite(xmas , HIGH);
delay (2500);
digitalWrite(mas ,LOW);
delay(1000);
digitalWrite(mas , HIGH);
delay (2500);
digitalWrite(trigger, LOW); //Der Strom wird vom Ultraschallsensoren genommen
delay(5); //Es wird 5 Millisekunden lang gewartet
digitalWrite(trigger, HIGH); //Es geht Strom an den Ultraschallsensor
delay(10); //Es wird 10 Millisekunden gewartet
digitalWrite(trigger, LOW); //Der Strom wird vom Ultraschallsensor weggenommen
dauer = pulseIn(echo, HIGH); //Der Ton hält 10 Millisekunden an
entfernung = (dauer / 2) / 29.1; //Der Ton wird abgeschaltet
digitalWrite(xmas ,LOW);
delay(1000);
digitalWrite(xmas , HIGH);
delay (2500);
digitalWrite(mas ,LOW);
delay(1000);
digitalWrite(mas , HIGH);
delay (2500);
digitalWrite(trigger, LOW); //Der Strom wird vom Ultraschallsensoren genommen
delay(5); //Es wird 5 Millisekunden lang gewartet
digitalWrite(trigger, HIGH); //Es geht Strom an den Ultraschallsensor
delay(10); //Es wird 10 Millisekunden gewartet
digitalWrite(trigger, LOW); //Der Strom wird vom Ultraschallsensor weggenommen
dauer = pulseIn(echo, HIGH); //Der Ton hält 10 Millisekunden an
entfernung = (dauer / 2) / 29.1; //Der Ton wird abgeschaltet
if (entfernung >= 0 || entfernung <= 500) //Wenn die Entfernung kleiner, als 500 und größer, als 0 ist,...
{
tone(LPin, 262); // es soll ein Ton von dem Lautsprecher gespielt werden, der die Tonhöhe von 262 Hertz hat
delay(200); // es soll 200 Millisekunden gewartet werden
noTone(LPin); // der Ton soll beendet werden
delay(20); // es soll 20 Millisekunden gewartet werden
tone(LPin, 294);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 330);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(400);
noTone(LPin);
delay(40);
tone(LPin, 392);
delay(400);
noTone(LPin);
delay(40);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(400);
noTone(LPin);
delay(420);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 330);
delay(400);
noTone(LPin);
delay(20);
tone(LPin, 330);
delay(400);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 262);
delay(800);
noTone(LPin);
delay(10000); // bevor alles wieder von vorne anfängt, soll der Arduino 10.000 Millisekunden warten
delay(200); // es soll 200 Millisekunden gewartet werden
noTone(LPin); // der Ton soll beendet werden
delay(20); // es soll 20 Millisekunden gewartet werden
tone(LPin, 294);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 330);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(400);
noTone(LPin);
delay(40);
tone(LPin, 392);
delay(400);
noTone(LPin);
delay(40);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(400);
noTone(LPin);
delay(420);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 440);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 349);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 330);
delay(400);
noTone(LPin);
delay(20);
tone(LPin, 330);
delay(400);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 392);
delay(200);
noTone(LPin);
delay(20);
tone(LPin, 262);
delay(800);
noTone(LPin);
delay(10000); // bevor alles wieder von vorne anfängt, soll der Arduino 10.000 Millisekunden warten
}
else {//ansonsten...
digitalWrite(LPin, LOW); //...schalte die Alarm-LED aus.
}
delay(1000); //Warte 1000 Millisekunden,bevor du die void loop neu startest.
}
}
Erstellt: Leelou Zank (10.01.2017)
Letzte Änderung: Louis Schwamborn (29.06.2017)