PDA

Orijinalini görmek için tıklayınız : Alkışla Yanıp Sönen Masa Lambası



joyhbuber
12.06.2015, 01:01
https://www.youtube.com/watch?v=SatHOy9JK1I

joyhbuber
12.06.2015, 01:03
Alışveriş listesi:
Philips Architect Masa Lambası: http://bit.ly/1yBFOJg
Arduino UNO: http://bit.ly/1FTSGYw
Protoshield: http://bit.ly/1b65VND
Ses sensörü: http://bit.ly/1ITYMOT
Röle modülü: http://bit.ly/1HC3NtK
9v ya da 12v adaptör: http://bit.ly/1b669Ek



Videomuzdaki koda gözatın:




/*
************************************************** *****************************************
** **
** _____ ______ _______ ________ ________ ___ __ ___ ___ **
** |\ _ \ _ \|\ ___ \ |\ __ \|\ __ \|\ \|\ \ |\ \ |\ \ **
** \ \ \\\__\ \ \ \ __/|\ \ \|\ \ \ \|\ \ \ \/ /|\ \ \ \ \ \ **
** \ \ \\|__| \ \ \ \_|/_\ \ _ _\ \ __ \ \ ___ \ \ \ \ \ \ **
** \ \ \ \ \ \ \ \_|\ \ \ \\ \\ \ \ \ \ \ \\ \ \ \ \____\ \ \ **
** \ \__\ \ \__\ \_______\ \__\\ _\\ \__\ \__\ \__\\ \__\ \_______\ \__\ **
** \|__| \|__|\|_______|\|__|\|__|\|__|\|__|\|__| \|__|\|_______|\|__| **
** **
** **
** **
** _____ ______ ________ ___ ___ _____ ______ ___ ___ ________ **
** |\ _ \ _ \|\ __ \ |\ \ / /|\ _ \ _ \|\ \|\ \|\ ___ \ **
** \ \ \\\__\ \ \ \ \|\ \ \ \ \/ / | \ \\\__\ \ \ \ \\\ \ \ \\ \ \ **
** \ \ \\|__| \ \ \ __ \ \ \ / / \ \ \\|__| \ \ \ \\\ \ \ \\ \ \ **
** \ \ \ \ \ \ \ \ \ \ \/ / / \ \ \ \ \ \ \ \\\ \ \ \\ \ \ **
** \ \__\ \ \__\ \__\ \__\__/ / / \ \__\ \ \__\ \_______\ \__\\ \__\ **
** \|__| \|__|\|__|\|__|\___/ / \|__| \|__|\|_______|\|__| \|__| **
** \|___|/ **
** **
** **
** **
** **
** Elektrikle uğraşırken dikkatli olun! **
** **
** **
************************************************** *****************************************
*/


int ses_sensoru = 4;
int role = 5;
int alkis = 0;
long algilama_araligi_baslangic = 0;
long algilama_araligi = 0;
boolean isik_durumu = false;

void setup() {
pinMode(ses_sensoru, INPUT);
pinMode(role, OUTPUT);
}

void loop() {

int sensor_durumu = digitalRead(ses_sensoru);

if (sensor_durumu == 0)
{
if (alkis == 0)
{
algilama_araligi_baslangic = algilama_araligi = millis();
alkis++;
}
else if (alkis > 0 && millis()-algilama_araligi >= 50)
{
algilama_araligi = millis();
alkis++;
}
}

if (millis()-algilama_araligi_baslangic >= 400)
{
if (alkis == 2)
{
if (!isik_durumu)
{
isik_durumu = true;
digitalWrite(role, HIGH);
}
else if (isik_durumu)
{
isik_durumu = false;
digitalWrite(role, LOW);
}
}
alkis = 0;
}
}