Budík s LED displejem

Tento projekt je mým druhým projektem. Jedná se o jednoduchý budík s LED displejem a modulem RTC. Na tomto projektu jsem se hlavně naučil pracovat s RTC modulem a získal jsem základy pro LED displej. Pro ovládání jsem zvolil 3 potenciometry, jeden vypínač a jedno senzorové tlačítko. Výstupní prvky jsou diody, LED displej a reproduktor. Tento projekt je vhodný pro začátečníka.

Použitý materiál:

  • 1 ks - Arduino Nano R3, ATmega328 Klon
  • 1 ks - Arduino Nano terminal shield
  • 1 ks - Zdroj 230V / 9V
  • 1 ks - RTC Hodiny reálného času DS3231 AT24C32
  • 1 ks – LED displej TM1637
  • Několik ks - Dupont propojovací kabely
  • 3 ks - potenciometr 50k + 3 kolečka
  • 1 ks - Digitální Kapacitní dotykový senzor TTP223B
  • 3 ks - Oranžová LED dioda
  • 1 ks - Červená LED dioda
  • 4 ks - Rezistor
  • 2 ks - Reproduktor 1 W
  • 1 ks - Dřevěná deska jako základ (viz.foto)
  • 4 ks - Tvarované a upravené plechy (viz. foto)

Na dřevěnou desku jsem přimontoval terminal shield a k němu připojil další periferie. Např. Displej, RTC modul DS3231, potenciometry, vypínač, LED diody a senzorové tlačítko. Po zapojení a nahrání SW jsem vyrobil plechové kryty a přimontoval je na dřevěnou desku (viz.fotky).

Zapojení:

Arduino nano je připojeno k napájení přes VIN a GND. Zapojení RTC modulu je GND, Vcc, SDA-A4, SCL-A5. Výstupy z Arduina D4 až D6 jsou připojeny (přes odpory) na oranžové diody. Výstup D7 je přes odpor připojen na červenou LED „D“. Zapojení LED displeje je: GND, Vcc, CLK-D2,  DIO-D3. Reproduktory jsou jeden vodič na GND a druhý na D9. Krajní kontakty potenciometrů A, B, a C jsou připojeny stejně, a to jeden kontakt na +5V a druhý na GND. Prostřední kontakty jsou vyvedeny na A0, A1 a A2. Každý potenciometr na samostatný vstup. Vypínač „D“ na vypínání alarmu a uložení hodnot je připojen na D8 a GND, spíná při logické 0. Na pinu D8 je SW zapnutý pull-up rezistor. Senzorové tlačítko „E“ je připojeno na +5V, GND a D12.

Program:

Nic složitého, vhodné i pro začátečníka. Po nahrání kódu je potřeba zakomentovat řádek s nastavením data a času z PC. Po zakomentování je potřeba takto upravený program znovu nahrát. Potenciometrem „A“ se řídí funkce a potenciometry „B“ a „C“ se mění parametry dané funkce. Popis funkcí:

funkce - 0 - Běží čas, nic se nenastavuje, pokud je zapnutý budík, budí v nastaveném čase.

funkce - 1 - Nastavuje se alarm, pokud není zapnut „D“. Pokud je „D“ zapnutý, nic se neděje.

funkce - 2 - Nastavuje se  čas modulu RTC. Pokud je „D“ zapnuto, nic se neděje.

funkce - 3 - Nastavuje se opakovaní budíku ve stejném dni a čas opakování v minutách. Pokud je vypínač „D“ zapnut, nic se neděje.

funkce - 4 - Zobrazuje den,měsíc,rok, teplotu, čas, budík není aktivní a vše se stále zobrazuje dokola.

Pokud cokoliv nastavujeme, zapnutím „D“ se nastavované parametry uloží. Hlasitost přehrávané melodie nejde nastavit. Při stisku senzorového tlačítka „E“ se zobrazí čas alarmu a opakování v minutách. Dioda „D“ signalizuje zapnuté buzení.

Budík mi slouží již několik měsíců bez závady a spolehlivě mě vždy vzbudil. V modulu RTC je potřeba mít baterii (při vypnutém napájení zde běží čas a uchovává se zde nastavení budíku)! 

Další podobné články

Ovládání teploty pomocí relé a senzoru DS18B20

Tento projekt umožňuje měřit teplotu pomocí senzoru DS18B20, zobrazit ji na I2C LCD displeji, a ovládat relé podle teplotních limitů. Relé bude aktivní, když je teplota mezi 0 a 22 stupni Celsia. Projekt může sloužit k ovládání topení, ventilace nebo jiného zařízení podle okolní teploty.