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

Serial Read

Cette fonction lit la dernière ligne disponible d'une connexion série (sans bloquer) et la convertit dans un type de donnée choisi. Elle est conçue pour être robuste face aux entrées obsolètes ou mal formées en renvoyant une valeur par défaut définie par l'utilisateur lorsque nécessaire.

📥 Entrées

  • Enable Entrée booléenne qui active ou désactive la lecture.

  • ConnId Entrée générique qui sélectionne la connexion série à lire (identifiant de connexion).

📤 Sorties

  • Data Sortie générique qui émet la dernière valeur convertie (ou la valeur par défaut lorsque les données sont obsolètes ou la conversion a échoué).

🕹️ Contrôles

  • Stale timeout (s) Champ texte pour définir combien de temps attendre une nouvelle ligne avant de considérer la lecture comme obsolète.

  • Data Type Menu déroulant pour choisir le type de conversion des lignes entrantes. Options disponibles : String, Int, Float, Boolean, HexInt, Bytes.

  • Default (on stale/parse fail) Champ texte fournissant la valeur de secours renvoyée lorsqu'il n'y a pas de données fraîches ou que la conversion échoue. Pour Bytes, saisir des caractères hexadécimaux (ex. AA55).

🎯 Fonctionnalités

  • Lecture non bloquante de la dernière ligne disponible.

  • Détection des données obsolètes pour éviter de propager des valeurs anciennes indéfiniment.

  • Plusieurs types de conversion avec une valeur de secours configurable.

  • Entrées et sorties simples pour s'intégrer facilement dans des scénarios plus larges.

📝 Utilisation

  1. Fournissez un identifiant de connexion à ConnId correspondant à une connexion série active.

  2. Utilisez Enable pour démarrer ou arrêter la lecture sans retirer le bloc.

  3. Réglez Stale timeout (s) pour définir la durée pendant laquelle les données sont considérées comme fraîches.

  4. Choisissez le Data Type souhaité pour convertir les lignes entrantes.

  5. Définissez Default (on stale/parse fail) pour contrôler la sortie lorsque les données sont absentes ou non convertibles.

  6. Utilisez la sortie Data dans des blocs suivants pour journalisation, affichage ou publication.

📊 Évaluation

  • Lorsque le bloc est activé, il tente de lire la dernière ligne de la connexion sélectionnée.

  • Si aucune nouvelle ligne n'arrive dans le délai défini par Stale timeout (s), le bloc émet la valeur par défaut configurée.

  • Si la conversion vers le type choisi échoue, le bloc émet la valeur par défaut configurée.

  • Pour le type Bytes, le bloc interprète la valeur par défaut comme du texte hexadécimal.

💡 Astuces

  • Utilisez Debug Input pour enregistrer ou inspecter les résultats bruts pendant le développement.

  • Transférez les lectures série vers Data to JSON ou CSV Export pour un journal structuré ou une exportation par lots.

  • Publiez les valeurs traitées avec MQTT Publish ou envoyez-les à un service web via REST API - Post.

  • Stockez les valeurs pour une utilisation ultérieure avec Data Write Local ou Data Write Global et récupérez-les avec les blocs de lecture correspondants.

  • Tracez des données numériques en temps réel avec Scope pour observer des tendances ou anomalies.

  • Combinez avec Logic Input ou des blocs de comparaison pour déclencher des actions en fonction des valeurs entrantes (par exemple, alarme lorsqu'une valeur dépasse un seuil).

🛠️ Dépannage

  • Si aucune donnée n'apparaît sur Data, vérifiez que le ConnId fourni correspond à une connexion active.

  • Si la sortie est toujours la valeur par défaut, augmentez Stale timeout (s) ou assurez-vous que la source envoie effectivement des lignes.

  • Si la conversion échoue pour un type numérique ou booléen, vérifiez le format texte brut renvoyé par l'appareil et ajustez la valeur par défaut en conséquence.

  • Pour le type Bytes, assurez-vous que la valeur par défaut est fournie en caractères hexadécimaux valides (sans espaces ni caractères non hexadécimaux).

Mis à jour