Ultraschallsensor schaltet Melodie an
Materialien:
- 1 Arduino Uno
- 1 Ultraschallsensor
- 1 Lautsprecher
- 4 LEDs
- 4 Wiederstände (220 Ohmen)
- 1 Breadboard
Das Programm:
int ledpin1 = 8; //Pin 8 heißt jetzt ledpin1
int ledpin2 = 12; //Pin 9 heißt jetzt ledpin2
int ledpin3 = 4; //Pin 4 heißt jetzt ledpin3
int ledpin4 = 7; //Pin7 heißt jetzt ledpin4
int BUZZ = 2; //Pin 2 heißt jetzt BUZZ
int trigger = 9; //Der Anschluss TRIG am Ultraschallsensor geht an Pin 9
int echo = 11; //Der Anschluss ECHO am Ultaschallsensor geht an Pin 11
long dauer = 0; // dauer = Variable unter der die Zeit gespeichert wird
long entfernung = 0; //entfernung = Variable under 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 ledpin2 = 12; //Pin 9 heißt jetzt ledpin2
int ledpin3 = 4; //Pin 4 heißt jetzt ledpin3
int ledpin4 = 7; //Pin7 heißt jetzt ledpin4
int BUZZ = 2; //Pin 2 heißt jetzt BUZZ
int trigger = 9; //Der Anschluss TRIG am Ultraschallsensor geht an Pin 9
int echo = 11; //Der Anschluss ECHO am Ultaschallsensor geht an Pin 11
long dauer = 0; // dauer = Variable unter der die Zeit gespeichert wird
long entfernung = 0; //entfernung = Variable under 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
void setup()
{
pinMode(ledpin1, OUTPUT); //ledpin1 ist ein ausgang
pinMode(ledpin2, OUTPUT);//ledpin2 ist ein Ausgang
pinMode(ledpin3, OUTPUT); //ledpin3 ist ein Ausgang
pinMode(ledpin4, OUTPUT); //ledpin4 ist ein Ausgang
pinMode(BUZZ, OUTPUT); //BUZZ ist ein Ausgang
pinMode(trigger, OUTPUT); //trigger ist ein Ausgang
pinMode(echo, INPUT); //echo ist ein Eingang
{
pinMode(ledpin1, OUTPUT); //ledpin1 ist ein ausgang
pinMode(ledpin2, OUTPUT);//ledpin2 ist ein Ausgang
pinMode(ledpin3, OUTPUT); //ledpin3 ist ein Ausgang
pinMode(ledpin4, OUTPUT); //ledpin4 ist ein Ausgang
pinMode(BUZZ, OUTPUT); //BUZZ ist ein Ausgang
pinMode(trigger, OUTPUT); //trigger ist ein Ausgang
pinMode(echo, INPUT); //echo ist ein Eingang
}
void loop() {
digitalWrite(trigger, LOW); //Der Strom wird vom Ultraschallsen genommen
delay(5); //Es wird 5 Millisekunden 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(trigger, LOW); //Der Strom wird vom Ultraschallsen genommen
delay(5); //Es wird 5 Millisekunden 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 >= 500 || entfernung <= 0) { //Wenn die Entfernung kleiner, als 500 und größer,als 0 ist, dann ...
tone(BUZZ, 200); // gib einen Ton aus
digitalWrite(ledpin1, HIGH); //...schalte die 1.LED an ...
delay(200); //...warte 200 Millisekunden...
digitalWrite(ledpin1, LOW); // ... schalte die 1. LED aus...
noTone(BUZZ);//schalte den Ton ab
delay(100); //warte 100 Millisekunden
tone(BUZZ, 200);
digitalWrite(ledpin2, HIGH); //...schalte die 2. LED an...
delay(200);//... warte 200 Millisekunden...
digitalWrite(ledpin2, LOW);//...schalte die 2. LED aus...
noTone(BUZZ); // schalte den Ton ab
delay(100); // warte 100 Millisekunden
tone(BUZZ, 200); // gib einen Ton aus
digitalWrite(ledpin3, HIGH);//...schalte die 3.LED an...
delay(200);//...warte 200 Millisekunden...
digitalWrite(ledpin3, LOW);//...schalte die 3. LED aus...
noTone(BUZZ); // schalte den Ton ab
delay(500); // warte 500 Millisekunden
tone(BUZZ, 200); // gib einen Ton aus
digitalWrite(ledpin4, HIGH);///... schalte die 4. LED an...
delay(200); //...Warte 200 Millisekunden...
digitalWrite(ledpin4, LOW);//...schalte die 4. LED aus..
noTone(BUZZ);
delay(100);
tone(BUZZ, 200);
delay(200);
noTone(BUZZ);
delay(100);
tone(BUZZ, 200);
delay(200);
noTone(BUZZ);
delay(500);//...warte 500 Millisekunden...
tone(BUZZ, 200);
digitalWrite(ledpin4, HIGH);//schalte die 4. LED an
digitalWrite(ledpin3, HIGH);//schalte die 3.LED an
digitalWrite(ledpin2, HIGH);//schalte die 2.LED an
digitalWrite(ledpin1, HIGH);//schalte die 1.LED an
delay(200);
noTone(BUZZ);
delay(100); //warte 100 Millisekunden
tone(BUZZ, 600);
digitalWrite(ledpin4, LOW);//schalte die 4. LED aus
digitalWrite(ledpin3, LOW);//schalte die 3.LED aus
digitalWrite(ledpin2, LOW);//schalte die 2. LED aus
digitalWrite(ledpin1, LOW);//schalte die 1.LED aus
delay(200);//warte 200 Millisekunden
noTone(BUZZ);
delay(100);
tone(BUZZ, 100);
digitalWrite(ledpin4, HIGH); //...schalte die 4.LED an ...
delay(200); //...warte 200 Millisekunden...
digitalWrite(ledpin4, LOW); // ... schalte die 4. LED aus...
noTone(BUZZ);
delay(100);
tone(BUZZ, 150);
digitalWrite(ledpin3, HIGH); //...schalte die 3. LED an...
delay(200);//... warte 200 Millisekunden...
digitalWrite(ledpin3, LOW);//...schalte die 3. LED aus...
noTone(BUZZ);
delay(100);
tone(BUZZ, 200);
digitalWrite(ledpin2, HIGH);//...schalte die 2.LED an...
delay(300);//...warte 200 Millisekunden...
digitalWrite(ledpin2, LOW);//...schalte die 2. LED aus...
noTone(BUZZ);
digitalWrite(ledpin1, HIGH);///... schalte die 1. LED an...
delay(500); //...Warte 500 Millisekunden...
digitalWrite(ledpin1, LOW);//schalte die 1. LED aus
}
else {
digitalWrite(ledpin1, LOW);//schalte die 1.LED aus
digitalWrite(ledpin2, LOW);//schalte die 2.LED aus
digitalWrite(ledpin3, LOW);//schalte die 3.LED aus
digitalWrite(ledpin4, LOW);//schalte die 4.LED aus
tone(BUZZ, 200); // gib einen Ton aus
digitalWrite(ledpin1, HIGH); //...schalte die 1.LED an ...
delay(200); //...warte 200 Millisekunden...
digitalWrite(ledpin1, LOW); // ... schalte die 1. LED aus...
noTone(BUZZ);//schalte den Ton ab
delay(100); //warte 100 Millisekunden
tone(BUZZ, 200);
digitalWrite(ledpin2, HIGH); //...schalte die 2. LED an...
delay(200);//... warte 200 Millisekunden...
digitalWrite(ledpin2, LOW);//...schalte die 2. LED aus...
noTone(BUZZ); // schalte den Ton ab
delay(100); // warte 100 Millisekunden
tone(BUZZ, 200); // gib einen Ton aus
digitalWrite(ledpin3, HIGH);//...schalte die 3.LED an...
delay(200);//...warte 200 Millisekunden...
digitalWrite(ledpin3, LOW);//...schalte die 3. LED aus...
noTone(BUZZ); // schalte den Ton ab
delay(500); // warte 500 Millisekunden
tone(BUZZ, 200); // gib einen Ton aus
digitalWrite(ledpin4, HIGH);///... schalte die 4. LED an...
delay(200); //...Warte 200 Millisekunden...
digitalWrite(ledpin4, LOW);//...schalte die 4. LED aus..
noTone(BUZZ);
delay(100);
tone(BUZZ, 200);
delay(200);
noTone(BUZZ);
delay(100);
tone(BUZZ, 200);
delay(200);
noTone(BUZZ);
delay(500);//...warte 500 Millisekunden...
tone(BUZZ, 200);
digitalWrite(ledpin4, HIGH);//schalte die 4. LED an
digitalWrite(ledpin3, HIGH);//schalte die 3.LED an
digitalWrite(ledpin2, HIGH);//schalte die 2.LED an
digitalWrite(ledpin1, HIGH);//schalte die 1.LED an
delay(200);
noTone(BUZZ);
delay(100); //warte 100 Millisekunden
tone(BUZZ, 600);
digitalWrite(ledpin4, LOW);//schalte die 4. LED aus
digitalWrite(ledpin3, LOW);//schalte die 3.LED aus
digitalWrite(ledpin2, LOW);//schalte die 2. LED aus
digitalWrite(ledpin1, LOW);//schalte die 1.LED aus
delay(200);//warte 200 Millisekunden
noTone(BUZZ);
delay(100);
tone(BUZZ, 100);
digitalWrite(ledpin4, HIGH); //...schalte die 4.LED an ...
delay(200); //...warte 200 Millisekunden...
digitalWrite(ledpin4, LOW); // ... schalte die 4. LED aus...
noTone(BUZZ);
delay(100);
tone(BUZZ, 150);
digitalWrite(ledpin3, HIGH); //...schalte die 3. LED an...
delay(200);//... warte 200 Millisekunden...
digitalWrite(ledpin3, LOW);//...schalte die 3. LED aus...
noTone(BUZZ);
delay(100);
tone(BUZZ, 200);
digitalWrite(ledpin2, HIGH);//...schalte die 2.LED an...
delay(300);//...warte 200 Millisekunden...
digitalWrite(ledpin2, LOW);//...schalte die 2. LED aus...
noTone(BUZZ);
digitalWrite(ledpin1, HIGH);///... schalte die 1. LED an...
delay(500); //...Warte 500 Millisekunden...
digitalWrite(ledpin1, LOW);//schalte die 1. LED aus
}
else {
digitalWrite(ledpin1, LOW);//schalte die 1.LED aus
digitalWrite(ledpin2, LOW);//schalte die 2.LED aus
digitalWrite(ledpin3, LOW);//schalte die 3.LED aus
digitalWrite(ledpin4, LOW);//schalte die 4.LED aus
}
}
}
Erstellt: Sebastian Grüttner (10.01.2017)
Letzte Änderung: Sebastian Grüttner (10.01.2017)