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 informations entre modules du réseau.
- Effectuer 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 :
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.
- 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
- 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 HTTPGETsuffit. Aucun compte utilisateur ni mot de passe n’est nécessaire : la clé contenue dans le lien sert d’autorisation.
GET https://<appareil>/api/public/variable?scenario_id=<scénario>&variable_name=<variable>&key=<clé_externe>
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.