Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Système de Contrôle de Température par Hystérésis avec Arduino

Composants et fournitures

Composant Description Quantité
Arduino 101 Microcontrôleur 1
Capteur de température DHT22 Mesure température et humidité 1
Fils de liaison (jumper wires) génériques Connexions 1
LED générique Indicateurs (vert/rouge) 2
Résistance 10 kΩ Pour capteur DHT22 1
Résistance 330 Ω Pour LEDs 2
Shield LCD à boutons DFRobot Affichage et interface utilisateur 1
Plaque d'essai (breadboard) générique Montage 1

Applications et services en ligne

À propos du projet

Le projet

Ce projet démontre le fonctionnement d'un système de contrôle de température utilisant l'hystérésis.

Composants

La liste complète des composants utilisés est illustrée ci-dessus.

Contrôle de température

Le système modélise la situation suivante :

Ce comportement à deux seuils (25 °C pour l'activation, 23 °C pour la désactivation) évite les oscillations rapides autour d'un point de consigne unique, caractéristique du contrôle par hystérésis.

Une vidéo montre le fonctionnement en temps réel.

Code

/* Par Alexis Santiago Allende */ /* Dernière mise à jour: 12/03/2017 */
#include "DHT.h"
#include <LiquidCrystal.h>
#define DHTPIN 12
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
boolean a=LOW, b=HIGH;
float h=0, t=0;
const int ledPin = 3;
const int ledPin2 = 2;
long previousMillis = 0;
long interval = 2000;

void setup() {
  lcd.begin(16, 2);
  lcd.setCursor(0,0);
  pinMode(ledPin, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  dht.begin();
  digitalWrite(ledPin2, LOW);
  digitalWrite(ledPin, LOW);
  lcd.print("Tempera:");
  lcd.setCursor(0,1);
  lcd.print("Humedad:");
}

void loop() {
  unsigned long currentMillis = millis();
  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;
    h = dht.readHumidity();
    t = dht.readTemperature();
    lcd.setCursor(10,0);
    lcd.print(t);
    lcd.setCursor(10,1);
    lcd.print(h);
    if(t >= 25 && a==LOW) {
      digitalWrite(ledPin, HIGH);
      digitalWrite(ledPin2, LOW);
      a=HIGH; b=LOW;
    } else if(t <= 23 && b==LOW) {
      digitalWrite(ledPin2, HIGH);
      digitalWrite(ledPin, LOW);
      a=LOW; b=HIGH;
    }
  }
}

Schémas

Schéma de câblage : capteur DHT22 sur broche 12, LEDs sur broches 2 et 3, shield LCD sur broches 8,9,4,5,6,7, résistances de pull-up et limitation de courant.

Processus de fabrication

  1. Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
  2. Stores intelligents : contrôle automatisé de la lumière avec Arduino et énergie solaire
  3. Construire une Tirelire Intelligente : Contrôler un Accepteur de Pièces avec Arduino Nano
  4. Centre de contrôle d'alimentation Arduino : N-FET, P-FET, Relais et RTC
  5. Enregistreur de Température et Humidité Arduino avec DHT11 et Shield Ethernet
  6. Contrôler une LED par Bluetooth avec Arduino et MIT App Inventor
  7. Construire un Iron Man animé avec Arduino : capteurs, sons et relais
  8. Capteur d'obstacle IR simple avec Arduino — LED IR + Photodiode
  9. Find Me : Localisateur d'objets intelligent avec Arduino et Bluetooth