[1/3] Du matériel au cloud : créer votre propre solution IoT

Avez-vous déjà pensé à développer votre propre application IoT à partir de zéro, mais vous ne saviez pas par où commencer ? Pour vous et tous ces makers souls qui souhaitent concrétiser leurs projets, je vais vous raconter mon expérience, car j'y suis passée aussi.

Introduction

Ceci est le premier d'une série d'articles à travers lesquels je décrirai tout le processus, de la conception matérielle à l'application cloud, pour donner vie à mon projet. Les défis, problèmes, réalisations, et même quelques détails techniques et tutoriels liés à des appareils spécifiques utilisés à différentes étapes du processus.

Comment ai-je choisi mon projet ?

Tout d’abord, permettez-moi de me présenter : je suis étudiant en génie électrique, sur le point de terminer ma carrière. Pour mon projet de fin d'études, je souhaitais avoir l'expérience de concevoir et de développer mon propre appareil, et pouvoir l'utiliser pour déployer une application IoT qui pourrait contribuer à résoudre l'un des problèmes de ma ville. De plus, je voulais que cette solution soit abordable et simple, afin qu’elle puisse être utilisée par n’importe qui, quelle que soit son origine. Après quelques jours de réflexion, je me suis orienté vers les problématiques de mobilité : Déployer ma propre application de stationnement intelligent.

Pourquoi ai-je choisi ce projet ?

À mesure que la population mondiale augmente, la mobilité dans de nombreuses villes a tendance à s'effondrer en raison du grand nombre de véhicules circulant dans les rues. Dans les secteurs commerciaux, le problème est pire en raison du temps qu'il faut à un conducteur pour trouver une place pour garer son véhicule, générant ainsi des embouteillages insoutenables. Les systèmes de stationnement intelligents sont devenus un outil très utile pour réduire les problèmes de mobilité dans les endroits où la concurrence est élevée.

Cependant, ces systèmes sont généralement complexes et coûteux. Leur installation doit être effectuée par du personnel spécialisé et même la structure du parking doit souvent être modifiée. De plus, beaucoup d’argent et de temps doivent être consacrés à la maintenance. C’est pour cette raison que ce type de système n’est pas mis en œuvre partout. C'est pourquoi j'ai décidé de créer une solution plus simple, plus pratique et moins coûteuse pour aider les conducteurs à localiser les places de stationnement vides.

J'ai compris que pour développer ce projet, il pouvait être divisé en deux grandes étapes : la conception matérielle et la mise en œuvre d'applications logicielles.

Conception matérielle

1. Définition des fonctionnalités de l'appareil

Comme point de départ, il était nécessaire de définir quelles caractéristiques exigeraient le projet afin de commencer à planifier comment les atteindre. Pour mon appareil, j'ai choisi les fonctionnalités suivantes :

  • Faible consommation d'énergie
  • Portable
  • Sans fil
  • Longue durée de vie de la batterie
  • Facile à installer
  • Longue portée du signal
  • Fiabilité

2. Sélection des composants modulaires

Ensuite, j'ai dû réfléchir aux composants modulaires que devait avoir l'appareil pour accomplir sa fonction : détecter la présence d'un véhicule dans une place de stationnement et transmettre cette information au logiciel de manière sans fil.

Il me faudrait tout d'abord trouver un capteur capable de détecter la présence d'un véhicule. Ensuite, un microcontrôleur serait nécessaire pour lire, traiter et organiser les données collectées par le capteur. Enfin et surtout, il faudrait utiliser un module sans fil pour envoyer les informations à un serveur, où les données seraient stockées pour être utilisées par l' application logicielle .

En gardant tout cela à l’esprit, l’étape suivante consisterait à rechercher et à sélectionner tous les composants et technologies nécessaires pour répondre aux exigences mentionnées précédemment.

3. Sélection des technologies

Afin de sélectionner la technologie, j'ai étudié l'état de l'art des systèmes intelligents de stationnement et de détection de véhicules. J'ai découvert que les technologies de capteurs les plus couramment utilisées pour la détection de véhicules sont : l'infrarouge, les ultrasons et le magnétique. Cependant, j'ai considéré que les détections utilisant des capteurs ultrasoniques et infrarouges pourraient avoir une plus grande probabilité d'échec, car leurs mesures pourraient être affectées par des éléments tels que la forme des surfaces ou même la poussière de l'environnement. J'ai donc décidé de tester d'abord les capteurs magnétiques.

J'ai commencé à chercher des capteurs magnétiques , principalement à faible consommation d'énergie et à haute sensibilité. J'ai étudié les caractéristiques d'au moins 10 capteurs différents et sélectionné les cinq qui me semblaient les meilleurs. Plus tard, j'ai créé une feuille Google dans laquelle j'ai enregistré ces cinq capteurs avec leurs principales caractéristiques : tension d'alimentation, consommation électrique, sensibilité, résolution et interfaces de communication, afin de les comparer.

De plus, en raison de leur petite taille, je me suis assuré que les capteurs choisis disposaient d'une carte d'adaptation pour un prototypage rapide du système et une évaluation des appareils. Au final, j'ai choisi ceux ayant la sensibilité la plus élevée mais avec une faible consommation d'énergie. Les références de ces capteurs sont MMC5883MA et LSM303AGR .

Pour sélectionner le microcontrôleur, j'ai limité mes recherches aux architectures 8 bits , afin de réduire le coût et la complexité de programmation puisque les tâches qui doivent être effectuées par le microcontrôleur sont en réalité simples. J'avais besoin de trouver un microcontrôleur de faible consommation incluant un packaging me permettant de faire des tests pour le prototypage, c'est-à-dire approprié pour être utilisé dans une breadboard. J'ai fini par décider de tester les microcontrôleurs PIC, en commençant par le PIC18F2550 .

À ce stade, je devais sélectionner un module sans fil. La première question ici était : quelle technologie sans fil dois-je utiliser ? Eh bien, après quelques jours de recherches intenses et les conseils de mes collègues chez Ubidots , j'ai décidé d'utiliser LoRaWAN . En raison de ses caractéristiques telles qu'une faible consommation, une longue portée et une immunité élevée aux interférences, LoRaWAN est une technologie puissante pour les applications Internet des objets ( IoT ). Bien qu'il existe une limitation concernant la taille des paquets pouvant être envoyés à l'aide de LoRaWAN, cela ne pose pas de problème pour IoT car de grosses charges utiles ne sont pas nécessaires pour envoyer les données collectées à partir des capteurs.

Ensuite, j'ai recherché un module LoRaWAN avec une faible consommation d'énergie, une portée élevée et des interfaces de communication série. Il était obligatoire de s'assurer que la fréquence de travail du module LoRaWAN coïnciderait avec la bande ISM de mon pays. Quelques semaines auparavant, j'avais testé une carte de développement appelée SODAQ ONE . Cette carte comprend un module LoRaWAN intégré appelé RN2903 , qui répond aux exigences de ce projet. J'ai donc opté pour l'utilisation de ce module connu, qui a montré un très bon comportement lors des tests réalisés avec le SODAQ ONE.

Si vous connaissez déjà le SODAQ ONE V3 et souhaitez vous lancer avec Ubidots , consultez ce guide et commencez dès aujourd'hui !

Après avoir effectué toutes les étapes mentionnées ci-dessus, la prochaine étape consiste à tester les composants sélectionnés et à construire un prototype. Les résultats de ces tests détermineront si ces composants ont été correctement choisis pour mon application ou si je dois changer quelque chose.

Pour être honnête, même si l’ensemble du processus pouvait être compliqué, le plus difficile pour moi a été de décider par où commencer. Donc, si vous êtes intéressé par le développement de votre propre application IoT , ce que je vous recommande, c'est d'être clair sur les objectifs, les fonctionnalités et toute la portée de votre projet, et le reste du chemin apparaîtra tout seul sous vos yeux. .

Si vous voulez savoir comment tout cela s’est passé, gardez un œil sur les prochains articles à venir !

Cordialement, Daniela.