====== Récupération des données avec python en mode interactif ====== ===== Qu’est-ce que Python ? ===== {{raspberry:python.webp?130 }} * Python est un langage de programmation populaire, connu pour sa simplicité et sa lisibilité. * Il est largement utilisé dans divers domaines, comme le développement web, l'analyse de données, et l'intelligence artificielle. **Pourquoi Python ?** * Facile à apprendre et à utiliser, surtout pour les débutants. * Grande communauté de soutien et de nombreuses ressources disponibles en ligne. * Utilisé dans de nombreux projets éducatifs et scientifiques. **Découverte du terminal** Un terminal est une interface où l'on peut taper des commandes pour interagir avec l'ordinateur. **Nos premières commandes Python** Dans le terminal, tapez python3 et appuyez sur Entrée. Cela lancera l'interpréteur Python en mode interactif. * **Commande print :** La commande print affiche du texte à l'écran. print (“Python, cest cool !”) * **Les constantes et variables** * Une constante est un emplacement de stockage nommé pour des données qui ne changent pas au cours de l'exécution d'un programme. * Une variable est un emplacement de stockage nommé pour des données qui peuvent changer au cours de l'exécution d'un programme. nom = “Olivier” print (nom) ===== Installation de la bibliothèque Adafruit_DHT sur le Raspberry Pi ===== Les bibliothèques permettent d'étendre les fonctionnalités de Python. Pour éviter les conflits entre bibliothèques, nous allons créer un environnement virtuel isolé pour gérer les dépendances de notre projet. {{ raspberry:python3-venv.png?400}} Pour créer un environnement virtuel, nous devons installer le paquet python3-venv : sudo apt update sudo apt install python3-venv Pour créer un environnement virtuel (par exemple pour le projet meteo), taper la commande suivante : python3 -m venv meteo Tapez la commande suivante pour installer pip, le gestionnaire de paquets Python : sudo apt update sudo apt install python3-pip Pour pouvoir installer la bibliothèque, commençons pas entrer dans notre environnement virtuel : {{ raspberry:activate_venv.png?400}} source meteo/bin/activate Tapez la commande suivante pour installer la bibliothèque Adafruit_DHT : pip3 install Adafruit_DHT **Raspberry 4 ou 5** Cette bibliothèque est parfaitement compatible avec les Raspberry zéro, 1, 2 (3 à tester), mais elle est obsolète. Pour les Raspberry 4 et 5, remplacez Adafruit_DHT par adafruit-circuitpython-dht pip3 install adafruit-circuitpython-dht pip3 install lgpio pip3 install gpiod Pour quitter un environnement virtuel, taper la commande suivante : deactivate ===== Lecture et affichage des données pour le Raspberry Pi zéro ===== Démarrer le mode interactif de Python : python3 __Importer la bibliothèque Adafruit_DHT afin d’interagir avec la sonde DHT22__ : import Adafruit_DHT __Définition des constantes__ : DHT_SENSOR = Adafruit_DHT.DHT22 DHT_PIN = 4 # Remplacez par le numéro de broche GPIO que vous utilisez __Lire les données__ : humidity, temperature = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN) **humidity** et **temperature** sont deux variables, elles servent à stocker les valeurs. La fonction **read_retry** permet de retenter une lecture des données en cas d'échec. __Afficher les données__ : print(f"Température: {temperature:.1f}°C") print(f"Humidité: {humidity:.1f}%") {temperature} -> Affichage de la valeur de la variable temperature. :.1f -> Formatage de l'affichage avec 1 chiffre après la virgule. {{ raspberry:affichage_donnees.png?900 }} ===== Lecture et affichage des données pour le Raspberry Pi 4 ou 5 ===== Démarrer le mode interactif de Python : python3 __Importer la bibliothèque Adafruit_DHT afin d’interagir avec la sonde DHT22__ : import adafruit_dht __Importer la bibliothèque board__ : La bibliothèque board sert à **nommer les broches physiques du microcontrôleur ou du Raspberry Pi de façon claire et universelle**. import board __Définition de notre capteur__ dhtDevice = adafruit_dht.DHT22(board.D4) __Lire les données__ : humidity = dhtDevice.humidity temperature = dhtDevice.temperature **humidity** et **temperature** sont deux variables, elles servent à stocker les valeurs. __Afficher les données__ : humidity temperature {{ :raspberry:dht22_pi5.png?900 |}} ---- Suite vers [[jardin_script_python_pi0|Création d'un script python pour le Raspberry Pi zéro]]