- Composants requis:
- Configurer Raspberry Pi pour le réveil:
- Schéma de circuit et connexions:
- Programme et explication de travail:
Dans cette session, nous allons interfacer le module d'horloge temps réel DS1307 avec Raspberry PI pour créer un réveil. Bien que Raspberry Pi ait une horloge interne, mais sans connexion Internet, cette horloge interne se réinitialise après chaque redémarrage. Donc, pour obtenir un TEMPS précis sans connexion Internet, nous devons interfacer un module RTC DS1307 avec Raspberry Pi. Le module RTC a une pile bouton pour la sauvegarde afin que le TEMPS ne soit pas réinitialisé. Nous avons également construit un réveil en utilisant Arduino et en utilisant le microcontrôleur ATmega32 AVR, vérifiez-les également.
Dans cette horloge numérique Raspberry Pi, un écran LCD de 16 * 2 caractères doit afficher le temps réel, l'heure de l'alarme et l'état de l'alarme (ON / OFF). Une fois que le programme commence à s'exécuter dans Pi, nous pouvons déconnecter le moniteur et régler l'alarme à l'aide de cet écran LCD et de cinq boutons.
Chacune des 17 broches GPIO peut fournir ou tirer un courant maximum de 15 mA. Alors ne jouez pas avec les broches GPIO et vérifiez les connexions deux fois avant d'alimenter le Raspberry Pi. En savoir plus sur les broches GPIO et le bouton d'interfaçage avec Raspberry Pi ici. Consultez également notre série de tutoriels Raspberry Pi ainsi que quelques bons projets IoT.
Composants requis:
Ici, nous utilisons Raspberry Pi 2 Model B avec le système d'exploitation Raspbian Jessie. Toutes les exigences matérielles et logicielles de base sont décrites précédemment, vous pouvez les rechercher dans l'introduction de Raspberry Pi et le clignotement du voyant Raspberry PI pour commencer, à part ce dont nous avons besoin:
- Raspberry Pi avec OS pré-installé
- Module RTC DS1307 avec batterie
- Source de courant
- Résistance 1KΩ (6 pièces)
- 5 boutons
- Condensateur 1000uF (2 pièces)
- LCD 16 * 2 caractères
- Transistor 2N2222
- Avertisseur sonore
Configurer Raspberry Pi pour le réveil:
Avant d'aller plus loin, nous devons configurer un peu Raspberry Pi et installer le fichier de bibliothèque pour le module RTC, suivez les étapes ci-dessous:
Étape 1: Accédez d'abord au menu de configuration Raspberry Pi et activez l'option I2C comme indiqué ci-dessous:
Étape 2: Créez un nouveau dossier sur l'écran du bureau Raspberry Pi et nommez-le comme «Réveil»
Étape 3: Téléchargez le fichier d'en-tête pour le module RTC à partir du lien ci-dessous:
codeload.github.com/switchdoclabs/RTC_SDL_DS1307/zip/master
Étape 4: Décompressez le fichier zip téléchargé dans le dossier (Alarm Clock) créé sur DESKTOP, comme indiqué à l'étape précédente.
Étape 5: Ouvrez la fenêtre du terminal dans Raspberry Pi et entrez la commande ci-dessous, puis appuyez sur Entrée:
sudo apt-get install i2c-tools
Cette commande installe les outils I2C requis pour interfacer le module RTC. Ensuite, redémarrez le Raspberry pi en exécutant la commande « sudo reboot» .
Étape 6: Nous devons maintenant vérifier l'adresse I2C du module RTC. Avant de vérifier l'adresse, connectez d'abord le module RTC comme indiqué dans le schéma de circuit ci-dessous.
Entrez ensuite ci-dessous dans la fenêtre du terminal.
sudo i2cdetect -y 0 OU sudo i2cdetect -y 1
Étape 7: Si l'une des commandes ci-dessus fonctionne, vous verrez quelque chose comme ceci:
Étape 8: Vous verrez l'adresse I2C 0x68 si le module RTC est correctement connecté, enregistrez la valeur.
Avec cela, tous les ajustements nécessaires sont effectués avec la configuration Raspberry Pi.
Schéma de circuit et connexions:
Les connexions entre Raspberry Pi et LCD sont indiquées dans le tableau ci-dessous:
Les connexions entre Raspberry Pi et cinq boutons sont également indiquées dans le tableau ci-dessous avec la fonction respective de chaque bouton:
Programme et explication de travail:
Le module RTC a une pile bouton pour la sauvegarde de l'alimentation, comme indiqué, de sorte que l'heure sera à jour jusqu'à ce que la sauvegarde soit épuisée et nous aurons l'heure précise dans RTC.
Nous allons maintenant écrire un programme Python pour obtenir l'heure exacte du module RTC DS1307. Cette heure sera affichée sur l'écran LCD 16x2. Après cela, nous aurons la fonction de réveil écrite dans le programme. L'heure de l'alarme sera également affichée sur la deuxième ligne de l'écran LCD, suivie de l'état ON et OFF. L'heure de l'alarme peut être ajustée par 5 boutons connectés au Raspberry Pi comme mentionné dans le tableau ci-dessus et il est très facile de régler l'alarme. Vous pouvez également consulter notre vidéo de démonstration pour faire fonctionner ce réveil Raspberry Pi. Il y a 2 boutons pour incrémenter et décrémenter l'heure de l'alarme, 2 boutons pour incrémenter et décrémenter l'heure des minutes d'alarme et 1 bouton pour ON et OFF l'alarme.
Le programme Python continue de comparer l'heure d'alarme avec l'heure RTC en continu et une fois que l'heure d'alarme correspond à l'heure RTC, PI déclenche le buzzer, qui est connecté à la broche GPIO 22 du Raspberry Pi via le transistor NPN 2N2222. Ainsi, une fois l'heure de l'alarme atteinte, le buzzer émet le son.
Le programme complet est donné ci-dessous et bien expliqué à travers les commentaires. Si vous avez le moindre doute, vous pouvez demander dans la section commentaires ci-dessous.