.. note:: Bonjour et bienvenue dans la communauté des passionnés de Raspberry Pi, Arduino et ESP32 sur Facebook, animée par SunFounder ! Explorez l'univers de Raspberry Pi, Arduino et ESP32 plus en profondeur avec d'autres passionnés. **Pourquoi nous rejoindre ?** - **Support d'experts** : Résolvez vos problèmes après-vente et vos défis techniques grâce à l'aide de notre communauté et de notre équipe. - **Apprendre et partager** : Échangez des conseils et des tutoriels pour perfectionner vos compétences. - **Aperçus exclusifs** : Bénéficiez d'un accès anticipé aux annonces de nouveaux produits et aperçus exclusifs. - **Réductions spéciales** : Profitez de réductions exclusives sur nos derniers produits. - **Promotions festives et concours** : Participez à des concours et des promotions pendant les fêtes. 👉 Prêt à explorer et créer avec nous ? Cliquez sur [|link_sf_facebook|] et rejoignez-nous dès aujourd'hui ! .. _ar_overheat_monitor: 3.3 Moniteur de surchauffe ============================= Aperçu -------- Vous souhaiterez peut-être créer un dispositif de surveillance de la surchauffe adapté à diverses situations. Par exemple, lorsque la température d'une pièce dépasse 30°C en été, un ventilateur ou un climatiseur s'allume automatiquement. Si le réfrigérateur cesse de fonctionner correctement, une alarme se déclenche. Lorsque le processeur surchauffe, un système de refroidissement par eau se met en marche. Dans ce projet, nous utiliserons un thermistor, un relais, un bouton, un encodeur rotatif et un écran LCD pour concevoir un dispositif de surveillance de température intelligent, dont le seuil est ajustable. Vous pourrez personnaliser ce système en fonction de différents scénarios en insérant divers périphériques dans le relais et en utilisant l'encodeur rotatif pour ajuster le seuil de température élevé. Composants requis ----------------- .. image:: img/Part_three_3.1.png :align: center .. image:: img/Part_three_3.2.png :align: center * :ref:`cpn_mega2560` * :ref:`cpn_breadboard` * :ref:`cpn_wires` * :ref:`cpn_resistor` * :ref:`cpn_led` * :ref:`cpn_button` * :ref:`cpn_i2c_lcd1602` * :ref:`cpn_rotary` Circuit Fritzing --------------------- Dans cet exemple, les modules sont connectés comme indiqué dans le schéma ci-dessous. .. image:: img/Part_three_3_Fritzing_Circuit.png :align: center .. image:: img/image276.png :alt: 3.3 Overheat Monitor_bb :align: center **Schéma de câblage** ----------------------- .. image:: img/image277.png :align: center Code ------- .. note:: * Vous pouvez ouvrir directement le fichier ``3.3_overheatMonitor.ino`` situé dans le dossier ``sunfounder_vincent_kit_for_arduino\code\3.3_overheatMonitor``. * La bibliothèque ``LiquidCrystal I2C`` est utilisée ici, vous pouvez l'installer depuis le **Gestionnaire de bibliothèques**. .. image:: img/lib_liquidcrystal_i2c.png :align: center .. raw:: html Explication de l'exemple ---------------------------- Le diagramme de flux du projet est le suivant : .. image:: img/Part_three_3_Example_Explanation.png :align: center En utilisant la bibliothèque EEPROM.h, le seuil de température élevé est enregistré dans l'EEPROM afin d'éviter que la valeur ne soit réinitialisée après le redémarrage du microcontrôleur. **Fonctions de la bibliothèque :** .. code-block:: arduino void write(address,value) Écrit un octet dans l'EEPROM. .. code-block:: arduino void Read(address) Lit un octet depuis l'EEPROM. Les emplacements qui n'ont jamais été écrits ont la valeur 255. .. code-block:: arduino void update(address,value) Écrit un octet dans l'EEPROM. La valeur est écrite uniquement si elle diffère de celle déjà enregistrée à la même adresse. .. code-block:: arduino void put(address,value) Écrit n'importe quel type de donnée ou objet dans l'EEPROM. .. code-block:: arduino void get(address) Lit n'importe quel type de donnée ou objet depuis l'EEPROM. Image de phénomène ---------------------- .. image:: img/image279.jpeg :align: center