Jumat, 11 Agustus 2017

Code Sensor pir arduino

Code Sensor pir arduino - Hallo sahabat safeanythink, Pada Artikel kali ini yang berjudul Code Sensor pir arduino, kami berusaha mempersiapkan artikel ini dengan sebaik baiknya untuk anda baca dan ambil informasi didalamnya. Semoga isi postingan Artikel sketch arduino, yang kami tulis ini dapat dengan mudah anda pahami. baiklah, selamat membaca.



Judul : Code Sensor pir arduino
link : Code Sensor pir arduino

Baca juga


Code Sensor pir arduino

/*
Script ini berasal dari
http://roboticbasics.blogspot.com

Dan telah dimodifikasi oleh Muhammad Syafi'i pada tanggal 15 Agustus 2017
dan resmi menjadi bagian dari blog Jalanambrol

*/
int ledPin = 13;
// Memilih pin untuk LED

int inputPin = 2;
// Memilih input pin (untuk sensor PIR)

int pirState = LOW;
// Kita mulai, dengan asumsi tidak ada gerakan terdeteksi

int nilaisensor = 0;
// Variabel untuk membaca status pin

int pinSpeaker = 10;            // Mengatur pembicara pada pin PWM (digital 9, 10, atau 11)

void setup()
{

pinMode(ledPin, OUTPUT);      //Mendeklarasikan LED sebagai output

pinMode(inputPin, INPUT);     // Mendeklarasikan sensor sebagai input

pinMode(pinSpeaker, OUTPUT);

Serial.begin(9600);
}
void loop(){
val = digitalRead(inputPin);  // Membaca nilai masukan
if (nilaisensor == HIGH) {            // Memeriksa apakah input adalah TINGGI
digitalWrite(ledPin, HIGH); // Hidupkan LED ONplayTone(300, 160);delay(150);

if (pirState == LOW) {
//jika status pir sama dengan 0(nol)

Serial.println("gerakan terdeteksi!");// menampilkan tulisan "gerakan terdeteksi ""di serial monitor

pirState = HIGH;//membuat status pir menjadi 1
}
}
else { //jika tidak

digitalWrite(ledPin, LOW); //

playTone(0, 0);

delay(300);

  if (pirState == HIGH){
// Jika status sensor pir = high/1

Serial.println("gerakan berhenti!");// Menampilkan tulisan gerakan berhenti pada serial monitor

pirState = LOW;
}
}
}// Durasi msecs dalam, hertz Frekuensi

void playTone(long duration, int freq) {duration *= 1000;

int period = (1.0 / freq) * 1000000;
long elapsed_time = 0;
while (elapsed_time < duration) {
digitalWrite(pinSpeaker,HIGH);
delayMicroseconds(period / 2);
digitalWrite(pinSpeaker, LOW);
delayMicroseconds(period / 2);
elapsed_time += (period);
}
}

logoblog

Tidak ada komentar:

Posting Komentar