# 2 PIO

**Automate programmable connecté autonome IIoT**

**4 entrées / 2 sorties**

# Présentation

Pilotage, supervision, redémarrage à distance

# Description fonctionnelle

> <span style="font-size: 9.0pt; mso-bidi-font-size: 11.0pt; font-family: 'Arial',sans-serif; mso-fareast-font-family: 'Times New Roman'; color: black; mso-fareast-language: FR;"><span style="color: rgb(35, 111, 161);">**Modlink est un IoT professionnel interactif et autonome entièrement configurable et sans serveur central (cloud)**</span>  
> </span>

<span style="color: rgb(68, 68, 68);">ModLink 2PIO est une **solution d’automatisation connectée** compacte avec serveur Web intégré.  
L'accès aux fonctions de configuration, de supervision et de commande se fait depuis un simple navigateur Internet sans nécessiter d'application dédiée ni de matériel supplémentaire.  
Dispositif **polyvalent**, ModLink peut fonctionner de manière **autonome** ou au sein d'un **réseau interactif** de modules.</span>

<p class="callout success">ModLink représente une alternative simple et économique aux automates programmables industriels (API / PLC) pour des applications "light" d'automatisation, de supervision et d'efficience énergétique.</p>

### 1- Programmation

<span style="color: rgb(68, 68, 68);">ModLink utilise une approche graphique basée sur des **scénarios**, sans programmation de type "automate programmable".  
</span><span style="color: rgb(68, 68, 68);">Les automatismes sont créés en assemblant des **blocs fonctionnels** représentant des *tests*, des *conditions*, des *actions*, des *temporisations* ou encore des *notifications*. Cette méthode simplifie la conception, la maintenance et l'évolution des applications tout en conservant une grande souplesse de fonctionnement.</span>

<span style="color: rgb(68, 68, 68);">Les scénarios s'exécutent **en boucle de manière continue** afin d'analyser les événements, les entrées, les sorties et les variables du système.   
Ils utilisent des **variables internes ou externes, partagées** entre plusieurs scénarios et même entre plusieurs modules.</span>

<span style="color: rgb(68, 68, 68);">Chaque ModLink peut gérer jusqu'à **3 scénarios indépendants**, exécutés de façon autonome et pouvant être activés ou désactivés individuellement selon les besoins de l'application.</span>

<p class="callout success">Tel un agent de sécurité qui effectue des rondes, le scénario surveille en permanence différents points de contrôle dans un ordre défini :  
- les entrées (voyants, ouvrants, environnement ...)  
- les sorties (interrupteur, vanne, alerte ...)  
- les variables (rapports des agents précédents)  
Une fois l’ensemble des vérifications effectué, le cycle se répète en permanence</p>

### 2- Fonctionnement autonome

<span style="color: rgb(68, 68, 68);">Grâce à son serveur Web intégré, ModLink est accessible en **local ou à distance** depuis n'importe quel ordinateur, tablette ou Smartphone équipé d'un navigateur Internet. Aucun logiciel spécifique n'est nécessaire pour accéder à la configuration ou à la programmation du module.</span>

<span style="color: rgb(68, 68, 68);">ModLink fonctionne **sans abonnement ni serveur central (cloud)**. Les échanges avec les autres équipements s'effectuent directement entre appareils, sans intermédiaire, ce qui réduit les dépendances externes et améliore la fiabilité ainsi que la robustesse du système.</span>  
<span style="color: rgb(68, 68, 68);">Cette architecture garantit la continuité de fonctionnement des automatismes, même en cas d'indisponibilité d'un service distant ou d'une connexion Internet.</span>

<p class="callout info">Chaque module peut exécuter sa logique **localement** et **interagir** de manière transparente avec d’autres modules du même réseau</p>

### **<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri;"><span style="color: rgb(34, 34, 34); font-family: 'Noto Sans', sans-serif; font-size: 2.333em; font-weight: 400;">3- Communication</span></span>**

ModLink dispose de fonctions de communication avancées facilitant son intégration dans les infrastructures existantes et l'accès à distance.

La communication réseau repose sur les **protocoles TCP/IP via Wi-Fi**. L'intégration au réseau est simplifiée grâce au **DHCP** pour l'attribution automatique des adresses IP et au **mDNS** permettant la découverte automatique des équipements.

Pour l'accès distant, ModLink intègre un **tunnel SSH sécurisé** permettant d'accéder au module sans configuration complexe du réseau ni redirection de ports sur le routeur.

Le serveur **OPC UA** intégré assure une compatibilité native avec les systèmes de GTB/GTC, les plateformes **SCADA** et les logiciels de supervision industrielle, facilitant l'échange de données et l'interopérabilité avec les équipements du marché.

# Description du boîtier

### 1- Etat des voyants

Le dispositif comporte **6 voyants LED** permettant de visualiser l’état du système, des communications et des entrées/sorties.

[![2pio3.jpeg](https://modlink.fr/help/uploads/images/gallery/2026-02/scaled-1680-/2pio3.jpeg)](https://modlink.fr/help/uploads/images/gallery/2026-02/2pio3.jpeg)

#### 1.1- <span style="color: rgb(0, 0, 0);">Voyant "Process information" - S</span><span style="color: rgb(0, 0, 0);">cénario </span>

<div class="TyagGW_tableContainer" id="bkmrk-%C3%89tat-du-voyant-signi"><div class="group TyagGW_tableWrapper flex flex-col-reverse w-fit" tabindex="-1"><table border="1" class="w-fit min-w-(--thread-content-width)" data-end="768" data-start="445" style="width: 109.048%; height: 122.4px; border-collapse: collapse; border-color: rgb(0, 0, 0);"><thead data-end="500" data-start="445"><tr data-end="500" data-start="445" style="height: 29.6px; background-color: rgb(206, 212, 217);"><th class="align-center" data-col-size="sm" data-end="462" data-start="445" style="width: 26.95%; height: 29.6px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">État du voyant</span>**</th><th class="align-center" data-col-size="sm" data-end="478" data-start="462" style="width: 28.3539%; height: 29.6px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Signification</span>**</th><th data-col-size="md" data-end="500" data-start="478" style="width: 44.6961%; height: 29.6px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Action recommandée</span>**</th></tr></thead><tbody data-end="768" data-start="555"><tr data-end="651" data-start="555" style="height: 33.6px;"><td data-col-size="sm" data-end="577" data-start="555" style="width: 26.95%; height: 33.6px; background-color: rgb(45, 194, 107); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">vert</span>**<span style="color: rgb(0, 0, 0);"> clignotant</span>**</td><td data-col-size="sm" data-end="612" data-start="577" style="width: 28.3539%; height: 33.6px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Démarrage</span></td><td data-col-size="md" data-end="651" data-start="612" style="width: 44.6961%; height: 33.6px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Attendre la fin de l’initialisation</span></td></tr><tr><td style="width: 26.95%; background-color: rgb(45, 194, 107); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">vert **fixe**</span></td><td style="width: 28.3539%; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Fonctionnement normal</span></td><td style="width: 44.6961%; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">  
</span></td></tr><tr style="height: 29.6px;"><td style="width: 26.95%; height: 29.6px; background-color: rgb(224, 62, 45); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">rouge **clignotant**</span></td><td style="width: 28.3539%; height: 29.6px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Erreur survenue</span></td><td style="width: 44.6961%; height: 29.6px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Réinitialiser le voyant depuis le menu "Paramètres"</span></td></tr></tbody></table>

</div></div>#### <span style="color: rgb(0, 0, 0);">1.2- Voyant "Wireless mode" - T</span><span style="color: rgb(0, 0, 0);">ransmissions vers les autres modules </span>


<table border="1" class="w-fit min-w-(--thread-content-width)" data-end="768" data-start="445" id="bkmrk-%C3%89tat-du-voyant-signi-1" style="width: 99.881%; height: 118.892px; border-collapse: collapse; border-color: rgb(0, 0, 0);"><thead><tr data-end="500" data-start="445" style="height: 29.7869px; background-color: rgb(206, 212, 217);"><td class="align-center" data-col-size="sm" data-end="462" data-start="445" style="width: 38.0597%; height: 29.7869px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">État du voyant</span>**</td><td class="align-center" data-col-size="sm" data-end="478" data-start="462" style="width: 61.9403%; height: 29.7869px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Signification</span>**</td></tr></thead><tbody data-end="768" data-start="555"><tr style="height: 29.7017px;"><td style="width: 38.0597%; background-color: rgb(53, 152, 219); border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">bleu **fixe**</span></td><td style="width: 61.9403%; border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">Transmissions activées </span></td></tr><tr style="height: 29.7017px;"><td style="width: 38.0597%; background-color: rgb(53, 152, 219); border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">bleu **clignotant**</span></td><td style="width: 61.9403%; border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">mode "appairage"</span></td></tr><tr style="height: 29.7017px;"><td style="width: 38.0597%; background-color: rgb(224, 62, 45); border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">rouge **fixe**</span></td><td style="width: 61.9403%; border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">Transmissions désactivées</span></td></tr></tbody></table>

#### <span style="color: rgb(0, 0, 0);">1.3- Voyant "Wi-Fi mode" - Connectivité</span>  


<table border="1" id="bkmrk-%C3%89tat-du-voyant-signi-2" style="border-collapse: collapse; width: 100%; height: 148.736px; border-width: 1px; border-color: rgb(0, 0, 0);"><colgroup><col style="width: 37.779%;"></col><col style="width: 62.2102%;"></col></colgroup><thead><tr style="background-color: rgb(206, 212, 217); height: 29.7585px;"><td class="align-center" data-col-size="sm" data-end="462" data-start="445" style="width: 18.5234%; height: 29.7585px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">État du voyant</span>**</td><td class="align-center" data-col-size="sm" data-end="478" data-start="462" style="width: 45.98%; height: 29.7585px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Signification</span>**</td></tr></thead><tbody><tr style="height: 29.7585px;"><td style="height: 29.7585px; background-color: rgb(45, 194, 107); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">vert **fixe**</span></td><td style="height: 29.7585px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Connexion Wi-Fi active</span></td></tr><tr style="height: 29.7585px;"><td style="height: 29.7585px; background-color: rgb(45, 194, 107); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">vert **clignotant**</span></td><td style="height: 29.7585px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">mode AP - routeur </span></td></tr><tr style="height: 29.7585px;"><td style="height: 29.7585px; background-color: rgb(185, 106, 217); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">violet **fixe**</span></td><td style="height: 29.7585px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Tunnel SSH actif</span></td></tr><tr style="height: 29.7017px;"><td style="height: 29.7017px; border-color: rgb(0, 0, 0); background-color: rgb(230, 126, 35);"><span style="color: rgb(0, 0, 0);">orange **clignotant**</span>

</td><td style="height: 29.7017px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">Tunnel SSH inactif</span></td></tr><tr><td style="border-color: rgb(0, 0, 0); background-color: rgb(224, 62, 45);"><span style="color: rgb(0, 0, 0);">rouge **fixe**</span>

</td><td style="border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">absence de connexion Wi-Fi</span></td></tr></tbody></table>

#### <span style="color: rgb(0, 0, 0);">1.4- Voyant "Out" - Relais</span>

<table border="1" id="bkmrk-%C3%89tat-du-voyant-signi-3" style="border-collapse: collapse; width: 100%; height: 148.508px; border-width: 1px; border-color: rgb(0, 0, 0);"><colgroup><col style="width: 37.1824%;"></col><col style="width: 62.8176%;"></col></colgroup><thead><tr style="height: 29.7017px; background-color: rgb(206, 212, 217);"><td class="align-center" data-col-size="sm" data-end="462" data-start="445" style="width: 18.5234%; height: 29.7017px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">État du voyant</span>**</td><td class="align-center" data-col-size="sm" data-end="478" data-start="462" style="width: 45.98%; height: 29.7017px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Signification</span>**</td></tr></thead><tbody><tr style="height: 29.7017px;"><td style="border-color: rgb(0, 0, 0); height: 29.7017px;">**<span style="color: rgb(0, 0, 0);">Eteint</span>**</td><td style="border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">contacts 1 et 2 ouverts</span></td></tr><tr style="height: 29.7017px;"><td style="border-color: rgb(0, 0, 0); background-color: rgb(224, 62, 45); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">rouge **fixe**</span></td><td style="border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">contact 1 fermé / contact 2 ouvert</span></td></tr><tr style="height: 29.7017px;"><td style="border-color: rgb(0, 0, 0); background-color: rgb(53, 152, 219); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">bleu **fixe**</span></td><td style="border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">contact 2 fermé / contact 1 ouvert</span>

</td></tr><tr style="height: 29.7017px;"><td style="height: 29.7017px; border-color: rgb(0, 0, 0); background-color: rgb(185, 106, 217);"><span style="color: rgb(0, 0, 0);">violet **fixe**</span></td><td style="height: 29.7017px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">contacts 1 et 2 fermés</span></td></tr></tbody></table>

#### <span style="color: rgb(0, 0, 0);">1.5- Voyant "IN BT" - En</span><span style="color: rgb(0, 0, 0);">trées basse tension 24V </span>

<table border="1" id="bkmrk-%C3%89tat-du-voyant-signi-4" style="border-collapse: collapse; width: 100%; height: 148.508px; border-width: 1px; border-color: rgb(0, 0, 0);"><colgroup><col style="width: 37.183%;"></col><col style="width: 62.817%;"></col></colgroup><thead><tr style="height: 29.7017px; background-color: rgb(206, 212, 217);"><td class="align-center" data-col-size="sm" data-end="462" data-start="445" style="width: 18.5234%; height: 29.7017px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">État du voyant</span>**</td><td class="align-center" data-col-size="sm" data-end="478" data-start="462" style="width: 45.98%; height: 29.7017px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Signification</span>**</td></tr></thead><tbody><tr style="height: 29.7017px;"><td style="height: 29.7017px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">**Eteint**</span>

</td><td style="height: 29.7017px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">entrée 1 et 2 ouvertes</span></td></tr><tr style="height: 29.7017px;"><td style="height: 29.7017px; background-color: rgb(224, 62, 45); border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">rouge **fixe**</span>

</td><td style="height: 29.7017px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">entrée 1 fermée / entrée 2 ouverte</span></td></tr><tr style="height: 29.7017px;"><td style="background-color: rgb(53, 152, 219); border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">bleu **fixe**</span>

</td><td style="border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">entrée 2 fermée / entrée 1 ouverte</span></td></tr><tr style="height: 29.7017px;"><td style="background-color: rgb(185, 106, 217); border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">Violet **fixe**</span>

</td><td style="border-color: rgb(0, 0, 0); height: 29.7017px;"><span style="color: rgb(0, 0, 0);">entrée 1 et 2 fermées</span></td></tr></tbody></table>

#### <span style="color: rgb(0, 0, 0);">1.6- Voyant "IN AC" - E</span><span style="color: rgb(0, 0, 0);">ntrées 220 V</span>

<table border="1" id="bkmrk-%C3%89tat-du-voyant-signi-5" style="border-collapse: collapse; width: 100%; height: 119.188px; border-width: 1px; border-color: rgb(0, 0, 0);"><colgroup><col style="width: 37.5409%;"></col><col style="width: 62.4591%;"></col></colgroup><thead><tr style="background-color: rgb(206, 212, 217); height: 29.7969px;"><td class="align-center" data-col-size="sm" data-end="462" data-start="445" style="width: 18.5234%; height: 29.7969px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">État du voyant</span>**</td><td class="align-center" data-col-size="sm" data-end="478" data-start="462" style="width: 45.98%; height: 29.7969px; border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Signification</span>**</td></tr></thead><tbody><tr><td style="border-color: rgb(0, 0, 0);">**<span style="color: rgb(0, 0, 0);">Eteint</span>**</td><td style="border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">entrées 1 et 2 ouvertes</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px; border-color: rgb(0, 0, 0); background-color: rgb(224, 62, 45);"><span style="color: rgb(0, 0, 0);">rouge **fixe**</span></td><td style="height: 29.7969px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">entrée 1 fermée / entrée 2 ouverte</span></td></tr><tr><td style="border-color: rgb(0, 0, 0); background-color: rgb(53, 152, 219);"><span style="color: rgb(0, 0, 0);">bleu **fixe**</span></td><td style="border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">entrée 2 fermée / entrée 1 ouverte</span></td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px; border-color: rgb(0, 0, 0); background-color: rgb(185, 106, 217);"><span style="color: rgb(0, 0, 0);">violet **fixe**</span></td><td style="height: 29.7969px; border-color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0);">entrée 1 et 2 fermées</span></td></tr></tbody></table>

### 2- Bloc de jonction à insertion

Le bloc de jonction à ressort est composé de 18 bornes réparties sur 2 rangées :

- Rangée du haut : bornes A1 à A9
- Rangée du bas : bornes B1 à B9

Il permet le raccordement rapide et sans vis (insertion directe) des alimentations, entrées, sorties relais et commandes.

[![Borniers.jpg](https://modlink.fr/help/uploads/images/gallery/2026-04/scaled-1680-/borniers.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-04/borniers.jpg)

#### 2.1- Affectation des bornes

<table border="1" id="bkmrk-18%C2%A0-%C2%A0-230-ac-%C2%A0-rla-1" style="border-collapse: collapse; width: 100%; border-width: 1px; height: 283px;"><colgroup><col style="width: 8.5796%;"></col><col style="width: 10.367%;"></col><col style="width: 10.4862%;"></col><col style="width: 10.0095%;"></col><col style="width: 10.9633%;"></col><col style="width: 12.154%;"></col><col style="width: 9.53289%;"></col><col style="width: 14.1802%;"></col><col style="width: 13.4652%;"></col></colgroup><tbody><tr style="background-color: rgb(236, 240, 241);"><td class="align-center" colspan="9"><span style="color: rgb(0, 0, 0);">*rangée haute*</span></td></tr><tr style="height: 29.7017px; background-color: rgb(230, 126, 35);"><td style="height: 29.7017px; border-color: rgb(255, 255, 255); border-style: solid; background-color: rgb(174, 100, 35);">**<span style="color: rgb(255, 255, 255);">A1</span>**

**<span style="color: rgb(0, 0, 0);">Phase</span>**

</td><td style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);">**<span style="color: rgb(255, 255, 255);">A2</span>**

**<span style="color: rgb(0, 0, 0);">Relais 1 COM</span>**

</td><td style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);">**<span style="color: rgb(255, 255, 255);">A3</span>**

**<span style="color: rgb(0, 0, 0);">Relais 1  
NO</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);">**<span style="color: rgb(255, 255, 255);">A4</span>**

**<span style="color: rgb(0, 0, 0);">Relais 2</span>**

**<span style="color: rgb(0, 0, 0);">COM</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);">**<span style="color: rgb(255, 255, 255);">A5</span>**

**<span style="color: rgb(0, 0, 0);">Relais 2</span>**

**<span style="color: rgb(0, 0, 0);">NO</span>**

</td><td class="align-center" style="height: 29.7017px;">**<span style="color: rgb(255, 255, 255);">A6</span>**

**<span style="color: rgb(0, 0, 0);">Entrée 220V</span>**

**<span style="color: rgb(0, 0, 0);">1</span>**

</td><td style="height: 29.7017px; background-color: rgb(126, 140, 141);">**<span style="color: rgb(255, 255, 255);">A7</span>**

**<span style="color: rgb(0, 0, 0);">GND</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);">**<span style="color: rgb(255, 255, 255);">A8</span>**

**<span style="color: rgb(0, 0, 0);">Alim 24V 1</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);">**<span style="color: rgb(255, 255, 255);">A9</span>**

**<span style="color: rgb(0, 0, 0);">Alim 24V 2</span>**

</td></tr><tr style="background-color: rgb(236, 240, 241);"><td class="align-center" colspan="9" style="border-color: rgb(236, 240, 241); border-style: solid;"><span style="color: rgb(0, 0, 0);">*rangée basse*</span></td></tr><tr style="height: 29.7017px; background-color: rgb(230, 126, 35);"><td style="height: 29.7017px; border-color: rgb(255, 255, 255); border-style: solid; background-color: rgb(53, 152, 219);">**<span style="color: rgb(255, 255, 255);">B1</span>**

**<span style="color: rgb(0, 0, 0);">Neutre</span>**

</td><td class="align-center" style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);">**<span style="color: rgb(255, 255, 255);">B2</span>**

**<span style="color: rgb(0, 0, 0);">Relais 1</span>**

**<span style="color: rgb(0, 0, 0);">COM</span>**

</td><td class="align-center" style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);">**<span style="color: rgb(255, 255, 255);">B3</span>**

**<span style="color: rgb(0, 0, 0);">Relais 1</span>**

**<span style="color: rgb(0, 0, 0);">NO</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);">**<span style="color: rgb(255, 255, 255);">B4</span>**

**<span style="color: rgb(0, 0, 0);">R</span><span style="color: rgb(0, 0, 0);">elais 2</span>**

**<span style="color: rgb(0, 0, 0);">COM</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);">**<span style="color: rgb(255, 255, 255);">B5</span>**

**<span style="color: rgb(0, 0, 0);">Relais 2</span>**

**<span style="color: rgb(0, 0, 0);">NO</span>**

</td><td class="align-center" style="height: 29.7017px;">**<span style="color: rgb(255, 255, 255);">B6</span>**

**<span style="color: rgb(0, 0, 0);">Entrée 220V</span>**

**<span style="color: rgb(0, 0, 0);">2</span>**

</td><td style="height: 29.7017px; background-color: rgb(126, 140, 141);">**<span style="color: rgb(255, 255, 255);">B7</span>**

**<span style="color: rgb(0, 0, 0);">GND</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);">**<span style="color: rgb(255, 255, 255);">B8</span>**

**<span style="color: rgb(0, 0, 0);">Entrée BT 1</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);">**<span style="color: rgb(255, 255, 255);">B9</span>**

**<span style="color: rgb(0, 0, 0);">E</span><span style="color: rgb(0, 0, 0);">ntrée BT 2</span>**

</td></tr><tr style="background-color: rgb(22, 145, 121);"><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**230 AC**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 1**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 1**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 2**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 2**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**2 in AC**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**GND**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**in 1 BT**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**in 2 BT**</span>

</td></tr></tbody></table>

- <span style="color: rgb(0, 0, 0);">Vérifier la **correspondance des tensions** avant raccordement (notamment l’entrée 230 V)</span>
- <span style="color: rgb(0, 0, 0);">Respecter les **sections de câbles** adaptées au courant utilisé</span>
- <span style="color: rgb(0, 0, 0);">S’assurer du bon enclenchement des conducteurs dans les bornes à ressort</span>
- <span style="color: rgb(0, 0, 0);">Couper l’alimentation avant toute intervention</span>

Voir [Raccordement électrique](https://modlink.fr/help/link/128#bkmrk-page-title)

### 3- Navigation avec le bouton de commande

<div id="bkmrk--4">  
</div>Chaque module est équipé d'un bouton de commande permettant d'exécuter certaines fonctions directement sur l'appareil, sans passer par l'interface Web.

<span style="background-color: rgb(251, 238, 184);">(photo du bouton)</span>

La navigation s'effectue à l'aide de différents types d'appuis sur le bouton :

- **Appui simple**
- **Double appui**
- **Appui long**

Le tableau ci-dessous récapitule les différentes actions disponibles

<table id="bkmrk-%C3%89tat-action-sur-le-b"><thead><tr><th><span style="color: rgb(52, 73, 94);">État</span></th><th>Action sur le bouton</th><th>Fonction</th><th>LED</th></tr></thead><tbody><tr><td>***hors menu***</td><td>Double appui</td><td>Accès au **menu 1**</td><td>bleu foncé</td></tr><tr><td>**menu 1**</td><td>Appui simple</td><td>Accès au **menu 2**</td><td>jaune</td></tr><tr><td> </td><td>Double appui</td><td>Lance le mode appairage</td><td>bleu clignotant</td></tr><tr><td> </td><td>Appui long</td><td>Transfert de la configuration Wi-Fi (SSID et mot de passe) ainsi que de la clé de cryptage</td><td>  
</td></tr><tr><td>**menu 2**</td><td>Appui simple</td><td>Accès au **menu 3**</td><td>violet</td></tr><tr><td> </td><td>Double appui</td><td>Quitte le mode **Slave/Wireless**</td><td>  
</td></tr><tr><td> </td><td>Appui long</td><td>Redémarre le module</td><td>  
</td></tr><tr><td>**menu 3**</td><td>Appui simple</td><td>Quitte le menu</td><td>bleu clair</td></tr><tr><td> </td><td>Double appui</td><td>Active ou désactive le mode **Wireless**,  
puis quitte le mode **Slave**</td><td>  
</td></tr><tr><td> </td><td>Appui long</td><td>Réinitialisation complète du module  
(configuration usine)</td><td>  
</td></tr></tbody></table>

# Entrées et sorties

### 1- Entrées

- **2 entrées basse tension configurables** :  
    \- ToR  
    \- 4 / 20 mA
- **2 entrées haute tension 220V**

<p class="callout info">Les entrées sont accessibles dans le système sous forme de **variables lisibles** Leur exploitation dépend des **droits** et de l'**exposition**</p>

<p class="callout warning">Les entrées basse tension 4-20 mA peuvent être **configurées en mode analogique** afin d'exploiter une même entrée physique comme deux entrées distinctes (A et B). Cette fonctionnalité permet d'augmenter le nombre d'entrées disponibles sur le module.  
*L'utilisation de ce mode nécessite un **câblage spécifique** au niveau des capteurs [Câblage d'une entrée analogique en mode 2 canaux](https://modlink.fr/help/link/128#bkmrk-entr%C3%A9es-bt-%C3%A0-boucle-)*</p>

### 2- Sorties

<span style="font-size: 10.0pt; mso-bidi-font-size: 12.0pt; font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>**<span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">2 sorties de puissance</span>** :  
\- courant maximal <span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">50 A  
</span>- contacts <span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">libres de potentiel  
<span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">- m</span>esure de courant intégrée  
</span><span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">- commutation au zéro crossing</span> (réduction des contraintes électriques et des perturbations)

<p class="callout info">Les sorties sont commandées par **écriture de variables** La communication est réalisée au **zéro crossing** La **mesure de courant** peut être exploitée dans les scénarios</p>

# Caractéristiques techniques

- **2 entrées 24 V configurables** (analogique / numérique)  
    \- ToR  
    \- 4/20 mA
- **2 entrées universelles numériques 220V**
- **2 sorties ToR 32A**  
    \- contacts libres de potentiel  
    \- mesure de courant intégrée  
    \- commutation au zéro crossing (moins d'arcs, moins de parasites)
- Logique autonome stockée sur l'objet, scénarios en boucle continue
- Pilotage et visualisation via navigateur Web (pas d'application mobile)
- 2 entrées 12/48 V configurables (ToR ou 4-20mA)
- Horloge en temps réel (RTC)
- Planification
- Journalisation
- Notifications par email et SMS
- Redémarrage automatique
- Montage : rail DIN / mural
- Protocoles : HTTP, XML, Modbus TCP/IP, SNMP, SMTP, Services distants
- Communication en peer-to-peer pour un partage des données en temps réél
- Caractéristiques physiques  
    \- température de fonctionnement : -40°C à 65.5°C  
    \- dimensions : ??mm de large,?? mm de hauteur, ?? mm de profondeur- Poids : ??grammes  
    \- matière du boîtier : plastique polycarbonate  
    \- résistance du boîtier à la flamme : UL94 V0
- Alimentation  
    \- voltage :  
    \- courant :
- Relais 1  
    \- voltage max :  
    \- courant max :  
    \- type de contact :  
    \- type de charge :  
    \- résistance du contact :  
    \- fonctionnement : ON / OFF ou impulsionnel  
    \- durée du temporisation d'impulsion :
- Entrée 1  
    \- type : isolation optique  
    \- plage de tension :  
    \- voltage :
- Connectivité   
    \- Communication TCP / IP (Ethernet / WiFi)  
     *installation sans câblage complexe  
    -* Adressage simplifié (DHCP / mDNS)  
     *pour une intégration réseau fluide  
    -* Serveur OPC UA  
     compatibilité immédiate avec les serveurs GTB / GTC et SCADA  
    \- Communication inter-modules sur le même réseau (découverte auto mDNS)  
     v*ariables partagées entre modules sans serveur central  
    -* Accès distant via tunnel SSH sortant (pas de cloud public)  
     *accès sécurisé sans redirection de ports  
    -* Connexions chiffrées  
     *TLS et protections anti-rejeu actives*
- Pas de câblage complexe

# Garantie

Le matériel est garanti 2 ans (pièces et main d'oeuvre)

# Notions clés

**Présentation des concepts fondamentaux nécessaires à la compréhension du fonctionnement du système.**  
**Ces notions sont utilisées dans l’ensemble de la configuration et de l’exploitation.**

# Connectivité et accès au module

ModLink communique avec le réseau local et les autres équipements via une **connexion Wi-Fi**.  
Selon l’architecture de l’installation, le module peut être accessible **en local et/ou à distance**.

### 1- Modes de connexion

Plusieurs modes de connexion peuvent être utilisés :

- **Mode AP avec portail captif**  
    ModLink crée son propre réseau Wi-Fi pour permettre une connexion directe au module, notamment lors de sa configuration initiale
- **Connexion via un routeur Wi-Fi**  
    ModLink se connecte comme client à un réseau Wi-Fi : 
    - le réseau local de l'installation
    - un réseau isolé, dédié aux équipements IoT
- **Connexion via un routeur 4G ou un partage de connexion**  
    ModLink utilise une connexion cellulaire pour accéder à Internet

### 2- Accès au module

Une fois connecté au réseau, le module est accessible depuis un navigateur Web, sans logiciel ni application spécifique.

La connexion s'effectue à l'aide de l'**identifiant du module** composé de **4 caractères alphanumériques**  
Aucune configuration d’adresse IP n’est nécessaire pour accéder au module.

- En local, saisissez dans la barre d'adresse de votre navigateur Web   
    #### **2pio\_ \_ \_ \_.local.fr**
- A distance, tapez dans la barre d'adresse de votre navigateur Web   
    #### **2pio\_ \_ \_ \_.modlink.fr**

<p class="callout info">ModLink ne nécessite pas de **cloud applicatif** pour son fonctionnement. Les données et la logique d’automatisation sont gérées localement par le module.  
L’accès à distance, lorsqu’il est configuré et activé, repose sur une **connexion sécurisée** et ne nécessite pas d’ouverture de port sur le routeur.</p>

# Interface d'administration

L’interface d’administration constitue le point d’accès central aux fonctions de **configuration, de supervision et de maintenance** de l’installation. Elle permet à l’intégrateur de paramétrer les équipements, configurer le WiFi, gérer les variables et concevoir les scénarios d’automatisation.   
L’accès à l’interface se fait directement depuis un navigateur internet - que ce soit sur un ordinateur ou un smartphone - sans nécessiter de télécharger une application dédiée. Pour certaines opérations, comme la conception et la gestion des scénarios, il est toutefois recommandé d’utiliser un ordinateur afin de bénéficier d’une meilleure visibilité et d’un confort d’édition optimal.

La **page d’accueil** se présente sous la forme d’un tableau de bord regroupant des **raccourcis d’accès direct** aux fonctionnalités principales de l’interface. Ces raccourcis permettent de naviguer et d'accéder rapidement aux fonctions essentielles pour effectuer des opérations de configuration, de diagnostic ou de maintenance :

- Scénario
- I/O
- Widgets
- Planification
- Paramètres

[![Capture d’écran 2026-07-09 142933.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-09-142933.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-09-142933.jpg)

### 1- Administration d’un ou de plusieurs modules

L’intégrateur peut utiliser l’interface pour administrer :

- **Un module unique** : accéder et configurer directement les paramètres, variables et scénarios spécifiques à ce module
- **Un groupe de modules** : appliquer des configurations communes, synchroniser des scénarios ou superviser plusieurs modules simultanément

Cette flexibilité permet de gérer efficacement des installations individuelles comme des parcs multi-modules.

### 2- Paramètres d’affichage et de langue

L’interface permet également de personnaliser l’expérience utilisateur :

- **Choix de la langue** de l’interface
- **Mode d’affichage** : possibilité de choisir entre **mode clair** et **mode sombre** pour optimiser la lisibilité et le confort visuel selon l’environnement

### 3- Navigation et ergonomie

<p class="callout info">La **barre d’icônes de visualisation** affichée sur la droite de l'écran permet de :  
- agrandir la vue  
- réduire la vue  
- recentrer l’affichage sur la zone des blocs scénario  
- verrouiller et déverrouiller les blocs  
- réinitialiser l'édition de blocs</p>

# Comptes utilisateurs : rôles, permissions et accès

Les comptes utilisateurs permettent d’identifier les personnes accédant au système et de définir leur niveau d’utilisation. Chaque compte est associé à un **identifiant** et à un **mot de passe** permettant d’authentifier l’utilisateur.

### 1 - Rôles

Chaque compte est également associé à un **rôle** qui détermine les actions autorisées et les fonctionnalités accessibles.  
Le système propose deux rôles prédéfinis : Installateur et Utilisateur.  
Les rôles définissent les droits d’accès aux différentes fonctionnalités du système. Ils déterminent notamment les opérations possibles dans l’interface.

#### 1.1- Installateur

<p class="callout info"><span style="color: rgb(52, 73, 94);">Nombre d'accès autorisés : 5  
  
</span><span style="color: rgb(52, 73, 94);">Destiné aux personnes chargées de l'installation, de la configuration et de la maintenance du système.   
Ce rôle permet d'accéder à </span><span style="color: rgb(52, 73, 94);">l'ensemble des fonctions avancées de configuration, d'administration et de mise en service selon les permissions accordées</span>  
</p>

#### 1.2- Utilisateur

<p class="callout info"><span style="color: rgb(52, 73, 94);">Nombre d'accès autorisés : 10  
  
Destiné à l'exploitation quotidienne du système par l'utilisateur final.   
Ce rôle dispose d'un accès limité aux fonctionnalités et ne peut pas accéder à la gestion ni à l'administration des comptes</span></p>

### 2 - Permissions

Les permissions déterminent les actions qu’un utilisateur est autorisé à effectuer dans le système.

Les permissions disponibles permettent notamment d’autoriser ou non :

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk-l%E2%80%99%C3%A9dition-des-sc%C3%A9nar"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="5247f470-c40a-4fd5-8a50-8f38b81efb93" data-message-model-slug="gpt-5-6" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling">- l’édition des scénarios
- l’appairage d’appareils
- la mise à jour du firmware
- le changement du nom de l’appareil
- l’accès à la clé externe (API)
- la modification des variables
- la gestion des sauvegardes
- la connexion OPC UA
- la gestion des utilisateurs

</div></div></div></div>### 3 - Accès aux pages

L’accès aux pages de l’interface est **configurable**. Il peut être adapté au rôle attribué et aux besoins de chaque utilisateur.

Les accès aux pages peuvent notamment concerner :

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk-la-page-sc%C3%A9nario-%3B-l"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="5247f470-c40a-4fd5-8a50-8f38b81efb93" data-message-model-slug="gpt-5-6" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling">- la page Scénario
- la page I/O
- la page Paramètres
- la page Variables
- la page Documentation Scénario
- la page Widgets
- la page DMX
- la page Programmation
- la page Configuration des états

</div></div></div></div>Cette organisation permet d’adapter précisément le niveau d’accès de chaque utilisateur tout en limitant l’accès aux fonctions de configuration et d’administration aux personnes autorisées.

#### 2.1- Accès en mode application

Le mode application offre un accès simplifié à ModLink depuis un smartphone, pour un pilotage rapide et quotidien du module.  
Après une première authentification, l’utilisateur peut sélectionner l’option *« Rester connecté »* afin de ne pas avoir à saisir son code d’accès à chaque ouverture.

Pour plus d'informations : [accès en mode application](https://modlink.fr/help/link/206#bkmrk-3--acc%C3%A8s-en-mode-app)

<p class="callout info">Le mode application permet à l’utilisateur d’accéder rapidement à ModLink depuis son Smartphone.  
Quel que soit son rôle, l’utilisateur arrive directement sur la page **Widgets** et peut piloter les équipements et consulter leurs états sans passer par les menus de configuration</p>

# Variables

Les **variables** sont des éléments essentiels pour le fonctionnement des scénarios, elles permettant de **suivre, stocker et transmettre des informations** au sein du système.  
Elles sont notamment utilisées pour :

- mémoriser l’état d’un appareil
- suivre des mesures
- gérer des délais ou événements
- déclencher des actions automatiques

<p class="callout info">Une **variable**, c'est comme une lampe témoin sur un tableau de bord</p>

### 1- Types de variables

<p class="callout info">On distingue deux principaux types de variables :  
- Les **variables d’état** (variables en lecture) reflètent une situation ou l'état d'un équipement, d'un processus  
- Les **variables de commande** (variables en écriture) utilisées pour piloter un équipement ou modifier un état</p>

Une variable peut représenter :

- l'état ou la commande d'une entrée
- l’état ou la commande d’une sortie
- une valeur intermédiaire de calcul
- un état destiné à l’interface utilisateur

#### <span role="text">1.1- Variables pour un interrupteur</span>

Un interrupteur peut avoir des variables liées à son état et à son fonctionnement. Ces variables sont souvent mises à jour automatiquement par le système en temps réel.

- **État** : ON / OFF (1 ou 0)
- **Historique** : dernière action, timestamp du dernier changement
- **Mode** : manuel / automatique / scénario
- **Durée d’activation** : combien de temps il est resté actif

*Exemple de nommage* : `interrupteur_salon_etat`, `interrupteur_chambre_mode`

#### <span role="text">1.2- Variables pour un capteur</span>

Ces variables stockent des valeurs numériques ou textuelles utilisées dans les calculs ou scénarios, elles peuvent être modifiées manuellement ou automatiquement par le système.  
Selon le type de capteur, on peut créer des variables spécifiques :

- **Capteur de mouvement** : 
    - `mouvement_detecte` (booléen)
    - `derniere_detection` (timestamp)

- **Capteur de température / humidité** : 
    - `temperature_salon` (float, en °C)
    - `humidite_salon` (float, en %)

- **Capteur de luminosité** : 
    - `luminosite_salon` (lux)
    - `luminosite_seuil` (valeur pour déclencher scénario)

#### 1.3- Variables combinées pour scénarios

Ces variables sont utilisées pour piloter la logique des scénarios d’automatisation. Elles peuvent servir de conditions ou de déclencheurs pour activer des actions spécifiques.  
On peut ainsi créer des variables logiques basées sur plusieurs entrées :

- `presence_detectee = mouvement_detecte AND luminosite_salon < seuil`
- `interrupteur_auto = ON si presence_detectee = true`

### 2- Communication entre modules : les drapeaux partagés

<p class="callout info">Lorsque plusieurs modules sont utilisés ensemble, ils peuvent échanger des informations grâce au **partage de variables et de scénarios**</p>

<p class="callout success">Imaginez deux agents indépendants qui font leur ronde chacun de leur côté ; *ils ne se parlent pas directement mais ils peuvent voir les mêmes lampes témoin sur leur tableau de bord respectif.*  
  
C'est comme un *fil électrique invisible entre deux modules*. Lorsqu'un scénario sur le premier module « lève un drapeau » en modifiant une variable partagée, le second module voit ce changement et peut immédiatement exécuter les actions prévues dans son propre scénario. Les variables partagées servent ainsi de moyen de communication entre les modules</p>

#### 2.1- Exposition des variables

Lors de la création ou du paramétrage, chaque variable peut être exposée vers :

- scénarios locaux
- autres modules ModLink
- Modbus
- OPC UA
- accès non sécurisé (si autorisé)

La **<span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">portée</span>** (locale ou distante) dépend exclusivement de ce paramétrage.

#### 2.2- Utilisation des variables

- Les variables permettent de **centraliser les informations** et de les rendre accessibles à différents modules et scénarios
- Les variables disponibles et préconfigurées s’affichent directement sur la page d’accueil sous forme de raccourcis. (seules les 6 premières s'affichent, pour consulter l’ensemble des variables, cliquer sur **“***+10 Tout afficher***”** ) ou bien aller dans le menu "*I/O*" pour visualiser toutes les variables disponibles
- Elles facilitent la **supervision et le diagnostic**, car l’intégrateur peut vérifier les valeurs en temps réel pour identifier des dysfonctionnements ou ajuster les comportements des scénarios

<p class="callout info"><span style="text-decoration: underline;">Bonnes pratiques</span> :  
  
- Nommer les variables de manière **claire et cohérente** pour faciliter leur identification  
- Définir **précisément la valeur** et le type d'unité le cas échéant pour éviter les erreurs dans les scénarios  
- Utiliser les variables comme **points de contrôle pour les commandes** </p>

# Scénario (automation)

### 1- Définition

Un **scénario** est un ensemble de règles qui détermine le comportement d'un module.

<p class="callout info">Le **scénario**, c'est la liste des consignes que le module exécute à chaque cycle de fonctionnement</p>

ModLink peut gérer jusqu'à **3 scénarios**, exécutés de manière autonome et pouvant être **activés** ou **désactivés** indépendamment.

<p class="callout info">Lorsque plusieurs modules sont utilisés ensemble, ils peuvent échanger des informations grâce au **partage des variables, des entrées et des sorties**  
</p>

### 2- Principe de fonctionnement

#### 2.1- Boucle de fonctionnement

Un scénario fonctionne selon le principe d’une **boucle d’exécution continue**

<p class="callout success">Chaque scénario doit former une **boucle fonctionnelle complète** :  
**entrée → test / logique → sortie / action → mise à jour variable d’état**</p>

- les conditions sont analysées en permanence,
- les tests sont exécutés dans l'ordre défini,
- lorsqu'une condition est satisfaite, l'action correspondante est exécutée,
- dans le cas contraire, le scénario poursuit son exécution selon la logique configurée

#### 2.2- Déclencheurs

Les déclencheurs déterminent quand le scénario est exécuté.

<span style="text-decoration: underline;">Exemples</span> :

- Changement d'état d'une entrée
- Valeur d'une mesure
- Horaire ou calendrier
- Modification d'une variable

#### 2.3- Conditions

Les conditions permettent de vérifier qu'un ou plusieurs critères sont respectés avant l'exécution des actions.

<span style="text-decoration: underline;">Exemples</span> :

- Température supérieure à une valeur définie
- Sortie inactive
- Plage horaire spécifique

#### 2.4- Actions

Les actions définissent les opérations à exécuter lorsque les conditions sont remplies.

<span style="color: rgb(0, 0, 0);">Exemples</span> :

- la commande de sorties
- l'écriture de variables
- l'envoi d'email et / ou SMS
- la modification d'états utilisateurs

<p class="callout success">Tel un agent de sécurité qui effectue des rondes, le scénario surveille en permanence différents points de contrôle dans un ordre défini :  
- les <span style="text-decoration: underline;">entrées</span> (voyants, ouvrants, environnement ...)  
- les <span style="text-decoration: underline;">sorties</span> (interrupteur, vanne, alerte ...)  
- les <span style="text-decoration: underline;">variables</span> (rapports des agents précédents)  
Une fois l’ensemble des vérifications effectué, le cycle se répète en permanence</p>

<details id="bkmrk-comprendre-le-princi"><summary>Comprendre le principe de fonctionnement d'un scénario</summary>

<span style="color: rgb(52, 73, 94);">**Cette section présente un *exemple de scénario.*  
Le *visuel* est accompagné d'une *description des différents blocs utilisés*, afin de faciliter la compréhension de leurs rôles et de leurs interactions.**</span>

##### **Surveillance d'une pompe de relevage** 

<span style="text-decoration: underline;">Fonctionnement général</span> :  
Ce scénario pilote une pompe de relevage (sortie 1) et surveille son bon fonctionnement : la pompe démarre lorsque le niveau haut est atteint et s'arrête lorsque le niveau bas est atteint.   
Le scénario surveille deux capteurs :  
\- capteur niveau haut (entrée 1) : indique que la cuve est pleine et qu'il faut démarrer la pompe  
\- capteur niveau bas (entrée 2) : indique que la cuve est suffisamment vidée et que la pompe peut être arrêtée  
Le scénario stoppe le processus et envoie un SMS d'alerte si la cuve n'a pas commencé à se vider après 60 secondes. Il vérifie également qu'aucun défaut n'est déjà signalé avant de lancer un nouveau cycle.

[![Scénario exemple pompe.png](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/ebWscenario-exemple-pompe.png)](https://modlink.fr/help/uploads/images/gallery/2026-06/ebWscenario-exemple-pompe.png)

- **<span style="color: rgb(52, 73, 94);"><span style="background-color: rgb(194, 224, 244);">Label "DEBUT"  
    </span>*Point de départ du scénario (lors de la mise sous tension du module et du redémarrage du système)*   
    </span>**
- **<span style="color: rgb(52, 73, 94);"><span style="background-color: rgb(194, 224, 244);">Bloc 9 "TEST VARIABLE" / Test état de la pompe</span>  
    *Vérifie la variable "état de la pompe"* </span>**<span style="color: rgb(52, 73, 94);">*- égale à 1 "pompe fonctionnelle" <span style="color: rgb(186, 55, 42);">→ va au bloc 1 "TEST STATE"</span>*</span><span style="color: rgb(52, 73, 94);"> *- égale à 0 "pompe en défaut" <span style="color: rgb(186, 55, 42);">→ retour au début du scénario "LABEL DEBUT"  
    </span>*<span style="color: rgb(68, 68, 68);">le processus est arrêté jusqu'à ce que l'agent de maintenance réinitialise le défaut (à l'aide du widget "état de la pompe")</span>  
      
    </span>
- **<span style="color: rgb(52, 73, 94);"><span style="background-color: rgb(194, 224, 244);">Bloc 1 : "TEST STATE" / Test niveau haut atteint</span>  
    </span>*****Teste le capteur de niveau haut (entrée 1) - le niveau haut est-il atteint ?***  
    \- si ON (la cuve est pleine) <span style="color: rgb(186, 55, 42);">→ va au bloc 2 "SORTIE SIMPLE"</span>  
    \- si OFF (la cuve n'est pas pleine) <span style="color: rgb(186, 55, 42);">→ retour au début du bloc 1 "TEST STATE"</span>
- **<span style="background-color: rgb(194, 224, 244);">Bloc 2 "SORTIE SIMPLE" / Pompe ON</span>  
    *Active la sortie 1* la pompe démarre et commence à évacuer l'eau *<span style="color: rgb(186, 55, 42);">→ </span>***<span style="color: rgb(186, 55, 42);">va ensuite au bloc 3 "TEST TIMER"</span>
- **<span style="background-color: rgb(194, 224, 244);">Bloc 4 "TEST TIMER" / Temporisation avant défaut</span> *Lance une temporisation de 60 secondes, au bout de laquelle s'il n'y a pas eu de changement d'état du capteur de niveau haut (entrée 1), on estime qu'il y a une anomalie de la pompe, on continue alors vers le bloc 7 "ENVOI SMS"*** <span style="color: rgb(22, 145, 121);">"*Condition par défaut / test en cours*"</span> <span style="color: rgb(186, 55, 42);">→ </span><span style="color: rgb(186, 55, 42);">va au bloc 3 "TEST STATE" tant que le décompte n'est pas terminé</span>  
    <span style="color: rgb(22, 145, 121);">*"GOTO1 time elapsed"* </span>: une fois le temps écoulé, si l'état de la variable "niveau haut" n'a toujours pas changé (le niveau de la cuve n'a pas diminué malgré le fonctionnement de la pompe) on estime qu'il y a un défaut <span style="color: rgb(186, 55, 42);">→ va au bloc 7 "ENVOI SMS"</span>
- <span style="background-color: rgb(194, 224, 244);">**Bloc 3 "TEST STATE" Test vidange commencée** </span>***Teste le niveau du capteur haut (entrée 1)** On s'attend à ce que le niveau du capteur baisse. Si le niveau n'a pas changé au bout de 60 secondes, on sort en anomalie au niveau du bloc 4.* si ON (contact fermé : le capteur haut n'a pas changé d'état) *<span style="color: rgb(186, 55, 42);">**→** </span>*<span style="color: rgb(186, 55, 42);">retourne</span>*<span style="color: rgb(186, 55, 42);"> </span>*<span style="color: rgb(186, 55, 42);">au bloc 4 "TEST TIMER"   
    <span style="color: rgb(52, 73, 94);">si OFF (contact ouvert : le niveau a baissé avant les 60 secondes) </span></span>*<span style="color: rgb(186, 55, 42);">**→** </span>*<span style="color: rgb(186, 55, 42);">va</span>*<span style="color: rgb(186, 55, 42);"> </span>*<span style="color: rgb(186, 55, 42);">au bloc 6 "TEST NIVEAU BAS ATTEINT"   
      
    </span>**<span style="color: rgb(52, 73, 94);"><span style="background-color: rgb(194, 224, 244);">Bloc 6 : "TEST STATE" / Test niveau bas atteint</span>  
    </span>*****Teste le capteur de niveau bas (entrée 2) - le niveau bas est-il atteint ?***  
    \- si ON (le niveau bas n'est pas encore atteint : la cuve n'est pas encore vide ) <span style="color: rgb(186, 55, 42);">→ retour au début du bloc 6 "TEST STATE"</span>  
    \- si OFF (le niveau bas est atteint : la cuve est vide) <span style="color: rgb(186, 55, 42);">→ va au bloc 10 "SORTIE SIMPLE"  
      
    </span>
- **<span style="background-color: rgb(194, 224, 244);">Bloc 10 "SORTIE SIMPLE" / Pompe Off</span>  
    *Arrête la sortie 1*** la pompe est stoppée ***<span style="color: rgb(186, 55, 42);">→ </span>***<span style="color: rgb(186, 55, 42);">va ensuite au bloc 11 "GOTO START"</span>
- <span style="background-color: rgb(194, 224, 244);">**Bloc 7 "ENVOI SMS" / ENVOI SMS**</span>  
    ***Envoie une alerte par SMS*** <span style="color: rgb(186, 55, 42);">***→*** va ensuite au bloc 5 "VALEUR VARIABLE"</span>  
    personnalisation du message et du numéro de Smartphone
- <span style="background-color: rgb(194, 224, 244);">**Bloc 5 "VALEUR VARIABLE" / Pompe en défaut**</span>  
    ***Fixe la valeur de l'état de la pompe à 1 (pompe en défaut) <span style="color: rgb(186, 55, 42);">→ </span>***<span style="color: rgb(186, 55, 42);">va ensuite au bloc 8 "GOTO START"  
    </span>*Visualisation de l'état de la pompe depuis l'application et possibilité pour le technicien de bloquer le processus de fonctionnement*
- **<span style="background-color: rgb(194, 224, 244);">Bloc 8 "GOTO START" / Retour au début</span>  
    *Retour au début du scénario (boucle) <span style="color: rgb(52, 73, 94);"><span style="color: rgb(186, 55, 42);">→ </span></span>****<span style="color: rgb(52, 73, 94);"><span style="color: rgb(186, 55, 42);">va au bloc 9 "TEST VARIABLE"</span></span>*

<p class="callout warning">Ce scénario nécessite la création préalable d'une variable nommée **« état de la pompe »**</p>

##### <span style="color: rgb(68, 68, 68);">**Widgets : </span>

<span style="color: rgb(68, 68, 68);">Pour ce scénario, 4 widgets ont été créés</span>

- ##### <span style="color: rgb(126, 140, 141);"><span style="color: rgb(68, 68, 68);"><span style="color: rgb(126, 140, 141);">Widget pour l'</span>**<span style="background-color: rgb(236, 240, 241); color: rgb(126, 140, 141);">état de la pompe</span>**</span></span>

<span style="color: rgb(126, 140, 141);">Il permet au technicien d'**activer** ou bien de **mettre en défaut** la pompe de relevage, après la réception du SMS d'alerte</span>

[![Widget Anomalie pompe fonctinnelle bis.PNG](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/widget-anomalie-pompe-fonctinnelle-bis.PNG)](https://modlink.fr/help/uploads/images/gallery/2026-06/widget-anomalie-pompe-fonctinnelle-bis.PNG)

<span style="color: rgb(224, 62, 45);">**OU**</span>

[![Widget Anomalie pompe en defaut bis.PNG](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/widget-anomalie-pompe-en-defaut-bis.PNG)](https://modlink.fr/help/uploads/images/gallery/2026-06/widget-anomalie-pompe-en-defaut-bis.PNG)

- ##### <span style="color: rgb(126, 140, 141);">Widgets de visualisation des <span style="background-color: rgb(236, 240, 241);">**niveaux de la cuve**</span> :</span>

[![Widget niveau haut atteint.PNG](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/widget-niveau-haut-atteint.PNG)](https://modlink.fr/help/uploads/images/gallery/2026-06/widget-niveau-haut-atteint.PNG)

<span style="color: rgb(224, 62, 45);">**OU**</span>

<span style="color: rgb(224, 62, 45);">**[![Widget niveau haut intermediaire.PNG](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/widget-niveau-haut-intermediaire.PNG)](https://modlink.fr/help/uploads/images/gallery/2026-06/widget-niveau-haut-intermediaire.PNG)**</span>

---

[![Widget niveau bas intermediaire.PNG](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/widget-niveau-bas-intermediaire.PNG)](https://modlink.fr/help/uploads/images/gallery/2026-06/widget-niveau-bas-intermediaire.PNG)

**<span style="color: rgb(224, 62, 45);">OU</span>**

[![Widget niveau bas atteint.PNG](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/widget-niveau-bas-atteint.PNG)](https://modlink.fr/help/uploads/images/gallery/2026-06/widget-niveau-bas-atteint.PNG)

<p class="callout info">Ce scénario est fourni à titre d'exemple et présente un cas d'usage simple.   
Selon les besoins de l'installation, il peut être enrichi par des fonctions avancées telles que la surveillance de la tension ou du courant de la pompe, l'envoi d'alertes par e-mail, l'affichage de défauts sur d'autres modules, la gestion d'une pompe de secours, ou toute autre logique de contrôle adaptée à l'application.</p>

<span style="color: rgb(230, 126, 35);">**Pour plus d'information, consulter [Gestion des scénarios](https://modlink.fr/help/books/2-pio/chapter/scenarios "Gestion des scénarios")**</span>

</details>

# Widgets d'exploitation

Les widgets permettent aux opérateurs et aux utilisateurs finaux de piloter les équipements et de visualiser leur état.  
Ils offrent un moyen simple d'interagir avec le module sans avoir à accéder aux variables ou aux scénarios.

Chaque widget est associé à une ou plusieurs variables et peut **afficher un état**, **déclencher une action** ou **présenter une information en temps réel**.   
*Selon son type, il peut par exemple permettre d'actionner une sortie, visualiser l'état d'un équipement, afficher une valeur ou représenter graphiquement une donnée.*

Les widgets sont entièrement **personnalisables**. Vous pouvez les ajouter, les modifier, les organiser sur la page et configurer leurs associations avec les variables du module afin de créer une interface parfaitement adaptée à votre installation.

### 1- Types de widgets

- interrupteur
- switch à glissière
- variateur
- variateur d'ouvrant
- capteur
- voyant d'état

### 2- Liaison avec les variables

Chaque widget est lié à une ou plusieurs variable(s), en local ou à distance.

# Installation

# Consignes de sécurité

- - Ne démontez pas le boîtier  
    \- Manipulez le boîtier avec précaution lorsqu'il est sous tension  
    \- L'appareil doit être installé par du personnel qualifié  
    \- L'appareil ne doit pas être installé directement à l'extérieur  
    \- L'appareil ne doit pas être utilisé à des fins médicales, pour sauver des vies ou à toute autre fin où sa défaillance pourrait causer des blessures graves ou la mort  
    ***Le non-respect de ces consignes entraîne l’annulation de la garantie du matériel***

#### Remarques relatives à la sécurité

De par sa conception, ModLink est très sécurisé. Il ne prend pas en charge les programmes de transfert de fichiers ou de terminaux tels que telnet, ftp, ssh, etc. Cela signifie qu'il est impossible pour quiconque de « s'introduire » dans ModLink et d'accéder à d'autres appareils sur votre réseau local.

ModLink prend pas en charge la mise à jour à distance du micrologiciel de manière très sécurisée, rendant impossible l'installation à distance de logiciels malveillants.   
La simplicité de ModLink en fait un appareil très sécurisé. Comme pour tout appareil à installer sur un réseau, certaines précautions de sécurité doivent être respectées. Si ModLink est installé sur Internet, il est recommandé de changer le mot de passe par défaut pour l'accès à l'interface Web. Veillez à utiliser des mots de passe sécurisés composés d'au moins 8 caractères et d'une combinaison de lettres majuscules, de lettres minuscules et de chiffres. N'utilisez pas de mots de passe faciles à deviner.   
Pour plus de sécurité, nous vous conseillons de mettre en place un pare-feu sur le routeur utilisé pour la connexion Internet de ModLink (pour limiter l'accès à certaines adresses IP).

# Montage et fixation

Monter le(s) module(s) dans le tableau électrique.

### 1- Préparation

- Assurez-vous que l’alimentation électrique du réseau est coupée pour garantir la sécurité
- Portez les équipements de protection individuelle si nécessaire

### 2- Fixation du module sur le rail DIN

\- Vérifiez que le rail DIN est correctement installé et stable  
\- Placez le clip supérieur du module sur le bord supérieur du rail  
 *orientez le module de manière à ce que le clip de fixation arrière soit aligné avec le rail DIN  vérifiez que le module est positionné dans le bon sens par rapport aux autres modules ou au flux du réseau* - Appuyez doucement sur la partie inférieure du module jusqu’à ce que le clip inférieur se verrouille sur le rail  
 *vérifiez que le module est bien clipsé et qu’il ne bouge pas*

#####   
Vérification

\- Contrôlez que tous les modules sont correctement alignés et fixés sur le rail DIN

<p class="callout info">- placer le module ModLink dans un endroit sec et ventilé  
- éviter une exposition directe aux rayons du soleil et à l'humidité</p>

# Raccordement électrique

<p class="callout warning"><span style="color: rgb(106, 40, 2);">Assurez-vous que l'alimentation électrique est coupée avant de procéder au câblage.  
Respectez le schéma de câblage</span></p>

<p class="callout info"><span style="color: rgb(0, 0, 0);"><span style="color: rgb(52, 73, 94);">- Utilisez des câbles de section appropriée : 1,5 mm 16A / 2,5 mm 20A</span>  
<span style="color: rgb(52, 73, 94);">- Enficher les fils dans le bornier à insertion directe jusqu’en butée</span>  
<span style="color: rgb(52, 73, 94);">- Pour les retirer, appuyer sur le bouton orange du bornier et extraire le fil</span></span></p>

### 1- Tableau de raccordement

<span style="color: rgb(0, 0, 0);">Réaliser les connexions en vous référant au tableau suivant :</span>

<table border="1" id="bkmrk-18%C2%A0-%C2%A0-230-ac-%C2%A0-rla-1" style="border-collapse: collapse; width: 100%; border-width: 1px; height: 283px;"><colgroup><col style="width: 8.5796%;"></col><col style="width: 10.367%;"></col><col style="width: 10.4862%;"></col><col style="width: 10.0095%;"></col><col style="width: 10.9633%;"></col><col style="width: 12.154%;"></col><col style="width: 9.53289%;"></col><col style="width: 14.1802%;"></col><col style="width: 13.4652%;"></col></colgroup><tbody><tr style="background-color: rgb(236, 240, 241);"><td class="align-center" colspan="9"><span style="color: rgb(0, 0, 0);">*rangée haute*</span></td></tr><tr style="height: 29.7017px; background-color: rgb(230, 126, 35);"><td style="height: 29.7017px; border-color: rgb(255, 255, 255); border-style: solid; background-color: rgb(174, 100, 35);"><span style="color: rgb(255, 255, 255);">A1</span>

**<span style="color: rgb(0, 0, 0);">Phase</span>**

</td><td style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);"><span style="color: rgb(255, 255, 255);">A2</span>

**<span style="color: rgb(0, 0, 0);">Relais 1 COM</span>**

</td><td style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);"><span style="color: rgb(255, 255, 255);">A3</span>

**<span style="color: rgb(0, 0, 0);">Relais 1  
NO</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);"><span style="color: rgb(255, 255, 255);">A4</span>

**<span style="color: rgb(0, 0, 0);">Relais 2</span>**

**<span style="color: rgb(0, 0, 0);">COM</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);"><span style="color: rgb(255, 255, 255);">A5</span>

**<span style="color: rgb(0, 0, 0);">Relais 2</span>**

**<span style="color: rgb(0, 0, 0);">NO</span>**

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(255, 255, 255);">A6</span>

**<span style="color: rgb(0, 0, 0);">Entrée 220V</span>**

**<span style="color: rgb(0, 0, 0);">1</span>**

</td><td style="height: 29.7017px; background-color: rgb(126, 140, 141);"><span style="color: rgb(255, 255, 255);">A7</span>

**<span style="color: rgb(0, 0, 0);">GND</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);"><span style="color: rgb(255, 255, 255);">A8</span>

**<span style="color: rgb(0, 0, 0);">Alim 24V 1</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);"><span style="color: rgb(255, 255, 255);">A9</span>

**<span style="color: rgb(0, 0, 0);">Alim 24V 2</span>**

</td></tr><tr style="background-color: rgb(236, 240, 241);"><td class="align-center" colspan="9" style="border-color: rgb(236, 240, 241); border-style: solid;"><span style="color: rgb(0, 0, 0);">*rangée basse*</span></td></tr><tr style="height: 29.7017px; background-color: rgb(230, 126, 35);"><td style="height: 29.7017px; border-color: rgb(255, 255, 255); border-style: solid; background-color: rgb(53, 152, 219);"><span style="color: rgb(255, 255, 255);">B1</span>

**<span style="color: rgb(0, 0, 0);">Neutre</span>**

</td><td class="align-center" style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);"><span style="color: rgb(255, 255, 255);">B2</span>

**<span style="color: rgb(0, 0, 0);">Relais 1</span>**

**<span style="color: rgb(0, 0, 0);">COM</span>**

</td><td class="align-center" style="height: 29.7017px; border-color: rgb(236, 240, 241); border-style: solid; background-color: rgb(186, 55, 42);"><span style="color: rgb(255, 255, 255);">B3</span>

**<span style="color: rgb(0, 0, 0);">Relais 1</span>**

**<span style="color: rgb(0, 0, 0);">NO</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);"><span style="color: rgb(255, 255, 255);">B4</span>

**<span style="color: rgb(0, 0, 0);">R</span><span style="color: rgb(0, 0, 0);">elais 2</span>**

**<span style="color: rgb(0, 0, 0);">COM</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(224, 62, 45);"><span style="color: rgb(255, 255, 255);">B5</span>

**<span style="color: rgb(0, 0, 0);">Relais 2</span>**

**<span style="color: rgb(0, 0, 0);">NO</span>**

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(255, 255, 255);">B6</span>

**<span style="color: rgb(0, 0, 0);">Entrée 220V</span>**

**<span style="color: rgb(0, 0, 0);">2</span>**

</td><td style="height: 29.7017px; background-color: rgb(126, 140, 141);"><span style="color: rgb(255, 255, 255);">B7</span>

**<span style="color: rgb(0, 0, 0);">GND</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);"><span style="color: rgb(255, 255, 255);">B8</span>

**<span style="color: rgb(0, 0, 0);">Entrée BT 1</span>**

</td><td class="align-center" style="height: 29.7017px; background-color: rgb(243, 162, 26);"><span style="color: rgb(255, 255, 255);">B9</span>

**<span style="color: rgb(0, 0, 0);">E</span><span style="color: rgb(0, 0, 0);">ntrée BT 2</span>**

</td></tr><tr style="background-color: rgb(22, 145, 121);"><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**230 AC**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 1**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 1**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 2**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**RLA 2**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**2 in AC**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**GND**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**in 1 BT**</span>

</td><td class="align-center" style="height: 29.7017px;"><span style="color: rgb(236, 240, 241);">**in 2 BT**</span>

</td></tr></tbody></table>


### <span style="color: rgb(0, 0, 0);">1.1- Alimentation</span>

- <span style="color: rgb(0, 0, 0);">Raccorder le fil de **neutre <span style="color: rgb(53, 152, 219);">(B1)</span>** et le fil de **phase<span style="color: rgb(186, 55, 42);"> <span style="color: rgb(106, 40, 2);">(A1)</span></span>** pour mettre le module sous tension.  
    *La phase sert de synchronisation pour le zéro crossing.*</span>

<p class="callout warning"><span style="color: rgb(106, 40, 2);">Il est conseillé d'utiliser des **disjoncteurs distincts** pour l’alimentation (commande) et la puissance</span></p>

### 1.2- Sorties / relais

Les contacts sont libres de potentiel et fonctionnent comme des interrupteurs mécaniques ; ils ne fournissent aucune tension.  
Les contacts peuvent au maximum couper du 277 VAC avec 30A ou 30 VDC avec 20A.

- raccorder **la phase de puissance (alimentation)** au bornier à insertion   
    <span style="color: rgb(186, 55, 42);"><span style="color: rgb(0, 0, 0);">- relais 1</span> **(A2 / B2)** </span>contacts en parallèle, l'un au dessus de l'autre  
    <span style="color: rgb(186, 55, 42);"><span style="color: rgb(0, 0, 0);">- relais 2 </span><span style="color: rgb(224, 62, 45);">**(A4 / B4)** </span></span>contacts en parallèle, l'un au dessus de l'autre
- raccordez la **phase de la charge** de l'autre côté du bornier   
    <span style="color: rgb(186, 55, 42);"><span style="color: rgb(0, 0, 0);">- relais 1</span> **(A3 / B3)** </span>contacts en parallèle, l'un au dessus de l'autre  
    <span style="color: rgb(186, 55, 42);"><span style="color: rgb(0, 0, 0);">- relais 2 </span><span style="color: rgb(224, 62, 45);">**(A5 / B5)** </span></span>contacts en parallèle, l'un au dessus de l'autre
- raccorder le **neutre de la charge au neutre de puissance (alimentation)** - *ils ne passent pas par le module*

<p class="callout warning">Pour que les relais puissent commuter au **zéro crossing**, la phase utilisée pour l'alimentation du module et de la charge doit être synchronisée  
Il est conseillé d'utiliser des **disjoncteurs distincts** pour l’alimentation (commande) et la puissance</p>


### 1.3- Entrées

#### Entrées HT (220V)

- Raccorder le retour de la **phase à piloter** au bornier à insertion   
    \- entrée HT 1 **<span style="color: rgb(230, 126, 35);">(A6)</span>**  
    \- entrée HT 2 **<span style="color: rgb(230, 126, 35);">(B6)</span>**

<p class="callout info"><span style="color: rgb(52, 73, 94);">Le neutre de référence est celui qui est raccordé sur l'alimentation 220 V du module</span></p>

#### Entrées BT TOR

- Raccorder le **contact à piloter** au bornier à insertion   
    \- entrée BT 1 <span style="color: rgb(0, 0, 0);">**<span style="color: rgb(241, 196, 15);">entre A8 et B8</span>** <span style="color: rgb(68, 68, 68);">(A8 sortie 24V / B8 entrée)</span></span>  
    \- entrée BT 2 <span style="color: rgb(241, 196, 15);">**entre A9 et B9<span style="color: rgb(0, 0, 0);"> </span>**<span style="color: rgb(68, 68, 68);">(A9 sortie 24V / B9 entrée)</span></span>

#### Entrées BT à boucle de courant (analogiques) 4/20mA

<p class="callout warning">En **mode analogique**, les entrées doivent être configurées depuis l'interface Web, dans le menu « *I/O* ».  
  
Une entrée basse tension 4-20 mA peut être divisée en **deux canaux distincts A et B**, permettant ainsi de disposer d'une entrée supplémentaire.  
*L'utilisation de ce mode nécessite un **câblage spécifique** au niveau des capteurs. Veillez à respecter les préconisations de câblage*</p>

- Raccorder le **capteur à piloter** au bornier à insertion 
    - **entrée BT 1 (capteur 2 fils)**  
        \- alimentation (+) du capteur sur <span style="color: rgb(241, 196, 15);">**A8**   
        </span>- sortie (-) du capteur sur <span style="color: rgb(241, 196, 15);">**B8** </span>
    - **entrée BT 2 (capteur 2 fils)** - alimentation (+) du capteur sur <span style="color: rgb(241, 196, 15);">**A9**   
        </span>- sortie (-) du capteur sur <span style="color: rgb(241, 196, 15);">**B9**</span>

- - **entrée BT 1 (capteur 4 fils)**  
        \- alimentation (+) du capteur sur <span style="color: rgb(241, 196, 15);">**A8 (24V)** <span style="color: rgb(68, 68, 68);">-</span> <span style="color: rgb(68, 68, 68);">si la consommation du capteur est &gt; 20mA, utilisez une alimentation externe</span></span><span style="color: rgb(241, 196, 15);">  
        </span>- alimentation (-) et la sortie (-) du capteur sur <span style="color: rgb(68, 68, 68);">**<span style="color: rgb(126, 140, 141);">A7 (GND)</span>**</span><span style="color: rgb(241, 196, 15);">  
        </span>- sortie (+) du capteur sur <span style="color: rgb(241, 196, 15);">**B8 (entrée)** </span>
    - **entrée BT 2 (capteur 4 fils)** - alimentation (+) du capteur sur <span style="color: rgb(241, 196, 15);">**A9 (24V)** <span style="color: rgb(68, 68, 68);">-</span> <span style="color: rgb(68, 68, 68);">si la consommation du capteur est &gt; 20mA, utilisez une alimentation externe</span></span><span style="color: rgb(241, 196, 15);">  
        </span>- alimentation (-) et la sortie (-) du capteur sur <span style="color: rgb(68, 68, 68);">**<span style="color: rgb(126, 140, 141);">B7 (GND)</span>**</span><span style="color: rgb(241, 196, 15);">  
        </span>- sortie (+) du capteur sur <span style="color: rgb(241, 196, 15);">**B9 (entrée)**</span>

<span style="color: rgb(0, 0, 0); background-color: rgb(249, 239, 121);">**MANQUE LE SCHEMA DE RACCORDEMENT ENTREE BT EN MODE 2 CANAUX + schema cablage des capteurs**</span>


### 2- Vérification des entrées et des sorties

- Remettez l’alimentation et vérifiez que le voyant vert s'allume bien en fixe au démarrage du module.
- Pour vérifier que les entrées et sorties réagissent bien, visualiser l'état des voyants sur la façade du module  
    [Description du boîtier](https://modlink.fr/help/books/2-pio/page/description-du-boitier "Description du boîtier")

# Première mise en service

> <span style="color: rgb(35, 111, 161);">La mise en service doit être effectuée **en local, à proximité immédiate** du module, elle consiste à :  
> \- mettre le module sous tension  
> \- configurer le réseau Wi-Fi  
> Cette étape est <span style="text-decoration: underline;">obligatoire et nécessaire pour permettre l’accès à distance</span> au module</span>

<details id="bkmrk-pr%C3%A9requis-avant-la-m"><summary>Prérequis</summary>

Avant de procéder à la mise en service du module, vérifiez que les opérations suivantes ont été réalisées :

- raccordement de l’**alimentation** ;
- raccordement des **entrées** ;
- raccordement des **sorties** ;
- vérification du **câblage et des protections électriques**.

Les informations détaillées relatives au câblage et aux raccordements sont disponibles dans le chapitre « *Raccordements* ».

Le module peut ensuite être mis sous tension et configuré.

</details>### 1- Démarrage du module

- Une fois le module mis sous tension (alimentation raccordée), celui-ci démarre automatiquement et lance sa séquence d’initialisation (elle peut durer jusqu’à 60 secondes)
- Au démarrage, le voyant « *Process Information* » clignote en vert ; il passe ensuite au vert fixe lorsque le module est opérationnel et fonctionne normalement

<p class="callout info">Le comportement et la **signification des voyants** sont détaillés [dans « *Description du boîtier* »](https://modlink.fr/help/books/2-pio/page/description-du-boitier "Description du boîtier") </p>

### 2- Identification du module

Pour identifier le module :

- Soulever le capot amovible
- Relevez le numéro d’identification unique indiqué

<p class="callout info">Chaque module possède un **identifiant unique** au format **<span style="background-color: rgb(53, 152, 219);">2pioXXXX</span>** *XXXX étant composé de 4 caractères (lettres et chiffres)* Cet identifiant est utilisé pour accéder au module **en local et à distance**</p>

### 3- Configuration du Wi-Fi en local

Lors de la première mise en service, le module crée automatiquement son propre **réseau Wi-Fi temporaire**.

Le voyant *« Wi-Fi mode »* clignote en vert pour indiquer que le module est en mode point d’accès Wi-Fi.

La configuration peut être réalisée à l’aide d’un smartphone, d’une tablette ou d’un ordinateur équipé du Wi-Fi.

<p class="callout success">La connexion locale au module s’effectue en **HTTP, en mode non sécurisé**. Selon le navigateur utilisé, un avertissement de sécurité peut s’afficher. Autorisez l’accès au site ou poursuivez vers la page proposée par le navigateur.</p>

#### Connexion au réseau Wi-Fi du module

- Activez le Wi-Fi sur l'appareil utilisé pour la configuration
- Dans la liste des réseaux Wi-Fi disponibles, sélectionnez le réseau du module à configurer.  
    *Lors de la première connexion, le SSID du module apparait sous la forme "**Modlink\_2pioXXXX**"*   
    *un message "réseau non sécurisé" peut s'afficher - ce comportement est normal (pas d'inquiétude, il n'y a aucun risque).*
- Ouvrez le portail captif en sélectionnant le réseau Wi-Fi du module ou attendez qu'il s'ouvre automatiquement (selon l'appareil utilisé l'ouverture peut prendre un certain temps).  
    *Une notification peut également indiquer que le réseau Wi-Fi n'est pas connecté à Internet. **Restez connecté au réseau Wi-Fi du module** afin de poursuivre la configuration.*
- Sélectionnez le réseau Wi-Fi auquel le module doit se connecter   
    *Vérifiez que la qualité du signal réseau est suffisante pour garantir une connexion stable (un niveau de signal de 25% minimum est recommandé).*
- Saisissez le mot de passe du réseau Wi-Fi puis appuyer sur "**<span style="background-color: rgb(53, 152, 219);">*<span style="color: rgb(0, 0, 0);">Appliquer</span>*</span>**"

#### Après l'application des paramètres

- le voyant *« Wi-Fi mode »* passe au rouge lorsque le module est connecté au réseau Wi-Fi
- il passe ensuite au **violet fixe** lorsque le tunnel SSH est actif
- en cas d'échec de la connexion Wi-Fi - par exemple en raison d'un mot de passe incorrect ou d'un signal insuffisant - le voyant **continue de clignoter en vert** et le portail captif doit s'afficher à nouveau

<p class="callout info">Une fois le réseau Wi-Fi configuré, le module est **accessible** - **en local** depuis un appareil connecté au même réseau Wi-Fi  
- **à distance** via Internet et un navigateur Web  
  
*Le module cesse alors de fonctionner en mode point d’accès Wi-Fi et n’apparaît plus dans la liste des réseaux Wi-Fi disponibles*</p>

<p class="callout warning">**Le module utilise les paramètres Wi-Fi enregistrés lors de la configuration initiale (SSID et mot de passe).**  
  
Si le SSID et/ou le mot de passe du réseau WI-Fi est modifié, **le module ne pourra plus se reconnecter automatiquement.**  
*La LED clignottera en vert et une nouvelle configuration Wi-Fi en local sera nécessaire.*  
  
Pour renforcer la sécurité du réseau, il est recommandé de dédier au module ModLink un SSID et un mot de passe spécifiques. </p>

### 4- Accès à l'interface Web de configuration

L’interface Web permet d'accéder aux fonctions de **c**onfiguration, de paramétrage et de supervision du module.

Ouvrez un navigateur Web sur un smartphone, une tablette ou un ordinateur, puis saisissez l'adresse correspondante dans la barre d'adresse / URL

#### 4.1- Accès depuis le réseau local

<p class="callout info">le dispositif utilisé pour se connecter (Smartphone, ordinateur) doit être sur le **même réseau que le module**</p>

- Saisissez directement l’adresse : **<span style="background-color: rgb(249, 239, 121);">2pio </span>**<span style="background-color: rgb(249, 239, 121);">\_ \_ \_ \_**.local**</span>   
    *le numéro d'identification du module comporte 4 caractères (chiffres et lettres)*

#### 4.2- Accès à distance via Internet

- Saisissez directement l’adresse :   
    **<span style="background-color: rgb(249, 239, 121);">2pio </span>**<span style="background-color: rgb(249, 239, 121);">\_ \_ \_ \_**.modlink.fr** </span>*le numéro d'identification du module comporte 4 caractères (chiffres et lettres)*
- L’écran de connexion s’affiche, et vous devez entrer l'identifiant et le mot de passe par défaut
- un avertissement de certificat de sécurité non valide peut s’afficher ; confirmez pour accéder à l’interface Web de configuration


Pour accéder à l’interface de configuration, il est nécessaire de saisir l’identifiant et le mot de passe par défaut.

<p class="callout success">**<span style="text-decoration: underline;">Codes de connexion par défaut </span>**:  
  
identifiant : **admin**  
mot de passe : **admin**</p>


#### 4.3- Personnalisation des identifiants et des accès

<div class="qMYqUG_convSearchResultHighlightRoot" id="bkmrk-pour-s%C3%A9curiser-l%E2%80%99acc"><div class="" data-is-intersecting="true" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4"><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-44" data-turn="assistant" data-turn-id="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" dir="auto">Pour sécuriser l'accès au module, il est fortement recommandé de modifier les identifiants de connexion par défaut après la première connexion.

Vous pouvez également créer les différents profils utilisateurs et leur attribuer les droits d'accès correspondant à leurs fonctions.

### 5- Utilisation d'un scénario préconfiguré

<div class="qMYqUG_convSearchResultHighlightRoot" id="bkmrk-une-fois-connect%C3%A9-au"><div class="" data-is-intersecting="true" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4"><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-44" data-turn="assistant" data-turn-id="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" dir="auto">Une fois connecté à l'interface Web du module, configurez les différents éléments nécessaires au fonctionnement de l'installation, notamment :</section></div></div>- les variables
- les scénarios
- les widgets

Ces éléments permettent de définir le comportement du module ainsi que les fonctions de commande, d’automatisation et de supervision accessibles depuis l’interface Web.

**Deux scénarios sont préconfigurés** et chargés par défaut dans le module.  
S’ils correspondent au fonctionnement souhaité, ils *peuvent être utilisés immédiatement, sans programmation supplémentaire*.

[Scénarios préconfigurés](https://modlink.fr/help/books/2-pio/page/scenarios-preconfigures "Scénarios préconfigurés")</section><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-44" data-turn="assistant" data-turn-id="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" dir="auto">  
<p class="callout success">**Avantages d'un scénario préconfiguré :  
-** Mise en place immédiate  
- Logique déjà validée  
- Réduction du risque d’erreur</p>

Dans le cas contraire, il est possible :

- de modifier un scénario existant afin de l’adapter aux besoins de l’installation [Modifier un scénario préconfiguré](https://modlink.fr/help/books/2-pio/page/scenarios-preconfigures "Scénarios préconfigurés")
- de créer un nouveau scénario entièrement personnalisé [Créer un scénario personnalisé](https://modlink.fr/help/books/2-pio/page/creer-un-scenario-personnalise "Créer un scénario personnalisé")

</section></div></div>

# Accès au module

<span>ModLink prend en charge </span>**plusieurs modes de communication**<span> :</span>

- Mode autonome : fonctionnement sans connexion Internet, avec accès local direct au module
- Communication locale : accès et échanges au sein d’un réseau local
- Communication à distance : accès via une connexion Internet (réseau existant, réseau dédié ou routeur 4G)

# Mode autonome (sans internet)

### 1- Connexion directe au module *(mode AP, routeur)*

Dans certains cas d’usages spécifiques, il est possible d'accéder au module sans réseau Internet local.  
Ce mode de connexion est destiné à des situations particulières, notamment lorsque :

- il n'y a pas de réseau Internet sur place  
    *dans ce cas, le module bascule automatiquement en mode AP-routeur au bout de 30 secondes*
- l’accès à distance au module n’est pas nécessaire

Le module peut fonctionner comme **un point d’accès Wi-Fi**.  
L’utilisateur se connecte alors directement au réseau Wi-Fi émis par le module à l’aide d’un ordinateur, d’une tablette ou d’un smartphone.

Une fois alimenté, le module génère automatiquement son propre réseau Wi-Fi temporaire.  
Le SSID prend la forme suivante : *"Captive Portal + 2pioID"*

- Connectez-vous au module ModLink via le navigateur web en entrant **`2pioXXXX.local`** dans la barre d’adresse
- Activez le Wi-Fi dans les paramètres de l'appareil utilisé pour la connexion
- Rechercher la liste des réseaux sans fils disponibles
- Sélectionner le SSID du réseau Wi-Fi du module ("Captive Portal" + numéro d'identification du module)  
    *le message "réseau non sécurisé - pas de connexion Wi-Fi" s'affiche*
- La page du portail captif s’affiche automatiquement

<p class="callout info">Le mode de connexion via **point d'accès (AP)** est un cas d’usage isolé.  
Dans la majorité des installations, le module est connecté au réseau Internet local afin de permettre l’accès à distance et l’exploitation complète des fonctionnalités</p>

##### Comportement du système en l'absence de connexion Internet :

- le module assure le fonctionnement local complet de l’installation
- les scénarios, timers et automatismes configurés sont exécutés normalement
- les interfaces et équipements connectés au module restent opérationnels sur le réseau local

<p class="callout warning">En mode autonome (absence de connexion Internet), Modlink reste pleinement opérationnel en local, mais **aucun accès distant n’est possible**. L’administration et le pilotage se font uniquement via le réseau local.</p>

# Accès local

ModLink utilise une connexion Internet sans fil. Cette connexion peut être assurée :  
\- par le réseau Wi-Fi local  
\- par un réseau Wi-Fi indépendant (dédié aux IoT)  
\- par un routeur cellulaire (pour se connecter à Internet sans dépendre du réseau Wi-Fi local)

<p class="callout success">**Réseau IoT isolé = plus de sécurité**  
*Les changements sur le réseau Wi-Fi principal n'affectent pas l'IoT*</p>

### Via le réseau Wi-Fi local ou dédié (*mode standard)*

<details id="bkmrk-conditions-pr%C3%A9alable"><summary>Conditions préalables</summary>

- Le module est alimenté
- Le module est connecté à Internet via le réseau local et l'appareil utilisé pour la connexion est sur le même réseau
- Vous avez relevé le numéro unique du module, indiqué sous le capot de la face avant

</details>1. Ouvrir un navigateur Web sur l’appareil connecté au réseau local
2. Saisir le numéro unique du module dans la barre d’adresse du navigateur suivi de ****`.local`**   
    **`2pioXXXX.local`**** *<span style="background-color: rgb(251, 238, 184);">XXXX</span> = ID unique du module composé de 4 caractères (chiffres et lettres)*
3. La page de connexion s’affiche automatiquement
4. Saisir vos identifiants (nom d’utilisateur et mot de passe) pour accéder à l’interface locale

S'il s'agit d'une première connexion, utilisez l’identifiant et le mot de passe par défaut.  
Pour des raisons de sécurité, pensez à les personnaliser.

<p class="callout success">***identifiant par défaut** : admin*  
***mot de passe** **par défaut** : admin*</p>

<p class="callout info">La **connexion locale** au module s’effectue en **HTTP** Selon le navigateur utilisé, un avertissement de sécurité peut s'afficher, c'est normal ; il est nécessaire d’autoriser l’accès au site ou de continuer vers la page selon les options proposées, *il n'y a aucun risque de sécurité* </p>

> 💡 **Astuce** : si la page de connexion n’apparaît pas, vérifiez que l’appareil et le module sont bien sur le même réseau, que le numéro unique est correct et que la mise en service a été réalisée.

# Accès à distance

Une fois la configuration Wi-Fi effectuée et le module connecté à Internet, celui-ci devient **accessible à distance**.  
Par défaut, **le tunnel SSH est activé** afin de permettre cet accès distant.

Plusieurs modes de connexion sont alors possibles.

- via le réseau Wi-Fi local
- via un réseau dédié aux objets connectés (IoT)
- à l’aide d’un routeur 4G

<details id="bkmrk-conditions-pr%C3%A9alable"><summary>Conditions préalables</summary>

- Le module est alimenté et a été préalablement mis en service
- Le module est connecté à Internet
- Vous avez relevé le numéro unique du module (indiqué sous le capot de la face avant)
- L’appareil utilisé pour la connexion distante possède une connexion Internet active et un navigateur compatible
- Vous disposez des identifiants d'accès (nom d'utilisateur et mot de passe) et avez les droits d’accès à distance
- Le tunnel SSH est opérationnel pour l'accès à distance au module

</details>### 1- Connexion avec un navigateur Web

- Ouvrez votre navigateur (Chrome, Safari, Edge, Firefox ...)
- Dans la barre d'adresse, saisissez l'adresse du module sous la forme : **`2pio<span style="color: rgb(230, 126, 35);">XXXX</span>.modlink.fr`**
    
    *<span style="color: rgb(230, 126, 35);">XXXX <span style="color: rgb(0, 0, 0);">= </span></span>ID unique composé de 4 caractères (chiffres et lettres)*
- Entrez vos identifiants : *nom d’utilisateur et mot de passe*
- Cliquez sur *"se connecter"*

Une fois connecté, vous accédez au tableau de bord Modlink

<p class="callout warning">Dans certains cas d’usage spécifiques, un accès à distance peut être mis en place temporairement **en l’absence de réseau Internet sur site**, à condition qu’une personne soit présente sur place pour activer un partage de connexion mobile.  
Ce mode d’accès nécessite la présence d’un intervenant sur site et une connexion mobile active. Il est destiné à des usages ponctuels (mise en service, programmation) et ne constitue pas un mode de fonctionnement permanent.</p>

### 2- Connexion via un partage de connexion mobile

Dans certains cas, lorsqu’aucun réseau Internet n’est disponible sur site, il est possible d’assurer un accès à distance temporaire au module en utilisant un partage de connexion depuis un smartphone.

Ce mode de fonctionnement peut être utilisé, par exemple, lorsque :

- un intervenant est présent sur site pour installer et raccorder le module,
- un technicien doit se connecter à distance pour effectuer la configuration ou la programmation du module.

Dans ce cas, l’intervenant sur site active un partage de connexion (Wi-Fi) sur son smartphone et connecte le module à ce réseau de manière temporaire.  
Le technicien à distance peut alors accéder au module pendant la durée du partage de connexion.

<p class="callout info">Ce mode de connexion temporaire est destiné à des cas d’usage ponctuels.  
Il ne remplace pas une connexion Internet locale permanente et peut être soumis aux limitations du réseau mobile (débit, stabilité, consommation de données)</p>

### 3- Accès en mode application avec un Smartphone


<p class="callout info">L’interface ModLink peut être utilisée en **mode application sur un smartphone**.   
Ce mode permet d’accéder directement à ModLink depuis une icône présente sur l’écran d’accueil, sans ouvrir le navigateur internet ni saisir son adresse</p>

L’installation de ModLink en mode application s’effectue depuis un navigateur compatible. La procédure et les options proposées peuvent varier selon le navigateur et le système d’exploitation du smartphone.

#### Installation sur smartphone Android

*La procédure ci-dessous a été validée avec Firefox sur Android.*

1. Ouvrir l’interface Web de ModLink dans Firefox
2. Ouvrir le menu du navigateur
3. Sélectionner l’option permettant d’installer ou d’ajouter ModLink à l’écran d’accueil  
      
    [![Screenshot_20260907_113010_Firefox.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/screenshot-20260907-113010-firefox.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/screenshot-20260907-113010-firefox.jpg)
4. Installer l'application  
      
    [![Screenshot_20260907_112934_Firefox.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/screenshot-20260907-112934-firefox.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/screenshot-20260907-112934-firefox.jpg)
5. Nommez l'application  
      
    [![Screenshot_20260907_112955_Firefox.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/screenshot-20260907-112955-firefox.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/screenshot-20260907-112955-firefox.jpg)
6. Une icône ModLink est alors ajoutée à l’écran d’accueil du smartphone
7. Appuyer sur cette icône pour lancer ModLink directement en mode application  
      
    *Les intitulés des options peuvent varier selon la version du navigateur et du système Android utilisé*

### 4- Désactiver la connexion à distance

Si vous ne souhaitez pas que le module soit accessible depuis l'extérieur du réseau local :

- accédez au menu "*Paramètres*" &gt; "*Connectivité*" &gt; *"Accès à distance"*
- appuyer sur le bouton <span style="color: rgb(0, 0, 0); background-color: rgb(53, 152, 219);">*Configurer*</span>
- cochez l'option "*Désactiver le SSH*".

[![Capture d’écran 2026-06-22 173944.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-22-173944.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-22-173944.jpg)

Une fois l'option activée, l'état de la connexion est mis à jour et affiche « *SSH désactivé* », confirmant que l'accès à distance est désormais désactivé.

[![Capture d’écran 2026-06-22 174020.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-22-174020.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-22-174020.jpg)

<p class="callout warning">**Le tunnel SSH est partagé entre l'accès distant au module ModLink et l'accès OPC UA distant** *il ne peut être utilisé que par une seule de ces fonctionnalités à la fois.*  
Lorsque le tunnel SSH est affecté à l'accès OPC UA distant, l'accès distant ModLink est désactivé.   
*Le module reste alors accessible uniquement depuis le réseau local*</p>

# Réseau de modules

<span>Les modules ModLink peuvent être interconnectés dès lors qu'ils partagent </span>**la même clé de cryptage**.  
Ils échangent leurs informations en temps réel et mettent leurs variables à disposition des autres modules du réseau, permettant ainsi d'utiliser des entrées et des sorties distantes sans nécessiter de câblage supplémentaire.

# Rechercher un module

<details id="bkmrk-%C2%A0"><summary>Prérequis</summary>

Avant de lancer la découverte des modules sur le réseau local, assurez-vous que :

- les modules sont sous tension et à portée de communication les uns des autres
- les modules ont été correctement appairés (configuration WiFi et clé de chiffrement) [Ajouter un module](https://modlink.fr/help/link/184#bkmrk-page-title)
- vous êtes connecté à l'interface Web d'un module en local

</details>### 1- Découverte automatique par mDNS

Les modules présents sur le **réseau local** sont **automatiquement détectés** grâce au protocole mDNS.   
Cette découverte ne nécessite aucune configuration préalable et permet de retrouver rapidement les modules disponibles.

- dans le menu « *I/O* » sélectionnez *« Distant »* dans le champ *"valeur"* La liste des modules connectés au module s'affiche le cas échéant
- cliquez sur *« mDNS »* pour lancer une recherche des modules présents sur le réseau local.
    
    Les modules détectés s'affichent, cochez ceux que vous souhaitez importer, puis cliquez sur *« Importer la sélection »* pour valider votre choix et les ajouter à la liste des modules connectés

[![Capture d’écran 2026-06-26 121423.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-26-121423.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-26-121423.jpg)

<p class="callout warning">Avant toute importation, **transférez les clés de cryptage vers les modules** afin de sécuriser les communications.   
Une fois cette opération réalisée, vous pouvez lancer la découverte mDNS et importer les modules souhaités  
  
*[Transférer les clés de cryptage](https://modlink.fr/help/link/184#bkmrk-3--transfert-des-cl%C3%A9)*  
</p>

Une fois importé, le module apparaît dans la liste des modules connectés.   
Pour chaque module, il est possible de consulter les **informations de connexion** (ports, adresse MAC, clé API), la **liste des I/O** et des **variables** partagées.   
Cliquez sur les listes déroulantes pour développer leur contenu et afficher les informations disponibles.

[![Capture d’écran 2026-07-07 142350.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-142350.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-142350.jpg)

Si vous connaissez l'identifiant du module, vous pouvez **l'ajouter manuellement** sans effectuer de scan mDNS

- Cliquer sur <span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">*+ Ajouter un appareil*</span>

**[![Capture d’écran 2026-07-07 165512.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-165512.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-165512.jpg)**

- Renseignez les champs **Nom de l'appareil** et **Nom d'hôte** (au format 2pioxxxx.modlink.fr)
- Sélectionnez ensuite le protocole **HTTP**, puis cliquez sur le bouton <span style="color: rgb(0, 0, 0); background-color: rgb(53, 152, 219);">Ajouter l'appareil</span>

[![Capture d’écran 2026-07-07 170004.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-170004.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-170004.jpg)

### 2- Recherche par adresse IP

Il est également possible de visualiser et d'accéder aux modules grâce à leur **adresse IP**.

L'adresse IP d'un module peut être consultée dans le menu *« Paramètres »*, onglet *« Informations »*, puis *« Résumé système ».* Cette page regroupe également les principales informations d'identification du module, notamment :

- le numéro de série
- l'adresse MAC
- l'adresse IP
- la clé sécurisée
- les informations relatives au réseau Wi-Fi

[![Capture d’écran 2026-06-26 143500.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-26-143500.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-26-143500.jpg)

[![Capture d’écran 2026-06-26 143528.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-26-143528.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-26-143528.jpg)

Pour faciliter l'identification des modules et garantir qu'ils **conservent toujours la même adresse IP**, cochez l'option "*Utiliser une IP statique*".

- Ouvrez le menu *Paramètres &gt; Connectivité*
- Dans la section *Connexion Internet*, cliquez sur <span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">*Configurer*</span>
- <span style="color: rgb(68, 68, 68);">Cochez l'option "*Utiliser une IP statique*"</span>

[![Capture d’écran 2026-06-22 171605.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-22-171605.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-22-171605.jpg)

# Ajouter un module

<details id="bkmrk-pr%C3%A9requis-installez-"><summary>Prérequis</summary>

- Installez le(s) nouveau(x) module(s) conformément aux recommandations d'installation *[Raccordement électrique](https://modlink.fr/help/books/2-pio/page/raccordement-electrique "Raccordement électrique")*
- Contrôlez l'[Etat des voyants](https://modlink.fr/help/link/179#bkmrk-%C2%A0) pour vérifier que le(s) module(s) fonctionne(nt) normalement
- Les modules doivent se trouver **à proximité les uns des autres lors du transfert de la clé de cryptage**
- Seuls les utilisateurs dont le profil dispose de la permission « Appairage de modules » sont autorisés à ajouter de nouveaux modules à un réseau
- Pour **partager des variables** entre les modules d'un réseau, celles-ci doivent être exposées. Les variables non exposées restent internes au module et ne sont pas accessibles par les autres modules du réseau

</details><p class="callout warning">Pour constituer un réseau ModLink, **tous les modules doivent partager la même clé de cryptage**.  
Cette clé permet aux modules de communiquer</p>

Lors de l'ajout d'un nouveau module, la clé de cryptage doit être transférée depuis un module déjà configuré vers le nouveau module. Pour des raisons de sécurité, ce transfert ne peut être réalisé que lorsque les deux modules se trouvent à proximité immédiate l'un de l'autre.

<p class="callout warning">Pour des raisons de sécurité, **le partage de la clé de cryptage** ne peut se faire que si les **modules se trouvent à proximité les uns des autres** (uniquement au moment du transfert de la clé)  
</p>


L'ajout d'un nouveau module au réseau peut être réalisé <span style="text-decoration: underline;">de deux façons</span> :

- Directement sur le module à l'aide du **bouton de commande**
- **Via l'interface Web**

### 1- Appairage manuel 

#### 1.1- Sur le module à ajouter (récepteur)

voir aussi [Navigation avec le bouton de commande](https://modlink.fr/help/link/264#bkmrk-page-title)

1. Effectuez un **double appui** <span style="background-color: rgb(251, 238, 184);">La LED "*Wireless mode*" s'allume en bleu foncé</span>
2. Puis faîtes un **appui simple  
    La LED "*Wireless mode*" se met alors à clignoter en bleu

Répétez cette opération pour chaque module supplémentaire à intégrer au réseau.

<p class="callout info">**Le mode appairage est activé pour une durée de 2 minutes**.   
Durant ce délai uniquement, il est possible de dupliquer les informations du dispositif **émetteur** vers le ou les dispositifs récepteurs.  
</p>

#### 1.2- Sur le module déjà configuré (émetteur)

Pour transférer la **clé de cryptage** et la **configuration du réseau WiFi (SSID + mot de passe)** du module déjà configuré vers le(s) module(s) à ajouter :

1. Effectuez un **double appui  
    <span style="background-color: rgb(251, 238, 184);">La LED "*Wireless mode*" s'allume en bleu foncé</span>**
2. Puis faîtes un appui **long**

Pour vérifier que le transfert a été correctement effectué, contrôlez l'état des voyants <span style="text-decoration: underline;">sur le(s) module(s) récepteur(s)</span>

- la LED *"Process info"* passe au **vert fixe**
- la LED "WiFi mode*"* passe au **violet** Si elle reste **verte clignotante,** cela signifie que le transfert n'a pas été pris en compte. Dans ce cas, recommencez l'intégralité de la procédure, en effectuant à nouveau l'appairage puis le transfert des informations.

<p class="callout warning">Le transfert de la **configuration Wi-Fi et des clés de cryptage** ne peut être effectuée que pendant les **2 minutes** suivant l’ouverture de l’appairage sur le module à ajouter.   
Passé ce délai, le processus (appairage et transfert) devra être relancé</p>

### 2- Appairage en local via les interfaces Web

#### 2.1- Activer le WiFi sur le module à ajouter

Connectez-vous **au réseau Wi-Fi temporaire** du module à ajouter

- Connectez-vous au module ModLink en saisissant **`2pioXXXX.local`** dans la barre d’adresse de votre Smartphone
- Activez le Wi-Fi dans les paramètres de votre appareil
- Rechercher la liste des réseaux sans fils disponibles
- Sélectionner le SSID du réseau Wi-Fi du module ("Captive Portal" + numéro d'identification du module)  
    *le message "réseau non sécurisé - pas de connexion Wi-Fi" s'affiche*
- La page du portail captif s’affiche automatiquement - cela peut prendre un certain temps  
    *Une fenêtre peut s'afficher pour indiquer que le réseau Wi-Fi sélectionné n'est pas connecté à Internet, il faut rester en Wi-Fi et conserver la connexion*
- Choisissez le réseau Wi-Fi que le module utilisera pour se connecter   
    *Vérifiez que la qualité du signal réseau est suffisante pour garantir une connexion stable du module (minimum recommandé 25 %)* Saisissez le mot de passe du réseau et appuyer sur "*Appliquer*"  
    *Le voyant "Wi-Fi mode" passe en rouge (connecté à Wi-Fi) puis en violet fixe (tunnel SSH actif).*  
    *S'il y a un problème de connexion au Wi-Fi (erreur de mot de passe ou signal faible), alors le voyant continue de clignoter en vert et la page "portail captif" devrait de nouveau s'afficher*

Le module devient alors **accessible à distance** via son interface Web.


#### 2.2- Sur l'interface Web des modules

Dans le menu "I/O", sélectionnez le mode "Wireless" puis "Clés"

**Autoriser l'appairage (depuis le module déjà <span style="text-decoration: underline;">configuré)</span> :**

- Dans "*Clé et appairage sécurisé*" cliquer sur le bouton <span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">Ouvrir l'appairage</span>

[![Capture d’écran 2026-07-06 160422.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-06-160422.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-06-160422.jpg)

**Recruter l'appareil cible (depuis l'interface du module <span style="text-decoration: underline;">à ajouter)</span> :**

- Dans "*Clé et appairage sécurisé*" cliquer sur le bouton "<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);"><span style="background-color: rgb(220, 40, 197);">Demander à rejoindre</span></span><span style="color: rgb(0, 0, 0);">"</span>

**Transférer la clé de cryptage (depuis l'interface du module <span style="text-decoration: underline;">déjà configuré)</span> :**

- Dans "T*ransférer les clés chiffrées*" cliquez sur "<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">Transférer les clés</span>"

<span style="color: rgb(34, 34, 34); font-family: 'Noto Sans', sans-serif; font-size: 1.666em; font-weight: 400;">[![Capture d’écran 2026-07-06 160612.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-06-160612.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-06-160612.jpg)</span>

<p class="callout warning">Le transfert des clés doit se faire **dans les 2 minutes qui suivent l'ouverture de l'appairage** sur le module principal</p>

Si la clé est manquante, appuyez sur le bouton "*Actualiser l'état*" ou bien regénérez-la depuis le menu *"Paramètres" dans l'onglet* "Sécurité" puis "Clés"

<span style="color: rgb(68, 68, 68);">**Importer les appareils (depuis l'interface des <span style="text-decoration: underline;">deux modules)</span> :**</span>

- Dans le menu "I/O", sélectionnez le mode "*Distant*" puis cliquez sur le bouton <span style="background-color: rgb(45, 194, 107); color: rgb(0, 0, 0);">Scanner mDNS</span><span style="color: rgb(0, 0, 0);"> pour lancer la détection des modules sur le réseau</span>
- Dans la liste des appareils détectés, repérez le module que vous souhaitez ajouter, cochez-le, puis cliquez sur <span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">Importer la sélection</span>
- <span style="color: rgb(68, 68, 68);">Cliquez sur <span style="background-color: rgb(220, 40, 197); color: rgb(0, 0, 0);">Sauvegarder</span>, puis sur le bouton <span style="background-color: rgb(224, 62, 45); color: rgb(0, 0, 0);">Redémarrer</span> dans la barre de navigation pour finaliser l'opération</span>

<span style="color: rgb(68, 68, 68);">[![Capture d’écran 2026-07-07 123042.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-123042.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-123042.jpg)</span>

<p class="callout success">Toute modification de la composition du réseau de modules (ajout, suppression ou remplacement) nécessite un redémarrage afin d'appliquer la nouvelle configuration</p>

Une fois les modules appairés et le réseau de communication établi, il est nécessaire de définir le **rôle de chaque module [Définir le rôle d'un module](https://modlink.fr/help/link/263#bkmrk-page-title)**

# Définir le rôle d'un module

<details id="bkmrk-pr%C3%A9requis-pour-d%C3%A9fin"><summary>Prérequis</summary>

Une fois les modules appairés et le réseau de communication établi, il est nécessaire de définir le rôle de chaque module. Cette configuration s'effectue depuis l'interface Web du module et peut être réalisée localement ou à distance si l'installation est accessible.

</details>Chaque module peut être configuré avec l'un des rôles suivants :

- **Maître** : module principal qui pilote le réseau et centralise les échanges entre les modules
- **Esclave** : module secondaire qui suit les instructions du maître et met à disposition ses entrées, sorties et variables
- **Neutre** : module qui n’assume aucun rôle particulier mais reste connecté au réseau. Il peut également être utilisé pour fournir un accès à distance à l'installation sans participer aux échanges du réseau de modules.

Configurez le module selon la topologie du réseau et la fonction souhaitée

### 1- Définir un module "maître" et un module "esclave"

<span style="text-decoration: underline;">Connectez-vous au serveur Web du module principal</span>

1. Ouvrez le menu *"I/O"*
2. Sélectionnez la valeur *"Wireless"*
3. Dans *"Clés et appairage sécurisé"*, cliquez sur le bouton *"Maître / Esclave"*
4. Cliquez sur *"Définir cet appareil comme maître"*

Le module devient alors le **maître du réseau**. Il héberge l'interface Web, exécute les scénarios et pilote les modules esclaves.

Dans la partie droite de la fenêtre, dans la section « *Provisionner un appareil distant* »

- Sélectionnez l'appareil cible à l'aide de la liste déroulante

[![Capture d’écran 2026-07-07 151429.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-151429.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-151429.jpg)

- Cochez l'option « *Basculer en mode Wireless only après configuration* » si le module esclave n'a pas vocation à être accessible directement via son interface Web.   
    Après son redémarrage, les services Web, SSH et auxiliaires seront désactivés et le module communiquera uniquement avec le module maître via le réseau Wireless
- Dans *« Appairage Wi-Fi du futur esclave »*, choisissez l'option de configuration WiFi qui vous convient

<p class="callout warning">L'appareil cible doit avoir sa fenêtre d'appairage ouverte pour recevoir la configuration</p>

1. *"Réutiliser le Wi-Fi actuel du maître"* : le futur esclave recevra la configuration Wi-Fi actuellement utilisée par le maître
2. *"Envoyer un autre réseau Wi-Fi à la cible" :* saisissez le SSID (nom du réseau) et le mot de passe du réseau Wi-Fi à transmettre. Vous pouvez également lancer un scan des réseaux Wi-Fi afin de sélectionner directement le réseau souhaité dans la liste des réseaux détectés
3. *"Ne pas envoyer de configuration Wi-Fi"* : aucune configuration Wi-Fi ne sera transmise à l'appareil cible (il ne sera donc pas accessible via son interface Web)

[![Capture d’écran 2026-07-07 151515.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-151515.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-151515.jpg)


### 2- Définir un module esclave

<span style="text-decoration: underline;">Connectez-vous au serveur Web du module que vous souhaitez configurer en mode esclave</span>

1. Ouvrez le menu *"I/O"*
2. Sélectionnez la valeur *"Wireless"*
3. Dans l'onglet *"Provisionner un appareil distant" (fenêtre de droite)* cliquez sur le bouton *"<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">Définir cet appareil comme esclave</span>"*

### 3- Définir un module neutre

<span style="text-decoration: underline;">Connectez-vous au serveur Web du module que vous souhaitez configurer en mode neutre</span>

1. Ouvrez le menu *"I/O"*
2. Sélectionnez la valeur *"Wireless"*
3. Dans l'onglet *"Appareil maître" (fenêtre de gauche)* cliquez sur le bouton *"<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">Définir cet appareil comme neutre</span>"*

### 4- Redémarrage des modules

Après avoir terminé la configuration des rôles, redémarrez l'ensemble des modules du réseau afin d'appliquer la nouvelle configuration

[![Capture d’écran 2026-07-07 143834.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-143834.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-143834.jpg)

- cliquer sur le <span style="background-color: rgb(224, 62, 45); color: rgb(0, 0, 0);">bouton de redémarrage</span> qui s'affiche au niveau du menu de navigation

ou bien :

- allez dans le menu *"Paramètres",* choisir l'onglet *"Informations"*

[![Capture d’écran 2026-06-25 161149.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-161149.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-161149.jpg)

- cliquez ensuite sur l'onglet *"Maintenance"*

**[![Capture d’écran 2026-06-25 160721.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-160721.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-160721.jpg)**

- puis appuyer sur *"Redémarrer"*

  
[![Capture d’écran 2026-06-25 161255.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-161255.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-161255.jpg)

[![Capture d’écran 2026-06-25 112732.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-112732.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-112732.jpg)

### 3- Visualiser les informations du réseau Wireless

Vérifiez que le module apparaît correctement dans le réseau et que tous les paramètres sont actifs après le redémarrage.

Dans la rubrique *« Configuration Wireless »* vous pouvez retrouvez toutes les informations relatives au réseau de modules (rôle, nombre de pairs (Peers), SSID du réseau Wi-Fi, etc.).

La section *« MAC dans le groupe »* répertorie les adresses MAC des modules appartenant au groupe Wireless.  
<span data-end="369" data-start="335">Les adresses MAC </span><span style="color: rgb(0, 0, 0);"><span style="background-color: rgb(191, 237, 210);">affichées en vert</span><span style="background-color: rgb(191, 237, 210);"> </span></span>correspondent aux modules esclaves actifs.   
Les autres adresses MAC correspondent à des *modules associés au groupe,* mais qui ne sont pas connectés ni actifs.

[![Capture d’écran 2026-07-07 154502.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-07-154502.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-07-154502.jpg)

# Remplacer un module défaillant

Dans une installation comportant plusieurs modules, il est possible de remplacer rapidement un module défaillant sans avoir à reconfigurer l'ensemble du système.

Pour cela, attribuez au nouveau module **le même nom** que celui du module défectueux puis restaurez la configuration.  
Les autres modules pourront ainsi le retrouver automatiquement sur le réseau et poursuivre leurs échanges sans nécessiter de modifications supplémentaires.

### 1- Renommer le nouveau module

Pour modifier le nom d'un module, accédez au menu "*Paramètres*" &gt; "*Informations*" &gt; "*Identité*", puis cliquez sur "*Changer de nom*" à côté du champ "*Nom de l'appareil"*.

[![Capture d’écran 2026-06-23 105738.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-105738.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-105738.jpg)

Reportez les **informations du module défaillant** :

- Le nom dans le champ "*Nouveau nom*"
- Le "*Numéro de série*" (le numéro de série est indiqué sur l'étiquette située sous le capot du module)
- Confirmez votre demande de remplacement

[![Capture d’écran 2026-06-23 105223.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-105223.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-105223.jpg)

<p class="callout info">Le **numéro de série du module** s'affiche dans le menu « *Paramètres* », onglet « *Informations* », section « *Identité* », puis dans « *Résumé système* ».  
Le numéro de série est également indiqué sur l'étiquette d'identification située sous le capot du module</p>

### 2- Restaurer la configuration de l'ancien module

- Accédez au menu "*Paramètres"*
- Sélectionnez l'onglet "*Informations"*, puis cliquez sur "*Maintenance"*
- Dans la section *Sauvegardes,* cliquez sur le bouton *Restaurer* afin de restaurer la dernière sauvegarde disponible.  
    *Les cinq dernières sauvegardes restent toutefois disponibles et peuvent être restaurées si nécessaire*

<p class="callout success">Une fois le changement de nom effectué et la configuration restaurée, le nouveau module remplacera automatiquement le module défaillant et pourra être utilisé sans nécessiter de reconfiguration du réseau ni des scénarios</p>

<p class="callout info">Si le module défaillant est réparé puis remis en service, il ne reprendra pas son nom d'origine.   
Au démarrage, **il prendra automatiquement le nom du module de remplacement**</p>

# Variables

<span>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 </span>**variables d'état**<span>, qui reflètent l'état d'un équipement ou d'une fonction, et les </span>**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.

# Généralités

<details id="bkmrk-rappel-sur-les-varia"><summary>Rappel sur les variables</summary>

<p class="callout info">Une variable est une zone mémoire contenant une **valeur susceptible d’évoluer** au cours du temps.</p>

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 ModLink.

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.
- <span style="color: rgb(0, 0, 0);">E<span style="color: rgb(68, 68, 68);">ffectuer des **calculs simples**</span></span>
- <span style="color: rgb(68, 68, 68);">Gérer des **temporisations et des compteurs**</span>

</details><p class="callout success"><span style="text-decoration: underline;">Bonnes pratiques</span> :   
  
- identifier rapidement les ****variables préconfigurées**** pour éviter de recréer des éléments déjà disponibles **- nommer** les nouvelles variables de manière claire et cohérente pour simplifier leur utilisation dans les scénarios **-** vérifier la **compatibilité des types de variables** avec les actions et scénarios prévus (ex. : numérique, booléen, texte) **-** les variables doivent avoir une **valeur initiale** avant utilisation **-** identifier et noter le **rôle** de chaque variable pour faciliter la maintenance</p>

### 1- Afficher les variables

<p class="callout info">Les variables peuvent être :  
**- préconfigurées** et disponibles immédiatement sur un module  
- **créées par l'utilisateu**r selon les besoins du scénario   
- utilisées **localement ou partagées sur le réseau** entre plusieurs modules</p>

Pour <span style="text-decoration: underline;">afficher les variables</span> d'un module :

- allez dans le menu "*I/O*"
- puis sélectionner le mode "*Local*"

[![Capture d’écran 2026-07-24 144252.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-24-144252.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-24-144252.jpg)

<span style="color: rgb(68, 68, 68);">Les variables disponibles sur le module s'affichent alors</span>

### 2- Configurer une variable

Une variable peut être personnalisée afin de faciliter son identification et son utilisation dans les scénarios.  
Une configuration claire des variables facilite la création, la maintenance et la compréhension des automatismes.

Dans le menu "*I/O*" sélectionner la variable que vous souhaitez personnaliser et cliquer sur l’icône en forme de pinceau.   
Vous pouvez alors personnaliser les informations suivantes :

- **le nom**  
    il est recommandé d'utiliser un nom explicite afin d’identifier clairement la variable dans les scénarios et la supervision.
- **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 **paramètres d'exposition et de diffusion** sur le réseau  
    *permet de définir la visibilité des variables : sur un module distant, en local sur le module lui-même, dans Home assistant, via Modbus, sur le site web ou encore via OPC UA*
- **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** Elles permettent de définir sur quelles interfaces et protocoles la variable est accessible. Elles 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 <span class="hover:entity-accent entity-underline inline cursor-pointer align-baseline"><span class="whitespace-normal">Home Assistant</span></span>.  
    *Exemple : récupération d’un état (alarme, disjoncteur) ou commande d’un équipement depuis Home Assistant  
    -* **Wireless**  
    Autorise l’échange direct avec des modules ModLink distants  
    - **Modbus**  
    Expose la variable via le protocole <span class="hover:entity-accent entity-underline inline cursor-pointer align-baseline"><span class="whitespace-normal">Modbus</span></span>, largement 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*

Cliquer sur le bouton <span style="color: rgb(0, 0, 0);"><span style="background-color: rgb(53, 152, 219);">*"Sauvegarder"*</span> </span>pour enregistrer les modifications

# Variables préconfigurées

ModLink 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](https://modlink.fr/help/link/221#bkmrk-2--personnaliser-une))  
Les variables affichant<sub> [![9790368.png](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/9790368.png)](https://modlink.fr/help/uploads/images/gallery/2026-06/9790368.png) </sub>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

<span style="text-decoration: underline;">Utilisation</span> :

- 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

<span style="text-decoration: underline;">Utilisation</span> :

- 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

<span style="text-decoration: underline;">Utilisation</span> :

- 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

<span style="text-decoration: underline;">Utilisation</span> :

- 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.

<span style="text-decoration: underline;">Utilisation</span> :

- 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é

<details id="bkmrk-r%C3%A9capitulatif-variab"><summary>Récapitulatif VARIABLES PRÉCONFIGURÉES</summary>

<table border="1" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94);"><thead><tr style="background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><th style="border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Variable**</span></th><th style="border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Principe**</span></th><th style="border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Utilisation**</span></th></tr></thead><tbody><tr><td style="border-color: rgb(52, 73, 94);">**Bouton télérupteur ⚙️**</td><td style="border-color: rgb(52, 73, 94);">Mémorise l'état du bouton poussoir (ON / OFF)</td><td style="border-color: rgb(52, 73, 94);">lié au scénario "télérupteur"</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Compteur de boucle 🔒**</td><td style="border-color: rgb(52, 73, 94);">Compte le nombre de passages dans une boucle de scénario</td><td style="border-color: rgb(52, 73, 94);">Limitation de répétition, contrôle de boucle</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Courant relais 1 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique le courant consommé sur le relais 1</td><td style="border-color: rgb(52, 73, 94);">Surveillance de charge, détection de surcharge</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Courant relais 2 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique le courant consommé sur le relais 2</td><td style="border-color: rgb(52, 73, 94);">Analyse de consommation, diagnostic</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Disjoncteur 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique l’état du disjoncteur (actif / déclenché)</td><td style="border-color: rgb(52, 73, 94);">Sécurité, détection de coupure ou surcharge</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Temporisation télérupteur ON / OFF ⚙️**</td><td style="border-color: rgb(52, 73, 94);">Applique la temporisation ou non</td><td style="border-color: rgb(52, 73, 94);">  
</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Sortie 1 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique l’état de la sortie 1 (ON / OFF)</td><td style="border-color: rgb(52, 73, 94);">Vérification d’état d’un actionneur</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Sortie 2 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique l’état de la sortie 2 (ON / OFF)</td><td style="border-color: rgb(52, 73, 94);">Synchronisation et contrôle logique</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Entrée 220V 1 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique la présence de tension sur l’entrée 220V 1</td><td style="border-color: rgb(52, 73, 94);">Détection alimentation secteur</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Entrée 220V 2 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique la présence de tension sur l’entrée 220V 2</td><td style="border-color: rgb(52, 73, 94);">Surveillance réseau électrique</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Entrée 12V 1 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique l’état de l’entrée 12V 1</td><td style="border-color: rgb(52, 73, 94);">Lecture de capteurs ou contacts secs</td></tr><tr><td style="border-color: rgb(52, 73, 94);">**Entrée 12V 2 🔒**</td><td style="border-color: rgb(52, 73, 94);">Indique l’état de l’entrée 12V 2</td><td style="border-color: rgb(52, 73, 94);">Détection d’événements ou commandes externes</td></tr></tbody></table>

</details>🔒 **Variable système (non supprimable)**

**⚙️ Variable de scénario préconfiguré (supprimable si inutilisée)**

# Partager les variables sur le réseau

<p class="callout warning"><span style="text-decoration: underline;">Prérequis</span> :   
avant de configurer le partage de variables, assurez-vous que la **clé de cryptage** a été dupliquée et appliquée sur chaque module du réseau. Sans cette configuration, les modules ne pourront pas communiquer ni échanger leurs données  
</p>

Pour **partager les variables d'un module** sur les autres modules du réseau :

- <span style="color: rgb(68, 68, 68);">Dans le menu "I/O", sélectionner le mode "*Distant*" </span>
- <span style="color: rgb(68, 68, 68);">Cliquer sur "<span style="background-color: rgb(53, 152, 219);">*ajouter*</span>"</span>

[![Capture d’écran 2026-07-24 153545.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-24-153545.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-24-153545.jpg)

<span style="color: rgb(68, 68, 68);">**Ajouter manuellement un module** (si vous connaissez son identifiant)</span>

- <span style="color: rgb(68, 68, 68);">dans "*nom de l'appareil"* saisissez l'identifiant du module vers lequel vous souhaitez partager les variables   
    <span style="background-color: rgb(241, 196, 15);">**2pio\_ \_ \_ \_**</span> (4 caractères)   
    </span>
- <span style="color: rgb(68, 68, 68);">Cliquer sur *"<span style="background-color: rgb(53, 152, 219);">ajouter l'appareil</span>"* pour confirmer votre choix</span>

<span style="color: rgb(68, 68, 68);">[![Capture d’écran 2026-06-09 143150.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-09-143150.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-09-143150.jpg)</span>

<span style="color: rgb(68, 68, 68);">**ou bien scanner le réseau** pour afficher directement les modules du réseau :</span>

- <span style="color: rgb(68, 68, 68);">cliquez sur *"<span style="background-color: rgb(45, 194, 107);">scanner en mDNS</span>"*</span>
- <span style="color: rgb(68, 68, 68);">sélectionnez les appareils vers lesquels vous souhaitez partager les variables</span>
- <span style="color: rgb(68, 68, 68);">cliquer sur *"<span style="background-color: rgb(53, 152, 219);">importer la sélection</span>"*</span>

[![Capture d’écran 2026-06-09 144554.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-09-144554.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-09-144554.jpg)

- <span style="color: rgb(68, 68, 68);">une nouvelle fenêtre *"gestion des appareils"* s'affiche, cliquez sur *"<span style="background-color: rgb(220, 40, 197);">sauvegarder"</span>* pour enregistrer la configuration</span>

[![Capture d’écran 2026-06-09 144953.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-09-144953.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-09-144953.jpg)

# Créer et supprimer une variable

<p class="callout success"><span style="color: rgb(0, 0, 0);"><span style="text-decoration: underline;">Bonnes pratiques</span> :  
</span>  
<span style="color: rgb(0, 0, 0);">- **Définir le besoin** : identifiez exactement ce que la variable doit mesurer ou contrôler dans le scénario  
- **vérifier les variables préconfigurées** pour éviter de recréer des éléments déjà disponibles</span>  
<span style="color: rgb(0, 0, 0);">- Donner un **nom explicite** : le nom doit refléter clairement la fonction de la variable pour faciliter sa lecture et son  
 utilisation dans les scénarios</span>  
<span style="color: rgb(0, 0, 0);">- vérifier la **compatibilité des types de variables** avec les actions et scénarios prévus (ex. : numérique, booléen, texte)</span>  
<span style="color: rgb(0, 0, 0);">- les variables doivent avoir une **valeur initiale** avant utilisation</span>  
<span style="color: rgb(0, 0, 0);">- identifier et noter le rôle de chaque variable pour faciliter la maintenance (dans commentaire)  
  
<span style="color: rgb(68, 68, 68);">*En suivant ces étapes, chaque variable sera facile à comprendre, à configurer et à utiliser dans vos modules*</span>  
</span></p>

### 1- 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 "*<span style="background-color: rgb(53, 152, 219);">+Ajouter</span>*"

[![Capture d’écran 2026-07-24 153854.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-24-153854.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-24-153854.jpg)

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.

#### 1.1- Paramétrer la nouvelle variable

Les paramètres à renseigner lors de la création d’une variable permettent de définir précisément son comportement et son intégration dans les scénario et modules distants.  
Cliquer sur l'icône pinceau pour ouvrir la fenêtre de configuration et renseigner les éléments suivants :

- **le nom**  
    il est recommandé d'utiliser un nom explicite afin d’identifier clairement la variable dans les scénarios et la supervision

<p class="callout warning"><span style="text-decoration: underline;">Important</span> : 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</p>

- **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** 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** Elles permettent de définir sur quelles interfaces et protocoles la variable est accessible. Elles 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 <span class="hover:entity-accent entity-underline inline cursor-pointer align-baseline"><span class="whitespace-normal">Home Assistant</span></span>.  
    *Exemple : récupération d’un état (alarme, disjoncteur) ou commande d’un équipement depuis Home Assistant  
    - **Wireless***  
    Autorise l’échange direct avec des modules ModLink distants  
    - ***Modbus***  
    Expose la variable via le protocole <span class="hover:entity-accent entity-underline inline cursor-pointer align-baseline"><span class="whitespace-normal">Modbus</span></span>, largement 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 "<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">Sauvegarder</span>" pour enregistrer les modifications


<div class="relative basis-auto flex-col -mb-(--composer-overlap-px) pb-(--composer-overlap-px) [--composer-overlap-px:28px] grow flex" id="bkmrk-1.2--configurer-les-"><div class="flex flex-col text-sm"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto [content-visibility:auto] supports-[content-visibility:auto]:[contain-intrinsic-size:auto_100lvh] R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-20" data-turn="assistant" data-turn-id="request-WEB:cd531812-22c7-41a6-983f-660fdcbfd53e-9" dir="auto">#### 1.2- Configurer les valeurs de la variable

[![Capture d’écran 2026-07-24 154404.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-24-154404.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-24-154404.jpg)

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é.

<span style="text-decoration: underline;">Exemple :</span>

- Valeur : 1 → Libellé : Allumage
- Valeur : 2 → Libellé : Extinction

</section><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto [content-visibility:auto] supports-[content-visibility:auto]:[contain-intrinsic-size:auto_100lvh] R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-20" data-turn="assistant" data-turn-id="request-WEB:cd531812-22c7-41a6-983f-660fdcbfd53e-9" dir="auto"></section></div></div>### 2- Supprimer une variable

[![Capture d’écran 2026-07-24 154404.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/hL4capture-decran-2026-07-24-154404.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/hL4capture-decran-2026-07-24-154404.jpg)

<div class="TyagGW_tableContainer" id="bkmrk--3"></div><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto [content-visibility:auto] supports-[content-visibility:auto]:[contain-intrinsic-size:auto_100lvh] R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-32" data-turn="assistant" data-turn-id="request-WEB:cd531812-22c7-41a6-983f-660fdcbfd53e-15" dir="auto" id="bkmrk-seules-les-variables">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.

</section>

# Scénarios

Le **serveur Web intégré**<span> permet de créer des scénario personnalisés ; aucun logiciel supplémentaire n'est nécessaire.</span>  
Créez facilement des tâches basées sur le temps, l’état des entrées et des sorties ...  
<span>Utilisez un </span>**ordinateur**<span> pour l'édition, la modification et la création de scénarios de fonctionnement.</span>  
L'édition sur Smartphone peut entraîner des problèmes d'affichage ou une visibilité limitée des paramètres avancés.

# Gestion des scénarios

<p class="callout warning"><span style="text-decoration: underline;">Accès réservé</span> :   
seuls les utilisateurs disposant du rôle **Installateur** et des **permissions** associées peuvent accéder à la gestion des scénarios</p>

Les scénarios sont représentés graphiquement sous forme de **blocs fonctionnels** d'entrée et de sortie **interconnectés**, illustrant le comportement du module et les relations entre les différentes conditions, actions et temporisations.

Les scénarios chargés sur le module sont accessibles depuis le menu *« Scénarios ».* Ils apparaissent dans le bandeau latéral situé à gauche de l'écran.

Vous pouvez naviguer dans la *zone de travail* pour visualiser la structure et la logique du scénario.  
Une *mini-fenêtre de visualisation*, située en bas à droite de l’écran, offre un aperçu global des blocs.  
  
La *barre d'outils latérale* affichée à la droite de l'écran permet de :  
\- agrandir la vue  
\- réduire la vue  
\- recentrer l’affichage sur la zone des blocs scénario  
\- verrouiller et déverrouiller les blocs  
\- réinitialiser l'édition de blocs

<p class="callout info">Chaque module peut contenir un maximum de **3 scénarios**  
Seuls les scénarios **chargés sur le module** sont affichés dans l'interface d'administration</p>

Depuis le menu "Scénario" il est possible de :

- **éditer** un scénario - la mention *« Scénario ouvert »* s'affiche alors
- **activer ou désactiver** un scénario
- **supprimer** un scénario
- **modifier les informations** d'un scénario (nom, description, etc.) à l'aide du bouton *« Modifier »*
- **exporter** un scénario vers un ordinateur local ou un emplacement distant
- **importer** un scénario modèle depuis le serveur ModLink distant

Pour quitter le mode édition sans enregistrer les modifications effectuées, cliquez sur *« <span style="background-color: rgb(224, 62, 45);">Abandonner</span> ».*   
Pour conserver les modifications apportées au scénario, cliquez sur *« <span style="background-color: rgb(53, 152, 219);">Sauvegarder</span> ».*

<p class="callout success">Plusieurs options de scénario sont possibles :  
  
- utiliser un **scénario préconfiguré** si son fonctionnement correspond à votre besoin  
- importer et activer un **scénario modèle** si son fonctionnement correspond à votre besoin  
- **modifier un scénario existant** pour l’adapter à votre usage  
- **créer un nouveau scénario** entièrement personnalisé</p>

# Scénarios préconfigurés

<p class="callout info">**Deux scénarios préconfigurés** sont intégrés par défaut dans chaque module.   
Ils peuvent être **utilisés immédiatement** sans création de logique ni programmation complémentaire  
  
Les **variables, les blocs de fonction ainsi que les widgets** associés à ces scénario sont également créés et disponibles automatiquement dès leur chargement  
</p>

### 1- scénario préconfiguré 1  
<span style="background-color: rgb(249, 239, 121);">Télérupteur avec ou sans temporisation</span>

<div class="qMYqUG_convSearchResultHighlightRoot" id="bkmrk-pour-s%C3%A9curiser-l%E2%80%99acc"><div class="" data-is-intersecting="true" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4"><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-44" data-turn="assistant" data-turn-id="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" dir="auto"><div class="qMYqUG_convSearchResultHighlightRoot" id="bkmrk-le-fonctionnement-de"><div class="" data-is-intersecting="true" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4"><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="false" data-testid="conversation-turn-44" data-turn="assistant" data-turn-id="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4" dir="auto">#### 1.1- Fonctionnement

Le scénario associe :

- une entrée configurée en bouton poussoir,
- une sortie pilotée en mode bistable (marche / arrêt)

A chaque impulsion sur le bouton de commande, la sortie change d'état (ON <span style="font-size: 11.0pt; line-height: 150%; font-family: 'Calibri',sans-serif;">→</span> OFF puis OFF <span style="font-size: 11.0pt; line-height: 150%; font-family: 'Calibri',sans-serif;">→</span> ON).

Le fonctionnement de ce scénario permet deux usages :

- un **appui court** sur le bouton poussoir active la sortie pendant la **durée de temporisation définie (en ms)**, puis   
    celle-ci se désactive automatiquement
- un **appui long** active la sortie **sans temporisation** : la sortie reste alors activée jusqu’à une nouvelle commande

<span style="text-decoration: underline;">Applications courantes :</span>

- éclairage d'une lampe ou d'un groupe de lampes (cage d’escalier, couloir, garage ...)
- commande d’un portail ou d’une gâche électrique ;
- activation temporaire d’une pompe, d’un extracteur d’air ou d’une ventilation ;
- éclairage extérieur avec extinction automatique ;
- commande d’un équipement nécessitant un maintien permanent ponctuel.

</section></div></div></section></div></div>#### 1.2- Variables et widgets préconfigurés

Pour ce scénario, deux variables et deux widgets préconfigurés sont utilisés :

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk-un-widget-%C2%AB-bouton-t"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="b48cc1e0-39aa-4689-b858-3381efbfa126" data-message-model-slug="gpt-5-5" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling">- un widget « bouton télérupteur » pour commander la sortie
- un widget « temporisation ON/OFF » pour activer ou non la temporisation et le cas échéant définir sa durée en ms

</div></div></div></div>Les variables associées à ce scénario permettent :

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk-de-m%C3%A9moriser-l%E2%80%99%C3%A9tat-"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="b48cc1e0-39aa-4689-b858-3381efbfa126" data-message-model-slug="gpt-5-5" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling">- de mémoriser l’état du télérupteur (sortie activée ou désactivée)
- d'appliquer ou non la temporisation automatique et le cas échéant définir sa durée en ms

</div></div></div></div>### 2- Scénario préconfiguré 2

### 3- Utiliser, désactiver ou supprimer un scénario préconfiguré

Si le fonctionnement du scénario préconfiguré correspond aux besoins de votre installation, vous pouvez l'utiliser tel quel sans aucune configuration supplémentaire.

- Le scénario est activé et prêt à l’emploi
- Les variables et widgets sont déjà créés  
    *<span lang="EN-US" style="mso-ansi-language: EN-US;">→ </span>Idéal pour se familiariser avec l'univers ModLink*

 S'il ne correspond pas à vos besoins, vous pouvez soit le "désactiver", soit le "<span style="background-color: rgb(224, 62, 45);">supprimer</span>" dans le bandeau situé à gauche de l'écran.

### 4- Modifier un scénario préconfiguré

- Permet d’ajuster un scénario pour un cas particulier sans repartir de zéro (télécharger un modèle depuis le serveur distant ou local)
- L’utilisateur doit vérifier que toutes les variables sont valides et que les entrées et les sorties sont bien configurées

voir [Créer un scénario personnalisé](https://modlink.fr/help/link/213#bkmrk-page-title)

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk--1"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="b48cc1e0-39aa-4689-b858-3381efbfa126" data-message-model-slug="gpt-5-5" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden">  
</div></div></div><div class="qMYqUG_convSearchResultHighlightRoot" id="bkmrk--2"><div class="" data-is-intersecting="true" data-turn-id-container="request-6a0f0b24-c928-83eb-9aa1-7e3c5a8b1daa-4">  
</div></div>

# Utiliser les blocs de fonction

Dans le menu “Scénario”, les blocs de fonctions apparaissent dans le bandeau latéral à gauche de l'écran, à la suite des scénarios chargés sur le module.   
Faites défiler ce bandeau vers le bas pour accéder aux différents blocs de création.

Pour construire un scénario, sélectionnez un bloc puis faites-le glisser vers l’espace de travail. Vous pouvez ensuite le déposer, l’organiser et le relier aux autres blocs afin de définir la logique souhaitée.

<p class="callout info">Les scénarios sont construits à partir de **blocs fonctionnels interconnectés.**  
Chaque bloc remplit une fonction logique précise dans le traitement des **entrées**, des **variables** et des **sorties**.</p>

### 1- Tests sur les entrées**<span style="background-color: rgb(241, 196, 15);">  
</span>**

Ces blocs sont utilisés pour **contrôler l’état ou le comportement des éléments physiques connectés aux entrées du module**. Ils permettent de traiter les différents types de signaux d'entrées provenant des capteurs ou des interrupteurs (impulsions, états logiques, variations ...) avant de déclencher une action.

#### 1.1- impulsion simple

Ce bloc permet de détecter **un appui court et unique** sur une entrée.  
Il génère une action uniquement lors de la détection d’une impulsion, sans maintien de l’état.

#### 1.2- une impulsion double

<div class="flex flex-col text-sm pb-25" id="bkmrk-ce-bloc-d%C3%A9tecte-deux"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="true" data-testid="conversation-turn-20" data-turn="assistant" data-turn-id="request-WEB:5df38fd3-bf2f-491f-8d0a-d07fbd8b4472-9" dir="auto">Ce bloc détecte **deux appuis rapides et consécutifs** sur une entrée.   
L’action n’est déclenchée que si les deux impulsions sont reconnues dans un intervalle de temps.

</section></div>#### 1.3- une impulsion longue

Ce bloc détecte **un appui prolongé sur une entrée**.   
L’action est déclenchée uniquement lorsque l’entrée reste activée pendant une durée continue.

#### 1.4- Trois impulsions (simple / double / longue)

Ce bloc permet d’identifier **différents types d’appuis** sur une entrée : **impulsion simple, double impulsion ou appui long**. L’action associée est déclenchée en fonction du type d’appui détecté.

#### 1.5- Test analogique

Ce bloc permet de **comparer une valeur analogique à une valeur définie**.   
Il vérifie **si la valeur de test est supérieure ou égale**, ou **inférieure ou égale** à la valeur définie afin de déclencher les actions associées.

<div class="flex flex-col text-sm" id="bkmrk-les-deux-tests-%28%3E-et"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="true" data-testid="conversation-turn-38" data-turn="assistant" data-turn-id="request-WEB:5df38fd3-bf2f-491f-8d0a-d07fbd8b4472-18" dir="auto">Les deux tests (&gt; et &lt;) sont généralement utilisés conjointement afin de définir une zone de fonctionnement (hystérésis). Cela permet d’éviter les déclenchements et arrêts répétés liés aux variations autour du seuil.

<p class="callout warning">Ce bloc de fonction ne s’applique pas à la régulation du chauffage.   
Pour cet usage, un bloc spécifique est disponible dans la section « Régulation ».</p>

</section></div>#### 1.6- Test état front. ON / OFF

Ce bloc détecte un **changement d’état** sur une entrée, en analysant les transitions ON → OFF ou OFF → ON.   
Il permet de déclencher une action uniquement lors du passage d’un état à un autre (front montant ou front descendant).

<p class="callout info">Le bloc devient VRAI uniquement au moment du changement, puis redevient FAUX  
- il ne reste pas actif  
- il déclenche une seule fois par changement</p>

#### 1.7- Test état ON / OFF

Ce bloc permet de **vérifier l’état d’une entrée**.   
Il détecte si l’entrée est en position ON ou OFF et déclenche les actions associées en fonction de l’état constaté.

<p class="callout info">Ce bloc vérifie un **état stable**</p>

#### 1.8- Test contact radar

Ce bloc permet de vérifier l’**état du contact issu d’un détecteur radar**.  
Il détecte la présence ou l’absence de détection et déclenche les actions associées en fonction de l’état du contact.  
Il faut paramétrer le **délai de défaut en minutes**.   
Par exemple, si le capteur reste ouvert pendant une durée supérieure à 30 minutes, il passe automatiquement en état d’erreur.

<details id="bkmrk-rappel-blocs-de-test"><summary>Rappel blocs de tests sur les ENTRÉES</summary>

<table border="1" id="bkmrk-tests-sur-les-entr%C3%A9e" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); border-width: 1px; width: 99.9748%;"><thead><tr style="border-color: rgb(52, 73, 94); background-color: rgb(241, 196, 15);"><th style="border-color: rgb(52, 73, 94); width: 18.1667%;">**<span style="color: rgb(52, 73, 94);">Bloc</span>**</th><th style="border-color: rgb(52, 73, 94); width: 44.8659%;">**<span style="color: rgb(52, 73, 94);">Type de test</span>**</th><th style="border-color: rgb(52, 73, 94); width: 36.9544%;">**<span style="color: rgb(52, 73, 94);">Utilisation</span>**</th></tr></thead><tbody><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Impulsion simple**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Détecte une seule impulsion </span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Déclencher une action sur appui court</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Impulsion double**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Détecte deux impulsions successives rapprochées</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Utilisé pour commandes type double-clic</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Impulsion longue**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Détecte une impulsion maintenue dans le temps</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Déclencher une action sur appui long</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**3 impulsions**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Détecte trois impulsions successives</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Commandes spécifiques multi-clic</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Test analogique**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Compare une valeur analogique à un seuil</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Lecture capteurs (température, luminosité, etc.)</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Test état front** </span>

<span style="color: rgb(52, 73, 94);">**ON / OFF**</span>

</td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Détecte un changement d’état (front montant ou descendant)</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Déclenchement sur transition ON ↔ OFF</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Test état   
ON / OFF**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Vérifie l’état stable d’une entrée</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Vérifier si une entrée est active ou inactive</span></td></tr><tr><td class="align-left" style="border-color: rgb(52, 73, 94); width: 18.1667%;"><span style="color: rgb(52, 73, 94);">**Test   
contact radar**</span></td><td style="border-color: rgb(52, 73, 94); width: 44.8659%;"><span style="color: rgb(52, 73, 94);">Détecte l’état ou l’activation d’un contact radar</span></td><td style="border-color: rgb(52, 73, 94); width: 36.9544%;"><span style="color: rgb(52, 73, 94);">Utilisation avec détection de présence</span></td></tr></tbody></table>

</details>
### 2- Tests sur les variables

Ces blocs de test permettent de vérifier l’état ou la valeur d’une variable utilisée dans les scénarios. Ils servent à comparer une variable à une valeur définie (égalité, supériorité, infériorité ou plage de valeurs) afin de déclencher les actions associées selon le résultat du test.

##### 2.1- Test variable simple

Ce bloc permet d’**effectuer un test sur une variable unique avec plusieurs types de conditions** :

- Test d’**égalité** (= valeur définie)
- Test **supérieur à** (&gt; valeur définie)
- Test **inférieur à** (&lt; valeur définie)

Le résultat du test est validé si la/les condition(s) configurée(s) est/sont respectée(s).

##### 2.2- Test changement de variable

<div class="flex flex-col text-sm pb-25" id="bkmrk-ce-bloc-permet-de-d%C3%A9"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="true" data-testid="conversation-turn-50" data-turn="assistant" data-turn-id="request-WEB:5df38fd3-bf2f-491f-8d0a-d07fbd8b4472-24" dir="auto">Ce bloc permet de détecter toute **modification de la valeur d’une variable** dans un scénario. Il déclenche les actions associées dès qu’un changement est constaté, indépendamment de la nouvelle valeur.

**Exemple :**  
Dans le scénario *“Accès bâtiment”*, si la variable *“Mode sécurité”* passe de *Désactivé* à *Activé*, le bloc détecte ce changement et peut déclencher l’activation des alarmes et la fermeture des accès.

</section></div>##### 2.3- Test de variables multiples Et / Ou

Ce bloc permet d'**évaluer** **simultanément plusieurs variables dans un scénario** en fonction des opérateurs ET / OU et de déclencher les actions associées lorsque l’ensemble ou une partie des conditions est vérifiée.

- **ET** : toutes les conditions doivent être vraies
- **OU** : au moins une condition doit être vraie

**Exemple** :  
Dans un scénario, si les variables "têtes thermostatiques" sont détectées comme fermées (condition ET), alors le bloc déclenche la fermeture du circuit d'eau.

##### 2.4- Test de variables égales multiples

Ce bloc permet de tester **une variable en définissant plusieurs conditions d’égalité**.  
Pour chaque égalité, une valeur est associée à la variable.  
Le test est validé si la variable correspond à l’une des valeurs définies.

<p class="callout info">Chaque égalité correspond à une valeur possible de la variable.   
Le bloc réalise donc un test d’appartenance à une liste de valeurs définies.</p>

<details id="bkmrk-rappel-blocs-de-test-2"><summary>Rappel blocs de tests sur les VARIABLES</summary>

<table border="1" id="bkmrk-bloc-type-de-test-pr" style="width: 107.857%; height: 373.097px; border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); border-width: 1px;"><thead><tr style="height: 29.7017px; background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><td class="align-center" style="width: 22.8587%; border-color: rgb(52, 73, 94); height: 29.7017px;"><span style="color: rgb(52, 73, 94);">**Bloc**</span></td><td class="align-center" style="width: 13.0974%; border-color: rgb(52, 73, 94); height: 29.7017px;">**<span style="color: rgb(52, 73, 94);">Type de test</span>**</td><td class="align-center" style="width: 36.8222%; border-color: rgb(52, 73, 94); height: 29.7017px;">**<span style="color: rgb(52, 73, 94);">Principe</span>**</td><td class="align-center" style="width: 27.1823%; border-color: rgb(52, 73, 94); height: 29.7017px;">**<span style="color: rgb(52, 73, 94);">Utilisation</span>**</td></tr></thead><tbody><tr style="height: 63.3097px;"><td class="align-left" style="width: 22.8587%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">**Test variable simple**</span></td><td style="width: 13.0974%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">1 variable</span></td><td style="width: 36.8222%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Compare une variable à une valeur avec une condition logique (=, &gt;, &lt;)</span></td><td style="width: 27.1823%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Tester un seuil ou un état précis</span></td></tr><tr style="height: 80.1136px;"><td class="align-left" style="width: 22.8587%; border-color: rgb(52, 73, 94); height: 80.1136px;"><span style="color: rgb(52, 73, 94);">**Test changement** </span>

<span style="color: rgb(52, 73, 94);">**de variable**</span>

</td><td style="width: 13.0974%; border-color: rgb(52, 73, 94); height: 80.1136px;"><span style="color: rgb(52, 73, 94);">1 variable</span></td><td style="width: 36.8222%; border-color: rgb(52, 73, 94); height: 80.1136px;"><span style="color: rgb(52, 73, 94);">Détecte une variation d’état ou de valeur (front montant, descendant ou toute modification)</span></td><td style="width: 27.1823%; border-color: rgb(52, 73, 94); height: 80.1136px;"><span style="color: rgb(52, 73, 94);">Déclencher une action uniquement lors d’un changement</span></td></tr><tr style="height: 63.3097px;"><td class="align-left" style="width: 22.8587%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">**Test variables multiples** </span>

<span style="color: rgb(52, 73, 94);">**ET / OU**</span>

</td><td style="width: 13.0974%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Plusieurs variables</span></td><td style="width: 36.8222%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Combine plusieurs variables avec une logique booléenne ET / OU</span></td><td style="width: 27.1823%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Valider une condition basée sur plusieurs états</span></td></tr><tr style="height: 63.3097px;"><td class="align-left" style="width: 22.8587%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">**Test variable égale multiple**</span></td><td style="width: 13.0974%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">1 variable</span></td><td style="width: 36.8222%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Permet de définir plusieurs égalités possibles pour une même variable</span></td><td style="width: 27.1823%; border-color: rgb(52, 73, 94); height: 63.3097px;"><span style="color: rgb(52, 73, 94);">Vérifier si une variable correspond à un ensemble de valeurs autorisées</span></td></tr></tbody></table>

</details>### 3- Actions sur les sorties

<div class="flex flex-col text-sm pb-25" id="bkmrk-les-blocs-contact-so"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="true" data-testid="conversation-turn-62" data-turn="assistant" data-turn-id="request-WEB:5df38fd3-bf2f-491f-8d0a-d07fbd8b4472-30" dir="auto">Les blocs contact sorties permettent de **piloter et de gérer l’état des sorties** d’un module dans un scénario. Ils permettent de commander les actionneurs (relais, éclairages, ouvrants ...) selon différents modes de fonctionnement : commande directe (ON / OFF / inversion), temporisée, cyclique ou spécifique à des équipements (BSO, ouvrants).

</section></div>##### 3.1- On / Off / Flip

Ce bloc est utilisé pour **commander directement un actionneur** dans un scénario selon la logique définie.

- **ON** : active la sortie de manière continue
- **OFF** : désactive la sortie
- **FLIP** : inverse l’état actuel de la sortie (ON devient OFF, OFF devient ON)

##### 3.2- Tous les relais (On / Off / Flip)

Ce bloc permet de **piloter simultanément l’ensemble des relais d’un module**. Il est utilisé pour appliquer une action globale sur toutes les sorties relais dans un scénario.

- **ON** : active tous les relais
- **OFF** : désactive tous les relais
- **FLIP** : inverse l’état de chaque relais (les relais actifs passent à OFF et les relais inactifs passent à ON)

<span style="color: rgb(34, 34, 34); font-family: 'Noto Sans', sans-serif; font-size: 1.4em; font-weight: 400;">3.3- Impulsion cyclique</span>

Ce bloc permet de générer une **succession d’impulsions ON/OFF** sur une sortie **selon un cycle paramétré**.   
Il est nécessaire de définir le *nombre d’impulsions* par cycle, le *nombre de cycles*, la *durée* de chaque impulsion (en ms) ainsi que le *temps entre deux cycles* (en ms).La sortie est activée de manière répétée (clignotement ou alternance)

<span style="text-decoration: underline;">Exemple</span> :  
Pour faire clignoter un voyant d’alerte, on paramètre :

<div class="flex flex-col text-sm pb-25" id="bkmrk-3-impulsions-par-cyc"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&:has([data-writing-block])>*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-scroll-anchor="true" data-testid="conversation-turn-72" data-turn="assistant" data-turn-id="request-WEB:5df38fd3-bf2f-491f-8d0a-d07fbd8b4472-35" dir="auto"><div class="text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)"><div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn"><div class="flex max-w-full flex-col gap-4 grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="65ee51f2-c7ac-4e2f-9062-a5a0e80d4ac5" data-message-model-slug="gpt-5-3-mini" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert w-full wrap-break-word light markdown-new-styling">- 3 impulsions par cycle
- 2 cycles
- 500 ms d’impulsion
- 1000 ms entre les cycles

</div></div></div></div></div></div>Le voyant s’allume et s’éteint 3 fois, puis le cycle est répété une deuxième fois après une pause d’1 seconde.

</section></div>##### 3.4- On / Off avec temporisation

Ce bloc permet de commander une sortie pendant une durée déterminée.  
Lorsque le bloc est exécuté, la sortie passe à l'état **ON** et la temporisation démarre. À l'expiration du délai configuré, la sortie repasse automatiquement à l'état **OFF**.  
Chaque nouvelle exécution de ce bloc relance intégralement la temporisation ; le décompte repart alors de zéro pour la durée configurée et la sortie reste à l'état **ON** tant que le bloc est réactivé avant l'expiration du délai.

Ce bloc est particulièrement adapté aux commandes temporisées, telles que l'allumage d'un éclairage pendant une durée définie, l'activation momentanée d'un relais, l'ouverture d'une gâche électrique ou toute autre commande nécessitant un arrêt automatique après un délai.

<span style="text-decoration: underline;">Exemple d'applications</span> :

- lumière s'allume pendant 2 minutes
- arrêt automatique différé

##### 3.5- BSO (Brise Soleil Orientable)

Ce bloc permet la **commande de stores à lamelles orientables**.  
Il est nécessaire de définir la configuration du BSO ainsi que la fonction à exécuter (ouvrir, fermer, stop, orientation ...).

<span style="text-decoration: underline;">Exemple</span> :

- ouverture des lames
- fermeture partielle
- ajustement selon soleil

##### 3.6- Ouvrants

Ces blocs permettent de **piloter des équipements motorisés** tels que des volets roulants, des stores, des fenêtres et autres ouvrants.  
Il faut définir la configuration et la fonction (ouvrir, fermer, stop ...).

<details id="bkmrk-rappel-blocs-d%27actio"><summary>Rappel blocs d'action sur les SORTIES</summary>

<table border="1" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); width: 99.9748%;"><tbody><tr style="background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><td class="align-center" style="border-color: rgb(52, 73, 94); width: 15.3256%;">**Bloc**</td><td class="align-center" style="border-color: rgb(52, 73, 94); width: 13.4709%;">**Type d’action**</td><td class="align-center" style="border-color: rgb(52, 73, 94); width: 39.6743%;">**Principe**</td><td class="align-center" style="border-color: rgb(52, 73, 94); width: 31.5163%;">**Utilisation**</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 15.3256%;">**On / Off / Flip**</td><td style="border-color: rgb(52, 73, 94); width: 13.4709%;">Commande directe</td><td style="border-color: rgb(52, 73, 94); width: 39.6743%;">Active, désactive ou inverse l’état d’une sortie instantanément</td><td style="border-color: rgb(52, 73, 94); width: 31.5163%;">Pilotage simple d’un éclairage, relais ou équipement</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 15.3256%;">**Tous les relais (On / Off / Flip)**</td><td style="border-color: rgb(52, 73, 94); width: 13.4709%;">Commande globale</td><td style="border-color: rgb(52, 73, 94); width: 39.6743%;">Applique une action (ON, OFF ou inversion) à l’ensemble des relais d’un module</td><td style="border-color: rgb(52, 73, 94); width: 31.5163%;">Coupure générale, mise en marche globale, reset des sorties</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 15.3256%;">**Impulsion cyclique**</td><td style="border-color: rgb(52, 73, 94); width: 13.4709%;">Commande cyclique</td><td style="border-color: rgb(52, 73, 94); width: 39.6743%;">Génère une succession d’impulsions ON/OFF selon un cycle paramétré (répétition dans le temps)</td><td style="border-color: rgb(52, 73, 94); width: 31.5163%;">Signalisation lumineuse, alerte, clignotement</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 15.3256%;">**On / Off après temporisation**</td><td style="border-color: rgb(52, 73, 94); width: 13.4709%;">Commande temporisée</td><td style="border-color: rgb(52, 73, 94); width: 39.6743%;">Exécute une action ON ou OFF après un délai défini</td><td style="border-color: rgb(52, 73, 94); width: 31.5163%;">Extinction automatique, démarrage différé, temporisation d’équipement</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 15.3256%;">**BSO**</td><td style="border-color: rgb(52, 73, 94); width: 13.4709%;">Commande spécifique</td><td style="border-color: rgb(52, 73, 94); width: 39.6743%;">Pilote des brise-soleil orientables avec gestion des positions et de l’orientation</td><td style="border-color: rgb(52, 73, 94); width: 31.5163%;">Gestion de la lumière naturelle, confort thermique</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 15.3256%;">**Ouvrants**</td><td style="border-color: rgb(52, 73, 94); width: 13.4709%;">Commande spécifique</td><td style="border-color: rgb(52, 73, 94); width: 39.6743%;">Permet de contrôler des équipements motorisés (ouverture, fermeture, arrêt)</td><td style="border-color: rgb(52, 73, 94); width: 31.5163%;">Volets roulants, stores, fenêtres motorisées</td></tr></tbody></table>

</details>### 4- Actions sur les variables

Ces blocs agissent directement sur les variables existantes en leur appliquant une modification. Ces actions peuvent être conditionnelles ou exécutées à chaque passage du scénario.

Les blocs d’actions sur les variables permettent de modifier les valeurs utilisées dans un scénario.  
Ils sont indispensables pour gérer des états, effectuer des calculs simples et créer des logiques évoluées.   
Différents types d'actions sont disponibles :

##### 4.1- Actions variables

Ce bloc permet d**’affecter directement une valeur à une variable**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection de la variable
- Choix de la valeur à appliquer (valeur fixe ou issue d’une autre variable)

<span style="text-decoration: underline;">Utilisation</span> :

- Initialisation d’un état
- Changement de mode (ex : absence, présence)

##### 4.2- Valeur variables multiples

Ce bloc permet de **définir la valeur d’une variable en fonction de plusieurs entrées ou conditions**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Définition des variables sources
- Règle de calcul ou de sélection de la valeur finale

<span style="text-decoration: underline;">Utilisation</span> :

- Gestion de modes complexes
- Agrégation de plusieurs états (ex : sécurité, confort, énergie)

##### 4.3- Incrémenter le compteur

Ce bloc **augmente la valeur d’une variable numérique**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection de la variable
- Valeur d’incrément (par défaut +1 ou personnalisée)

<span style="text-decoration: underline;">Utilisation</span> :

- Comptage d’événements (ouvertures, déclenchements)
- Suivi d’occurrences

##### 4.4- Décrémenter le compteur

Ce bloc **diminue la valeur d’une variable numérique**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection de la variable
- Valeur de décrément (par défaut -1 ou personnalisée)

<span style="text-decoration: underline;">Utilisation</span> :

- Gestion de temporisations logiques
- Décompte de cycles ou d’actions restantes

##### 4.5- Additionner deux variables

Ce bloc permet **d’additionner deux variables et de stocker le résultat** dans l'une d'elles.

<span style="text-decoration: underline;">Paramétrage</span> :

- Variable "source"
- Variable "cible"
- Le résultat viendra s'additionner dans la variable "cible"

<span style="text-decoration: underline;">Utilisation</span> :

- Calcul de totaux (ex : consommation cumulée)

<details id="bkmrk-rappel-des-blocs-d%27a"><summary>Rappel blocs d'action sur les VARIABLES</summary>

<table border="1" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); width: 100.041%; height: 311.083px;"><thead><tr style="height: 29.4583px; background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><th style="border-color: rgb(52, 73, 94); width: 14.6927%; height: 29.4583px;">**Bloc**</th><th style="border-color: rgb(52, 73, 94); width: 13.8258%; height: 29.4583px;">**Type d’action**</th><th style="border-color: rgb(52, 73, 94); width: 34.0741%; height: 29.4583px;">**Principe**</th><th style="border-color: rgb(52, 73, 94); width: 37.5309%; height: 29.4583px;">**Utilisation**</th></tr></thead><tbody><tr style="height: 63.0417px;"><td style="border-color: rgb(52, 73, 94); width: 14.6927%; height: 63.0417px;">**Action variable**</td><td style="border-color: rgb(52, 73, 94); width: 13.8258%; height: 63.0417px;">Affectation</td><td style="border-color: rgb(52, 73, 94); width: 34.0741%; height: 63.0417px;">Attribue directement une valeur à une variable (fixe ou issue d’une autre variable)</td><td style="border-color: rgb(52, 73, 94); width: 37.5309%; height: 63.0417px;">Initialisation d’un état, changement de mode (présence / absence)</td></tr><tr style="height: 63.0417px;"><td style="border-color: rgb(52, 73, 94); width: 14.6927%; height: 63.0417px;">**Valeur variables multiples**</td><td style="border-color: rgb(52, 73, 94); width: 13.8258%; height: 63.0417px;">Calcul / sélection</td><td style="border-color: rgb(52, 73, 94); width: 34.0741%; height: 63.0417px;">Détermine la valeur d’une variable à partir de plusieurs sources ou conditions</td><td style="border-color: rgb(52, 73, 94); width: 37.5309%; height: 63.0417px;">Gestion de logiques complexes, combinaison de plusieurs états (sécurité, confort, énergie)</td></tr><tr style="height: 46.25px;"><td style="border-color: rgb(52, 73, 94); width: 14.6927%; height: 46.25px;">**Incrémenter le compteur**</td><td style="border-color: rgb(52, 73, 94); width: 13.8258%; height: 46.25px;">Calcul (addition)</td><td style="border-color: rgb(52, 73, 94); width: 34.0741%; height: 46.25px;">Augmente la valeur d’une variable numérique d’un pas défini</td><td style="border-color: rgb(52, 73, 94); width: 37.5309%; height: 46.25px;">Comptage d’événements, suivi d’occurrences</td></tr><tr style="height: 46.25px;"><td style="border-color: rgb(52, 73, 94); width: 14.6927%; height: 46.25px;">**Décrémenter le compteur**</td><td style="border-color: rgb(52, 73, 94); width: 13.8258%; height: 46.25px;">Calcul (soustraction)</td><td style="border-color: rgb(52, 73, 94); width: 34.0741%; height: 46.25px;">Diminue la valeur d’une variable numérique d’un pas défini</td><td style="border-color: rgb(52, 73, 94); width: 37.5309%; height: 46.25px;">Décompte, gestion de cycles restants, temporisations logiques</td></tr><tr style="height: 63.0417px;"><td style="border-color: rgb(52, 73, 94); width: 14.6927%; height: 63.0417px;">**Ajouter variable à variable**</td><td style="border-color: rgb(52, 73, 94); width: 13.8258%; height: 63.0417px;">Calcul (addition entre variables)</td><td style="border-color: rgb(52, 73, 94); width: 34.0741%; height: 63.0417px;">Additionne deux variables et stocke le résultat dans une variable cible</td><td style="border-color: rgb(52, 73, 94); width: 37.5309%; height: 63.0417px;">Calcul de totaux, cumul de consommations, agrégation de données</td></tr></tbody></table>

</details>### 5- Sauts

Les blocs de saut permettent de modifier le déroulement d’un scénario en **redirigeant l’exécution vers une autre étape**.  
Ils sont utilisés pour créer des boucles, des branchements ou des logiques dynamiques.

##### 5.1- Retour début

Ce bloc renvoie l’**exécution du scénario au bloc numéro 1**.

<span style="text-decoration: underline;">Utilisation</span> :

- Création de boucles simples
- Redémarrage complet du scénario

##### 5.2- Saut avec retour

Ce bloc permet de **sauter vers une autre étape du scénario tout en mémorisant le point de départ.**

<span style="text-decoration: underline;">Fonctionnement</span> :

- Effectue un saut vers une étape définie du scénario
- Mémorise automatiquement le point d’origine du saut
- Met le scénario en attente jusqu’à l’exécution d’un retour
- Le retour s’effectue via le bloc "Retour empilé"

<span style="text-decoration: underline;">Utilisation</span> :

- Exécution de sous-séquences dans un scénario
- Appel de blocs logiques réutilisables
- Organisation de scénarios complexes avec retour au flux principal

##### 5.3- Retour empilé

Ce bloc permet de **revenir au** **dernier point mémorisé par un bloc « saut avec retour »**.

<span style="text-decoration: underline;">Fonctionnement :</span>

- Récupère le dernier point de retour enregistré dans la pile
- Relance l’exécution du scénario à cet emplacement
- Efface l’entrée correspondante de la mémoire de retour

<span style="text-decoration: underline;">Utilisation :</span>

- Retour à la séquence principale après une sous-fonction
- Gestion de scénarios modulaires avec appels imbriqués
- Structuration de logiques complexes avec retours automatiques

##### 5.4- Saut aléatoire

Ce bloc permet de rediriger l’exécution du scénario **vers un bloc cible choisi de manière aléatoire** parmi une liste configurée.

<span style="text-decoration: underline;">Fonctionnement</span> :

- Sélectionne automatiquement un bloc de destination parmi plusieurs cibles définies
- Le choix est effectué de façon aléatoire à chaque exécution
- Le scénario est ensuite redirigé vers le bloc sélectionné

<span style="text-decoration: underline;">Utilisation</span> :

- Création de scénarios dynamiques et non prévisibles
- Simulation de comportements variables (présence, scénarios évolutifs)
- Diversification des séquences d’exécution

##### 5.5- GoTo ciblé

Ce bloc permet de **rediriger l’exécution du scénario vers un bloc précis**.

<span style="text-decoration: underline;"><span style="color: rgb(52, 73, 94); text-decoration: underline;">Fonctionnement</span></span> :

- Oriente l’exécution vers un bloc de destination défini par l’utilisateur
- La cible est sélectionnée lors du paramétrage du bloc
- Le scénario reprend directement à l’étape indiquée

<span style="text-decoration: underline;">Utilisation</span> :

- Création de branchements logiques dans un scénario
- Saut direct vers une étape spécifique
- Simplification de la navigation dans des scénarios complexes

<details id="bkmrk-blocs-de-sauts-%C2%A0"><summary>Rappel blocs de SAUTS</summary>

<table border="1" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); width: 100%;"><thead><tr style="background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><th style="border-color: rgb(52, 73, 94); width: 13.2282%;">**Bloc**</th><th style="border-color: rgb(52, 73, 94); width: 15.0784%;">**Type d’action**</th><th style="border-color: rgb(52, 73, 94); width: 38.4425%;">**Principe**</th><th style="border-color: rgb(52, 73, 94); width: 33.3745%;">**Utilisation**</th></tr></thead><tbody><tr><td style="border-color: rgb(52, 73, 94); width: 13.2282%;">**Retour début**</td><td style="border-color: rgb(52, 73, 94); width: 15.0784%;">Boucle / réinitialisation</td><td style="border-color: rgb(52, 73, 94); width: 38.4425%;">Renvoie l’exécution du scénario au premier bloc</td><td style="border-color: rgb(52, 73, 94); width: 33.3745%;">Répétition continue, redémarrage du scénario</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 13.2282%;">**Saut avec retour**</td><td style="border-color: rgb(52, 73, 94); width: 15.0784%;">Saut avec mémorisation</td><td style="border-color: rgb(52, 73, 94); width: 38.4425%;">Redirige vers un bloc cible tout en mémorisant le point de départ</td><td style="border-color: rgb(52, 73, 94); width: 33.3745%;">Appel de sous-séquences avec retour au flux principal</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 13.2282%;">**Retour empilé**</td><td style="border-color: rgb(52, 73, 94); width: 15.0784%;">Retour de pile</td><td style="border-color: rgb(52, 73, 94); width: 38.4425%;">Revient au dernier point mémorisé par un “Saut avec retour”</td><td style="border-color: rgb(52, 73, 94); width: 33.3745%;">Retour automatique après exécution d’un sous-scenario</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 13.2282%;">**Saut aléatoire**</td><td style="border-color: rgb(52, 73, 94); width: 15.0784%;">Branchement aléatoire</td><td style="border-color: rgb(52, 73, 94); width: 38.4425%;">Redirige vers un bloc cible choisi aléatoirement parmi plusieurs</td><td style="border-color: rgb(52, 73, 94); width: 33.3745%;">Scénarios dynamiques, comportements variables</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 13.2282%;">**GoTo ciblé**</td><td style="border-color: rgb(52, 73, 94); width: 15.0784%;">Saut direct</td><td style="border-color: rgb(52, 73, 94); width: 38.4425%;">Redirige directement vers un bloc précis défini</td><td style="border-color: rgb(52, 73, 94); width: 33.3745%;">Branchements logiques et navigation dans le scénario</td></tr></tbody></table>

</details>### 6- Régulation

Ces blocs permettent de **piloter l’activation et l’arrêt d’un processus automatique de régulation** (chauffage, température, humidité ...).

##### 6.1- Démarrer la régulation

Ce bloc permet de **activer le processus de régulation** sur un équipement ou une zone définie.

##### 6.2- Arrêter la régulation

Ce bloc permet de **désactiver le processus de régulation en cours**.

<p class="callout success"><span role="text"><span style="text-decoration: underline;">Bonnes pratiques</span> :  
- </span>Toujours vérifier l’état de régulation avant activation  
- Éviter les démarrages/arrêts répétés rapides  
- Associer la régulation à des conditions claires (horaires, présence, consigne)  
- Documenter les scénarios utilisant ces blocs pour faciliter la maintenance</p>

<details id="bkmrk-rappel-des-blocs-de-"><summary>Rappel blocs de RÉGULATION</summary>

<table border="1" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); width: 99.9748%;"><thead><tr style="background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><th style="border-color: rgb(52, 73, 94); width: 13.4771%;">**Bloc**</th><th style="border-color: rgb(52, 73, 94); width: 13.9703%;">**Type d’action**</th><th style="border-color: rgb(52, 73, 94); width: 37.836%;">**Principe**</th><th style="border-color: rgb(52, 73, 94); width: 34.8673%;">**Utilisation**</th></tr></thead><tbody><tr><td style="border-color: rgb(52, 73, 94); width: 13.4771%;">**Démarrer la régulation**</td><td style="border-color: rgb(52, 73, 94); width: 13.9703%;">Activation</td><td style="border-color: rgb(52, 73, 94); width: 37.836%;">Lance un processus automatique de régulation sur un équipement ou une zone définie</td><td style="border-color: rgb(52, 73, 94); width: 34.8673%;">Mise en service d’un chauffage, contrôle de température ou d’humidité</td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 13.4771%;">**Arrêter la régulation**</td><td style="border-color: rgb(52, 73, 94); width: 13.9703%;">Désactivation</td><td style="border-color: rgb(52, 73, 94); width: 37.836%;">Stoppe le processus de régulation en cours</td><td style="border-color: rgb(52, 73, 94); width: 34.8673%;">Arrêt manuel ou automatique d’un système de régulation</td></tr></tbody></table>

</details>### 7- Compteur

Les blocs de type compteur et temporisation **permettent de gérer des délais, des séquences temporelles et des mesures** d’événements dans un scénario.

##### 7.1- Pause

Ce bloc permet d’**interrompre temporairement l’exécution du scénario pendant une durée définie**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Durée de la pause (en millisecondes)

<span style="text-decoration: underline;">Fonctionnement</span> :

- Le scénario est mis en attente pendant la durée spécifiée
- Reprise automatique à la fin du délai

<span style="text-decoration: underline;">Utilisation</span> :

- Temporisation entre deux actions
- Création de séquences différées

##### 7.2- Variable timer

Ce bloc **déclenche un changement de valeur d'une variable après un délai**.

<p class="callout warning">une fois que la commande est lancée dans un scénario, il n'est pas possible de l'annuler ni de la redémarrer</p>

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection de la variable timer et du scénario
- Configuration de la valeur et du délai (en ms)

<span style="text-decoration: underline;">Utilisation</span> :

- Mesure de durée d’un événement
- Suivi d’un temps d’activation

##### 7.3- Test timer

Ce bloc permet de **tester la valeur d’un timer afin de conditionner le scénario**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection du timer
- Condition de test (supérieur, égal, inférieur à une valeur)

<span style="text-decoration: underline;">Fonctionnement</span> :

- Compare la valeur du timer à une consigne
- Oriente le scénario selon le résultat du test

<span style="text-decoration: underline;">Utilisation :</span>

- Déclenchement d’actions après un délai
- Surveillance de durées maximales

##### 7.4- Arrêter le timer

Ce bloc permet de **stopper l’évolution d’un timer actif**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection du timer

<span style="text-decoration: underline;">Fonctionnement</span> :

- Le comptage temporel est figé
- La valeur actuelle est conservée

<span style="text-decoration: underline;">Utilisation</span> :

- Fin de mesure de durée
- Arrêt conditionnel d’un chronométrage

##### 7.5- Réinitialiser le timer

Ce bloc permet de **remettre un timer à zéro**.

<span style="text-decoration: underline;">Paramétrage</span> :

- Sélection du timer

<span style="text-decoration: underline;">Fonctionnement</span> :

- La valeur du timer est réinitialisée
- Le timer revient à son état initial

<span style="text-decoration: underline;">Utilisation</span> :

- Réinitialisation de cycle
- Préparation à une nouvelle mesure

<p class="callout info"><span role="text"><span style="text-decoration: underline;">Bonnes pratiques</span> :  
- </span>Nommer clairement les timers selon leur fonction (ex : `Timer_Presence`, `Timer_Delai_Sortie`)  
- Éviter les démarrages multiples simultanés d’un même timer  
- Toujours réinitialiser les timers avant réutilisation dans un nouveau cycle  
- Combiner les timers avec des tests pour structurer les scénarios</p>

<details id="bkmrk-rappel-des-blocs-com"><summary>Rappel blocs COMPTEUR</summary>

<table border="1" style="width: 99.9748%; border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94);"><thead><tr style="background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><th class="align-center" style="width: 12.6065%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Bloc**</span></th><th class="align-center" style="width: 13.9629%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Type d’action**</span></th><th class="align-center" style="width: 37.2047%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Principe**</span></th><th class="align-center" style="width: 36.2128%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Utilisation**</span></th></tr></thead><tbody><tr><td style="width: 12.6065%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Pause**</span></td><td style="width: 13.9629%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Temporisation</span></td><td style="width: 37.2047%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Interrompt l’exécution du scénario pendant une durée définie, puis reprend automatiquement</span></td><td style="width: 36.2128%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Création de délais entre actions, séquences différées</span></td></tr><tr><td style="width: 12.6065%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Variable Timer**</span></td><td style="width: 13.9629%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Mesure / temporisation</span></td><td style="width: 37.2047%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Déclenche ou met à jour une variable Timer après un délai, permettant de suivre une durée</span></td><td style="width: 36.2128%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Mesure d’un temps d’événement, suivi d’une durée d’activation</span></td></tr><tr><td style="width: 12.6065%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Test Timer**</span></td><td style="width: 13.9629%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Condition temporelle</span></td><td style="width: 37.2047%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Compare la valeur d’un Timer à une consigne (&gt;, &lt;, =) pour orienter le scénario</span></td><td style="width: 36.2128%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Déclenchement conditionnel basé sur un temps écoulé, contrôle de durée maximale</span></td></tr><tr><td style="width: 12.6065%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Arrêter le Timer**</span></td><td style="width: 13.9629%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Stop</span></td><td style="width: 37.2047%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Stoppe l’évolution d’un Timer tout en conservant sa valeur actuelle</span></td><td style="width: 36.2128%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Fin de chronométrage, gel d’une mesure en cours</span></td></tr><tr><td style="width: 12.6065%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">**Réinitialiser le Timer**</span></td><td style="width: 13.9629%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Remise à zéro</span></td><td style="width: 37.2047%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Remet un Timer à zéro et restaure son état initial</span></td><td style="width: 36.2128%; border-color: rgb(52, 73, 94);"><span style="color: rgb(52, 73, 94);">Redémarrage de cycle, préparation d’une nouvelle mesure</span></td></tr></tbody></table>

</details>### 8- Utilitaires

Les blocs utilitaires permettent d’enrichir la logique des scénarios avec des fonctions générales telles que le **repérage**, les **conditions temporelles** ou les **notifications**.   
Ils ne pilotent pas directement des équipements mais servent à structurer, informer ou conditionner le fonctionnement global.

##### 8.1- Début

Ce bloc marque le point d’entrée d’exécution du scénario lorsqu’il ne démarre pas directement au bloc n°1.

<span style="text-decoration: underline;">Fonctionnement</span> :

- Le bloc Début définit le point de départ de l’exécution du scénario
- Il est utilisé uniquement lorsque le scénario ne commence pas au bloc n°1
- Il permet de rediriger le démarrage vers un autre bloc du scénario
- En l’absence de ce bloc, l’exécution démarre automatiquement au bloc n°1

<span style="text-decoration: underline;">Utilisation</span> :

- Définition d’un point d’entrée différent du bloc initial
- Organisation de scénarios avec des débuts conditionnels ou déportés
- Adaptation de la logique d’exécution sans modifier l’ordre des blocs

##### 8.2- Label

Ce bloc permet de définir un **point de repère** dans un scénario et de **s’y rendre directement sans nécessiter de liaison physique entre les blocs**.

<span style="text-decoration: underline;">Fonctionnement</span> :

- Insère un marqueur dans le scénario
- Peut être utilisé comme destination par un saut ou un GoTo
- Permet de rediriger l’exécution vers un autre bloc sans connexion directe entre les blocs dans l’éditeur
- Sert uniquement de point d’ancrage logique

<span style="text-decoration: underline;">Utilisation</span> :

- Accès direct à une étape spécifique du scénario
- Organisation de scénarios complexes sans multiplier les liaisons graphiques
- Simplification des branchements et des redirections logiques

##### 8.3- Test heure

Ce bloc est inséré directement dans le scénario pour permettre un **déclenchement journalier à une heure définie**.

<span style="text-decoration: underline;">Principe</span> :

- Le scénario contient un bloc qui vérifie l’heure système
- Le déclenchement est basé directement sur une heure définie dans le bloc
- Il permet un déclenchement journalier simple et immédiat

<span style="text-decoration: underline;">Paramétrage</span> :

- Heure de déclenchement (horaire fixe journalier)

<span style="text-decoration: underline;">Utilisation</span> :

- Déclenchement automatique quotidien d’un scénario
- Lancement d’actions à heure fixe (éclairage, chauffage, automatisme)
- Mise en place de routines journalières

<span style="color: rgb(34, 34, 34); font-family: 'Noto Sans', sans-serif; font-size: 1.4em; font-weight: 400;">8.4- Test coucher / lever</span>

Ce bloc permet de **conditionner l’exécution d’un scénario en fonction des horaires de lever et de coucher du soleil.**

<span style="text-decoration: underline;">Fonctionnement</span> :

- Le système calcule automatiquement les heures de lever et de coucher du soleil selon la localisation (latitude et longitude)
- Permet de tester si le scénario s’exécute en période de jour ou de nuit
- Autorise un décalage (offset) par rapport aux horaires calculés

<span style="text-decoration: underline;">Paramétrage</span> :

- Latitude du site
- Longitude du site
- Offset du lever du soleil (en minutes)
- Offset du coucher du soleil (en minutes)

<span style="text-decoration: underline;">Principe des offsets</span> :

- L’offset permet de **décaler l’heure réelle du lever ou du coucher du soleil**
- Il peut être positif ou négatif selon le besoin d’anticipation ou de retard

<span style="text-decoration: underline;">Utilisation</span> :

- Activation de l’éclairage extérieur avant la nuit réelle
- Fermeture automatique après le coucher du soleil décalé
- Adaptation des scénarios au confort et aux conditions locales

##### 8.5- Envoyer un mail

Ce bloc permet d’**envoyer des notifications par e-mail** depuis un scénario.

<span style="text-decoration: underline;">Fonctionnement</span> :

- Le bloc déclenche l’envoi d’un message électronique vers une adresses définie
- L’envoi est effectué automatiquement lors de l’exécution du scénario

<span style="text-decoration: underline;">Paramétrage</span> :

- Adresse e-mail destinataire
- Sujet du message
- Contenu du message

<span style="color: rgb(0, 0, 0);">Utilisation</span> :

- Notifications d’événements (alarme, défaut, état système)
- Alertes techniques ou informatives
- Envoi de rapports ou messages automatiques

##### 8.6- Envoyer un SMS

Ce bloc permet d’**envoyer des notifications par SMS** depuis un scénario.

<span style="text-decoration: underline;">Fonctionnement</span> :

- Le bloc déclenche l’envoi d’un message SMS vers un ou plusieurs numéros de téléphone définis
- L’envoi est réalisé automatiquement lors de l’exécution du scénario

<span style="text-decoration: underline;">Paramétrage</span> :

- Numéro(s) de téléphone du destinataire
- Contenu du message

<span style="text-decoration: underline;">Utilisation</span> :

- Alertes immédiates (alarme, défaut technique, incident)
- Notifications critiques nécessitant une intervention rapide
- Information en temps réel sur l’état d’un système

<details id="bkmrk-blocs-utilitaires-bl"><summary>Rappel blocs UTILITAIRES</summary>

<table border="1" style="border-collapse: collapse; background-color: rgb(251, 238, 184); border-color: rgb(52, 73, 94); width: 100%;"><thead><tr style="background-color: rgb(241, 196, 15); border-color: rgb(52, 73, 94);"><th style="border-color: rgb(52, 73, 94); width: 11.9901%;">**<span style="color: rgb(52, 73, 94);">Bloc</span>**</th><th style="border-color: rgb(52, 73, 94); width: 13.8459%;">**<span style="color: rgb(52, 73, 94);">Type d’action</span>**</th><th style="border-color: rgb(52, 73, 94); width: 39.8005%;">**<span style="color: rgb(52, 73, 94);">Principe</span>**</th><th style="border-color: rgb(52, 73, 94); width: 34.3634%;">**<span style="color: rgb(52, 73, 94);">Utilisation</span>**</th></tr></thead><tbody><tr><td style="border-color: rgb(52, 73, 94); width: 11.9901%;"><span style="color: rgb(52, 73, 94);">**Début**</span></td><td style="border-color: rgb(52, 73, 94); width: 13.8459%;"><span style="color: rgb(52, 73, 94);">Point d’entrée</span></td><td style="border-color: rgb(52, 73, 94); width: 39.8005%;"><span style="color: rgb(52, 73, 94);">Définit le point de départ du scénario lorsqu’il ne commence pas au bloc n°1</span></td><td style="border-color: rgb(52, 73, 94); width: 34.3634%;"><span style="color: rgb(52, 73, 94);">Organisation du démarrage du scénario et redirection vers un bloc spécifique</span></td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 11.9901%;"><span style="color: rgb(52, 73, 94);">**Label**</span></td><td style="border-color: rgb(52, 73, 94); width: 13.8459%;"><span style="color: rgb(52, 73, 94);">Repère / saut</span></td><td style="border-color: rgb(52, 73, 94); width: 39.8005%;"><span style="color: rgb(52, 73, 94);">Définit un point de repère permettant de sauter directement vers un bloc sans liaison physique</span></td><td style="border-color: rgb(52, 73, 94); width: 34.3634%;"><span style="color: rgb(52, 73, 94);">Simplification des scénarios et accès direct à une étape donnée</span></td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 11.9901%;"><span style="color: rgb(52, 73, 94);">**Test heure**</span></td><td style="border-color: rgb(52, 73, 94); width: 13.8459%;"><span style="color: rgb(52, 73, 94);">Condition horaire</span></td><td style="border-color: rgb(52, 73, 94); width: 39.8005%;"><span style="color: rgb(52, 73, 94);">Déclenche ou conditionne un scénario à une heure définie (journalier)</span></td><td style="border-color: rgb(52, 73, 94); width: 34.3634%;"><span style="color: rgb(52, 73, 94);">Automatisation quotidienne à heure fixe</span></td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 11.9901%;"><span style="color: rgb(52, 73, 94);">**Test coucher / lever**</span></td><td style="border-color: rgb(52, 73, 94); width: 13.8459%;"><span style="color: rgb(52, 73, 94);">Condition astronomique</span></td><td style="border-color: rgb(52, 73, 94); width: 39.8005%;"><span style="color: rgb(52, 73, 94);">Compare l’exécution du scénario aux heures de lever et coucher du soleil avec offsets</span></td><td style="border-color: rgb(52, 73, 94); width: 34.3634%;"><span style="color: rgb(52, 73, 94);">Gestion jour/nuit, éclairage extérieur, scénarios liés à la luminosité</span></td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 11.9901%;"><span style="color: rgb(52, 73, 94);">**Envoyer** </span>

<span style="color: rgb(52, 73, 94);">**un mail**</span>

</td><td style="border-color: rgb(52, 73, 94); width: 13.8459%;"><span style="color: rgb(52, 73, 94);">Notification</span></td><td style="border-color: rgb(52, 73, 94); width: 39.8005%;"><span style="color: rgb(52, 73, 94);">Envoie un e-mail avec destinataire, sujet et contenu</span></td><td style="border-color: rgb(52, 73, 94); width: 34.3634%;"><span style="color: rgb(52, 73, 94);">Alertes, notifications, rapports automatiques</span></td></tr><tr><td style="border-color: rgb(52, 73, 94); width: 11.9901%;"><span style="color: rgb(52, 73, 94);">**Envoyer** </span>

<span style="color: rgb(52, 73, 94);">**un SMS**</span>

</td><td style="border-color: rgb(52, 73, 94); width: 13.8459%;"><span style="color: rgb(52, 73, 94);">Notification</span></td><td style="border-color: rgb(52, 73, 94); width: 39.8005%;"><span style="color: rgb(52, 73, 94);">Envoie un SMS vers un ou plusieurs numéros avec un message défini</span></td><td style="border-color: rgb(52, 73, 94); width: 34.3634%;"><span style="color: rgb(52, 73, 94);">Alertes urgentes et notifications en temps réel</span></td></tr></tbody></table>

</details>[![image.png](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/image.png)](https://modlink.fr/help/uploads/images/gallery/2026-06/image.png)

# Timers

Les Timers ou temporisations permettent de gérer le temps dans les scénarios.  
Chaque timer est associé à une exécution automatique basée sur un intervalle de temps. Il permet de déclencher une étape cible du scénario de manière répétitive ou temporisée.

### 1- Blocs "Timers" disponibles

#### 1.1- Temporisation avant action

Permet de déclencher une action après un délai défini.  
👉 Exemple : allumer une lumière 30 secondes après la détection de mouvement.

#### 1.2- Temporisation cyclique (répétition)

Exécute une action à intervalles réguliers.  
👉 Exemple : envoyer une information toutes les 5 minutes.

#### 1.3- Durée d’état (maintien)

Maintient une sortie active pendant une durée donnée, puis revient à l’état initial.  
👉 Exemple : activer un relais pendant 10 secondes.

#### 1.4- Retard à l’arrêt / à l’enclenchement

- **Retard à l’enclenchement** : l’action ne démarre que si la condition reste vraie pendant un certain temps.
- **Retard à l’arrêt** : l’action reste active encore un moment après la disparition de la condition.  
    👉 Exemple : éviter les déclenchements intempestifs d’un capteur.

*Par exemple :*

- Autoriser une action uniquement entre 08h00 et 18h00
- Maintenir une sortie active pendant 10 minutes
- Déclencher une action après un délai de 30 secondes
- Vérifier qu'une condition est remplie pendant une certaine durée

<p class="callout info">**Les timers** permettent de gérer les temporisations **à l'intérieur d'un scénario**.  
Ils interviennent dans la logique d'exécution en introduisant des délais, des temporisations ou des actions différées entre les différentes étapes du scénario</p>

<p class="callout warning">**La planification**, quant à elle, permet de définir **quand un scénario doit être exécuté**. Elle sert à programmer le lancement automatique d'un scénario selon un calendrier (heure, jour, date, etc.)</p>

### 2- Configurer un "Timer" dans un scénario

Les scénarios permettent l’utilisation de **10 créneaux de temporisation (timers)** maximum par scénario. Ces timers servent à exécuter des actions à intervalles réguliers ou différés.

Pour chaque timer disponible, <span style="text-decoration: underline;">trois éléments doivent être configurés</span> :

#### 2.1-Nom du "Timer"

Champ libre permettant d’identifier le Timer dans le scénario.  
*Il est recommandé d’utiliser un nom explicite lié à la fonction.*

**Exemples :**

- Surveillance chauffage
- Relance éclairage
- Contrôle présence

#### 2.2- Intervalle

Définit la périodicité d’exécution du timer.

- Unité : secondes
- Le timer se déclenche à chaque intervalle écoulé

**Exemples :**

- 10 → exécution toutes les 10 secondes
- 60 → exécution toutes les minutes

#### 2.3- Étape cible

Correspond à l’étape du scénario exécutée lors du déclenchement du Timer.

Cette étape peut être :

- une action
- un test logique
- une séquence de blocs

> **Contrairement aux planifications, qui déterminent les dates et heures d'exécution d'un scénario, les Timers sont utilisés au sein même des scénarios pour gérer des plages horaires, des délais ou des temporisations. Ils permettent d'ajouter une logique temporelle sans avoir à créer de planification dédiée**

## 3. Fonctionnement

Une fois activé dans le scénario :

- le timer démarre automatiquement selon sa configuration
- à chaque échéance, il exécute l’étape cible définie
- plusieurs timers peuvent fonctionner simultanément dans un même scénario

<p class="callout success">Bonnes pratiques :  
- Donner des **noms explicites** à chaque timer pour faciliter le débogage  
- Limiter les intervalles très courts afin d’éviter une surcharge de traitement  
- Bien associer chaque timer à une étape précise pour garder un scénario lisible  
- Eviter les doublons de timers pour des fonctions identiques</p>

# Scénarios modèles

Contrairement aux scénarios préconfigurés qui sont installés par défaut sur le module et peuvent être utilisés immédiatement, les **scénarios modèles** doivent être téléchargés depuis le serveur distant ModLink.  
Une fois importés sur le module, un scénario modèle peut être utilisé tel quel ou bien modifié afin de répondre aux besoins spécifiques de l'installation.

Les scénarios modèles couvrent les **cas d'usage les plus courants** et constituent une solution rapide pour tester les entrées/sorties (I/O), les relais ou certaines fonctions du système.   
Ils intègrent déjà les variables, les widgets et la logique de fonctionnement nécessaires, ce qui permet une **mise en œuvre rapide** sans avoir à créer un scénario à partir de zéro.  
Ils représentent également un excellent support d'apprentissage pour découvrir l'environnement ModLink, comprendre la structure d'un scénario et se familiariser avec les différents blocs de fonction disponibles.

<p class="callout info"><span style="text-decoration: underline;">Objectif des scénarios modèles</span> :  
- Vérifier le bon câblage des entrées et des sorties  
- Tester le fonctionnement des relais  
- Valider la communication entre les modules  
- Faciliter la mise en service</p>

## 1. Scénarios modèles disponibles

Les scénarios préconfigurés sont fournis afin de simplifier la mise en service, les tests fonctionnels et le diagnostic des modules.  
Ils couvrent les cas d’usage standards liés aux entrées, aux relais et à la connectivité.

### 1.1- Scénario variables

<p class="callout success">**Usage :** - ???</p>

### 1.2- Scénario ouvrant

<p class="callout success">**Usage :** - ???</p>

### 1.3- Scénario Test

<p class="callout success">**Usage :** - ???</p>


### 2. Importer un scénario modèle

1. **Accéder au menu Scénario**  
    Depuis l’interface, ouvrez le menu Scénario
2. Importer un scénario  
    Cliquez sur **Importer un scénario**, puis sélectionnez **Import distant**
3. Sélectionner le type d'import  
    Choisissez import local ou import distant
4. Sélectionner le scénario à importer dans la liste des scénarios modèles disponibles
5. Choisir la destination
    
    
    - **Remplacer** : remplace un scénario existant du module
    - **Créer** : génère un nouveau scénario sans affecter les existants
6. Finaliser l’importation  
    Cliquez sur **Importer** pour charger le scénario dans votre interface

Un redémarrage du système est nécessaire afin de prendre en compte la mise à jour du scénario.

Après redémarrage :

- le scénario apparaît dans le bandeau latéral situé à gauche de l’écran,
- les variables, blocs de fonction et widgets associés sont automatiquement disponibles.

<p class="callout info">**Avantages d'un scénario modèle :** - Mise en place immédiate  
- Logique déjà validée  
- Réduction du risque d’erreur</p>

### [3- Modifier un scénario modèle](https://modlink.fr/help/books/2-pio/page/scenarios-modeles "Scénarios modèles")

- Dupliquer un scénario modèle pour créer un scénario personnalisé
- Permet d’adapter la logique aux besoins spécifiques de l’application
- **Modifications courantes :**
    
    
    - Ajout de temporisation ou délai anti-rebond
    - Inversion logique (1 → OFF, 0 → ON)
    - Ajout de conditions supplémentaires (ex. seuils, état réseau, watchdog)

Voir [Créer un scénario personnalisé](https://modlink.fr/help/link/213#bkmrk-page-title)

# Créer un scénario personnalisé

<p class="callout info"><span role="text">Pour créer ou modifier un scénario, il est **recommandé d’utiliser un ordinateur**.  
*L’édition sur téléphone peut entraîner des problèmes d’affichage ou une visibilité limitée des paramètres avancés*</span></p>

### 1- Généralités

Les scénarios personnalisés permettent d'adapter le fonctionnement du module à des besoins spécifiques qui ne sont pas couverts par les scénarios préconfigurés ou les scénarios modèles.   
Ils offrent une grande souplesse pour automatiser des actions en fonction d'événements, de mesures, d'états ou de conditions définies par l'utilisateur.

<p class="callout warning">Avant de commencer un scénario, assurez-vous que :  
- vous disposez des **droits d'accès** nécessaires  
- les **entrées et sorties** sont correctement configurées dans la section « I/O »  
- les **variables associées** sont bien définies</p>

<section class="docs-section svelte-oa2hur" id="bkmrk-1.-pr%C3%A9parer-un-sc%C3%A9na">### 2- Préparer le scénario

Pour créer un scénario personnalisé, il n'est pas nécessaire de partir de zéro. Un scénario préconfiguré ou un scénario modèle peut servir de base de travail. Il suffit alors de modifier les paramètres, les conditions ou les actions existantes afin d'adapter le fonctionnement aux besoins spécifiques de l'installation.   
Cette méthode facilite la prise en main et accélère la création de nouveaux scénarios.

#### 2.1- Modifier un scénario préconfiguré

- Depuis l'accueil, "éditez" un scénario préconfiguré ; cliquer sur "modifier" pour personnaliser les informations du nouveau scénario et "sauvegardez" vos modifications
- Enregistrez et activez le nouveau scénario personnalisé

#### 2.2- Importer et modifier un scénario modèle

Vous pouvez aussi "importez un scénario" depuis une bibliothèque de scénarios modèle sur le serveur distant de ModLink ou bien en local depuis l'ordinateur utilisé.  
 Il faudra adapter et personnaliser les paramètres du scénario modèle à la configuration de l'installation.

- Cliquez sur "import distant" puis choisissez le scénario modèle que vous souhaitez importer
- Cliquer sur "créer un nouveau scénario"

#### 2.3- Construire un nouveau scénario

créer un scénario de toutes pièces pour répondre à un besoin spécifique.

- Depuis le bandeau de gauche, cliquez sur "*nouveau scénario*" puis sur "*éditer*" pour commencer
- ajoutez des blocs de fonction
- configurez les paramètres des blocs
- créez et utilisez les variables
- vérifiez et activez le scénario


</section><section class="docs-section svelte-oa2hur" id="bkmrk-2.-construire-le-flu">##### 2.3.1- Construire le flux

Créez la logique de votre scénario en utilisant les blocs de fonction disponibles dans la barre latérale.  
Repérez les blocs qui correspondent aux actions que vous voulez effectuer :

- **Glissez-déposez** les blocs pour construire votre logique  
    *Utilisez des **blocs de test** pour créer des conditions et des embranchements clairs*
- **Reliez** tous les blocs entre eux via les points de connexion (ronds rouges)
- Ajoutez des **commentaires** dans les champs prévus afin de faciliter la maintenance et la compréhension du scénario
- Vérifiez que la logique est cohérente et complète

<p class="callout info">Disposez les blocs de manière **ordonnée** pour que le f**lux reste clair et lisible** *cela facilitera la compréhension et la maintenance du scénario*</p>

</section><span style="text-decoration: underline;"><span role="text" style="background-color: rgb(241, 196, 15);">Insérer un bloc "Test d’entrée"</span></span>

Ces blocs permettent de vérifier l'état d'une entrée (par exemple un capteur, un interrupteur, un bouton ...).  
Ils agissent alors comme un filtre dans votre scénario. Tout ce qui suit ne se déclenche que si la condition définie est remplie.  
Choisissez parmi :

- un **appui** (simple, double, long…),
- un **test d’état**,
- un **test de changement d’état ...**

<span style="text-decoration: underline;"><span role="text" style="background-color: rgb(241, 196, 15);">Ajouter un bloc de condition "Test variables"</span></span>

Les blocs de "tests" permettent de vérifier des états et de contrôler la logique du scénario avant d’exécuter une action. Ils peuvent porter sur :

- les variables locales,
- les variables distantes d'autres modules,
- l'état des entrées
- l'état des sorties

Types de blocs de test de variables :

- **Test variable simple** : vérifie la valeur actuelle d’une variable,
- **Test changement de variable** : détecte si une variable a changé depuis la dernière lecture,
- **Test variable égale** : compare la valeur d’une variable à une valeur précise

💡 Astuce : Les blocs de tests peuvent avoir plusieurs sorties pour gérer différents chemins selon le résultat du test.

<span style="text-decoration: underline;"><span role="text" style="background-color: rgb(241, 196, 15);">Ajouter un bloc de sortie "Contact sortie"</span></span>

Les blocs de sortie définissent l’action finale ou le résultat du scénario.

Types de sortie disponibles :

- **On / Off / Flip** : activation, désactivation ou inversion de l’état d’un module,
- **Impulsion cyclique** : envoie des impulsions répétées selon un intervalle défini,
- **On / Off après temporisation** : déclenche une action avec délai,
- **BSO** : contrôle des brise-soleil orientables,
- **Ouvrant** : commande d’ouverture ou de fermeture d’un ouvrant (volet, porte, fenêtre)

💡 Astuce : Plusieurs blocs de sortie peuvent être utilisés pour des actions différentes selon les conditions

<span style="text-decoration: underline;"><span role="text" style="background-color: rgb(241, 196, 15);">Ajouter des blocs d’action sur les variables</span></span>

Ces blocs permettent de modifier ou de suivre des variables dans votre scénario.

Types de blocs d’action sur les variables :

- **Action variable** : modifier la valeur d’une variable
- **Incrémenter un compteur** : augmenter la valeur d’une variable compteur
- **Décrémenter un compteur** : diminuer la valeur d’une variable compteur

<span style="text-decoration: underline;"><span role="text" style="background-color: rgb(241, 196, 15);">Ajouter des blocs de régulation du chauffage</span></span>

Ces blocs permettent de piloter et réguler le chauffage dans un scénario.

Types de blocs de régulation :

- **Régulation température consigne** : ajuste la température cible d’une zone
- **Mode chauffage / arrêt** : active ou désactive le chauffage
- **Mode confort / éco / hors gel** : sélectionne un programme prédéfini selon les besoins
- **Pilotage via capteur** : ajuste le chauffage en fonction de la température mesurée, de l’occupation ou d’autres variables


<span style="text-decoration: underline;"><span role="text" style="background-color: rgb(241, 196, 15);">Ajouter des sauts</span></span>

Les blocs de saut permettent de rediriger le flux du scénario vers un autre bloc, sans exécuter la séquence linéaire.

- Placez le bloc exactement à l’endroit où vous souhaitez insérer le "saut",
- Reliez-le au bloc de départ via les **ronds rouges**,
- Vérifiez que le saut ne crée pas de boucle infinie

##### 2.3.2- Insérer et organiser

\- attrapez les différents blocs depuis le bandeau latéral  
\- faites-les glisser vers l’espace de travail dédié et placez-les à l’endroit souhaité

##### 2.3.3- Configurer les blocs

Renseignez les paramètres suivants :  
*- Nom du bloc*   
*- Descriptif*  
*- Choix de l'entrée / sortie à tester*  
*- Module associé*  
*- Scénario*  
*- Définissez la condition : par exemple `ON`, `OFF`, ou autre état spécifique selon votre matériel*  
\- *Condition par défaut si tout est faux*

##### 2.3.4- Effectuer les connexions

<p class="callout success">chaque scénario doit former une **boucle fonctionnelle complète** :  
<span style="color: rgb(22, 145, 121);">**entrée → test / logique → sortie / action → mise à jour variable d’état**</span></p>

Il est impératif de refermer la boucle fonctionnelle : toute commande générée par un bloc de sortie doit avoir un impact sur un état ou une variable réutilisable par un bloc d’entrée, garantissant ainsi un fonctionnement cohérent du scénario.  
Un scénario est structuré sous forme de <span style="mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">boucles logiques</span> :

1. Entrée dans une boucle
2. Tests (servant de déclencheurs)
3. Tests de conditions
4. <span style="text-indent: -18pt;">Actions</span>
5. <span style="text-indent: -18pt;">Retour  
    - </span><span style="text-indent: -18pt;">dans la même boucle  
    - d</span><span style="text-indent: -18pt;">ans une autre boucle</span>

- reliez les blocs entre eux pour définir la logique de fonctionnement du scénario, identifier les points de connexion (ronds de couleur) - chaque bloc possède des entrées et des sorties   
    - Relier les blocs entre eux  
      Cliquez sur la sortie d’un bloc et faites glisser vers l’entrée du bloc suivant.  
     Reliez la sortie du bloc aux actions à exécuter si la condition est vraie et éventuellement à une autre sortie si la  
     condition est fausse  
    \- Vérifier la logique, les paramètres et les liaisons (assurez-vous que le flux respecte la séquence souhaitée et que tous les blocs nécessaires sont connectés)  
    - Vérifier que le scénario forme une boucle complète

##### 2.3.5- Tester le scénario

Sauvegardez votre scénario et redémarrez le module pour synchroniser les scénarios et appliquer les modifications.  
Testez le comportement du scénario via les widgets ou les entrées physiques reliées

<section class="docs-section svelte-oa2hur" id="bkmrk-1.-pr%C3%A9parer-un-sc%C3%A9na-2"></section><section class="docs-section svelte-oa2hur" id="bkmrk-2.-construire-le-flu-2"><p class="callout info">**Un **redémarrage**** du module est nécessaire pour appliquer un nouveau scénario</p>

</section><p class="callout success"></p>


La **barre d’icônes de visualisation** affichée sur la droite de l'écran permet de :  
\- agrandir la vue  
\- réduire la vue  
\- recentrer l’affichage sur la zone des blocs scénario  
\- verrouiller et déverrouiller les blocs  
\- réinitialiser l'édition de blocs


[![Scenario2.png](https://modlink.fr/help/uploads/images/gallery/2026-02/scaled-1680-/scenario2.png)](https://modlink.fr/help/uploads/images/gallery/2026-02/scenario2.png)

# Scénarios modèles*** (vérif si utilisé)

<p class="callout info">Les **scénarios modèles** couvrent les cas d'usages les plus courants, ce sont des outils rapides et fiables pour tester les I/O et les relais.  
Ils permettent de tester rapidement le fonctionnement du système sans avoir à créer une logique de commande complète.  
Ces scénarios **peuvent être utilisés tels quels,** **ou bien modifiés** pour réponde à des besoins spécifiques.</p>

## 1. Scénarios modèles disponibles

Les scénarios modèles sont fournis afin de simplifier la mise en service, les tests fonctionnels et le diagnostic des modules.  
Ils couvrent les cas d’usage standards liés aux entrées, aux relais et à la connectivité.

## 1.1 Test des entrées (Inputs)

### Lecture d’entrée

- Surveillance de l’état d’une entrée digitale
- Affichage temps réel de l’état (0 / 1)
- Historisation des changements d’état

<p class="callout success">**Usage :** - Validation du câblage  
- Test capteur, bouton, contact sec</p>

## 1.2 Test des relais (Outputs)

### Commande manuelle de relais

- Activation / désactivation manuelle d’un relais
- Commande depuis l’interface

<p class="callout success">**Usage :** - Test du relais  
- Validation actionneur (lampe, moteur, contacteur)</p>

### Commande temporisée de relais

- Activation du relais pendant une durée définie
- Retour automatique à l’état OFF

<p class="callout success">**Usage :** - Test de temporisation  
- Simulation d’impulsion</p>

## 1.3 Test Entrée → Relais (I/O binding)

### Entrée digitale → relais (mode suivi)

**Scénario standard**

- Entrée = 1 → relais ON
- Entrée = 0 → relais OFF

<p class="callout success">**Usage :** - Test complet DI/DO  
- Validation bout-en-bout  
- Commissioning</p>

### Entrée digitale → relais (logique inversée)

- Entrée = 1 → relais OFF
- Entrée = 0 → relais ON

<p class="callout success">**Usage :** - Cas de sécurité  
- Adaptation logique terrain</p>

## 1.4 Scénarios conditionnels

### Seuil sur entrée analogique

- Si valeur &gt; seuil → activer relais
- Si valeur &lt; seuil → désactiver relais

<p class="callout success">**Usage :** - Alarmes  
- Régulation simple</p>

### Entrée → relais avec temporisation

- Entrée = 1
- Délai configurable
- Activation relais

<p class="callout success">**Usage :** - Anti-rebond  
- Séquencement simple</p>

## 1.5 Scénarios de connectivité et supervision

### Test de connectivité réseau

- Vérification connexion Wi-Fi / Ethernet
- Test ping ou heartbeat
- Remontée état connecté / déconnecté

<p class="callout success">**Usage :** - Diagnostic réseau  
- Validation accès plateforme</p>

### Heartbeat / watchdog

- Envoi périodique d’un message de vie
- Mise en sécurité du relais en cas de perte de communication

<p class="callout success">**Usage :** - Sécurité  
- Supervision industrielle</p>

# Planification

La planification permet d'automatiser l'exécution des scénarios selon des dates, des horaires ou des périodes prédéfinis.  
<span>Elle offre une gestion centralisée des </span>**plages de fonctionnement récurrentes** pouvant être utilisées par un ou plusieurs scénarios.

**Par exemple :**

- **Tous les jours à 08h00**
- **Du lundi au vendredi à 18h00**
- **Les jours fériés à 10h00**

# Généralités

**La planification** permet de programmer l'exécution automatique d'un scénario à des dates et heures définies. Elle permet de déclencher un scénario selon un calendrier, de manière ponctuelle ou récurrente, sans intervention de l'utilisateur.  
Les événements peuvent être programmés selon différentes périodicités :

- quotidienne
- hebdomadaire
- mensuelle
- annuelle

Il est également possible d’adapter les programmations en fonction du type de jour :

- Jours ouvrés
- Jours fériés
- Périodes spéciales (vacances, fermetures exceptionnelles ...)

Cette flexibilité permet de créer des planifications adaptées aux besoins récurrents comme aux situations particulières.

Les actions configurées dans ce menu sont **exécutées automatiquement** par le module aux **dates et heures définies**.

<p class="callout info">Contrairement aux **timers**, qui gèrent des délais ou des temporisations directement au sein d'un scénario, les programmations horaires sont configurées indépendamment et peuvent être réutilisées par plusieurs scénarios  
</p>

# Créer une planification, un jour férié ou un calendrier spécial

En bas de page, le bouton "<span style="background-color: rgb(53, 152, 219);">*+ Ajouter*</span>" permet de créer :

- une **nouvelle programmation**
- un **jour férié**
- une **période spéciale** (vacances, fermeture exceptionnelle, maintenance ...)

Les jours fériés et les périodes spéciales peuvent être pris en compte dans les règles de planification afin d'adapter automatiquement le comportement du module à ces périodes particulières.

[![Capture d’écran 2026-06-19 154555.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-19-154555.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-19-154555.jpg)

### 1- Ajouter une nouvelle programmation

Sélectionnez l'onglet "*Programmations*", cliquez sur le bouton "*<span style="background-color: rgb(53, 152, 219);">+</span><span style="background-color: rgb(53, 152, 219);">Ajouter</span>***"**

Renseignez les informations demandées dans la fenêtre qui s'affiche

[![Capture d’écran 2026-06-19 143351.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-19-143351.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-19-143351.jpg)

- **Libellé** de la programmation
- **Type de jour** (classique ou jour férié)
- **L'heure de déclenchement**
- **Type de récurrence** (quotidienne, hebdomadaire, mensuelle ou annuelle)
- **Sélectionnez les jours concernés**
- **Horaire d'exécution**
- **Scénario à exécuter**
- **Variable à mettre à jour**
- La **valeur à appliquer** lors du déclenchement de l'événement

Une fois enregistrée, la programmation sera exécutée automatiquement par le module aux dates et horaires définis.

### 2- Ajouter un jour férié

Dans l'onglet "*jours fériés"*, il est possible d'ajouter de nouveaux jours fériés en cliquant sur le bouton "<span style="background-color: rgb(53, 152, 219);">*+ Ajouter"*</span>.

Renseignez les informations demandées dans la fenêtre qui s'affiche.

[![Capture d’écran 2026-06-19 153834.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-19-153834.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-19-153834.jpg)

Les jours fériés préconfigurés sont fournis par défaut avec le système et ne peuvent pas être supprimés.   
Ils peuvent néanmoins être **désactivés** à tout moment depuis la liste des jours fériés afin d'adapter le calendrier aux besoins de l'installation.

### 3- Ajouter une période spéciale

Depuis l’onglet *« Période spéciale »*, il est possible de définir des périodes particulières (par exemple, les vacances).   
Pour cela, cliquez sur <span style="background-color: rgb(53, 152, 219);">*« + Ajouter »*</span>, puis renseignez les informations dans la fenêtre qui s’ouvre.

<div class="z-0 flex min-h-[46px] justify-start" id="bkmrk--5">[![Capture d’écran 2026-06-19 155435.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-19-155435.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-19-155435.jpg)</div><div class="mt-3 w-full empty:hidden" id="bkmrk--6"><div class="text-center"><div>  
</div></div></div>

# Activer, désactiver, modifier et supprimer une planification

L'**ensemble des planifications configurées** s'affiche en bas de la page à la suite du calendrier.  
Chaque programmation peut être activée ou désactivée à tout moment à l'aide du **bouton bleu** situé à sa gauche.

Il est également possible de modifier une programmation existante (icône pinceau) ou de la supprimer (icône corbeille).

![Capture d’écran 2026-06-19 125831.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-19-125831.jpg)

# Consulter la programmation

Lorsque vous accédez au menu "*Planification***"**, une vue du calendrier du mois en cours s'affiche permettant de repérer rapidement les événements planifiés.  
Les flèches de navigation situées en haut à droite permettent d’afficher les programmations des mois précédents ou suivants.  
  
Les jours comportant une programmation sont **clairement identifiés**.   
Une couleur spécifique est associée à chaque type de récurrence (quotidienne, hebdomadaire, mensuelle ou annuelle), tandis que le nombre affiché indique le total des planifications prévues pour la journée.

Un simple survol de la planification permet de consulter l’ensemble des événements programmés pour la journée.

[![Capture d’écran 2026-06-19 125804.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-19-125804.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-19-125804.jpg)

# Widgets

# Présentation

Un widget est un élément du tableau de bord qui permet d'**interagir** avec le système pour **lire ou modifier une variable.**

On distingue deux types de widgets :

- **les widgets d'action**  
    ils permettent d’envoyer des commandes d'action directement depuis le tableau de bord (par exemple un interrupteur pour allumer et éteindre un appareil).
- **les widgets d'états** ils permettent de visualiser des états ou des mesures sans possibilité d'interaction.

Selon le type de widget, différentes fonctionnalités peuvent être disponibles :

- affichage d’état,
- commande manuelle,
- variation,
- visualisation de mesures,
- retour d’information,
- pilotage d’équipements

### 1- Widgets d'action

- **Interrupteur** : permet de commander une sortie en ON/OFF.  
    *exemple : éclairage, relais*
- **Variateur** : permet d’ajuster une valeur sur une plage définie  
    *exemple : variation d’intensité lumineuse, consigne*
- <span style="color: rgb(34, 34, 34);">**Variateur d’ouvrant** : p</span>ermet de piloter la position d’un ouvrant (volet, BSO…)  
    *exemple : ouverture partielle, fermeture complète*
- <span style="color: rgb(34, 34, 34);">**Switch à glissière** : p</span>ermet de basculer entre plusieurs états  
    *exemple : auto / manuel / arrêt*

### 2- Widgets d'états

- <span role="text">**Capteur** (affichage de valeur) : a</span>ffiche une mesure issue d’un capteur  
    *exemple : température, humidité, niveau*
- **Voyant d’état** : indique l’état d’une variable  
    *exemple : marche/arrêt, défaut, alarme*

### <span role="text">3- Widgets avancés</span>

- <span style="color: rgb(34, 34, 34);">**Régulation** : p</span>ermet de piloter automatiquement un équipement en fonction d’une consigne et d’une mesure  
    *exemple : régulation de température, gestion de ventilation*

<p class="callout success">**💡 [Accès direct en mode application sur Smartphone](https://modlink.fr/help/link/206#bkmrk-3--acc%C3%A8s-en-mode-app)**   
Permet un accès rapide aux widgets pour piloter les équipements et consulter leur état.  
L’utilisateur peut **rester connecté** afin d’accéder aux widgets sans avoir à s’authentifier à chaque utilisation.</p>

# Gestion des widgets

Les widgets sont administrés depuis la page d'accueil du tableau de bord en cliquant le bouton **Gérer les widgets**, ou directement depuis le menu *"Widgets".*   
Ce gestionnaire permet d'ajouter, de modifier, de réorganiser et de supprimer les widgets.

### 1- Créer un widget

<p class="callout warning">La création de widgets est réservée aux utilisateurs disposant des droits appropriés</p>

1. 1. Apuyez sur <span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">+ Ajouter un widget</span>
    2. Une nouvelle fenêtre s'ouvre, configurez les paramètres du widget :
        
        
        - **Nom** du widget ;
        - **Variable d'entrée** associée ;
        - **Scénario** à associer (si applicable) ;
        - **Type de widget**.
        
        Les autres champs sont facultatifs et permettent de personnaliser l'affichage du widget, notamment :
        
        
        - son **emplacement** ;
        - son **icône** ;
        - l'**unité** de la valeur affichée

[![Capture d’écran 2026-07-28 130139.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-28-130139.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-28-130139.jpg)

Le nouveau widget est alors ajouté au tableau de bord.

<p class="callout success"><span style="text-decoration: underline;">Bonnes pratiques</span> :  
- Limiter le nombre de widgets afin de conserver une interface lisible  
- Donner un nom explicite à chaque widget  
- Réserver les widgets techniques aux utilisateurs expérimentés  
- Consultez régulièrement les widgets d'état pour contrôler le bon fonctionnement du système et détecter rapidement toute anomalie </p>

#### 1.1- Modifier ou supprimer un widget

Une fois le widget créé, vous pouvez à tout moment le modifier ou le supprimer

- - Pour **modifier** un widget, cliquez sur l'icône **Modifier**, apportez les modifications souhaitées, puis enregistrez-les
- [![Capture d’écran 2026-07-30 142750.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-30-142750.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-30-142750.jpg)
    - Si vous n'avez plus besoin d'un widget, cliquez sur l'icône **Supprimer**, puis confirmez l'opération  
        Le widget est alors retiré du gestionnaire et ne sera plus affiché sur le tableau de bord

[![Capture d’écran 2026-07-30 130927.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-30-130927.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-30-130927.jpg)

## 2- Configurer les mappages d'état et d'action

<p class="callout info">**Le mappage d'état** permet de **personnaliser l'affichage des widgets d'état** en associant <span style="text-decoration: underline;">à chaque valeur d'une variable</span> une **icône**, une **couleur** et un **libellé**.   
*Il permet ainsi de représenter visuellement les différents états de la variable de manière adaptée à votre application*</p>

<p class="callout info">**Le mappage d'action** permet d'**associer chaque valeur lue à la commande de sortie** à exécuter.   
*Le **libellé** décrit l'action qui sera envoyée lorsque cette valeur est sélectionnée ou reçue*</p>

- Pour définir le mappage, cliquez sur l’icône **Réglages** du widget  
    Une fenêtre de configuration s’ouvre

[![Capture d’écran 2026-07-28 173733.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/vjvcapture-decran-2026-07-28-173733.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/vjvcapture-decran-2026-07-28-173733.jpg)

- Pour ajouter une correspondance, cliquez sur **Ajouter un état / Ajouter un mappage** (selon le type de widget)


[![Capture d’écran 2026-07-30 113417.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-30-113417.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-30-113417.jpg)

- Cliquez sur chaque état / action nouvellement créé pour saisir les paramètres de configuration

[![Capture d’écran 2026-07-30 115244.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-30-115244.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-30-115244.jpg)

- Paramétrez un <span style="text-decoration: underline;">affichage visuel</span> pour chaque état configuré 
    - **Icône** : symbole affiché dans le widget ;
    - **Couleur** : couleur associée à cet état ;
    - **Libellé** : texte affiché pour identifier l’état
- Paramétrez un <span style="text-decoration: underline;">libellé personnalisé</span> pour chaque action configurée

[![Capture d’écran 2026-07-30 120040.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/DXJcapture-decran-2026-07-30-120040.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/DXJcapture-decran-2026-07-30-120040.jpg)


<p class="callout warning">Le mappage est prioritaire sur la configuration générale des états.   
Lorsqu’un état possède un mappage personnalisé, ses paramètres d’affichage remplacent ceux définis dans la configuration des états  
</p>

### 3- Outils de gestion des widgets

Dépliez le widget pour afficher l'ensemble des informations, notamment tous les états associés  
Plusieurs fonctions facilitent également l'administration des widgets.  
Vous pouvez rechercher un widget, le filtrer selon son type, réorganiser son affichage, l'exporter ou l'importer afin de simplifier sa gestion et son déploiement.

- **Rechercher un widget**  
    Permet de retrouver rapidement un widget en saisissant tout ou partie de son nom dans le champ de recherche
- **Filtrer les widgets**  
    Permet d'afficher uniquement les widgets d'un type donné (interrupteur, interrupteur à glissière, bouton, widget d'état, etc.) afin de faciliter leur gestion
- **Réorganiser les widgets**  
    Permet de modifier l'ordre d'affichage des widgets dans le gestionnaire ou sur le tableau de bord
- **Exporter des widgets**  
    Permet d'exporter un ou plusieurs widgets afin de les sauvegarder ou de les réutiliser sur une autre installation
- **Importer des widgets**  
    Permet d'importer des widgets afin de les intégrer rapidement dans une nouvelle configuration

# Widgets préconfigurés

Les widgets préconfigurés sont fournis par défaut avec le système afin de faciliter la mise en service et l’exploitation de l’installation. Ils permettent d’afficher et de piloter rapidement les principales fonctions du module sans nécessiter de configuration avancée.  
Ils apparaissent sur la page d’accueil du tableau de bord ou bien depuis le menu Widget.

Les widgets préconfigurés peuvent être utilisés tels quels ou adaptés selon les besoins de l’installation et les autorisations accordées à l’utilisateur.

#### 1- Widgets disponibles

Deux widgets préconfigurés sont disponibles par défaut :

- un widget de type **switch ON/OFF** permettant le pilotage d’une sortie bistable
- un widget de type **bouton** permettant l’envoi d’une commande impulsionnelle

Ces widgets permettent une mise en service rapide des fonctions de commande principales sans configuration supplémentaire.

L’accès, la création et la modification des widgets dépendent des droits attribués à l’utilisateur ainsi que de son rôle.

# Paramètres complémentaires

# Entrées et sorties

L'interface permet de **configurer** et de **visualiser en temps réel l'état** de chaque entrée et de chaque sortie, facilitant le diagnostic, la mise en service et le suivi du fonctionnement du module.

### 1- Configurer les entrées et les sorties

Les entrées et les sorties du module peuvent être visualisées et configurées depuis le menu *« I/O »*, à la suite des variables du système.  
Pour chaque entrée et sortie, les paramètres suivants peuvent être personnalisés :

- **Nom** : permet d'attribuer un nom explicite à l'entrée ou à la sortie afin de faciliter son identification
- **Accessible** : lorsque cette option est cochée, l'I/O est diffusé et devient visible sur le réseau
- **Commentaire** : ce champ est renseigné par défaut avec la référence de la borne à laquelle l'entrée ou la sortie est raccordée. Il peut être modifié pour ajouter des informations complémentaires

### [![Capture d’écran 2026-06-12 122947.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-12-122947.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-12-122947.jpg)

#### 1.1- Paramétrage spécifique des entrées analogiques en double canal

Lorsqu'une entrée est utilisée en mode analogique :

1. Cochez l'option **« Analogique »**
2. Si nécessaire, cochez **« Séparer en 2 entrées A et B »** afin de créer deux canaux analogiques distincts
3. Activez l'option **« Valeur moyenne »** pour lisser les mesures, puis renseignez la **fenêtre de moyenne** en millisecondes (durée pendant laquelle il faut faire la moyenne)
4. Renseignez les **valeurs minimale et maximale** correspondant à la plage de mesure du capteur (par exemple : -20 °C à +40 °C pour une sonde de température)
5. Ajustez l'**offset** si nécessaire afin de corriger un éventuel décalage de mesure observé sur le capteur

Une fois la configuration terminée, appuyer sur "<span style="background-color: rgb(220, 40, 197);">Sauvegarder</span>" pour enregistrez vos modifications.   
Chaque entrée peut être *sauvegardée individuellement* ou l'ensemble de la configuration peut être enregistré en une seule opération à l'aide du bouton *« <span style="background-color: rgb(45, 194, 107);">Sauvegarder toutes les I/O </span>».*

Pour diffuser les "I/O" sur le réseau, cochez l'option *« Diffuser sur le réseau (mDNS) après sauvegarde »* avant d'enregistrer la configuration. Les I/O marqués comme *« Accessible »* seront alors publiés sur le réseau et pourront être découverts et utilisés par les équipements ou services compatibles. Un redémarrage du module est nécessaire pour que les changements soient pris en compte.

Après avoir enregistré les modifications et activé leur diffusion, un redémarrage du module est nécessaire pour que les changements soient pris en compte.

<p class="callout warning">L'utilisation d'une entrée en **mode analogique** nécessite une configuration préalable dans le menu *« I/O ».*   
L'option *« Séparer en 2 entrées A et B »* requiert un **câblage spécifique du capteur** [Câblage d'une entrée analogique en mode double canal](https://modlink.fr/help/link/179#bkmrk--4)  
</p>

#### 1.2- Etat des relais

Par défaut, les relais 1 et 2 sont éteints au démarrage du module.

Pour modifier la configuration par défaut des relais,

- accédez au menu **Paramètres &gt; Informations &gt; Sorties**
- puis, dans le menu "**État par défaut des relais"**, définissez l'état à appliquer au prochain démarrage.   
    La modification sera effective après un redémarrage du module.

### 2- Vérifier le fonctionnement des entrées et sorties

Le **câblage des entrées et des sorties** peut être vérifié directement sur le module à l'aide des voyants d'état [Etat des voyants](https://modlink.fr/help/link/179#bkmrk-%C2%A0) . Ceux-ci permettent de contrôler visuellement l'activation des entrées et des relais et constituent un moyen simple de valider les raccordements réalisés avant toute phase de configuration ou de mise en service.

Le menu *« I/O »* permet de **contrôler en temps réel l'état** des entrées et des sorties du module à travers **les variables associées.**

Lorsqu'une action est effectuée sur une entrée - par exemple en réalisant une boucle ou en activant un contact - la valeur de la variable correspondante est mise à jour instantanément dans l'interface.   
Cette visualisation permet de vérifier rapidement le bon fonctionnement de l'entrée et de valider sa configuration.

De la même manière, l'état des sorties peut être observé afin de confirmer leur activation ou leur désactivation et de faciliter les opérations de mise en service et de diagnostic.

[![Capture d’écran 2026-06-12 151418.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-12-151418.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-12-151418.jpg)

# Comptes utilisateurs

<p class="callout success">Le système prévoit :  
**- 5 comptes "Installateur"  
- 10 comptes "Utilisateur"**   
*attribuer les autorisations et niveaux d’accès en fonction du rôle défini*   
Le **rôle "Installateur"** offre un accès étendu aux fonctions de configuration et de maintenance :  
- changement de nom d’appareil  
- gestion des utilisateurs  
- gestion des sauvegardes  
Le rôle **"Utilisateur"** donne un accès limité à l’exploitation et à la supervision du module :  
</p>

Pour accéder aux paramètres des comptes :

- Ouvrez le menu **Paramètres**
- Sélectionnez l'onglet **Sécurité**
- Cliquez sur **Accès**
- Dans "*Authentification et utilisateurs*" cliquez sur le bouton **Gérer**

**[![Capture d’écran 2026-06-04 173545.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-04-173545.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-04-173545.jpg)**

> ⚠️ L'accès aux fonctions du menu « *Paramètres* » est déterminé par le **rôle** et les **permissions** attribués à chaque utilisateur.  
> Cette gestion des droits permet de sécuriser la configuration et l'exploitation du module tout en assurant une répartition claire des responsabilités entre les différents profils d'utilisateurs

### 1- Créer un compte

Dans la fenêtre "créer un utilisateur"

1. Renseignez un **identifiant** et un **mot de passe**
2. Sélectionnez le rôle souhaité (**Installateur** ou **Utilisateur**)
3. Cochez les **permissions** et les **accès aux pages** de l'interface que vous souhaitez autoriser
4. Cliquez sur **Créer l'utilisateur**

[![Capture d’écran 2026-06-04 174055.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-04-174055.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-04-174055.jpg)

<p class="callout success"><span data-end="966" data-start="803">L</span>a création d’un **compte Installateur** nécessite des droits spécifiques.   
Assurez-vous de disposer des autorisations nécessaires avant de créer ce type de compte.  
  
Lors de la création d'un nouveau compte installateur, seules les *permissions minimales* requises sont activées par défaut (mise à jour du firmware, changement de nom et connexion OPC UA).   
Aucun autre accès aux pages de l'interface n'est accordé tant qu'il n'a pas été *explicitement autorisé par l'administrateur* </p>

<p class="callout warning">Pour des raisons de **sécurité**, il est recommandé de standardiser les rôles, limiter les droits administratifs et vérifier régulièrement les comptes inactifs</p>

### <span role="text">2- Afficher les comptes</span>

La **liste des comptes utilisateurs** apparaît directement sous le bloc **« Créer un utilisateur »**.  
Elle permet de visualiser rapidement toutes les informations des comptes existants, leurs rôles et leurs permissions.

[![Capture d’écran 2026-06-11 121359.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-11-121359.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-11-121359.jpg)

### <span role="text">3- Gestion des comptes</span>

> <span role="text">⚠️ <span style="color: rgb(52, 73, 94);">Les actions disponibles dépendent du rôle et des droits qui ont été attribués</span></span>

#### <span role="text">3.1- Modifier un compte</span>

Selon les droits d'accès, il est possible de modifier l'identifiant, le mot de passe, le rôle, les permissions ainsi que les pages accessibles pour un compte utilisateur.

#### 3.2- Supprimer un compte

Seuls les comptes disposant des droits nécessaires peuvent être supprimés. La suppression est définitive et entraîne la perte de toutes les permissions associées.

# Modifier la configuration WiFi

### <span style="color: rgb(68, 68, 68);">1- Le module est toujours connecté à Internet</span>

Si le module est encore connecté au réseau Wi-Fi et accessible depuis l'interface, la modification de la configuration Wi-Fi peut être réalisée directement depuis les paramètres du module.

Accédez au menu "*Paramètres***"**, puis à l'onglet "*Connectivité",* dans la section "Connexion Internet" cliquez sur le bouton "<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">*Configurez*</span>"  
Vous pourrez alors scanner les réseaux WiFi à proximité, en sélectionner un nouveau puis renseigner les informations de connexion correspondantes.

[![Capture d’écran 2026-06-22 162120.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-22-162120.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-22-162120.jpg)

### [![Capture d’écran 2026-06-22 163644.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-22-163644.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-22-163644.jpg)

### 2- Le module n'est plus connecté à Internet

<p class="callout info">Le voyant Wi-Fi du module clignote en vert s'il n'est plus connecté à Internet</p>

Si le module n'est plus connecté au réseau Wi-Fi (suite à un changement de box Internet, à la modification du mot de passe ou encore au déplacement du module ...), alors **il n'est pas possible de modifier la configuration à distance.**   
La nouvelle configuration Wi-Fi devra être réalisée en local afin de reconnecter le module au réseau.

- Activez le Wi-Fi dans les paramètres de l'appareil utilisé pour la configuration du module (Smartphone, ordinateur, tablette ...)
- Dans la liste des réseaux sans fils disponibles, sélectionnez celui du module que vous voulez configurer.  
    <span style="color: rgb(52, 73, 94);">Le SSID du module apparait sous la forme "</span>***<span style="background-color: rgb(206, 212, 217);">2pioXXXX</span>**"*    
    un message "réseau non sécurisé peut s'afficher et c'est normal.  
    <span style="color: rgb(52, 73, 94);">Une fenêtre peut apparaître aussi pour indiquer que le réseau Wi-Fi sélectionné n'est pas connecté à Internet ; il faut rester en Wi-Fi et </span>conserver la connexion
- Si la connexion est validée, le réseau 2pioXXXX apparait comme étant le réseau actif avec les informations "connecté sans internet / non sécurisé" (comportement normal)
- Connectez-vous en local à l'interface Web du module **2pioXXX.local** Une fois connecté, allez dans le menu « *Paramètres* », cliquez sur l’onglet « *Connectivité* » puis dans la section   
    « *Connexion Internet* », appuyer sur le bouton « <span style="color: rgb(0, 0, 0);">*<span style="background-color: rgb(53, 152, 219);">Configurer</span>*</span> »

[![Capture d’écran 2026-06-25 143757.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-143757.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-143757.jpg)

- Cliquez ensuite sur "<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">*Scanner les réseaux*</span>"

   
[![Capture d’écran 2026-06-25 142635.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-142635.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-142635.jpg)

- La liste des réseaux disponibles s'affiche en bas de page  
    Sélectionnez le réseau que le module utilisera pour se connecter  
    *Vérifiez que la qualité du signal réseau est suffisante pour garantir une connexion stable du module (à minima 25 %)*
- Saisissez le mot de passe du réseau puis appuyez sur "<span style="background-color: rgb(53, 152, 219); color: rgb(0, 0, 0);">*Appliquer*</span>" pour valider la configuration  
    *Le voyant "Wi-Fi mode" passe en rouge (connecté à Wi-Fi) puis en violet fixe (tunnel SSH actif).*  
    *S'il y a un problème de connexion au Wi-Fi (erreur de mot de passe ou signal faible), alors le voyant continue de clignoter en vert et la page "portail captif" devrait de nouveau s'afficher*

*[![Capture d’écran 2026-06-25 142731.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-25-142731.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-25-142731.jpg)*


<p class="callout info">Le module devient **accessible à distance** une fois la configuration du Wi-Fi effectuée.  
*Il cesse alors de fonctionner en mode point d'accès (routeur) et n’apparaît plus sur la liste des réseaux disponibles*</p>

Pour la **connexion à distance**, Modlink peut utiliser :

- le réseau Wi-Fi local
- un réseau Wi-Fi indépendant (souvent dédié aux IoT)
- un routeur 4G


<p class="callout warning">*<span style="text-decoration: underline;">Attention</span>* :  
Le module utilise exclusivement les paramètres Wi-Fi enregistrés lors de la configuration initiale (SSID et mot de passe).  
En cas de modification du SSID et/ou du mot de passe du réseau, **la reconnexion automatique ne sera plus possible** et une reconfiguration du module sera requise  
  
**réseau local dédié = plus de sécurité**  
*fonctionne même en cas de changement des paramètres du réseau Wi-Fi local*</p>

# Protocoles de communication et interopérabilité

<details id="bkmrk-pr%C3%A9requis-pour-le-pa"><summary>Configuration préalable : exposition des variables</summary>

Avant de poursuivre la configuration de l'intégration, **exposez toutes les variables qui devront être échangées avec Modbus, OPC UA ou Home Assistant.**   
Sans cette configuration, les variables resteront internes au module et ne seront pas accessibles depuis les systèmes externes

</details>### 1- Intégration ModBus

Modbus est un **protocole de communication industrie**l ouvert et largement utilisé pour l'échange de données entre des équipements d'automatisation tels que des automates, contrôleurs, capteurs, compteurs ou systèmes de supervision.

#### 1.1- Activation de l'accès Modbus distant

Pour autoriser l'échange de données via Modbus à distance :

- Ouvrez le menu "*Paramètres*"

[![Capture d’écran 2026-06-23 145818.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-145818.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-145818.jpg)

- Sélectionnez l'onglet "*Connectivité*" puis cliquez sur le bouton "*Configurer*"

[![Capture d’écran 2026-06-23 145604.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-145604.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-145604.jpg)

- Une nouvelle fenêtre s'affiche alors, dans "*Commande Modbus"*, activez l'option "*Modbus distant*"

[![Capture d’écran 2026-06-23 144859.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-144859.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-144859.jpg)

Une fois cette option activée, les échanges de données Modbus à distance sont autorisés sur le module.

### 2- Intégration Home Assistant

Home Assistant est une **plateforme open source de domotique** permettant de centraliser et d'automatiser la gestion de nombreux équipements connectés au sein d'une interface unique.

Le module peut être connecté à Home Assistant afin de permettre son pilotage et sa supervision depuis une interface domotique centralisée.   
Une fois l'intégration configurée, les équipements, mesures et commandes du module sont automatiquement accessibles dans Home Assistant et peuvent être utilisés dans des tableaux de bord, automatisations et scénarios personnalisés.

#### 2.1- Configuration depuis l'interface ModLink

- Ouvrez le menu "*Paramètres*"
- Sélectionnez l'onglet "*Connectivité*"
- Choisissez "*Home Assistant*"
- Cliquez sur le bouton <span style="background-color: rgb(53, 152, 219);">Configurer</span>

[![Capture d’écran 2026-06-23 150230.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-150230.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-150230.jpg)

Vous pourrez alors accéder aux paramètres nécessaires à l'intégration du module dans Home Assistant.

#### 2.2- Ajout du module dans Home Assistant

- Dans Home Assistant, ouvrez le menu *"Paramètres"* puis "*Appareils et services*"
- Dans la barre de recherchez tapez ALCANTE / module Alcante

[![Capture d’écran 2026-06-23 154953.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/XDecapture-decran-2026-06-23-154953.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/XDecapture-decran-2026-06-23-154953.jpg)

Deux méthodes d'ajout sont alors possibles :

##### <span style="text-decoration: underline;">Découverte automatique</span>

Home Assistant lance automatiquement une recherche des modules présents sur le réseau local.

[![Capture d’écran 2026-06-23 161150.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-161150.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-161150.jpg)

Sélectionnez le(s) module(s) que vous souhaitez ajouter

[![Capture d’écran 2026-06-23 161257.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-161257.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-161257.jpg)

Un **code de validation à 6 chiffres** s'affiche dans l'interface ModLink.

[![Capture d’écran 2026-06-23 151928.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-151928.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-151928.jpg)

Saisissez ce code dans la fenêtre de configuration de Home Assistant afin de confirmer l'intégration.

[![Capture d’écran 2026-06-23 151944.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-151944.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-151944.jpg)

Une fois la validation effectuée, le module est ajouté à Home Assistant et ses équipements deviennent accessibles pour la supervision, le pilotage et les automatisations.

##### <span style="text-decoration: underline;">Configuration manuelle</span>

Si le module n'est pas détecté automatiquement, il est possible de procéder à une configuration manuelle.

Lors de l'ajout de l'intégration, il faut renseignez la **clé API** du module.   
Une fois la clé validée, Home Assistant établit la connexion avec le module l'ajoute automatiquement.

[![Capture d’écran 2026-06-23 153043.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-153043.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-153043.jpg)

La **fréquence de rafraîchissement** détermine l'intervalle entre chaque mise à jour des variables envoyées à Home Assistant. Cette durée est configurable en secondes afin d'adapter la réactivité du système aux besoins de l'installation.

### 3- Intégration OPC UA

OPC UA (Open Platform Communications Unified Architecture) est un protocole de communication standardisé permettant l'échange sécurisé de données entre différents équipements et logiciels de supervision.

Dans le **domaine de la GTB** (Gestion Technique du Bâtiment), OPC UA facilite l'interconnexion entre les systèmes de contrôle, de supervision et les équipements techniques du bâtiment. Il permet de centraliser les informations, de superviser les installations et d'échanger des données de manière fiable et sécurisée.

L'intégration OPC UA permet au module de mettre à disposition ses variables, états et mesures auprès des systèmes GTB compatibles afin de faciliter la supervision et le pilotage de l'installation.

#### 3.1- Activation du serveur OPC UA

- Ouvrez le menu "Paramètres"
- Sélectionnez l'onglet "Connectivité"
- Dans la section "OPC UA", cliquez sur le bouton <span style="background-color: rgb(53, 152, 219);">Configurer</span>

<span style="background-color: rgb(53, 152, 219);">[![Capture d’écran 2026-06-23 150230.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-150230.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-150230.jpg)</span>

- Dans la fenêtre qui s'ouvre, activez l'option **Serveur**

**[![Capture d’écran 2026-06-23 171359.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-171359.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-171359.jpg)**

Les indicateurs **Activé** et **Actif** s'affichent alors pour confirmer que le serveur distant est opérationnel et accessible via OPC UA.

[![Capture d’écran 2026-06-23 170217.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-170217.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-170217.jpg)

<p class="callout warning">**Le tunnel SSH est partagé entre l'accès distant ModLink et l'accès OPC UA distant** *- il ne peut être utilisé que par une seule de ces fonctionnalités à la fois.*  
Lorsque le tunnel SSH est affecté à l'accès OPC UA distant, l'accès distant ModLink est désactivé.   
*Le module reste alors accessible uniquement depuis le réseau local*</p>

### 4- Exposition des variables

Pour qu'une variable soit accessible depuis un système externe, elle doit être exposée dans sa configuration sur l'interface Modlink.  
L'exposition des variables permet de les rendre disponibles pour les différents protocoles et services pris en charge par le module, tels que Modbus, OPC UA et Home Assistant.

#### 4.1- Configuration de l'exposition d'une variable

- Ouvrez le menu "*I/O"*
- Sélectionnez la variable à partager
- Cliquez sur l'icône "*Modifier"* (pinceau) afin d'accéder à sa configuration
- Cochez les options d'exposition souhaitées : 
    - exposition Modbus
    - exposition OPC UA
    - exposition Home Assistant
- Enregistrez la configuration

[![Capture d’écran 2026-07-09 143721.jpg](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/capture-decran-2026-07-09-143721.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-07/capture-decran-2026-07-09-143721.jpg)

La variable devient alors accessible via les protocoles et services sélectionnés.

<p class="callout warning">Seules les **variables exposées peuvent être partagées** avec les services et protocoles externes.  
Pensez à exposer les variables nécessaires avant de configurer les intégrations **Home Assistant, OPC UA ou Modbus.** Les variables non exposées restent internes au module et ne sont pas accessibles depuis le services tiers</p>

Pour plus d'information, vous pouvez consulter [Configurer une variable](https://modlink.fr/help/link/221#bkmrk-2--personnaliser-une)

# Ouvrants / BSO

Le pilotage des **ouvrants motorisés** (volets roulants, rideaux métalliques, stores...) et des **BSO** nécessite un paramétrage préalable dans le menu "Paramètres" &gt; "Informations" &gt; "Sorties".  
Lors de cette configuration, **le module crée automatiquement les variables nécessaires** au pilotage de l'actionneur.   
Ces variables sont ensuite disponibles dans les scénarios.

[![image.png](https://modlink.fr/help/uploads/images/gallery/2026-07/scaled-1680-/image.png)](https://modlink.fr/help/uploads/images/gallery/2026-07/image.png)

<p class="callout warning">lorsqu'une paire de **relais est affectée à une configuration "BSO ou Ouvrant"**, ces deux relais sont réservés au pilotage de cet actionneur et ne peuvent plus être utilisés par d'autres scénarios ou fonctions</p>

<p class="callout success">Les ouvrants motorisés peuvent être équipés de **fins de course réglables** intégrées au moteur.   
Si ce n'est pas le cas, il est possible d'installer des **butées de fin de course** afin de définir précisément les positions d'ouverture et de fermeture</p>

### 1- Créer une nouvelle configuration

1. Saisissez un **nom de configuration** permettant d'identifier facilement l'actionneur (par exemple : *BSO Salon*, *Volet bureau*, *Store Terrasse*)
2. Sélectionnez le **mode de fonctionnement** : 
    - **Relais** : utilisation classique des sorties sans gestion d'ouvrant
    - **Ouvrant** : pilotage d'un volet roulant, d'un store ou de tout autre ouvrant motorisé
    - **BSO** : pilotage d'un brise-soleil orientable avec gestion de l'orientation des lames
3. Un **ID technique** est automatiquement généré à partir du nom de la configuration. Cet identifiant est utilisé dans les blocs de scénario via le paramètre `config_id`
4. Sélectionner le **relais utilisé pour le haut et pour le bas**
5. Si l'option "**Butées**" est activée, indiquez les entrées raccordées aux butées haute et basse
6. Dans les champs "*Extra montée"* et "*Extra descente"* indiquez un **décalage temporel** en millisecondes afin d'ajuster précisément les positions d'ouverture et de fermeture
7. Une fois la configuration terminée, cliquez sur **Enregistrer** pour la sauvegarder dans le module.   
    Vous pouvez également **exporter** les configurations au format JSON afin de les sauvegarder ou de les réutiliser sur un autre module, ou **importer** un fichier JSON existant pour restaurer ou compléter les configurations.

La liste des configurations enregistrées s'affiche en bas de page. Il est possible de sélectionner une configuration pour la modifier, la recalibrer ou la supprimer

### 2- Centralisation des ouvrants

La centralisation permet de **piloter simultanément plusieurs ouvrants** à l'aide d'une seule commande.   
Cette fonction est particulièrement utile pour ouvrir ou fermer l'ensemble des ouvrants d'un bâtiment, d'un étage ou d'une zone, sans avoir à les commander individuellement.

Les ouvrants peuvent être centralisés de deux façons :

- à l'aide d'un widget Position/Stop
- à l'aide d'un scénario personnalisé

#### 2.1- Centralisation à l'aide d'un widget

Le widget **Position/Stop** permet de commander simultanément tous les ouvrants appartenant au groupe de centralisation.   
Les ordres d'ouverture, de fermeture, de positionnement et d'arrêt sont automatiquement transmis à l'ensemble des ouvrants concernés.

#### 2.2- Centralisation à l'aide d'un scénario

La centralisation peut également être réalisée au moyen d'un scénario, ce qui permet d'adapter le comportement aux besoins de l'installation.

Le principe consiste à utiliser l'ouvrant local (celui du module exécutant le scénario) comme référence, puis à reproduire la même commande sur les autres ouvrants.

Le scénario est construit de la manière suivante :

1. Tester l'état de l'ouvrant local à l'aide d'un bloc Test d'état
2. Déterminer la commande à exécuter en fonction de l'état détecté (ouverture, fermeture, arrêt, position, etc.)
3. Commander les autres ouvrants à l'aide du bloc "***Variable multiple***". Ce bloc envoie directement la commande aux autres ouvrants du groupe, sans vérifier leur état ou leur position actuelle

<p class="callout info">seul l'état de l'ouvrant local est analysé. Les autres ouvrants reçoivent directement la commande correspondante afin de garantir une exécution rapide de la centralisation.</p>

#### 2.3- Exclure un ouvrant du groupe de centralisation

Il possible d'exclure un ou plusieurs ouvrants afin qu'ils ne répondent pas aux commandes de centralisation, tout en conservant leur pilotage individuel.  
L'ouvrant continuera à fonctionner normalement et pourra toujours être commandé individuellement ou par d'autres scénarios, mais il ne recevra plus les commandes envoyées au groupe de centralisation.

<span style="text-decoration: underline;">Pour exclure un ouvrant</span> :

- accédez au menu Paramètres &gt; Informations &gt; Sorties
- sélectionnez la variable "*Position**"*** de l'ouvrant concerné, puis cochez l'option *"Désactiver la variable"*

# Cas d'usages

De la surveillance industrielle à la gestion énergétique, en passant par la maintenance prédictive, le suivi environnemental ou encore le contrôle d'accès, ModLink s'adapte à tous vos besoins

# Gestion de deux pompes de relevage

<p class="callout success">**<span style="text-decoration: underline;">Objectif</span>** :   
Assurer automatiquement le fonctionnement en alternance de deux pompes de relevage en fonction du niveau d’eau, tout en permettant de détecter les situations de défaut.  
Les informations provenant des capteurs de niveau sont utilisées par un scénario pour commander les deux pompes.   
La logique permet d'adapter le fonctionnement des pompes en fonction du niveau détecté et de gérer les situations anormales.</p>

#### Configuration ModLink :

- Entrées : capteurs de niveau
- Sorties : relais de commande des deux pompes
- Variables : états des pompes et informations de fonctionnement
- Scénario : gestion automatique des pompes
- Widgets : visualisation des états et des défauts

#### Principe de fonctionnement

1. Le niveau d’eau augmente dans le réservoir
2. Le système surveille en continu le niveau d’eau via un capteur de niveau.
3. Deux pompes sont installées : **Pompe 1** et **Pompe 2**  
    La première pompe est mise en marche lorsque le niveau atteint le seuil défini  
    Si le niveau continue d’augmenter, la seconde pompe est activée
4. Les différents états et éventuels défauts sont signalés dans l’interface ModLink


#### Logique de fonctionnement

- En fonctionnement normal, les pompes fonctionnent **en alternance** pour équilibrer l’usure : 
    - Cycle 1 → Pompe 1 active
    - Cycle 2 → Pompe 2 active
- Si une pompe est en défaut, la seconde prend automatiquement le relais (**mode secours**)

La gestion des pompes est automatisée et leur état peut être supervisé depuis l’interface ModLink.

#### Sécurité

- Si le niveau d’eau reste élevé trop longtemps, une alarme peut être déclenchée.
- En cas de défaut des deux pompes, une alerte est envoyée.

#### Action automatique

En cas d’anomalie (défaut pompe ou niveau critique persistant) :

- envoi d’un **email d’alerte automatique**
- possibilité d’activation d’un relais d’**alarme externe**

# Surveillance d'une chambre froide

<p class="callout success">**<span style="text-decoration: underline;">Objectif</span> :** Surveiller en continu la température d’une chambre froide et détecter rapidement une situation anormale</p>

#### Fonctionnement

- La température est **analysée en continu** via une sonde connectée au système
- Des seuils sont définis afin d’identifier une température trop élevée ou toute autre situation nécessitant une intervention
- L’état correspondant est affiché dans le widget
- En cas de dépassement du seuil, une action ou une alerte peut être déclenchée selon la configuration

 par exemple :

- supérieure à -17°C
- inférieure à -20°C

#### Action automatique : déclenchement d'alerte en cas d'anomalie

Une alerte est déclenchée si la température sort de la plage définie :

- un **email d’alerte est envoyé automatiquement** aux personnes concernées
- l’information permet une intervention rapide pour sécuriser la chaîne du froid

#### Configuration ModLink

- Entrée : information provenant de la sonde ou du dispositif de mesure
- Variable : température
- Scénario : surveillance des seuils
- Widget : affichage de la température et des états associés

#### Résultat

L’état de la chambre froide est facilement identifiable depuis l’interface ModLink et les situations anormales peuvent être détectées.

# Redémarrage automatique de systèmes (watchdog)

<p class="callout info">**<span style="text-decoration: underline;">Objectif</span> :**  
Surveiller automatiquement le bon fonctionnement d’un équipement et provoquer son redémarrage en cas de dysfonctionnement, afin de limiter les interruptions de service et les interventions manuelles  
</p>

- onduleurs, routeurs
- serveurs
- caméras IP
- appareils intelligents
- ordinateurs, postes de travail
- ouvre-portes de parkings

#### Principe de fonctionnement

ModLink surveille un signal indiquant que l’équipement fonctionne correctement. Si ce signal n’est plus détecté dans le délai défini, ModLink considère que le système est potentiellement bloqué et déclenche automatiquement une action de redémarrage.

#### Configuration ModLink

- **Entrée** : signal de fonctionnement ou de présence de l’équipement à surveiller
- **Variable** : mémorisation de l’état ou du signal de surveillance
- **Scénario** : contrôle du signal et gestion du délai d’absence
- **Temporisation** : délai au-delà duquel le système est considéré comme défaillant
- **Sortie** : commande permettant de couper puis de rétablir l’alimentation de l’équipement

#### Fonctionnement

1. ModLink surveille régulièrement le signal de fonctionnement du système.
2. Tant que le signal est présent, le système est considéré comme opérationnel.
3. Si le signal disparaît pendant une durée supérieure au délai configuré, ModLink détecte une anomalie.
4. ModLink commande alors la sortie associée au redémarrage de l’équipement.
5. L’alimentation de l’équipement est coupée pendant la durée définie, puis rétablie.
6. Le système redémarre automatiquement.
7. ModLink reprend ensuite la surveillance du signal de fonctionnement.

**Résultat**  
Le système peut retrouver automatiquement un fonctionnement normal après un blocage, sans intervention sur site. ModLink assure ainsi une **surveillance autonome et un redémarrage automatique des équipements**.

> **Exemple : redémarrage automatique d’un équipement réseau**  
> ModLink surveille périodiquement un équipement qui doit rester opérationnel en permanence. En l’absence du signal attendu pendant une durée définie, ModLink coupe son alimentation puis la rétablit afin de provoquer son redémarrage. Une fois le fonctionnement rétabli, la surveillance reprend automatiquement.

# Système de secours et continuité de service

<p class="callout success"><span style="text-decoration: underline;">**Objectif**</span> :  
Garantir la continuité de service d’un équipement ou d’une installation en basculant automatiquement vers un système de secours en cas de défaillance du système principal  
</p>

#### Principe de fonctionnement

ModLink surveille le fonctionnement du système principal. En cas de défaillance détectée, le module commande automatiquement le basculement vers le système de secours afin de maintenir le service.

#### Configuration ModLink

- **Entrée(s)** : informations permettant de surveiller l’état ou le bon fonctionnement du système principal
- **Variables** : mémorisation et traitement des états nécessaires au contrôle
- **Scénario** : détection de la défaillance et gestion du basculement
- **Sorties** : commande du système principal et du système de secours
- **Temporisation** : définition du délai avant le déclenchement du basculement

#### Fonctionnement

1. ModLink surveille en permanence le fonctionnement du système principal
2. Tant que celui-ci fonctionne normalement, il reste actif et le système de secours est en attente
3. En cas de défaillance du système principal, ModLink détecte l’anomalie
4. ModLink commande alors le basculement vers le système de secours
5. Le système de secours prend le relais afin d’assurer la continuité du service
6. Le retour au fonctionnement normal peut ensuite être géré selon la configuration définie

#### Résultat

En cas de défaillance du système principal, ModLink assure automatiquement le basculement vers le système de secours, limitant ainsi l’interruption de service et la nécessité d’une intervention immédiate.

# Maintenance

# Redémarrer le système

Le redémarrage permet de **relancer le système** du module afin d’appliquer certaines modifications de configuration et de réinitialiser les services en cours d’exécution.

Pour redémarrer le module :

1. Dans le menu *"Paramètres"* accédez à *"Informations"* puis *"Maintenance"*
2. Dans *"Redémarrage* du système" appuyez sur le bouton "Redémarrer"

<p class="callout warning">Le redémarrage interrompt temporairement le fonctionnement du module.   
Les scénarios et les équipements pilotés sont donc momentanément indisponibles pendant cette opération</p>

[![Capture d’écran 2026-09-04 110728.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/capture-decran-2026-09-04-110728.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/capture-decran-2026-09-04-110728.jpg)

# Centre d'erreurs

Le Centre d’erreurs permet de consulter les erreurs détectées par le module afin d’identifier les éventuels dysfonctionnements et d’en faciliter le diagnostic.

Le Centre d’erreurs affiche notamment :

- le **nombre d’erreurs non acquittées**
- le **nombre total d’erreurs**
- le nombre d’**erreurs critiques**
- **l’état général de santé** du module
- **l’historique** des erreurs

Vous pouvez utiliser les **filtres** disponibles pour afficher les erreurs selon leur niveau et choisir d’afficher également les erreurs déjà acquittées.

Les erreurs affichées peuvent notamment concerner :

- les scénarios
- les variables
- les entrées et sorties
- la communication
- le système

<p class="callout info">Lorsqu’une erreur est détectée, la **LED "Process information" clignotte en rouge** sur le module</p>

### 1- Consulter les erreurs

Depuis le menu Paramètres, accédez à **Informations &gt;** **Maintenance &gt; Centre d’erreurs**.

[![Capture d’écran 2026-09-04 111042.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/capture-decran-2026-09-04-111042.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/capture-decran-2026-09-04-111042.jpg)

### 2- Acquitter une erreur

Lorsqu’une erreur a été prise en compte, elle peut être acquittée afin de ne plus apparaître comme erreur non acquittée.

- le bouton <span style="background-color: rgb(53, 152, 219);">**Acquitter**</span> permet d’acquitter individuellement une erreur
- le bouton <span style="background-color: rgb(53, 152, 219);">**Acquitter tout**</span> permet d’acquitter simultanément l’ensemble des erreurs affichées

Pour chaque erreur, les informations disponibles peuvent notamment indiquer :

- le niveau de l’erreur (critique, erreur, avertissement, information)
- le type d’équipement ou de fonction concerné
- la description de l’erreur
- la source à l’origine de l’erreur ;
- le nombre d’occurrences ;
- la date et l’heure de détection.

> **Remarque :** l’acquittement d’une erreur ne corrige pas nécessairement la cause du problème. Il permet uniquement de signaler que l’erreur a été prise en compte. Si la cause persiste, l’erreur peut réapparaître

Le bouton **Rafraîchir** permet de mettre à jour la liste des erreurs et d'afficher les éventuelles nouvelles occurrences.

# Sauvegardes

La fonction **Sauvegardes** permet de créer et de restaurer des copies de la configuration du module.   
Les sauvegardes sont chiffrées et stockées sur le serveur afin de pouvoir récupérer la configuration du module en cas de besoin.

### [![Capture d’écran 2026-09-04 123930.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/capture-decran-2026-09-04-123930.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/capture-decran-2026-09-04-123930.jpg)

### 1- Créer une sauvegarde

Le système effectue automatiquement une sauvegarde quotidienne de l’ensemble de la configuration du module (scénarios, variables, widgets, paramétrages ...).

Il est également possible de créer manuellement une sauvegarde à tout moment en cliquant sur le bouton **<span style="background-color: rgb(53, 152, 219);">Créer un backup</span>**.

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk-acc%C3%A9dez-%C3%A0-maintenanc"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="6fd34f86-e2b5-499d-b20f-82cb5f8b726f" data-message-model-slug="gpt-5-6" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling">1. Accédez à *"Paramètres"* &gt; *"Informations"* &gt; *"Maintenance"* &gt; *"Sauvegardes"*
2. Cliquez sur <span style="background-color: rgb(53, 152, 219);">**Créer un backup**</span>
3. La sauvegarde est créée et ajoutée à la liste des sauvegardes disponibles

</div></div></div></div>Le module conserve jusqu’à 5 sauvegardes. Lorsque cette limite est atteinte, les sauvegardes les plus anciennes sont remplacées par les nouvelles.

### 2- Restaurer une sauvegarde

La restauration permet de rétablir la configuration du module à partir d’une sauvegarde existante.  
Pour restaurer une sauvegarde :

1. Accédez à *"Paramètres"* &gt; *"Informations"* &gt; *"Maintenance"* &gt; *"Sauvegardes"*
2. Sélectionnez dans la liste la sauvegarde à restaurer  
    *la date et l’heure de création de chaque sauvegarde est indiquée*
3. Cliquez sur le bouton <span style="background-color: rgb(236, 240, 241);">**Restaurer**</span>
4. Confirmez la restauration lorsque cela est demandé
5. Attendez la fin de l’opération avant d'effectuer toute autre action sur le module.  
    Un redémarrage du système peut être nécessaire.

[![Capture d’écran 2026-09-04 145207.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/capture-decran-2026-09-04-145207.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/capture-decran-2026-09-04-145207.jpg)

> **Attention :** la restauration remplace la configuration actuelle du module par celle enregistrée dans la sauvegarde. Vérifiez la date de la sauvegarde avant de lancer l’opération.

#### 2.1- Sauvegardes provenant d’une autre carte

Certaines sauvegardes peuvent avoir été créées avec une autre carte et donc une autre clé de chiffrement. Elles ne peuvent être restaurées que si le serveur dispose de la clé de chiffrement correspondante (escrow).

Un message d’avertissement est affiché lorsqu’une sauvegarde est concernée.

[![Capture d’écran 2026-09-04 150149.jpg](https://modlink.fr/help/uploads/images/gallery/2026-09/scaled-1680-/capture-decran-2026-09-04-150149.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-09/capture-decran-2026-09-04-150149.jpg)

### 3- Actualiser la liste des sauvegardes

Cliquez sur le bouton <span style="background-color: rgb(236, 240, 241);">**Rafraîchir**</span> pour mettre à jour la liste et afficher les sauvegardes disponibles.

<div class="flex max-w-full flex-col gap-4 grow" id="bkmrk--3"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="6fd34f86-e2b5-499d-b20f-82cb5f8b726f" data-message-model-slug="gpt-5-6" data-turn-start-message="true" dir="auto" tabindex="0">  
</div></div>

# Questions fréquemment posées

# Droits et permissions des comptes utilisateurs

Les **administrateurs** disposent de tous les droits, y compris la modification des paramètres du compte et des appareils, tandis que les utilisateurs standards (**gestionnaires et opérateurs**) disposent uniquement des permissions d’accès et d’utilisation, sans possibilité de modifier les paramètres.

# Message "non sécurisé" dans navigateur

Lorsque vous accédez à votre module Modlink via la barre d’adresse du navigateur, il est possible que le message **“non sécurisé”** apparaisse.

<p class="callout info">**Important :** Ce message ne signifie pas que votre réseau ou vos données sont en danger</p>

### Pourquoi ce message apparaît

- Le module utilise une connexion **HTTP non chiffrée** pour optimiser la **rapidité et la réactivité**
- L’activation de HTTPS / SSL sur le module augmenterait la **latence**, ce qui pourrait ralentir le pilotage et la supervision en **temps réel**
- Les navigateurs affichent ce message car la connexion n’est pas chiffrée avec un certificat reconnu, mais cela **n’affecte pas la sécurité** sur un réseau local sécurisé

### Ce que vous pouvez faire

- **Continuer l’accès au module** : cliquez sur “Avancé” puis “Continuer” si le navigateur le propose
- Assurez-vous que votre **réseau local est sécurisé** (Wi-Fi protégé, utilisateurs autorisés)
- Aucune action supplémentaire n’est nécessaire pour un usage normal du module

# Remplacer un module défaillant dans un réseau de modules

Dans une installation comportant plusieurs modules, il est possible de remplacer rapidement un module défaillant sans avoir à reconfigurer l'ensemble du système.

Pour cela, **attribuez au nouveau module le même nom que celui du module défectueux**. Les autres modules pourront ainsi le retrouver automatiquement sur le réseau et poursuivre leurs échanges sans nécessiter de modifications supplémentaires.

Cette méthode permet de remplacer un module tout en conservant le fonctionnement existant de l'installation, sans re-paramétrage des communications entre modules.

Pour modifier le nom d'un module, accédez au menu "*Paramètres*" &gt; "*Informations*" &gt; "*Identité*", puis cliquez sur "*Changer de nom*" à côté du champ "*Nom de l'appareil"*.

[![Capture d’écran 2026-06-23 105738.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-105738.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-105738.jpg)

Renseignez ensuite le **numéro de série du module défaillant** (indiqué sous le capot) et confirmez la modification. Le nouveau module pourra alors être utilisé sans nécessiter de reconfiguration.   
Attribuez ensuite au nouveau module le nom du module défaillant afin de conserver automatiquement les communications existantes.

[![Capture d’écran 2026-06-23 105223.jpg](https://modlink.fr/help/uploads/images/gallery/2026-06/scaled-1680-/capture-decran-2026-06-23-105223.jpg)](https://modlink.fr/help/uploads/images/gallery/2026-06/capture-decran-2026-06-23-105223.jpg)