Note

Bonjour et bienvenue dans la Communauté Facebook des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder ! Plongez plus profondément dans l’univers des Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.

Pourquoi rejoindre ?

  • Support d’experts : Résolvez les problèmes après-vente et les défis techniques avec l’aide de notre communauté et de notre équipe.

  • Apprendre et partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.

  • Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus.

  • Réductions spéciales : Profitez de réductions exclusives sur nos produits les plus récents.

  • Promotions festives et cadeaux : Participez à des cadeaux et des promotions de vacances.

👉 Prêt à explorer et à créer avec nous ? Cliquez [Ici] et rejoignez-nous aujourd’hui !

2.2.2 Thermistance

Note

../_images/mcp3008_and_adc0834.jpg

Selon la version de votre kit, identifiez si vous disposez d’un ADC0834 ou d’un MCP3008 et suivez la section correspondante.

Introduction

Tout comme une photorésistance peut détecter la lumière, une thermistance est un dispositif électronique sensible à la température qui peut être utilisé pour réaliser des fonctions de contrôle de la température, telles que la création d’une alarme de chaleur.

Composants Nécessaires

Pour ce projet, nous avons besoin des composants suivants :

../_images/list_2.2.2_thermistor.png

Il est très pratique d’acheter un kit complet, voici le lien :

Nom

ÉLÉMENTS DANS CE KIT

LIEN

Kit Raphael

337

Raphael Kit

Vous pouvez également les acheter séparément via les liens ci-dessous.

INTRODUCTION DES COMPOSANTS

LIEN D’ACHAT

Carte d’extension GPIO

ACHETER

Plaque d’expérimentation (Breadboard)

ACHETER

Fils de Liaison

ACHETER

Résistance

ACHETER

Thermistance

ACHETER

ADC0834

-

Schéma Électrique

../_images/image323.png ../_images/image324.png

Procédures Expérimentales

Étape 1 : Construire le circuit.

../_images/image202.png

Étape 2 : Aller dans le dossier du code.

cd ~/raphael-kit/python/

Étape 3 : Exécuter le fichier exécutable

sudo python3 2.2.2_Thermistor.py

Lorsque le code s’exécute, la thermistance détecte la température ambiante qui sera affichée à l’écran une fois le calcul terminé.

Code

Note

Vous pouvez Modifier/Réinitialiser/Copier/Exécuter/Arrêter le code ci-dessous. Mais avant cela, vous devez accéder au chemin du code source comme raphael-kit/python. Après avoir modifié le code, vous pouvez l’exécuter directement pour voir l’effet.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import RPi.GPIO as GPIO
import ADC0834
import time
import math

def init():
    ADC0834.setup()

def loop():
    while True:
        analogVal = ADC0834.getResult()
        Vr = 5 * float(analogVal) / 255
        Rt = 10000 * Vr / (5 - Vr)
        temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))
        Cel = temp - 273.15
        Fah = Cel * 1.8 + 32
        print ('Celsius: %.2f °C  Fahrenheit: %.2f ℉' % (Cel, Fah))
        time.sleep(0.2)

if __name__ == '__main__':
    init()
    try:
        loop()
    except KeyboardInterrupt:
        ADC0834.destroy()

Explication du Code

import math
Il s’agit d’une bibliothèque numérique qui déclare un ensemble de fonctions pour effectuer des

opérations et transformations mathématiques courantes.

analogVal = ADC0834.getResult()

Cette fonction est utilisée pour lire la valeur de la thermistance.

Vr = 5 * float(analogVal) / 255
Rt = 10000 * Vr / (5 - Vr)
temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))
Cel = temp - 273.15
Fah = Cel * 1.8 + 32
print ('Celsius: %.2f °C  Fahrenheit: %.2f ℉' % (Cel, Fah))

Ces calculs convertissent les valeurs de la thermistance en degrés Celsius et en degrés Fahrenheit.

Vr = 5 * float(analogVal) / 255
Rt = 10000 * Vr / (5 - Vr)

Ces deux lignes de code calculent la distribution de la tension avec la valeur lue analogiquement afin d’obtenir Rt (résistance de la thermistance).

temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))

Ce code fait référence à l’intégration de Rt dans la formule TK=1/(ln(RT/RN)/B+1/TN) pour obtenir la température en Kelvin.

temp = temp - 273.15

Convertir la température en Kelvin en degrés Celsius.

Fah = Cel * 1.8 + 32

Convertir les degrés Celsius en degrés Fahrenheit.

print ('Celsius: %.2f °C  Fahrenheit: %.2f ℉' % (Cel, Fah))

Afficher les degrés Celsius, les degrés Fahrenheit et leurs unités à l’écran.

Image du Phénomène

../_images/image203.jpeg