Table des matières:
- Étape 1: Matériel
- Étape 2: Matériel - PCB
- Étape 3: Le protocole LPWAN: Communication Sigfox
- Étape 4: Configuration du logiciel
- Étape 5: programmez votre STM32
- Étape 6: ThingSpeak - 1
- Étape 7: Communication entre le module Sigfox et la plateforme ThingSpeak
- Étape 8: ThingSpeak - 2
- Étape 9: Bonus - ThingTweet et React
- Étape 10: C'est votre tour maintenant
- Étape 11: Référence et bibliographie
Vidéo: AirCitizen - Surveillance de la qualité de l'air : 11 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Salut à tous
Aujourd'hui, nous allons vous apprendre à reproduire notre projet: AirCitizen par l'équipe AirCitizen Polytech !
--
Venant du 'OpenAir / What's your air?' Projets, le projet AirCitizen vise à permettre aux citoyens d'évaluer activement la qualité de leur environnement immédiat et notamment de l'air qu'ils respirent, en leur proposant à partir de:
Construire
Réaliser dans les « Fablabs » (laboratoires de fabrication numérique) des stations portables de mesures environnementales intégrant divers capteurs à bas coût (ex: température, humidité, pression, gaz NOx, ozone ou particules PM10 et PM2.5).
Mesure
Réaliser des mesures in situ afin de mettre en évidence la variabilité spatio-temporelle des variables environnementales: d'une part, lors de campagnes itinérantes avec l'appui de géographes-climatologues et, d'autre part, en divers lieux qui présentent une diversité de contextes environnementaux.
Partager
Contribuer à l'amélioration des connaissances en partageant ces mesures dans une base de données environnementales et permettre ainsi une cartographie en ligne de la pollution de l'air.
--
Le concept est de créer une station autonome qui peut collecter des données d'environnement et les envoyer avec le réseau SigFox vers un tableau de bord.
Donc d'une part, nous allons vous montrer comment concevoir le matériel et d'autre part comment faire la partie logicielle.
Étape 1: Matériel
Voici les composants que nous avons décidé d'utiliser pour concevoir la station:
- STM32 NUCLEO-F303K8 -> Pour plus d'informations
- HPMA115S0-XXX (Capteur de particules PM2.5 & PM10) -> Pour plus d'informations
- SHT11 ou SHT10 ou STH15 ou DHT11 (Température & Humidité Relative) -> Pour plus d'informations
- MICS2714 (capteur NO2, capteur de dioxyde d'azote) -> Pour plus d'informations
- Panneau solaire x2 (2W) -> Pour plus d'informations
- Batterie LiPo 3, 7 V 1050 mAh -> Pour plus d'informations
- Régulateur LiPo Rider Pro (106990008) -> Pour plus d'informations
- BreakOut SigFox BRKWS01 + 1 licence -> Pour plus d'informations
- 7 résistances (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)
- 1 condensateur (100nF)
- 1 transistor (2N222).
! ! ! Vous devez retirer SB16 et SB18 sur la carte nucleo stm32 pour éviter les interférences entre HPMA et SHT11 !
En gros, voici comment vous devez connecter les composants:
- Souder, en parallèle, les panneaux solaires.
- Connectez-les au LiPo Rider Pro et connectez également la batterie au LiPo Rider Pro.
- Comme sur la photo ci-dessus, connectez tous les éléments au STM32. Connectez un seul capteur de température et d'humidité et non 2 ! N'oubliez pas les résistances, le condensateur et le transistor.
- Enfin, connectez le STM32 au LiPo Rider Pro avec un câble USB.
La prochaine étape est une alternative à ce filaire.
Étape 2: Matériel - PCB
Nous avons décidé d'utiliser Autodesk Eagle pour concevoir la carte de circuit imprimé (PCB).
Vous pouvez choisir de connecter soit un DHT soit un SHT, nous avons choisi de concevoir deux empreintes digitales pour ces 2 capteurs afin de changer de capteur si besoin.
En pièce jointe, vous pouvez télécharger les fichiers de conception d'Eagle afin de pouvoir le réaliser facilement vous-même.
Nous utilisons la broche 5V de stm32 pour alimenter l'appareil. Dans cette configuration, seul le noyau stm32 est alimenté.
Ainsi, nous pouvons utiliser le mode veille profonde du MCU fournissant un faible courant de veille. En état de veille, tout le courant de veille tombe en dessous de XXµA.
Étape 3: Le protocole LPWAN: Communication Sigfox
Sigfox est un protocole LPWAN créé par une entreprise de télécommunications française - SIGFOX
Il permet aux appareils distants de se connecter à l'aide de la technologie à bande ultra-étroite (UNB). La plupart d'entre eux ne nécessiteront qu'une faible bande passante pour transférer de petites quantités de données. Les réseaux ne peuvent gérer qu'environ 12 octets par message et en même temps pas plus de 140 messages par appareil et par jour.
Pour de nombreuses applications IOT, les systèmes de téléphonie cellulaire traditionnels sont trop complexes pour permettre un fonctionnement à très faible consommation et trop coûteux pour être réalisables pour de nombreux petits nœuds à faible coût… Le réseau et la technologie SIGFOX sont destinés à la machine à faible coût. domaines d'application où une large couverture de zone est requise.
Pour AirCitizen, le format des données détectées est simple et la quantité de données correcte pour utiliser Sigfox pour traduire les données détectées des capteurs vers notre plateforme IOT - ThingSpeak.
Nous allons présenter l'utilisation de Sigfox dans les étapes suivantes.
Étape 4: Configuration du logiciel
Suite à la réalisation de notre circuit, passons au développement de notre microcontrôleur STM32 F303K8.
Pour plus de simplicité, vous pouvez choisir de programmer en Arduino.
Étape 1: Si vous n'avez pas encore installé l'IDE Arduino, téléchargez-le et installez-le à partir de ce lien. Assurez-vous de sélectionner votre système d'exploitation correct.
Le lien: Télécharger Arduino
Étape 2: Après avoir installé l'IDE Arduino, ouvrez et téléchargez les packages requis pour la carte STM32. Cela peut être fait en sélectionnant Fichier -> Préférences.
Étape 3: Cliquer sur Préférences ouvrira la boîte de dialogue ci-dessous. Dans la zone de texte URL de Boards Manager supplémentaire, collez le lien ci-dessous:
github.com/stm32duino/BoardManagerFiles/ra…
et appuyez sur OK.
Étape 4: Allez maintenant dans Outil -> Cartes -> Gestionnaire de cartes. Cela ouvrira la boîte de dialogue du gestionnaire de cartes, recherchera « STM32 Cores » et installera le package qui apparaît (package STMicroelectronics).
Étape 5: Après le package, l'installation est terminée. Allez dans Outils et faites défiler vers le bas pour trouver la "Série Nucleo-32". Ensuite, assurez-vous que la variante est "Nucleo F303K8" et changez la méthode de téléchargement en "STLink".
Étape 6: Maintenant, connectez votre carte à l'ordinateur et vérifiez à quel port COM la carte est connectée à l'aide du gestionnaire de périphériques. Ensuite, sélectionnez le même numéro de port dans Outils->Port.
Vous êtes maintenant prêt à programmer votre STM32 F303K8 avec Arduino !
Étape 5: programmez votre STM32
Une fois la configuration effectuée, vous devez programmer votre micro contrôleur pour collecter et envoyer des données.
Etape 1: Vérifiez l'affectation des E/S et de l'horodatage des mesures dans la partie "Définir" du code.
Étape 2: téléchargez le code ci-dessus sur le stm32, ouvrez le moniteur série et réinitialisez l'appareil. La commande "AT" doit apparaître à l'écran, sinon, vérifiez la déclaration des E/S.
Vous pouvez avoir une idée de la véracité de vos données en consultant les normes de la législation française en pièce jointe.
Passons à la configuration du tableau de bord.
Étape 6: ThingSpeak - 1
Avant de configurer comment rediriger les données de notre station vers la plateforme ThingSpeak, vous devez créer un compte ThingSpeak.
Inscription: Site Web ThingSpeak
Étape 1: Cliquez maintenant sur "Nouvelle chaîne". Cela ouvrira un formulaire. Entrez un nom et une description (si nécessaire).
Créer 5 champs:
- Champ 1: pm2, 5
- Champ 2: pm10
- Champ 3: température
- Champ 4: humidité
- Champ 5: NO2
Ces titres ne seront pas les titres de nos charts.
Si vous avez besoin d'un exemple, voir la photo ci-dessus.
Vous n'avez pas besoin de remplir plus de champs mais il peut être intéressant de saisir un lieu.
Faites défiler vers le bas et "Enregistrer la chaîne".
Étape 2: Canal de la station AirCitizen.
Maintenant, vous pouvez voir une page avec 5 graphiques. En cliquant sur le symbole du crayon, vous pouvez modifier les propriétés d'un graphique.
Le résultat est la deuxième image ci-dessus.
À cette étape, ces graphiques sont privés. Vous pourrez les rendre publiques une fois les données reçues.
Etape 3: Après la configuration de vos graphes. Allez dans l'onglet "Clés API". Regardez la partie requête API et plus précisément le premier champ, "Mettre à jour un flux de chaîne". Notez la clé API.
Vous aurez quelque chose comme ça:
OBTENIR
Vous pouvez maintenant passer au chapitre suivant.
Étape 7: Communication entre le module Sigfox et la plateforme ThingSpeak
Pour information, notez que chaque carte module Sigfox possède un numéro unique inscrit sur la carte et un numéro PAC.
Pour recevoir les données sur ThingSpeak, vous devez les rediriger.
Les données vont de la station au backend Sigfox et seront redirigées vers le serveur ThingSpeak.
Voir la première photo ci-dessus pour les explications.
Étape 1: Nous n'expliquerons pas comment s'inscrire sur Sigfox à cause de nombreux tutoriels sur internet.
Allez sur le backend Sigfox.
Cliquez sur "Type d'appareil", puis cliquez sur la ligne de votre kit et sélectionnez "Modifier".
Maintenant, allez dans la section "Rappels" et cliquez sur "Nouveau", "Rappel personnalisé".
Étape 2:
Vous devriez être sur la page de configuration:
Type: DATA et UPLINK
Chaîne: URL
Envoyer duplicata: aucun
Configuration de charge utile personnalisée: définissez la source de données et décidez du formulaire de données. Vous devriez écrire comme:
VarName::Type:NumberOfBits
Dans ce cas, nous avons 5 valeurs nommées pm25, pm10, température, humidité et NO2.
pm25::int:16 pm10::int:16 température::int:8 humidité::uint:8 NO2::uint:8
Modèle d'url: C'est la syntaxe. Utilisez la clé API précédemment trouvée et insérez-la après "api_key ="
api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#humidity}&field5={customData#NO2}
Utiliser la méthode HTTP: GET
Envoyer SNI: ON
En-têtes: Aucun
Cliquez maintenant sur "Ok".
Votre rappel à l'API ThingSpeak est maintenant configuré ! (Représentation à la deuxième photo ci-dessus).
Étape 8: ThingSpeak - 2
Maintenant, vous pouvez être plus pointilleux dans la modification des valeurs minimales et maximales des axes.
Si nécessaire, cliquez sur le logo crayon en haut à droite d'un graphique.
Les valeurs typiques:
PM 2, 5 & PM 10 = ug/m^3
Température = °C
Humidité = %
Dioxyde d'azote = ppm
Vous devriez avoir quelque chose comme les deux images ci-dessus.
Vous pouvez également ajouter d'autres widgets comme "Affichage numérique" ou "Jauge".
Enfin, pour rendre votre chaîne publique, allez dans l'onglet "Partage" et sélectionnez "Partager la vue de la chaîne avec tout le monde".
Étape 9: Bonus - ThingTweet et React
Facultatif: Tweetez si une condition est remplie !
Étape 1: Créez un compte Twitter ou utilisez votre compte Twitter personnel.
Inscrivez-vous - Twitter
Étape 2: Dans Thingspeak, allez dans « Apps » puis cliquez sur « ThingTweet ».
Liez votre compte Twitter en cliquant sur "Lier un compte Twitter".
Étape 3: Maintenant, retournez dans « Apps » puis cliquez sur « Réagir ».
Créez un nouveau React en cliquant sur "Nouveau React".
Par exemple:
Nom de la réaction: Température supérieure à 15 °C
Type de condition: numérique
Fréquence de test: sur l'insertion de données
Condition, si canal:
Champ: 3 (température)
Signe: est supérieur à
Valeur: 15
Action: ThingTweet
Puis tweet: Oh ! La température est supérieure à 15 °C
en utilisant le compte Twitter:
Options: Exécuter une action chaque fois que la condition est remplie
Cliquez ensuite sur "Enregistrer Réagir".
Vous allez maintenant tweeter si la condition est remplie et de nombreuses autres conditions peuvent être configurées comme en fonction du niveau de PM10.
Étape 10: C'est votre tour maintenant
Enfin, vous disposez désormais de tous les éléments pour reproduire votre propre AirCitizen Station !
Vidéo: Vous pouvez regarder une vidéo où nous présentons notre travail.
Notre plateforme ThingSpeak: AirCitizenPolytech Station
--
Merci pour votre attention !
L'équipe AirCitizen Polytech
Étape 11: Référence et bibliographie
https://www.sigfox.com/fr
Conseillé:
Mètre de qualité de l'air intérieur : 5 étapes (avec photos)
Compteur de qualité de l'air intérieur : projet simple pour vérifier la qualité de l'air dans votre maison. Étant donné que nous restons/travaillons beaucoup à la maison ces derniers temps, il peut être judicieux de surveiller la qualité de l'air et de vous rappeler quand il est temps d'ouvrir la fenêtre. et prendre l'air
Mettre au point l'appareil photo de haute qualité Pi avec Lego et un servo : 4 étapes (avec photos)
Concentrez la caméra de haute qualité Pi avec Lego et un servo : avec une pièce Lego légèrement piratée, un servo continu et du code Python, vous pouvez focaliser votre caméra de haute qualité Raspberry Pi de n'importe où dans le monde ! La caméra Pi HQ est une pièce fantastique de kit, mais comme je l'ai découvert en travaillant sur le récent Merlin
Capteur de qualité de l'air AEROBOT V1.0 : 6 étapes (avec photos)
Capteur de qualité de l'air AEROBOT V1.0 : cette instructable concerne la fabrication d'un capteur de qualité de l'air peu coûteux et très précis nommé AEROBOT. Ce projet montre la température, l'humidité relative, la densité de poussière PM 2,5 et des alertes sur la qualité de l'air de l'environnement. Il utilise un sens DHT11
Un moniteur de qualité de l'air IoT à faible coût basé sur RaspberryPi 4: 15 étapes (avec photos)
Un moniteur de qualité de l'air IoT à faible coût basé sur RaspberryPi 4: Santiago, au Chili, lors d'une urgence environnementale hivernale, a le privilège de vivre dans l'un des plus beaux pays du monde, mais malheureusement, tout n'est pas rose. Le Chili pendant la saison hivernale souffre beaucoup de la contamination de l'air, mai
Bonne qualité V Qualité ! Écouteurs Sony Ericsson : 3 étapes
Bon rapport qualité-prix V Qualité !… Écouteurs Sony Ericsson : allons droit au but… J'ai acheté des écouteurs Sony ericson pour 5 £ considérablement moins que les écouteurs Bluetooth qui peuvent coûter jusqu'à 50 £ ! , ils étaient d'un bon rapport qualité-prix mais la qualité est très mauvaise, je vais vous montrer quelques techniques pour