Banner Ausblenden
Kleines Logo

Willkommen auf PSI-Online

Sie befinden sich in: Unterrichtsangebote Fächer Fachbereich III Informatik WU_Info Arduino 2019-20 Mathias Mohs Arduino mit Ultraschallsensor

Arduino mit Ultraschallsensor

// Dieses Programm programmiert den Arduino Ultraschallsensor. Mit diesem kann man Entfernungen messen: 

//Wenn sich ein Gegenstand dem Ultraschallsensor nähert, wird ein Alarmton angeschaltet

 

int triggerPin=9; // Der Triggerpin des Sensors verläuft zu Pin 9

int echoPin=8;  // Der Echopin des Sensors verläuft zu Pin 8

long messung=0; // Hier wird die Zeitdauer abgespeichert, welche die Ultraschallwelle benötigt

int entfernung=0; // Hier wird die Entfernung vom Hindernis abgespeichert

int buzzer=10;// Der Buzzerpin (Lautsprecher) verläuft zu Pin 10

 

 

void setup() {

 

Serial.begin(9600);                      // Kommunikation starten, um Werte am Monitor ablesen zu können

pinMode(triggerPin, OUTPUT);                // Triggerpin als Ausgang definieren

pinMode(echoPin, INPUT);                    // Echopin als Eingang definieren

pinMode (buzzer, OUTPUT);                 //Buzzer als Output definieren

}

void loop() {

digitalWrite(triggerPin, LOW); // Strom beim Triggerpin abschalten, um  ein rauschfreies Signal senden zu können

delayMicroseconds(2); // 2 Mikrosekunden warten

 

digitalWrite(triggerPin, HIGH); // Strom beim Triggerpin anschalten, um das Senden abzuschließen

delay(10); // 10 Millisekunden warten

digitalWrite(triggerPin, LOW); // Strom ausschalten, um den Vorgang abzuschließen

 

messung = pulseIn(echoPin, HIGH); // Die Zeit messen, bis die Ultraschallwelle zurückkommt

 

entfernung = (messung/2) / 29; // Die Zeit in den Weg umrechnen (in cm)

 

Serial.println (entfernung); //Gibt im seriellen Monitor die Entfernung an

delay (60); // Warte 60 Millisekunden

{

if (entfernung <= 100) // Wenn die Entfernung kleiner/gleich 100cm ist:

{

// Schalte Alarmton an

digitalWrite (buzzer, HIGH); // Ton an

delay(150); // Warte 150 Millisekunden

digitalWrite (buzzer, LOW); // Ton aus

}

else // Wenn Entferung größer als 100cm ist:

{

  noTone(buzzer); // Kein Alarmton

}

}

}

Erstellt: Mathias Mohs (04.03.2020) Letzte Änderung: Mathias Mohs (04.03.2020)