Table des matières:

SmartClock : 6 étapes
SmartClock : 6 étapes

Vidéo: SmartClock : 6 étapes

Vidéo: SmartClock : 6 étapes
Vidéo: Lenovo Smart Clock - How To Setup and Use 2024, Juillet
Anonim
Horloge intelligente
Horloge intelligente
Horloge intelligente
Horloge intelligente
Horloge intelligente
Horloge intelligente

La SmartClock n'est pas seulement une horloge, c'est aussi un moyen facile de voir les statistiques des réseaux sociaux et la météo.

Vous pouvez vous connecter à facebook et obtenir vos goûts, ou vous connecter à soundcloud et afficher vos abonnés en direct ! La seule chose que vous devez faire, pour voir cela, est d'appuyer sur le bouton mode.

Il y a plusieurs capteurs sur cet appareil, qui collectent constamment des informations et conservent ces informations dans une base de données. Vous pouvez visualiser ces données, sur un joli graphique sur le site Web.

Vous pouvez également écouter de la musique que vous sélectionnez sur l'appareil ou sur le site Web.

Fournitures

- Framboise Pi

-Arduino Uno

- Haut-parleurs avec amplificateur

- Affichage 4*7 segments

-DHT 11

- LM35 (facultatif)

- LDR

-MCP3008

- Écran LCD 16x2

- 5 interrupteurs Monostable Normal Ouvert

- Résistances 100k, 220, 1k et 5k

- Source de courant

- Beaucoup de câbles de démarrage, mâle/femelle et femelle/femelle

Étape 1: brochage DHT 11

Brochage DHT 11
Brochage DHT 11
Brochage DHT 11
Brochage DHT 11
Brochage DHT 11
Brochage DHT 11

Il existe 2 types de DHT11. Selon la version que vous avez achetée, vous aurez soit 3 ou 4 broches.

Vcc passe à 3,3 V, le signal passe à GPIO4 Si vous avez une version à 4 broches, vous devez placer une résistance 4k7 entre le vcc et la broche de signal. Si vous avez une version à 3 broches, vous êtes prêt à partir.

Étape 2: MCP3008 avec commutateurs LDR, LM35 et pulldown

MCP3008 avec commutateurs LDR, LM35 et pulldown
MCP3008 avec commutateurs LDR, LM35 et pulldown
MCP3008 avec commutateurs LDR, LM35 et pulldown
MCP3008 avec commutateurs LDR, LM35 et pulldown
  • Disque dur - 3,3 V
  • Réf - 3.3V
  • AGND - Terre
  • CLK - GPIO9
  • DOUT - GPIO MISO
  • DIN - GPIO MOSI
  • CS - CS0
  • DGND - Terre

CH0 va entre une résistance de 10k et un ldr

CH1 va à la broche du milieu du Lm35

Étape 3: écran LCD

Affichage LCD
Affichage LCD

Pour que votre écran LCD fonctionne, connectez la première broche à la terre et la seconde à + 5 V. La troisième broche doit être connectée via une résistance de 5 k à la terre ou un potentiomètre si vous souhaitez modifier la luminosité.

La broche RS va à GPIO22, RW va aussi directement à gnd. À ce stade, vous devriez voir une ligne de rectangles noirs sur votre écran. Maintenant, connectez simplement les 8 broches de données aux broches GPIO dont vous disposez et connectez LED+ à 5v, LED- à la terre.

Étape 4: affichage à 4 x 7 segments

Affichage 4*7 segments
Affichage 4*7 segments

Votre écran peut être une anode commune / cathode commune. Cela n'a pas d'importance pour la façon dont vous le connectez, mais il est bon de savoir quel type vous avez. Assurez-vous de garder la broche RX0 libre, car nous devrons la connecter à TX0 sur le RPI. Le reste des connexions n'a pas d'importance, car le code est écrit après.

Étape 5: Construction

Construction
Construction
Construction
Construction

Pour créer cette configuration sur une maquette, vous aurez besoin de beaucoup d'espace. Je recommanderais de souder le MCP avec des résistances LM35 et al sur un test d'impression et d'ajouter des en-têtes. De cette façon, vous pouvez simplement le connecter avec quelques fils de connexion femelle/femelle. Assurez-vous de connecter les motifs raspberri et arduino. Attention à ne pas confondre 3,3V avec 5V

Étape 6: Logiciel

Logiciel
Logiciel
Logiciel
Logiciel

J'ai utilisé Python, avec un flacon pour le backend. Html, css/less et javascript comme interface et code arduino pour arduino.

Il existe également une base de données fonctionnant sur le Raspberry pi qui enregistre les données du capteur, ainsi que les alarmes que vous avez définies et les informations utilisateur. Cette base de données est exécutée sur un serveur MariaDB. Les requêtes pour en extraire des données sont écrites dans mon backen, en python. Cela convertit les données en json sur les points de terminaison personnalisés. Nous pouvons obtenir ces données dans notre front-end en envoyant une requête GET à notre backend. Ici, nous pouvons faire ce que nous voulons avec les données. J'ai choisi les graphiques, réalisés par chart.js, qui est une extension javascript.

Conseillé: