Table des matières:

Contrôleur de décoration numérique Pumpkin Pi : 5 étapes (avec photos)
Contrôleur de décoration numérique Pumpkin Pi : 5 étapes (avec photos)

Vidéo: Contrôleur de décoration numérique Pumpkin Pi : 5 étapes (avec photos)

Vidéo: Contrôleur de décoration numérique Pumpkin Pi : 5 étapes (avec photos)
Vidéo: Arduino Halloween Skull Mirror | How to Make / Tutorial 2024, Juillet
Anonim
Contrôleur de décoration numérique Pumpkin Pi
Contrôleur de décoration numérique Pumpkin Pi
Contrôleur de décoration numérique Pumpkin Pi
Contrôleur de décoration numérique Pumpkin Pi

Bonjour à tous, laissez-moi vous présenter le Pumpkin Pi. En termes simples, c'est un contrôleur d'E/S pour le Raspberry Pi avec douze sorties programmables, mais avec un petit tour de passe-passe (ou du code Python pour vous et moi) il devient un contrôleur de décoration numérique qui offre deux sorties vidéo avec audio et éclairage FX synchronisé à la vidéo.

L'arrière-planLast Halloween J'ai décidé de créer une vitrine sur le thème des sorcières, ayant récemment découvert les décorations numériques d'AtmosFX, je me suis senti inspiré pour en faire bon usage et les incorporer dans mon affichage.

J'avais besoin d'un moyen de lire alternativement deux listes de lecture vidéo sur deux écrans différents (un téléviseur et un projecteur) sans que les vidéos se chevauchent accidentellement. Je voulais aussi intégrer des effets d'éclairage pour ajouter aux ambiances.

En savoir plus sur le ControllerComme il a été inspiré par un projet d'Halloween, j'ai pensé que le nom Pumpkin Pi était très approprié. Il est prévu de faire ce qui suit:

  • Contrôlez jusqu'à 12x LED individuelles (ou 4x bandes RVB) via 12x sorties programmables
  • Fonctionne à 12v via sa propre alimentation externe
  • 3 matrices de transistors NPN quadruples pour prendre en charge un courant de sortie de 1 A par connexion
  • Inclut l'option de déclenchement PIR / capteur de mouvement de la lecture et des actions
  • Lecture vidéo et audio en utilisant les capacités vidéo du Raspberry Pi
  • Deux vidéos peuvent être lues simultanément ou alternativement grâce à la liaison des deux Pis via leurs GPIO pour déclencher des actions programmables et éviter le chevauchement vidéo indésirable
  • Synchronisez les effets d'éclairage avec la lecture vidéo
  • LED intégrées pour indiquer l'état de sortie individuel

Utilisation alternative Vous pouvez également utiliser le Pumpkin Pi comme carte de dérivation avec un seul Raspberry Pi tout en disposant de 12 sorties programmables pour contrôler les LED, les moteurs, les relais, etc.

Remarque: vous voulez voir comment j'ai utilisé le Pumpkin Pi dans mon affichage d'Halloween ? Découvrez mon affichage Halloween Witching Hour Instructable.

Étape 1: choses dont vous aurez besoin

Choses dont vous aurez besoin
Choses dont vous aurez besoin

Pour recréer le Pumpkin Pi, vous aurez besoin des outils et composants suivants:

Outils

  • Fer à souder
  • Multimètre
  • Pinces coupantes
  • Tournevis (j'ai utilisé une petite lame plate avec mes borniers)
  • Perceuse et forets (j'ai utilisé des forets au carbure de 0,7 mm et 1,0 mm)
  • Kit de gravure de PCB

Composants

  • 1x carte PCB en cuivre (102 mm X 70 mm environ)
  • 14 résistances 1kΩ
  • 2x 10kΩ Résistances
  • 1x résistance 4k7Ω
  • 1x condensateur (facultatif)
  • 1x LED rouge 5 mm et une résistance de limitation de courant appropriée
  • 12x LED jaunes 5mm avec résistance intégrée pour alimentation 12v
  • 3x matrices de transistors à paire Darlington Quad NPN ULN2074B
  • 3x prise IC 16 voies
  • 1x prise CC
  • 1x en-tête bidirectionnel
  • 2x 40 broches 2x20 en-tête mâle
  • 7x bornier à vis vertical à montage sur carte PCB 3 voies 5 mm
  • 1x capteur PIR (facultatif)

Le Raspberry Pi

Vous aurez également besoin d'un Raspberry Pi (ou deux) avec tout ce qui est nécessaire pour utiliser le Pi. Cela inclut l'alimentation Pi, la carte MicroSD et le logiciel Raspbian. Pour de meilleures performances vidéo, je recommanderais le Raspberry Pi 3.

Pour la lecture vidéo, nous utiliserons l'OMXPlayer avec l'OMXPlayer-Wrapper (mais nous en reparlerons plus tard !).

Remarque: ce Instructable suppose que vous avez une certaine expérience ou une connaissance pratique de l'électronique, de la soudure, de la fabrication de circuits imprimés et du Raspberry Pi. Si vous essayez l'une de ces compétences pour la première fois, je vous recommande de jeter un œil à certaines des ressources suivantes:

  • Cours d'électronique. Comprend un guide de démarrage et couvre des choses comme la soudure et les composants de base.
  • Fabrication de PCB Instructable par ASCAS. Couvre la technique de fabrication par transfert de toner utilisée ici.
  • Si vous souhaitez aller plus loin avec les circuits imprimés, consultez la classe de conception de circuits imprimés.
  • Classe Raspberry Pi. Découvrez le Raspberry Pi, apprenez à le configurer et à l'utiliser.

Étape 2: L'électronique

L'électronique
L'électronique
L'électronique
L'électronique
L'électronique
L'électronique

Création du circuit

La première chose à faire est de créer votre circuit. Le moyen le plus simple de le reproduire est de fabriquer le PCB en utilisant la méthode de transfert de toner avec les PDF de circuits imprimables joints. Si vous n'avez jamais essayé cela auparavant, c'est beaucoup plus facile que vous ne le pensez et vous n'avez besoin que de quelques éléments pour commencer. Je recommande toujours le DIY Customized Circuit Board (PCB Making) Instructable par ASCAS.

Remarque: j'ai également inclus le fichier de conception de PCB que j'ai créé à l'aide de DesignSpark.

Vous aurez besoin d'un fer à souder et de quelques compétences de base en soudure pour tout assembler sur le PCB, il y a beaucoup d'Instructables sur la soudure au cas où vous êtes nouveau, il y a aussi une bonne classe d'électronique Instructables !

Si le processus de fabrication de PCB ne vous convient pas, vous pouvez également le recréer sur une carte à bande (vero) ou sur une planche à pain (j'ai monté mon prototype sur une planche à pain, comme indiqué dans l'image ci-dessus). Dans mon prototype, j'ai utilisé des transistors à paire Darlington NPN individuels par opposition aux réseaux de transistors sur un circuit intégré. (circuit intégré).

Comment ça fonctionne

Il s'agit essentiellement d'une carte de dérivation pour le Pi qui connecte douze des broches GPIO du Pi à des transistors à paire Darlington NPN (sous la forme de trois réseaux de transistors). Lorsque la sortie Pi correspondante passe au niveau haut, il commute le transistor pour terminer le circuit.

Il existe également deux autres broches GPIO qui « lient » les deux Pis ensemble via des résistances déroulantes qui agissent comme des déclencheurs (plus à ce sujet dans l'étape « Programmer le Pi » plus tard).

Comment est-il alimenté

Le Pumpkin Pi est alimenté par sa propre alimentation externe 12v. Avec l'utilisation des transistors que j'ai sélectionnés, il est capable d'un courant allant jusqu'à 1,75 A par sortie (ou 1 A dans ce cas en raison de mon choix de bornes à vis). Les Pis sont alimentés via leurs propres alimentations Pi, le Pumpkin Pi sollicite très peu les capacités d'alimentation du Pi car il n'est utilisé que pour commuter des transistors. Le circuit comprend l'option d'un condensateur de lissage, mais ce n'est pas indispensable. J'ai utilisé un 2200uF évalué à 16v (ce qui est excessif, mais je les avais sous la main).

Indicateurs LED et résistances

Il y a douze voyants de sortie jaunes et un voyant d'état d'alimentation rouge. Assurez-vous d'utiliser la bonne LED de limitation de courant avec votre LED d'état rouge, la mienne a une tension directe de 3,2 V et un courant direct de 20 mA, j'ai donc sélectionné une résistance de 470 (basée sur le courant d'entrée 12 V). Si vous ne savez pas comment sélectionner la bonne résistance pour votre LED, consultez cet assistant de calculatrice.

Vous avez peut-être remarqué qu'il n'y a pas de résistances sur le circuit pour chacun des douze voyants LED jaunes. Comme je voulais économiser de l'espace sur le PCB, j'ai fait un choix de conception pour utiliser des LED avec des résistances intégrées pour l'alimentation 12v.

Déclencheur de mouvement (capteur PIR) et dérogation

Le circuit comprend l'option d'un déclencheur de mouvement. Il utilise une résistance de rappel, donc chaque fois que la broche d'alarme (étiquetée AL sur le PCB) devient faible, elle déclenche une action. Cela est pratique si vous souhaitez que votre lecture de décoration numérique soit activée par le mouvement.

Le circuit comprend également une commande prioritaire de déclenchement. Lorsque l'override est dans un état fermé, il relie l'entrée à la terre, ce qui vous permet de déclencher manuellement l'action. Utilisez l'en-tête prioritaire à deux broches avec un interrupteur ou un « cavalier ».

Étape 3: Configuration du Raspberry Pi

Configuration du Raspberry Pi
Configuration du Raspberry Pi

Installer Raspbian

Pour commencer à configurer le Raspberry Pi, vous devez préparer votre carte MicroSD avec l'image Raspbian. Téléchargez la dernière image ici (Raspbian Stretch était la dernière version au moment de la rédaction).

Une fois votre carte MicroSD prête, insérez-la dans le Pi et allumez-la. Vous aurez probablement besoin d'un téléviseur, d'un clavier et d'une souris connectés à ce stade. Par défaut, le Pi doit démarrer dans le système d'exploitation de bureau GUI, je vous recommande de définir la date et le fuseau horaire corrects sur votre Pi et peut-être de vous connecter à votre WiFi.

À ce stade, je m'assure généralement que la connectivité SSH est activée afin que je puisse accéder au terminal Pi sur le réseau via PuTTy, puis je configure le Pi pour qu'il démarre sur la CLI (interface de ligne de commande) par défaut au lieu du bureau de l'interface graphique, mais cela à toi de décider.

Remarque: ce Instructable suppose que vous connaissez déjà le Raspberry Pi, sinon vous pouvez suivre le guide officiel Raspberry Pi pour installer les images du système d'exploitation dans votre environnement ici: Windows, MacOS, Linux.

Astuce: Si vous êtes complètement nouveau sur le Raspberry Pi, je vous recommande de jeter un œil à cette classe Instructables.

Une fois que votre Pi est opérationnel avec Raspbian et que la configuration de base est terminée, vous êtes prêt à le faire fonctionner en tant que lecteur de décoration numérique prenant en charge la lecture audio et vidéo. N'oubliez pas que si vous utilisez deux Raspberry Pi pour la fonctionnalité de double lecture, vous devrez répéter toutes ces étapes sur le deuxième Pi.

OMXPlayer-Wrapper pour Python

Pour lire nos vidéos de décoration numérique, nous utiliserons OMXPlayer. Cela prend en charge les vidéos haute résolution (y compris HD) dans un certain nombre de formats vidéo courants. Bien qu'OMXPlayer soit inclus avec Raspbian "prêt à l'emploi", pour le rendre agréable avec les scripts Python personnalisés que nous allons créer, vous devrez installer OMXPlayer-Wrapper.

Avant d'installer le wrapper, je recommande de mettre à jour les packages du système. Exécutez les commandes suivantes depuis un terminal CLI (le Pi doit être connecté à internet pour que cela fonctionne):

Mettez à jour la liste des packages du système:

sudo apt-get mise à jour

Mettez à niveau tous vos packages installés vers les dernières versions:

sudo apt-get dist-upgrade

Nettoyez l'espace utilisé pour télécharger les packages de mise à jour:

sudo apt-get clean

Ensuite, vous voudrez télécharger l'OMXPlayer-Wrapper lui-même. Pour ce faire, exécutez la commande suivante, toujours à partir d'un terminal CLI avec le Pi connecté à Internet:

Installez le OMXPlayer-Wrapper:

sudo python3 -m pip installer omxplayer-wrapper

Pour plus d'informations sur omxplayer-wrapper, consultez la documentation ici.

Astuce: Si vous rencontrez des erreurs de connexion DBUS lorsque vous essayez de lire des vidéos à l'aide de OMXPlayer-Wrapper, essayez d'installer python3-dbus avec la commande suivante:

sudo apt-get installer python3-dbus

Autres paramètres et ajustements

Sortie audio par défaut

Le Raspberry Pi prend en charge la lecture audio via HDMI ou la prise jack 3,5 mm. Cependant, si le Pi détecte que le périphérique HDMI connecté prend en charge l'audio, il utilisera par défaut le périphérique HDMI. Si, comme moi, vous avez un appareil HDMI compatible audio mais que vous souhaitez que votre sortie audio soit par défaut sur la prise 3,5 mm, vous pouvez le forcer à le faire en ajoutant la ligne suivante au fichier config.txt sur le Pi:

hdmi_ignore_edid_audio=1

Définir la sortie de la console sur vide

Si vous ne voulez pas que la sortie vidéo du Pi affiche l'écran de la console après le démarrage, vous pouvez désactiver la console en ajoutant ce qui suit à la fin du fichier /boot/cmdline.txt sur le Pi. Notez qu'il s'agit d'un paramètre de commande du noyau et qu'il doit figurer sur une seule ligne de texte:

consoleblank=0

Conseillé: