Implémenter efficacement des applications de suivi des actifs multi-connectivité

Par Jens Wallmann

Les applications avancées de suivi des actifs, telles que la surveillance du bétail, la gestion de flotte et la logistique, capturent automatiquement les informations sur l'état en cours et les coordonnées de position des objets suivis. Un transpondeur intégré relaie les données d'enregistrement vers le cloud et les met à la disposition du centre de contrôle ou d'un dispositif mobile. Dans l'usine, des mises à jour de données sans fil à courte portée sont souvent nécessaires pour échanger des données logistiques, d'historique de processus et de surveillance, modifier les configurations ou effectuer des mises à jour micrologicielles dans la mémoire du transpondeur.

Les développeurs de ces systèmes de suivi des actifs sont confrontés au défi de concevoir un transpondeur de capteur multifonctionnel qui communique via divers protocoles radio à longue et courte portée, collecte un large éventail de données de mesure, fonctionne pendant des mois sans remplacement des batteries et rend toutes les données disponibles via des services Internet. De plus, les concepteurs doivent accomplir ce défi tout en réduisant les coûts et les délais de commercialisation.

Si l'ampleur de la tâche peut être écrasante, les concepteurs peuvent économiser beaucoup de temps et d'énergie en utilisant des kits de développement qui intègrent déjà une grande partie du matériel et des logiciels nécessaires.

Cet article traite des exigences techniques du suivi avancé des actifs dans de multiples applications. Il présente ensuite un kit de développement multifonctionnel de STMicroelectronics qui réduit considérablement les efforts requis pour la conception, le test et l'évaluation des prototypes. Il donne un aperçu des fonctions clés du kit de développement et montre comment les développeurs peuvent facilement personnaliser les fonctions des modules de systèmes sur puce (SoC) combinés sans codage, puis récupérer et visualiser les données depuis le cloud.

Fonctionnalités d'un transpondeur de mesure sans fil

Le suivi des actifs couvre un large éventail de domaines d'application, chacun d'entre eux nécessitant un équipement technique très spécifique pour le transpondeur et le réseau relié. La Figure 1 présente les fonctionnalités techniques d'un transpondeur de mesure sans fil dans quatre catégories d'applications.

Schéma des fonctionnalités d'un transpondeur de mesure sans fil (cliquez pour agrandir)Figure 1 : Les fonctionnalités d'un transpondeur de mesure sans fil dépendent de l'application de suivi des actifs. (Source de l'image : STMicroelectronics)

Un transpondeur autonome transporté avec l'objet doit détecter les influences environnementales, la position et l'état de l'objet (détection, Figure 1), les stocker et les diffuser à la prochaine opportunité via l'une des nombreuses interfaces sans fil (connectivité). Le traitement des signaux et la conversion en différents protocoles sans fil doivent être assurés par un microcontrôleur (MCU) suffisamment puissant et doté d'un haut degré de sécurité des données (traitement et sécurité). Le microcontrôleur contrôle également la gestion de l'énergie (gestion de l'alimentation) et garantit ainsi une longue durée de vie de la batterie du transpondeur.

La disponibilité des données requises pour une application de suivi des actifs influe sur la complexité des capteurs et nécessite une connectivité appropriée. Pour les itinéraires de transport connus et prévisibles, comme la livraison de colis, le simple stockage des signaux de mesure dans le transpondeur est suffisant. Les données peuvent ensuite être lues à courte portée en utilisant Bluetooth Low Energy (BLE) ou la communication en champ proche (NFC) au prochain point de contrôle logistique.

Dans le cas de la gestion de flotte, ainsi que de la logistique et du suivi du bétail sur de longues distances, le transfert des données du transpondeur via le cloud vers l'application d'utilisation finale doit être aussi près que possible du temps réel. Le transpondeur requiert donc une interface radio mobile pour couvrir une large zone. Les options incluent LoRaWAN, Sigfox et NB-IoT, car ces protocoles sont optimisés pour les transferts de données bas débit écoénergétiques.

Un écosystème de suivi des actifs complet pour des efforts de développement réduits

Les concepteurs de systèmes qui souhaitent réaliser leur application de suivi des actifs (ASTRA) de manière rapide et rentable peuvent utiliser la plateforme de développement multifonctionnelle STEVAL-ASTRA1B de STMicroelectronics. La plateforme comprend plusieurs circuits intégrés et modules SoC, simplifiant considérablement le prototypage, la programmation, les tests et l'évaluation de solutions de suivi et de surveillance innovantes. Le kit de développement inclut une carte d'évaluation modulaire, des bibliothèques de micrologiciels, des outils de programmation et une documentation sur les circuits, ainsi qu'une application pour les dispositifs mobiles et une interface de visualisation Web (Figure 2).

Image de l'écosystème de suivi des actifs prêt à l'emploi (cliquez pour agrandir)Figure 2 : L'écosystème de suivi des actifs prêt à l'emploi s'étend du transpondeur de mesure sans fil au cloud et à l'application finale, réduisant les efforts de développement. (Source de l'image : STMicroelectronics)

La carte STEVAL-ASTRA1B est basée sur deux modules SoC basse consommation pour la connectivité à courte et à longue portée, et avec NFC. Un module pour les fonctions de sécurité des données est inclus sur la carte. La carte porteuse comporte plusieurs capteurs environnementaux et de mouvement, ainsi qu'un module GNSS (système global de navigation par satellite) qui fournit des coordonnées de position et permet le géorepérage. Un système de gestion de l'alimentation régule le mode de fonctionnement de tous les composants du dispositif et contrôle l'alimentation. L'alimentation se compose d'un convertisseur à découpage, d'une batterie et d'un contrôleur de charge USB-C pour étendre au maximum l'autonomie de la batterie. À la livraison, le kit inclut une batterie lithium-polymère (Li-Poly) de 480 milliampères-heure (mAh), un boîtier, une antenne SMA (LoRa) et une antenne NFC.

Les circuits intégrés et les SoC de la carte STEVAL-ASTRA1B incluent :

  • Deux SoC sans fil :
    • STM32WB5MMGH6TR : ce module SoC basé sur un microcontrôleur Arm® Cortex®-M4/M0+ de 2,4 gigahertz (GHz) sans fil ultrabasse consommation sert de processeur d'application principal et prend en charge 802.15.4, BLE 5.0, Thread et Zigbee
    • STM32WL55JCI6 : ce SoC sans fil est basé sur un microcontrôleur Arm Cortex-M0+ ultrabasse consommation et prend en charge LoRa, Sigfox et GFSK à une fréquence inférieure à 1 gigahertz (GHz) [150 - 960 mégahertz (MHz)]
  • ST25DV64K-JFR8D3 : émetteur NFC
  • TESEO-LIV3F : module GNSS avec multi-constellation simultanée
  • Capteurs de mouvement et environnementaux :
    • STTS22HTR : capteur de température numérique, -40°C à +125°C
    • LPS22HHTR : capteur de pression, 26 kilopascals (kPa) à 126 kPa, absolu
    • HTS221TR : capteur d'humidité et de température, 0 % à 100 % d'humidité relative (HR), I²C, SPI, ±4,5 % HR
    • LIS2DTW12TR : accéléromètre, axes X, Y, Z ; ±2 g, 4 g, 8 g, 16 g, 0,8 Hertz (Hz) à 800 Hz
    • LSM6DSO32XTR : accéléromètre, gyroscope, capteur de température, I²C, sortie SPI
  • STSAFE-A110 : élément de sécurité
  • Solution alimentée par batterie avec une architecture de gestion de l'alimentation intelligente :
    • ST1PS02BQTR : circuit intégré de régulateur à découpage abaisseur ; positif ajustable, 1,8 volt (V), 1 sortie, 400 milliampères (mA)
    • STBC03JR : circuit intégré de chargeur batterie pour batteries lithium-ion (Li-ion) ou Li-Poly
    • TCPP01-M12 : USB Type-C et protection de distribution d'alimentation

La carte d'évaluation fonctionne à des températures de +5°C à +35°C et utilise les bandes de fréquences suivantes :

  • BLE : 2400 MHz à 2480 MHz, +6 décibels référencés à un milliwatt (mW) (dBm)
  • LoRaWAN : 863 MHz à 870 MHz, +14 dBm (limité par le micrologiciel)
  • GNSS (récepteur) : 1559 MHz à 1610 MHz
  • NFC : 13,56 MHz

Structure interne du STEVAL-ASTRA1B

Le transpondeur ASTRA se comporte comme un enregistreur de données et divise son flux de données en trois blocs principaux, chacun composé de pilotes matériels et logiciels, et de la couche application (Figure 3). L'entrée de données (Figure 3, à gauche) capture tous les signaux des capteurs embarqués. Le bloc central (Figure 3, au centre) traite et stocke les données. Enfin, les données stockées sont diffusées sans fil (Figure 3, à droite). Dans le cas d'une reconfiguration, d'une mise à jour micrologicielle ou de l'écriture de données de processus/logistique, le flux de signaux va dans la direction opposée.

Image du flux de données du transpondeur de mesure sans filFigure 3 : Flux de données du transpondeur de mesure sans fil : les signaux des capteurs (à gauche) sont traités, stockés (au centre), puis envoyés (à droite) lorsque cela est possible. (Source de l'image : STMicroelectronics)

Le micrologiciel FP-ATR-ASTRA1 étend l'environnement de développement STM32Cube de STMicroelectronics et implémente une application complète de suivi des actifs qui prend en charge la connectivité longue portée (LoRaWAN, Sigfox) et courte portée (BLE, NFC). Le pack fonctionnel lit les données des capteurs environnementaux et de mouvement, récupère le géopositionnement GNSS, et envoie le tout à un dispositif mobile via BLE, et en parallèle au cloud via la connectivité LoRaWAN.

Le pack FP-ATR-ASTRA1 prend en charge les profils basse consommation afin de garantir une longue durée de vie des batteries pour une autonomie maximum. Il offre également des fonctionnalités clés telles que la gestion d'éléments sécurisés, la possibilité d'ajouter des algorithmes personnalisés, des interfaces de débogage et des capacités d'extension.

Le pack logiciel est divisé en documentation, pilotes et HAL, intergiciels, et projets d'exemple. Les projets incluent le code source et les binaires compilés pour les environnements de développement intégrés (IDE) Keil, IAR et STM32Cube. Les cinq cas d'utilisation prédéfinis suivants sont configurables individuellement : gestion de flotte, suivi du bétail, suivi des marchandises, logistique et personnalisé.

Le STEVAL-ASTRA1B fonctionne comme une simple machine à états qui change son mode de fonctionnement en fonction des événements. Les deux états principaux sont conçus pour le plein fonctionnement (Run) ou la basse consommation (LP). En mode Run, toutes les fonctions sont actives, et toutes les données sont diffusées selon la configuration. Dans l'état LP, tous les composants, à l'exception du microcontrôleur, sont placés en mode basse consommation ou désactivés (Figure 4).

Schéma des deux principaux modes de fonctionnement du STEVAL-ASTRA1B de STMicroelectronicsFigure 4 : Les deux principaux modes de fonctionnement du STEVAL-ASTRA1B sont le plein fonctionnement (Run) ou la basse consommation (LP). (Source de l'image : STMicroelectronics)

Le fait d'appuyer sur la touche latérale déclenche la transition entre les deux états. Une autre entrée peut être la sortie d'un événement MEMS (microsystèmes électromécaniques) ou le résultat d'un algorithme. Il ne s'agit que d'un exemple de la manière dont une machine à états peut être mise en œuvre pour modifier le comportement du dispositif. Plusieurs états intermédiaires peuvent également être implémentés pour équilibrer la réactivité du système et l'autonomie de la batterie.

Les événements possibles sont :

  • BP : événement de bouton enfoncé
  • SD : événement d'arrêt
  • ER : événement d'erreur
  • EP : transition automatique à l'étape suivante
  • RN : passage à la commande de plein fonctionnement
  • LP : passage à la commande basse consommation

Récupérer et visualiser les données cloud

Le transpondeur STEVAL-ASTRA1B est doté du pack micrologiciel FP-ATR-ASTRA1 pré-installé, de sorte que les signaux de mesure environnementaux et les données de position GNSS peuvent être visualisés en quelques minutes.

En utilisant l'application mobile STAssetTracking pour smartphones et tablettes, avec Bluetooth activé et connexion Internet, le transpondeur est enregistré sur le serveur réseau TTN (The Things Network) V3 en tant que participant LoRaWAN via le compte utilisateur myst.com. Il est également lié au tableau de bord Web DSH-ASSETRACKING sur Amazon Web Services (AWS).

Après l'enregistrement TTN, le STEVAL-ASTRA1B apparaît dans la liste actualisée des dispositifs de l'application mobile. Cliquer sur le bouton "Start synchronization" dans le menu <Settings> active le mode de transmission du transpondeur pour l'envoi des données stockées via BLE et LoRaWAN en parallèle. L'application mobile peut afficher les données de mesure depuis la mémoire sur un tableau de bord et fournir la position GNSS du transpondeur ou l'afficher comme marqueur sur une carte (Figure 5).

Image de l'application mobile permettant d'enregistrer le transpondeur au TTN (cliquez pour agrandir)Figure 5 : L'application mobile permet d'enregistrer le transpondeur au TTN et de le relier au tableau de bord cloud ; elle affiche les valeurs des capteurs enregistrés et facilite la configuration et le débogage. (Source de l'image : STMicroelectronics)

Outre le transpondeur ASTRA, le tableau de bord Web peut regrouper dans le cloud de nombreux autres dispositifs de suivi sans fil autonomes tels que le P-L496G-CELL02 (LTE) et le NUCLEO-S2868A2 (émetteur RF Sigfox), ou des nœuds couplés à Internet tels que le STEVAL-SMARTAG1 (Wi-Fi), le STEVAL-MKSBOX1V1 (nœud d'extrémité BLE) et le STEVAL-SMARTAG1 (nœud d'extrémité NFC). Cela permet le développement d'un écosystème sans fil multiprotocole basé sur le cloud.

Configuration et programmation individuelles

Une fois que les paramètres d'usine du transpondeur ASTRA ont été évalués avec succès lors de la mise en service initiale, l'étape suivante pour le développeur consiste à personnaliser le transpondeur pour sa propre application de suivi des actifs.

Pour des travaux de personnalisation mineurs sans matériel supplémentaire, il peut être suffisant de configurer les différents paramètres et fonctions via BLE et l'application mobile (appuyez sur l'icône « marteau et clé » dans l'application mobile, Figure 5).

Une autre façon de configurer le projet est d'utiliser une ligne de commande et une console de débogage. Alors qu'un programme de terminal PC (par exemple, Tera Term) communique via USB par l'intermédiaire d'un port COM virtuel, le dispositif mobile utilise l'application STBLESensor (capteur BLE de ST) et établit des réseaux via BLE (Figure 6).

Image de la ligne de commande et de la console de débogage sur un PC (à gauche) et sur un dispositif mobile (à droite) (cliquez pour agrandir)Figure 6 : Ligne de commande et console de débogage sur un PC (à gauche) et sur un dispositif mobile (à droite). (Source de l'image : STMicroelectronics)

Pour reprogrammer la carte ASTRA, comme pour la mise à jour micrologicielle, l'intégration d'autres fonctions de bibliothèque ou la génération d'un code d'application propre au développeur, l'accès via l'interface JTAG est pratique. À cette fin, l'adaptateur de débogage et de programmation STLINK-V3MINIE, disponible séparément, est connecté à la carte ASTRA via un câble plat à 14 broches. Un environnement IDE tel que Keil, IAR ou STM32Cube installé sur un PC peut alors écrire des fichiers binaires compilés dans la mémoire du programme d'application ou déboguer des séquences de programme.

Le STLINK-V3MINI fournit également une interface de port COM virtuel qui permet au PC hôte de communiquer avec le microcontrôleur cible via UART.

Il existe plusieurs façons de mettre à jour les micrologiciels pour les différents microcontrôleurs Arm :

  • Le programmateur STM32Cube sur un PC écrit le fichier binaire en mémoire Flash en utilisant un adaptateur JTAG et un chargeur d'amorçage de microcontrôleur
  • Le programmateur STM32Cube sur un PC écrit le fichier binaire en mémoire Flash en utilisant USB et un chargeur d'amorçage de microcontrôleur
  • La mise à niveau du micrologiciel en direct (FUOTA) s'effectue via BLE à l'aide de l'application STBLESensor sur un dispositif mobile

Comme le contrôleur d'application STM32WL55JC (LoRaWAN) agit comme maître pour le STM32WB5MMG (BLE), le cœur de microcontrôleur respectif à flasher doit être sélectionné via des cavaliers.

Configuration logicielle graphique à l'aide du STM32CubeMX

Le STM32Cube simplifie la vie des développeurs en permettant de réduire les efforts, les délais et les coûts de développement. L'IDE couvre le portefeuille complet de microcontrôleurs STM32. De plus, le STM32CubeMX permet la configuration et la génération de code C à l'aide d'assistants graphiques. Le pack logiciel FP-ATR-ASTRA1 étend les fonctionnalités STM32Cube et peut être installé directement dans l'IDE STM32CubeMX.

La Figure 7 montre le STM32CubeMX : navigation (à gauche et en haut), configuration du pack FP-ATR-ASTRA1 (au centre), et architecture (à droite). Le pack FP-ATR-ASTRA1 propose trois onglets de personnalisation : [Platform Settings], [Parameter Settings] et [ASTRA ENGINE].

Image de la configuration logicielle graphique à l'aide de l'outil STM32CubeMX de STMicroelectronics (cliquez pour agrandir)Figure 7 : Configuration logicielle graphique à l'aide de l'outil STM32CubeMX : navigation (à gauche et en haut), configuration du pack FP-ATR-ASTRA1 (au centre) et architecture (à droite). (Source de l'image : STMicroelectronics)

Une fois tous les paramètres configurés, le code peut être généré à partir du STM32CubeMX en appuyant sur le bouton <Generate Code>. En ouvrant l'IDE souhaité, le code du micrologiciel peut alors être personnalisé, compilé et flashé sur la carte.

Le code source généré présente une architecture modulaire en termes de fonctions et de blocs matériels. La gestion du bloc matériel est identifiée par des définitions spécifiques (USE_GNSS). Les fonctions sont gérées dans différents fichiers, comme l'initialisation du système, la configuration de la machine à états ou la gestion des données.

Malgré la complexité de l'arborescence de fichiers, seuls quelques fichiers sont impliqués dans la configuration de l'application des cas d'utilisation :

  • app_astra.c/.h
    Ce fichier principal est le point d'entrée, et il appelle les fonctions d'initialisation dans MX_Astra_Init() (Liste 1)

Image de la fonction MX_Astra_Init() utilisée pour l'initialisation du systèmeListe 1 : Cette fonction MX_Astra_Init() est utilisée pour l'initialisation du système. (Source de la liste : STMicroelectronics)

  • astra_confmng.c/.h
    Ce gestionnaire de configuration de carte contient les variables sélectionnées par l'utilisateur pour activer/désactiver chaque bloc matériel et l'implémentation et la configuration des cas d'utilisation.
  • astra_datamng.c/.h
    Dans ce fichier, les données recueillies depuis les capteurs et d'autres entrées sont stockées en mémoire RAM. Elles peuvent être manipulées, par exemple pour exécuter un algorithme spécifique sur les données.
  • astra_sysmng.c/.h
    Ici, les fonctions liées au système sont implémentées. Les principales fonctionnalités sont l'interface de ligne de commande, les rappels de boutons, les algorithmes, les LED, la gestion des cas d'utilisation du suivi des actifs et la gestion des temporisateurs.
  • SM_APP.c/.h
    Ces fichiers contiennent les structures de configuration de la machine à états.

Conclusion

Le développement d'une application de suivi des actifs est un processus complexe en plusieurs étapes, mais la plateforme de développement multifonctionnelle STEVAL-ASTRA1B simplifie la tâche. Embarquant tout le matériel et tous les logiciels nécessaires, elle offre un moyen simple et rapide de visualiser les données enregistrées d'un transpondeur sans fil dans l'interface Web ou via l'application de dispositif mobile. Comme illustré, les développeurs peuvent simplement personnaliser cet enregistreur de données sans fil pour leur application de suivi ou de surveillance à l'aide d'outils de configuration flexibles sans programmation de code, ou ils peuvent utiliser le générateur de code automatique.

Avertissement : les opinions, convictions et points de vue exprimés par les divers auteurs et/ou participants au forum sur ce site Web ne reflètent pas nécessairement ceux de DigiKey ni les politiques officielles de la société.

À propos de l'auteur

Jens Wallmann

Jens Wallmann

Jens Wallmann is a freelancing editor and contributes to electronics publications, both print and online. As an electrical engineer (communications engineering) and a trained industrial electronic engineer he has more than 25 years in electronics development with a focus on measuring technology, automotive electronics, process industry and Radio Frequency.