Dans ce tutoriel, nous allons parler de la création d'un prototype de projet IoT avec Amazon Web Services (AWS), Slack et un Raspberry Pi. Ce projet contribue à présenter une démonstration toute simple sur la manière de créer un système de capteur personnalisé, compatible avec le cloud tout en intégrant des produits et services populaires. Notre article s'appuie sur plusieurs ressources sur Internet.
Comment ça marche ?
À l'aide d'un capteur de température DS18B20, le Raspberry Pi recueille les données toutes les minutes. Il transfère ensuite les mesures (nom du capteur, horodatage et température en degrés Celsius et Fahrenheit) à un point de terminaison AWS API Gateway via une requête HTTP POST. Après ce procédé, le point de terminaison a recours à une fonction anonyme qui insère les données dans une table DynamoDB.
De son côté, l'AWS EventBridge passe par une seconde fonction anonyme une fois par minute. Cette dernière est présente pour tester la table DynamoDB avec tous les éléments insérés dans les 60 dernières secondes. Ceux-ci seront ensuite envoyés sur un canal Slack via une requête HTTP POST. Pour des raisons de sécurité, le point de terminaison API Gateway utilise un jeton d'autorisation stocké dans AWS Systems Manager.
De quoi le projet aurait-il besoin ?
Ce prototype nécessite un compte AWS, un compte Slack, une interface de ligne de commande (CLI) AWS et une CLI du modèle d'application sans serveur (SAM) AWS. Il aura également besoin d'un Raspberry Pi, une distribution Raspbian de Linux et un capteur de température DS18B20 et du langage Python 3.
Configuration de Slack
Le premier élément nécessaire à ce projet de création est une application Slack avec des webhooks entrants. Il est possible de créer l'application en suivant un tutoriel proposé sur le site Web de Slack. Il est conseillé d'enregistrer l'URL du webhook qui sera bien utile pour les prochaines étapes.
Configuration d'AWS
Le deuxième composant de ce projet est une application sans serveur AWS. Elle utilise les services API Gateway, DynamoDB, EventBridge, Lambda et Systems Manager.
Conclusion
Ce projet prototype IoT représente l'addition d'AWS, de Slack et de Raspberry Pi. Il fait référence à une manière plus simple d'utiliser les produits et services populaires. Ceci dans le but de créer des systèmes de capteurs personnalisés et compatibles avec le cloud. Pour améliorer le prototype, il est possible d'augmenter le nombre de Raspberry Pis avec des capteurs de température DS18B20.
Mais on peut également choisir d'ajouter d'autres types de capteurs (par exemple, des capteurs d'humidité) ou de transformer notre programme Python en un package installable. Une autre option consiste entre autres à exécuter notre programme Python en tant que service Linux et de créer des visualisations des données des capteurs… Les opportunités sont illimitées !
- Partager l'article :