Raspberry Pi Pico W et GCP Firebase

Puissance de traitement élevée, rentabilité, petit facteur de forme et prise en charge Wi-Fi/Bluetooth font souvent du Raspberry Pi Pico W un choix idéal pour créer des solutions personnalisées d’IdO et d’automatisation domestique.
5 min de lecture
Mayank Johri
Mayank Johri
Gestionnaire de groupe
5 min de lecture

Résumé 

Le Raspberry Pi Pico W introduit des interfaces sans fil monocanal 2,4 GHz intégrées (802.11n) via l’Infineon CYW43439, ce qui le rend idéal pour les applications personnalisées et l’automatisation résidentielle. offre divers services pour répondre aux besoins de l’IdO, incluant l’Assistant Google, la maison intelligente et les appareils Nest. De nos jours, l’IdO pénètre presque tous les aspects de la vie quotidienne. Cependant, de nombreuses solutions offertes sont freinées par le verrouillage des fournisseurs et manquent de transparence quant à la collecte des données des utilisateurs. Dans cet article, nous visons à explorer le développement d’une solution personnalisée abordable et nécessitant un minimum d’efforts. Nous allons utiliser le Raspberry Pi Pico W, qui fait partie de la famille Raspberry Pi Pico, et y ajouter des interfaces sans fil monocanal 2,4 GHz (802.11n) grâce à l’Infineon CYW43439, qui conserve le facteur de forme du Pico tout en ajoutant les fonctionnalités sans fil essentielles, incluant :

  • Sans fil (802.11n), la bande unique (2,4 GHz)
  • WPA3
  • Le point d’accès Wi-Fi en mode logiciel prend en charge jusqu’à quatre clients
  • MicroPython, CircuitPython et SDK C/C++ (trousses de développement logiciel) pris en charge
  • Prise en charge intégrée par les environnements Mu et Thonny pour le développement Python

Sa haute puissance de traitement, sa faible consommation, son faible coût, son petit format et la prise en charge Wi-Fi/Bluetooth en font souvent un candidat idéal pour la création de solutions IdO et d’automatisation résidentielle.

L’IdO est un ensemble d’objets physiques munis de capteurs, de capacités de traitement, de logiciels et d’autres technologies, qui communiquent et échangent des données avec d’autres appareils et systèmes via Internet. D’ici 2025, 80 milliards d’appareils IdO seront connectés à Internet.

Types d’IdO

NomUsage principalExemples
IdO grand publicUtilisateurs résidentiels

- Assistance vocale, 

- Automatisation résidentielle

IdO commercialTransport, soins de santé, etc.

- Stationnement intelligent 

- Suivi de flotte 

- Biométrie portable, etc.

IdO industrielApplications industrielles

- Systèmes de contrôle numérique 

- Usine intelligente 

- Agriculture intelligente et mégadonnées industrielles

IdO militaireDomaine militaire

- Surveillance à l’aide de robots et drones intelligents 

- Biométrie portable 

- Gestion intelligente des stocks, etc.

IdO dans les infrastructuresVilles intelligentes

- Capteurs d’infrastructure

- Gestion des foules

- Gestion d’événements

- Gestion des catastrophes, etc.

Exemples les plus courants d’appareils IdO

  • Sécurité résidentielle
  • Téléviseurs intelligents
  • Voiture connectée
    • Garmin DriveSmart
    • Rove R2-4K Dash Cam
  • Capteurs d’activité
  • Sécurité et sûreté industrielle
    • Caméras de sécurité
  • Lunettes RA
  • Détection de mouvement
  • Haut-parleurs intelligents
    • Google Home
    • Amazon Echo
  • Ampoules intelligentes
    • Philips Hue White and Color Ambiance
  • Montres intelligentes
  • Serrures intelligentes 

GCP  et IdO

GCP fournit de nombreux services pouvant répondre aux besoins de l’IdO, tels que :

OffreCas d’usage
Assistant Google Smart HomeAutomatisation résidentielle
Accès aux appareils NestAutomatisation résidentielle
FirebaseMobile, automatisation résidentielle, IA
PubSubIdO
BigQueryIdO, IA
Edge TPUIdO, IA
Google IdOIdO, IA

Firebase

Firebase propose diverses fonctionnalités, dont une base de données en temps réel, l’authentification, la messagerie infonuagique, le stockage, l’hébergement, un laboratoire d’essai et des analyses, qui peuvent être exploités pour concevoir des solutions IdO personnalisées. Nous allons utiliser l’authentification et les fonctionnalités de base de données en temps réel pour cette documentation. Nous utiliserons le module [micropython-firebase-real-time] pour l’authentification et l’accès à l’API de la base de données en temps réel.

L’EDI Thonny peut être utilisé pour l’installer sur le Pi Pico W en suivant la méthode ci-dessous :

  • Cliquez sur « Shell »
  • Entrez les commandes Python ci-dessous dans le shell pour installer le module firebase_realtime.

    firebase_realtime

Connectivité Wi-Fi

De nombreuses méthodes existent pour partager des données avec un microcontrôleur, telles que les modes à courte portée (Wi-Fi, Bluetooth) ou à longue portée (LoRa, DASH7).

L’avantage principal du Raspberry Pi Pico W est sa capacité à se connecter à des appareils compatibles Wi-Fi/Bluetooth à proximité pour envoyer/recevoir des données et instructions.

Nous pouvons créer une méthode similaire à celle ci-dessous pour se connecter à un réseau Wi-Fi à proximité :

Wi-Fi network

Dans l’exemple ci-dessus, la fonction do_connect doit recevoir un SSID et son mot de passe associé pour le réseau Wi-Fi. 

Schéma d’architecture

Comme mentionné précédemment, le Raspberry Pi Pico W peut se connecter à Firebase en utilisant l’API REST. Il est également capable d’interfacer des dispositifs d’E/S tels que des robots, lumières, ampoules ou autres appareils pour l’automatisation résidentielle/industrielle et des capteurs, y compris ceux de température, de bruit, de lumière, de vidéo, de météo, de poids, etc., pour la collecte de données. 

Dans notre solution, nous pouvons réguler des appareils ou collecter des données provenant de capteurs à l’aide du Raspberry Pi Pico W et les gérer au moyen des données de la base de données en temps réel Firebase. 

Wi-Fi network

Wi-Fi network

Wi-Fi network

Dans l’exemple ci-dessus, nous réalisons trois opérations principales : 

  • Connexion au réseau Wi-Fi
  • Authentification de l’utilisateur
  • Interactions (put, patch, get, delete) avec la base de données en temps réel Firebase.

Les détails du réseau Wi-Fi et des authentifications Firebase sont stockés dans le fichier ‘data/firebase.json’.

Capteurs

Un capteur est un dispositif qui produit un signal de sortie en réponse à un phénomène physique. La plupart des capteurs peuvent transmettre les données à des microcontrôleurs polyvalents pour traitement et stockage. Ils peuvent aussi envoyer des données à des systèmes de stockage à distance tels que Firebase, BigQuery et d’autres solutions IdO.

Types courants de capteurs disponibles :

  • Capteurs de particules
  • Capteurs de position
  • Capteurs de pression
  • Capteurs de proximité
  • Capteurs de rayonnement
  • Capteurs photoélectriques
  • Capteurs de température
  • Capteurs de vision et d’imagerie

Le Raspberry Pi Pico W offre de nombreux ports permettant de connecter et de communiquer avec ces capteurs. Ci-dessous, le schéma des broches :

Wi-Fi network

Nous allons utiliser un simple capteur photoélectrique (LDR 5 mm ou résistance dépendante de la lumière) dont la résistance varie selon la lumière reçue.

Nous pouvons créer un circuit comme ci-dessous et connecter notre capteur entre les broches (ADC0, ADC1)

Wi-Fi network

Intégrons maintenant le code du capteur à celui précédent

Wi-Fi network

Wi-Fi network

Dans l’exemple ci-dessus, nous recueillons deux paramètres de capteur pour un appareil :

  • Température
  • Valeur d’éclairement relatif, soit la valeur de résistance de la LDR

De la même façon, on peut connecter plusieurs capteurs au même microcontrôleur et obtenir des valeurs de capteurs, qui peuvent être stockées sur le Firebase de GCP.

Références

Etiquettes
Partager sur
ERS Génie Blogues Raspberry Pi Pico W et GCP Firebase