3 340 octets ajoutés
, 30 novembre 2012 à 23:40
== Introduction ==
Détecter la présence d'un aimant est une opération qui présente un avantage majeure en prototypage électronique.<br />
Un senseur US5881LUA et un aimant permet de mettre en oeuvre de détecteur de type "switch" là ou il serait impossible de placer un vrai switch<br />
Par exemple, vous pouvez détecter la rotation d'un élément rotatif. C'est grâce à ce senseur que je peux détecter l'ouverture de ma poubelle.<br />
Le but de cet exemple est d'allumer une LED lorsque le senseur à effet Hall est activé par un aimant.
Un [http://mchobby.be/PrestaShop/product.php?id_product=160 Pi Cobbler d'AdaFruit] (disponible chez MC Hobby) est utiliser pour faciliter le montage.
== 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].
== Matériel ==
* Un [http://mchobby.be/PrestaShop/product.php?id_product=160 Pi-Cobbler]
* 1 x résistance de 330 Ohms (Orange, Orange, Brun)
* 1 x Led Verte
* 1 x résistance de 10 KOhms (Brun, Noir, Orange)
* 1 x un senseur à [http://mchobby.be/PrestaShop/product.php?id_product=86 Effet Hall US5851LUA]
* Un [http://mchobby.be/PrestaShop/category.php?id_category=30 Rapsberry], fil pour breadboard, breadboard.
== Résistance Pull-up ==
Tout comme pour un montage Arduino, il faut utiliser une résistance pull-up pour ramener le potentiel de la broche GPIO à HIGH (niveau haut).<br />
Lorsque le senseur n'est pas activé par un aimant, la sortie du senseur Hall est "libre" et la résistance ramène le potentiel à 3.3v.<br />
Lorsque le senseur est activé par un aimant (pôle sud uniquement), la sortie du senseur est ramené à la masse. Le potentiel du GPIO est donc de 0v.
Pour connecter un senseur US5881LUA sur un GPIO, il faut utiliser le montage suivant:
[[Fichier:PiHall-schematic.jpg|400px]]
Note:
Ceux d'entre-vous qui utilisent un Arduino noterons que '''la tension du GPIO d'un Raspberry est 3.3v''' (et non 5v comme pour un Arduino).<br />
La résistance de pull-up ramène la tension à 3.3v, il n'y a donc aucun risque pour le GPIO.<br />
Par contre, la logique du senseur doit, elle, être alimentée avec une tension de 5 Volts.
== Montage ==
Voici le détail du montage
[[Fichier:PiHall1.jpg|640px]]
[[Fichier:PiButton_bb.jpg|800px]]
== Le script Python ==
Pour créer facilement ce script sur votre python, nous vous proposons une méthode à base de copier/coller à l'aide des étapes suivantes à réaliser dans un terminal (ou une connexion SSH).
=== Copier/coller le code ===
Voici une méthode Copier/Coller super simple<br />
On commence par demander la création du fichier
<nowiki>cat <<! > raspi-hall.py</nowiki>
On fait ensuite le copier/coller du code
<nowiki>xxx
</nowiki>
On termine l'opération de saisie simplement avec:
<nowiki>!</nowiki>
=== Rendre le fichier exécutable ===
Par défaut, les fichier sont considéré comme des fichiers texte non exécutable... même s'il contiennent des scripts.
Il faut donc indiquer au système d'exploitation qu'il peut autoriser l'exécution de notre raspi-button.py
<nowiki>chmod +x raspi-button.py</nowiki>
=== Executer le programme ===
Taper simplement la commande suivante:
<nowiki>sudo ./raspi-button.py</nowiki>
{{ADF-Accord}}
{{MCH-Accord}}