Aide pour gestion température, capteurs et commande de vannes avec envoi de SMS (débutant)

Bonjour à tous,

Je suis débutant en Arduino et je me lance dans un projet pour protéger un appartement en location, situé loin de chez moi. J'utilise une carte UNO R3 (CH340G) avec un microcontrôleur MEGA328P (puce SMD 16 MHz).

:bullseye: Mon objectif :
Pouvoir gérer deux électrovannes et plusieurs capteurs (température, fuite d'eau, gaz) et envoyer des SMS d'alerte en cas de problème.

:hammer_and_wrench: Scénario principal :
En hiver, si la température descend sous 0°C, je veux :

  • Fermer l’électrovanne d’arrivée d’eau,
  • Ouvrir la vanne de purge pour vidanger le réseau et éviter que les tuyaux éclatent à cause du gel,
  • Être alerté par SMS.

En plus, je veux :

  • Détecter une fuite d’eau avec un capteur et couper l’arrivée d’eau,
  • Détecter une fuite de gaz avec un capteur MQ135 et déclencher une alerte,
  • Contrôler tout ça avec un module relais 4 canaux 5V opto-isolé,
  • Recevoir des SMS via le module SIM900 sur différents événements.

:envelope_with_arrow: Exemples de SMS que je souhaite recevoir :

  • :white_check_mark: Système démarré avec succès !
  • :antenna_bars: Connexion au réseau GSM établie
  • :counterclockwise_arrows_button: Vérification des capteurs en cours
  • :green_circle: Système opérationnel
  • :loudspeaker: Alerte Température Basse ! Fermeture de l’eau et purge activée
  • :thermometer: Température normale rétablie, purge désactivée et réouverture de l’eau
  • :fire: ALERTE GAZ DÉTECTÉ !
  • :battery: Tension insuffisante détectée

:floppy_disk: Mon problème (besoin d’aide SVP) :
Avec l’aide de ChatGPT et Perplexity, j’ai tenté d’écrire le programme et de câbler tout le matériel. J’ai fait quelques tests :

  • Bombe de froid pour simuler le gel,
  • Briquet pour simuler une fuite de gaz,
  • Gouttes d’eau pour simuler la fuite.

:backhand_index_pointing_right: Mais rien ne fonctionne correctement :

  • Les relais ne s’activent pas ou mal,
  • Une électrovanne chauffe anormalement,
  • Aucun SMS n’est envoyé.

:sos_button: Je suis un peu perdu et j’aurais besoin de votre aide pour : :white_check_mark: Comprendre comment contrôler mes relais correctement (eau, purge, gaz),
:white_check_mark: M’aider à câbler correctement l’ensemble,
:white_check_mark: Arriver à envoyer les SMS avec mon module SIM900,
:white_check_mark: Avoir des exemples de codes Arduino ou des conseils sur la structure du programme.

:package: Matériel utilisé :

  • Arduino UNO R3 CH340G + MEGA328P 16MHz
  • Module relais 4 canaux 5V opto-isolé
  • Capteur température DS18B20
  • Capteur gaz MQ135
  • Capteur fuite d’eau (type sol)
  • Module SIM900 pour SMS
  • Électrovannes 12V (1 normalement ouverte, 1 normalement fermée)
  • Alimentation 12V / 5V

:folded_hands: Merci beaucoup d’avance pour votre aide, vos conseils ou vos partages de code ! Je suis prêt à fournir plus d’infos ou des photos de mon montage si besoin.

Bonne journée à tous !
Yamine

:warning:
Post mis dans la mauvaise section, on parle anglais dans les forums généraux. déplacé vers le forum francophone.

Merci de prendre en compte les recommandations listées dans Les bonnes pratiques du Forum Francophone

C'est la seconde fois.
Il faut te placer à la racine du forum francophone lorsque tu crées un nouveau fil de discussion ou alors sélectionner le sous-forum international-français dans la fenêtre d'édition (à coté du titre).

Faire commuter un relais lorsqu'on a détecté une fuite de gaz n'est peut-être pas très judicieux.
Il faudrait peut-être envisager des relais statiques qui ne risquent pas de créer d'arc à la commutation.

Si tu as déjà produit quelques choses, mets ton schéma de câblage et ton code dans un message et explique clairement ce qui ne fonctionne pas.

  • as-tu testé séparément le fonctionnement des différents sous-ensembles, avec des petits morceaux de code, avant de faire tourner ton application complète?

Bonjour,
Je vous remercie sincèrement pour votre patience et vos explications. Je tiens à m’excuser à nouveau pour cette erreur de publication.
Je comprends maintenant l’importance de bien sélectionner le sous-forum "International - Français" lors de la création d’un nouveau sujet. C’est noté et je veillerai à bien appliquer cette règle à l’avenir.

Je vais suivre vos conseils :
Poster mon schéma de câblage et le code directement dans mon prochain message.
M’assurer de bien expliquer ce qui ne fonctionne pas.
Tester les sous-ensembles séparément avant de tout assembler.

Merci encore pour vos remarques constructives et le temps que vous prenez pour m’aider.
Je reviens très vite avec les informations demandées.

Bonne journée à tous,
Cordialement.

Pas de problème.