Table des matières:
- Étape 1: Liste des pièces
- Étape 2: Programmation de la carte Digispark
- Étape 3: Réduction de la puissance
- Étape 4: bouton de réinitialisation
- Étape 5: Conférencier
- Étape 6: Fonctionnement
Vidéo: Détecteur de fenêtre ouverte Arduino - pour l'hiver : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Il fait froid dehors, mais parfois j'ai besoin d'air frais dans mes chambres. Alors, j'ouvre la fenêtre, sors de la pièce, ferme la porte et veux revenir dans 5 à 10 minutes. Et au bout de quelques heures je me souviens que la fenêtre est ouverte… Peut-être que vous le savez ou avez des enfants, ce qui vous donne cette expérience.
Ma solution est le détecteur de fenêtre ouverte. La batterie durera plus d'un an, il suffit donc de la placer en automne et de la retirer au printemps.
Étape 1: Liste des pièces
- Carte Digispark d'eBay.
- Vieux écouteurs.
- Petit bouton de réinitialisation.
- Connecteurs pour haut-parleur - sinon il n'est pas possible de reprogrammer la carte.
- Câble.
- Pour l'alimentation, vous avez besoin de:
Boîtier de piles AAA avec interrupteur marche/arrêt. Vous pouvez même utiliser des piles usées, car le module fonctionnera jusqu'à 2,4 volts
OU
Ancienne batterie lipo (même 30% de capacité suffit à cet effet) et si vous n'en avez pas déjà, un chargeur pour batteries lipo d'eBay.
OU
Un support pour pile bouton CR2032
ET
Diode 1A 1N4001 ou équivalent -ou tout ce que vous avez dans cette taille- pour la protection contre l'inversion de polarité
Étape 2: Programmation de la carte Digispark
Installation du pilote
Vous devez installer le pilote Digispark avant de pouvoir programmer la carte. Téléchargez-le ici, ouvrez-le et exécutez " InstallDrivers.exe ".
Installation de l'IDE Arduino
Installez la carte Digispark pour l'IDE Arduino comme décrit dans
Je recommande d'utiliser comme URL de la carte Digispark dans Arduino File/Preferences le nouveau https://raw.githubusercontent.com/ArminJo/DigistumpArduino/master/package_digistump_index.json au lieu de https://digistump.com/package_digistump_index.json et installer le Cartes Digistump AVR version 1.6.8.
Puisque nous voulons économiser de l'énergie, l'horloge de la carte est commutée sur 1 MHz dans notre configuration (), vous pouvez choisir Digispark (1mhz - Pas d'USB) comme carte dans le menu Outils.
Compiler et télécharger le programme sur le tableau
Dans l'IDE Arduino, créez une nouvelle esquisse avec File/New et nommez-la par ex. " OpenWindowAlarm ". Copiez le code depuis OpenWindowAlarm.ino
OU
Téléchargez et extrayez le référentiel. Ouvrez le croquis avec Fichier -> Ouvrir… et sélectionnez le dossier " OpenWindowAlarm ".
Compilez-le et téléchargez-le. Gardez à l'esprit que ce téléchargement ne fonctionnera pas si l'enceinte est connectée. Si tout fonctionne bien, la LED intégrée du Digispark clignotera 5 fois (pour le délai d'alarme de 5 minutes) puis commencera à clignoter après 8 secondes avec un intervalle de 24 secondes pour signaler chaque lecture de température.
Étape 3: Réduction de la puissance
Notre carte Digispark utilise 5mA à 3, 0 volts. Avec 2 piles AAA (1000mAh), il fonctionnera pendant 8 jours. Mais il est possible de réduire la consommation d'énergie jusqu'à 26 µA en 3 étapes.
- Désactiver la LED d'alimentation en cassant le fil de cuivre qui relie la LED d'alimentation à la diode avec un couteau ou en enlevant/désactivant la résistance 102 permet d'économiser 1,3 mA.
- Le retrait du régulateur de tension VIN permet d'économiser 1,2 mA.
-
La déconnexion de la résistance USB Pullup (marquée 152) de 5 volts (VCC) permet d'économiser les 2,5 mA restants. Déconnectez-le en cassant le fil de cuivre du côté de la résistance qui pointe vers l'ATTiny. Cela désactive l'interface USB et à son tour la possibilité de programmer la carte Digispark via USB. Pour le réactiver, tout en économisant de l'énergie, connectez la résistance (marquée 152) directement à l'USB 5 volts facilement disponible sur le côté extérieur de la diode.
Le bon côté de la diode peut être trouvé en utilisant un testeur de continuité. Un côté de cette diode est connecté à la broche 8 de l'ATtiny (VCC). L'autre côté est connecté à l'USB 5 volts.
Désormais, la résistance de rappel USB n'est activée que si la carte Digispark est connectée à l'USB, par ex. pendant la programmation et la carte consomme 26 µA en veille.
Si vous reprogrammez les fusibles, vous pouvez obtenir une consommation électrique de 6 µA.
Pour reprogrammer les fusibles, vous avez besoin d'un FAI (qui peut être construit avec un Arduino) et d'un adaptateur de connexion. Pour la reprogrammation, vous pouvez utiliser ce script.
Étape 4: bouton de réinitialisation
Si vous ne souhaitez pas couper l'alimentation pour réinitialiser l'alarme, connectez un bouton de réinitialisation entre PB5 et la terre. J'ai fait cela en connectant la surface de cuivre VIN non connectée à PB5 et en soudant le bouton de réinitialisation directement au trou de broche VIN et à la grande surface de masse du régulateur de tension VIN retiré.
Si vous souhaitez vous débarrasser des 5 secondes d'attente pour la connexion USB après la réinitialisation, vous pouvez changer le noyau de micronoyau sur l'ATtiny85. Exécutez le script "0_Burn_upgrade-t85_recommended.cmd", puis rechargez à nouveau l'application OpenWindowAlarm avec l'IDE Arduino.
Étape 5: Conférencier
J'ai démonté un vieux casque et connecté le connecteur mâle au câble.
Étape 6: Fonctionnement
Pour utiliser la carte, placez-la sur un rebord de fenêtre et connectez-la à une batterie. Si la température sur le rebord est inférieure à la température où se trouvait la carte à l'origine, il faudra 5 minutes supplémentaires pour adopter intelligemment la nouvelle valeur de départ.
Vous serez alors alarmé si vous laissez la fenêtre ouverte plus de cinq minutes.
Fonctionnement interne
- Une fenêtre ouverte est détectée après TEMPERATURE_COMPARE_AMOUNT * TEMPERATURE_SAMPLE_SECONDS (48) secondes de lecture d'une température avec une valeur de TEMPERATURE_DELTA_THRESHOLD_DEGREE (2) inférieure à la température TEMPERATURE_COMPARE_DISTANCE * TEMPERATURE_SAMPLE_SECONDS (192) -> 3 minutes et secondes.
- Le délai est mis en œuvre en dormant 3 fois à `SLEEP_MODE_PWR_DOWN` pendant une période de 8 secondes pour réduire la consommation d'énergie.
- Une détection d'une fenêtre ouverte est indiquée par un clignotement plus long de 20 ms et un clic court toutes les 24 secondes. Par conséquent, le capteur interne dispose d'un temps de 3 minutes pour s'adapter à la température extérieure afin de capturer même les petits changements de température. Plus le changement de température est important, plus tôt la valeur du capteur changera et détectera une fenêtre ouverte.
-
`OPEN_WINDOW_ALARM_DELAY_MINUTES` (5) minutes après la détection de fenêtre ouverte, l'alarme est activée.
L'alarme ne démarre pas ou une alarme activée s'arrête si la température actuelle est supérieure à la température minimale mesurée (+ 1) c'est-à-dire que la fenêtre a déjà été fermée.
- L'alarme initiale dure 10 minutes. Après cela, il est activé pendant une période de 10 secondes avec une pause croissante de 24 secondes à 5 minutes.
- Toutes les VCC_MONITORING_DELAY_MIN (60) minutes, la tension de la batterie est mesurée. Selon le type de batterie détecté à la mise sous tension (voir VCC_VOLTAGE_LIPO_DETECTION (3,6 volts)), une tension de batterie inférieure à VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_LIPO (3550) ou VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_STANDARD Le millivolt est indiqué par un bip et un clignotement de la LED toutes les 24 secondes. Seul le bip (pas le flash) est significativement plus long que le bip pour une détection de fenêtre ouverte.
- Après la mise sous tension, le temps de stabilisation inactif est de 5 minutes. Si la carte se refroidit pendant le temps de stabilisation, 4h15 (ou 8h30) minutes sont ajoutées pour éviter les fausses alarmes après la mise sous tension.
Conseillé:
Simulation Opamp en boucle ouverte à l'aide de l'application EveryCiruit : 5 étapes
Simulation Opamp en boucle ouverte à l'aide de l'application EveryCiruit : EveryCircuit est l'une des « meilleures » plateformes de simulation pour l'électronique. Il a un site Web et une application. Cette instructable est pour la version Android. Mais suit exactement pour la version Web également. À propos de ce Instructable: Opamp ou amplificateur opérationnel est le
Une version sans fil de Ma porte de garage est-elle ouverte ou fermée ? : 7 étapes
Une version sans fil de… Ma porte de garage est-elle ouverte ou fermée ? : Nous voulions un système d'indication simple, bon marché et fiable qui nous montrait si nos portes de garage étaient ouvertes ou fermées. Il y a beaucoup de "Est-ce que ma porte de garage est ouverte" projets. La plus grande majorité de ces projets sont câblés. Dans mon cas, couru
Chapeau d'hiver LED : 5 étapes
Chapeau d'hiver à LED : Salut ! Je suis Cameron. Bienvenue dans mon instructable sur mon chapeau lumineux DIY ! Il est très simple à fabriquer et à utiliser. Espérons que vous apprécierez
Spectacle de lumière des Fêtes à LED facile : les sorciers en hiver - Bande LED WS2812B avec FastLED et un didacticiel Arduino : 6 étapes
Spectacle de lumière des Fêtes à DEL facile : les sorciers en hiver | Bande LED WS2812B avec FastLED et un didacticiel Arduino : j'ai conçu et programmé ce spectacle de lumière de Noël pour qu'il s'affiche n'importe où. J'ai utilisé une bande led WS2812B avec une densité de pixels de 30 pixels/mètre. Depuis que j'ai utilisé 5 mètres, j'avais un total de 150 LED. J'ai gardé le code simple pour que toute personne débutante dans l'utilisation de WS2812
Détecteur de fumée IOT : mettre à jour le détecteur de fumée existant avec IOT : 6 étapes (avec photos)
Détecteur de fumée IOT : Mettre à jour le détecteur de fumée existant avec IOT : Liste des contributeurs, Inventeur : Tan Siew Chin, Tan Yit Peng, Tan Wee Heng Superviseur : Dr Chia Kim Seng Département de génie mécatronique et robotique, Faculté de génie électrique et électronique, Universiti Tun Hussein Onn Malaisie.Distribuer