For the complete documentation index, see llms.txt. This page is also available as Markdown.

Data to JSON

Ce bloc de fonction convertit les valeurs d'entrée sélectionnées en une seule chaîne au format JSON lorsque l'enregistrement (logging) est lancé. Utilisez les champs d'en-tête pour nommer chaque entrée de données. Seules les entrées de données connectées sont exportées.

📥 Entrées

  • Start Logging (input socket) — Contrôle quand le bloc collectera et exportera les données. Fournissez un signal booléen pour démarrer le processus d'export.

  • Data_1 ... Data_10 (input sockets) — Entrées de données génériques pouvant accepter des nombres, du texte, des listes ou d'autres valeurs. Seules les entrées connectées sont incluses dans le JSON exporté.

📤 Sorties

  • JSON Data (output socket) — Une chaîne JSON contenant les paires clé/valeur actuellement exportées. Lorsque Start Logging n'est pas actif, cette sortie reste vide/None.

🕹️ Contrôles

  • Data_1 Header à Data_10 Header — Champs de texte où vous pouvez saisir des noms lisibles par l'utilisateur pour chaque entrée de données correspondante.

    • Laissez un champ d'en-tête vide pour utiliser l'étiquette par défaut Data_X pour cette entrée.

    • Seules les entrées connectées seront présentes dans le JSON résultant ; les champs d'en-tête non utilisés sont ignorés.

  • Set Data Headers (UI note) — Étiquette informative dans l'interface rappelant que les champs d'en-tête vides seront ignorés.

🎯 Fonctionnalités

  • Exporte plusieurs entrées génériques dans un seul objet JSON.

  • Permet de définir des clés lisibles via les contrôles d'en-tête, ou de revenir aux clés par défaut Data_X.

  • Inclut automatiquement uniquement les entrées réellement connectées au moment de l'enregistrement.

  • Produit une seule chaîne JSON adaptée pour l'enregistrement, l'envoi via REST/MQTT ou la sauvegarde dans des fichiers.

⚙️ Mécanisme d'exécution

  • Le bloc surveille l'entrée Start Logging. Lorsque cette entrée devient vraie, il :

    • Lit les textes des en-têtes depuis les dix champs d'en-tête.

    • Récupère les valeurs de toutes les entrées connectées Data_1Data_10.

    • Associe les entrées connectées aux en-têtes correspondants (ou aux étiquettes par défaut Data_X).

    • Construit un objet JSON mappant les en-têtes à leurs valeurs et renvoie cet objet sous forme de chaîne JSON sur la sortie JSON Data.

  • Si aucun déclencheur d'enregistrement n'est fourni, le bloc ne produit aucune sortie JSON.

  • Si le nombre d'en-têtes et le nombre d'entrées connectées ne correspondent pas, le bloc affiche un message d'erreur dans l'UI — assurez-vous que vos en-têtes correspondent aux données que vous souhaitez exporter.

📝 Instructions d'utilisation

  1. Remplissez les champs d'en-tête Data_1 HeaderData_10 Header avec des noms significatifs pour les données que vous prévoyez d'exporter, ou laissez-les vides pour utiliser les valeurs par défaut.

  2. Branchez les sources que vous souhaitez exporter dans les prises d'entrée correspondantes Data_X.

  3. Envoyez un signal TRUE à Start Logging pour produire la chaîne JSON sur la sortie JSON Data.

  4. Exploitez la sortie JSON Data avec des blocs d'export (écriture de fichier, REST publisher, MQTT, etc.) ou affichez-la dans l'interface.

💡 Astuces

  • Combinez avec des blocs de mesure et de détection pour créer des logs structurés :

    • Utilisez les sorties de Object Detection ou Object Detection - Custom comme entrées pour créer des résumés JSON des objets détectés.

    • Alimentez les coordonnées de pose ou de squelette de Pose Estimation ou Skeleton Estimation pour exporter des données de posture humaine.

    • Employez les résultats de Find Object, Histogram On Line ou Measure Position Distance pour les analyses et incluez-les dans les logs JSON.

    • Envoyez les sorties OCR de OCR ou OCR (EasyOCR) dans ce bloc pour exporter le texte reconnu avec des horodatages.

  • Pour stockage persistant ou enregistrement continu :

    • Dirigez la sortie JSON Data vers CSV Export, Image Logger (pour les métadonnées liées aux images), ou vers un bloc REST/MQTT (par ex. REST API - Post ou MQTT Publish) pour envoyer les données vers un serveur ou une base.

  • Exporter sélectivement uniquement les valeurs connectées :

    • Vous n'avez pas besoin de remplir tous les en-têtes. Seules les prises Data_X connectées sont incluses, vous pouvez donc ne câbler que les signaux nécessaires.

🛠️ Dépannage

  • Si aucun JSON n'apparaît alors que vous l'attendez :

    • Vérifiez que Start Logging reçoit la valeur TRUE.

    • Assurez-vous qu'au moins une entrée Data_X est connectée.

  • Si les noms de champs ne correspondent pas aux clés exportées :

    • Vérifiez que le champ de texte Data_X Header correspondant est rempli. Les champs d'en-tête vides retombent sur les clés par défaut Data_X.

  • Si une erreur indique un nombre d'éléments non concordant :

    • Confirmez que le nombre d'entrées connectées correspond aux en-têtes que vous prévoyez d'utiliser, ou nommez explicitement les en-têtes uniquement pour les entrées réellement connectées.

  • Pour transmettre le JSON vers un système externe :

    • Utilisez ensuite des blocs tels que REST API - Post, MQTT Publish ou des blocs de base de données comme SQL-DB Operations pour livrer ou stocker la charge utile JSON.

Mis à jour