Comment utiliser le module MAX6675 avec Arduino
Guide complet sur l’utilisation du module MAX6675 avec Arduino
1. Introduction au module MAX6675:
Le module MAX6675 est un thermocouple de type K, doté d’un amplificateur et d’un convertisseur utilisés pour mesurer les températures dans la plage de 0°C à 1024°C. Il offre une résolution de 12 bits, une précision de 8 LSBs et une résolution de 0,25°C. Ce module est l’un des choix idéaux pour mesurer des températures élevées, dépassant les capacités d’autres capteurs tels que le LM35. Dans cet article, nous explorerons en détail l’interfaçage du ce module avec Arduino et son utilisation pour mesurer la température.
1.1 Description du module MAX6675:
Le module MAX6675 est composé du circuit intégré MAX6675, qui mesure la température à l’aide d’un thermocouple de type K. Ce thermocouple est constitué de deux fils de matériaux différents qui génèrent une force électromotrice (FEM) en fonction de la différence de température entre les deux extrémités. Le MAX6675 utilise une interface SPI pour communiquer avec le microcontrôleur et transférer les lectures de température en sortie.
1.2 Spécifications techniques:
Le module MAX6675 présente les spécifications suivantes:
Résolution de 12 bits
Précision de 8 LSBs
Résolution de 0,25°C
Tension de fonctionnement: 5V
Courant de fonctionnement: 50mA
1.3 Principe de fonctionnement:
Le principe de fonctionnement du thermocouple est basé sur l’effet Seebeck. Lorsque deux métaux différents sont connectés pour former deux jonctions, une force électromotrice (FEM) est générée aux deux jonctions. La valeur de cette FEM dépend des métaux utilisés et de la différence de température entre les deux extrémités. En mesurant cette FEM, on peut facilement déterminer la température de l’endroit spécifique où se trouve le thermocouple.
2. Interfaçage du module MAX6675 avec Arduino:
2.1 Liste des composants nécessaires:
Pour interfacer le module MAX6675 avec Arduino Uno, vous aurez besoin des composants suivants:
-
MAX6675 Module Avec Thermocouple Type K90,00 DH
-
Produit en promotionCâble de connexion M/F JumperLe prix initial était : 7,00 DH.6,00 DHLe prix actuel est : 6,00 DH.
-
Arduino Uno R3 avec câble USB120,00 DH
2.2 Schéma de connexion:
Le schéma de connexion entre le module MAX6675 et Arduino est le suivant:
Connectez la broche GND du module au GND d’Arduino.
Connectez la broche VCC du module au pin 5V d’Arduino.
Connectez la broche SCK du module au GPIO 6 d’Arduino.
Connectez la broche CS du module au GPIO 5 d’Arduino.
Connectez la broche SO du module au GPIO 4 d’Arduino.
Connectez les broches Thermocouple+ (TH+) et Thermocouple- (TH-) du module aux bornes positives et négatives du thermocouple respectivement.
2.3 Installation de la bibliothèque MAX6675:
Pour faciliter l’utilisation du module MAX6675, nous pouvons installer la bibliothèque MAX6675 dans l’IDE Arduino. La bibliothèque est fournie par Adafruit. Pour l’installer, allez dans le menu “Sketch” > “Include Libraries” > “Manage Libraries”. Recherchez “max6675” et installez la dernière version disponible.
2.4 Code Arduino: Accéder aux lectures de température:
Nous pouvons utiliser la bibliothèque MAX6675 pour obtenir les valeurs de température à partir du module. Voici un exemple de code Arduino pour afficher les lectures de température dans le moniteur série:
#include "max6675.h" int SO = 12; int CS = 10; int sck = 13; MAX6675 module(sck, CS, SO); void setup() { Serial.begin(115200); } void loop() { float temperature = module.readCelsius(); Serial.print("Temperature: "); Serial.print(temperature); Serial.println(F("°C ")); delay(1000); }
Ce code utilise la bibliothèque max6675.h
pour interagir avec le module MAX6675. La fonction readCelsius()
est utilisée pour obtenir la lecture de température en degrés Celsius. Les lectures de température sont affichées dans le moniteur série avec une pause de 1 seconde entre chaque lecture.
3. Affichage des lectures MAX6675 sur un écran OLED:
3.1 Installation de la bibliothèque SSD1306:
Pour afficher les lectures de température sur un écran OLED, nous devons installer la bibliothèque Adafruit SSD1306 dans l’IDE Arduino. Cette bibliothèque est une dépendance de la bibliothèque SSD1306. Pour l’installer, allez dans le menu “Sketch” > “Include Libraries” > “Manage Libraries”. Recherchez “SSD1306” et installez la bibliothèque Adafruit SSD1306 et la bibliothèque Adafruit GFX.
3.2 Schéma de connexion:
Le schéma de connexion entre le module MAX6675, Arduino et l’écran OLED est le suivant:
- Connectez la broche GND de l’écran OLED et du module MAX6675 au GND d’Arduino.
- Connectez la broche VCC de l’écran OLED et du module MAX6675 au pin 5V d’Arduino.
- Connectez la broche SCL de l’écran OLED au pin A5 d’Arduino.
- Connectez la broche SDA de l’écran OLED au pin A4 d’Arduino.
- Connectez les broches CS, SO et SCK du module MAX6675 aux broches GPIO 9, 8 et 10 d’Arduino respectivement.
3.3 Code Arduino: Afficher les lectures MAX6675 sur un écran OLED:
Voici un exemple de code Arduino pour afficher les lectures de température du module MAX6675 sur un écran OLED:
#include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #include "max6675.h" #define OLED_ADDR 0x3C Adafruit_SSD1306 display(-1); int SO = 12; int CS = 10; int sck = 13; MAX6675 module(sck, CS, SO); void setup() { Serial.begin(115200); display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR); if (!displaybegin(SSD1306_SWITCHCAPVCC, OLED_ADDR)) { Serial.println(F("Échec de l'initialisation de l'écran OLED")); while (1); } delay(2000); display.clearDisplay(); display.setTextColor(WHITE); } void loop() { float temperature = module.readCelsius(); Serial.print("Température: "); Serial.print(temperature); Serial.println(F("°C")); display.clearDisplay(); display.setCursor(0, 0); display.println("Température:"); display.setCursor(0, 16); display.print(temperature); display.println("°C"); display.display(); delay(1000); display.clearDisplay(); }
Ce code utilise la bibliothèque Adafruit SSD1306 pour contrôler l’écran OLED. La bibliothèque MAX6675 est également incluse pour lire les valeurs de température.
Dans la fonction setup()
, la communication série est initialisée, et l’écran OLED est initialisé à l’aide de display.begin()
. Si l’initialisation de l’écran échoue, un message d’erreur est affiché dans le moniteur série.
Dans la fonction loop()
, la température est lue à partir du module MAX6675 à l’aide de la méthode readCelsius()
. L’écran OLED est effacé, et la valeur de température est affichée sur l’écran. L’écran est mis à jour avec display.display()
et effacé après une pause de 1 seconde.
Conclusion:
Dans cet article, nous avons exploré en détail l’utilisation du module MAX6675 avec Arduino pour la mesure de température. Nous avons examiné la description du module, ses spécifications techniques et son principe de fonctionnement. Nous avons également fourni des instructions détaillées sur l’interfaçage du module MAX6675 avec Arduino, ainsi que des exemples de code pour accéder aux lectures de température et les afficher sur un écran OLED. Avec ces connaissances, vous pouvez commencer à mesurer avec précision les températures à l’aide du module MAX6675 et Arduino.
la fiche technique du module MAX6675 : https://www.analog.com/media/en/technical-documentation/data-sheets/MAX6675.pdf
Pour plus d’article : https://www.moussasoft.com/tutoriels-electroniques