Variables Les variables permettent aux scénarios, aux widgets et aux systèmes externes d'interagir avec le module. Elles se répartissent en deux catégories : les variables d'état, qui reflètent l'état d'un équipement ou d'une fonction, et les variables d'action, qui permettent de commander ou de modifier cet état.Une utilisation appropriée de ces variables facilite la création de scénarios, le pilotage de l'installation et son intégration avec des systèmes tiers. Gestion des variables Rappel sur les variables Une variable est une zone mémoire contenant une  valeur susceptible d’évoluer au cours du temps (températures, états des relais, consignes, compteurs ...) Les variables sont des  éléments essentiels pour le fonctionnement des scénarios, elles permettent de stocker, échanger et exploiter les informations par le module local ou être diffusées sur le réseau pour être partagées avec d'autres modules. Les variables peuvent être :  Lues → utilisées dans des blocs de test pour prendre des décisions Modifiées → via des blocs d’action Comparées → pour orienter le déroulement Les variables sont utilisées pour : mémoriser des valeurs ou l'état d'un appareil réaliser des tests et des conditions   déclencher des actions ; échanger des information s entre modules du réseau. E ffectuer des calculs simples Gérer des temporisations et des compteurs Les variables peuvent être : - préconfigurées et disponibles immédiatement sur un module - créées par l'utilisateur selon les besoins du scénario  - utilisées localement, partagées entre les modules d'un réseau ou exposées vers les systèmes tiers Bonnes pratiques : une variable bien définie et correctement documentée sera plus facile à comprendre, à configurer et à utiliser - Définir le besoin : déterminer précisément ce que la variable doit mesurer, représenter ou contrôler dans le scénario -  Vérifier les variables préconfigurées : identifier celles qui sont déjà disponibles afin d’éviter de créer des doublons - Choisir un nom explicite : utiliser une appellation qui reflète clairement la fonction de la variable et facilite son identification dans les scénarios - Vérifier le type de variable : s’assurer qu’il est compatible avec les actions et les scénarios prévus (numérique, booléen, texte, etc.) - Définir une valeur initiale : attribuer une valeur à la variable avant de l’utiliser - Préciser son rôle : renseigner un commentaire décrivant sa fonction afin de faciliter la compréhension et la maintenance de la configuration 1- Afficher les variables Pour afficher les variables d'un module : allez dans le menu " I/O " puis sélectionner le mode " Local " Les variables disponibles sur le module s'affichent alors 2- Créer une nouvelle variable Certaines variables sont préconfigurées sur le module et peuvent être utilisées immédiatement dans les scénarios. Elles couvrent les besoins les plus courants et ne nécessitent aucune configuration préalable. Toutefois, pour répondre à des besoins fonctionnels spécifiques ou mettre en œuvre des logiques d'automatisation plus avancées, il peut être nécessaire de créer des variables supplémentaires . Ces variables personnalisées permettent d'adapter précisément le fonctionnement des scénarios aux exigences de l'installation. Aller dans le menu « I/O » Cliquer sur le bouton " +Ajouter " Compléter les informations pour la création de la nouvelle variable La variable créée apparaitra à la suite des variables déjà configurées. Le nombre de variables maximal est limité à 32. Une variable peut être utilisée simultanément dans plusieurs scénarios.  2.1- Paramétrer une variable Sélectionner la variable que vous souhaitez configurer et cliquer sur  l’icône pinceau. Renseignez ensuite les informations de la variable dans la fenêtre qui s'ouvre le nom il est recommandé d'utiliser un nom explicite afin d’identifier clairement la variable dans les scénarios et la supervision Choisissez soigneusement le nom des variables lors de leur création. Si une variable est renommée par la suite, son nouveau nom ne sera pas automatiquement mis à jour dans les scénarios et les widgets qui l'utilisent et il faudra nécessairement la remplacer manuellement la valeur par défaut Valeur appliquée à la variable lors du démarrage du module ou après un redémarrage. Ce paramètre permet de garantir un état de fonctionnement sûr au lancement. l’unité et le type d’unité Précise l’unité de mesure associée à la variable (par exemple : température et degrés celcius). Important pour la cohérence des scénarios et l’affichage correct dans la supervision le type de variable Home Assistant Ce paramètre est essentiel pour assurer la bonne communication et l’interopérabilité avec les plateformes domotiques les droits d’accès Ils permettent de définir comment la variable peut être utilisée : - lecture seule : elle peut être consultée mais non modifiée - écriture seule : elle peut être modifiée sans possibilité de lecture - lecture et écriture : elle peut être à la fois consultée et modifiée Ce paramétrage garantit un contrôle sécurisé de l’utilisation des variables dans les scénarios et les interfaces externes un commentaire, descriptif personnalisé Champ libre permettant de saisir tout type de remarque ou d'information complémentaire pour documenter l’usage spécifique ou les particularités de la variable les options d'exposition et de diffusion sur le réseau Permettent de définir la visibilité des variables sur d'autres interfaces, avec d'autres protocoles Facilitent l’intégration avec des systèmes tiers et le pilotage à distance. - Scénario distant Permet l’utilisation de la variable par des scénarios exécutés à distance (supervision ...) -  Home Assistant Expose la variable dans Home Assistant . Exemple : récupération d’un état (alarme, disjoncteur) ou commande d’un équipement depuis Home Assistant - Wireless Autorise l’échange direct avec les modules 2PIO distants -  Modbus Expose la variable via le protocole Modbus ( utilisé en automatisme, GTB) -  Site Web Rend la variable accessible depuis l’interface Web locale ou distante du système -  OPC UA Permet l’intégration avec des superviseurs industriels (SCADA, GTB ...) -  Non sécurisé Permet un accès simplifié à la variable sans mécanisme de sécurité renforcé. À utiliser uniquement dans des environnements maîtrisés Appuyer sur le bouton " Sauvegarder " pour enregistrer les modifications 2.2- Configurer les valeurs d'une variable En cliquant sur le bouton vert (lien) , une fenêtre de configuration s’ouvre et permet de définir les valeurs associées à une variable pour les rendre plus lisibles dans les scénarios. Il est possible d’ajouter autant de lignes que nécessaire afin de détailler les différentes valeurs et leurs significations. Chaque ligne doit comporter : un champ valeur un libellé associé Cette configuration facilite la compréhension et l’interprétation des variables lors de la programmation des scénarios, en associant chaque valeur à une action ou un état clairement identifié. Exemple : Valeur : 1 → Libellé : Allumage Valeur : 2 → Libellé : Extinction 3- Supprimer une variable Utiliser le bouton rouge (corbeille) pour supprimer une variable créée par un utilisateur, sous réserve des droits d’accès octroyés. Les variables préconfigurées nécessaires au fonctionnement du système, ne peuvent pas être supprimées. Variables préconfigurées 2PIO met à disposition un ensemble de variables préconfigurées reflétant l'état des entrées, des sorties ainsi que les différentes mesures et informations internes du module. Disponibles par défaut, elles permettent de créer des scénarios sans avoir à définir ou configurer les variables nécessaires au préalable. Accessibles depuis le menu " I/O" , ces variables peuvent être personnalisées selon les besoins (voir Personnaliser une variable ) Les variables affichant   sont associées aux scénarios préconfigurés et peuvent être supprimées. Les autres sont liées au fonctionnement du module et ne peuvent pas être supprimées. 1- Variables des sorties Elles indiquent l'état des relais (ON / OFF) . Sortie 1 Sortie 2 Utilisation : Vérification de l’état d’un relais Synchronisation de plusieurs sorties Création de logiques dépendantes d’un état de sortie 2- Variables des entrées 12V Elles représentent l’état des entrées basse tension (ON / OFF). Entrée 12V 1 Entrée 12V 2 Utilisation : Détection de contacts secs Lecture de capteurs ou boutons 3- Variables des entrées 220V Ces variables indiquent la présence de tension secteur sur les entrées Entrée 220V 1 Entrée 220V 2 Utilisation : Détection de présence secteur Surveillance d’alimentation Déclenchement de scénarios de sécurité 4- Variables de courant Ces variables mesurent le courant consommé sur les sorties associées. Sortie 1 Sortie 2 Utilisation : Suivi de consommation Détection de surcharge ou sous-consommation Diagnostic de fonctionnement d’un équipement 5- Compteur de boucle Cette variable comptabilise le nombre de passages dans une boucle de scénario . Utilisation : Limitation du nombre de répétitions Suivi d’exécution d’un scénario Sécurisation contre les boucles infinies 6- Disjoncteur Cette variable permet de remonter l’ état du disjoncteur dans les scénarios (état normal, déclenché ou ouvert selon configuration). Elle contribue ainsi à la sécurité globale de l’installation et à la protection des équipements. Utilisation : Détection de coupure d’alimentation et arrêt automatique des équipements Détection de surcharge électrique Mise en sécurité du système Notification d'alerte pour intervention maintenance Blocage du redémarrage automatique tant que le défaut n’est pas acquitté Récapitulatif VARIABLES PRÉCONFIGURÉES Variable Principe Utilisation Bouton télérupteur ⚙️ Mémorise l'état du bouton poussoir (ON / OFF) lié au scénario "télérupteur" Compteur de boucle 🔒 Compte le nombre de passages dans une boucle de scénario Limitation de répétition, contrôle de boucle Courant relais 1 🔒 Indique le courant consommé sur le relais 1 Surveillance de charge, détection de surcharge Courant relais 2 🔒 Indique le courant consommé sur le relais 2 Analyse de consommation, diagnostic Disjoncteur 🔒 Indique l’état du disjoncteur (actif / déclenché) Sécurité, détection de coupure ou surcharge Temporisation télérupteur ON / OFF ⚙️ Applique la temporisation ou non Sortie 1 🔒 Indique l’état de la sortie 1 (ON / OFF) Vérification d’état d’un actionneur Sortie 2 🔒 Indique l’état de la sortie 2 (ON / OFF) Synchronisation et contrôle logique Entrée 220V 1 🔒 Indique la présence de tension sur l’entrée 220V 1 Détection alimentation secteur Entrée 220V 2 🔒 Indique la présence de tension sur l’entrée 220V 2 Surveillance réseau électrique Entrée 12V 1 🔒 Indique l’état de l’entrée 12V 1 Lecture de capteurs ou contacts secs Entrée 12V 2 🔒 Indique l’état de l’entrée 12V 2 Détection d’événements ou commandes externes 🔒 Variable système (non supprimable) ⚙️ Variable de scénario préconfiguré (supprimable si inutilisée) Partager et exposer les variables 1- Réseau de modules Le partage de variables permet aux modules 2PIO d’un même réseau ModLink d’échanger des informations et de coordonner leurs automatismes , sans câblage supplémentaire entre les équipements concernés. Prérequis Le réseau de modules doit avoir été créé au préalable. Les modules concernés doivent être appairés, partager la même clé de chiffrement et être configurés pour se connecter au même réseau Wi-Fi. Pour plus d'information Appairer et créer un réseau de modules Pour partager les variables d'un module avec les autres modules du réseau : Dans le menu "I/O", sélectionner le mode " Distant "  Cliquer sur " ajouter " Ajouter manuellement un module (si vous connaissez son identifiant) dans " nom de l'appareil" saisissez l'identifiant du module vers lequel vous souhaitez partager les variables  2pio_ _ _ _   (4 caractères) Cliquer sur "ajouter l'appareil" pour confirmer votre choix ou bien scanner le réseau pour afficher directement les modules du réseau : cliquez sur " scanner en mDNS " sélectionnez les appareils vers lesquels vous souhaitez partager les variables cliquer sur " importer la sélection " une nouvelle fenêtre "gestion des appareils" s'affiche, cliquez sur " sauvegarder" pour enregistrer la configuration Configuration de l'exposition d'une variable Ouvrez le menu " I/O" Sélectionnez la variable à partager Cliquez sur l'icône " Modifier" (pinceau) pour accéder à sa configuration Cochez les options d'exposition souhaitées : exposition Modbus exposition OPC UA exposition Home Assistant Enregistrez la configuration La variable devient alors accessible via les protocoles et services sélectionnés. Pour plus d'information, vous pouvez consulter Configurer une variable 2- API publique des variables L’API publique des variables permet à un système tiers de lire ou d’écrire certaines variables d'un module. 2.1- Le principe en trois étapes Autoriser la variable coche l’exposition « Non sécurisé » pour la variable concernée. Voir Options d'exposition des variables Récupérer le lien L’interface génère un lien de lecture ou d’écriture. Ce lien contient déjà la clé externe de la carte, lorsque le compte connecté est autorisé à la consulter. Appeler le lien depuis le système externe Une requête HTTP  GET suffit. Aucun compte utilisateur ni mot de passe n’est nécessaire : la clé contenue dans le lien sert d’autorisation. GET https:///api/public/variable?scenario_id=&variable_name=&key= 2.2- Ce que l’utilisateur contrôle Les variables accessibles : seules celles qui sont marquées « Non sécurisé » Les personnes ou systèmes autorisés : seuls ceux qui disposent de la clé externe La durée d’accès : la régénération de la clé externe révoque immédiatement tous les liens déjà communiqués 2.3- Ce que l’API publique ne permet pas Elle ne donne pas accès aux variables qui n’ont pas été autorisées. La carte répond alors avec le code HTTP 403 . Elle ne permet pas de modifier la configuration, les scénarios, le réseau ou les utilisateurs de la carte. Une variable en lecture seule ne peut pas être écrite, même si elle est exposée. Une variable dont la valeur provient d’une autre carte ne peut pas être écrite depuis la carte qui la reçoit. L’écriture doit être effectuée sur la carte qui possède cette variable. 2.4- Quelle API utiliser selon le besoin ? Usage Route Authentification Systèmes externes (présente documentation) /api/public/variable Clé externe Home Assistant (appairage intégré) /api/ha/* Clé externe Communication entre cartes 2PIO /api/v2/* , /subscribe/* Réservée aux cartes ; la clé externe est refusée Interface Web de la carte Toutes les autres routes Session utilisateur Seules les routes publiques et celles de Home Assistant sont destinées aux systèmes externes. Les autres routes sont internes et peuvent évoluer sans préavis. 2.5- Format de l’API L’API publique est volontairement simple : les échanges utilisent des requêtes HTTP GET avec des paramètres dans l’URL, y compris pour l’écriture. Il est ainsi possible d’utiliser directement un lien dans un navigateur, un raccourci ou un bouton d’automatisation.