Cuprins:

SmartClock: 6 pași
SmartClock: 6 pași

Video: SmartClock: 6 pași

Video: SmartClock: 6 pași
Video: Lenovo Smart Clock - How To Setup and Use 2024, Iulie
Anonim
Ceas destept
Ceas destept
Ceas destept
Ceas destept
Ceas destept
Ceas destept

SmartClock nu este doar un ceas, ci este și un mod ușor de a vedea statisticile de pe rețelele sociale și de vreme.

Vă puteți conecta la facebook și puteți obține aprecierile dvs. sau vă puteți conecta la soundcloud și afișați adepții dvs. în direct! Singurul lucru pe care trebuie să-l faceți, pentru a vedea acest lucru, este să apăsați butonul de mod.

Există mai mulți senzori pe acest dispozitiv, care colectează în mod constant informații și păstrează aceste informații într-o bază de date. Puteți vizualiza aceste date, pe un grafic frumos de pe site.

De asemenea, puteți reda muzică pe care o selectați pe unitate sau pe site.

Provizii

- Raspberri Pi

- Arduino Uno

- Boxe cu ampilificator

- Afișaj de 4 * 7 segmente

- DHT 11

- LM35 (opțional)

- LDR

- MCP3008

- Afișaj LCD 16x2

- 5 comutatoare normal deschise monostabile

- Rezistoare 100k, 220, 1k și 5k

- Alimentare electrică

- O mulțime de cabluri jumper, masculin / feminin și feminin / feminin

Pasul 1: DHT 11 Pinout

DHT 11 Pinout
DHT 11 Pinout
DHT 11 Pinout
DHT 11 Pinout
DHT 11 Pinout
DHT 11 Pinout

Există 2 tipuri de DHT11. În funcție de versiunea pe care ați cumpărat-o, veți avea fie 3, fie 4 pini.

Vcc merge la 3,3 V, semnalul merge la GPIO4 Dacă aveți o versiune de 4 pini, trebuie să plasați un rezistor 4k7 între vcc și pinul de semnal. Dacă aveți o versiune de 3 pini, sunteți bine să mergeți.

Pasul 2: MCP3008 Cu comutatoare LDR, LM35 și Pulldown

MCP3008 Cu comutatoare LDR, LM35 și Pulldown
MCP3008 Cu comutatoare LDR, LM35 și Pulldown
MCP3008 Cu comutatoare LDR, LM35 și Pulldown
MCP3008 Cu comutatoare LDR, LM35 și Pulldown
  • VDD - 3,3V
  • Vref - 3,3V
  • AGND - Teren
  • CLK - GPIO9
  • DOUT - GPIO MISO
  • DIN - GPIO MOSI
  • CS - CS0
  • DGND - Teren

CH0 merge între un rezistor de 10k și un ldr

CH1 merge la știftul mijlociu al Lm35

Pasul 3: Afișaj LCD

Ecran LCD
Ecran LCD

Pentru ca ecranul LCD să funcționeze, conectați primul pin la masă, iar al doilea la + 5 V. Al treilea pin trebuie conectat printr-un rezistor de 5 k la masă sau un potențiometru dacă doriți să schimbați luminozitatea.

Pinul RS merge la GPIO22, RW merge direct la gnd. În acest moment, ar trebui să vedeți o linie de dreptunghiuri negre pe ecran. acum trebuie doar să conectați cei 8 pini de date la pinii GPIO pe care îi aveți gratuit și conectați LED + la 5v, LED- la masă.

Pasul 4: Afișaj segment 4 * 7

Afișaj segment 4 * 7
Afișaj segment 4 * 7

Afișajul dvs. poate fi un anod comun / catod comun. Acest lucru nu contează pentru modul în care îl conectați, dar este bine să știți ce tip aveți. Asigurați-vă că păstrați pinul RX0 liber, deoarece va trebui să îl conectăm la TX0 pe RPI. Restul conexiunilor nu contează, deoarece codul este scris ulterior.

Pasul 5: Construcție

Constructie
Constructie
Constructie
Constructie

Pentru a crea această configurație pe un panou, veți avea nevoie de mult spațiu. Aș recomanda să lipiți MCP cu rezistențe LM35 și al pe un testprint și să adăugați niște anteturi. În acest fel, îl puteți conecta doar cu câteva fire jumper feminin / feminin. Asigurați-vă că conectați terenurile raspberri și arduino. Aveți grijă să nu amestecați 3.3V cu 5V

Pasul 6: Software

Software
Software
Software
Software

Am folosit Python, cu balon pentru backend. Html, css / less & javascript ca frontend și cod arduino pentru arduino.

Există, de asemenea, o bază de date care rulează pe Raspberry pi care salvează datele senzorului, precum și alarmele pe care le-ați setat și informațiile despre utilizator. Această bază de date este rulată pe un server MariaDB. Interogările pentru a obține date din aceasta sunt scrise în spatele meu, în python. Aceasta convertește datele în json pe puncte finale personalizate. Putem obține aceste date în front-end-ul nostru trimițând o cerere GET către backend-ul nostru. Aici putem face orice vrem cu datele. Am ales pentru grafice, realizate de chart.js, care este o extensie javascript.

Recomandat: