İçindekiler:

LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat: 8 Adım
LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat: 8 Adım

Video: LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat: 8 Adım

Video: LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat: 8 Adım
Video: vivo Y35 İnceleme | Yeni ve Göz Alıcı! 2024, Kasım
Anonim
LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat
LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat
LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat
LCD Ekranlı ve Bluetooth Uygulamalı Gündoğumu Çalar Saat

Kış mevsimi üzücü olabilir. Uyandın, hava karanlık ve yataktan çıkman gerekiyor. Duymak isteyeceğiniz son şey çalar saatinizin rahatsız edici sesidir. Benim gibi sabahları uyanmakta zorluk çekiyorsanız, bu çalar saat tam da ihtiyacınız olan şey.

Bu eğitimde, bir Gündoğumu Alarm Saati oluşturacağız. Uyanmak istediğiniz saat ve dakikayı ayarlayabileceğiniz, ancak gün doğumu gibi bir süre boyunca yatak odanızı aydınlatmak için ışık kullanmanın faydası ile sizi rahatsız eden bir alarm yerine gün doğumu gibi bir çalar saat. zil!

Alarmı telefonunuzdan saate kurmanıza izin veren bir uygulama oluşturmak için bir bluetooth modülü de kullanacağız. LCD ekran haftanın saatini, tarihini ve gününü gösterecektir. Gün doğumu lambaları piyasada mevcuttur, ancak pahalı olabilirler (Google'da hızlı bir arama 100 € aralığındaki ürünleri döndürür), kırılgan ve oldukça klinik görünümlü olabilir. Bu yüzden Arduino Okul Projem için kendim yapmaya karar verdim. Tüm parçalar bir sonraki adımda listelenecektir. Kod, Github repo gündoğumu-alarm-saatimden indirilebilir. Hadi başlayalım:)

tüm kodlar şu adreste bulunabilir:

Adım 1: Parçaları Toplama

Parçaları Toplama
Parçaları Toplama
Parçaları Toplama
Parçaları Toplama
Parçaları Toplama
Parçaları Toplama

Gün doğumumuzu simüle etmek için girişimiz olarak bir saat ve çıkışımız olarak ultra parlak bir LED kullanacağız.

Devreyi kurmak için ihtiyacımız olacak:

- Arduino Uno-clockmodule RTC DS3231 - ışığın parlaklığını kontrol etmek için bir MOSFET - süper parlak bir LED (2, bir sıcak, bir soğuk aldım) - LED'i çalıştırmak için 9V pil - bir devre tahtası - bir LCD Ekran (16:2)- Bluetooth adaptörü hc-05, böylece alarmı kurmak için bir uygulama kullanabiliriz.

İhtiyacınız olan her şey www.martoparts.nl adresinden satın alınabilir

Adım 2: Devrenin Montajı

Devrenin Montajı
Devrenin Montajı
Devrenin Montajı
Devrenin Montajı

Devremin taslağını inceleyebilirsiniz, ne yazık ki programda RTC DS3231'i bulamadığım için bununla yapmak zorunda kaldım. Bağlantılar gerçekte biraz farklıdır, işte bağlantılar. (bluetooth modülü taslakta yok ama nasıl çalıştığını aşağıda anlatacağım çünkü oldukça zor)

RTC DS3231GND, arduino'da GND'ye gidiyor

VCC 5v'ye gidiyor

SDA arduino'ya gidiyor

SCL arduino'ya gidiyor SQW & 32KMOSFET kullanmayacağız

Kapı pini Arduino Uno'da pin~9'a gider çünkü PWMDrain pini LED'in negatif tarafına gider Kaynak pini ArduinoLCD'de GND'ye giderGND arduino'da GND'ye gider

VCC 5VSDA'ya gidiyor arduino'da A4'e gidiyor SKL arduino'da A5'e gidiyorLED- mosfet+'a gidiyor 5v9v pile gidiyor Herhangi bir yerel mağazadan 9v pil satın alabilir, bir konektör şeridi ile arduinoya takın.

Bluetooth modülü hc-055V, arduino'dan 5V'a gidiyor

GND, arduino'da GND'ye gidiyor

Şimdi 2 giriş daha var ama işte zor kısım geliyor, arduinoTX üzerindeki bu 2 girişin zıt girişlerini hc-05'ten arduino'da RX'e gidiyor hc-05'ten arduino'da TX'e gidiyor

Önemli: Arduino'nuza kod yüklerken TX & RX'in HC-05'ten BAĞLANTISINI KESMEYİN, yoksa derleyicide "kodu yüklerken bir şeyler ters gitti" diyen bir hata alırsınız.

Adım 3: LCD Ekranı ve Saati Ayarlama

LCD Ekranı ve Saati Ayarlama
LCD Ekranı ve Saati Ayarlama
LCD Ekranı ve Saati Ayarlama
LCD Ekranı ve Saati Ayarlama

LCD ekran için kullanılan kütüphane sıvı kristaldir ve şu adreste bulunabilir: https://github.com/fdebrabander/Arduino-LiquidCrys… Zip dosyasını indirin, kaydedin ve Arduino'nuzun /libraries klasörüne yerleştirin.

Saati çalıştırmak için kullandığım kitaplık Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 adresinde bulunabilir ve DS3231 sayfasında olduğunuzdan emin olun. Zip dosyasını indirin, kaydedin ve Arduino'nuzun kitaplıklar klasörüne yerleştirin.

Zaman

Arduino kodunuza DS3231 veya DS1307 kitaplığını ekleyin

Saati ayarlamak için bu 3 kod satırını kaldırın:

// rtc.setDOW(PAZARTESİ); // Haftanın Günü'nü SUNDAY olarak ayarla// rtc.setTime(23, 57, 0); // Saati 12:00:00 (24 saat formatı) olarak ayarlayın // rtc.setDate(14, 1, 2019); // Tarihi 1 Ocak 2014 olarak ayarlayın

LCD ekran

Arduino kodunuza liqduicrystal_i2c kitaplığını ekleyin

LCD Ekrana yazdırmak için şunu kullanın:

lcd.setCursor(col, row) // basılan metnin konumulcd.print(~) // basılan metin

Adım 4: Kodlama

kodlama
kodlama

Kodu şuradan indirin: github:

LCD ekranınızda saati ayarlamak için bu 3 satırın yorumunu kaldırın:

// rtc.setDOW(PAZARTESİ); // Haftanın Günü'nü SUNDAY olarak ayarla// rtc.setTime(23, 57, 0); // Saati 12:00:00 (24 saat formatı) olarak ayarlayın // rtc.setDate(14, 1, 2019); // Tarihi 1 Ocak 2014 olarak ayarlayın

lcd.setCuros(col, row) kullanın; metnin ekrandaki konumunu ayarlamak için

lcd.setCursor(0, 2);

ve ekrana bir şey yazdırmak için print()

lcd.print(rtc.getDateStr());

İsterseniz bu değişkenleri değiştirin

int fadeTime = 1; // Işığın maxint'e ne kadar süre söneceği setHour = 02; // Uyanmak için saati ayarlayın (askeri saat)int setMin = 49; // Uyanmak için dakikayı ayarla int uled = 9; // Pinout'u PWM ile ayarla

Bluetooth modülü kodu

String firstHalf = getValue(input, ':', 0); // ":" ye kadar ilk girişi kontrol edin

String saniyeHalf = getValue(input, ':', 1); // ":" den sonraki ikinci girişi kontrol et

// bluetooth modülünü kullanmıyorsanız bu kodu kullanın

// //if (t.hour == setHour && t.min == setMin) // Uyanma vaktinin gelip gelmediğini kontrol edin! // { // Başlat(); // }

// ilk 2 hane girişlerini kontrol edin, ardından ikinci 2 hane girişini kontrol edin

if (t.hour == firstHalf.toInt() && t.min == secondHalf.toInt()) { start(); } }

// stringleri ayırmak için mantık

String getValue(Dize verisi, karakter ayırıcı, int dizin) { int bulundu = 0; int strIndex = { 0, -1 }; int maxIndex = data.length() - 1;

for (int i = 0; i <= maxIndex && bulundu <= dizin; i++) { if (data.charAt(i) == ayırıcı || i == maxIndex) { bulundu++; strIndex[0] = strIndex[1] + 1; strIndex[1] = (i == maxIndex) ? ben+1: ben; } } dönüş bulundu> dizin ? data.substring(strIndex[0], strIndex[1]): ""; }

Adım 5: Test Zamanı

Kodunuzu derleyin ve bileşenlerin çalışıp çalışmadığını test edin!

6. Adım: Bluetooth Uygulaması Kurulumu

Bluetooth Uygulaması Kurulumu
Bluetooth Uygulaması Kurulumu
Bluetooth Uygulaması Kurulumu
Bluetooth Uygulaması Kurulumu
Bluetooth Uygulaması Kurulumu
Bluetooth Uygulaması Kurulumu

Her alarm kurmak istediğimde kodun içine girmeyi can sıkıcı bulduğum için, alarmı kuracak bir uygulama yapmak istedim, bu çok daha kolay.

Http://ai2.appinventor.mit.edu adresine gidin, burada alarmı kurmamıza izin veren basit bir uygulama yapabiliriz, basit tasarım kurulumunu (bunu daha sonra her zaman değiştirebilirsiniz) ve bunun için kullanılan kodu ekledim. bluetooth bağlantısı. Ardından uygulamanızı yayınlayabilir ve bir QR kodu kullanarak veya uygulamayı doğrudan bilgisayarınıza indirip ardından kabloyla telefonunuza taşıyarak telefonunuza bağlanabilirsiniz. (ekran görüntüsü)

7. Adım: Vakayı Oluşturma

Davayı Oluşturmak
Davayı Oluşturmak
Davayı Oluşturmak
Davayı Oluşturmak
Davayı Oluşturmak
Davayı Oluşturmak

Arduino saatinizin etrafında her zaman farklı bir kasa oluşturabilirsiniz. Kendi çalar saat kasamı oluşturmak için ahşap ve mat pleksiglas kullandım. Kasanın içinden parlayan ışığı net bir şekilde görebilmeniz için mat pleksiglas seçtim ama saatin içini göremiyorsunuz.

Adım 8: Tamamlandı

Bitti!
Bitti!
Bitti!
Bitti!
Bitti!
Bitti!

Kodu arduino'nuza yüklediğinize, kasayı oluşturduğunuza ve saatinizi doğru bir şekilde kurup kurmadığınızı kontrol ettiğinize göre, bluetooth uygulamasında bir alarm ayarlayabilir ve daha doğal bir şekilde uyanmaya başlayabilirsiniz!:)

Önerilen: