Débuter avec GPIO sur un Raspberry Pi

Débuter avec GPIO sur un Raspberry Pi / DIY

Si vous pensiez que l'Arduino était cool, attendez simplement de mettre la main sur un Raspberry Pi - ces choses sont extraordinaires. En plus d’être un ordinateur entièrement fonctionnel, ils ont également une sélection de Entrée / sortie à usage général des épingles. Comme un Arduino, nous pouvons les utiliser pour créer des projets électroniques - et il est étonnamment facile de se lancer.

Aujourd'hui, nous allons connecter un relais et l'utiliser pour allumer une LED, mais vous pouvez tout aussi bien allumer une lampe..

Cette introduction sert de première partie à un projet de domotique plus vaste. Christian a déjà jeté les bases pour commencer avec un Pi, je ne vais donc pas répéter ici les étapes initiales du téléchargement d’un système d’exploitation ou de la connexion de la carte SD - je suppose que vous avez un système Raspian de travail déjà mis en place.

Attention: Bien qu'un Raspberry Pi pouvez être utilisé de la même manière qu’un Arduino, un peu plus de soin est nécessaire. Les broches du Pi fonctionnent à 3.3v, tandis que l'Arduino utilise 5v. Bien qu'il soit possible de casser un Arduino, il est beaucoup plus facile de casser un Pi, car les broches se connectent directement à la puce embarquée - envoyer 5v en bas peut le faire frire.

Par conséquent, soyez très prudent lorsque vous essayez de répliquer des projets Arduino sur votre Pi - suivez un tutoriel spécifique à Pi ou assurez-vous de bien comprendre les bases de l'électronique..

Exigences:

  • Transistor NPN, tel que P2N2222A
  • Résistance 1k
  • Relais; J'utilise un module 5v à 4 relais doté d'un circuit de protection supplémentaire intégré (aucun besoin de diodes supplémentaires
  • LED et résistance de 220 ohms pour le test
  • Câble épanoui

Câble épanoui (“Kit Cordonnier”)

Les broches GPIO sont situées sur le côté du Pi, à côté de la prise de sortie vidéo RCA.

Bien que techniquement, vous puissiez y connecter directement des câbles de connexion femelles, ils ne sont pas étiquetés de manière utile et vous risquez donc plus de casser quelque chose. Au lieu de cela, procurez-vous un câble tel que celui-ci chez Adafruit ou l'un des nombreux clones moins chers proposés sur eBay. Vous devrez peut-être souder ceci car il viendra sous forme de kit.

Bien que le côté de la carte comporte une encoche pour indiquer le bon placement du câble, le côté Pi ne le permet pas. Assurez-vous que les broches 3v et 5v situées dans le coin le plus éloigné du Pi s’alignent avec les broches correspondantes de la carte. Bien sûr, si vous avez acheté un boîtier qui n'expose pas l'en-tête GPIO, il vous faudra alors exécuter avec un Pi nu, ou couper un trou..

Alternativement, vous pouvez obtenir une carte complète apposée sur votre Pi, et vient généralement avec une sélection de composants utiles..

Circuit de base

Configurez le circuit comme indiqué ci-dessous. J'ai laissé de côté le circuit de relais car cela pourrait varier. Utilisez le NON (normalement fermé) et COM bornes de votre relais pour votre LED ou autre appareil.

Utilisez la broche 4 du Raspberry Pi. Sur mon tableau de bord, il est marqué + GPCLK0; peu importe, c'est la quatrième broche à compter de 3V3.

Test en ligne de commande

Dans les exemples suivants, je suppose que vous êtes connecté via SSH ou autrement en tant qu'utilisateur root. Si ce n'est pas le cas, vous devrez faire précéder certaines commandes par sudo pour des privilèges élevés..

Tout d'abord, nous devons installer WiringPi.

git clone git: //git.drogon.net/wiringPi cd câblagePi ./build

En supposant que tout se passe bien, nous devrions maintenant être en mesure de contrôler directement le GPIO à partir de la ligne de commande, comme ceci:

mode gpio -g 4 sur gpio -g écriture 4 1

La première commande est similaire à la fonction de configuration d’Arduino, dans laquelle nous disons à la pi d’utiliser la broche 4 comme sortie. La commande suivante écrit une valeur de 1 sur la broche, ce qui devrait déclencher le transistor, activer le relais, fermer le circuit de la LED et l'allumer..

Impressionnant. Si ce n'est pas le cas, revenez en arrière et vérifiez votre câblage. Le relais clique-t-il?

Python

Bien que Python ne soit pas le seul moyen de communiquer avec les broches GPIO, il est généralement considéré comme le plus simple et le plus couramment utilisé dans les projets existants. Contrairement à C, Python est relativement facile à prendre en main (voici 5 sites pour apprendre Python. Les 5 meilleurs sites Web pour apprendre la programmation Python. Les 5 meilleurs sites Web pour apprendre la programmation Python. Vous voulez apprendre la programmation Python? Voici les meilleures façons d'apprendre Python en ligne, dont beaucoup sont entièrement gratuites. Lire la suite).

Commencez par installer les extensions Python suivantes:

apt-get installez python-dev apt-get installez python-rpi.gpio

Maintenant, créez un nouveau fichier appelé test.py. si vous utilisez une ligne de commande, tapez

nano test.py

Collez ou tapez ce qui suit (également sur cette pastebin):

importer RPi.GPIO en tant que GPIO temps d'importation GPIO.setmode (GPIO.BCM) GPIO.setup (4, GPIO.OUT) pour x dans la plage (0,10): time.sleep (5) GPIO.output (4,1) heure (5) GPIO.output (4,0)

Il s’agit d’un script Python très simple qui allume le voyant (ou tout ce que vous avez raccordé à votre relais) pendant 5 secondes, puis éteint pendant 5 secondes., 10 fois. Vous devriez être capable de comprendre la plupart du code. le GPIO.setmode la ligne est simplement utilisée pour indiquer le schéma de numérotation des broches que nous allons utiliser.

C'est tout! Pour exécuter le code, tapez:

python test.py

La semaine prochaine, nous allons élaborer un peu la configuration et faire des choses passionnantes telles que l’ajout de contrôle vocal. Si vous allez ajouter des éléments électriques haute tension dans le circuit du relais, vous devez vous assurer que vous utilisez un relais de la classe appropriée. sur le fil de phase, et assurez-vous de tout enfermer afin qu’il ne soit pas exposé aux doigts indiscrets des bébés, ou de la mère. Sérieusement, fais attention.

Veuillez poster vos questions, commentaires, commentaires et haïkus dans la case ci-dessous - mais n'oubliez pas que je vais vous noter sur l'utilisation de la grammaire.

En savoir plus sur: Raspberry Pi.