Posted by SainSmart on




Colline,


J'ai commencé un nouveau projet...
Un ami m'a demandé de lui construire un système de contrôle de température pour sa production de bière artisanale. :-)

Cette unité de contrôle doit être capable de maintenir la température d'un fluide à un niveau de température défini et de contrôler le chauffage du réservoir de fluide.
L'élément chauffant du réservoir a une puissance de 1800W.

Pour le contrôler, je choisirai pour cette tâche un relais de 20 A.

Ma configuration :

  • Écran TFT SaintSmart 1,8" (similaire à l'écran TFT Adafruit) - utilisant les bibliothèques Adafruit (ST7735 et gfx) [cliquer]
  • Arduino mini pro 328
  • PT1000 avec un convertisseur Hygrosens PT-MOD-10V-T2 0 - +160 °C

Lors de la mise en œuvre du firmware, j'ai également décidé de créer un framework pour ce magnifique écran TFT en utilisant les bibliothèques Adafruit.
Grâce à ce framework, vous pourrez configurer très rapidement et facilement des objets graphiques complexes sur votre IHM (écran TFT), tels que des symboles, des champs de texte, des LED, des graphiques à barres et bien plus encore.

Chaque objet possède plusieurs fonctions de paramétrage définies, par exemple : couleur de premier plan, couleur d'arrière-plan, texte, valeurs maximales et minimales, mise à jour d'un objet, écriture d'une valeur dans un objet ou basculement synchronisé dans le temps. (Par exemple, le framework devrait offrir une convivialité similaire à celle d'un EDI moderne comme Visual Studio .NET.)

Un graphique à barres entièrement fonctionnel ne nécessite donc que quelques lignes de code dans votre programme Arduino, car le code fonctionnel est stocké dans une classe C++ de mon framework.

Vous trouverez un bref aperçu de ce framework dans la vidéo ci-jointe.

L'image suivante vous donnera un aperçu de mon écran IHM (Interface Homme-Machine).

  • La première ligne affiche le texte d'en-tête ; ici, le nom de l'application.
  • 6 Symboles
    • R ... Mode RUN => ce symbole alternera entre le vert et le noir une fois par seconde (la durée est variable et peut être définie).
    • P ... Mode programme => ce symbole est statique si vous êtes en mode programme
    • Mode automatique => ce symbole est statique si vous êtes en mode de chauffage automatique.
    • m ... Mode manuel => ce symbole est statique si vous êtes en mode de chauffage manuel
    • H ... Chauffage => ce symbole est statique si l'élément chauffant est allumé
    • E ... Erreur => ce symbole est statique et indique qu'un avertissement ou une erreur s'est produit(e).
  • IST Temp = température réelle (ex. ici 51°C - il ne s'agit que d'un exemple ici)
  • ZIEL Temp = température cible (ex. ici 20°C - ce n'est qu'un exemple)
  • dT = différence de température – il s'agit de la position de fonctionnement minimale de l'élément chauffant. Si la température réelle est supérieure à la température cible, l'élément chauffant est désactivé ; il se réactive si la température réelle est inférieure à la température cible moins dT.
  • En dernière position, un graphique à barres de la température actuelle est affiché avec les valeurs maximales et minimales.



Je vais bientôt vous donner plus de détails à ce sujet, et notamment sur le cadre IHM.

Profitez-en :-)

Retour au blog