Project 12: aardbevingalarm met een Arduino

Welkom bij project 11! Vandaag gaan we een leuk project maken: een aardbevingalarm! In deze les leer je hoe je een Arduino kunt gebruiken om een schok of trillingen te detecteren met een Keyes shock sensor. Zodra de sensor een trilling detecteert (zoals wanneer je het breadboard een beetje schudt), zal de zoemer zes seconden afgaan, met een interval van één seconde aan en één seconde uit. Dit project is niet alleen leuk, maar het laat je ook zien hoe je input van een sensor kunt gebruiken om een alarm te activeren.

Stap 1: het circuit bouwen

Benodigdheden:
  • 1x Arduino Uno
  • 1x Keyes shock sensor
  • 1x Actieve zoemer
  • 5x Man-man jumper wires
  • 1x Breadboard

Volg eerst de onderstaande stappen om je circuit op te zetten:

  • Shock Sensor Aansluiten:
    • Verbind de GND-pin van de shock sensor met een GND-pin op de Arduino.
    • Verbind de VCC-pin van de shock sensor met de 5V-pin op de Arduino.
    • Verbind de OUT-pin van de shock sensor met digitale pin 2 op de Arduino.
  • Zoemer Aansluiten:
    • Verbind de positieve pin (lange pin) van de zoemer met digitale pin 8 op de Arduino.
    • Verbind de negatieve pin (korte pin) van de zoemer met een GND-pin op de Arduino.

Stap 2: De code schrijven

Nu we het circuit hebben opgebouwd, gaan we de code schrijven die de afstand meet en de LED’s aanstuurt.

int shockSensorPin = 2; // De pin waar de shock sensor op is aangesloten

int buzzerPin = 8;      // De pin waar de zoemer op is aangesloten

int shockDetected = 0;  // Variabele om op te slaan of er een schok is gedetecteerd

 

void setup() {

  pinMode(shockSensorPin, INPUT); // Stel de shock sensor pin in als ingang

  pinMode(buzzerPin, OUTPUT);     // Stel de buzzer pin in als uitgang

}

void loop() {

  shockDetected = digitalRead(shockSensorPin); // Lees de waarde van de shock sensor

  if (shockDetected == HIGH) { // Als er een schok is gedetecteerd

    for (int i = 0; i < 3; i++) { // Herhaal 3 keer

      digitalWrite(buzzerPin, HIGH); // Zet de zoemer aan

      delay(500);                   // Wacht 1 seconde

      digitalWrite(buzzerPin, LOW);  // Zet de zoemer uit

      delay(1000);                   // Wacht 1 seconde

    }

  }

}

Wat doet deze code?

  • pinMode(shockSensorPin, INPUT);: Hiermee stel je de pin van de shock sensor in als ingang, zodat de Arduino de sensor kan lezen.
  • pinMode(buzzerPin, OUTPUT);: Hierdoor stel je de pin van de zoemer in als uitgang, zodat de Arduino de zoemer kan aansturen.
  • digitalRead(shockSensorPin);: Hiermee lees je de waarde van de shock sensor. Als de sensor een schok detecteert, geeft hij HIGH terug.
  • for (int i = 0; i < 3; i++): Dit zorgt ervoor dat de code in de lus drie keer wordt uitgevoerd, waardoor de zoemer 3 keer 1 seconde aan en uit gaat.
  • digitalWrite(buzzerPin, HIGH);: Zet de zoemer aan.
  • delay(1000);: Wacht 1 seconde.
  • digitalWrite(buzzerPin, LOW);: Zet de zoemer uit.

Stap 3: De code uploaden

  1. Sluit je Arduino aan op je computer met de USB-kabel.
  2. (Klik dan op select board en dan op Arduino Uno.)
  3. Klik op de uploadknop (pijltje) in de Arduino IDE om de code naar je Arduino te sturen.

Test je aardbevingalarm

Zodra je de code hebt geüpload, probeer je breadboard zachtjes te schudden of tik op de tafel waar het staat. Je zou moeten horen dat de zoemer afgaat!

Gefeliciteerd! 🎉 Je hebt nu een werkend aardbevingalarm gemaakt! Dit project heeft je laten zien hoe je een sensor kunt gebruiken om een alarm te activeren op basis van externe input. Wat kun je hierna proberen? Misschien wil je een visuele indicator toevoegen, zoals een knipperende LED, of het alarm koppelen aan een ander apparaat.

qoute symbool

"De wereld is vol met ideeën, maar alleen degene die ze tot leven wekt, maakt het verschil."

Schrijf een comment

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

logo

Copyright © 2024 Arduinolessen.org | Gebouwd door Arduinolessen.org