Table des matières:

Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique : 5 étapes (avec photos)
Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique : 5 étapes (avec photos)

Vidéo: Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique : 5 étapes (avec photos)

Vidéo: Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique : 5 étapes (avec photos)
Vidéo: 3 minutes pour comprendre... les objets connectés (IoT) 2024, Novembre
Anonim
Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique
Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique
Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique
Nouvelle couche de capteur IOT sans fil pour le système de surveillance de l'environnement domestique

Ce Instructable décrit une couche de capteur IOT sans fil à moindre coût et alimentée par batterie pour mon précédent Instructable: LoRa IOT Home Environmental Monitoring System. Si vous n'avez pas déjà consulté cet Instructable plus tôt, je vous recommande de lire l'introduction pour un aperçu des capacités du système qui sont maintenant étendues à cette nouvelle couche de capteur.

Le système original de surveillance de l'environnement domestique LoRa IOT a atteint les objectifs que j'avais fixés lors de sa publication en avril 2017. Cependant, après avoir utilisé le système de surveillance pendant plusieurs mois pour surveiller la température et l'humidité à chaque étage de la maison, je voulais ajouter 11 capteurs supplémentaires à des endroits particulièrement vulnérables de la maison; y compris, six capteurs placés stratégiquement au sous-sol, des capteurs dans chaque salle de bain et un capteur dans le grenier, la buanderie et la cuisine.

Plutôt que d'ajouter plus de capteurs basés sur LoRa du précédent Instructable qui sont un peu chers et alimentés via des adaptateurs secteur, j'ai décidé d'ajouter une couche de capteurs à piles à moindre coût utilisant des émetteurs de liaison RF 434 MHz. Pour maintenir la compatibilité avec le système de surveillance de l'environnement domestique LoRa IOT existant, j'ai ajouté un pont sans fil pour recevoir les paquets à 434 MHz et les retransmettre sous forme de paquets LoRa à 915 MHz.

La nouvelle couche de capteurs se compose des sous-systèmes suivants:

  1. Télécommandes sans fil 434 MHz - capteurs de température et d'humidité à piles
  2. Pont sans fil - Reçoit des paquets de 434 MHz et les retransmet sous forme de paquets LoRa.

Les télécommandes sans fil 434 MHz utilisent une puissance de transmission inférieure et des protocoles moins robustes par rapport aux radios LoRa, de sorte que l'emplacement du pont sans fil dans la maison est choisi pour assurer une communication fiable avec toutes les télécommandes sans fil 434 MHz. L'utilisation du pont sans fil permet d'optimiser la communication avec les télécommandes sans fil 434 MHz sans imposer de contrainte sur l'emplacement de la passerelle LoRa IOT.

Les télécommandes sans fil 434 MHz et le pont sans fil sont construits à l'aide de modules matériels facilement disponibles et de quelques composants individuels. Les pièces peuvent être obtenues auprès d'Adafruit, Sparkfun et Digikey; dans de nombreux cas, les pièces Adafruit et Sparkfun sont également disponibles auprès de Digikey. Des compétences en soudure sont nécessaires pour assembler le matériel, en particulier le câblage point à point des télécommandes sans fil 434 MHz. Le code Arduino est bien commenté pour la compréhension et pour permettre une extension facile des fonctionnalités.

Les objectifs de ce projet étaient les suivants:

  • Trouvez une technologie sans fil à moindre coût adaptée aux environnements domestiques.
  • Développer un capteur sans fil alimenté par batterie capable de fonctionner pendant plusieurs années avec un seul jeu de batteries.
  • Ne nécessite aucune modification du matériel ou du logiciel de la passerelle LoRa IOT de mon précédent Instructable.

Le coût total des pièces pour les télécommandes sans fil 434 MHz, à l'exclusion des piles 3xAA, est de 25 $, dont le capteur de température et d'humidité SHT31-D représente plus de la moitié (14 $).

Comme avec les télécommandes LoRa de mon précédent Instructable, les télécommandes sans fil 434 MHz prennent des mesures de température et d'humidité et font rapport à la passerelle LoRa IOT, via le pont sans fil, toutes les 10 minutes. Les onze télécommandes sans fil 434 MHz ont été mises en service en décembre 2017 à l'aide de 3 piles AA fournissant nominalement 4,5 V. Les lectures de la batterie des onze capteurs en décembre 2017 allaient de 4,57 V à 4,71 V, seize mois plus tard, en mai 2019, les lectures de la batterie allaient de 4,36 V à 4,55 V. L'utilisation de pièces avec une large plage de tension de fonctionnement devrait garantir le fonctionnement des capteurs pendant encore un an ou plus, sous réserve de maintenir la fiabilité de la liaison RF car la puissance de transmission est réduite avec des tensions de batterie plus faibles.

La fiabilité de la couche de capteur 434 MHz a été excellente dans mon environnement domestique. La nouvelle couche de capteurs est déployée sur 4 200 pieds carrés d'espace fini et 1 800 pieds carrés d'espace de sous-sol non fini. Les capteurs sont séparés du pont sans fil par une combinaison de 2 à 3 murs intérieurs et sol/plafonds. La passerelle LoRa IOT de mon précédent Instructable envoie une alerte SMS si la communication est perdue avec un capteur pendant plus de 60 minutes (6 rapports manqués de dix minutes). Un capteur, sur le sol dans un coin au fond du sous-sol derrière des boîtes empilées, provoquera une alerte de perte de contact de temps en temps, cependant, dans tous les cas, la communication avec le capteur se rétablit sans aucune intervention.

Merci d’avoir visité cette instructable et veuillez consulter les étapes suivantes pour plus d’informations.

  1. Conception de capteur sans fil à piles
  2. Matériel à distance sans fil 434 MHz
  3. Logiciel de télécommande sans fil 434 MHz
  4. Matériel de pont sans fil
  5. Logiciel de pont sans fil

Étape 1: Conception de capteur sans fil à piles

Conception de capteur sans fil à piles
Conception de capteur sans fil à piles

La conception de la télécommande sans fil 434 MHz utilise les pièces suivantes:

  • Microcontrôleur AVR 8 bits ATtiny85
  • Sensirion SHT31-D - Carte de Déploiement pour Capteur de Température et d'Humidité
  • Émetteur de liaison RF Sparkfun 434 MHz
  • Résistance 10K Ohm

L'une des premières décisions de conception a été d'éviter les appareils qui nécessitent 3,3 V ou 5 V régulés et de sélectionner des pièces qui fonctionnent sur une large plage de tension. Cela élimine le besoin de régulateurs de tension qui gaspillent de l'énergie dans une conception fonctionnant sur batterie et prolonge la durée de vie des capteurs car ils continueront à fonctionner plus longtemps à mesure que la tension de la batterie diminue avec le temps. Les plages de tension de fonctionnement des pièces choisies sont les suivantes:

  • ATtiny85: 2,7 V à 5,5 V
  • SHT31-D: 2,4 V à 5,5 V
  • Tx de liaison RF: 1,5 V à 12 V

En tenant compte d'une certaine marge, les télécommandes sans fil 434 MHz devraient fonctionner jusqu'à une tension de batterie de 3 V. Comme déjà noté, il reste juste à voir dans quelle mesure la fiabilité de la liaison RF est maintenue car la puissance de transmission est réduite avec des tensions de batterie plus faibles.

La décision a été prise d'utiliser 3 piles AA pour fournir une tension de démarrage nominale de 4,5 V. Après 16 mois de fonctionnement, la tension de batterie la plus basse mesurée est de 4,36V.

La minuterie de chien de garde ATtiny85 (WDT) est utilisée pour maintenir la télécommande sans fil 434 MHz en mode veille la plupart du temps. L'ATtiny85 est réveillé par le WDT toutes les 8 secondes pour incrémenter un compteur de 10 minutes; après avoir atteint un intervalle de 10 minutes, une mesure est prise et un paquet de données transmis.

Pour minimiser davantage la consommation d'énergie, le SHT31-D et l'émetteur de liaison RF sont alimentés par une broche de port d'E/S numérique sur l'ATtiny85 configuré comme sortie. L'alimentation est appliquée lorsque la broche d'E/S est à l'état haut (1) et supprimée lorsque la broche d'E/S est à l'état bas (0). Grâce au logiciel, l'alimentation n'est appliquée à ces périphériques que toutes les 10 minutes pendant 1 à 2 secondes pendant que les mesures sont prises et transmises. Reportez-vous au logiciel de télécommande sans fil 434 MHz pour une description du logiciel associé.

Le seul autre composant utilisé dans la télécommande sans fil 434 MHz est une résistance de 10K ohms utilisée pour tirer la broche de réinitialisation sur l'ATtiny85.

Une première conception utilisait un diviseur de tension résistif à travers la batterie pour permettre à une broche ADC sur l'ATTINY85 de mesurer la tension de la batterie. Bien que petit, ce diviseur de tension a placé une charge constante sur la batterie. Certaines recherches ont mis au point une astuce qui utilise la tension de référence de bande interdite interne ATtiny85 de 1,1 V pour mesurer Vcc (tension de la batterie). En réglant la tension de référence ADC sur Vcc et en prenant une mesure de la tension de référence interne de 1,1 V, il est possible de résoudre Vcc. La tension de référence interne de 1,1 V de l'ATtiny85 est constante tant que Vcc > 3 V. Reportez-vous au logiciel de télécommande sans fil 434 MHz pour une description du logiciel associé.

La communication entre l'ATtiny85 et le SHT31-D se fait via le bus I2C. La carte de dérivation Adafruit SHT31-D comprend des résistances de rappel pour le bus I2C.

La communication entre l'ATtiny85 et l'émetteur de liaison RF se fait via une broche d'E/S numérique configurée comme sortie. La bibliothèque RadioHead Packet Radio RH_ASK est utilisée pour activer/désactiver (OOK / ASK) l'émetteur de liaison RF via cette broche d'E/S numérique.

Étape 2: Matériel distant sans fil 434 MHz

Matériel à distance sans fil 434 MHz
Matériel à distance sans fil 434 MHz
Matériel à distance sans fil 434 MHz
Matériel à distance sans fil 434 MHz

Liste des pièces:

1 x planche à pain Adafruit 1/4, Digikey PN 1528-1101-ND

1 x support de batterie 3 x piles AA, Digikey PN BC3AAW-ND

1 x carte de dérivation Adafruit Sensiron SHT31-D, Digikey PN 1528-1540-ND

1 x émetteur de liaison RF Sparkfun (434 MHz), Digikey PN 1568-1175-ND

1 x microcontrôleur ATtiny85, Digikey PN ATTINY85-20PU-ND

1 x prise DIP 8 broches, Digikey PN AE10011-ND

1 x 10K ohm, résistance 1/8W, Digikey PN CF18JT10K0CT-ND

6.75 / 17cm de longueur de fil de cuivre émaillé 18AWG

1 x ruban mousse double face

Fil d'enroulement de fil de 18 /45 cm

Une prise est utilisée pour l'ATtiny85 car la programmation en circuit n'est pas prise en charge.

La carte de dérivation SHT31-D, l'émetteur de liaison RF, la prise DIP à 8 broches et le fil d'antenne sont soudés sur la planche à pain comme indiqué sur la photo ci-dessus. Retirez l'émail de 1/4 du fil d'antenne 18AWG avant de souder à la planche à pain.

La résistance de 10K ohms est soudée sur la maquette entre les broches 1 et 8 de la prise DIP à 8 broches.

Le fil d'enroulement du fil est soudé à l'arrière de la planche à pain pour établir les liens entre les composants conformément au schéma de principe de la télécommande sans fil illustré à l'étape précédente.

Les fils positifs et négatifs du support de batterie sont soudés à un ensemble de bus "+" et "-", respectivement, sur la planche à pain.

La télécommande sans fil 434 MHz est testée avec le pont sans fil et la passerelle LoRa IOT. La télécommande sans fil 434 MHz enverra immédiatement un paquet chaque fois que les piles sont insérées, et toutes les ~10 minutes par la suite. Lors de la réception d'un paquet sans fil de la couche de capteur 434 MHz, le voyant vert du pont sans fil clignote pendant environ 0,5 s. Le nom de la station, la température et l'humidité doivent être affichés par la passerelle LoRa IOT si le numéro de station distante sans fil 434 MHz a été configuré dans la passerelle.

Une fois que la télécommande sans fil est testée correctement avec un ATtiny85 programmé, un morceau de ruban adhésif double face en mousse, coupé à la même taille que la planche à pain, est utilisé pour fixer la planche à pain terminée au support de batterie.

Étape 3: Logiciel de télécommande sans fil 434 MHz

Logiciel de télécommande sans fil 434 MHz
Logiciel de télécommande sans fil 434 MHz
Logiciel de télécommande sans fil 434 MHz
Logiciel de télécommande sans fil 434 MHz

Le logiciel de télécommande sans fil 434 MHz est joint à cette étape et est bien commenté.

J'ai programmé les microcontrôleurs ATtiny85 à l'aide d'un programmeur Sparkfun Tiny AVR et de l'IDE Arduino. Sparkfun propose un didacticiel complet sur la configuration des pilotes, etc. et sur la manière de faire fonctionner le programmeur avec l'IDE Arduino.

J'ai ajouté une prise ZIF (Zero Insertion Force) au programmeur Tiny AVR pour faciliter l'ajout et la suppression de puces du programmeur.

Étape 4: matériel de pont sans fil

Matériel de pont sans fil
Matériel de pont sans fil
Matériel de pont sans fil
Matériel de pont sans fil
Matériel de pont sans fil
Matériel de pont sans fil
Matériel de pont sans fil
Matériel de pont sans fil

Liste des pièces:

1 x Arduino Uno R3, Digikey PN 1050-1024-ND

1 x Adafruit Proto Shield Arduino Stack V. R3, Digikey PN 1528-1207-ND

1 x carte émetteur-récepteur radio Adafruit RFM9W LoRa (915 MHz), Digikey PN 1528-1667-ND

1 x récepteur de liaison RF Sparkfun (434 MHz), Digikey PN 1568-1173-ND

1 x prise DIP 8 broches, Digikey PN AE10011-ND

6.75 / 17cm de longueur de fil de cuivre émaillé 18AWG

3,25 / 8,5 cm de longueur de fil de cuivre émaillé 18AWG

Fil d'enroulement de fil de 24 / 61 cm

1 x câble USB A / MicroB, 3 pieds, Adafruit PID 592

1 x alimentation 5V 1A port USB, Adafruit PID 501

Assemblez le bouclier de prototypage selon les instructions sur Adafruit.com.

Assemblez la carte émetteur-récepteur LoRa RFM95W selon les instructions sur Adafruit.com. La longueur de 3,25" / 8,5 cm de fil 18AWG est utilisée pour l'antenne et est soudée directement à la carte de l'émetteur-récepteur après avoir retiré 1/4" d'émail du fil.

Coupez soigneusement la prise DIP à 8 broches en deux dans le sens de la longueur pour créer deux jeux de prises SIP à 4 broches.

Soudez les deux prises SIP à 4 broches au blindage de prototypage comme indiqué. Ceux-ci seront utilisés pour brancher le récepteur de liaison RF, alors assurez-vous qu'ils sont dans les bons trous pour correspondre à l'émetteur de liaison RF avant de souder.

Soudez la carte de l'émetteur-récepteur LoRa RFM9W au blindage de prototypage comme indiqué.

Les connexions suivantes sont établies entre l'Arduino Uno et la carte émetteur-récepteur RFM9W à l'aide d'un fil d'enroulement sur le dessus de la carte de prototypage:

RFM9W G0 Arduino Digital I/O Pin 2, la bibliothèque RadioHead utilise l'interruption 0 sur cette broche

Embase RFM9W SCK Arduino ICSP, broche 3

Connecteur RFM9W MISO Arduino ICSP, broche 1

Embase RFM9W MOSI Arduino ICSP, broche 4

RFM9W CS Arduino Digital I/O Pin 8

RFM9W RST Arduino Digital I/O Pin 9

Les connexions suivantes sont effectuées sur la face inférieure de la carte de prototypage:

Carte de prototypage RFM9W VIN bus 5V

RFM9W GND Bus de masse de carte de prototypage (GND)

RF Link Rx Pin 1 (GND) Bus de masse de la carte de prototypage (GND)

RF Link Rx Pin 2 (Data Out) Arduino Digital I/O Pin 6

RF Link Rx Pin 2 (Vcc) Carte de prototypage bus 5V

Carte Proto LED Verte Arduino Digital I/O Pin 7

Les informations sur les broches du récepteur de liaison RF sont disponibles sur www.sparkfun.com.

Dénudez l'émail de 1/4 'de la longueur de 6,75 du fil 18AWG et insérez-le dans le trou de la carte de prototypage immédiatement adjacent à la broche RF Link Rx 8 (antenne). Une fois inséré dans le trou, pliez l'extrémité dénudée pour qu'elle contact avec RF Link Rx Pin 8 et soudez-le en place.

Programmez l'Arduino Uno avec le croquis fourni à l'étape suivante. Lors de la réinitialisation ou de la mise sous tension, la LED verte clignote deux fois pendant 0,5 s. Lors de la réception d'un paquet sans fil de la couche de capteur 434 MHz, la LED verte clignote pendant environ 0,5 s.

Étape 5: logiciel de pont sans fil

Le logiciel Wireless Bridge est joint à cette étape et est bien commenté.

Conseillé: