Différences entre versions de « RASP-SENSE-HAT-ASTRO-PI-Pression »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
Ligne 67 : Ligne 67 :
  
 
  <nowiki>pressure = round(pressure, 1)</nowiki>
 
  <nowiki>pressure = round(pressure, 1)</nowiki>
 +
 +
L'instruction {{fname|round()}} arrondira la partie décimale pour y garder un seul chiffre.
  
 
== Surveiller la pression ==
 
== Surveiller la pression ==

Version du 21 septembre 2015 à 10:48


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.

Le 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

The experiment involves sealing a Raspberry Pi fitted with a Sense HAT inside a plastic bottle along with a mobile phone top up battery, and then blowing into the bottle to increase the air pressure. Someone with a good pair of lungs should easily be able to increase the pressure to about 1100 millibars inside the bottle. You'll first need to program the visual display.

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

2. Take an empty two litre plastic bottle, discard the lid, and cut it in half across the middle as shown:

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

Dry the inside of the bottle using a tissue or a dishcloth. Do not be tempted to use a heat gun or a hair dryer as they will warp the plastic.

3. Do a fit test. Try to fit the upper half inside the bottom half to join it back together. If you blow into the bottle now you'll feel the air coming back at you through the gaps in the side; later you'll use tape to seal them.

4. Shut down the Raspberry Pi, leaving all the peripherals connected.

5. Disconnect the power supply and replace it with the mobile top up battery.

6. The Pi should boot up as usual, allowing you to load up and run the code.

7. Disconnect all the peripherals apart from the battery once the code is running, and put everything into the bottle. Make sure the top half goes inside the bottom half, so you'll feel the air coming back at you when you blow.

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

8. Use the tape to seal the join between the two halves of the bottle:

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

9. Blow into the bottle. You should feel air coming back at you if you've got any leaks so just use more tape to patch these.

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

10. Be aware that the moisture in your breath will steam up the inside of the bottle, so stop before you make the Pi damp.

11. Remove the tape and separate the two halves of the bottle if you need to change the code. Just reconnecting the peripherals to do a quick edit should work fine.

Afficher la pression sur la matrice LED

Below is the code that was used in the video. It can cope with 1000 to 1100 millibars, so that's 100 millibars of range. We know that the LED matrix colours have a range of 0 to 255, so the first thing it does is create a ratio between the pressure range and the colour range. The plan is then to multiply the measured pressure by that ratio to get the colour. You have to subtract 1000 from the measured pressure to make this work, so you're multiplying a number between 0 and 100 by the ratio. It then clamps the colour to a maximum of 255, in case there is someone with very strong lungs who can drive the pressure higher than 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é.