Table des matières:
- Étape 1: Pièces et outils
- Étape 2: Installez Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC et le module de caméra Pi
- Étape 3: Configurer le script Run-At-Boot de Raspberry Pi et tester la caméra
- Étape 4: Hack Réveil
- Étape 5: Construire le circuit imprimé Attiny85
- Étape 6: Téléchargez le code sur la puce Attiny 85
- Étape 7: Câblage et test initial et téléchargement de fichiers photo à partir de PI
- Étape 8: Assembler le boîtier électronique
- Étape 9: Construire le piquet de montage, l'assemblage final et libérer PI dans la nature
- Étape 10: Mesures de courant et test de durée de vie accéléré de la batterie
Vidéo: Raspberry Pi à l'état sauvage ! Timelapse étendu avec batterie : 10 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Motivation: je voulais utiliser un appareil photo Raspberry Pi alimenté par batterie pour prendre des photos une fois par jour à l'extérieur afin de créer des vidéos à long terme. Mon application particulière est d'enregistrer la croissance des plantes couvre-sol ce printemps et cet été.
Défi: Concevoir un contrôle d'alimentation Raspberry Pi à faible courant pour assurer une longue durée de vie de la batterie.
Ma solution: j'utilise un réveil piraté, un circuit Attiny85 et une cale Pimoroni OnOff pour couper complètement l'alimentation du Raspberry Pi lorsqu'il n'est pas utilisé. Alors que l'Attiny85 et le réveil continuent de fonctionner en mode veille, la consommation de courant n'est que de 5 microampères. Deux piles AAA alimentent à la fois Attiny et le réveil, tandis qu'une banque d'alimentation USB alimente le Pi.
Fonctionnement de base: lorsque le réveil se déclenche, il réveille un circuit Attiny en veille, qui signale ensuite à la shim Pimoroni OnOff d'appliquer l'alimentation de la banque d'alimentation USB au Raspberry Pi. Le Pi exécute un script d'exécution au démarrage (prenez une photo). Après un temps suffisant (60 secondes dans mon application), le circuit Attiny signale à nouveau la cale Pimoroni OnOff, puis l'Attiny passe en mode veille. Sur la base du signal d'Attiny, la shim Pimoroni OnOff exécute la commande d'arrêt Pi, et une fois le processus d'arrêt Pi terminé, coupe l'alimentation de la banque d'alimentation USB au Raspberry Pi.
Étape 1: Pièces et outils
Les pièces:
Raspberry Pi Zero ou Raspberry Pi Zero W (consomme plus de puissance)
Module de caméra Raspberry PI
Etui Raspberry Pi Zero
Pimoroni ONOFF SHIM RASP PI POWER SWITCH, Digikey
OPTOISOLATEUR Digikey
Cible de réveil numérique à piles
ATtiny85 8 DIP Digikey
(2) CAP ALUM 100UF Digikey
Module RTC DS3231 AliExpress
(2) résistance de 68 ohms
Câble micro USB court (environ 6 pouces)
Boîte transparente Amac SKU #: 60120. 4" x 4" x 5-1/16" h The Container Store
Banque d'alimentation USB Kmashi 11200 mAh # k-mp806 ou similaire
Ruban adhésif double
Petite vis autotaraudeuse
(2) en-têtes d'empilage femelles 1 X 8 broches - généralement vendues comme en-têtes d'empilage Arduino UNO AliExpress
Panneau perforé ou à bandes d'environ 1 1/4" par 2"
5 1/2 par 5 /12 par 3/4 d'épaisseur pin ou contreplaqué
1 1/4 tuyau PVC environ 15 de long
1 1/4 coupleur PVC
(2) cordons élastiques courts d'environ 10 de long
(4) goupilles en bois de 1/4" de diamètre environ 1" de long
UltraDeck Natural Post Sleeve Cap Menards
Outils:
Coupe-fil et fer à souder
Arduino UNO ou autre moyen de programmer ATtiny85
Branchez le fil et les cavaliers
Clavier, souris, moniteur HDMI, port USB et concentrateur Ethernet, câble OTG
Multimètre
Étape 2: Installez Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC et le module de caméra Pi
Configuration Pi Zéro. Préparez une carte SD pour Raspberry Pi avec la distribution de votre choix. Au cours du processus de configuration initiale, en veillant à activer l'interface I2C, la caméra et le démarrage sur CLI avec connexion automatique, définissez l'heure locale correcte et modifiez votre mot de passe. Je recommande également de configurer une adresse IP statique pour faciliter les choses par la suite. Soudez l'en-tête mâle au Pi Zero. Vous pouvez utiliser soit l'en-tête standard 2 x 20, soit un en-tête 2 x 6 plus court, car les 40 broches ne sont pas nécessaires pour ce projet - seulement les 12 premières broches.
Installation de la caméra. Insérez le Pi Zero dans son boîtier et utilisez le câble ruban court inclus pour connecter le module de caméra au Pi Zero en acheminant la fente d'extrémité du boîtier du câble. Installez le capot supérieur à fente GPIO et fixez la caméra au capot avec du ruban adhésif double (voir photo).
Préparez la cale Pimoroni OnOff, DS3231 RTC. Bien que le Pimoroni OnOff Shim soit livré avec un en-tête femelle 2 x 6, j'ai plutôt utilisé deux en-têtes empilables 1 x 6 femelles couramment vendus pour les Arduino UNO. 5, 7, 9, les autres broches peuvent être coupées à une longueur de broche standard. Poussez le DS3231 RTC sur les broches étendues comme indiqué sur la photo, puis poussez le sous-ensemble Pimoroni OnOff Shim & DS3231 RTC sur les broches d'en-tête Raspberry Pi comme montré.
Installez le logiciel Pimoroni OnOff Shim avec:
boucle https://get.pimoroni.com/onoffshim | frapper
Pour plus d'informations sur l'installation de Shim, regardez ici
Installez le logiciel DS3231 RTC selon ces instructions
Tests initiaux - Caméra, cale Pimoroni OnOff, DS3231 RTC
Connectez le clavier et le moniteur locaux au Pi Zero. Assurez-vous d'avoir une connexion réseau (câble Ethernet ou Wifi). Connectez le câble d'alimentation USB Pimoroni OnOff Shim.
une. Appuyez sur le bouton-poussoir Pimoroni OnOff Shim pendant 3 secondes, puis relâchez - cela active ou désactive le Pi Zero. Observez le processus de démarrage et d'arrêt sur le moniteur. Votre Pi Zero dispose désormais d'une mise à niveau technologique avancée - un interrupteur marche/arrêt !
b. Réglez l'heure du DS3231 et vérifiez qu'il lit l'heure correcte avec:
sudo hwclock -w
sudo hwclock -r
c. Testez le fonctionnement de la caméra selon ces instructions.
Étape 3: Configurer le script Run-At-Boot de Raspberry Pi et tester la caméra
Créer et déplacer dans le nouveau sous-répertoire zerocam
mkdir zerocam
cd zerocam
Utilisez l'éditeur nano pour créer un nouveau fichier de script
nano photo.sh
Ensuite, copiez et collez le code ci-dessous dans l'éditeur nano. Le nano fermé avec Ctrl+X, Y puis Return.
#!/bin/bash
DATE=$(date +"%Y-%m-%d_%H%M") raspistill -o /home/pi/zerocam/$DATE-j.webp
Étant donné que ce script utilise la commande convert, vous devrez installer ImageMagick sur le Raspberry Pi
sudo apt-get mise à jour
sudo apt-get install imagemagick
Rendre le fichier exécutable
chmod +x photo.sh
Ouvrez /etc/rc.local (les commandes de ce fichier s'exécutent au démarrage)
sudo nano /etc/rc.local
Vers le bas du fichier, juste avant l'instruction exit 0, ajoutez cette nouvelle ligne, puis fermez nano avec Ctrl+X, Y puis Return.
sh /accueil/pi/zerocam/photo.sh
Avec un moniteur local connecté, testez que cela fonctionne
redémarrage sudo
Le Pi devrait redémarrer et prendre une photo. Il y aura un nouveau fichier-j.webp
Testez également l'allumage et l'extinction du Pi avec le bouton-poussoir Pimoroni. Mesurez et enregistrez le temps de démarrage du Pi. Il devrait moins de 60 secondes.
Étape 4: Hack Réveil
Observez le fonctionnement produit - Installez deux piles AAA dans le réveil et entraînez-vous à régler l'heure et l'alarme conformément aux instructions fournies. Observez en particulier le son de l'alarme - vous devriez voir (1) le petit symbole d'alarme de l'écran clignoter, (2) le buzzer sonne pendant 1 minute puis s'éteint et (3) le rétroéclairage LED s'allume pendant 5 secondes puis s'éteint.
Démontage - Retirez les quatre vis du dos de l'horloge pour séparer les deux moitiés, puis retirez quatre autres vis pour libérer le PCB principal.
Hack - Coupez les fils LED à l'avant du PCB comme indiqué et soudez à des fils de 5 de long aux fils restants à l'arrière du PCB (voir illustration). Dessoudez le buzzer comme indiqué.
Aux bornes du compartiment de la batterie, ajoutez deux fils supplémentaires (rouge et noir) plus un condensateur électrolytique 100MFD comme indiqué (respectez la polarité).
Remontez l'horloge en vous assurant d'acheminer les fils de la LED et de la nouvelle batterie hors des fentes de rétention du couvercle arrière, comme illustré.
Retest - Installez les piles et testez la fonction d'alarme - maintenant, lorsque l'alarme se déclenche, vous devriez voir le petit symbole d'alarme de l'écran clignoter - mais pas de buzzer et pas de rétroéclairage. Connectez un multimètre aux fils LED, vous devriez détecter environ 3 VDC lorsque l'alarme se déclenche pendant une période d'environ 5 secondes.
Étape 5: Construire le circuit imprimé Attiny85
En vous référant à la photo et au schéma Attiny85.pdf, construisez le circuit imprimé sur un petit morceau de carte perforée ou à bande. Remarques:
- Assurez-vous d'utiliser une prise DIP à 8 broches pour la puce Attiny85 car elle doit être retirée pour la programmation.
- Assurez-vous de l'orientation correcte de l'Optos avant de souder.
- Les câbles de cavalier à Pimoroni Shim doivent mesurer au moins 4 pouces de long avec des en-têtes femelles pour attacher les broches mâles Shims BTN.
- Respectez la polarité lors des connexions avec un clic d'alarme - le circuit n'a pas de protection contre l'inversion de polarité
Étape 6: Téléchargez le code sur la puce Attiny 85
À l'aide d'un Arduino Uno ou d'un autre moyen, téléchargez le code (fichier AttinyPiPowerControl.ino joint) sur votre puce Attiny85. Remarque - ce code permet au PI de démarrer 60 secondes, de prendre une photo et d'accéder à l'invite de commande du terminal avant de démarrer le processus d'arrêt. Vous pouvez ensuite installer la puce Attiny85 dans son support de circuit imprimé - vérifiez l'orientation.
Remarque: Si vous avez besoin de plus ou moins d'exécution Pi, modifiez simplement cette ligne vers le bas:
retard (60000); // laisse Pi démarrer et s'exécuter pendant un certain temps
Étape 7: Câblage et test initial et téléchargement de fichiers photo à partir de PI
Câblage:
Connectez la banque d'alimentation USB au port micro usb de la cale Pimoroni. Connectez les cavaliers de la carte de circuit imprimé Attiny85 à la cale Pimoroni, assurez-vous que le fil noir se connecte à la broche BTN du bord extérieur de la cale Pimoroni.
Test:
Installez 2 piles AAA dans le réveil et réglez l'heure de l'horloge. Je recommande également de connecter le port HDMI de Pi à un moniteur local.
Activez l'alarme et réglez une alarme quelques minutes dans le futur. Lorsque l'alarme se déclenche, vous devriez voir:
une. L'icône d'alarme de l'horloge commence à clignoter
b. Après environ 5 secondes, la LED rouge Pimoroni Shim s'allume pendant 5 secondes
c. Le Pi commence à démarrer
ré. Après environ 20 secondes, la LED de l'appareil photo s'allume et une photo est prise. Si vous disposez d'un moniteur local connecté, vous verrez un bref aperçu de la photo prise.
e. Après environ 40 secondes environ, le Pi démarre jusqu'à l'invite de commande du terminal
F. Pi démarre le processus d'arrêt, après environ 20 secondes, la LED rouge Pimoroni Shim clignote indiquant que l'alimentation est coupée au PI
Téléchargement de fichiers photo depuis PI
Je connecte le PI à mon réseau à l'aide d'un câble OTG et d'un adaptateur USB vers Ethernet, alimentant le Pi à partir de la verrue murale. Ensuite, utilisez WinSCP pour télécharger des fichiers sur mon PC.
Étape 8: Assembler le boîtier électronique
Fixez le circuit imprimé Attiny85 à l'arrière du réveil à l'aide d'une petite vis autotaraudeuse. Attachez PI à l'horloge en utilisant du ruban adhésif double comme indiqué
Fixez le côté gauche de l'horloge au fond de la vitrine avec du ruban adhésif double
Fixez la banque d'alimentation USB au fond de la vitrine avec du ruban adhésif double comme indiqué.
Placez le boîtier supérieur sur le fond de la vitrine comme indiqué.
Étape 9: Construire le piquet de montage, l'assemblage final et libérer PI dans la nature
Pièce du bas: dans un morceau de bois de 5 1/2 X 5 1/2, coupez 4 fentes de 3/4" vers l'intérieur de chaque côté, comme indiqué. J'ai utilisé une mèche de toupie 1/4, mais vous pouvez aussi percer et scier. le centre fait un trou pour un raccord en PVC 1 1/4. La taille idéale du trou est de 1 5/8 ", mais comme je n'avais qu'une scie cloche de 1 3/4", je l'ai utilisé et j'ai construit le diamètre extérieur du raccord avec du ruban de canard. Colle raccord en place avec de l'époxy.
Centrez le boîtier électronique au-dessus du bloc de bois et marquez son contour. Percez ensuite quatre trous de 1/4 de chaque côté comme indiqué. Collez quatre chevilles en bois de 1" de long et 1/4" de diamètre dans ces trous - cela aidera à garder l'enceinte centrée.
Pièce supérieure: percez quatre trous de 3/16" près du bord inférieur de chaque taille et insérez des crochets en S de 3/4" de long dans chaque trou en pliant les extrémités pour qu'elles ne tombent pas. Sur les bords intérieurs, collez à chaud 4 quatre 1/2 morceaux de bois épais - ceux-ci aideront à garder la pièce supérieure centrée au-dessus de l'enceinte.
Assemblage final: placez le boîtier électronique en sandwich entre les pièces supérieure et inférieure et fixez-le avec deux cordons élastiques comme indiqué
Relâchez PI dans la nature: faites un piquet de montage en coupant un tuyau en PVC de 1 1/4" d'une longueur adaptée à vos besoins, coupez une extrémité à un angle de 45 degrés pour faciliter l'enfoncement dans le sol. Dans mon cas, je ' Je m'intéresse à la croissance des plantes couvre-sol (Vinea minor) ce printemps et, par conséquent, mon tuteur en PVC ne mesure que 15" de long. Vérifiez que les piles AAA sont neuves, que la banque d'alimentation USB est complètement chargée et que le réveil est correctement réglé - puis enfoncez le piquet dans le sol et glissez l'assemblage sur le piquet de montage - voir photo.
Étape 10: Mesures de courant et test de durée de vie accéléré de la batterie
J'ai mesuré le courant à l'aide du multimètre Radio Shack RS-232 (22-812) et du logiciel compagnon Meter View. Pas le choix de la bête, mais c'est ce que j'ai.
Mesure de la consommation de courant à partir de deux piles AAA pour alimenter la carte Attiny85 et le réveil
Pour "connecter en série", j'ai utilisé des piles factices et une alimentation de banc 3 VDC (voir photo). Voir le graphique du courant mesuré pendant la période "active" (commence par l'événement d'alarme - se termine par le retour d'Attiny85 en mode veille). Le tirage sans alarme était constant de 0,0049 mA. Sommaire -
Période active = 78 secondes
Période active Moy. Courant = 4,85 mA
Courant de non-alarme = 4,9 microA (0,0049 mA)
J'ai calculé une consommation de courant quotidienne moyenne de 0,0093 mA à partir des deux AAA (750 mAh/chacun) en tenant compte des modes veille et actif, et d'une durée de vie théorique de la batterie > 8 ans en utilisant cette méthode.
Mesure de la consommation de courant PI de la banque d'alimentation USB. Pour "connecter en série", j'ai utilisé un câble USB modifié (voir photo). Voir graphique du courant mesuré pendant la période "active" (PI boot up - PI shutdown). Pendant la période inactive, la cale Pimoroni ONOFF coupe complètement l'alimentation de Pi, donc la consommation de courant ~ zéro. Sommaire -
Période active = 97 secondes
Période active Moy. Courant = 137 mA
En supposant une banque d'alimentation de 1 1200 mAh, le nombre théorique de cycles de période active est > 3000.
Test de durée de vie accéléré de la batterie
J'ai temporairement contrôlé le PI avec Arduino UNO programmé pour un cycle rapide - le temps entre les alarmes était de 2 minutes par rapport aux 24 heures normales.
Test n°1: batterie externe de 11200 mAh. Commencé à 22 heures et je me suis arrêté à 13 heures le lendemain. Résultats: 413 photos prises, 3 des 4 LED de niveau de charge toujours allumées à la fin du test.
Test n°2: batterie externe de 7 200 mAh. Commencé à 19h30 et je me suis arrêté à 16h30 le lendemain. Résultats: 573 photos prises, 2 LED de niveau de charge sur 4 toujours allumées à la fin du test.
Conclusion: Je pense que les résultats ci-dessus indiquent qu'une opération d'au moins un an prenant 1 par photo est probable.
Conseillé:
Transformez la batterie du groupe de rock X-box en une batterie électronique autonome Midi.: 4 étapes (avec photos)
Transformez la batterie du groupe de rock X-box en une batterie électronique autonome Midi.: J'ai eu la chance d'avoir une batterie x-box d'occasion, elle est un peu rugueuse et pas de palette, mais rien qui ne puisse être réparé. transformez-le en un ensemble de batterie électrique autonome. Lire la valeur analogique du capteur piézo et la transformer en commande MIDI
Vérificateur de batterie avec sélection de température et de batterie : 23 étapes (avec photos)
Vérificateur de batterie avec sélection de la température et de la batterie : testeur de capacité de la batterie. Avec cet appareil, vous pouvez vérifier la capacité de la batterie 18650, acide et autres (la plus grande batterie que j'ai testée est une batterie acide 6v 4,2A). Le résultat du test est en milliampère/heure. Je crée cet appareil car j'en ai besoin pour vérifier
État de la batterie DF65 : 6 étapes
État de la batterie DF65 : El problema - Le problemEl DragonForce 65 es un velero RC que protege la electrónica del agua, de un modo que hace que sea muy poco accessible. En estas circunstancias, es muy trabajoso el acceder al pack de baterías para medir el voltaje y así comp
Voyants d'état de la salle de bain et interrupteur automatique : 4 étapes (avec photos)
Voyants d'état de la salle de bain et interrupteur automatique : ce projet utilise des interrupteurs de proximité et des relais pour contrôler une banque de voyants. Les lumières transmettent l'état d'occupation de deux salles de bains. Problème : Deux salles de bains pour un seul utilisateur - dans une maison de style dortoir - sont partagées par plusieurs personnes, mais e
Bouton facile de vocabulaire étendu : 6 étapes
Bouton simplifié de vocabulaire étendu : le bouton simplifié est disponible chez Staples au prix de 5 $ et il dit simplement « c'était facile » chaque fois que vous le frappez. Le bouton facile est bien construit pour le prix, mais nécessite un peu de travail et environ 10 $ de pièces pour le rendre enregistrable