RASP-SENSE-HAT-ASTRO-PI-Pression

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Senseur de Pression

Le Hat Sense inclus de nombreux senseurs, incluant le senseur de pression. Cette section du tutoriel va se pencher sur son utilisation.

La source anglaise de cette traduction se trouve ici www.raspberrypi.org/learning/astro-pi-guide/sensors/pressure.md

Qu'est ce que la pression et comment la mesurer?

La pression, d'une façon générale, est la force appliquée sur une surface par unité de surface (unité d'aire pour être plus préçis). Imaginez une brique placée sur une table. La force de son poids est appliqué via la surface d'une de ses faces. Si maintenant vous déposez la brique sur un de ses coins alors toute la force de son poids se concentre sur une toute petite surface, celle de la pointe (du coin) de la brique. En conséquence, la pression appliquée sur la table est beaucoup plus important.
La force reste identique mais comme la surface diminue, il y a moins de "fibres de bois" pour supporter la force. La pression sur ces est donc nettement plus importante.

La pression Atmosphérique (également connue comme "pression barométrique") est la pression exercée par le poids de l'air de l'athmosphère terrestre. Nous ne nous rendons pas compte mais l'air à un poids!

La pression de l'air pousse constamment sur chaque parcelle de votre corps. La pression à l'intérieur de votre corps est identique à la pression à l'extérieur de votre corps, c'est la raison pour laquelle vous ne sentez rien.

L'unité de mesure de la pression est habituellement le bars ou le millibars (1/1000 de bar). Un bar (ou 1000 millibars) représente la pression atmosphérique exercée sur la terre au niveau de la mer.

Les faits à propos de la pression

  • La pression atmosphérique diminue lentement lorsque l'on prend de l'altitude. Cette pression diminue donc progressivement depuis le niveau de la mer jusqu'au limite de l'espace.
    C'est normal, plus on monte et plus la colonne d'air au dessus de nous diminue. Moins d'air signifie "moins de poids".... et par conséquent moins de pression.

RASP-SENSE-HAT-ASTRO-PI-Pression-00.jpg

  • La bouteille de plastique ci-dessus à été fermée (scellée) à une altitude d'environ 4300 mètres (où la pression est faible). Et la bouteille à été écrasée au fur et à mesure que l'on descends vers la mer. Les deux autres images sont prises à 2700m et 300m d'Altitude. C'est parce que la pression dans la bouteille est restée faible (celle à 4300m) alors que les pression à l'extérieur de la bouteille est devenue beaucoup plus élevée... et la différence de pression (donc de force par unité de surface) est suffisamment importante pour que le plastique de la bouteille se déforme!.
  • Les plantes et les animaux ont besoin de la pression atmosphérique pour survivre. L'atmosphère au dessus de 8000 mètres d'altitude est dangereux pour les humains et à été nommée Death Zone (zone de la mort) par les alpinistes. Le sommet du mont Everest est dans cette zone.
  • La limite d'Armstrong est l'altitude au dessus de laquelle il est impossible pour un humain de survivre dans un environnement dépressurisé. C'est entre 18900 et 19350 mètres où l'eau entre en ébullition à la température du corps humain (~36.6°C).
  • La station spacial internationale (ISS) maintient son orbite à 400Km d'altitude (environ 400000 mètres), ce qui est largement au dessus de la limite d'Armstrong et déjà dans l'espace où il n'y a ausune d'atmosphère (zéro millibars). Cependant, la pression à l'intérieur de l'ISS est maintenu à environ 1013 millibars, ce qui est vraiment confortable pour l'équipage de l'ISS.

Qu'est ce que la pression?

1. Ouvrez Python 3 dans une fenêtre terminal en tant que super utilisateur (avec sudo):

sudo idle3 &


2. Une fenêtre Python apparaît et vous pouvez maintenant fermer la fenêtre terminal.

3. Sélectionnez File > New Window (fichier > nouvelle fenêtre).

4. Entrez le code suivant:

from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

pressure = sense.get_pressure()
print(pressure)

5. Sélectionnez File > Save (Fichier > Sauver) et choisissez un nom pour votre programme.

6. Selectionnez Run > Run module (Exécuter > Exécuter module).

7. Si vous voyez l'erreur Pressure Init Failed (erreur d'initialisation Pression) alors exécutez le programme en tant que root (superutilisateur) en utilisant sudo comme indiquer en rouge sur la dernière ligne. Le message d'erreur signifie que vous n'avez pas démarrer idle3 en utilisant sudo. Fermez tout et reprenez au point 1.

8. Vous devriez voir quelque-chose comme ceci:

Pressure sensor Init Succeeded
1013.40380859

Le première ligne "Pressure sensor Init Succeeded" signifie Senseur de pression initialisé avec succès.

Si vous obtenez la valeur 0 alors essayez encore de ré-exécuter le code une nouvelle fois. Cela peut parfois arrivé lorsque l'on utilise le senseur de pression pour la première fois.

9. Maintenant, ajoutez la ligne suivante juste au dessus de la ligne print(pressure):

pressure = round(pressure, 1)

L'instruction round() arrondira la partie décimale pour y garder un seul chiffre.

Surveiller la pression

1. It would be good to monitor the pressure as it changes, so let's put your code into a while loop and run it again:

while True:
    pressure = sense.get_pressure()
    pressure = round(pressure, 1)
    print(pressure)

2. Unfortunately, it's not as easy to make it change as holding your thumb on the sensor or breathing on it, so use the plastic bottle experiment below to test your code.

Expérience de la bouteille de plastique

Pour l'expérience suivante, vous aurez besoin de placer votre Pi + le sense-Hat + un accu pour téléphone (ou ce modèle) dans une bouteille en plastique scellée. Ensuite, vous soufflerez dans la bouteille pour augmenter la pression de l'aire. Ceux avec une bonne paire de poumons pourrons atteindre une pression d'environ 1100 millibars (à l'intérieur de la bouteille).

Pour commencer, vous aurez besoin de programmer l'afficheur.

1. Regardez la vidéo de "Dave Honess" (YouTube, anglais) à propos de cette expérience.

2. Prenez une bouteille en plastique de 2 litres (c'est le minimum pour avoir assez de place). Et coupez la bouteille en deux (au milieu de la bouteille, comme présenté):

RASP-SENSE-HAT-ASTRO-PI-Pression-20.png

Sechez l'intérieur de la bouteille avec un tissus (ou de papier essuis-tout). N'essayez pas d'utiliser un sèche-cheveux, cela déformerait le plastique de la bouteille.

3. Faite un essai pour voir si tout prend bien place dans la bouteille. Replacez ensuite les deux morceaux de la bouteille ensemble, idéalement, les deux parties devraient se recouvrir pour une meilleure stabilité "mécanique" de l'ensemble. Si vous soufflez dans le bouteille maintenant, vous vous rendrez vite compte que l'air est capable de sortie par l'interstice (entre les deux demi-bouteille). Plus tard, nous utiliserons une toile/papier adhésif pour assurer l'étanchéité.

4. Eteignez votre Raspberry-Pi, laissez tous les périphériques connectés sur le Pi.

5. Déconnectez l'alimentation et remplacez là par un accumulateur pour téléphone.

6. Le Pi devrait démarrer comme d'habitude, vous permettant ainsi de charger et exécuter le code du programme.

7. Une fois que le code fonctionne, déconnectez tous les périphériques (clavier, souris, HDMI) sauf le pack d'alimentation et placez le tout dans la bouteille. Placez convenablement la partie supérieur de la bouteille sur la partie du bas.

RASP-SENSE-HAT-ASTRO-PI-Pression-21.png

8. Utilisez ensuite une toile/papier sctoch/tape bien large pour joindre les deux moitiés de la bouteille ensemble:

RASP-SENSE-HAT-ASTRO-PI-Pression-22.png

9. Soufflez dans la bouteille. Vous devriez sentir l'air revenir vers vous aussi tôt que vous cessez de souffler. Si ce n'est pas le cas, identifiez l'endroit pas où l'air s'échappe et utilisez un peu plus de toile pour corriger votre problème d'étanchéité.

RASP-SENSE-HAT-ASTRO-PI-Pression-23.png

10. Faites très attention à l'humidité de votre haleine lorsque vous soufflerez dans la bouteille. Arrêtez avant que votre Raspberry Pi soit humidifié.

11. Si vous avez besoin de modifier le code alors retirez le papier collant et séparer les deux demi-bouteilles. Il vous suffira alors de reconnecter rapidement les périphériques nécessaires (HDMI, Clavier, souris) pour modifier rapidement votre code.

Afficher la pression sur la matrice LED

Vous trouverez ci-dessous le code utilisé sur la vidéo de présentation (voir lien ci-avant). Il peut couvrir un pression de 1000 à 1100 millibars, ce qui fait 100 millibars d'écart. Nous savons que la matrice LED offre une gamme de couleur de 0 à 255. Par conséquent, la première chose que nous pouvons réaliser c'est un rapport (une proportion) entre la pression et la gamme de couleur.

Le but est de multiplier la mesure de pression par ce rapport pour obtenir la couleur. Vous aurez besoin de soustraire la valeur 1000 à la mesure effectuée pour que cela fonctionne.

Donc, nous allons multiplier un nombre entre 0 et 100 par ce rapport (ratio). Nous allons rogner la valeur à une valeur maximale de 255... dans le cas où nous aurions quelqu'un disposant de poumons vraiment puissant (qui amènerait la pression au dessus de 1100 millibars).

from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

ratio = 255 / 100.0

while True:
    pressure = sense.get_pressure()
    pressure = round(pressure, 1) - 1000
    blue = int(ratio * pressure)
    if blue > 255:
        blue = 255
    sense.clear((0, 0, blue))

Source: Getting Started with Astro PI et Astro-Pi Guide proposé par Raspberry Pi Learning Resource (www.raspberrypi.org)

Licence Creative Commons - CC-BY-SA
The learning resource is provided for free by the Raspberry Pi Foundation under a Creative Commons licence.
Find more at raspberrypi.org/resources and github.com/raspberrypilearning.

Traduction réalisée par Meurisse. D pour shop.MCHobby.be - Licence CC-BY-SA.
Crédit de traduction: Toute référence, mention ou extrait de cette traduction doit également être explicitement accompagné du crédit de traduction suivant : «  Traduction par MCHobby (shop.MCHobby.be) » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.