Faites votre propre contrôleur de température avec un Arduino

Soulevez le pain parfait, préparez de belles bières et éloignez les poussins heureux avec un contrôleur de température Arduino. Si vous vivez dans un climat moins fiable que l'Angleterre, les directions qui vous indiquent de garder quelque chose à une température définie ne sont pas particulièrement utiles - nous n'avons pas de climatiseurs, et élever le thermostat pour toute la maison n'est pas pratique pour juste faire une miche de pain.

Soulevez le pain parfait, préparez de belles bières et éloignez les poussins heureux avec un contrôleur de température Arduino.  Si vous vivez dans un climat moins fiable que l'Angleterre, les directions qui vous indiquent de garder quelque chose à une température définie ne sont pas particulièrement utiles - nous n'avons pas de climatiseurs, et élever le thermostat pour toute la maison n'est pas pratique pour juste faire une miche de pain.
Publicité

Soulevez le pain parfait, préparez de belles bières et éloignez les poussins heureux avec un contrôleur de température Arduino. Si vous vivez dans un climat moins fiable que l'Angleterre, les directions qui vous indiquent de garder quelque chose à une température définie ne sont pas particulièrement utiles - nous n'avons pas de climatiseurs, et élever le thermostat pour toute la maison n'est pas pratique pour juste faire une miche de pain. Même gardés à l'intérieur, les poussins peuvent mourir si la température baisse la nuit; et les faire éclore en premier lieu a une gamme de température encore plus stricte. Mais j'ai besoin de mon pain, et les poussins doivent éclore - ainsi au lieu d'acheter l'équipement cher, nous pouvons paver ensemble un contrôleur de température compétent avec un Arduino et des morceaux de ménage.

Il en va de même pour garder les articles au frais - il peut être inutile de faire fonctionner un réfrigérateur entier pour faire du yaourt - mais avec un contrôleur de température, le principe est le même. Au lieu d'activer un élément chauffant, vous activerez la prise sur un mini-réfrigérateur ou un autre élément de refroidissement, comme un Peltier (refroidisseur thermoélectrique) - et bien sûr, la logique sera inversée.

Ce dont tu auras besoin

C'est un projet Arduino - si vous n'avez jamais travaillé avec Arduino auparavant, notre guide de débutant gratuit est un endroit fantastique pour commencer.

  • Arduino
  • Capteur de température - J'utilise un TMP36, un appareil monobloc bon marché fourni avec le kit de débutant Oomlout (UK) / Sparkfun (US).
  • Relais ou commutateurs RC
  • Bornes à vis
  • Boîte pour piéger la chaleur
  • Élément chauffant ou ampoule incandescente et luminaire (ou les deux)

Le dernier élément a été laissé délibérément vague. Si vous avez une ampoule à incandescence (le genre qui devient chaud, pas une ampoule à économie d'énergie), ou une lampe chaude pour les blessures sportives et autres, c'est probablement la plus facile à mettre en place. J'utilise une bande chauffante - essentiellement une bande de caoutchouc qui s'échauffe lorsque l'électricité passe, utilisée sur les touries et les fûts pour les étapes initiales de fermentation dans le vin ou la bière - techniquement, cela peut constituer un risque d'incendie, alors s'il vous plaît ne faites pas cela, je ne l'utilise que pour tester . Vous pouvez également acheter des coussins chauffants dans le même but.

Pour des raisons de sécurité, j'utilise ces prises RC pour commuter les appareils AC, avec un contrôleur piraté détaillé dans cet article de domotique. Contrôler les appareils d'un Arduino: Le début des appareils de domotique chez un Arduino: le début de la domotique Au cours du temps, je vous ai montré quelques façons de contrôler la parole de vos projets Arduino via SiriProxy, les éléments explicites intégrés d'OS X et certains scripts Automator, ou même une puce matérielle dédiée à la reconnaissance vocale. Je ... Lire la suite. C'est sans fil, donc à aucun moment j'ai besoin de toucher des fils électriques.

Détection de température

Commençons par câbler et tester le capteur. [Diagramme d'Adafruit]

adafruit-tmp36

Avec le côté plat vers vous et les jambes vers le bas, le capteur de température TMP36 est câblé +, signal, GND dans cet ordre. Le + va à la sortie 3, 3 V d'Arduino; vous avez également besoin d'une autre ligne allant de +3, 3 V à la broche AREF - cela indique à l'Arduino d'utiliser 3, 3 V pour la référence d'entrée analogique au lieu de 5 V. Connectez la broche du signal du capteur à A1. Dans les tentatives précédentes, j'avais utilisé le TMP36 directement sur la ligne 5 V; cela fonctionne, mais malheureusement, quand il est associé à un relais, il y a eu une chute de puissance chaque fois que le relais a été activé, ce qui a entraîné des lectures très fluctuantes.

J'ai utilisé un vieux câble réseau comme câble de signal - très utile d'avoir autour, car il y a 8 fils à l'intérieur. Le câble est assez mince, alors assurez-vous de renforcer l'autre extrémité avec de la soudure où il sera vissé dans un bornier.

tmp36-capteur-câblage

La formule dans le code suppose que vous utilisez le capteur tMP36; vous devriez être en mesure de trouver un échantillon de code pour d'autres capteurs. Cet exemple de code provient d'Adafruit - chargez-le et ouvrez la console série pour examiner la sortie.

tmp36-testing

Comparez avec un thermomètre si possible. Les lectures ne sont pas correctes?

  • Vérifiez que la tension fournie est en réalité de 3, 3 V
  • L'AREF est-il également connecté à 3, 3 V?

Ajout dans Switch Logic

Pour contrôler l'élément chauffant, j'utilise ces prises RC de Maplin et j'ai démonté le contrôleur. Seules les broches de masse et de contrôle doivent être connectées. J'ai modifié le code pour inclure les bibliothèques pertinentes que vous pouvez télécharger ici.

rc-switches

À ce stade, je vais également supprimer toutes les références à Farenheit et continuer à travailler uniquement avec Celsius. J'ai ensuite défini une température désirée à maintenir, et ajouté dans une structure de contrôle simple comme ceci:

if(temperatureC< desiredTempC){ mySwitch.switchOn(1, 1); Serial.println("Heater ON"); } else{ Serial.println("Heater OFF"); mySwitch.switchOff(1, 1); } 

Il n'y a rien de complexe ici que vous ne comprendrez pas - il suffit de comparer la lecture de la température actuelle à celle désirée, et d'allumer l'interrupteur s'il est plus bas; sinon, éteignez-le.

Le code complet peut être trouvé ici, mais vous devrez l'ajuster si vous utilisez un relais (ce n'est pas difficile). Voici le schéma de câblage complet que j'ai utilisé:

câblage

Mettre tous ensemble

Collez le capteur à l'intérieur de la boîte que vous utilisez et placez l'élément chauffant à l'endroit approprié. Réglez la température désirée et allumez-la. Si vous gardez votre PC connecté pour l'instant, vous pouvez utiliser la console série pour observer les changements pendant que votre boîte chauffe.

contrôleur de température

La poursuite des travaux

  • Pour réduire l'impact des fluctuations de température, vous pouvez essayer de lisser les résultats. Créez un tableau pour stocker 10 lectures et calculez une moyenne sur chaque boucle.
  • Pour éviter l'activation et la désactivation rapides de l'élément chauffant, créez une variable pour stocker un compte à rebours. Chaque fois que vous activez ou désactivez, enregistrez l'heure actuelle dans le compte à rebours, puis avant de basculer à nouveau l'état vérifiez pour voir si X temps s'est écoulé depuis le dernier changement d'état.
  • Pour un projet sans ordinateur, branchez un petit écran LCD pour afficher la température actuelle et vous permettre de voir la température actuelle et souhaitée.

Le mettre à l'épreuve

Enfin, que serait ce projet sans un petit test? J'ai fouetté un morceau de pâte prête à l'emploi dans la machine à pain et je l'ai divisé en deux pains. Celui qui a été levé à l'intérieur de la boîte était légèrement plus gros, mais la température de l'air ambiant est aujourd'hui d'environ 26 degrés Celsius, ce qui serait beaucoup plus utile en hiver. Peu importe, je ferais mieux de faire de la soupe pour accompagner ce joli pain.

test de pain

Alors, que feriez-vous qui exige une température constante?

Crédit d'image: Ian Watkins / flickr

In this article