Modifications

Sauter à la navigation Sauter à la recherche
1 787 octets ajoutés ,  29 février 2016 à 17:05
aucun résumé de modification
Ligne 7 : Ligne 7 :     
Voici une liste de quelques entrées analogiques qui peuvent être lue avec ce montage:
 
Voici une liste de quelques entrées analogiques qui peuvent être lue avec ce montage:
* Un [http://mchobby.be/PrestaShop/product.php?id_product=33 potentiomètre]
+
* Un {{pl|33|potentiomètre}}
* Une [http://mchobby.be/PrestaShop/product.php?id_product=58 Photorésistance]
+
* Une {{pl|58|Photorésistance}}
* Un FSR (résistance sensible à la force) voir [http://mchobby.be/PrestaShop/product.php?id_product=110 notre FSR] et [http://mchobby.be/PrestaShop/product.php?id_product=111 Flex Sensor].
+
* Un FSR (résistance sensible à la force) voir {{pl|110|notre FSR}} et {{pl|111|Flex Sensor}}.
* Un senseur de température comme [http://mchobby.be/PrestaShop/product.php?id_product=59 le TMP36]
+
* Un senseur de température comme {{pl|59|le TMP36}}
* Un [http://mchobby.be/PrestaShop/product.php?id_product=126 joystick 2 axes]
+
* Un {{pl|126|joystick 2 axes}}
    
Ce guide utilise un potentiomètre pour controler le volume d'un MP3 en cours de de lecture, mais ce code peut être utilisé comme base pour n'importe quelle lecture analogique.
 
Ce guide utilise un potentiomètre pour controler le volume d'un MP3 en cours de de lecture, mais ce code peut être utilisé comme base pour n'importe quelle lecture analogique.
   −
Le [http://mchobby.be/PrestaShop/product.php?id_product=160 Pi Cobbler d'AdaFruit] (disponible chez MC Hobby) est utiliser pour faciliter le montage.
+
Le {{link-product-picobbler}} ou un {{link-product-picobblerplus}} (disponible chez MC Hobby) est utiliser pour faciliter le montage.
 +
 
 +
=== Pi-Cobbler ou Pi-Cobbler-Plus? ===
 +
 
 +
{{picobbler-compatibility}}
    
== Prérequis ==
 
== Prérequis ==
Assurez-vous d'avoir [http://mchobby.be/wiki/index.php?title=RaspberryPi-Accueil#Pr.C3.A9paration_pour_Python mis votre environnement Python à jour].
+
Assurez-vous d'avoir [[RaspberryPi-Accueil#Pr.C3.A9paration_pour_Python|mis votre environnement Python à jour]].
 +
 
 +
La base de cet exemple affiche la valeur du potentiomètre sur le terminal.
   −
Cette exemple essaye aussi de modifier le volume sonore du votre Raspberry Pi d'un fichier MP3 en cours de lecture.<br />
+
En fin d'exemple, il vous sera proposé un second script (sur le site d'AdaFruit) dont le but est de contrôler le volume sonore depuis le potentiomètre.
Il vous faut donc installer mpg321<br />
+
Si vous désirez tester ce script, il sera nécessaire d'installer mpg321<br />
    
  <nowiki>sudo apt-get install mpg321</nowiki>
 
  <nowiki>sudo apt-get install mpg321</nowiki>
Ligne 28 : Ligne 34 :     
== Matériel ==
 
== Matériel ==
* Un [http://mchobby.be/PrestaShop/product.php?id_product=160 Pi-Cobbler] (disponible chez MCHobby)
+
* Un {{pl|160|Pi-Cobbler}} (disponible chez MCHobby)
* Un [http://mchobby.be/PrestaShop/product.php?id_product=33 potentiomètre]
+
* Un {{pl|33|potentiomètre}}
* Un [http://mchobby.be/PrestaShop/product.php?id_product=170 MCP3008 ADC] (Convertisseur Analogique Digital) modèle DIP.
+
* Un {{pl|170|MCP3008 ADC}} (Convertisseur Analogique Digital) modèle DIP.
* Un [http://mchobby.be/PrestaShop/product.php?id_product=141 Rapsberry]
+
* Un {{pl|141|Rapsberry}}
* Du [http://mchobby.be/PrestaShop/product.php?id_product=34 fil de prototypage pour breadboard]
+
* Du {{pl|34|fil de prototypage pour breadboard}}
* Un [http://mchobby.be/PrestaShop/search.php?orderby=position&orderway=desc&search_query=breadboard&submit_search=Rechercher breadboard] (demi ou grande taille).
+
* Un {{sl|breadboard|breadboard}} (demi ou grande taille).
    
== Pourquoi avons nous besoin d'un ADC? ==
 
== Pourquoi avons nous besoin d'un ADC? ==
 
ADC signifie "Analog to Digital Converter" autrement dit "Convertisseur Analogique vers Digital".
 
ADC signifie "Analog to Digital Converter" autrement dit "Convertisseur Analogique vers Digital".
   −
The Raspberry Pi computer does not have a way to read analog inputs. It's a digital-only computer. Compare this to the Arduino, AVR or PIC microcontrollers that often have 6 or more analog inputs! Analog inputs are handy because many sensors are analog outputs, so we need a way to make the Pi analog-friendly.
+
Le Raspberry Pi ne dispose pas de moyen matériel pour lire une entrée analogique. Le Raspberry est purement digital a contrario des Arduino, AVR ou microcontroleur qui eux disposent souvent de 6 entrées analogiques ou plus!  
 +
 
 +
Les entrées analogiques sont vraiment pratiques parce que beaucoup de senseur utilisent des sorties analogiques, il est donc important de faire en sorte que le Raspberry soit aussi capable de faire des lectures analogiques.
   −
We'll do that by wiring up an [http://mchobby.be/PrestaShop/product.php?id_product=170 MCP3008 chip] to it. The [http://mchobby.be/PrestaShop/product.php?id_product=170 MCP3008] acts like a 'bridge' between digital and analog. It has 8 analog inputs and the Pi can query it using 4 digital pins. That makes it a perfect addition to the Pi for integrating simple sensors like photocells, FSRs or potentiometers, thermistors, etc.!
+
Cela est rendu possible en raccordant une {{pl|170|puce MCP3008}} sur notre Pi. The {{pl|170|MCP3008}} agit comme un "pont" entre le monde digital et analogique. Il dispose de 8 entrées analogiques que le Pi peut "lire" en utilisant 4 pins digitales. Le MCP3008 est donc un ajout idéal pour permettre au Pi de lire des senseurs simples comme des photorésistance, des senseurs de forces, des potentiomètres ou des résistances sensibles à la chaleur, etc!
   −
Lets check the [http://www.mchobby.be/data-files/datasheet/MCP3008.pdf datasheet of the MCP3008 chip]. On the first page in the lower right corner there's a pinout diagram showing the names of the pins
+
En jetant un oeil sur la [http://df.mchobby.be/datasheet/MCP3008.pdf fiche technique du MCP3008], la première page présente le diagramme de brochage du MCP3008 avec le nom des différentes broches.  
    
[[Fichier:MCP3008.jpg]]
 
[[Fichier:MCP3008.jpg]]
Ligne 207 : Ligne 215 :  
</nowiki>
 
</nowiki>
   −
Pour savoir comment télécharger et exécuter ce programme sur votre Py, nous vous proposons de prendre connaissance de notre premiers articles sur [[Rasp-Hack-LED|Raspberry Pi et LED]]  
+
Pour savoir comment télécharger et exécuter ce programme sur votre Py, nous vous proposons de prendre connaissance de notre premiers articles sur [[Rasp-Hack-LED|Raspberry Pi et LED]]
 +
 
 +
== Code - un petit complément ==
 +
En faisant des recherche sur le NET, je suis tombé sur [http://www.raspberrypi.org/forums/viewtopic.php?f=65&t=23404 cet article du Forum RaspberryPy.org] parlant justement de ce tuto.
 +
 
 +
Lorsque vous pressez CTRL+C pour arrêtez le programme, ce dernier s'arrête brutalement.
 +
 
 +
Si vous essayez de le redémarrer, vous obtenez le message d'erreur:
 +
<nowiki>./test.py:69: RuntimeWarning: This channel is already in use, continuing anyway.  Use GPIO.setwarnings(False) to disable warnings.
 +
  GPIO.setup(SPIMOSI, GPIO.OUT)
 +
./test.py:71: RuntimeWarning: This channel is already in use, continuing anyway.  Use GPIO.setwarnings(False) to disable warnings.
 +
  GPIO.setup(SPICLK, GPIO.OUT)
 +
./test.py:72: RuntimeWarning: This channel is already in use, continuing anyway.  Use GPIO.setwarnings(False) to disable warnings.
 +
  GPIO.setup(SPICS, GPIO.OUT)</nowiki>
 +
 
 +
C'est normal étant donné les circonstances... en effet, en quittant le programme brutalement, nous n'avons pas fait le nécessaire pour fermer notre connexion sur le GPIO.
 +
 
 +
La solution consiste à:
 +
# créer une fonction main() pour y placer le code de démonstration
 +
# exécuter la fonction mais dans un {try} {except} qui capture l'interruption clavier
 +
# clôturer notre accès sur le GPIO (faire un cleanup)
 +
 
 +
<nowiki>if __name__ == "__main__":
 +
    try:
 +
        main()
 +
    except KeyboardInterrupt:
 +
        gpio.cleanup()</nowiki>
 +
 
 +
Je vous invite à consulter l'[[http://www.raspberrypi.org/forums/viewtopic.php?f=65&t=23404 article sur le Forum] (merci les gars)
    
== Commande de volume ==
 
== Commande de volume ==
Ligne 216 : Ligne 252 :  
Cet exemple est disponible sur le site [http://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi/script AdaFruit Learning System]
 
Cet exemple est disponible sur le site [http://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi/script AdaFruit Learning System]
   −
Source: [http://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi AdaFruit Learning System]
+
== Où acheter ==
 +
Tout le matériel nécessaire est disponible chez MCHobby.
 +
* {{pl|170|MCP3008}}
 +
* {{link-product-picobblerplus}}
 +
* {{link-product-piplus}}
 +
* {{link-product-pi2}}
 +
* {{link-product-pi3}}
 +
* {{link-product-picobbler}}
 +
* {{link-product-pi}}
 +
* Voir aussi la section [[Rasp-Hack-PiAnalog#Mat.C3.A9riel|matériel]] pour avoir les liens vers les différents articles.
 +
 
 +
<hr ><small>
 +
Source: [http://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi AdaFruit Learning System] par [http://www.adafruit.com www.adafruit.com] <br />
    +
Traduit par Meurisse D. pour [http://www.mchobby.be MCHobby.be]
 +
</small>
 
{{MCH-Accord}}
 
{{MCH-Accord}}
    
{{ADF-Accord}}
 
{{ADF-Accord}}
29 836

modifications

Menu de navigation