czwartek, 14 listopada 2019

Syrena alarmowa z czujnikiem ruchu

W mojej serii filmów i artykułów o arduino staram się inaczej niż wszyscy tłumaczyć krok po kroku wszystkie etapy budowy konkretnych rozwiązań, tak aby nawet początkujący mógł sobie coś zbudować, udostępniam także gotowce. W tym artykule prezentuję wam prosty alarm o różnej tonacji (sami możemy wymyślić jaki chcemy rodzaj dźwięku i jak długo lub jakieś melodyjki bądź tony) oparty o czujnik ruchu.


Co potrzebujemy

  • moduł ATMEGA 2560
  • czujnik ruchu PIR-HC-SR501
  • dowolny buzzer (piezzo) bez generatora


Buzzer do kupienia tutaj:






Wszystko składamy według tego schematu:






Gotowy sketch do wgrania:

int calibrationTime = 10;
long unsigned int lowIn;
long unsigned int pause = 5000;
boolean lockLow = true;
boolean takeLowTime;
int pirPin = 24; //pin sensora PIR

//SETUP

void setup() {
pinMode(A5, OUTPUT); //pin A5 jako wyjście dla buzzera
}

//LOOP

void loop(){
if(digitalRead(pirPin) == HIGH){
digitalWrite(A5, LOW); //zmiana stanu wyjścia

int czestotliwosc = 200;
for (czestotliwosc = 50; czestotliwosc < 2500; czestotliwosc++)
{
tone(A5, czestotliwosc); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(1);
}

delay(50);

for (czestotliwosc = 50; czestotliwosc < 2500; czestotliwosc++)
{
tone(A5, czestotliwosc); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(1);
}

delay(50);

for (czestotliwosc = 50; czestotliwosc < 2500; czestotliwosc++)
{
tone(A5, czestotliwosc); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(1);
}

delay(50);

tone(A5, 300); //Wygeneruj sygnał o częstotliwości 200Hz na pinie A5
delay(500);

noTone(A5); //Wyłącz generowanie sygnału
delay(80);

tone(A5, 100); //Wygeneruj sygnał o częstotliwości 200Hz na pinie A5
delay(150);

noTone(A5); //Wyłącz generowanie sygnału
delay(80);

tone(A5, 100); //Wygeneruj sygnał o częstotliwości 200Hz na pinie A5
delay(150);

noTone(A5); //Wyłącz generowanie sygnału
delay(80);

tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);

tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);

tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);

tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);

noTone(A5); //Wyłącz generowanie sygnału
tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
noTone(A5); //Wyłącz generowanie sygnału
tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 1000); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
tone(A5, 500); //Wygeneruj sygnał o częstotliwości 1000Hz na pinie A5
delay(300);
noTone(A5); //Wyłącz generowanie sygnału
}
}






Gotowy efekt:














Zobacz wszystkie projekty oparte o arduino:
https://flesztech.blogspot.com/2019/03/arduino-wprowadzenie-do-tematu-pierwszy-prosty-projekt.html



Prześlij komentarz

Whatsapp Button works on Mobile Device only

Wpisz czego szukasz i kliknij w ikonkę lupy