Arduino ve PIR Sensörü Arayüzü: 4 Adım

Arduino ve PIR Sensörü Arayüzü: 4 Adım

İçindekiler:

Anonim

Merhaba arkadaşlar, bugün bu talimatlarda, Arduino ile PIR Motion sensörünün nasıl kullanılacağını anlatacağım. Bunu geceleri güvenlik sistemi olarak kullanabilirsiniz. Öyleyse, bu projeyi yapalım !!!

Gereçler:

Adım 1: Gerekli Bileşenler

1.) Arduino UNO

2.) PIR Hareket sensörü

3.) USB B Tipi kablo

4.) Arduino IDE yüklü Laptop

5.) Bazı teller

6.) Breadboard

7.) LED

2. Adım: Şematik

Adım 3: Kod

Aşağıdaki kodu kopyalayın ve Arduino'nuza yükleyin.

// VARS // sensöre kalibre etme süresi (veri sayfasına göre 10-60 saniye) int calibrationTime = 30;

// sensörün düşük darbeli çıktığı zaman uzun imzasız int lowIn;

// tüm hareketin uzun bir süre imzasız durduğunu varsaymadan önce sensörün milisaniye miktarının düşük olması gerektiği // //;

boolean lockLow = true; boolean takeLowTime;

int pirPin = 2; // PIR sensörünün çıkışına bağlı dijital pin int ledPin = 8;

/////////////////////////Tr//// /// SET/ geçersiz kurulum () {Seri.begin (9600); pinMode (pirPin, INPUT); pinMode (ledPin, ÇIKIŞ); digitalWrite (pirPin, LOW);

// Serial.print'i ("kalibrasyon sensörü") kalibre etmesi için sensöre biraz zaman verin; (int i = 0; i <calibrationTime; i ++) {Serial.print ("."); Gecikme (1000); } Serial.println ("yapıldı"); Serial.println ("SENSÖR AKTİF"); gecikmesi (50); }

///////////////////////Tr///// // LOOP void loop () {

if (digitalRead (pirPin) == YÜKSEK) {digitalWrite (ledPin, HIGH); // led, eğer (lockLow) {//, başka bir çıkış yapılmadan önce LOW'a geçişi beklememizi sağlarsa, sensörlerin çıkış pininin durumunu gösterir: lockLow = false; Serial.println ("---"); Serial.print ("hareket algılandı"); Serial.print (Millis () / 1000); Seri.println ("sn"); gecikmesi (50); } takeLowTime = true; }

if (digitalRead (pirPin) == DÜŞÜK) {digitalWrite (ledPin, LOW); // led, sensörlerin çıkış pin durumunu gösterir

if (takeLowTime) {lowIn = millis (); // yüksekten LOW'a geçiş zamanından tasarruf edin takeLowTime = false; // bunun yalnızca LOW fazının başında yapıldığından emin olun} // eğer sensör verilen duraklamadan daha fazla bir süre için düşük ise, // eğer daha fazla hareket olmayacağını varsayarız (! lockLow && millis () - lowIn> pause) {// bu kod bloğunun ancak yeni bir hareket dizisi tespit edildikten sonra tekrar çalıştırılmasını sağlar lockLow = true; Serial.print ("hareket sona erdi"); // Serial.print çıktı ((millis () - duraklama) / 1000); Seri.println ("sn"); gecikmesi (50); }}}

4. Adım: Uygulama

Bu sistemi evinize kurabilirsiniz, böylece bir şeyin ya da birinin hareket ettiğini bilmek için. İnsanları korkutmak için Cadılar Bayramı sırasında da kullanabilirsiniz. Bu sistem aynı zamanda ışıkları yakmak için de kullanılabilir. Bu, gece boyunca alt katta yürümenize yardımcı olabilir.