Cette notice décrit les spécificités du MicroARM-A4. Pour les informations communes à la programmation, voir la « notice MicroLADDER ». Pour mieux les discerner les adresses en MicroLADDER apparaissent en couleur sur les cotés des images. NC signifie non connecté. Il ne faut pas déclarer de sortie TOR si les sorties analogiques doivent être utilisées.
2. Caractéristiques
2.1 Présentation de la carte
Processeur Arm 7 LPC2368
512Ko Flash (pour sauvegarder le moniteur et l’application) et 32 Ko RAM
2 port RS232 (COM0 et COM2) sur le même connecteur SubD 9 points pour chargement ou libre d’utilisation
1 ports RS485 (COM1) pour chargement ou libre d’utilisation
1 RTC (Real Time clock) sur bus I2C avec pile de sauvegarde (en option)
1 EEPROM 16 Ko sur bus I2C (pour la sauvegarde des variables)
1 SRAM 32Ko sur bus I2C (pour la sauvegarde des variables) (en option)
8 entrées qui peuvent être utilisées en TOR ou ANA (0-10V)
4 sorties à transistor qui peuvent être utilisées en TOR ou ANA (0-10V)
3 sorties TOR à transistor
1 sortie TOR à relais
1 bouton poussoir reset (inter 2) (situé à gauche du connecteur RS232, coté cavalier)
1 bouton poussoir pour chargement programme (inter 1) (situé à droite du connecteur RS232, coté relais)
2.2 Signification des LED
L1
Etat de fonctionnement de l’automate
L2
Présence tension 3.3 volts
L3
Présence tension d’alimentation
Voir cercles rouges sur le schema de la section 2.1
2.3 Dimensions
3. Connexions
3.1 TOR
3.1.1 Entrées TOR
Plage de valeur de 0 à 1.
1
2
3
4
5
6
7
8
9
%I100
%I101
%I102
%I103
%I104
%I105
%I106
%I107
+Alim
3.1.2 Sorties TOR avec transistor PNP
Plage de valeur de 0 à 1
1
2
3
4
5
6
7
Commun 0V
Commun 0V
%Q100
%Q101
%Q102
%Q103
Commun 0V
8
9
10
11
12
13
Commun 0V
%Q104
%Q105
%Q106
Commun 0V
Commun 0V
3.1.3 Sorties TOR avec relais
Plage de valeur de 0 à 1.
3.2 Analogiques
3.2.1 Entrées analogiques
Plage de valeur de 0 à 10000 si configurées en tension et 0 à 20000 si configurées en courant.
1
2
3
4
5
6
%IW100
%IW101
%IW102
%IW103
Commun 0V
Commun 0V
7
8
9
10
11
%IW104
%IW105
%IW106
%IW107
Commun 0V
3.2.2 Sorties analogiques
Plage de valeur de 0 à 10000. Il ne faut pas déclarer de sortie TOR si les sorties analogiques doivent être utilisées.
1
2
3
4
5
Commun 0V
Commun 0V
%QW100
%QW101
%QW102
6
7
8
9
10
%QW103
Commun 0V
Commun 0V
Commun 0V
Commun 0V
3.3 Port de communication
3.3.1 COM0 RS232 et COM2 RS232
Brochage standard sur DB9. Les broches 7 et 8 sont utilisées pour le COM2. Ce port de communication est situé sur le connecteur DB9.
1
NC
6
NC
2
RX0
7
TX2
3
TX0
8
RX2
4
NC
9
NC
5
GND 0V
3.3.2 COM1 RS485
3.4 Alimentation
4. Chargement d’une application
Comme il n’y a pas de carte SD, le chargement doit obligatoirement se faire par MicroCONTROL. Avant le premier chargement, à la mise sous tension, l’automate tente de lancer l’application qui n’existe pas (paramètres par défaut) et se bloque. Pour éviter le blocage, il faut appuyer sur le bouton PROG dans la première seconde qui suit la mise sous tension. Cela force l’automate à rester sur le moniteur. Il est ensuite possible d’agir avec MicroCONTROL.
5. Règles de sécurité
Avertissement
Si l'appareil n'est pas utilisé conformément à ces instructions, la sécurité des personnes et de l'équipement peut être compromise. Nous déclinons toute responsabilité pour tout dommage matériel ou en raison d'une manipulation inadéquate ou d'un défaut de respect des consignes de sécurité.
Les interventions sur les dispositifs doivent être faites par des employés compétents pour travailler installations électriques.
Avant toute intervention, toutes les alimentations doivent être éteintes. Les dispositifs de coupe de l’installation doivent être dimensionnés et placés selon la norme UTE C 15-100. Pour toutes les interventions sur un dispositif installé sur une installation électrique, les équipements de protection individuelle (EPI) tel que définis par le règlement de sécurité sur les installations électriques doivent être portés par l’employé.
En cas de panne ou de dysfonctionnement, l’appareil ne doit pas être ouvert et doit être retourné à l’usine.
Observer les pictogrammes suivants:
Attention. Sur l’étiquette du produit, ce symbole signifie que l’avis doit être consulté. Dans ce manuel, ce symbole indique des informations importantes.
Courant direct.
Ce dispositif est homologué CE et est conforme aux lignes directrices nationales et européennes.
6. Dispositif de protection
Un système de protection contre les courts-circuits doit être positionné sur le démarrage continu de 24 volts alimentant l’automate. Ces fusibles seront dimensionnés en fonction du nombre de dispositifs mis en série derrière le départ.
7. Elimination
Les vieux appareils électroniques sont des produits recyclables qui ne devraient pas être jetés dans la poubelle. Si l’appareil atteint la fin de sa vie, il doit être éliminé conformément aux réglementations légales en vigueur dans les centres de récupération de votre municipalité. L’élimination dans les ordures ménagères est interdite.
8. Nettoyage
Pour le nettoyage, utiliser un chiffon propre, sec, antistatique et non pelucheux sans produits corrosifs
Cette notice décrit les spécificités du MicroARM-A8. Pour les informations communes à la programmation, voir la « notice MicroLADDER ». Pour mieux les discerner les adresses en MicroLADDER apparaissent en couleur sur les cotés des images. NC signifie non connecté.
2. Caractéristiques
2.1 Présentation de la carte
ARM7 LPC1788 Cortex Processor
512Ko Flash (pour sauvegarder le moniteur et l’application)
16Mo de RAM vidéo
512Ko de RAM sauvegardée
1 port RS232 TTL (COM0) pour chargement ou libre d’utilisation
1 port RS485 (COM1) pour chargement ou libre d’utilisation avec cavalier résistance de terminaison
1 RTC (Real Time clock) interne avec pile de sauvegarde
1 connecteur pour écran graphique 2.4 pouces (320 x 240 pixels) avec rétroéclairage
1 buzer
1 support pour carte microSD (la carte doit être formatée en FAT32)
4 interrupteurs de configuration
1 connecteur pur clavier 5 touches
1 capteur de pression et température monté sur la carte
1 cavalier pour le reset (J1) (situé à coté du connecteur du clavier)
1 bouton poussoir pour chargement programme (inter 7) (situé à coté du buzer)
2.2 Signification des LED
L1
Etat de fonctionnement de l’automate (à coté du connecteur du clavier)
L2
Présence carte SD (à coté connecteur de carte microSD)
L3
Présence tension d’alimentation (à coté du connecteur alimentation/RS485)
Voir cercles rouges sur le schéma de la section 2.1
2.3 Dimensions
3. Connexions
Les schémas de raccordements qui suivent sont dans le même sens que le schémas de présentation de la carte en début de ce documents.
3.1 Port de Communication
3.1.1 COM0 RS232 TTL
1
2
3
4
3.3V
TX0
RX0
0V
3.1.2 COM1 RS485
Voir brochage sur l’implantation. Il est possible de brancher par dessus et par dessous.
1
2
3
4
5
Alimentation+
Alimentation-
A
B
0V
Alimentation+
Alimentation-
A
B
0V
3.2 Entrées Interface Homme Machine (IHM)
Plage de valeur de 0 à 1. La description des touches peux varier suivant le lexan du clavier.
%Q0 : marche / arrêt du rétroéclairage de l’écran %Q1 : buzer %QW0 : rétroéclairage de l’écran
3.3 Alimentation
Photo ARM 8
3.4 Sorites diverses
3.4.1 Capteur pression et température
Ce capteur est implanté sur la carte %IW100 : température en dixième de degré %IW101 : pression en hectopascal
3.4.2 Interrupteurs de configuration
Plage de valeur de 0 à 1.
4. Variables sauvegardées
Il y a une RAM sauvegardée. Cela permet de gérer des historiques
5. Règles de sécurité
Avertissement
Si l'appareil n'est pas utilisé conformément à ces instructions, la sécurité des personnes et de l'équipement peut être compromise. Nous déclinons toute responsabilité pour tout dommage matériel ou en raison d'une manipulation inadéquate ou d'un défaut de respect des consignes de sécurité.
Les interventions sur les dispositifs doivent être faites par des employés compétents pour travailler installations électriques.
Avant toute intervention, toutes les alimentations doivent être éteintes. Les dispositifs de coupe de l’installation doivent être dimensionnés et placés selon la norme UTE C 15-100. Pour toutes les interventions sur un dispositif installé sur une installation électrique, les équipements de protection individuelle (EPI) tel que définis par le règlement de sécurité sur les installations électriques doivent être portés par l’employé.
En cas de panne ou de dysfonctionnement, l’appareil ne doit pas être ouvert et doit être retourné à l’usine.
Observer les pictogrammes suivants:
Attention. Sur l’étiquette du produit, ce symbole signifie que l’avis doit être consulté. Dans ce manuel, ce symbole indique des informations importantes.
Courant direct.
Ce dispositif est homologué CE et est conforme aux lignes directrices nationales et européennes.
6. Dispositif de protection
Un système de protection contre les courts-circuits doit être positionné sur le démarrage continu de 24 volts alimentant l’automate. Ces fusibles seront dimensionnés en fonction du nombre de dispositifs mis en série derrière le départ.
7. Elimination
Les vieux appareils électroniques sont des produits recyclables qui ne devraient pas être jetés dans la poubelle. Si l’appareil atteint la fin de sa vie, il doit être éliminé conformément aux réglementations légales en vigueur dans les centres de récupération de votre municipalité. L’élimination dans les ordures ménagères est interdite.
8. Nettoyage
Pour le nettoyage, utiliser un chiffon propre, sec, antistatique et non pelucheux sans produits corrosifs
Cette notice décrit les spécificités du MicroARM-A9. Pour les informations communes à la programmation, voir la « notice MicroLADDER ». Pour mieux les discerner, les adresses en MicroLADDER apparaissent en couleur sur les cotés des images. NC signifie non connecté.
2. Caractéristiques
2.1 Présentation de la carte
ARM7 LPC1788 Cortex Processor
512Ko Flash (pour sauvegarder le moniteur et l’application)
16Mo de RAM vidéo
512Ko de RAM sauvegardée extensible à 512kW
1 port RS232 (COM0) avec connecteur SubD 9 points pour la version A de la carte et en TTL pour la version B de la carte. Ce port est utilisable pour le chargement ou libre d’utilisation.
1 port RS232 TTL (COM1) pour chargement ou libre utilisation
1 port RS485 (COM2) pour chargement ou libre utilisation avec double connecteur et alimentation 12Vdc
1 port RS485 (COM3) pour chargement ou libre utilisation avec cavalier de résistance de terminaison
1 port Jtag pour le debug
1 connecteur Ethernet avec 4 sockets de communication indépendants (en option)
1 port USB
1 RTC (Real Time clock) avec pile de sauvegarde
1 EEPROM 16Ko sur bus I2C (pour la sauvegarde des variables)
1 connecteur pour écran graphique tactile 4.3 pouces (480 x 272 pixels) avec rétroéclairage ou écran graphique tactile 7 pouces (800 x 480 pixels) avec rétroéclairage
1 support pour carte microSD (la carte doit être formatée en FAT32)
Notice mArm-A9.odt 2/5
2 entrées TOR
2 sorties TOR à relais RT
2 entrée analogique 0-10V ou 0-20mA isolées
2 sortie analogique 0-20mA
2 entrées de configuration sur cavalier (GC2 et GC3)(sous le processeur)
1 capteur de pression et température monté sur la carte
1 bouton poussoir reset (Inter1) (situé au dessus du SubD 9 points) repris sur cavalier (J2) ( situé en haut à gauche du processeur)
1 cavalier pour chargement programme (J1) (situé en haut du processeur)
1 bouton poussoir pour le réveil (Inter2) (situé au dessus du COM3) repris sur connecteur
2.2 Signification des LED
L1
Présence carte SD (à coté connecteur de carte microSD)
L2
Etat de fonctionnement de l’automate (à droite du processeur)
L3
Présence tension 5V (en haut à gauche de la pile)
L5
Présence tension 3.3V (en haut à gauche du connecteur Ethernet)
L8
Présence tension d’entrée (à coté du bloc d’alimentation)
L6, L7, L9, L10 et L11
Ethernet (à coté du connecteur Ethernet)
LD2
Présence et utilisation d’une clé USB (à coté du connecteur USB)
Voir les cercles rouges sur le schéma de la section 2.1
2.3 Dimensions
3. Connexions
Les schémas de raccordements qui suivent sont dans le même sens que le schémas de présentation de la carte en début de ce documents.
3.1 TOR
3.1.1 Entrée TOR
Le bit de l’entrée monte en reliant l’entrée au 0V.
3.1.2 Sorties TOR
Il s’agit de %Q100 et %Q101. Chaque sortie possède un relais avec un contact RT.
Voir câblage sur l’implantation.
3.2 Analogiques
3.2.1 Entrées analogiques
%IW103 et IW104 : entrée analogique tension (0-10V = 0-10 000 points) ou courant (0-20mA = 0 20 000 points) configurable par cavalier.
%IW100 : température du capteur implanté sur la carte en dixième de degré. %IW101 : pression atmosphérique du capteur implanté sur la carte en hectopascal. %IW102 : tension d’alimentation de la carte en sortie du bloc AC/DC ou en amont du bloc DC/DC en mV
3.3 Port de Communication
3.3.1 COM0 RS232
Brochage standard sur DB9 (version A de la carte) ou voir brochage sur l’implantation (version B de la carte).
1
2
3
4
V3.3
TX0
RX0
0V
3.3.2 COM1 RS232 TTL
Brochage standard sur DB9 (version A de la carte) ou voir brochage sur l’implantation (version B de la carte).
1
2
3
4
V3.3
TX1
RX1
0V
3.3.3 COM2 RS485
1
GND
2
GND
3
B
4
A
5
12V
6
12V
7
A
8
B
9
GND
10
GND
Voir brochage sur l’implantation. Ce port dispose de 2 connecteurs disposant d’une alimentation 12Vdc. Sa fonction est d’alimenter 2 capteurs et de communiquer avec.
3.3.4 COM3 RS485
Voir brochage sur l’implantation
1
2
3
GND 0V
B
A
3.4 Interface Homme Machine (IHM)
3.4.1 Entrées
%IW0 : position horizontale du point cliqué sur l’écran. %IW1 : position verticale du point cliqué sur l’écran.
3.4.2 Sorites
%Q0 : Marche / arrêt du rétroéclairage de l’écran. %QW0 : Puissance du rétroéclairage de l’écran. Sur les écrans EDT, le rétroéclairage n’est pas réglable. Il fonctionne correctement sur les écrans URT.
3.5 Alimentation
La carte peut être alimentée en alternatif ou en continu suivant le bloc d’alimentation qui est soudé sur la carte.
Note : l’autocollant attention en forme de triangle jaune est uniquement présent sur la carte quand le courant alternatif est choisi.
4. Mise en veille
La mise en veille se provoque par l’instruction : AlimOff();
Le réveil se provoque par : > appuie sur le BP de réveil > RTC (il faut programmer l’heure et la date de reveil) > par communication sur le COM3 (attention, une simple polarisation de la ligne provoque le réveil, le 0V doit être relié)
Code pour la programmation et l’activation de la date et heure de réveil : Date d; long t t = … ; d = timeToDate (t); stRtcAlarm.cSeconde = d.sec; stRtcAlarm.cMinute = d.min; stRtcAlarm.cHeure = d.hour; stRtcAlarm.cJour = d.mday;
stRtcAlarm.cMois = d.mon; RtcWriteAlarm (KB_TRUE); Code pour désactiver la date et heure de réveil : RtcWriteAlarm (KB_FALSE);
5. Variables sauvegardées
Il y a une RAM sauvegardée. Cela permet de gérer des historiques
6. Choix de la version
Dans MicroLADDER, une fois le code système importé, il faut choisir la cible. Il existe 4 types de cible pour le MicroARM-A9 : μArm A9 A (7″), μArm A9 A (4″3), μArm A9 B (7″), μArm A9 B (4″3). Le choix entre la version A et B se fait en fonction des mémoires qui sont montées sur la carte. En version A, il y a 16 Mo de RAM vidéo (IC10 en haut à droite a la référence 48LC8M16A2) et 512 ko de RAM sauvegardée (seul U2 en haut à droite est présent). En version B, il y a 32 Mo de RAM vidéo (IC10 en haut à droite a la référence 48LC16M16A2) et 1024 ko de RAM sauvegardée (U1 et U2 en haut à droite sont présents). Le choix entre 7″ et 4″3 se fait en fonction de la taille de l’écran.
7. Règles de sécurité
Avertissement
Si l'appareil n'est pas utilisé conformément à ces instructions, la sécurité des personnes et de l'équipement peut être compromise. Nous déclinons toute responsabilité pour tout dommage matériel ou en raison d'une manipulation inadéquate ou d'un défaut de respect des consignes de sécurité.
Les interventions sur les dispositifs doivent être faites par des employés compétents pour travailler installations électriques.
Avant toute intervention, toutes les alimentations doivent être éteintes. Les dispositifs de coupe de l’installation doivent être dimensionnés et placés selon la norme UTE C 15-100. Pour toutes les interventions sur un dispositif installé sur une installation électrique, les équipements de protection individuelle (EPI) tel que définis par le règlement de sécurité sur les installations électriques doivent être portés par l’employé.
En cas de panne ou de dysfonctionnement, l’appareil ne doit pas être ouvert et doit être retourné à l’usine.
Observer les pictogrammes suivants:
Attention. Sur l’étiquette du produit, ce symbole signifie que l’avis doit être consulté. Dans ce manuel, ce symbole indique des informations importantes.
Courant direct.
Courant alternatif.
Ce dispositif est homologué CE et est conforme aux lignes directrices nationales et européennes.
8. Dispositif de protection
Un système de protection contre les courts-circuits doit être positionné sur le démarrage continu de 24 volts alimentant l’automate. Ces fusibles seront dimensionnés en fonction du nombre de dispositifs mis en série derrière le départ.
9. Elimination
Les vieux appareils électroniques sont des produits recyclables qui ne devraient pas être jetés dans la poubelle. Si l’appareil atteint la fin de sa vie, il doit être éliminé conformément aux réglementations légales en vigueur dans les centres de récupération de votre municipalité. L’élimination dans les ordures ménagères est interdite.
10. Nettoyage
Pour le nettoyage, utiliser un chiffon propre, sec, antistatique et non pelucheux sans produits corrosifs
Cette notice décrit les spécificités du MicroARM-A12 (SAV1288 card). Pour les informations communes à la programmation, voir la « notice MicroLADDER ». Pour mieux les discerner les adresses en MicroLADDER apparaissent en couleur sur les cotés des images. NC signifie non connecté.
2. Caractéristiques
2.1 Présentation de la carte
Tension d’alimentation : 24V. La carte peux fonctionner en 12V, mais les sorties TOR à relais ne fonctionnent pas.
ARM7 LPC1788 Cortex Processor
512 ko de Flash interne (pour sauvegarder le moniteur et l’application)
2 Mo de RAM sauvegardée
1 RTC (Real Time clock) interne au processeur avec pile de sauvegarde
1 port RS232 ou RS485 (configuration par cavalier) (COM0) sur connecteur SUBD pour changement ou libre d’utilisation
2 ports RS485 (COM1 et COM2) avec résistance fin de ligne pour chargement ou libre d’utilisation
1 port de communication RS232 TTL (en option sur le connecteur d’extension)
1 port de communication SPI (en option sur le connecteur d’extension)
1 port de communication I2C (en option sur le connecteur d’extension)
1 port de communication CAN (en option)
1 connecteur Ethernet avec 4 sockets de communication indépendants
Notice mArm-A12 2/5
1 module WIFI
1 connecteur pour carte micro SD (la carte doit être formatée en FAT32)
1 port USB
4 entrées TOR 24 V
2 entrées analogique (0-10 V ou 0-20 mA – 24 bits configurables par cavalier)
2 sorties PWM à transistor 24 V
2 sorties relais avec un point commun 250 V – 2 A
2 sorties relais 160 V – 4 A
1 entrée BP (sur le connecteur IHM)
1 entrée CTN 10K (sur le connecteur IHM)
10 sorties LED pour gérer 5 LED bicolores (sur le connecteur IHM)
1 buzzer
1 bouton poussoir reset (inter 2)
1 bouton poussoir pour chargement programme (inter 1)
2.2 Signification des LED
L1
Etat de fonctionnement de l’automate
L2
Présence carte SD
L3, L4, L5, L6 et L7
Ethernet (LEDs non montées)
L10
Présence tension 5V
L11
Activité sur port USB (LED non montée)
Voir les cercles bleu sur le schéma de la section 2.1
2.3 Dimension
3. Connexions
3.1 TOR
3.1.1 Entrées TOR
%I100 à%I103 sont des entrées TOR. L’entrée doit être reliée au +24 pour monter l’entrée à 1.
3.1.2 Sorties TOR
%QW100 et %QW101 sont des sorties PWM à transistor. La charge doit être relié entre la sortie et la masse. %Q100 et %Q101 sont 2 sorties à relais libre de potentiel, mais il y a un contact commun aux 2 sorties. Maximum 250 V – 2 A. Les 2 A peuvent être utilisés en même temps sur les 2 sorties. %Q102 et %Q103 sont 2 sorties à relais libre de potentiel. Maximum 160 V – 4 A.
1 : Commun libre de potentiel, mais commun aux 2 sorties 2 :%Q100 sortie à relais 3 :%Q101 sortie à relais
Elles peuvent être configurées en 0 – 10 V ou 0 – 20 mA à l’aide des cavaliers GC3 (pour %I100) et GC4 (pour %I101).
1 : %IW101 2 : Masse 3 : %IW102 4 : Masse
3.3 Port de communication
3.3.1 COM0 RS232 ou RS485
Le COM 0 peut être configuré en RS232 ou en RS485 à l’aide du cavalier GC7 situé 2 cm au dessus du connecteur Sub-D. Le cavalier GC8 permet d’activer la résistance fin de ligne pour le mode RS485.
1 : %Q2 LED 1A 2 : %Q3 LED 1B 3 : %Q4 LED 2A 4 : %Q5 LED 2B 5 : %Q6 LED 3A 6 : %Q7 LED 3B 7 : %Q8 LED 4A 8 : %Q9 LED 4B 9 : %Q10 LED 5A 10 : %Q11 LED 5B 11 : Masse 12 : %I0 BP (l’entrée doit être liée à la masse pour la somme %I0) 13 : %IW100 CTN de 10 K (l’autre extrémité du CTN doit être lié à la masse). La température est lue directement en dixième de °c. 14 : Masse
%Q1 : buzzer
3.5 Alimentation
4. Règles de sécurité
Avertissement
Si l'appareil n'est pas utilisé conformément à ces instructions, la sécurité des personnes et de l'équipement peut être compromise. Nous déclinons toute responsabilité pour tout dommage matériel ou en raison d'une manipulation inadéquate ou d'un défaut de respect des consignes de sécurité.
Les interventions sur les dispositifs doivent être faites par des employés compétents pour travailler installations électriques. Avant toute intervention, toutes les alimentations doivent être éteintes. Les dispositifs de coupe de l’installation doivent être dimensionnés et placés selon la norme UTE C 15-100. Pour toutes les interventions sur un dispositif installé sur une installation électrique, les équipements de protection individuelle (EPI) tel que définis par le règlement de sécurité sur les installations électriques doivent être portés par l’employé.
En cas de panne ou de dysfonctionnement, l’appareil ne doit pas être ouvert et doit être retourné à l’usine.
Observer les pictogrammes suivants:
Attention. Sur l’étiquette du produit, ce symbole signifie que l’avis doit être consulté. Dans ce manuel, ce symbole indique des informations importantes.
Courant direct.
Ce dispositif est homologué CE et est conforme aux lignes directrices nationales et européennes.
5. Dispositif de protection
Un système de protection contre les courts-circuits doit être positionné sur le démarrage continu de 24 volts alimentant l’automate. Ces fusibles seront dimensionnés en fonction du nombre de dispositifs mis en série derrière le départ.
6. Elimination
Les vieux appareils électroniques sont des produits recyclables qui ne devraient pas être jetés dans la poubelle. Si l’appareil atteint la fin de sa vie, il doit être éliminé conformément aux réglementations légales en vigueur dans les centres de récupération de votre municipalité. L’élimination dans les ordures ménagères est interdite.
7. Nettoyage
Pour le nettoyage, utiliser un chiffon propre, sec, antistatique et non pelucheux sans produits corrosifs
Cette notice décrit les spécificités du MicroARM-A13 (SAV1312 card). Pour les informations communes à la programmation, voir la « notice MicroLADDER ». Pour mieux les discerner les adresses en MicroLADDER apparaissent en couleur sur les cotés des images. NC signifie non connecté.
2. Caractéristiques
2.1 Présentation de la carte
Le boîtier est constitué de 2 cartes reliés par un bus interne de 24 broches. Ces 2 cartes sont indisssociables.
Il est possible d’intercaler une troisième carte entre les deus cartes principales. Cette carte permet d’ajouter la fonction LoRa / Sigfox. Elle est aussi raccordée sur le bus interne.
Tension d’alimentation : 10-28 VDC
Processeur Cortex LPC1768FBD
512 ko de Flash interne (pour sauvegarder le moniteur et l’application)
32 ko de RAM interne
TBC de Flash externe sur bus SPI utilisé par le système et l’application
128 ko se SRAM externe sur bus SPI
Alimentation sauvegardé par super capacité d’environ une semaine de durée
1 RTC (Real Time clock) interne au processeur avec alimentation sauvegardée par super capacité d’environ une semaine de durée
1 port RS232 TTL (COM0) pour chargement ou libre d’utilisation
1 port RS485 (COM1) et COM2) pour chargement ou libre d’utilisation
1 port RS232 ou RS485 (configurable par logiciel) (COM2) pour chargement ou libre d’utilisation
1 module de communication LoRa / Sigfox sur COM3
1 module de communication Bluetooth
1 capteur de température interne
1 bouton poussoir (inter3) sur la face avant repris sur cavalier JP2
2 cavalier de configuration (J3 et J4) libre pour l’application (grain de café sur la carte principale)
2 entrées TOR 24 V
1 sortie TOR à relais inverseur RT 10A – 250V
1 entrée analogique PT1000
2 entrées analogique (0-10 V ou 0-20 mA – 12 bits – configurable par logiciel)
2.2 Signification des LED
Repère du lexan
Repère du schéma électronique
Désignation
PWR
L2
Présence tension 3.3V
RUN
L1
Etat de fonctionnement de l’automate
L1
L3
LED 1 bicolore libre pour l’application
L2
L4
LED 2 bicolore libre pour l’application
2.3 Dimension
3. Connexions
3.1 TOR
3.1.1 Entrées TOR
%I100 à %I101 : entrées TOR. L’entrée doit être reliée au +24 pour monter l’entrée à 1.
%I102 à %I103 : entrées de configuration (grain de café à souder sur le côté de la carte principale)
3.1.2 Sorties TOR
%Q100 : sortie à relais inverseur RT.
3.2 Entrées Analogiques
%IW100 : température externe en connectant un capteur PT1000. Valeur exprimée en dixième de degré.
%IW101 : température interne. Valeur exprimée en dixième de degré.
%IW102 à %IW103 : entrées analogiques (0-10V ou 0-20mA, configurable par logiciel).
3.3 Port série
Le port COM0 est présent sur le bus d’extension. Il est en RS232 TTL.
Le port COM1 est présent sur le bornier. Il est en RS485.
Le port COM2 est présent sur le bornier. Il est en RS232 ou RS485 (configuration logiciel).
Le port COM3 est interne. Il permet de communiquer avec les modules LoRa / Sigfox ou Bluetooth (les 2 modules sont exclusifs).
3.4 Extension
Le bus extension est situé sur le coté du boitier, sur l’extérieur de la carte principale. Il permet de connecter des modules d’extension.
1 : +5 V 2 : +24 V 3 : 0 V 4 : 0 V 5 : D7 6 : D6 7 : D5 8 : D4
%IO : Bouton poussoir %QO : Vert de la LED 1 %Q1 : Rouge de la LED 1 %Q2 : Vert de la LED 2 %Q3 : Rouge de la LED 2
Les 2 couleurs d’une même LED peuvent être commandées en même temps. La couleur obtenue est un mélange des deux couleurs
4. Mémoire flash
Cette mémoire est utilisée en partie par le système (étalonnage des entrées analogiques, variables systèmes, …) et l’application.
Les variables sauvegardées sont stockées dans cette mémoire flash. Il faut utiliser le bit %S18 (SAV_VARS) pour provoquer la mémorisation.
5. Règles de sécurité
Avertissement
Si l'appareil n'est pas utilisé conformément à ces instructions, la sécurité des personnes et de l'équipement peut être compromise. Nous déclinons toute responsabilité pour tout dommage matériel ou en raison d'une manipulation inadéquate ou d'un défaut de respect des consignes de sécurité.
Les interventions sur les dispositifs doivent être faites par des employés compétents pour travailler installations électriques. Avant toute intervention, toutes les alimentations doivent être éteintes. Les dispositifs de coupe de l’installation doivent être dimensionnés et placés selon la norme UTE C 15-100.
Pour toutes les interventions sur un dispositif installé sur une installation électrique, les équipements de protection individuelle (EPI) tel que définis par le règlement de sécurité sur les installations électriques doivent être portés par l’employé.
En cas de panne ou de dysfonctionnement, l’appareil ne doit pas être ouvert et doit être retourné à l’usine.
Observer les pictogrammes suivants :
Attention. Sur l’étiquette du produit, ce symbole signifie que l’avis doit être consulté. Dans ce manuel, ce symbole indique des informations importantes.
Courant direct.
Ce dispositif est homologué CE et est conforme aux lignes directrices nationales et européennes.
6. Dispositif de protection
Un système de protection contre les courts-circuits doit être positionné sur le démarrage continu de 24 volts alimentant l’automate. Ces fusibles seront dimensionnés en fonction du nombre de dispositifs mis en série derrière le départ.
7. Elimination
Les vieux appareils électroniques sont des produits recyclables qui ne devraient pas être jetés dans la poubelle. Si l’appareil atteint la fin de sa vie, il doit être éliminé conformément aux réglementations légales en vigueur dans les centres de récupération de votre municipalité. L’élimination dans les ordures ménagères est interdite.
8. Nettoyage
Pour le nettoyage, utiliser un chiffon propre, sec, antistatique et non pelucheux sans produits corrosifs
Cette notice décrit les spécificités du MicroARM-H1. Pour les informations communes à la programmation, voir la notice MicroLADDER.
2. Caractéristiques
2.1 Présentation de la carte
Tension d’alimentation 18-28V
Processeur Cortex LPC1788FBD
3 ports RS232 TTL (COM0, COM2,COM3)
1 port RS485 COM1
1 connecteur d’extension
1 carte SD
2 connecteurs Ethernet
1 bouton poussoir reset
1 bouton poussoir pour chargement programme
2.2 Signification des LEDs
L1 : État de fonctionnement de l’automate
L2 : Présence de carte SD
L3 : présence tension
3. Entrées/sorties
3.1 COM 1 RS485
La résistance de fin de ligne peut être activé avec le cavalier GC3.
3.2 COM 0, COM 2, COM 3
Les ports de communication 0, 2 et 3 sont sous forme RS232 TTL.
3.3 ETH 1 et ETH 2
Les connecteurs Ethernet 1 et 2 sont distinct et on une adresse MAC chacun. Ils peuvent prendre deux adresses IP différents. Le connecteur 1 est compatible DHCP.
Cette notice décrit les spécificités du MicroARM-A1. Pour les informations communes à la programmation, voir la « notice MicroLADDER ». Pour mieux les discerner les adresses en MicroLADDER apparaissent en couleur sur les cotés des images. NC signifie non connecté.
2. Caractéristiques
2.1 Présentation de la carte UC
Processeur Arm 7 LPC2478FBD
512Ko Flash (pour sauvegarder le moniteur et l’application)
16Mo de RAM vidéo sauvegardée
512Ko de RAM sauvegardée
1 port RS232 (COM 0) avec connecteur SubD9 points pour chargement ou libre d’utilisation
1 port RS232 TTL (COM1) pour chargement ou libre d’utilisation
2 ports RS485 (COM2 et COM3) pour chargement ou libre d’utilisation
1 connecteur Ethernet avec 4 sockets de communication indépendants (en option)
1 port USB
1 RTC (Real Time clock) sur bus I2C avec pile de sauvegarde
1 EEPROM 16 Ko sur bus I2C (pour la sauvegarde des variables)
1 connecteur pour écran graphique tactile 7 pouces (800 x 480 pixels) ou écran graphique tactile 4.3 pouces
1 buzer
1 connecteur pour carte SD (la carte doit être formatée en FAT32)
4 entrées TOR
2 sorties TOR PWM à transistor
1 bouton poussoir reset (inter 2) repris sur cavalier J2
1 bouton poussoir pour chargement programme (inter 1) repris sur cavalier J1
1 connecteur pour clavier (4 colonnes – 6 lignes)
2.2 Signification des LED
LD1
Etat de fonctionnement de l’automate
L2
Présence carte SD
L3, L4, L6, L7 et L8
Ethernet
L5
Présence de tension d’alimentation
L11
Présence tension 5 volts
LD2
USB
Voir cercles bleu sur le schéma de la section 2.1
2.3 Présentation de la carte ES
1 EEPROM 16 Ko sur bus I2C (pour la sauvegarde des variables)
16 entrées TOR
16 sorties TOR à relais (250V – 10A) ou transistor (choix à la fabrication)
8 entrées analogique 0-10V, 0-20mA ou PT100 (configuration par cavalier) (12 bits)
2 sorties analogique 0-10V (12 bits)
2.4 Signification des LED
L1
Présence tension 12 volts
L5
Présence tension 5 volts
2.5 Dimensions
3. Connexions
3.1 TOR
3.1.1 Entrées TOR
1
2
3
4
5
6
7
8
%I123
%I122
%I121
%I120
%I119
%I118
%I117
%I116
9
10
11
12
13
14
15
16
%I115
%I114
%I113
%I112
%I111
%I110
%I109
%I108
3.1.2 Entrées TOR rapides
1
2
3
4
%I103
%I102
%I101
%I100
3.1.2 Sorties TOR
1
2
3
4
5
6
7
8
%Q107
%Q106
%Q105
%Q104
%Q103
%Q102
%Q101
%Q100
9
10
11
12
13
14
15
16
%Q115
%Q114
%Q113
%Q112
%Q111
%Q110
%Q109
%Q108
3.1.3 Sorties TOR rapides
%QW102 (1) à %QW103 (2) : Sorite PWM
3.2 Analogiques
3.2.1 Entrées analogiques
De %IW100 à %IW107 : entrée analogique 0-20mA, 0-10V ou PT100. Jusqu’à fin 2013, la plage de mesure des entrées analogiques configurées en PT100 était -50 / 150 °C. A partir de janvier 2014, le jeu de résistances des cartes et le code système ont été modifiés pour avoir une plage de 0 / 350 °C.
1
2
3
4
5
6
7
8
IW7
IW6
IW5
IW4
IW3
IW2
IW1
IW0
%IW107
%IW106
%IW105
%IW104
%IW103
%IW102
%IW101
%IW100
3.2.2 Sorties analogiques
%QW100 (1) %QW101 (2) : sorties analogiques 0-10V
3.3 Port de communication
3.3.1 COM0 RS232
Brochage standard sur la DB9.
1
NC
6
NC
2
RX0
7
NC
3
TX0
8
NC
4
NC
9
NC
5
0V
3.3.2 COM2 et COM3 RS485
3.3.3 Port Ethernet
3.4 Interface Homme Machine (IHM)
%IW0 : position horizontale du point cliqué sur l’écran et %IW1 : position verticale du point cliqué sur l’écran %Q0 : activation du rétro éclairage %Q1 : buzzer %QW0 : puissance du rétro éclairage
3.5 Alimentation
3.6 Clavier
De %IO à %I24
4. Variables sauvegardées
Il y a une RAM sauvegardée. Cela permet de gérer des historiques.
4.1 Réservation de mémoire dans RAM vidéo
Retour = GfxCreateArray(paramètre1, paramètre2) Cette fonction permet de réserver de la mémoire en RAM vidéo. Retour : variable de type pointeur (unsigned char *). Pour réserver de la mémoire pour un autre type de variable, il faut faire un cast. Paramètre1 : longueur en octet pour 1 élément. Paramètre2 : nombre d’éléments à réserver. Exemple : char Texte[20]; Texte = (char *) GfxCreateArray(1, 20);
5. Règles de sécurité
Avertissement
Si l'appareil n'est pas utilisé conformément à ces instructions, la sécurité des personnes et de l'équipement peut être compromise. Nous déclinons toute responsabilité pour tout dommage matériel ou en raison d'une manipulation inadéquate ou d'un défaut de respect des consignes de sécurité.
Les interventions sur les dispositifs doivent être faites par des employés compétents pour travailler installations électriques. Avant toute intervention, toutes les alimentations doivent être éteintes. Les dispositifs de coupe de l’installation doivent être dimensionnés et placés selon la norme UTE C 15-100. Pour toutes les interventions sur un dispositif installé sur une installation électrique, les équipements de protection individuelle (EPI) tel que définis par le règlement de sécurité sur les installations électriques doivent être portés par l’employé.
En cas de panne ou de dysfonctionnement, l’appareil ne doit pas être ouvert et doit être retourné à l’usine.
Observer les pictogrammes suivants:
Attention. Sur l’étiquette du produit, ce symbole signifie que l’avis doit être consulté. Dans ce manuel, ce symbole indique des informations importantes.
Courant direct.
Ce dispositif est homologué CE et est conforme aux lignes directrices nationales et européennes.
6. Dispositif de protection
Un système de protection contre les courts-circuits doit être positionné sur le démarrage continu de 24 volts alimentant l’automate. Ces fusibles seront dimensionnés en fonction du nombre de dispositifs mis en série derrière le départ.
7. Elimination
Les vieux appareils électroniques sont des produits recyclables qui ne devraient pas être jetés dans la poubelle. Si l’appareil atteint la fin de sa vie, il doit être éliminé conformément aux réglementations légales en vigueur dans les centres de récupération de votre municipalité. L’élimination dans les ordures ménagères est interdite.
8. Nettoyage
Pour le nettoyage, utiliser un chiffon propre, sec, antistatique et non pelucheux sans produits corrosifs
Cette documentation est à destination des utilisateurs de l’application MyHome&me, permettant de la visualisation de données collectées par leur armoire AEA.
2. Présentation de l’application
MyHome&me est une application web permettant de visualiser des données collectées sur une installation photovoltaïque dont le système d’autoconsommation est piloté par une armoire AEA développée par Sirea.
L’interface se compose de trois parties :
le tableau de bord où sont affichées les données collectées en temps réel
l’historique où sont consultables les données journalières enregistrées
la barre de menu
2.1 Le tableau de bord
Le tableau de bord concerne l’affichage de données collectées en temps réel afin de se rendre compte du comportement instantané de l’installation. Le délai de rafraîchissement de chaque valeur est de quelques secondes.
2.1.1 Visuel de l’armoire
La photo de l’armoire AEA au centre de l’écran est une image non-contractuelle. Elle permet de représenter schématiquement de quelle façon opère les flux d’énergie.
2.1.2 Réseau
L’encart “Réseau” affiche en temps réel la valeur concernant la puissance électrique mesurée sur le raccordement au réseau électrique et dont les données sont collectées via le transducteur situé en sortie du TGBT (tableau électrique).
La barre de progression indique le sens dans lequel se dirige le flux d’énergie. Lorsqu’elle est verte, cela signifie que l’énergie est soutirée du réseau électrique. Lorsqu’elle est rouge, cela signifie que l’énergie est renvoyée sur le réseau.
2.1.3 Production PV
L’encart “Production PV” affiche en temps réel la valeur concernant la puissance du courant électrique continue (DC), avant conversion en courant alternatif (AC), mesurée dont les données sont collectées depuis l’onduleur situé dans l’armoire AEA.
La barre de progression indique le sens dans lequel se dirige le flux d’énergie. Lorsqu’elle est verte, cela signifie que l’énergie provient des panneaux photovoltaïque. Cette flèche ne peut en théorie pas changer de couleur ni de sens.
2.1.4 Stockage batterie
L’encart “Stockage batt.” affiche en temps réel la valeur concernant la puissance du courant électrique continue (DC), avant conversion en courant alternatif (AC), mesurée dont les données sont collectées depuis le BMS (système de gestion de batterie) situé dans l’armoire AEA.
Le pourcentage d’énergie stockée est également fourni par le BMS et affiché tel quel sur l’interface.
La barre de progression indique le sens dans lequel se dirige le flux d’énergie. Lorsqu’elle est verte, cela signifie que l’énergie est acheminée vers la/les batterie(s) pour y être stockée. Lorsqu’elle est rouge, cela signifie que l’énergie est soutirée du stockage sur batterie.
2.1.5 Consommation
L’encart « Consommation » affiche en temps réel la puissance consommée estimée à partir de la puissance électrique soutirée du réseau cumulée à celle fournie par l’armoire AEA.. Les données de l’injection par l’armoire sont collectées via un transducteur situé dans l’armoire AEA.
La barre de progression indique le sens dans lequel se dirige le flux d’énergie. Lorsqu’elle est verte, cela signifie que l’armoire AEA soutient la demande en énergie nécessaire pour couvrir la consommation électrique. Cette barre de progression ne peut en théorie pas changer de couleur ni de sens.
2.2 Historique
2.2.1 Courbes
L’historique des courbes permet d’accéder à une vue d’ensemble de la journée sélectionnée afin de consulter les différentes courbes d’évolution des données de l’installation.
L’interface de cette page se compose de trois parties :
le sélectionneur de date
le graphique “Puissance”
le graphique “Consommations détaillées (superposées)”
2.2.1.1 Sélectionneur de date
La date sélectionnée par défaut est celle de la journée en cours. Il est possible de choisir une autre date pour faire varier les données affichées sur la page en cliquant sur le sélectionneur de date en haut à gauche, dans la barre blanche.
Cette action ouvre une fenêtre popup dans laquelle sont proposées trois options :
afficher la date du jour
afficher la date de hier
afficher une autre date
Le choix d’une autre date ouvrira une nouvelle fenêtre popup qui permet de changer l’année, le mois et le jour afin de trouver rapidement la date souhaitée. Cliquer sur “Ok” pour confirmer son choix.
Pour confirmer la date sélectionnée et mettre à jour les données de la page, cliquer sur “Valider”.
Il est possible de changer la date affichée en glissant vers le jour précédent ou le jour suivant respectivement grâce aux boutons ronds et fléchés situés à gauche et à droite du graphique.
Lorsque un changement de date est effectué, des cookies sont enregistrés afin de pouvoir afficher les données à la date sélectionnée lors de la dernière utilisation de l’application, dans un délai maximum de trois jours. Au-delà, les cookies sont supprimés automatiquement.
2.2.1.2 Graphique des courbes
Le premier graphique de la page affiche par défaut cinq courbes représentant l’évolution dans le temps les données de l’armoire :
Axe de gauche (en kW)
“Consommation” : puissance consommée calculée par la somme de ce qui est soutiré sur le réseau en plus de ce qui est injecté par l’armoire (courant AC)
“Photovoltaïque” : puissance des panneaux photovoltaïques (courant DC)
“Réseau” : puissance du réseau électrique (courant AC). Valeur positive = soutirage du réseau / valeur négative = injection sur le réseau (pour les application avec revente du surplus)
“Stockage batt.” : puissance du stockage sur batterie (courant DC). Valeur positive = décharge de la batterie / valeur négative = charge de la batterie
Axe de droite (en %)
“État de charge batt.” : état de charge de la batterie
L’armoire permet d’effectuer une mesure et de capter instantanément sa fluctuation, ce qui peut impliquer un grand nombre de points minutes. Pour des raisons d’optimisation des performances de l’application, chaque courbe affiche 1 point (dont la valeur est moyennée) toutes les 10 minutes. Ainsi, une journée est représentée par 144 points moyennés et affichés pour chaque courbe.
Ces données sont actualisées à chaque rafraichissement de la page ou au changement de date.
Il est possible de masquer une ou plusieurs courbes en cliquant simplement sur l’élément concerné dans la légende en haut du graphique.
2.2.1.3 Graphique des consommations détaillées
Ce graphique affiche les courbes de puissance des différents points de consommation mesurés par votre équipement. Cette option n’est pas disponible en standard, veuillez contacter le support.
2.2.2 Bilans
Le bilan est situé dans la partie “Historique”. Il permet de comparer sur la journée les différentes quantités d’énergies (en kWh) sur différentes périodes.
L’interface de cette page se compose de quatre parties :
le sélectionneur de date
l’encart “Sur la période”
le graphique”Bilans”
le graphique “Consommations détaillées (superposées)”
2.2.2.1 Sélectionneur de date
Le sélectionneur de date fonctionne de la même façon que pour l’historique des courbes, mais permet en plus de sélectionner une période de type “mois” ou “année”.
2.2.2.2 Encart “Sur la période”
Cet encart affiche des valeurs calculées sur la base de la période sélectionnée dans le sélecteur de date. Les valeurs calculées sont les suivantes :
“Consommation totale” : consommation totale d’énergie en kWh (AC)
“Production photovoltaïque” : production d’énergie d’origine photovoltaïque en kWh (DC)
“Conso. fournie par le réseau” : consommation d’énergie fournie par le réseau en kWh (AC)
“Énergie fournie par stockage” : consommation d’énergie provenant de la batterie en kWh (DC)
“Énergie stockée” : quantité d’énergie envoyée dans la batterie en kWh
“Taux d’autoconsommation” : part de la production photovoltaïque consommée sur place par rapport à l’ensemble de la production, en %
“Taux de couverture” : part de la production photovoltaïque couvrant la consommation, en %
“Vente au réseau” : quantité d’énergie envoyée sur le réseau en kWh (AC). La valeur en euros est calculée sur la base du prix de vente de l’électricité renseigné dans la page “Mon compte”, dans la rubrique “Équipements” (colonne “Tarif de vente”).
L’encart montre également à droite un diagramme circulaire qui correspond à la répartition des différents points de consommation (% sur la base des kWh consommés sur la période).
2.2.2.3 Graphique “Bilans”
Les valeurs sont calculées par le système de supervision sur la base des puissances relevées et cumulées dans le temps (par tranche horaire). Pour des raisons d’optimisation des performances de l’application, le pas de considération à partir duquel est affiché une barre est de 0,1 kWh. Ainsi, une journée est représentée par 24 emplacements correspondant aux 24 heures, un mois par 28 à 31 emplacements selon le mois correspond aux journées, et une année est représentée par 12 emplacements correspondant aux 12 mois.
Ces données sont actualisées à chaque rafraichissement de la page ou au changement de date et il est possible de masquer un ou plusieurs jeux de barres en cliquant simplement sur l’élément concerné dans la légende en haut du graphique.
Le graphique affiche par défaut quatre jeux de barres représentant le cumul sur la période de :
“Consommation totale” : correspond au cumul de l’énergie consommée. Elle est calculée en agrégeant la puissance mesurée en sortie du TGBT (tableau électrique) à celle injectée par l’armoire AEA.
“Production PV” : correspond au cumul de l’énergie produite par l’installation photovoltaïque. Elle est mesurée et fournie par l’onduleur à l’intérieur de l’armoire..
“Fournie par stockage” : correspond au cumul de l’énergie fournie par les batteries. Elle est calculée en agrégeant la puissance mesurée en sortie de la batterie.
“Réseau” : correspond au cumul de l’énergie consommée fournie par le réseau électrique. Elle est calculée en agrégeant la puissance électrique mesurée sur le raccordement au réseau électrique et dont les données sont collectées via le transducteur situé en sortie du TGBT (tableau électrique).
Comme pour le graphique précédent, les valeurs sont calculées par le système de supervision sur la base des puissances relevées et cumulées dans le temps (par tranche horaire). Pour des raisons d’optimisation des performances de l’application, le pas de considération à partir duquel est affiché une barre est de 0,1 kWh. Ainsi, une journée est représentée par 24 emplacements correspondant aux 24 heures, un mois par 28 à 31 emplacements selon le mois correspond aux journées, et une année est représentée par 12 emplacements correspondant aux 12 mois.
Ces données sont actualisées à chaque rafraichissement de la page ou au changement de date et il est possible de masquer un ou plusieurs jeux de barres en cliquant simplement sur l’élément concerné dans la légende en haut du graphique.
2.2.3 Rapports
Le générateur de rapport est situé dans la partie “Historique”. Il permet de programmer des rapports envoyés automatiquement par e-mail sur différentes périodes.
L’interface de cette page se compose de quatre parties :
l’aperçu du rapport selon la période choisie
la définition de la fréquence d’envoi
le définition du nombre d’usager
la définition des destinataires des rapports
2.2.3.1 aperçu du rapport
Il est possible d’obtenir un aperçu du rapport avec les données de la période sélectionnée dans le sélectionneur de date, en haut à gauche (comme pour la rubrique « Courbes » et « Bilans ».
Les choix possibles sont :
Journalier : aujourd’hui / hier
Mensuel : mois actuel / mois précédent
Annuel : année actuelle / année précédente
2.2.3.2 Fréquence d’envoi
Il est possible d’activer 3 types de rapports :
le rapport journalier : il est envoyé le lendemain, avec les données cumulées de la veille, en comparaison avec la même journée de l’année précédente
le rapport mensuel : il est envoyé le 1er jour du mois suivant, avec les données cumulées du mois précédent, en comparaison avec le même mois de l’année dernière
le rapport annuel : il est envoyé le 1er janvier de l’année suivante, avec les données cumulées de l’année précédente, en comparaison avec l’année d’avant
Pour activer le rapport, il suffit de cliquer sur le menu déroulant et de sélectionner « Activer » le ou les rapports souhaités.
2.2.3.3 nombre d’usagers
Il est possible de renseigner un nombre dans le champ « Nombre d’usagers » afin de calculer automatiquement le nombre de kWh consommés par personne.
2.2.3.4 Destinataires
Il est un possible de renseigner un ou plusieurs e-mails (séparés d’une virgule) qui recevront les rapports activés selon la fréquence souhaitée.
2.3 La barre de menu
La barre de menu permet de faciliter la navigation au sein de l’application. Pour un utilisateur ayant les droits d’accès à une seule installation, elle est composée du logo de l’application, du lien de menu pour accéder au tableau de bord, du lien de menu pour accéder à l’historique, du nom d’utilisateur actuellement connecté et du bouton de déconnexion.
Pour les utilisateurs ayant les droits d’accès à plusieurs installations, un menu déroulant figure entre le logo et le lien de menu d’accès au tableau de bord. Il permet de sélectionner parmi une liste d’installations autorisées d’accès celle dont il souhaite afficher les données.
Pour les utilisateurs ayant un QR code SmartLife, celui est affiché à droite de l’icône des notifications.
2.4 Les modes de pilotage automatique
MyHome&me dispose de modes de pilotage automatique qui sont activables depuis l’icône d’une maison avec une horloge dans le menu principal.
Information
Ces modes de pilotage automatique ne sont disponibles que pour les installations raccordées au réseau.
Après avoir cliqué sur l’icône dédié aux modes de pilotage, un fenêtre apparait avec les modes disponibles.
Attention
Vous devez avoir renseigné votre puissance souscrite au réseau pour pouvoir activer l'un des modes disponible. Vous pouvez le faire sur la page "Mon compte", dans la rubriques "Mes équipements".
2.4.1 Le mode Ecowatt
L’armoire AEA on-grid (raccordée réseau) dispose d’un mode Ecowatt activable depuis le menu principal. La finalité de cette fonctionnalité est de réduire l’impact sur le réseau électrique lorsque RTE annonce au travers de son portail Ecowatt des tensions et des risques de coupure sur le réseau électrique.
Une fois activé, le mode de pilotage Ecowatt permet de surveiller automatiquement, sur les 24 heures à venir, l’annonce d’une période « rouge » par RTE.
Lorsqu’une période rouge est détectée, l’armoire AEA va forcer la charge des batteries avec le réseau, à hauteur de la puissance souscrite (en complément du surplus photovoltaïque), pendant un nombre d’heures égal au nombre d’heures “rouges” annoncées par RTE.
Une fois arrivé sur la période rouge concernée, la charge forcée des batteries par l’armoire est arrêtée et l’intégralité de l’énergie stockée est restituée pour couvrir la consommation du site équipé en sollicitant le moins possible le réseau.
Les périodes sont visibles directement depuis l’application MyHome&me sur une période de 96 heures (le pilotage automatique n’anticipe que sur les 24 heures à venir).
2.4.2 Le mode Tempo
L’armoire AEA on-grid (raccordée réseau) dispose d’un mode Tempo activable depuis le menu principal. Cette fonctionnalité est intéressante si vous disposez d’un contrat Tempo d’EDF. La finalité de cette fonctionnalité est de vous aider à réduire votre facture d’électricité en rechargeant vos batteries pendant les heures creuses définies par le contrat Tempo d’EDF (de 22h00 à 6h00).
Une fois activé, le mode de pilotage Tempo permet de surveiller automatiquement, sur les 24 heures à venir, l’annonce d’une journée « rouge » par EDF.
Lorsqu’une période rouge est détectée, l’armoire AEA va programmer la charge des batteries avec le réseau, à hauteur de la puissance souscrite, pendant la période creuse (de 22h00 à 6h00), de sorte à avoir la batterie chargée à 100% au début de la période pleine (de 6h00 à 22h00).
Une fois arrivé sur en période pleine concernée, la charge forcée des batteries par l’armoire est arrêtée et l’intégralité de l’énergie stockée est restituée pour couvrir la consommation du site équipé en sollicitant le moins possible le réseau.
Les journée sont visibles directement depuis l’application MyHome&me :
2.4.3 Le mode Plages
L’armoire AEA on-grid (raccordée réseau) dispose d’un mode Plages horaires activable depuis le menu principal. Cette fonctionnalité permet de programmer des périodes de charges de vos batteries sur le réseau.
Une fois le mode activé en cliquant sur le bouton « Activer Plages », la fenêtre vous propose le bouton « Ajouter une plage ». Cliquez dessus pour ajouter autant de plage que vous le souhaitez.
Le menu déroulant « Jour de la semaine » vous permet de sélectionner le jour de la semaine pour lequel vous souhaitez que le programme soit appliqué. Par exemple si vous sélectionner « Lundi », la programmation de votre charge batterie se fera tous les lundi tant que le mode Plages horaires est activé.
Le champ de saisie « Heures de début » correspond à l’heure à laquelle vous souhaitez commencer à charger vos batteries sur le réseau.
Le champ de saisie « Durée » correspond au nombre d’heure que devra durer la charge de la batterie à partir de l’heure de début renseignée. Une fois sélectionné, la colonne « Date de fin » se rempli automatiquement en calculant à quelle heure se terminera votre charge des batteries sur le réseau.
Le bouton bleu « Dupliquer » vous permet de dupliquer la ligne de programmation correspondante, avec les mêmes paramètres.
Le bouton rouge « Supprimer » vous permet de supprimer la ligne de programmation correspondante.
Pour que vos modifications soient prise en compte, il est nécessaire de cliquer sur le bouton « Sauvegarder » à côté du bouton « Ajouter une plage ».
Information
Lorsque vous choisissez de désactiver le mode Plage horaires, les plages horaires ne seront plus prise en compte, mais elle ne seront pas supprimée pour autant. Ainsi, si vous souhaitez réactiver le mode Plages horaires ultérieurement, vous retrouverez les plages horaires que vous aviez défini avant de désactiver ce mode.
2.5 Les messages d’information
L’application informe en temps réel l’utilisateur d’éléments liés à la navigation ou au comportement de l’armoire.
Ainsi, des messages d’information avec un fond de couleur visible peuvent être affichés sous le menu de chaque page de l’application :
Voici la signification du code couleur utilisé en fond des messages pour qualifier le type d’information :
Couleur
Signification
Vert
Information de validation ou de réalisation avec succès d’une action.
Orange
Information concernant un problème de communication et de synchronisation n’affectant pas l’accès aux données.
Rouge
Information concernant des problèmes d’accès aux données.
2.6 Mon compte
L’utilisateur a la possibilité d’accéder aux informations de son compte en cliquant dans la barre de menu en haut à droite (sur son identifiant de connexion).
Ainsi, l’utilisateur arrive sur l’écran ci-dessous où se trouve dans l’encart de gauche “Modifier mes informations”, les champs modifiables liés au mot de passe et à l’adresse e-mail. Le champs “Nom d’utilisateur” n’est pas modifiable par l’utilisateur.
Sur l’encart de droite “Options du compte”, est affichée la liste des installations auxquelles l’utilisateur à accès depuis son propre compte.
3. Accès à l’application
L’accès à l’application n’est possible que pour les utilisateurs disposant d’un compte MyHome&me.
3.1 Création du compte
Sirea est en charge de la création du compte utilisateur sur demande de l’installateur.
3.2 Accès à l’application
Une connexion internet est requise pour accéder à l’application.
Le compte utilisateur est gratuit la première année à partir de la date de mise en service et soumis à abonnement annuel au terme de la première année, au tarif en vigueur défini par Sirea.
Le paiement doit être réglé directement à Sirea par les moyens suivants :
Virement
Paypal
4. Traitement des données
Afin de garantir le fonctionnement de l’application MyHome&me, l’utilisation de données à caractère personnel renseignées par le client ou collectées depuis son installation est indispensable. Il est donc obligatoire, au travers du formulaire de la fiche du profil client normalement transmises par l’installateur, d’autoriser Sirea à exploiter les données renseignées dans ce formulaire et collectées sur l’installation pour les restituer au travers de la solution de supervision.
4.1 Données renseignées
Les données renseignées dans le formulaire SIR-FPC-AEA-REV2 ou le formulaire en ligne (https://www.sireagroup.com/consentement/) sont utilisées de la façon suivante :
Numéro de série du produit
Ce numéro se trouve sur l’étiquette latérale au bas de l’armoire. Il permet d’identifier le produit concerné.
Adresse postale / code postal / ville de l’installation
Mesure de l’ensoleillement du site dans le cadre d’une fonctionnalité de prévisionnel de production.
Puissance photovoltaïque (en Wc) raccordée à l’armoire
Pour vérifier la fiabilité des données collectées sur l’installation.
Nombre de batteries raccordées à l’armoire
Pour calculer l’optimisation de l’autoconsommation.
Nom de l’installateur (raison sociale)
Pour effectuer le suivi de la maintenance.
Nom du client final
Pour différencier la dénomination des installations dans le cadre d’un accès à plusieurs installations par utilisateur.
Adresse e-mail du client final
Pour transmettre les notifications provenant de l’application par courrier électronique.
3.2 Données collectées
Les données collectées sur l’installation sont utilisées de la façon suivante :
Puissance réseau
Affichage en temps réel Historisation pour restitution sur demande
Puissance photovoltaïque
Affichage en temps réel Historisation pour restitution sur demande
Puissance batterie
Affichage en temps réel Historisation pour restitution sur demande
Puissance consommation
Affichage en temps réel Historisation pour restitution sur demande
Cette documentation est à destination des utilisateurs du logiciel MicroLADDER, permettant de programmer tous les automates de la gamme SIREA. Les particularités de chaque automate sont décrites dans leur notice respective.
2. Version installée
Cette notice s’adresse à la version 18.3 de MicroLADDER.
Avertissement
Il est important de noter que cette notice est pour la dernière version de MicroLADDER. Au fil des années des modifications/améliorations ont été réalisés. Si vous installez une version antérieure, vous vous exposez au fait que cette documentation ne soit plus entièrement valable. Certaines notes ("valable depuis la version ...") ont été ajoutées pour essayer de vous aider si vous utilisez une version antérieure.
3. Installation
Pour installer le logiciel MicroLADDER, plusieurs manipulations vont devoir être réalisées pour qu’il fonctionne correctement. On va devoir installer plusieurs entités. Le tableau suivant décrit les entités ainsi que leur utilité.
Entité
Utilité
Compilateur
Ce logiciel a pour rôle de rechercher toutes les erreurs possibles dans un programme source, telles que des fautes d’orthographe, les variables, les types, etc.
MicroLADDER
Ce logiciel sert à réaliser l’application, la compiler, faire de la visualisation dynamique et du forçage de variables.
Code système
Le code système est une archive qui rassemble l’ensemble des macros et des fonctions (dans des fichiers .h et .c) qui font fonctionner les automates. C’est macros et fonctions peuvent être utilisés dans les programmes. Il sert aussi à gérer le côté hardware avec les différentes entrées/sorties des automates
MicroCONTROL
Ce logiciel sert à charger l’application, faire de la visualisation dynamique et du forçage.
MicroDRIVER
Ce logiciel est utilisé par MicroCONTROL et MicroLADDER pour la communication avec l’automate.
Tableau sur les entités et leurs utilités
3.1 Étape 1: Installation du Compilateur
3.1.1 Sous le système d’exploitation Windows
Pour Windows, exécuter le fichier d’installation « gcc-arm-none-eabi-4_9-2015q1-20150306-win32.exe » en double cliquant dessus. Cocher « Add path to environment variable » à la fin de l’installation et fermer la fenêtre de commande qui reste ouverte.
Avertissement
Sous Windows 7, il faut installer le compilateur à partir du compte administrateur et donner l'accès à tous les utilisateurs.
3.1.2 Sous le système d’exploitation Linux
Ouvrer tout d’abord un terminal. Taper dans le terminal « sudo apt-get install gcc-arm-none-eabi ». Cela permet d’installer la version du compilateur GCC compatible avec la distribution Linux. Pour connaître la version installée, taper dans un terminal « arm-none-eabi-gcc –version ».
3.2 Étape 2: Installation de MicroLADDER
3.2.1 Sous le système d’exploitation Windows
Pour l’installer, sous Windows, il faut exécuter le fichier « setup-mladder-x.x.exe » en double cliquant dessus.
3.2.2 Sous le système d’exploitation Linux
Ouvrer un terminal. Taper puis exécuter la commande « sudo dpkg -i mladder-x.x.deb ». « x.x » correspond à la version choisie. Si l’installation ne fonctionne pas par manque de dépendance, il est nécessaire de lancer la commande « sudo apt-get -f install ».
3.3 Étape 3: Installation du code système
Ouvrer le logiciel MicroLADDER dont l’icône est la suivante:
La fenêtre suivante s’ouvre:
Dans l’onglet « Programme », cliquez sur « Importer le code système ». Une fenêtre popup s’ouvre. Rechercher puis sélectionner le fichier « mArm.sys ».
Avertissement
Le choix du code système doit se faire en fonction de la version du boot installé sur la carte et de la version de MicroLADDER.
Information
Cette étape est optionnelle. En effet, lors de l’exécution d'un programme, un code système va aller être chercher (le code système ayant la version la plus récente). Cependant, certains problèmes peuvent subvenir du fait que ce code système soit distant et non sur votre machine. Il est donc fortement recommandé d'installer le code système.
3.4 Étape 4: Installation de MicroCONTROL
3.4.1 Sous le système d’exploitation Windows
Pour l’installer MicroCONTROL, il faut exécuter le fichier « setup-mcontrol.exe » en double cliquant dessus.
3.4.2 Sous le système d’exploitation Linux
Ouvrer un terminal. Taper puis exécuter la commande « sudo dpkg -i mcontrol.deb ».
3.5 Étape 5: Installation de MicroDRIVER
3.5.1 Sous le système d’exploitation Windows
Pour l’installer, sous Windows, il faut exécuter le fichier » setup-mdriver.exe » en doublant cliquant dessus.
3.5.2 Sous le système d’exploitation Linux
Ouvrer un terminal. Taper puis exécuter la commande « sudo dpkg -i mdriver.deb »
3.6 Étape 6: Redémarrer votre ordinateur
La dernière étape, quoique la plus simple est de redémarrer votre ordinateur.
4. Prise en main de l’interface
4.1 Lancer et quitter MicroLADDER
Pour démarrer le logiciel, double-cliquer sur l’icône de MicroLADDER.
Le logiciel MicroLADDER s’ouvre alors sur la fenêtre principale suivante:
Pour quitter le logiciel, cliquez soit sur l’icône « Fermer » (la croix rouge en haut à droite) soit aller dans la barre du menu puis Fichier>Quitter.
Une fenêtre popup s’ouvre alors nous demandant si on souhaite sauvegarder les modifications qui ont été faites à notre programme. Si vous cliquez sur « Non » alors vous perdrez toute dernières modifications non enregistrées. Si on clique sur « Annuler », on ne ferme plus le logiciel.
4.2 Caractéristiques de la fenêtre principale
Les éléments suivants peuvent être trouvés sur la fenêtre principale :
Barre de titre : vous pouvez y trouver la version du MicroLADDER installé. Dans l’exemple de la Capture d’écran ci-dessous, vous pouvez voir « MicroLADDER v18.3 ». Elle indique également si vous utilisez le code système à distance ou embarqué. Ici, on utilise le code système distant v15.6.
Barre du menu: vous pouvez y trouver les onglets: – Fichier – Programme – Pages – Librairie – Ladder – Code – Communication
Barre d’outils : la barre d’outils comprend les éléments suivants : – Sélectionneur de page – Bouton « Ajouter » – Bouton de suppression – Bouton de recherche – Bouton de recherche et de remplacement – Bouton « Se connecter » – Bouton « Afficher les variables »
Fenêtre de programmation : cette fenêtre délimite l’espace pour programmer. On peut se déplacer dans cette fenêtre en utilisant la barre de défilement située sur le côté droit.
4.3 Barre de menu
La barre de menu MicroLADDER contient une série de menu déroulants qui peuvent être utilisés pour accéder aux différents outils et utilitaires de configuration du logiciel.
Les menu déroulants suivants par ordre de la gauche vers la droite sont inclus dans la barre de menu :
4.3.1 Fichier (Alt+F)
Les fonctionnalités suivantes ainsi que leur raccourci (explicité entre parenthèses) sont disponibles:
Nouveau (Ctrl+N): crée un nouveau projet. Si vous avez déjà un projet ouvert, il vous sera demandé d’enregistrer ou non les modifications.
Ouvrir (Ctrl+O): ouvre un projet déjà existant. Une fenêtre popup pour sélectionner le fichier dans vos dossiers apparaîtra.
Enregistrer (Ctrl+S): enregistre les modifications du projet ouvert avec le nom et l’emplacement prédéfinis. Si le projet sur lequel on travaille n’a pas encore été ouvert alors une fenêtre popup s’ouvre pour sélectionner l’endroit dans lequel on souhaite sauvegarder le fichier. Un fichier .lad sera alors enregistré à l’emplacement spécifié. Un astérisque situé dans la barre de titre à côté de la version du code système indique si les dernières modifications effectuées sur le projet en cours ont déjà été enregistrées (sans astérisque) ou non (avec astérisque).
Enregistrer sous : enregistre les modifications du projet en choisissant le nom et l’emplacement dans une une fenêtre popup. Les cinq projets les plus récents seront également affichés dans ce menu, pour un accès facile.
Quitter (Ctrl+Q): quitte MicroLADDER. Si on n’a pas enregistré les modifications manuellement, alors une fenêtre popup nous demandant si on souhaite sauvegarder apparaîtra. Si vous cliquez sur « Non » alors on perdra toutes dernières modifications non enregistrées. Si on clique sur « Annuler », on ne ferme plus le logiciel.
Capture d’écran de la fenêtre popup de fermeture de MicroLADDER
4.3.2 Programme (Alt + P)
Compiler: compile un programme. Après la compilation, une nouvelle fenêtre popup s’ouvrira nous permettant de choisir un emplacement où l’enregistrer.
Avertissement
Pour compiler, le code système doit d'abord être importé dans le projet ou être disponible en ligne (étape 3 de l'installation).
Définir le type de programme: sélectionne le type de programme à développer, soit un bloc fonction, soit un programme spécifique automate parmi: – µArm A1 – µArm A2 – µArm A2-C – µArm A3 – µArm A3-B – µArm A4 – µArm A4+ – µArm A5 – µArm A6 – µArm A7 – µArm A8 – µArm A9 A – µArm A9 B – µArm A10 – µArm A11 – µArm A12 – µArm A13 – µArm A14 – µArm A15 – µArm A16 – µArm G1 – µArm H1
Avertissement
Il est à noter que le code système doit être importé pour voir toutes les options des types de programme à créer. Si le code système n'est pas importé, seul le type de "Bloc fonction" est disponible.
Définir une icône: associe une icône au projet. Cette icône apparaîtra dans l’icône de la fenêtre à la place de l’icône de MicroLADDER. C’est une fonctionnalité disponible à la fois pour les programmes automates et les blocs fonctions. En revanche, il est plus utile de définir une icône pour un bloc fonction car une image sur le bloc sera affiché lorsqu’il est importé dans un projet et appelé sur une page Ladder.
Équipements: donne la liste des appareils, divisée en deux types : – Équipement de base : cette option créé une liste de paramètres qui permettront de configurer la remontée des données sur le serveur. – Ajouter un équipement distant : cette option permet de définir le ou les esclaves utilisé(s) pour créer un réseau Modbus (voir la section 7. IO Bus).
Afficher les variables: cette option permet d’ouvrir la fenêtre de l’éditeur de variables. Cette fenêtre contient toutes les informations concernant les variables du programme, tant les variables système que les variables utilisateur. Cette fenêtre sert également à vérifier la valeur en temps réel des variables lors de la communication avec l’API. On peut également accéder à cette option en utilisant le bouton « Afficher les variables » situé sur la barre d’outils.
Configurer le code système : configure les options pour la compilation. Cliquez sur cette option pour modifier les paramètres du code système en sélectionnant ceux qui nous intéressent parmi: – AUTO-STOP (par défaut) – DHCP (par défaut) – DNS (par défaut) – GFX – HTTP – LCD (par défaut) – RF L’explication pour chaque paramètres est dans la section 6.4 Configuration du code système.
Importer le code système: avant de créer un nouveau programme, le code système doit être importé. Cliquez sur cette option, une fenêtre popup s’ouvre alors, nous permettant de sélectionnez le fichier mArm.sys. Une fois le code système correctement importé, les différentes options pour le type de programme seront disponibles. Si vous disposez d’une connexion Internet, vous n’avez pas besoin d’importer le code système car MicroLADDER utilisera le code système en ligne mais ceci est déconseillé.
Exporter le code système: cette option permet d’exporter le code système actuellement importé dans le projet, afin de l’utiliser dans d’autres projets. On peut utiliser cette option pour développer un nouveau programme en utilisant le même code système, ou simplement pour connaître la version du code système d’un automate.
Supprimez le code système: cette option permet de supprimer le code système précédemment importé.
Configurer l’IHM: configure les options pour l’IHM.
Importer l’IHM: cette option permet, si on a créé une IHM avec MicroHMI de l’inclure dans le projet actuel.
Exporter l’IHM: cette option permet d’exporter une IHM précédemment importée.
Supprimer l’IHM: cette option permet de supprimer une IHM précédemment importée.
4.3.3 Pages (Alt+G)
Ajouter une page: ajoute une nouvelle page à votre projet actuel. Une fenêtre popup s’ouvre. Les champs suivants y sont disponibles: – « Libellé »: chaîne de caractères du nom que va prendre la page si on ne remplit pas ce champ un libellé sera créé automatiquement en attribuant un numéro à la page – « Langage »: menu déroulant permettant de choisir Ladder ou C. Par défaut le langage est le Ladder. – « Appeler sur interruption »: champs à cocher si on souhaite que la page soit appelée par une interruption – « Timer (en ms) »: entier indiquant le temps (en millisecondes) au bout duquel la page sera appelée par interruption
Capture d’écran de la fenêtre popup « Ajouter une page »
Modifier cette page: cette option permet de modifier les champs explicités juste au dessus d’une page spécifique déjà créée.
Dupliquer cette page: duplique la page sur laquelle on se trouve. Les propriétés et le code seront conservés dans cette nouvelle page.
Information
Il est à noter que la nouvelle page ajoutée aura une étiquette automatiquement créée en attribuant le prochain numéro de page disponible à la nouvelle page.Si la page dupliquée avait un intitulé alors la nouvelle page n'aura pas cet intitulé.
Déplacer cette page: déplace la page sur laquelle on se trouve actuellement. En cliquant sur cette option, une fenêtre popup s’ouvre nous demandant de sélectionner la nouvelle position de la page grâce à un menu déroulant.
Capture d’écran d’une fenêtre popup « Déplacer cette page »
Supprimer cette page: supprime la page sur laquelle on se trouve. Une nouvelle fenêtre de confirmation de suppression de la page s’ouvre. Si on souhaite bien supprimer la page, on clique sur « Oui » sinon fermer la fenêtre ou cliquez sur « Non ».
Capture d’écran de la fenêtre popup de confirmation de suppression de la page actuelle
Page 1 (et suivante): liste des différentes pages disponibles dans le projet directement accessibles depuis ce menu.
4.3.4 Librairie (Alt+L)
Importer une fonction: importe une fonction dans le projet en cours en la sélectionnant dans la fenêtre popup qui apparaît.
Exporter une fonction: exporte une fonction vers le projet en cours en la sélectionnant dans la nouvelle fenêtre popup qui apparaît.
Supprimer une fonction: supprime une fonction du projet en cours en la sélectionnant dans la nouvelle fenêtre popup qui apparaît.
4.3.5 Ladder (Alt+D)
Avertissement
Ce menu déroulant ne sera pas accessible depuis une page C.
Tout sélectionner (Ctrl+A): cette option permet de sélectionner tous les éléments inclus dans une page active.
Inverser la sélection (Ctrl+Maj+I): cette option permet de sélectionner les éléments que l’on ne sélectionne pas actuellement (inverse la sélection). Si aucun élément n’est sélectionné, tous les éléments seront alors sélectionnés en cliquant sur cette option.
Couper (Ctrl+X): cette option permet de couper un/des élément(s). Une fois sélectionné le ou les éléments que vous souhaitez couper, cliquez sur cette option. Le ou les éléments sélectionnés ne disparaîtront pas et ne changeront pas d’apparence pour indiquer qu’ils sont en train d’être coupés. Il (Ils) disparaîtront simplement de sa (leur) position précédente lorsque vous le (les) collerez. On peut également couper le ou les éléments en sélectionnant cette option dans le menu contextuel.
Copier (Ctrl+C): cette option sert à copier un/des éléments. Une fois sélectionné le ou les éléments que vous souhaitez copier, cliquez sur cette option. Vous pouvez également copier le ou les éléments en sélectionnant cette option dans le menu contextuel.
Coller (Ctrl+V): cette option permet de supprimer un/des éléments de la page. Positionnez le curseur de la souris à l’endroit où vous souhaitez coller le ou les éléments précédemment coupé(s) ou copié(s). On peut également coller le ou les éléments en sélectionnant cette option dans le menu contextuel.
Supprimer (suppr): cette option sert à supprimer un/des éléments de la page. Une fois sélectionné(s) le(s) élément(s) que l’on souhaite supprimer, cliquez sur cette option. On peut supprimer également le ou les éléments en sélectionnant cette option dans le menu contextuel ou en utilisant le bouton « Supprimer » placé dans la barre d’outils.Ce bouton s’active lorsqu’il y a une sélection.
Propriétés: cette option permet d’affecter la variable ou le code associé à l’élément sélectionné (un seul élément à chaque fois). La variable peut être affectée à la fois avec l’adresse et le mnémonique. On peut également accéder aux propriétés de l’élément en sélectionnant cette option dans la menu contextuel ou en double-cliquant sur l’élément. Notez que le double-clic ne fonctionne que si MicroLADDER n’est pas connecté à l’automate. Si il y a une connexion alors le double-clic permet de forcer la valeur d’une variable.
Ajouter: cette option sert à inclure un nouvel élément à la page actuelle Ladder. Il suffit de sélectionner l’élément désiré dans le menu déroulant et de le placer avec le curseur de la souris à l’endroit voulu par un simple clic gauche. On peut également ajouter des éléments à partir du menu contextuel ou en utilisant le bouton « Ajouter » placé dans la barre d’outils. Lors de l’accès via le menu contextuel, assurez vous de placer d’abord le curseur de la souris à l’emplacement souhaité avant de cliquer avec le bouton droit, car l’élément sera placé directement sans avoir besoin d’un clic gauche supplémentaire.
4.3.6 Code (Alt+O)
Avertissement
Ce menu déroulant ne sera pas accessible à partir d'une page Ladder.
Rechercher (Ctrl+F): cette option à partir d’une page de code C active la barre de recherche pour la recherche de code. Cette barre apparaîtra en bas de la fenêtre. Écrivez le texte à rechercher dans la barre de recherche et activez « Respecter la casse » pour une recherche sensible à la casse et « Retourner circulaire » si on souhaite que toutes les correspondances de la page soient marquées.
Capture d’écran de la fenêtre popup « Rechercher »
Rechercher et remplacer (Ctrl+R): cette option à partir d’une page de code C ouvre une fenêtre popup. Précisez ensuite les critères de recherche et le texte de remplacement. On peut soit remplacer manuellement une seule partie d’un texte soit remplacer tout. Dans le cas d’un remplacement manuel, vous pouvez également le faire en avant ou en arrière, en activant ou en désactivant l’option Recherche en arrière.
Capture d’écran de la fenêtre popup « Rechercher et remplacer »
4.3.7 Communication (Alt+C)
Information
Ce menu déroulant ne sera pas accessible à partir d'un bloc fonction mais seulement à partir d'un programme automate.
Se connecter: cette option est disponible lorsqu’aucune connexion n’a encore été établie. Une fenêtre popup « Connexion à MicroDRIVER » apparaîtra lorsque l’on clique sur cette option. Plusieurs champs (méthode de communication, le numéro d’esclave et l’adresse du MicroDRIVER) sont à renseigner afin de se connecter à l’automate. On peut également accéder à la fenêtre « Connexion à MicroDRIVER en utilisant le bouton « Se connecter » placé dans le menu Outils. Pour plus d’informations sur comment établir une connexion, se référer à la section 5.3.2 Établissement de la connexion.
Capture d’écran de la fenêtre popup « Connexion à MicroDRIVER »
Déconnecter: cette option est disponible lorsqu’une connexion a déjà été établie. En cliquant sur cette fonction la communication avec l’automate va être arrêtée.
Lecture du numéro d’esclave : cette option est uniquement disponible lorsqu’une connexion avec un automate a été établie. Elle est utilisée pour obtenir le numéro d’esclave d’un esclave spécifique, lorsqu’il est prévu d’en connecter plusieurs en série, sur la même ligne.
Écriture du numéro d’esclave : cette option est uniquement disponible lorsqu’une (et une seule) connexion avec un automate a été établie. Elle permet de modifier son numéro d’esclave.
Démarrage du programme : cette option démarre un programme lorsque l’automate est à l’état STOP. Une fenêtre popup nous indiquant que le programme a bien démarré apparaît.
Arrêt du programme : cette fonction arrête un programme lorsque l’automate est à l’état RUN.
Réinitialisation de l’équipement : cette option réinitialise l’automate à son état BOOT. Elle est utile pour tester ses réactions lorsqu’il est allumé et éteint par exemple.
Réinitialisation des variables : cette fonction remet toutes les variables à leur valeur initiale et n’arrête pas le programme. L’automate est toujours dans l’état RUN. Elle est utile pour simuler un comportement.
Chargement d’un programme : cette option ouvre une fenêtre popup « Chargement d’un programme » nous permettant de choisir le fichier hexadécimal (.hex) que l’on souhaite charger sur l’automate. Cette action prend plusieurs dizaines de secondes, il est donc plus rapide de charger à l’aide d’une carte SD si l’automate dispose d’un lecteur de carte SD.
Information :
Il est possible de connaître la touche correspondante associée aux raccourcis Alt+touche pour l'accès direct à chaque menu déroulant de la barre de menu en cliquant sur Alt alors que la barre de menu est active ou visible. Les lettres associées à chaque touche apparaîtront soulignées.
4.4 Barre d’outils
La barre d’outils se situe en haut de la fenêtre principale.
Capture d’écran de la barre d’outils de MicroLADDER
Les éléments suivants sont inclus dans la barre d’outils :
Sélectionneur de page: cette option ouvre un menu déroulant permettant de sélectionner la page avec laquelle on souhaite travailler.
Ajouter: cette option sert à inclure un nouvel élément Ladder sur la page actuelle. Il suffit de sélectionner l’élément souhaité dans le menu déroulant et de le placer avec le curseur de la souris à l’endroit souhaité par un simple clic gauche. On peut également ajouter des éléments à partir du menu par un clic droit. Lorsqu’on accède au menu par le clic droit, il faut s’assurer de placer d’abord le curseur de la souris à l’endroit désiré avant de cliquer avec le bouton droit de la souris. L’élément sera placé directement sans qu’il soit nécessaire de faire un clic gauche supplémentaire.
Icône « Supprimer »: ce bouton est activé uniquement lorsqu’un élément est sélectionné sur la page. Une fois le ou les éléments que vous souhaitez supprimer sont sélectionnés, cliquez sur cette icône. Vous pouvez également supprimer le(s) élément(s) en sélectionnant cette option dans le menu du clic droit.
Icône « Rechercher »: cette option à partir d’une page de code C active la barre de recherche pour la recherche de code. Cette barre apparaîtra en bas de la fenêtre. Écrivez le texte à rechercher dans la barre de recherche et activez « Respecter la casse » pour une recherche sensible à la casse et « Retourner circulaire » si on souhaite que toutes les correspondances de la page soient marquées.
Capture d’écran de la fenêtre popup « Rechercher »
Icône « Rechercher et remplacer »: cette option à partir d’une page de code C ouvre une fenêtre popup. Précisez ensuite les critères de recherche et le texte de remplacement. Vous pouvez soit remplacer manuellement une partie d’un texte à un seul endroit soit tout remplacer. Dans le cas d’un remplacement manuel, vous pouvez également le faire en avant ou en arrière, en activant ou en désactivant l’option Recherche en arrière.
Capture d’écran de la fenêtre popup « Rechercher et remplacer »
Se connecter: cette option est disponible lorsqu’aucune connexion n’a encore été établie. Une fenêtre popup « Connexion à MicroDRIVER » apparaîtra lorsque l’on clique sur cette option. Plusieurs champs (méthode de communication, le numéro d’esclave et l’adresse du MicroDRIVER) sont à renseigner afin de se connecter à l’automate. On peut également accéder à la fenêtre « Connexion à MicroDRIVER en utilisant le bouton « Se connecter » placé dans le menu Outils. Pour plus d’informations sur comment établir une connexion, se référer à la section 5.3.2 Établissement de la connexion. Avant cette étape, on doit avoir sélectionner le type d’automate puis s’être connecter à l’automate.
Capture d’écran de la fenêtre popup « Connexion à MicroDRIVER »
Afficher les variables: cette option ouvre la fenêtre de l’éditeur de variables. Cette fenêtre contient toutes les informations concernant les variables du programme, tant les variables système que les variables utilisateur. On peut également l’utiliser pour vérifier la valeur en temps réel des variables lors de la communication avec l’API. On peut accéder à cette option à partir du menu « Programme » situé dans la barre de menu.
Capture d’écran de la fenêtre popup « Éditeur de variables »
4.5 Fenêtre de programmation
La fenêtre de programmation est le grand espace vide situé sous la barre d’outils utilisée pour le développement de programmes. Deux types de fenêtres de programmation peuvent être affichées : – la fenêtre Ladder – la fenêtre C
Capture d’écran de la fenêtre principale en Ladder de MicroLADDER
Capture d’écran de la fenêtre principale en C de MicroLADDER
5. Programmer sur MicroLADDER
5.1 Les langages de programmation
5.1.1 Langage Ladder
L’idée initiale du Ladder est la représentation de fonction logique sous la forme de schémas électriques. Cette représentation est originellement matérielle : quand l’automate programmable industriel n’existait pas, les fonctions étaient réalisées par des câblages. Le Ladder a été créé et normalisé dans la norme CEI 61131-3. Il est encore aujourd’hui souvent utilisé dans la programmation des automates programmables industriels
Un programme Ladder se lit de haut en bas et l’évaluation des valeurs se fait de gauche à droite. Les valeurs correspondent, si on les compare à un schéma électrique, à la présence ou non d’un potentiel électrique à chaque nœud de connexion. En effet, le Ladder est basé sur le principe d’une alimentation en tension représentée par deux traits verticaux reliés horizontalement par des bobines, des contacts et des blocs fonctionnels, d’où le nom « Ladder » (échelle). C’est un langage volontairement simple et graphique pour être compréhensible. Cela a permis, dans les années 1990, son utilisation sans formation poussée par les électriciens.
5.1.2 Langage C
Le langage de programmation C a été initialement développé par Dennis Ritchie entre 1969 et 1973 chez Bell Laboratories. Il est approprié pour écrire des programmes au niveau du système en raison de la simplicité d’expression, de la compacité du code et de la large gamme d’applicabilité. Il permet au programmeur un large éventail d’opérations allant du haut niveau jusqu’au bas niveau approchant le niveau du langage assembleur. La flexibilité disponible est large ce qui en fait un langage de programmation parfait pour le développement de programmes automate de haut degré de complexité.
5.2 Importation du micrologiciel
Avec cette version de MicroLADDER, le firmware est en ligne et fonctionne automatiquement avec votre système. Aucune importation n’est nécessaire, mais une connexion Internet l’est.
5.3 Connexion avec l’automate
L’établissement d’une connexion avec l’automate est nécessaire lors du chargement d’un programme via un port et lors de la surveillance de variables lorsque l’automate est en RUN.
5.3.1 MicroDRIVER
MicroDRIVER est le logiciel chargé d’établir la connexion entre l’automate et les différentes applications du système. Il peut être considéré comme une « boîte noire » des communications. Il est indépendant du protocole de communication du système. L’utilisateur ne sera pas au courant de son fonctionnement car il s’exécute en arrière-plan. Cependant, si MicroDRIVER n’est pas installé, il sera impossible d’établir la connexion avec l’automate.
5.3.2 Établissement de la connexion
Pour établir la connexion entre MicroLADDER et l’automate, il faut d’abord cliquer sur l’option « Se connecter » dans la barre outils. Une fois cette option sélectionnée, une fenêtre popup de connexion apparaît.
Capture d’écran de la fenêtre popup « Connexion à MicroDRIVER »
Pour la connexion avec MicroDRIVER, plusieurs champs sont à remplir parmi:
Méthode de communication : plusieurs méthodes de communication sont disponibles: – Hôte réseau : la connexion est établie par le réseau. L’adresse IP ou le nom de domaine de l’hôte est à renseigner dans le champs à droite du menu déroulant. L’hôte réseau peut par exemple être notre ordinateur. – Port série : choisissez un port série dans la liste ainsi que sa configuration – Canal : fonctionnalité obsolète
Numéro d’esclave : ce numéro identifie l’automate au sein d’un réseau d’automates. Vous n’avez pas besoin de définir le numéro d’esclave si vous programmez un seul automate. Il sera déterminé après la première connexion.
Adresse de MicroDRIVER : MicroDRIVER est l’application serveur. Il peut s’exécuter localement ou sur un ordinateur distant. S’il s’exécute sur un ordinateur distant, il est nécessaire de spécifier l’adresse IP de cet ordinateur. La configuration de la connexion au MicroDRIVER peut différer selon la façon dont on se connecte à l’automate depuis votre ordinateur. Les paramètres de configuration les plus courants peuvent être vu dans le tableau ci dessous:
Tableau sur les paramètres de configuration en fonction du type de connexion
Une fois les paramètres de connexion correctement renseignés, cliquez sur « Valider » et la connexion sera établie. Vous pouvez vous assurer que la connexion a été établie en vérifiant ce qui suit :
Le bouton « Se connecter » de la barre d’outils est enfoncé (si on clique dessus, on se déconnecte directement à nouveau).
L’option » Se connecter » du menu déroulant « Communication » de la barre de menu est désactivée et l’option « Déconnecter » est disponible.
Un message vert « OK » est apparu sur la barre d’outils.
Les conditions actives du programme apparaissent également en vert sur les pages Ladder
Capture d’écran de la fenêtre principale de MicroLADDER avec l’automate connecté et en ligne
Information
Un pourcentage est affiché en vert près de l'état de la connexion. Il s'agit simplement d'une information supplémentaire qui montre la qualité de la connexion avec l'automate : elle représente le pourcentage de trames qui ont été correctement transmises. Le calcul de ce pourcentage démarre en même temps que MicroDRIVER.
5.4 Utilisation des pages
Le nombre de pages pouvant être utilisées dans n’importe quel programme MicroLADDER est illimité. Chaque page Ladder est limitée à 100 lignes alors que les pages C ne sont pas soumises à cette limitation. La limitation du nombre de lignes à l’intérieur d’une page en Ladder oblige l’utilisateur à structurer le programme en différentes pages et/ou à utiliser des fonctions, ce qui facilite l’interprétation du code.
La page 1 est appelée à chaque cycle automate mais on peut appeler d’autres pages facilement. On peut décider si une page spécifique doit être programmée soit en Ladder soit en C. Des pages de différents langages de programmation peuvent être appelées et combinées facilement. Cela offre à l’utilisateur une grande flexibilité et une interprétation facile de la structure lors de la création d’applications. Assurez vous qu’il n’y a pas de code déjà généré dans une page lors du passage de C à Ladder ou vice-versa, car il sera perdu.
5.4.1 Créer une page
Un nouveau projet MicroLADDER inclut par défaut une seule page (Page 1) qui est configurée par défaut en Ladder. Il est possible de la modifier en allant dans le menu déroulant « Page » de la barre de menu puis en cliquant sur « Modifier la page ». On peut facilement créer une page supplémentaire en ajoutant une nouvelle page ou en copiant une page existante (voir section 4.3.3 Pages (Alt+G) pour plus de renseignements).
5.4.2 Appel d’une page
La page 1 est appelée automatiquement alors que les autres pages doivent être appelées sur interruption, timer, ou avec des ordres d’appel en C ou en Ladder.
5.4.2.1 Par interruption
Il est possible d’appeler les pages sur interruption, la page sera donc appelée à une certaine fréquence. Cette fréquence est paramétrée dans la variable système %SW25 pour une durée précise et rapide.
Information
Il est conseillé d'appeler des pages par interruption lorsqu'elles exécutent des tâches rapides et répétitives.
5.4.2.2 Par timer
Il est possible également d’appeler une page via un timer. On va définir ce timer dans les réglages de la propriété de la page. A chaque cycle automate, l’automate va aller vérifier si son temps exécution est supérieur au timer défini sur la page. Si il est supérieur alors la page va être exécutée.
Information
Il est conseillé d'appeler des pages par timer lorsqu'elles s'exécutent lentement et qu'il n'y a pas besoin qu'elles soient exécutées à chaque cycle.
5.4.2.3 Par ordre d’appel C ou Ladder
Une page peut être appelée à partir d’une autre page à l’intérieur d’un programme, quel que soit le type de code utilisé dans chaque page. Cela signifie qu’une page en Ladder peut être appelée à partir d’une page C et vice-versa. Pour appeler une page en Ladder, il suffit d’ajouter une commande d’appel soit depuis le menu déroulant « Ladder » situé sur la barre de menu, soit par le menu contextuel.
Si la page appelée n’a pas d’étiquette, elle sera appelée par son numéro de page. Dans cet exemple, Page 2. Si la page appelée a un libellé, elle peut être appelée soit par son numéro de page, soit par son libellé. Cependant en Ladder c’est le libellé qui s’affichera au lieu du numéro de la page. On observe cela avec l’appel de la page dont le libellé est « Sequence2 ».
Dans une page écrite en langage C, une autre page peut également être appelée soit par son numéro, soit par un libellé.
page_2(); //Pour appeler la page 2
Sequence2() ; //Pour appeler la page nommée “Sequence2”.
5.5 Gérer les variables
5.5.1 Éditeur de variables
Les variables dans MicroLADDER sont des emplacements de stockage avec un mnémonique associé qui contient une quantité connue ou inconnue d’informations. Les variables disponibles dans un programme MicroLADDER peuvent être affichées et modifiées à partir de l’éditeur de variables.
Vous pouvez accéder à l’éditeur de variables en cliquant sur le champ « Afficher les variables » en haut à droite dans la barre outils.
Capture d’écran de la fenêtre popup « Éditeur de variables »
5.5.1.1 Barre menu de l’éditeur de variables
L’éditeur de variables a sa propre barre de menu ayant chacun un menu déroulant.
Capture d’écran de la barre d’outils de l’éditeur de variables
Ces menu déroulants contiennent les options suivantes :
5.5.1.1.1 Fenêtre
Fermer: on peut fermer l’éditeur de variables en cliquant sur cette option ou simplement en cliquant sur le bouton de fermeture en haut à droite
5.5.1.1.2 Tables
Ajouter une table: dans MicroLADDER, une catégorie ou un groupe de variables est appelé table. Par défaut, MicroLADDER considère deux tables : les variables utilisateur et les variables système. De nouvelles tables peuvent être définies en cliquant sur cette option et en donnant un nom.
Renommer cette table: cliquez sur cette option pour renommer un tableau. Les tables par défaut ne peuvent pas être renommées.
Supprimer cette table: cliquez sur cette option pour supprimer une table. Les tables par défaut ne peuvent pas être supprimées.
Importer des variables dans cette table: cliquez sur cette option pour importer un fichier de variables CSV dans le projet MicroLADDER en cours.
Exporter les variables de cette table: cliquez sur cette option pour exporter un tableau de variables dans un fichier CSV à partir du projet MicroLADDER en cours.
Importer des valeurs dans cette table: cliquez sur cette option pour importer des valeurs dans une table à partir du projet MicroLADDER en cours.
Exporter les valeurs de cette table: cliquez sur cette option pour exporter les valeurs dans une table à partir du projet MicroLADDER en cours. Il est uniquement possible d’exporter dans un fichier CSV.
Variables système: en cliquant sur cette option, un menu déroulant avec les différentes tables variables système apparaît. Les variables incluses dans chaque catégorie sélectionnée seront affichées dans la fenêtre principale de l’éditeur de variables.
Variables utilisateur: en cliquant sur cette fonction, les variables créées par l’utilisateur seront affichées dans la fenêtre principale de l’éditeur de variables.
5.5.1.1.3 Variables
Ajouter: cliquez sur cette option pour inclure une nouvelle variable au projet MicroLADDER en cours. Vous pouvez également ajouter une variable via la barre d’outils.
Sélectionner les variables inutilisée: cliquez sur cette option pour sélectionner automatiquement toutes les variables qui ne sont pas utilisées dans le programme. Cette fonction offre une meilleure visibilité pour supprimer des variables.
Propriétés : cliquez sur cette option pour configurer les variables.
Information
Il est à noter que le raccourci pour cette fonction est le double-clic sur une variable de la liste lorsque l'automate n'est pas connecté.
Modifier la valeur: certaines valeurs peuvent être forcées manuellement lors de la connexion avec l’automate. Cette option permet de définir une valeur spécifique en temps réel pour une variable.
Information
Il est à noter que le raccourci pour cette fonction est le double-clic sur une variable de la liste une fois que l'automate est connecté.
Ajouter à la table: sélectionnez une ou plusieurs variables (avec Ctrl ou Maj) et ajoutez là dans l’une des tables créées.
Enlever de la table: cliquez sur cette option pour supprimer une ou plusieurs variables (avec Ctrl ou Maj) d’une table, mais pas du projet.
Supprimer: sélectionnez une ou plusieurs variables (avec Ctrl ou Maj) et cliquez sur cette option pour les supprimer. Les variables ne peuvent pas être supprimées lorsqu’elles sont utilisées dans le programme. On peut également les supprimer à partir de la barre d’outils.
Références croisées : cliquez sur cette option pour afficher une fenêtre popup indiquant tous les endroits où une variable spécifique est utilisée. Par exemple, la capture d’écran ci-dessous indique les références croisées pour la variable %M1 (elle n’est utilisé qu’une seule fois dans le programme: dans la page 1 dans la fonction à la ligne 2).
Capture d’écran de la fenêtre popup « Référence croisées pour %M1 »
5.5.1.1.4 Communication (Alt+C)
Ce menu déroulant est similaire au menu déroulant « Communication » de la barre de menu principal de MicroLADDER.
Information
Cet onglet est identique à celui que l'on trouve sur la fenêtre principale dans la barre de menu.
Ce menu déroulant ne sera pas accessible à partir d'un bloc fonction mais seulement à partir d'un programme automate.
Se connecter: cette option est disponible lorsqu’aucune connexion n’a encore été établie. Une fenêtre popup « Connexion à MicroDRIVER » apparaîtra lorsque l’on clique sur cette option. Plusieurs champs (méthode de communication, le numéro d’esclave et l’adresse du MicroDRIVER) sont à renseigner afin de se connecter à l’automate. On peut également accéder à la fenêtre « Connexion à MicroDRIVER en utilisant le bouton « Se connecter » placé dans le menu Outils. Pour plus d’informations sur comment établir une connexion, se référer à la section 5.3.2 Établissement de la connexion.
Capture d’écran de la fenêtre popup « Connexion à MicroDRIVER »
Déconnecter: cette option est disponible lorsqu’une connexion a déjà été établie. En cliquant sur cette fonction la communication avec l’automate va être arrêtée.
Lecture du numéro d’esclave : cette option est uniquement disponible lorsqu’une connexion avec un automate a été établie. Elle est utilisée pour obtenir le numéro d’esclave d’un esclave spécifique, lorsqu’il est prévu d’en connecter plusieurs en série, sur la même ligne.
Écriture du numéro d’esclave : cette option est uniquement disponible lorsqu’une (et une seule) connexion avec un automate a été établie. Elle permet de modifier son numéro d’esclave.
Démarrage du programme : cette option démarre un programme lorsque l’automate est à l’état STOP. Une fenêtre popup nous indiquant que le programme a bien démarré apparaît.
Arrêt du programme : cette fonction arrête un programme lorsque l’automate est à l’état RUN.
Réinitialisation de l’équipement : cette option réinitialise l’automate à son état BOOT. Elle est utile pour tester ses réactions lorsqu’il est allumé et éteint par exemple.
Réinitialisation des variables : cette fonction remet toutes les variables à leur valeur initiale et n’arrête pas le programme. L’automate est toujours dans l’état RUN. Elle est utile pour simuler un comportement.
Chargement d’un programme : cette option ouvre une fenêtre popup « Chargement d’un programme » nous permettant de choisir le fichier hexadécimal (.hex) que l’on souhaite charger sur l’automate. Cette action prend plusieurs dizaines de secondes, il est donc plus rapide de charger à l’aide d’une carte SD si l’automate dispose d’un lecteur de carte SD.
Information :
Il est possible de connaître la touche correspondante associée aux raccourcis Alt+touche pour l'accès direct à chaque menu déroulant de la barre de menu en cliquant sur Alt alors que la barre de menu est active ou visible. Les lettres associées à chaque touche apparaîtront soulignées.
5.5.1.2 Barre d’outils de l’éditeur de variables
La barre d’outils de l’éditeur de variables apparaît en haut de la fenêtre de l’éditeur de variables. Il comprend les éléments suivants:
Capture d’écran de la barre d’outils de l’éditeur de variables
Les éléments suivants sont inclus dans la barre d’outils de l’éditeur de variables :
Variables utilisateur/Variables système/Tables utilisateur créées: sélectionnez le type de variables que vous souhaitez afficher dans la liste déroulante : variables système, variables utilisateur ou l’une des tables que vous avez éventuellement créées.
Ajouter: cliquez sur cette option pour inclure une nouvelle variable au projet MicroLADDER en cours. Donnez un nom à cette nouvelle variable (soit une adresse ou une mnémonique) et définissez ses propriétés dans la nouvelle fenêtre popup de propriétés qui apparaît (voir section 5.5.1.3 Propriétés variables)
Retirer: cette option supprime une variable d’une table, mais pas du projet.
Effacer: sélectionnez une variable (ou des variables en les sélectionnant avec Ctrl ou Maj) puis cliquez dessus afin de la/les supprimer. Les variables ne peuvent pas être supprimées lorsqu’elles sont utilisées dans le programme.
Se connecter: cliquez sur cette option pour se connecter à un automate lorsqu’il est déconnecté ou pour le déconnecter lorsqu’il est connecté. Lors de la connexion, une nouvelle fenêtre apparaîtra en cliquant sur cette option. Il est alors demandé de définir les paramètres appropriés pour la méthode de communication, le numéro d’esclave et l’adresse du MicroDRIVER afin de se connecter à l’automate. Pour se déconnecter, cliquez simplement sur cette option tant que la connexion avec l’automate est active. On peut également accéder à la fenêtre de connexion à MicroDRIVER depuis l’onglet « Communication » situé sur la barre de menu de l’éditeur de variables.
Rechercher: utilisez cette barre de recherche pour rechercher une variable spécifique soit par son adresse (comme par exemple « %S1 ») soit par son mnémonique. La recherche n’est pas sensible à la casse. Il faut s’assurer que l’on se trouve dans le bon type de variable (si on recherche une variable de contrôle de cycle et que l’on a sélectionné les variables utilisateur, la recherche ne renverra aucun résultat)
5.5.1.3 Propriétés variables
Les informations suivantes sont affichées lorsque l’on créé une variable ou si on l’a modifie. Pour y accéder double-cliquez sur la variable ou bien clic-droit puis sélectionner « Propriétés ».
5.5.1.3.1 Onglet Général
Type : type de variable. Pour mieux comprendre les préfixes utilisés pour l’adresse des variables, voir section 6.2 Types de données.
Adresse : adresse mémoire de la variable dans l’automate. Pour une meilleure compréhension des préfixes utilisés pour l’adresse des variables, voir section 6.2 Types de données.
Mnémonique : nom donné à la variable.
Commentaire : brève explication de la variable.
Nombre d’éléments : dans le cas d’un tableau, nombre d’éléments alloués dans le tableau. Si la variable n’est pas un tableau, cette case sera grisée.
Nombre de caractères : dans le cas d’une chaîne, nombre maximum de caractères de la chaîne de caractères. Si la variable n’est pas une chaîne de caractères, cette case sera grisée.
Capture d’écran de l’onglet « Général » de la fenêtre popup « Propriétés de la variable »
5.5.1.3.2 Onglet Programmation
Valeur initiale : valeur chargée sur la variable au démarrage de l’application ou lors d’une requête d’initialisation.
Sauvegardée : si l’automate dispose d’une mémoire sauvegardée, vous pouvez sélectionner cette option et la valeur sera conservée pendant l’interruption de l’alimentation. L’utilisateur peut déterminer l’instant de la sauvegarde sur EEPROM.
Timer (en ms) : période de temps au bout de laquelle la variable est décrémentée de 1.
En plus de ces fonctionnalités, si le programme est un bloc fonction alors on peut remplir ces champs:
Globale : cette propriété peut être utilisée avec des fonctions. Elle permet à la variable de conserver sa valeur entre deux appels.
Paramètre : utilisé pour la déclaration des variables d’un bloc fonction. Voir la section 5.8 Créer un bloc fonction pour plus de renseignements.
Position : permet de définir l’ordre des entrées/sorties dans une fonction.
Libellé : permet de donner un nom à une variable lorsqu’elle apparaît dans une fonction.
Capture d’écran de l’onglet « Programmation » de la fenêtre Propriétés de la variable
5.5.1.3.3 Onglet Entrée/Sortie
Cet onglet n’est pas disponible pour des programmes bloc fonction.
Configuration : paramétrage des entrées analogiques
Variable associée : uniquement pour les variables d’entrée/sortie qui correspondent à des éléments connectés. Cette fonctionnalité associe une variable utilisateur à une variable matérielle.
Inverser l’état : disponible uniquement lors de l’utilisation d’une variable liée booléenne. Cette fonctionnalité permet d’inverser l’état entre la variable locale et la variable distante.
La mise à l’échelle est uniquement disponible lors de l’utilisation d’une variable liée non booléenne. Il est possible de mettre à l’échelle des valeurs, et pour cela de spécifier une échelle de valeur brute et de lui associer une plage de valeur mise à l’échelle.
Valeur brutemin. : valeur brute minimale pour l’entrée analogique
Valeur brute max. : valeur brute maximale pour l’entrée analogique
Valeur mise à l’échellemin. : valeur mise à l’échelle minimale pour la variable liée
Valeur mise à l’échellemax. : valeur mise à l’échelle maximale pour la variable liée
Un exemple est que si on a capteur renvoyant des données comprises entre 0 et 20000 (pour 0-20mA) alors ces valeurs se reportent à des températures comprises entre -20°C et +80°C (0 représentant -20°C et 20000 représentant 80°C). Dans le champs « Variable associée » associez une variable liée de type %MF. Pour mettre en place la mise à l’échelle, remplissez le champs « Valeur brute min » par 0, le champs « Valeur brute max » par 20000, le champs « Valeur mise à l’échelle min. » par -20 et le champs « Valeur mise à l’échelle max. » par 80.
Capture d’écran de l’onglet Entrée/Sortie » de la fenêtre popup « Propriétés de la variable »
5.5.1.3.4 Onglet Communication
Accès à distance: – « Aucun » : pas de communication pour cette variable – « Lecture seule » : le cycle de communication est une trame de lecture périodique. La variable dans l’automate est une copie de la variable dans l’équipement distant. – « Écriture seule » : le cycle de communication est une trame de lecture périodique. La variable dans l’équipement distant est une copie de la variable dans l’automate. – « Lecture / écriture » : le cycle de communication est une trame de lecture périodique et une trame d’écriture lorsque nécessaire. Chaque fois que la variable change dans l’automate, la valeur est écrite dans l’appareil distant. Chaque fois que la variable change dans l’équipement distant, la valeur est mise à jour dans l’automate.
Adresse distante : adresse de la variable dans l’équipement distant. L’adresse doit spécifier le nom de la variable suivi d’un point et du numéro de l’équipement. Par exemple « %MW2.3 » est une variable %MW à l’adresse 2 de l’équipement distant numéro 3.
Inverser l’état : disponible uniquement lors de l’utilisation d’une variable liée booléenne. Cette fonctionnalité permet d’inverser l’état entre la variable locale et la variable distante.
Il est possible de faire une mise à l’échelle des valeurs, et pour cela, spécifier une échelle de valeur brute et lui associer une plage de valeur mise à l’échelle.
Valeur brutemin. : valeur brute minimale dans l’appareil distant
Valeur brute max. : valeur brute maximale dans l’appareil distant
Valeur mise à l’échellemin. : valeur mise à l’échelle minimale dans l’automate
Valeur mise à l’échellemax. : valeur mise à l’échelle maximale dans l’automate
Un exemple est il y a des données comprises entre 0 et 100 dans l’équipement distant et que l’on veut que ces valeurs soient comprises entre 0 et 10 dans l’automate alors il faut remplir le champs « Valeur brute min » par 0, le champs « Valeur brute max » par 100, le champs « Valeur mise à l’échelle min. » par 0 et le champs « Valeur mise à l’échelle max. » par 10. Ainsi, par exemple lorsque la valeur est 233 dans l’équipement distant, la valeur est 23,3 dans l’automate et vice versa.
Capture d’écran de l’onglet « Communication » de la fenêtre popup « Propriétés de la variable »
5.5.1.3.5 Onglet Historisation
Condition de l’alarme : menu déroulant permettant de choisir l’opérateur logique de la condition de l’alarme (<, <=, >, >=, != et ==). Si on choisit « Aucune » alors il n’y aura pas d’alarmes pour cette variable.
Seuil de l’alarme : valeur de la condition avec laquelle l’alarme est activée. Une alarme est un état, et un événement se produit et est créé chaque fois qu’un seuil est dépassé.
Libellé d’apparition de l’alarme : texte qui apparaîtra lorsque la condition d’alarme est présente.
Libellé de disparition de l’alarme : texte qui apparaîtra lorsque la condition d’alarme disparaîtra.
Condition de l’événement : menu déroulant permettant de choisir l’opérateur logique de la condition de l’événement (<, <=, >, >=, != et ==). Si on choisit « Aucune » alors il n’y aura pas d’événements pour cette variable.
Seuil de l’événement : valeur de la condition avec laquelle un événement sera activé.
Libellé de l’événement : texte qui apparaîtra lorsque l’événement est présent.
Type d’historisation : menu déroulant permettant de choisir comment on souhaite archiver les courbes de valeur dans le temps. Il y a trois types d’historisations : – « Aucune »: aucune historisation effectuée. – « Standard » : prend une valeur avec un intervalle régulier – « Moyennée » : prend une valeur moyenne sur une période de temps donnée
Délai d’historisation (en secondes) : délai d’archivage. Il dépend du type de journalisation parmi deux possibles: – « Standard » : temps spécifié (1 minute par exemple) – « Moyennée » : période de temps spécifiée
Seuil d’historisation : seuil au-delà duquel la valeur sera enregistrée.
Capture d’écran de l’onglet « Historisation » de la fenêtre popup « Propriétés de la variable »
5.5.1.3.6 Onglet Serveur distant
Information
Cet onglet est utilisé pour communiquer avec un serveur MicroSERVER distant
Accès : menu déroulant permettant d’indiquer si la variable est accessible en lecture et en écriture par MicroSERVER. – « Privé » : la variable n’est pas accessible – « Lecture seule » : la valeur de la variable va pouvoir être lue par MicroSERVER – « Écriture seule »: la valeur de la variable va pouvoir être écrite par MicroSERVER – « Lecture / écriture » : la valeur de la variable va pouvoir être lue et écrite par MicroSERVER
Les trois champs suivants ne seront pas disponibles si on a sélectionné « Privé ».
Libellé : texte qui sera affiché dans le champs « Label » sur MicroSERVER pour cette variable
Valeur de forçage min.: valeur minimale que peut avoir la variable lorsque que l’on veut la forcer
Valeur de forçage max: valeur maximale que peut avoir la variable lorsque que l’on veut la forcer
Capture d’écran de l’onglet « Serveur distant » de la fenêtre popup « Propriétés de la variable »
5.5.1.3.7 Onglet Affichage
Ces paramètres sont utilisés dans l’interface graphique (MicroHMI), dans le serveur (MicroSERVER) et dans l’affichage de la valeur formatée dans MicroLADDER. Les différents champs sont disponibles ci-dessous :
Représentation : menu déroulant permettant de sélectionner comment la valeur de la variable sera représentée parmi: – décimal – binaire – hexadécimal
Format : format de la valeur affichée. La valeur de la variable est représentée par « %v ». Ainsi si par exemple on écrit « %v°C » alors la valeur de la variable sera affichée suivie de l’unité « °C ».
Précision : chiffre indiquant le nombre de chiffres après la virgule d’un nombre décimal. -1 signifie aucune limite c’est à dire tous les chiffres après la virgule.
Valeur d’affichage min. : valeur minimale à afficher d’une variable pour les synoptiques, jauges, etc. dans MicroHMI.
Valeur d’affichage max. : valeur maximale à afficher d’une variable pour les synoptiques, jauges, etc. dans MicroHMI.
Capture d’écran de l’onglet « Affichage » de la fenêtre popup « Propriétés de la variable »
5.5.2 Type de variable
Les variables considérées dans un programme MicroLADDER peuvent être divisées en deux catégories: – variables système – variables utilisateurs
5.5.2.1 Variables système
Les variables système sont inhérentes à l’automate. Leurs propriétés ne peuvent pas être modifiées ainsi l’éditeur de variables n’affichera que leur valeur en temps réel. Ces variables peuvent être classées en douze tables :
Informations système :%SW13, %SW14, %SW23, %SW24
Contrôle du cycle : %S0, %S1, %S16
chien de garde : %S15, %S20 à %S22, %SW0 à %SW2, %SW4
Horodateur : %S5 à %S8, %S24, %SW5 à %SW12
Gestion des variables : %S2, %S18, %SW15 à %SW22
Interruption : %SW25
Ports séries : %SW34 à %SW81
Ethernet : %S25, %SW96 à %SW137, %SW225 à %SW262
WiFi : %S26, %SW91 à %SW95,%SW138 à %SW175, %SW189
Radio :%SW190 à %SW191, %SW200 à %SW211
Bluetooth : %SW214 à %SW229
Gestion des entrées / sorties : %S11, %S12, %SW26
5.5.2.2 Variables utilisateur
L’utilisateur peut avoir besoin de variables supplémentaires dans un programme. Si aucune variable n’a encore été créée par l’utilisateur alors aucune variable ne sera affichée dans les variables utilisateur dans l’éditeur de variables. Les variables déjà créées dans le programme (en Ladder ou en C) sont créés par le logiciel MicroLADDER et seront donc affichées dans l’éditeur de variables. Cependant, une saisie manuelle est nécessaire pour définir les propriétés de la variable.
5.5.2.3 Création de variables
5.5.2.3.1 Création de variables automatiquement
Il est possible de créer des variables automatiquement dans un programme en Ladder ou en C. Pour cela il suffit d’écrire le type de la variable suivi de l’adresse. Par exemple si on veut créer une variable de type entier non signé sur 16 bits à l’adresse 1, alors on va écrire %MW1. Ceci génère alors automatiquement la variable dans la table des variables.
Avertissement
Cette manière de créer des variables est rapide mais on peut vite s'y perdre quand on a plusieurs variables différentes et pour se souvenir de l'utilité de chaque variable .
5.5.2.3.2 Création de variables manuellement
Pour créer des variables ayant des caractéristiques plus précises que leur type+adresse alors on va créer des variables manuellement depuis l’éditeur de variables.
Pour créer des variables manuellement, cliquez sur l’icône « Ajouter », choisissez le type puis donnez un mnémonique à la variable et déterminez ses propriétés (voir la section 5.5.1.3 Propriétés variables) dans la nouvelle fenêtre popup qui apparaît.
Avertissement
Quand on écrit un mnémonique, il n'est pas indispensable de définir une adresse. La variable va alors être stockée dans un espace libre de la zone mémoire des variables du même type. Cependant, cette démarche est déconseillée car on ne sait pas à quelles adresses vont être stockées les variables.
Capture d’écran de la fenêtre popup « Propriétés de la variable »
5.5.2.4 Identification des variables
La variable est identifiée par la combinaison de type+adresse. Par exemple, si le type est booléen et l’adresse est 10. La variable est identifiée comme %M10. Plusieurs types de variables communes aux blocs fonction et aux programmes automates sont disponibles parmi :
booléen
entier non signé 16 bits
entier signé 32 bits
flottant signé 32 bits
chaîne de caractères
Si le programme n’est pas un bloc fonction, ces variables sont disponibles additionnellement:
entrées TOR
entrées analogiques
sorties TOR
sorties analogiques
L’adresse est le décalage de la variable dans la mémoire de l’automate. L’adresse doit être unique pour chaque variable du même type. Par exemple, il n’est pas permis de définir deux variables %M0 mais une variable %M0 et une autre %MW0 sont autorisées. La définition d’une adresse n’est pas obligatoire. Dans ce cas, une compilation localisera la variable dans un espace libre de la zone de variables du même type. Il est nécessaire si une variable doit remonter vers un serveur ou si l’automate doit être paramétré en esclave Modbus, de faire venir un autre équipement lire/écrire cette variable.
Les variables peuvent être utilisées dans un programme MicroLADDER en les appelant par leur adresse ou leur mnémonique.
Par exemple, dans notre programme, si on souhaite utiliser cette variable, on peut écrire soit %M1 ou soit Init. Les deux écritures fourniront le même résultat. Par exemple, ces deux lignes mettent la variable à 0:
%M1 = 0; Init = 0;
5.5.3 Exporter/Importer des variables
5.5.3.1 Exporter des variables
La liste variables peut être exportée vers un fichier CSV et importées à partir d’un fichier CSV pour être utilisée dans d’autres programmes. Pour exporter des variables, allez dans l’onglet « Tables » puis « Exporter les variables de cette table ». Une fenêtre popup s’ouvre nous demandant de préciser la structure du fichier CSV. Il est préférable de ne pas modifier la structure par défaut pour éviter d’éventuels problèmes d’import. Si on la change lors de l’exportation, il faut s’assurer de respecter le même ordre lors de l’importation des variables. Cliquez ensuite sur « Valider ».
Capture d’écran de la fenêtre popup « Exporter un fichier CSV »
5.5.3.2 Modifier la tables des variables dans un fichier CSV
Une fois la liste des variables exportée sous format CSV, il est tout à fait possible de modifier cette table en ouvrant le fichier (avec le logiciel Excel ou LibreOffice Calc). Cette démarche est utile notamment lorsque que l’on veut créer un grand tableau. On créé notre tableau puis la variable correspondant à la première case du tableau. Après l’export des variables, on ouvre le fichier CSV puis on a juste a faire un copier-coller de la variable de la première case du tableau et changer à chaque fois l’adresse pour créer les variables des autres cases du tableau. On garde ainsi les mêmes attributs pour toutes les cases (pour plus d’informations sur les tableaux se référer à la section 6.2.11 Tableaux)
5.5.3.3 Importer des variables
Pour importer des variables dans un programme, allez dans l’onglet « Tables » puis sur « Importer des variables dans cette table ». Une fenêtre popup permettant de sélectionner le fichier CSV s’ouvre. Une fois le fichier sélectionné, cliquez sur « Valider » une nouvelle fenêtre nommée « Importer un fichier CSV » s’ouvre. Il n’est pas utile de modifier quelque chose sur cette fenêtre. Enfin, cliquez à nouveau sur « Valider ». L’import de variables est effectué en écrasant les variables actuelles, assurez vous donc que vous n’avez pas dans votre projet actuel une variable avec la même adresse ou mnémonique, car elle sera directement remplacée.
Capture d’écran de la fenêtre popup « Importer un fichier CSV »
5.5.4 Multi-édition variable
Il est possible de modifier les propriétés de plusieurs variables ensemble au lieu de modifier chacune des variables séparément. Pour cela il faut suivre la démarche suivante:
Sélectionnez les variables avec Ctrl ou Maj.
Cliquez ensuite sur l’onglet « Variables » puis sur « Propriétés » ou bien faites un clic-droit depuis la fenêtre de l’éditeur de variables puis cliquez sur « Propriétés »
Une fenêtre popup « Propriétés des variables » s’ouvre. Les propriétés qui ont la même valeur sur toutes les variables apparaissent sélectionnées et encadrées en bleu tandis que les propriétés qui ont une valeur différente apparaissent non sélectionnées et grises.
Sélectionnez les champs que vous souhaitez modifier et définissez la nouvelle valeur. Toutes les propriétés sélectionnées seront appliquées à toutes les variables. Les propriétés non sélectionnées resteront inchangées.
Validez votre modification en cliquant sur « OK ». Sinon cliquez sur « Annuler » ou bien fermer la fenêtre.
Avertissement
Il est important de ne pas modifier les propriétés des variables qui doivent être uniques tels que le mnémonique ou encore l'adresse et le type.
Capture d’écran de la fenêtre popup « Propriétés des variables »
5.6 Objets disponibles en langage Ladder
5.6.1 Contact ouvert
Il est activé lorsque la valeur de la variable représentée (entrée, variable interne ou bit système) est égale à 1. Il est désactivé lorsque sa valeur est égale à 0. Il peut être utilisé soit avec une variable binaire, soit comme comparaison du type %MW0>0 avec des variables entières, longues ou flottantes. Cela signifie que chaque valeur de variable différente de 0 activera le contact.
5.6.2 Contact fermé
Il est activé lorsque la valeur de la variable représentée (entrée, variable interne ou bit de système) est 0. Il est désactivé lorsque sa valeur est 1. Les mêmes remarques que celles déjà faites pour le contact ouvert peuvent être faites.
5.6.3 Front montant
Il est activé lorsqu’il y a un changement de la valeur de la variable représentée (entrée, variable interne ou bit système) de 0 à 1. Chaque front est géré par une variable interne(de taille 1 octet) indépendante de la variable interne utilisée. Le front est valide exactement pendant un cycle complet. Si la variable change après le front alors lors du cycle suivant, le front le détectera facilement. Il y a potentiellement un bug avec les bits indexés, si l’indice a varié d’un cycle à l’autre. Les expressions complexes et les bits mots peuvent être gérés.
5.6.4 Front descendant
Il est activé lorsqu’il y a un changement de la valeur de la variable représentée (entrée, variable interne ou bit système) de 1 à 0. Les mêmes remarques que celles déjà faites pour le front montant peuvent être faites.
5.6.5 Fonction
Lorsqu’une fonction est importée dans le programme en cours, elle peut être insérée comme une instruction Ladder. Il suffit alors de définir les variables d’entrée et de connecter les sorties correctement.
5.6.6 Opération
Ce bloc va permettre de définir des opérations entre variables.
5.6.7 On
Il est activé lorsque la combinaison de gauche donne un résultat de 1. Son activation signifie qu’il a va renvoyer une valeur logique de 1.
5.6.8 Off
Il est activé lorsque la combinaison de gauche donne un résultat de 0. Son activation signifie qu’il a va renvoyer une valeur logique de 0.
5.6.9 Set
Cet élément va forcer la variable associée à 1. La variable ne peut être mise à 0 qu’avec un « Reset ». Il est généralement utilisé pour le stockage des bits.
5.6.10 Reset
Cet élément va mettre à 0 la variable associée. Il désactive une variable précédemment activée avec un « Set ».
5.6.11 Appel
Ce bloc fait appel à une page du programme et exécute son code. Une fois le code exécuté, le programme principal reprend à la ligne suivante ou l’appel a été fait.
5.6.12 Saut
Ce bloc permet d’avancer en sautant un certains nombres d’instructions.
5.6.13 Retour
Ce bloc permet de retourner en arrière en sautant un certains nombres d’instructions.
5.6.14 Repère
Ce bloc est utilisé par les deux dernières instructions pour matérialiser l’endroit ou s’arrête le Saut ou le Retour dans le programme.
5.6.15 Commentaire
Ce bloc permet d’ajouter un bloc de commentaire dans le programme.
5.6.16 Insérer une ligne vide
Cette commande permet d’ajouter des lignes vides pour faire de l’espace dans le programme.
5.6.17 Supprimer les lignes vides
Cette commande va supprimer les lignes vides
5.6.18 Coller
Cette commande permet de coller un élément que l’on a préalablement copié.
5.6.19 Connecter des éléments
Pour connecter des éléments entre eux, il suffit de double-cliquer sur une ligne du quadrillage de fond gris d’un programme où une connexion doit être établie ou bien cliquez et faites glisser d’un élément à un autre (ou à une ligne).
5.6.20 Déconnecter des éléments
Pour déconnecter des éléments entre eux, cliquez avec le bouton droit de la souris sur le connecteur et sélectionnez « Déconnecter » ou double-cliquez sur la connexion que vous souhaitez supprimer.
5.7 Créer un programme
Pour mieux comprendre comment fonctionne MicroLADDER, quelques exemples de programme sont présentés ci-dessous:
5.7.1 Créer un premier programme simple en LADDER
Afin d’avoir une première approche, on va programmer un automate pour exécuter une tâche simple. Notre système va se composer de:
un automate MicroArm-A1
l’écran de l’automate MicroArm-A1 dont le rétro-éclairage LED est une entrée à l’adresse %Q0
un bouton poussoir: entrée numérique à l’adresse %I100
une LED: sortie numérique à l’adresse %Q100
Information
Les valeurs de ces adresses ne sont pas données au hasard mais sont indiquées dans la documentation technique de l'automate.
Notre programme va devoir respecter le cahier des charges:
La LED ne sera allumée que lorsqu’on appuie sur le bouton poussoir. Sinon, elle restera éteinte
Quand la LED est allumée (ce qui signifie que le bouton poussoir est poussé), l’écran du MicroARM-A1 a aussi le rétro-éclairage allumé et le texte affiché est le suivant : – Première ligne : « LED is on » positionné sur le côté gauche de l’écran – Deuxième ligne : « Screen is on » positionné sur le côté gauche de l’écran
Lorsque la LED est éteinte (ce qui signifie que le bouton poussoir est relâché), l’écran du MicroARM-A1 a le rétro-éclairage éteint et le texte affiché est le suivant : – Première ligne : « LED is OFF » positionné sur le côté droit de l’écran – Deuxième ligne : « L’écran est éteint » positionné sur le côté droit de l’écran
Pour écrire ce programme, la fonction WriteText est utilisée. La capture d’écran suivante montre ce programme déjà implémenté dans le MicroLADDER.
Capture d’écran de la fenêtre principale de MicroLADDER avec la fonction WriteText
Interprétation
Interprétation Digitale
Ladder
Quand on pousse le bouton…
%I100 change de 0 à 1
Front montant
Quand on éteint le bouton…
%I100 change de 1 à 0
Front descendant
…LED ou écran à ON
%Q100 ou %Q0 est mis à 1
Set
…LED ou écran à OFF
%Q100 ou %Q0 est à mis 0
Reset
Tableau sur l’interprétation textuelle en interprétation digitale et Ladder
5.7.2 Créer un premier programme simple en C
On va créer le même programme que précédemment (même système et même cahier des charges) mais le code sera du C.
if (%I100 == 1)
{
%Q100=1;
%Q0=1;
WriteText(“LED is ON”,”Screen is ON”,0,0);
}
else
{
%Q100=0;
%Q0=0;
WriteText(“LED is OFF”,”Screen is OFF”,2,2);
}
5.7.3 Créer un premier programme simple combinant Ladder et C
Comme nous l’avons déjà mentionné dans les sections précédentes, il est également possible de combiner un programme contenant à la fois du code Ladder et du code C en le structurant dans des pages différentes. Le même programme que celui expliqué précédemment est divisé en deux pages comme suit :
Une première page comprend le programme qui affiche le texte à l’écran lorsque l’on appuie sur le le bouton poussoir.
Une deuxième page contient le programme qui active la LED et le rétro-éclairage de l’écran LED. Cela peut se faire de deux manières : – Première méthode: le programme principal est écrit en Ladder et appelle une page C. – Deuxième méthode: le programme principal est écrit en code C et il appelle une page Ladder.
5.7.3.1 Première méthode
Contenu de la page 1:
Capture d’écran du contenu Ladder de la fenêtre principale de MicroLADDER
if (%I100 == 1)
{
WriteText("LED is ON","Screen is ON", 0,0);
page_2();
}
else
{
WriteText("LED
page_2();
}
Contenu de la page 2:
Capture d’écran du contenu Ladder de la fenêtre principale de MicroLADDER
5.7.4 Compiler et charger un programme sur l’automate
Après avoir créé le programme, il faut le compiler avant de le charger dans l’automate. Il est conseillé de sauvegarder le projet avant de le compiler en cliquant sur l’onglet « Fichier » puis sur « Enregistrer » dans la barre de menu. On peut ensuite compiler le programme en cliquant sur l’onglet « Programme » puis sur « Compiler » toujours dans le barre de menu. Une fenêtre popup apparaît, nous demandant de spécifier l’endroit où l’on souhaite sauvegarder ces nouveaux fichiers:
Si l’automate est équipé d’un lecteur de carte SD et que l’on souhaite charger le programme par ce biais alors on copie directement les fichiers sur la carte SD. Le programme sera automatiquement chargé lors de l’insertion de la carte SD dans l’automate.
Si on ne souhaite pas charger le programme avec la carte SD ou si l’automate ne permet pas cette option, on sélectionne simplement un dossier sur l’ordinateur. On a la possibilité de charger le fichier héxadécimal (.hex) sur l’ordinateur via MicroLADDER ou le logiciel MicroCONTROL.
Si la compilation est réussie, les fichiers main.hex, main.cfg, loadmain et size.txt auront été créés et une seule nouvelle fenêtre « Fichiers copiés » apparaîtra pour confirmer que la compilation a réussi.
S’il y a des erreurs dans le programme, une fenêtre popup « Erreurs de compilation » apparaîtra ainsi qu’une deuxième fenêtre popup contenant tous les fichiers et dossiers nécessaires à la compilation. Ce sont les fichiers et dossiers du code système. Tant qu’il y aura des erreurs dans le programme, ce dernier ne compilera et ces deux fenêtres s’ouvriront.
Capture d’écran de la fenêtre popup des fichiers et dossiers du code système lors d’une erreur de compilation
5.8 Créer un bloc fonction
Sous MicroLADDER, une fonction peut être créée de deux manières différentes:
soit dans le même programme que l’application qui l’appelle. Dans ce cas, la fonction sera juste appelée comme dans les autres langages
soit dans un programme « Bloc fonction ». Dans ce cas là, il va falloir l’importer avant qu’une application puisse l’utiliser. Cela peut être utile pour gérer des sous-parties identiques dans un programme ou dans plusieurs programmes. Pour déclarer une fonction dans un bloc fonction, cliquez sur l’onglet « Programme » puis sélectionnez « Type de programme » puis « Bloc fonction ».
Une fonction peut également appeler d’autres fonctions. Dans cette partie, on va se concentrer sur la création de fonction dans un bloc fonction.
5.8.1 Définition des variables
On a explicité précédemment que l’on peut déclarer automatiquement des variables. C’est toujours possible de faire cela dans un bloc fonction mais il est nécessaire de définir manuellement les variables d’entrée et de sortie de la fonction créée.
Si on choisit de coder une fonction dans un “Bloc fonction” alors quatre types de variables différentes pourront y être déclarées. Pour choisir le type d’une variable, allez dans l’éditeur de variable puis allez dans les « Propriétés de la variable » puis sur l’onglet « Programmation ». Le type de la variable est à sélectionner dans le menu déroulant « Paramètre »:
interne: la variable n’est valable qu’à l’intérieur de la fonction. Elle est initialisée à chaque appel d’une fonction, sauf dans le cas où la propriété « Globale » est sélectionnée.
entrée: la valeur donnée par l’application appelante est envoyée à l’appel de la fonction. La valeur sera visible dans le bloc de la fonction sur la page Ladder.
sortie: la valeur est renvoyée à l’application appelante à la fin de l’exécution de la fonction. La valeur sera visible dans le bloc de la fonction sur la page Ladder.
externe: à l’appel de la fonction, la variable prend la valeur que lui donne l’application appelante. A la fin de l’exécution de la fonction, la valeur est renvoyée à l’application appelante. Elle n’apparaît pas dans l’objet Ladder de la fonction sur une page Ladder.
5.8.2 Utilisation d’un bloc fonction
Le bloc fonction doit être importé à l’intérieur de l’application en cliquant sur l’onglet « Librairie » puis sur « Importer une fonction ». Une fenêtre s’ouvre permettant de sélectionner le fichier du bloc fonction voulu. Une seule importation est suffisante, même si la fonction est utilisée plusieurs fois.
Cependant à chaque changement fait dans le bloc fonction, on est obligé d’importer à nouveau le bloc fonction. Après avoir sélectionné le fichier du bloc fonction, une fenêtre popup s’ouvrira. Cliquez sur « Oui » pour écraser le bloc fonction existant sinon cliquez sur « Non ».
5.8.2.1 Importer une fonction
Un objet « Fonction » doit être importer dans une page du programme en cliquant sur l’onglet « Librairie » puis sur « Importer une fonction ». Pour les données de type binaire, les contacts et les bobines peuvent être connectés aux connexions de la fonction. Pour les données de type numérique, il faut double-cliquer sur la fonction et définir les variables échangées. Cette dernière méthode peut également être utilisée pour les données de type binaire.
Information
Une fonction ne peut pas accéder aux bits des mots système (%S et %SW). Ils doivent être accédés en tant que paramètres.
Chaque fois qu'une fonction est utilisée, elle organise son propre espace mémoire. Cela permet d'utiliser la même fonction plusieurs fois dans un programme et de sauvegarder des données en mémoire à chaque appel, du cycle actuel au cycle suivant.
5.8.2.2 Utiliser une fonction en Ladder
En Ladder, pour utiliser une fonction que l’on a importée, il faut insérer un objet “Fonction”, en faisant un clic-droit sur la page puis en sélectionnant “Fonction”. Un menu déroulant, nous demande alors quelle fonction on souhaite importer. Cliquez sur celle que vous voulez utiliser.
Il faut maintenant passer à la déclaration des données en entrées et en sorties (si il y en a). Les données d’entrées de type binaire, les contacts et les bobines peuvent être reliés aux de la fonction. Pour les données de type numérique, il faut double-cliquer sur la fonction et définir les variables échangées. Cette dernière méthode peut également être utilisée pour les données de type binaire.
Capture d’écran d’une initialisation de variables d’une fonction
5.8.2.3 Utiliser une fonction en C
En C, la fonction doit être appelée par son nom et les variables doivent être introduites comme paramètres dans l’ordre où elles ont été déclarées : d’abord les variables d’entrée, puis les variables de sortie et enfin les variables externes. Cette démarche est similaire à l’appel d’une fonction en langage C classique, avec les variables de sortie et externes en plus.
Si sur une page, on souhaite utiliser des fonctions ou variables déclarées et définies sur une autre page C alors il y a une manipulation à réaliser avant de pouvoir les utiliser. En effet, sur la page C qui contient les fonctions et variables globales, on doit englober ces dernières dans des balises global de cette manière:
<global>
(déclaration de variables et/ou déclaration et/ou définition de fonction)
</global>
5.10 Utiliser les timers
5.10.1 C’est quoi une temporisation ?
Une temporisation a un statut parmi :
temporisation terminée: lorsque la valeur du temporisation est égale à zéro.
temporisation active: lorsque la valeur de la temporisation est supérieure à zéro et inférieure à la valeur de sa période de compte à rebours. Dans ce cas, sa valeur diminue avec la période de compte à rebours indiquée dans la variable.
5.10.2 Mieux comprendre les temporisations
Au premier état, il n’y a pas de temps écoulé (la variable binaire Tempo_elapsed est à 0), la valeur de la période de décompte (100) est chargée dans la variable Tempo. L’état de la temporisation est inactif. Tant que Tempo_elapsed est à 0, la variable Tempo reste à 100, donc aucun compte à rebours n’est effectué.
Au deuxième état, la variable binaire Tempo_elapsed est mise à 1. La valeur de la période de compte à rebours (100) n’est plus écrite dans la variable Tempo et la valeur de Tempo diminue. L’état de la temporisation est active.
Au troisième état, la valeur de Tempo tombe à 0 après le compte à rebours. La temporisation a expiré, elle est à nouveau inactive.
5.10.3 Comment utiliser une temporisation ?
Pour utiliser une temporisation, la propriété « Timer(en ms) » d’une variable doit être définie. Allez dans l’éditeur de variable puis double-cliquez sur la variable sur laquelle vous souhaitez mettre une minuterie. Une fenêtre popup s’ouvre et allez dans l’onglet « Programmation » puis remplissez les champs “Valeur initiale” par la valeur de la temporisation. Dans le champs “Timer (en ms)”, écrivez le pas de décrémentation. Si on veut que notre minuterie soit décrémentée toutes les 1 s, écrivez alors 1000 dans ce champs.
La période de compte à rebours (en ms) du champs “Timer (en ms)” et la valeur de minuterie sera gérée par le système comme une temporisation.
L’utilisation d’une temporisation en Ladder ou en C est similaire pour les deux cas.
5.10.3.1 Exemple d’utilisation d’une temporisation
Pour mieux comprendre comment utiliser une minuterie on utilise l’exemple suivant:
En considérant à nouveau l’automate MicroARM-A1, on va se servir du programme décrit section 5.7 Créer un programme pour lui rajouter de nouvelles fonctionnalités:
– En appuyant sur le bouton (%I0), un compteur est activé. Ce compteur ne compte que le temps pendant lequel il est poussé. – En relâchant le bouton, le compteur se remet à zéro. – Après trois secondes d’appui sur le bouton, le rétro-éclairage de l’écran LCD s’allume s’il était éteint, ou s’éteint s’il était allumé.
Ce programme peut être créé en Ladder comme le montre la capture d’écran suivante:
Capture d’écran d’un programme Ladder sur la fenêtre principale de MicroLADDER
Une nouvelle variable booléenne (%M1) indiquant si le bouton est appuyé(1) ou non(0) a été rajoutée. Pour établir la temporisation, écrivez trois dans le champs “Valeur initiale” et 1000 dans « Timer (en ms) » pour que le compteur soit décrémenté toutes les secondes.
6. Environnement logiciel
6.1 Architecture du système
6.1.1 Moniteur
Le moniteur est la couche logicielle de base. Il permet ensuite de charger l’application logicielle. L’utilisateur n’aura pas besoin de le modifier, sauf si un nouveau téléchargement de logiciel peut nécessiter le rechargement du logiciel moniteur.
Si une carte SD est disponible à la mise sous tension, les paramètres FORCE_MON et RUN du fichier « MAIN.CFG » disponible sur la carte SD détermineront le lancement de la boucle principale et de l’application.
Les paramètres sont sauvegardés en même temps sur la carte SD et sur l’EEPROM. Il est donc possible de fonctionner sans la carte SD. Le moniteur est chargé par Sirea.
6.1.1.1 Connaître l’état de fonctionnement de l’automate grâce une LED
Chaque automate possède une LED qui peut être soudée sur la carte ou accessible par un connecteur. On peut connaître le mode de fonctionnement de l’automate en fonction de comment va clignoter la LED.
6.1.1.1.1 Mode surveillance
La LED clignote lentement : 500 ms allumée/ 500 ms éteinte. L’automate est sous contrôle Modbus. Il peut être contrôlé par MicroCONTROL.
6.1.1.1.2 Transfert du programme de la carte SD vers la mémoire de l’API
La LED clignote rapidement : 100 ms allumée/ 100 ms éteinte.
Le transfert ne dure que quelques secondes. Il se produit lorsque MicroCONTROL a été transféré. On peut le transférer en appuyant sur le bouton ou en passant le paramètre de la carte SD.
6.1.1.1.3 Mode STOP
La LED clignote lentement et reste principalement éteinte : 100 ms allumée/ 900 ms éteinte. L’automate n’est plus sur le moniteur, la boucle principale commence, l’application ne s’exécute pas. Notre automate est stoppé.
6.1.1.1.4 Mode RUN
La LED clignote lentement et reste principalement allumée : 900 ms allumée/ 100 ms éteinte. L’application s’exécute. Notre automate est alors en fonctionnement.
6.1.1.1.5 Versions incompatibles entre le moniteur et l’application
La LED s’allume en rouge statique. Cela ne se produit que lorsque l’application démarre et que les structures de données enregistrées par le moniteur sont différentes des structures de données enregistrées par l’application. Cela peut créer des problèmes avec les variables enregistrées.
6.1.2 Fichier main.cfg
Ce fichier se trouve sur la carte SD. Il contient le paramétrage. Il est lu et réécrit lors du lancement de l’application ou de l’insertion de la carte SD. Par conséquent, si le fichier est modifié, il est entièrement réécrit. Si des modifications doivent être apportées à ce fichier, il est important de procéder avec précaution. Certaines caractéristiques de ce fichier peuvent être modifiées par des variables si nécessaire.
Variables du fichier main.cfg
Description
FORCE_MON
Si elle est à 1, elle impose de rester sur le moniteur et de ne pas lancer l’application
LOAD
Si elle vaut 1, indique qu’il faut charger le programme en mémoire. Elle est ensuite remise à 0 à la fin du chargement
FIRST_RUN
Si elle vaut 1, indique qu’il faut initialiser les variables. Il n’est pas nécessaire de la mettre à 1 lors d’un chargement de l’application car le système le fait tout seul. C’est la variable %S2
RUN
Si elle vaut 1, permet de passer de l’application en STOP à l’application en RUN
RESET_SW
Si elle vaut 1, indique qu’il y a eu un dépassement du temps de cycle (chien de garde) et bloque l’automate sur la boucle principale. C’est la variable %S21
RESET_CFG
Si elle vaut 1, permet de réinitialiser les variables du fichier « main.cfg »
LOAD_IO_CFG
Si elle vaut 1, permet de recharger le fichier « var.csv » et de réinitialiser l’historique des courbes, alarmes et évènements. C’est la variable %S19
MODE_DST
Si elle vaut 1, permet de mémoriser la gestion de l’heure d’été. C’est la variable %SW11
TIME_OFF
Permet de régler le décalage par rapport à l’heure UTC en minute. Elle est utile pour les mise à l’heure automatique. C’est la variable %SW12
BOOT_VER
Indique la version du boot installé sur l’automate. C’est la variable %SW23
W_SSID
Permet de régler le SSID (nom du point d’accès) pour le Wi-Fi. La norme autorise jusqu’à 32 caractères
W_STYPE
Permet de régler le type de cryptage pour le Wi-Fi. Les valeurs possibles sont « » (chaîne de caractères vide utilise la détection automatique), OPEN (pas de cryptage), WEP, WPA, WPAAES, WPA2AES, WPA2TKIP, WPA2
W_SKEY
Permet de régler la clé de sécurité pour le Wi-Fi
Tableau des variables disponibles pour le fichier main.cfg
L’exemple suivant est le code d’un fichier main.cfg avec des valeurs par défaut. L’automate lancera la boucle principale de l’application présente dans la mémoire. S’il n’y a pas d’application, le système sera bloqué.
FORCE_MON=0 LOAD=0 RUN=0
6.1.3 Fichier Loadmain
Lorsque ce fichier est présent sur la carte SD, l’application est rechargée et le fichier est supprimé.
Cette méthode est équivalente à la mise à 1 de la variable LOAD, mais elle évite de modifier les autres variables du fichier main.cfg. Le contenu du fichier n’est pas important, seule sa présence compte. Il est donc possible de créer un fichier appelé « loadmain » sur la carte SD. L’automate détecte ce fichier et charge le fichier main.hex dans sa mémoire. La méthode la plus rapide est de laisser MicroLADDER sauvegarder les fichiers compilés directement sur la carte SD, puis de placer la carte SD dans l’automate.
6.1.4 Charger un programme
Il n’est pas obligatoire de posséder une carte SD. Si vous en avez une, elle doit être formatée en FAT32. Sinon on peut charger un programme via la réseau.
6.1.4.1 Via le réseau avec MicroLADDER
Le logiciel MicroLADDER permet de charger des fichiers héxadécimal (.hex), c’est-à-dire des fichiers déjà compilés.
Le transfert peut se faire par un port série ou par le port Ethernet. Il est donc possible de le charger à distance depuis le code de l’application. Pour cela, il faut aller sur l’onglet « Communication » puis cliquez sur « Chargement d’un programme ». Une fenêtre s’ouvrira nous permettant de sélectionner le fichier hexadécimal à transférer.
Le transfert du fichier s’effectue d’abord sur la carte SD, si une carte SD est disponible. Après le processus de transfert, le fichier sera chargé dans la mémoire de l’automate. L’application peut ensuite être lancé via MicroLADDER en allant sur l’onglet « Communication » puis en cliquez sur « Démarrage du programme ».
Dans le cas où l’on charge pour la première fois une application dans l’automate, il est nécessaire d’établir FORCE_MON=1 dans le fichier MAIN.CFG de la carte SD. Dans le cas contraire, l’automate essaiera de lancer la boucle principale de l’application, même si elle n’existe pas.
6.1.4.2 Via Carte SD
Si l’automate comprend une carte SD, vous pouvez simplement copier le fichier compilé par MicroLADDER (main.hex) sur la carte SD et créer le fichier main.cfg qui contient les informations suivantes :
FORCE_MON=0 LOAD=1 RUN=1
La carte SD doit ensuite être insérée dans l’automate. La LED d’état de fonctionnement indique le transfert du programme de la carte SD vers la mémoire de l’automate par un clignotement rapide. Une fois le programme transféré, la LED d’état de fonctionnement indique l’exécution de l’application par un clignotement, principalement avec la LED d’état allumée.
6.1.5 Sauvegarde des variables
6.1.5.1 RAM Sauvegardée
Certains automates disposent d’une RAM sauvegardée. Il suffit de cocher l’option « Sauvegardée » dans les propriétés de la variables et le système gère de façon autonome la sauvegarde.
6.1.5.2 EEPROM ou FRAM
Si l’automate ne dispose pas de RAM sauvegardée mais d’une EEPROM ou FRAM, il est possible d’utiliser les variables sauvegardées. Lorsque %S18 passe à 1, le système lance une sauvegarde de toutes les variables qui ont la propriété « Sauvegardée » de cochée. Avec cette version de MicroLADDER, il ne faut plus utiliser les instructions de sauvegarde manuelle. En effet, il y a trop de risque d’utiliser des zones mémoire utilisée par le système.
6.1.5.3 Mots systèmes
Les mots systèmes %SW15 à %SW22 sont à la disposition de l’utilisateur pour sauvegarder des mots dans la carte SD. Les sauvegardes ne sont effectuées que s’il y a une modification de valeur. Les sauvegardes peuvent avoir lieu à la fin de la communication Modbus avec la console de programmation (si forçage de valeur par la communication) et à la fin du tour de cycle automate (si modification de valeur par l’application). Chaque sauvegarde prend de 180 à 200ms. La lecture de ces mots est effectuée de façon transparente à l’initialisation. Il y a une double sauvegarde sur la carte SD et dans la EEPROM ou FRAM.
6.2 Types de données
Il est important de noter que MicroLADDER gère les variables de l’API qui peuvent être utilisées dans les objets Ladder, c’est-à-dire celles qui sont accessibles à la surveillance en temps réel par le logiciel. Cependant, dans des pages C, les variables internes déclarées peuvent être d’un autre type que celles proposées par MicroLADDER.
6.2.1 Entrées TOR
Une entrée TOR vaut soit 1 ou 0. Le préfixe d’une entrée TOR est %I. Un exemple est %I0. Les données sont accessibles en Modbus standard en faisant un décalage (%I0 ⇒ %M20000).
Le nombre d’entrées TOR varient en fonction de l’automate.
6.2.2 Entrées analogiques
La plage de valeur ainsi que le nombre de valeurs varient en fonction de l’automate utilisé. Le préfixe pour une entrée analogique est %IW. Un exemple d’entrées analogique est %IW100.
Sur certains automates, les entrées analogiques peuvent être configurées par des cavaliers. Il faut ensuite accorder la propriété « Configuration » de la variables analogiques à l’aide de MicroLADDER afin d’avoir la bonne plage de valeur et le bon étalonnage.
Propriété « Configuration »
Type d’entrée analogique
0
Configuration par défaut. Correspond à la configuration disponible sur l’automate ayant la valeur de la propriété de configuration la plus petite
1
0-20mA. Plage de valeur généralement 0-20000 points
2
0-10V. Plage de valeur généralement 0-10000 points
3
PT100. Valeur de température généralement en dixième de degrés Celsius
Tableau sur les types d’entrées analogiques
Les plages de valeurs peuvent être différentes suivant l’automate.
Ces données sont accessibles en Modbus standard en faisant un décalage (%IW0 ⇒ %MW40000).
6.2.3 Sorties TOR
Une sortie TOR vaut soit 1 ou 0. Le préfixe d’une sortie TOR est %Q. Un exemple est %Q0. Le nombre de sorties TOR varient en fonction de l’automate. Les données sont accessibles en Modbus standard en faisant un décalage (%Q0 ⇒ %M21000).
6.2.4 Sorties analogiques
La plage de valeur ainsi que le nombre de valeurs varient en fonction de l’automate utilisé. Le préfixe pour une entrée analogique est %QW. Un exemple de sortie analogique est %QW0. Les données sont accessibles en Modbus standard en faisant un décalage (%QW0 ⇒ %M41000).
6.2.5 Sorties MLI (Modulation de Largeur d’Impulsions)
Tous les automates n’ont pas des sorties MLI (Modulation de Largeur d’Impulsions). Par exemple parmi les plus utilisés les automates MicroARM-12 et MicroARM-A2 ont des sorties MLI. Pour l’automate MicroARM-12, les deux sorties de MLI sont %Q100 et %QW101. Pour l’automate MicroARM-A2, les deux sorties sont %QW102 et %QW103. Pour plus de renseignements, se référer à la fiche technique de chaque automate.
La variable %SW26 définit la fréquence en Hz. Cette valeur doit être comprise entre 0 et 65535 Hz (en pratique l’électronique ne permet pas d’aller à une fréquence supérieure à 10000 Hz).
Une variable %QW par sortie MLI définie le rapport cyclique. Cette valeur doit être comprise entre 0 et 1000. Par exemple, pour obtenir un créneau de temps à 1 de 20% et 0 de 80%, if faut mettre %QW à 200. Le signal de sortie MLI varie entre 0V et Vcc (tension d’alim). Pour créer une sortie en binaire, il faut paramétrer %SW26 à 0 et écrire 0 ou 1000 dans la variable %QW pour mettre la sortie TOR à 0 ou 1. Par défaut, %SW26 vaut 0 et les %QW valent 0, ce qui correspond à une sortie toujours à 0V. Lorsque %SW26 vaut 0, la fréquence est en réalité égale à la fréquence maximale dont peut aller le microcontrôleur de l’automate (cette fréquence est au moins égale à 100000 Hz et peut aller jusqu’à 250000 Hz). Ceci permet de réagir plus rapidement à un changement d’état en mode binaire car la période en cours se termine forcément avant d’appliquer le nouveau rapport cyclique.
Information
- Il est possible de paramétrer une fréquence allant jusqu'à 65535 Hz. Cependant, lorsque la fréquence devient trop élevée, le signal devient beaucoup moins bon (changement d'état transistor), voire inutilisable.
- La limite maximale est d'environ 10 kHz suivant la charge.
- Pour visualiser le signal à l'oscilloscope, il faut connecter une résistance de charge (environ 1 kOhm) aux bornes de la sortie.
6.2.6 Bits
La valeur est soit 0 ou 1. Une variable bit aura le préfixe %M. Un exemple de bit est %M0. Les bits sont des bits de caractères. De ce fait, 8 bits utilisent en mémoire 1 seul octet. L’accès à un bit est plus long que l’accès à un octet ou un mot
6.2.7 Entiers
La valeur est comprise entre 0 et 65535. Une variable entière aura le préfixe %MW (Main Word). Un exemple est %MW0.
6.2.8 Long
La valeur est comprise entre – 2 147 483 648 et 2 147 483 647. Une variable long aura le préfixe %MD. Un exemple est %MD0. Les données sont accessibles en Modbus standard en faisant un décalage (%MD0 ⇒ %MW20020).
6.2.9 Float
La valeur est comprise entre 3.4 * 10^-38 et 3.4 * 10^38. Une variable float aura la préfixe %MF. Un exemple est %MF0. Les données sont accessibles en Modbus standard en faisant un décalage (%MF0 ⇒ %MW30020).
6.2.10 Chaînes de caractères
La longueur de la chaîne de caractères est indiquée dans le champs « Nombre de caractères ». Une variable de type chaînes de caractères aura un préfixe %MS (Main String). Un exemple de variable est %MS0. Pour accéder au n ème caractères de la chaîne %MS0, il faut écrire %MS0[n-1]. Par exemple, on accède au 5ème caractères du tableau avec MS0[4].
6.2.11 Tableaux
Il nous ait souvent demander de créer des tableaux d’entiers, de flottants, de chaînes de caractères… . Dans ce cas, après avoir choisi le type de la variable (1er champs de l’onglet « Propriétés de la variable »), il faut remplir le champ « Adresse » avec la valeur construite de la manière suivante: adresse[]. Il faut ensuite remplir le champ « Nombre d’éléments » par la valeur de la taille du tableau. Par exemple, dans la capture d’écran ci-dessous, on a créé un tableau de 100 éléments dont le premier élément sera à l’adresse 100. Pour accéder au n ème élément, il faut écrire %MW100[n-1]. Par exemple on accède au 5ème élément avec (%MW100)[4]
Après avoir validé notre tableau, il faut créé toutes les variables qui composent les cases de notre tableau. Par exemple, si on a créé un tableau d’entiers de 100 éléments à l’adresse %MW100, on va devoir créé 100 variables de type entier. Dans la capture d’écran suivante, on a créé une première variable (1er case du tableau) à l’adresse %MW100, une deuxième variable (2ème case du tableau) à l’adresse %MW101… .
6.2.12 Bits système
Ces données sont accessibles en Modbus standard en faisant un décalage (%S0 ⇒ %M22000).
Pour la suite le terme « scrutation du programme » signifie que l’automate va éxécuter de manière séquentielle le programme.
Bit
Mnémonique
Onglet
Description
%S0
MST
Contrôle du cycle
Bit mis à 1 au premier cycle du programme système qui suit après une mise sous tension ou un rechargement du programme. Bit rétabli à 0 automatiquement après l’exécution du premier cycle. Ce bit est légèrement différent de %S16 (DEM_C).
%S1
RUN
Contrôle du cycle
Bit à 1, est mis à l’état 0 par le programme utilisateur ou en mode écriture de données par la liaison série (commande RUN/STOP) Bit à 1 : scrutation du programme. Bit à 0 : arrêt du programme.
%S2
INIT
Gestion des variables
Bit à 0, est mis à l’état 1 par le système au démarrage du programme ou en mode écriture de données par la liaison série (commande INIT). Bit à 1 : chargement des valeurs initiales dans les valeurs de données. Pas de modification des variables sauvegardées. Est remis à 0 automatiquement à la fin de l’initialisation.
%S3
Réservé
%S4
Réservé
%S5 %S6 %S7 %S8
MSEC_10 MSEC_100 SEC_1 MIN_1
Horodateur
Bits dont le changement d’état est cadencé par l’horloge interne. Ils sont asynchrones par rapport au cycle de scrutation du programme.
%S9
Réservé
%S10
Réservé
%S11
INIT_Q
Gestion des entrées/ sorties
Bit à 0, est mis à l’état 1 dans le programme utilisateur ou en la forçant depuis l’éditeur de variables. Bit à 1 : provoque la mise à 0 des sorties. Bit à 0 : les sorties sont mises à jour par le programme utilisateur.
%S12
GEL_Q
Gestion des entrées/ sorties
Bit à 0, est mis à l’état 1 dans le programme utilisateur ou en la forçant depuis l’éditeur de variables. Bit à 1 : provoque le figeage des sorties dans l’état. Bit à 0 : les sorties sont mises à jour par le programme utilisateur.
%S13
MAJ_H
Bit à 0, est mis à l’état 1 dans le programme utilisateur ou en la forçant depuis l’éditeur de variables. Bit à 1 : utilisé pour faire une mise à l’heure et à la date : copie les valeurs des %SW5 à %SW10 correspondant dans l’horloge système. Bit à 0 : les mots %SW5 à %SW10 sont rafraîchis par le système afin d’indiquer l’heure et la date en cours. Depuis le 29/06/12, ce bit ne sert plus et n’apparaît plus dans l’éditeur de variables. Il est possible de modifier %SW5 à %SW10 n’importe quand. La modification est prise à la fin du tour de cycle automate.
%S15
CDG
Chiens de garde
Bit à 0, est mis à l’état 1 par le système dès que le temps de cycle du programme devient supérieur au temps de cycle maximum défini dans le mot système SW1. Est remis automatiquement à 0 par une commande INIT ou à la mise sous tension (mode MST) ou par le programme utilisateur
%S16
DEM_C
Contrôle du cycle
Bit à 1 au premier tour de scrutation programme utilisateur quelle que soit la cause du redémarrage (mise sous tension, rechargement, démarrage par la console). Est remis à 0 automatiquement à la fin du 1° cycle. Ce bit est légèrement différent de %S0 (MST).
%S17
Réservé
%S18
SAV_VARS
Gestion des variables
Bit à 0, est mis à l’état 1 dans le programme utilisateur ou en la forçant depuis l’éditeur de variables. Provoque une sauvegarde dans la EEPROM ou la FRAM, des variables déclarées sauvegardées. Ce bit est remis à 0 à la fin de la sauvegarde. Voir la section 6.1.5 Sauvegarde des variables pour plus de détails. Attention il ne faut pas faire de sauvegarde en permanence car la EEPROM a un nombre d’écriture limité.
%S19
LOAD_IO_CFG
Bit à 0, est mis à l’état 1 dans le programme utilisateur ou en la forçant depuis l’éditeur de variables. Provoque la relecture du fichier « var.csv » et la réinitialisation de l’historique des alarmes et évènements.
%S20
RESET_HARD
Chiens de garde
Non géré
%S21
RESET_SOFT
Chiens de garde
Bit à 0, est mis à 1 par le système après un reset soft par le watchdog. Ce bit est remis à 0 lors du redémarrage du programme. Voir la section 6.3 Watchdog pour plus de détails.
%S22
RESET_ERR
Chiens de garde
Non géré
%S23
Réservé
%S24
ALM_BAT_RTC
Horodateur
Normalement à 0, est mis à 1 par le système lorsque la batterie de sauvegarde est faible
%S25
DHCP
Ethernet
Utiliser DHCP pour paramétrer le port Ethernet. Le socket 3 est utilisée pour la demande initiale et pour des demandes périodiques. Cela signifie que le DHCP prend temporairement la main sur le socket au détriment de l’utilisation prévue par l’application.
%S26
W_DHCP
Wifi
Utiliser DHCP pour paramétrer le port Wi-Fi. Contrairement à l’Ethernet, le module Wi-Fi utilise un socket interne qui ne perturbe pas l’application.
%S27 à %S49
Réservé
Tableau sur la définition des bits systèmes
6.2.13 Mots systèmes
Ces données sont accessibles en MODBUS standard en faisant un décalage (%SW0 ⇒ %MW42000).
6.2.13.1 Détail Modbus
Bit
Mnémonique
Onglet
Description
%SW0
T_CYC
Chiens de garde
Temps de cycle automate en ms. Accessible seulement en lecture.
%SW1
S_CYC
Chiens de garde
Surveillance du temps de cycle automate. Valeur de référence permettant au système de contrôler un dépassement de temps de scrutation (SW0 > SW1) et de positionner le bit %S15 (CDG). Il n’y a pas d’arrêt de l’application. Accessible en lecture et écriture.
%SW2
Mx_CYC
Chiens de garde
Valeur de timeout du temps de cycle automate. Valeur de référence permettant au système de contrôler un dépassement maximal du temps de scrutation. En cas de dépassement (SW0 > SW2), le système effectue une sauvegarde des variables, force les sorties TOR et analogiques à 0 et passe l’automate en mode STOP. Le bit %S21 (RESET_SOFT) est positionné à 1. Accessible en lecture et écriture.
%SW3
Réservé
%SW4
WD_HARD
Chiens de garde
Non géré
%SW5 %SW6 %SW7 %SW8 %SW9 %SW10
SECONDE MINUTE HEURE JOUR MOIS ANNEE
Horodateur
Fonction date et heure. Mots contenant les valeurs courantes de la date et l’heure. Depuis le 29/06/12, ces mots sont accessibles en lecture et écriture en permanence, sans tenir compte de l’état de %S13 (MAJ_H).
%SW11
MODE_DST
Horodateur
Gestion automatique de l’heure d’été (valable depuis le 16/07/12). • Valeur 0 : le système gère automatiquement le passage à l’heure d’été d’après les conventions européennes. • Valeur 1 : le système gère automatiquement le passage à l’heure d’été d’après les conventions américaines et canadiennes (valable depuis le 02/02/21 et le code système 14.10). • Valeur 2 à 65534 : réservé pour de futurs modes. • Valeur 65535 : pas de gestion automatique de l’heure d’été. Le composant matériel (RTC) reste toujours à l’heure d’hiver. C’est la valeur utilisable dans les mots système (%SW5 à %SW10) qui tient compte du passage à l’heure d’été
%SW12
TIME_OFF
Horodateur
Décalage par rapport à l’heure UTC (en minutes). Pour la France, il faut mettre 60.
%SW13
VERSION_SYS
Informations système
Version du code système. Seulement en lecture.
%SW14
VERSION_APP
Informations système
Version de l’application. Ce mot est à la disposition de l’utilisateur pour stocker le numéro de version de son application.
%SW15 %SW16 %SW17 %SW18 %SW19 %SW20 %SW21 %SW22
SAV1 SAV2 SAV3 SAV4 SAV5 SAV6 SAV7 SAV8
Gestion des variables
Ces 8 mots sont à la disposition de l’utilisateur pour sauvegarder des mots. Voir la section 6.1.5 Sauvegarde des variables pour plus de détails.
%SW23
VERSION_BOOT
Informations système
Version du boot. Valable depuis le code système V8.0 du 26/07/16.
%SW24
VERSION_MLADDER
Informations système
Version de MicroLADDER qui a servi à la compilation. Valable depuis MicroLADDER V11.0 du 16/08/16.
%SW25
FREQ_TIMER
Interruption
Période d’appel des fonctions interruptives en µs. Les fonctions qui doivent être appelés doivent avoir la propriété « Appeler sur interruption » de validée. Valeur 0 : pas d’appel. Valeur différente de 0 : période d’appel en µs. Cette valeur n’est pas sauvegardée. Elle doit être initialisé par le programme. Au cours du programme, il est possible de la modifier à volonté. Une valeur trop faible bloque l’automate.
%SW26
FREQ_PWM
Gestion des entrées/ sorties
Fréquence de la sortie MLI.
%SW27 %SW28 %SW29 %SW30 %SW31 %SW32
FET1 FET2 FET3 FET4 FET5 FET6
Masque de lecture. Il permet d’empêcher le rafraîchissement des entrées. Chaque entrée est associée à un bit. 1 er et 2 nd octets d’entrée 3 ième et 4 ième octet d’entrée 5 ième et 6 ième octet d’entrée 7 ième et 8 ième octet d’entrée 9 ième et 10 ième octet d’entrée 11 ième et 12 ième octet d’entrée Remarque : une carte d’entrée de 16 bits peut être à cheval sur 2 mots système. Ces variables n’existent plus depuis MicroLADDER V16.0 du 14/03/19 et ne sont plus visibles dans l’éditeur de variables. Il est maintenant possible de forcer directement des variables.
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir la section 6.2.13.1 Détail Modbus pour plus d’informations
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir la section 6.2.13.1 Détail Modbus pour plus d’informations
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir la section 6.2.13.1 Détail Modbus pour plus d’informations
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir la section 6.2.13.1 Détail Modbus pour plus d’informations
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir la section 6.2.13.1 Détail Modbus pour plus d’informations
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir la section 6.2.13.1 Détail Modbus pour plus d’informations
Configuration du port Numéro d’esclave Résultat de l’échange Code de vitesse Format de communication Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000 ms. Voir 6.2.13.1 Détail Modbus pour plus d’informations
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW91 %SW92 %SW93 %SW94
W_DNS_ADDR1 W_DNS_ADDR2 W_DNS_ADDR3 W_DNS_ADDR4
Wifi
Adresse du serveur DNS pour le port Wi-Fi (valable depuis MicroLADDER 13.0 et le code système 10.0 du 11/09/17).
%SW95
W_MODE
Wifi
Mode de fonctionnement du port Wi-Fi.
%SW96 %SW97 %SW98 %SW99
DNS_ADDR1 DNS_ADDR2 DNS_ADDR3 DNS_ADDR4
Ethernet
Adresse du serveur DNS pour le port Ethernet et pour le port Wi-Fi. A partir de MicroLADDER 13.0 et du code système 10.0 du 11/09/17, ces mots ne sont valables que pour l’Ethernet puisqu’il y a maintenant des mots pour le Wi-Fi.
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW123
%SW124
%SW125 %SW126 %SW127
SOCK1
PORT_SOCK1
NESC_SOCK1 RES_SOCK1 TIMEOUT_SOCK1
Ethernet
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW128
%SW129
%SW130 %SW131 %SW132
SOCK2
PORT_SOCK2
NESC_SOCK2 RES_SOCK2 TIMEOUT_SOCK2
Ethernet
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW133
%SW134
%SW135 %SW136 %SW137
SOCK3
PORT_SOCK3
NESC_SOCK3 RES_SOCK3 TIMEOUT_SOCK3
Ethernet
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW161
%SW162
%SW163 %SW164 %SW165
WSOCK1
PORT_WSOCK1
NESC_WSOCK1 RES_WSOCK1 TIMEOUT_WSOCK1
Wifi
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW166
%SW167
%SW168 %SW169 %SW170
WSOCK2
PORT_WSOCK2
NESC_WSOCK2 RES_WSOCK2 TIMEOUT_WSOCK2
Wifi
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW171
%SW172
%SW173 %SW174 %SW175
WSOCK3
PORT_WSOCK3
NESC_WSOCK3 RES_WSOCK3 TIMEOUT_WSOCK3
Wifi
Configuration du port LoRa (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro d’esclave (cette variable est sauvegardée dans la carte SD) Résultat de l’échange (voir 6.2.13.1 Détail Modbus pour plus d’informations) Canal de fréquence de réception (voir 6.2.13.2 Détail Radio Fréquence) Canal fréquence d’envoi (voir 6.2.13.2 Détail Radio Fréquence) Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000ms.
%SW189
%SW190
%SW191
W_RSSI
RSSI_RF0
RSSI_RF1
Wifi / Radio
Valeur du RSSI Wi-Fi en Décibel milliwatt (ou dBm). Correspond à -WsockLastRSSI qui est en dBm. Valeur du RSSI du premier port radio en -dBm. Correspond à – RFLastRSSI[0] qui est en dBm. Valeur du RSSI du second port radio en -dBm. Correspond à – RFLastRSSI[1] qui est en dBm. Ces variables sont mise à jour toutes les minutes. Elles sont valables depuis MicroLADDER V14.15 du 05/06/18 et le code système V11.9 du 05/06/18
%SW200
%SW201
%SW202
%SW203
%SW204
%SW205
RF0
NESC_RF0
RES_RF0
FREQ_RX_RF0
FREQ_TX_RF0
TIMEOUT_RF0
Radio
Configuration du port LoRa (voir 6.2.13.1 Détail Modbus pour plus d’informations). Numéro d’esclave (cette variable est sauvegardée dans la carte SD) Résultat de l’échange (voir 6.2.13.1 Détail Modbus pour plus d’informations) Canal de fréquence de réception (voir 6.2.13.2 Détail Radio Fréquence) Canal fréquence d’envoie (voir 6.2.13.2 Détail Radio Fréquence) Pour le Modbus maître, valeur de temps maximale en ms entre l’envoie d’une trame et la réception de la réponse. La valeur par défaut est 3000ms.
%SW206
%SW207
%SW208
%SW209
%SW210
%SW211
RF1
NESC_RF1
RES_RF1
FREQ_RX_RF1
FREQ_TX_RF1
TIMEOUT_RF1
Radio
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations) du port Ethernet 2. Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
Adresse MAC du port Bluetooth. Ces variables sont valables depuis MicroLADDER V15.0 du 20/11/18.
%SW220
%SW221
%SW222 %SW223
%SW224
BT0
NESC_BT0
RES_BT0 GAP_BT0
TIMEOUT_BT0
Mode de fonctionnement du port Bluetooth 0 Numéro d’esclave du port Bluetooth Etat du port Bluetooth 0 Mode GAP du port Bluetooth 0 (0 = déconnecté, bluetooth inactif ; 1 = advertising (connexion possible) ; 2 = connecté) Timeout du port Bluetooth 0 Ces variables sont valables depuis MicroLADDER V15.0 du 20/11/18.
Masque du sous réseau du port Ethernet 2. Valable depuis MicroLADDER V18.0 du 25/11/21
%SW239 %SW240 %SW241 %SW242
GATEWAY1_2 GATEWAY2_2 GATEWAY3_2 GATEWAY4_2
Passerelle du port Ethernet 2. Valable depuis MicroLADDER V18.0 du 25/11/21.
%SW243
%SW244
%SW245 %SW246 %SW247
SOCK4
PORT_SOCK4
NESC_SOCK4 RES_SOCK4 TIMEOUT_SOCK4
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations) du port Ethernet 2. Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW248
%SW249
%SW250 %SW251 %SW252
SOCK5
PORT_SOCK5
NESC_SOCK5 RES_SOCK5 TIMEOUT_SOCK5
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations) du port Ethernet 2. Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW253
%SW254
%SW255 %SW256 %SW257
SOCK6
PORT_SOCK6
NESC_SOCK6 RES_SOCK6 TIMEOUT_SOCK6
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations) du port Ethernet 2. Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
%SW258
%SW259
%SW260 %SW261 %SW262
SOCK7
PORT_SOCK7
NESC_SOCK7 RES_SOCK7 TIMEOUT_SOCK7
Protocole de communication du socket (voir 6.2.13.1 Détail Modbus pour plus d’informations) du port Ethernet 2. Numéro de port en mode esclave du socket (502 pour Modbus, 10000 pour VNC, 80 pour HTTP, 161 pour SNMP) Numéro d’esclave du socket Résultat de l’échange du socket Timeout du socket
Tableau sur le détail des variables systèmes
SER0 à SER7 SOCK0 à SOCK3 WSOCK0 à WSOCK3 RF0 à RF1
Variables de configuration du port. Ces variables ne sont pas sauvegardées.
Protocole HTTP pour les commandes (valable seulement depuis le 23/01/17)
COM_PROTOCOL_RF
11
Protocole radio (valable seulement depuis le code système 12.0)
COM_PROTOCOL_BT
12
Protocole Bluetooth (valable seulement depuis le code système 12.0)
COM_PROTOCOL_MODBUS_RO
13
Modbus esclave Read Only (valable seulement depuis le 15/01/20 code système 11.25 et code système 13.16)
COM_PROTOCOL_MODBUS_TCP_RO
14
Modbus TCP esclave Read Only (valable seulement depuis le 15/01/20 code système 11.25 et code système 13.16)
Tableau des valeurs des protocoles avec leurs descriptions
Information
La valeur par défaut est COM_PROTOCOL_MODBUS pour les ports série. Elle est COM_PROTOCOL_MODBUS_TCP pour le socket 0 et COM_PROTOCOL_HTTP pour les sockets 1 à 3 sauf pour les automates à écran graphique où le socket 1 est à COM_PROTOCOL_GFX.
Il est vivement recommandé d'utiliser le nom de la valeur pour initialiser le mot système plutôt que d'utiliser la valeur.
NESC_SER0 à NESC_SER7 NESC_SOCK0 à NESC_SOCK3 NESC_WSOCK0 à NESC_WSOCK3
Numéro d’esclave pour le mode Modbus esclave. Ces variables ne doivent pas obligatoirement être à 0 pour faire du Modbus maître ou de la communication sans protocole. Ces variables sont sauvegardées sur la carte SD.
Nom de la valeur
Valeur de la variable
Description
0
Seulement Modbus maître
1 à 255
Numéro d’esclave Modbus
La valeur pas défaut est 1.
RES_SER0 à RES_SER7 RES_SOCK0 à RES_SOCK3 RES_WSOCK0 à RES_WSOCK3 RES_RF0 à RES_RF1
Variables du résultat de l’échange. Elles fonctionnent en émission ou réception.
Nom de la valeur
Valeur de la variable
Description
COM_STATE_READY
0
Communication terminée
COM_STATE_WAIT
1
Temporisation avant envoi de la trame
COM_STATE_SEND
2
Communication en cours (émission ou réception)
COM_STATE_ERROR
240
Limite à partir de laquelle commence la zone des défauts
COM_STATE_ERROR + MODBUS_ERROR_BAD_RESPONSE
253
Mauvaise réponse
COM_STATE_ERROR + MODBUS_ERROR_INCOMPLETE_RESPON SE
254
Réponse incomplète
COM_STATE_ERROR + MODBUS_ERROR_NO_RESPONSE
255
Time out : pas de réponse
Tableau des résultats des échanges avec leurs descriptions
SPD_SER0 à SPD_SER7
Variables sur la vitesse d’échange. Ces variables sont sauvegardées dans la carte SD.
Nom de la valeur
Valeur de la variable
Description
COM_SPEED_NONE
0
COM_SPEED_300
1
300 bauds
COM_SPEED_1200
2
1200 bauds
COM_SPEED_2400
3
2400 bauds
COM_SPEED_4800
4
4800 bauds
COM_SPEED_9600
5
9600 bauds
COM_SPEED_19200
6
19200 bauds
COM_SPEED_38400
7
38400 bauds
COM_SPEED_57600
8
57600 bauds
COM_SPEED_76800
9
76800 bauds
COM_SPEED_115200
10
115200 bauds
Tableau des vitesses d’échange avec leurs descriptions
FOR_SER0 à FOR_SER7
Variables sur les paramètre du format d’échange. Ces variables sont sauvegardées dans la carte SD.
Nom de la valeur
Valeur de la variable
Description
COM_FORMAT_NONE
0
COM_FORMAT_8N2
1
8 bits, pas de parité, 2 bits de stop,
COM_FORMAT_8N1
2
8 bits, pas de parité, 1 bit de stop,
COM_FORMAT_8E1
3
8 bits, parité paire, 1 bit de stop,
COM_FORMAT_8O1
4
8 bits, parité impaire, 1 bit de stop,
COM_FORMAT_7E2
5
7 bits, parité paire, 2 bits de stop,
COM_FORMAT_7O2
6
7 bits, parité impaire, 2 bits de stop,
COM_FORMAT_7E1
7
7 bits, parité paire, 1 bit de stop,
COM_FORMAT_7O1
8
7 bits, parité impaire, 1 bit de stop,
COM_FORMAT_7R2
9
7 bits, parité forcée à 0, 2 bits de stop,
COM_FORMAT_7R1
10
7 bits, parité forcée à 0, 1 bit de stop,
COM_FORMAT_7S2
11
7 bits, parité forcée à 1, 2 bits de stop,
COM_FORMAT_7S1
12
7 bits, parité forcée à 1, 1 bit de stop,
Tableau sur les paramètres de format d’échange avec leurs descriptions
La valeur par défaut est COM_FORMAT_8N1 (2).
6.2.13.2 Détail Radio Fréquence
FREQ_RX_RF0 à FREQ_RX_RF1 FREQ_TX_RF0 à FREQ_TX_RF1
Variables sur le uméro de canal de fréquence du port radio. Ces variables sont sauvegardées sur la carte SD.
Nom de la valeur
Valeur de la variable
Description
RF_FREQ_NONE RF_FREQ_0
0
868,125 MHz
RF_FREQ_1
1
868,475 MHz
RF_FREQ_2
2
868,950 MHz
RF_FREQ_3
3
869,525 MHz
Tableau sur les fréquences avec leurs descriptions
6.3 Watchdog
Un watchdog ou chien de garde va permettre à l’automate de ne pas se bloquer dans une étape particulière. A chaque cycle, l’automate va lancer une temporisation. Si cette temporisation dépasse une temporisation de référence, alors le watchdog se déclenche. Le watchdog va permettre d’effectuer un reset du système ou bien de redémarrer le système.
6.3.1 Dépassement du temps de cycle
La valeur de temporisation de référence du système est à paramétrer dans la variable système %SW1 en ms. Lorsque le temps de cycle (%SW0) est supérieur à la valeur de référence, %SW1, le système met la variable booléenne %S15 à 1. Il n’y a pas de blocage du cycle, le programme va continuer à tourner. On va seulement avoir une indication si il y a eu un dépassement du cycle en observant la variable %S15. Ainsi, si la variable %S15 est à 1, elle doit être remis volontairement à 0. Si %SW1 vaut 0, il n’y a pas de contrôle du temps de cycle.
6.3.2 Watchdog soft par interruption
La valeur de temporisation de référence du système est à paramétrer dans la variable système %SW2 en ms. Lorsque le temps de cycle (%SW0) est supérieur à la valeur de référence, %SW2, le système effectue une sauvegarde des variables, force les sorties TOR et analogiques à 0, passe l’automate en mode STOP, met %S21 à 1 et enfin écrit 1 dans le paramètre RESET_SW sur la carte SD. La vérification que le temps de cycle n’est pas supérieur à la valeur de référence est levé par interruption. Si %SW2 vaut 0, le système utilise la valeur par défaut (3000 ms).
6.4 Configuration du code système
6.4.1 Optimiser la taille du code
Cette option est valable depuis la version 14.0 de MicroLADDER et la version 11.0 du code système. Lorsque cette option est à 1, la taille du code est réduite, mais le temps d’exécution est augmenté. Par défaut, l’option est à 0.
6.4.2 AUTO_STOP
Lorsque cette option est à 0, lors d’un watchdog soft, l’application redémarre seule. %S21 est mis à 1 et l’application doit la remettre à 0. Lorsque cette option est à 1, lors d’un watchdog soft, l’application ne redémarre pas et l’automate reste sur la boucle principale. %S21 est mis à 1 et il est remis à 0 si l’application est redémarrée. Par défaut cette option est à 1.
6.4.3 DHCP
Lorsque cette option est à 1, elle permet d’avoir la possibilité d’utiliser la fonction DHCP (attribution d’adresse IP automatiquement par un serveur DHCP). Lorsque cette option est à 0, elle permet de gagner en taille de code. Par défaut, l’option est à 1.
6.4.4 DNS
Lorsque cette option est à 1, elle permet d’avoir la possibilité d’utiliser la fonction DNS (conversion d’une adresse web littérale en adresse IP par un serveur DNS). Lorsque cette option est à 0, elle permet de gagner en taille de code. Par défaut, l’option est à 1.
6.4.5 GFX
Lorsque cette option est à 1, elle permet de prendre la main à distance sur l’IHM à l’aide du logiciel microPAD et de la liaison Ethernet. Il faut donc un socket du port Ethernet de disponible pour cette fonctionnalité. Lorsque cette option est à 0, elle permet de gagner en taille de code. Par défaut, l’option est à 0.
6.4.6 HTTP
Lorsque cette option est à 1, elle permet d’avoir accès aux serveurs web. Il faut donc un socket du port Ethernet de disponible. Si l’application dispose d’un IHM développé par MicroHMI, ce sera l’application MicroHMI qui sera visualisée (il faut alors 2 sockets), si l’application ne dispose pas d’IHM, ce sera un accès au répertoire www de la carte SD. Il est aussi possible de faire de la communication ModBus à travers le protocole HTTP. Lorsque cette option est à 0, elle permet de gagner en taille de code. Par défaut, l’option est à 0.
6.4.7 LCD
Cette option est valable depuis la version 10.14 de MicroLADDER du 09/06/16. Lorsque cette option est à 1, elle permet de gérer l’écran LCD de l’automate. Lorsque cette option est à 0, elle permet de gagner jusqu’à 50 ko de code. Par défaut, l’option est à 1.
6.4.8 RF
Cette option est valable depuis la version 14.0 de MicroLADDER et la version 11.0 du code système. Elle permet d’activer la gestion du module Radio Fréquence LoRa sur un port série pré-attribué sur chaque automate. Par défaut, l’option est à 0.
6.5 Fonctions utiles
6.5.1 Communication sans protocole
Pour paramétrer une communication sans protocole, il faut mettre le mot système SERx, SOCKx ou WSOCKx à la valeur COM_PROTOCOL_NONE (valeur 0).
6.5.1.1 Paramétrage
void ComSetCharTimeout (unsigned char comPort, unsigned short timeout);
Cette fonction permet de définir le timeout inter-caractères. Cela est utile avec une communication radio où les caractères peuvent arriver avec un peu plus de retard. Cette fonction est valable depuis le code système 8.0 du 01/06/16.
unsigned char comPort : numéro du port de communication. Il est préférable d’utiliser les variables prédéfinies:
Cette fonction écrit un octet dans un buffer temporaire à chaque fois qu’elle est exécutée. Cette fonction est une alternative à la fonction ComPush et elle est utilisée avant d’envoyer une chaîne de caractères à l’automate.
unsigned char comPort : numéro du port de communication. Il est préférable d’utiliser les variables prédéfinies
Cette fonction écrit une chaîne de caractères, préalablement écrite dans un buffer, sur le port série, le port Ethernet ou Wi-Fi. La fonction ComPush ou ComPushByte doit être exécutée avant afin de réaliser le stockage de la chaîne de caractères à envoyer. Lors de l’émission sur un port Ethernet ou Wi-Fi, la fonction ne rend la main qu’à la fin de l’émission. Lors de l’émission sur un port série, la fonction rend la main immédiatement et l’émission se fait en différée sous interruption. Ainsi, pour connaître la fin de l’émission, il faut regarder le mot système RES_SERx ou utiliser la fonction ComFlushOutput. Le mot RES_SERx est mis à jour à la fin du tour de cycle automate. Il ne faut donc pas bloquer le programme en attendant un changement de son état.
unsigned char comPort : numéro du port de communication. Il est préférable d’utiliser les variables prédéfinies
unsigned short ComGetFrameLength (unsigned char comPort);
Cette fonction permet de savoir combien de caractères ont été reçus. La réception se fait dans un buffer cyclique de 256 caractères. Lorsque le buffer est plein, la réception repart au début.
unsigned short (valeur de retour) : variable de retour de type unsigned short. Elle indique le nombre de caractères reçu dans le buffer. Au départ elle vaut 0. Elle s’incrémente jusqu’à 255, passe à 256 et repasse à 1. De ce fait, elle pointe vers l’emplacement du prochain caractère sauf lorsqu’elle indique 256.
unsigned char comPort : numéro du port de communication. Il est préférable d’utiliser les variables prédéfinies
Cette fonction permet de récupérer les caractères reçus. Elle renvoie un pointeur sur le début de la chaîne de réception. Après avoir traité les caractères reçus, il faut utiliser la fonction ComFlushInput pour que la prochaine réception commence au début du buffer.
unsigned char * (valeur de retour) : variable de retour pointant sur la chaîne de caractères reçus par l’automate
unsigned char comPort : numéro du port de communication. Il est préférable d’utiliser les variables prédéfinies suivantes:
void ComClearFrame (unsigned char comPort, int l);
Cette fonction efface du tampon de réception le nombre de caractères demandé et déplace les autres caractères vers le début. Elle est donc très utile pour effacer uniquement les caractères qui ont été traités.
unsigned char comPort : numéro du port de communication. Il est préférable d’utiliser les variables prédéfinies
Pour plus de détails, se référer à la section 6.2.13.1 Détail Modbus avec notamment les variables %SW34 à %SW175. Il est possible de faire du Modbus standard ou du Modbus étendu (Modbus Sirea) sur tous les ports. Cela signifie qu’il est possible de faire le chargement d’une application par tous les ports. Par défaut, tous les ports sont paramétrés en Modbus Sirea esclave n°1 pour les ports série et Modbus TCP esclave n°1 pour les ports Ethernet et Wi-Fi.
6.5.2.1 Modbus esclave et Modbus TCP esclave
Il suffit de renseigner NESC_SERx, NESC_SOCKx ou NESC_WSOCKx avec le numéro d’esclave et SERx, SOCKx ou WSOCKx avec le protocole (variable COM_PROTOCOL_MODBUS pour du Modbus standard ou COM_PROTOCOL_MODBUS_TCP pour du Modbus TCP). Pour le Modbus TCP, il faut aussi que PORT_SOCKx ou PORT_WSOCKx soit à 502. Le système se charge de répondre aux requêtes reçues.
6.5.2.2 Modbus maître
Il suffit de renseigner SERx, SOCKx ou WSOCKx sans protocole (variable COM_PROTOCOL_NONE). NESC_SERx ne doit pas forcément être à 0. La gestion des trames de lecture et d’écriture est à l’initiative de l’application.
unsigned char ModbusRead (unsigned char comPort, unsigned char tcp, unsigned char slave, unsigned char type, unsigned short masterAdd, unsigned short nbValues, unsigned short slaveAdd);
Cette fonction permet la lecture de mots ou bits sur un esclave Modbus. La vitesse et le format de communication sont paramétrés dans les mots systèmes. La fonction doit être lancée sur front. Elle va ensuite prendre un certain temps pour s’éxécuter. Il est possible de connaître son état d’évolution par la variable RES_SERx, RES_SOCKx ou RES_WSOCKx dans les mots systèmes.
unsigned char (valeur de retour) : variable de retour de type unsigned char. Elle vaut 1 si la fonction est lancée. Elle vaut 0 s’il y a une erreur de paramètre qui empêche de lancer la fonction.
unsigned char comPort : numéro de port. Il est préférable d’utiliser les variables prédéfinies :
unsigned short masterAdd : adresse de la première donnée dans la mémoire du maître pour le stockage.
unsigned short nbValues : nombre de données à lire.
unsigned short slaveAdd : adresse de la première donnée dans l’esclave.
unsigned char ModbusWrite (unsigned char comPort, unsigned char tcp, unsigned char slave, unsigned char type, unsigned short masterAdd, unsigned short nbValues, unsigned short slaveAdd, unsigned char forceMultFunc);
Cette fonction permet l’écriture de mots ou bits sur un esclave Modbus. La vitesse et le format de communication sont paramétrés dans les mots systèmes. La fonction doit être lancée sur front. Elle va ensuite prendre un certain temps pour s’éxécuter. Il est possible de connaître son état d’évolution par la variable RES_SERx, RES_SOCKx ou RES_WSOCKx dans les mots systèmes.
unsigned char (valeur de retour) : variable de retour de type unsigned char. Elle vaut 1 si la fonction est lancée. Elle vaut 0 s’il y a une erreur de paramètre qui empêche de lancer la fonction.
unsigned char comPort : numéro de port. Il est préférable d’utiliser les variables prédéfinies :
unsigned char tcp : type de Modbus (0 : Modbus classique, 1 : Modbus TCP).
unsigned char slave: numéro d’esclave.
unsigned char type : type de variable à écrire (bit ou mot). Il est préférable d’utiliser les variables prédéfinies :
MODBUS_TYPE_MW, MODBUS_TYPE_M.
unsigned short masterAdd : adresse de la première donnée dans la mémoire du maître pour l’émission.
unsigned short nbValues : nombre de donnée à écrire.
unsigned short slaveAdd : adresse de la première donnée dans l’esclave.
unsigned char forceMultFunc : valeur à mettre à 1 pour forcer l’utilisation de la fonction d’écriture de plusieurs mots (code fonction 10h au lieu de 06h) ou plusieurs bits (code fonction 0Fh au lieu de 05h). Mettre 0 dans le cas contraire et le système sélectionne le code fonction en fonction du nombre d’éléments à écrire.
6.5.2.3 Modbus TCP maître
Il faut gérer une ouverture et une fermeture de socket. La gestion des trames est identique au Modbus sur port série. Il faut faire attention à bien renseigner les deux premiers paramètres des fonctions ModbusRead et ModbusWrite. Avant chaque lecture ou écriture, il faut recontrôler l’état du socket qui peut avoir perdu sa connexion. Depuis le 02/10/13, il n’est plus nécessaire de régler le port à 502 dans les variables PORT_SOCK* et PORT_WSOCK* (cela est fait dans la nouvelle fonction).
void ComConnect (unsigned char comPort, char *host, unsigned short port);
Cette fonction ouvre le socket. Il faut ensuite tester l’état du socket avant de générer des trames.
unsigned char comPort : numéro du port de communication. Mettre COM_PORT_SOCK0, COM_PORT_SOCK1, COM_PORT_SOCK2, COM_PORT_SOCK3 pour les socket Ethernet et mettre COM_PORT_WSOCK0, COM_PORT_WSOCK1, COM_PORT_WSOCK2, COM_PORT_WSOCK3 pour les sockets Wi-Fi. Cette valeur doit être en accord avec le premier paramètre des fonctions ModbusRead et ModbusWrite.
char *host: chaîne de caractères contenant l’adresse IP ou l’adresse si le DNS est activé.
unsigned short port : numéro du port du client ou du serveur auquel il faut se connecter. Par exemple 502 pour du Modbus.
void ComClose (unsigned char comPort);
Cette fonction ferme le socket.
unsigned char comPort: numéro du port de communication. Mettre COM_PORT_SOCK0, COM_PORT_SOCK1, COM_PORT_SOCK2, COM_PORT_SOCK3 pour les socket Ethernet et mettre COM_PORT_WSOCK0, COM_PORT_WSOCK1, COM_PORT_WSOCK2, COM_PORT_WSOCK3 pour les sockets Wi-Fi. Cette valeur doit être en accord avec le premier paramètre des fonctions ModbusRead et ModbusWrite.
unsigned char (valeur de retour) : variable de retour de type unsigned char. Elle vaut SOCK_STATE_CLOSED (valeur 0) si le socket est fermé. Elle vaut SOCK_STATE_READY (valeur 1) si le socket est connecté (pour une fonction maître ou esclave). Elle vaut SOCK_STATE_CONNECT (valeur 2) si le socket est en cours de connexion. Elle vaut SOCK_STATE_CLOSE (valeur 3) si le socket est en cours de fermeture.
unsigned char comPort : numéro du port de communication. Mettre COM_PORT_SOCK0, COM_PORT_SOCK1, COM_PORT_SOCK2, COM_PORT_SOCK3 pour les socket Ethernet et mettre COM_PORT_WSOCK0, COM_PORT_WSOCK1, COM_PORT_WSOCK2, COM_PORT_WSOCK3 pour les sockets Wi-Fi. Cette valeur doit être en accord avec le premier paramètre des fonctions ModbusRead et ModbusWrite.
Remarque : La tentative de connexion d’un socket peut ne pas fonctionner. Il faut donc que l’application gère un timeout et gère la non connexion.
6.5.3 Gestion des fichiers
La gestion des fichiers sur les automates peut se faire sur la carte SD mais aussi sur une clé USB. Ces deux supports doivent être formatés en FAT32.
Information
Seuls certains automates ont des ports USB nous permettant de brancher une clé USB. Parmi ces automates on retrouve les automates MicroARM-A2, MicroARM-A9 et MicroARM-A12.
Les opérations de manipulation de fichiers sont bloquantes. Elles prennent du temps, surtout lorsqu’il faut parcourir la carte ou la clé pour trouver les secteurs libres. Elles ne peuvent pas être traitées dans une interruption. Ainsi, la plupart des fonctions de gestion des fichiers génèrent des ResetWatchdog afin de ne pas provoquer de dépassement de watchdog. Un ResetWatchdog va permettre de mettre la valeur de la temporisation d’exécution à 0 pour ne pas qu’un watchdog soit levé, bloquant le programme. La carte ou la clé est divisée en clusters. Chaque cluster est à nouveau divisé en 4 secteurs de 512 octets. Pour écrire des données sur un secteur, il faut lire tout le secteur, modifier les octets et réécrire les 512 octets. L’insertion de la carte SD à chaud exécute un cFatInit qui dure 1255ms. Les autres opérations prennent de 30 à 100ms.
6.5.3.1 Structure des noms de fichier
Il faut indiquer le type de support (SD pour carte SD ou USB pour une clé USB) suivi de « : », le nom du fichier (maximum 8 caractères) et l’extension (maximum 3 caractères). Le système ne fait pas la différence entre les majuscules et les minuscules.
La structure « FSFile » est une structure qui contient des informations durant le travail sur un fichier (de son ouverture à sa fermeture). Pour des raisons d’inutilité, on ne décrira pas cette structure dans cette documentation car il n’y a pas d’action particulière à faire avec cette structure, ce sont les fonctions que l’on va appeler pour travailler sur le fichier qui vont impacter cette variable. S’il s’écoule plusieurs tours de cycle entre l’ouverture et la fermeture du fichier, il faut que cette variable soit de type global.
Cette fonction permet d’ouvrir le fichier avant de faire une lecture ou une écriture.
unsigned char (valeur de retour) variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 en cas d’erreur.
FSFile *fd : adresse d’une variable de type FSFile.
char *name : chaîne de caractères contenant le nom du fichier.
unsigned char type : indique l’ouverture du fichier pour une lecture (FA_READ), pour un ajout (FA_APPEND) ou pour une écriture au début du fichier (valeur FA_WRITE).
Cette fonction permet de fermer le fichier lorsque les écritures sont terminées. Il n’est pas nécessaire d’appeler cette fonction si le fichier a été ouvert pour une lecture.
FSFile *fd : adresse d’une variable de type FSFile.
Exemple :
FSFile fd; FSClose (&fd);
unsigned char FSSeek (FSFile *fd, unsigned long position);
Cette fonction permet de se positionner dans un fichier. Il faut exécuter la fonction FSOpen avant.
unsigned char (valeur de retour): variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 si la position demandée est en dehors du fichier.
FSFile *fd : adresse d’une variable de type FSFile.
Cette fonction permet de renommer un fichier. Elle permet aussi de faire un déplacement si le dossier source est différent du dossier destination. Les dossiers source et destination doivent être sur le même support (clé USB ou carte SD).
unsigned char (valeur de retour): variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 en cas d’erreur.
char *src : chaîne de caractères contenant le nom du fichier source.
char *dst : chaîne de caractères contenant le nom du fichier destination.
Cette fonction permet de lire une ligne du fichier. Il faut exécuter la fonction FSOpen avant.
unsigned char (valeur de retour): variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 en cas d’erreur.
FSFile *fd : adresse d’une variable de type FSFile.
char *data : chaîne de caractères qui contiendra les caractères lus.
unsigned short maxLen : nombre maximum de caractères à lire.
unsigned char *broken : adresse d’une variable de type unsigned char. La fonction renverra dans cette variable 0 si la ligne retournée est complète et renvoie 1 si la ligne retournée est incomplète.
unsigned char FSWriteCSVRow (FSFile *fd, unsigned short nbCols, char *data);
Cette fonction permet d’écrire une ligne de donnée contenant plusieurs colonnes. Il faut exécuter la fonction FSOpen avant et la fonction FSClose après.
unsigned char (valeur de retou): variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 en cas d’erreur.
FSFile *fd: adresse d’une variable de type FSFile.
unsigned short nbCols : nombre de colonnes à écrire.
char *data : chaîne de caractères contenant les caractères à écrire. Les différentes colonnes sont séparées par 0.
Cette fonction permet de créer un répertoire. Elle n’est valable que depuis le code système 8.14 ou 9.14.
unsigned char (valeur de retour) : variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 en cas d’erreur (répertoire déjà existant, problème d’écriture sur le support, …).
char *name : chaîne de caractères contenant le nom du répertoire et son chemin.
C’est une variable de type « long » contenant le nombre de secondes écoulées depuis le 1er janvier 1970. Une variable de type timestamp peut être convertie sous format « Date ». Les fonctions dateToTime et timeToDate sont disponibles pour effectuer ces conversions. L’horodatage est en temps UTC. La date est en heure locale. Elle est donc influencée par le décalage été/hiver et le fuseau horaire.
6.5.4.2 Structure « Date »
Une structure Date est constituée de plusieurs éléments :
int sec
Secondes [0, 59]
int min
Minutes [0, 59]
int hour
Heure commençant à minuit [0, 23]
int mday
Jour du mois [1, 31]
int mon
Mois, commençant par janvier [1, 12]
int year
Année
int wday
Jour commençant par le dimanche [0, 6]
int yday
Jour commençant au 1er janvier [0, 365]
int isdst
Heure d’été ou d’hiver
Tableau sur la structure « Date »
6.5.4.3 Fonctions de conversions Date/timestamp
unsigned long dateToTime (Date d);
Cette fonction convertit une structure « Date » en timestamp. Elle fonctionne du 01/01/1970 00:00:00 (valeur de retour = 0) au 01/19/2038 03:14:07 (valeur de retour = 2147483647). Sinon, le retour est -1.
unsigned long (valeur de retour): variable de type long
Date d : variable de structure « Date ».
Exemple :
long lTSDate ;
Date d ;
d.mday = 25 ;
d.mon = 12 ;
d.year = 2010 ;
lTSDate = dateToTime(d) ;
Date timeToDate (unsigned long time);
Cette fonction convertit un timestamp en structure « Date ».
La valeur 2147483647 renvoie 01/19/2038 03:14:07.
La valeur 0 renvoie 01/01/1970 00:00:00.
La valeur – 2147483648 envoie le 19/01/2038 03:14:08.
La valeur -1 envoie le 02/07/2106 06:28:15.
Date (valeur de retour) : variable de structure « Date ».
unsigned long time : timestamp que l’on souhaite convertir.
Exemple :
long lTSDate ;
Date d ;
d = timeToDate(lTSDate) ;
Heure = d.hour ;
6.5.4.4 Format LogValue
Cette structure permet de récupérer les données enregistrées. Elle comprend les éléments suivants :
unsigned long time;
Horloge de l’enregistrement des données.
LogVariable *var;
Pointeur sur les données historiques
char *string;
chaîne de caractères de l’événement ou de l’alarme. Cette chaîne est NULL si elle est inexistante.
unsigned char type;
Lors de la récupération d’événements, il s’agit de LOG_ENTRY_TYPE_EVENT (valeur 1) dans le cas d’un message, LOG_ENTRY_TYPE_ALARM_ON (valeur 2) dans le cas de l’apparition d’une erreur et LOG_ENTRY_ALARM_OFF (valeur 3) dans le cas d’une disparition d’erreur.
double value;
Valeur de la variable enregistrée. Pour la récupération d’un événement, la valeur de ce champ est la valeur de la variable.
Tableau sur la structure LogValue
6.5.4.5 Fonctions de gestions des données historisées
unsigned short LogAlQuery (unsigned long minTime, unsigned long maxTime, unsigned char order);
Cette fonction ouvre la base de données pour récupérer les défauts présents. La fonction LogFetch doit ensuite être être exécutée dans le même cycle pour la récupération des données.
unsigned short (valeur de retour) : variable de type unsigned short. Elle correspond au nombre d’alarmes récupérées pour la période demandée.
unsigned long minTime : date de début de recherche au format timestamp. Elle est définie à 0 pour une date illimitée.
unsigned long maxTime : date de fin de recherche au format timestamp. La valeur 0 correspond à l’illimitée.
unsigned char order : ordre de tri. Il faut utiliser LOG_QUERY_ORDER_ASC pour un ordre croissant des données (le registre le plus ancien en premier) ou LOG_QUERY_ORDER_DESC pour un ordre descendant (le registre le plus ancien en dernier).
Exemple :
long tsStart ;
long tsEnd ;
unsigned short nbrErr ;
nbrErr = LogAlQuery (tsStart, tsEnd, LOG_QUERY_ORDER_DESC) ;
unsigned short LogEvQuery (unsigned long minTime, unsigned long maxTime, unsigned char order);
Cette fonction ouvre la base de données pour récupérer le journal de tous les défauts qui sont apparus, qui sont disparus et de toutes les messages qui sont apparus. La fonction LogFetch doit ensuite être exécutée dans le même cycle pour la récupération des données. C’est dans le champ « Type » de la variable de structure LogValue qui peut faire la différence entre les trois différents types de données.
unsigned short (valeur de retour): variable de type unsigned short. Elle correspond au nombre d’événements récupérés pour la période période demandée.
unsigned long minTime : date de début de recherche au format timestamp. Elle est définie à 0 pour une date illimitée.
unsigned long maxTime : date de fin de recherche au format timestamp. La valeur 0 correspond à l’illimitée.
unsigned char order : ordre de tri. Il faut utiliser LOG_QUERY_ORDER_ASC pour avoir par ordre croissant les données (le registre le plus registre le plus ancien en première position) ou LOG_QUERY_ORDER_DESC pour les avoir dans un ordre décroissant (le registre le plus ancien en dernière position).
Exemple :
long lTSDebut ;
long lTSFin ;
unsigned short nNbrDef ;
nNbrEv = LogEvQuery (lTSDebut, lTSFin, LOG_QUERY_ORDER_DESC) ;
unsigned short LogTrQuery (LogVariable *var, unsigned long minTime, unsigned long maxTime, unsigned char order);
Cette fonction ouvre la base de données pour récupérer une valeur. La fonction LogFetch doit ensuite être exécutée dans le même cycle pour la récupération des données.
unsigned short (valeur de retour) : variable de type unsigned short. Nombre de valeurs récupérées pour la période demandée.
LogVariable *var : variable de type unsigned short. Index de la variable à extraire.
unsigned long minTime : date de début de recherche au format horodateur. La valeur 0 correspond à une recherche illimitée.
unsigned long maxTime : date de fin de recherche au format horodateur. La valeur 0 est illimitée.
unsigned char order : ordre de tri. Il faut utiliser LOG_QUERY_ORDER_ASC pour avoir par ordre croissant les données (le registre le plus registre le plus ancien en première position) ou LOG_QUERY_ORDER_DESC pour les avoir dans un ordre décroissant (le registre le plus ancien en dernière position).
Exemple :
long lTSDebut ;
long lTSFin ;
unsigned short nNbrDef ;
LogVariable *var = LogFindVariable("%MW20") ;
nNbrTr = LogEvQuery (var, lTSDebut, lTSFin, LOG_QUERY_ORDER_DESC) ;
unsigned char LogFetch (LogValue *val);
Cette fonction récupère une donnée. Il faut faire plusieurs appels à cette fonction pour récupérer plusieurs données. Il faut utiliser les fonctions LogAlQuery, LogEvQuery ou LogTrQuery juste avant de récupérer un paquet de données. Tous le paquet de données doit être récupérés dans le même tour de cycle.
unsigned char (valeur de retour) : variable de type unsigned char. Elle vaut 0 lorsqu’un problème survient.
LogValue *val : structure de type LogValue. Elle contiendra les données.
Exemple :
LogValue stDef ;
LogFetch (&stDef) ;
unsigned char LogAlSave (char *fileName, unsigned long minTime, unsigned long maxTime);
Cette fonction permet de sauvegarder les alarmes sur une carte SD ou une clé USB.
unsigned char (valeur de retour) : variable de type unsigned char. Elle vaut 0 lorsqu’un problème survient.
char *fileName : chaîne de caractères contenant le nom du fichier.
unsigned long minTime : date de début de recherche au format timestamp. Il faut mettre cette variable à 0 pour une recherche illimitée.
unsigned long maxTime : date de fin de recherche au format timestamp. La valeur 0 correspond à une date illimitée.
Exemple :
long lTSDebut ;
long lTSFin ;
unsigned short ret ;
ret = LogAlSave ("SD:Alarme.csv", lTSDebut, lTSFin) ;
unsigned char LogEvSave (char *fileName, unsigned long minTime, unsigned long maxTime);
Cette fonction permet de sauvegarder les événements sur une carte SD ou une clé USB.
unsigned char (valeur de retour) : variable de type unsigned char. Elle vaut 0 lorsqu’un problème survient.
char *fileName : chaîne de caractères contenant le nom du fichier.
unsigned long minTime : date de début de recherche au format timestamp. Il faut mettre cette variable à 0 pour une recherche illimitée.
unsigned long maxTime : date de fin de recherche au format timestamp. La valeur 0 correspond à une date illimitée.
Exemple :
long lTSDebut ;
long lTSFin ;
unsigned short ret ;
ret = LogEvSave ("SD:Evenem.csv", lTSDebut, lTSFin) ;
unsigned char LogTrSave (char *fileName, LogVariable *var, unsigned long minTime, unsigned long maxTime);
Cette fonction permet de sauvegarder les valeurs sur une carte SD ou une clé USB. Il faut utiliser la fonction LogFindVariable avant d’appeler cette fonction.
unsigned char (valeur de retour) : variable de type unsigned char. Elle vaut 0 lorsqu’un problème survient.
char *fileName : chaîne de caractères contenant le nom du fichier.
LogVariable *var : numéro de la variable enregistrée.
unsigned long minTime : date de début de recherche au format timestamp. Il faut mettre cette variable à 0 pour une recherche illimitée.
unsigned long maxTime : date de fin de recherche au format timestamp. La valeur 0 correspond à une date illimitée.
Exemple :
long lTSDebut ;
long lTSFin ;
unsigned short ret ;
LogVariable *var = LogFindVariable("%MW20") ;
if (var) {ret = LogTrSave ("SD:Valeur.csv", var, lTSDebut, lTSFin);}
unsigned char LogSave (FSFile *fd);
Cette fonction est utilisée pour exporter le résultat d’une requête d’historique vers un fichier déjà ouvert. Cette fonction est valable depuis le code système 8.0 du 11/07/16.
unsigned char (valeur de retour) : variable de type unsigned char. Elle vaut 0 s’il y a un problème.
FSFile *fd : adresse d’une variable de type FSFile.
Cette fonction est similaire à la fonction standard du langage C sprintf. Elle est utilisée pour remplir des chaînes de caractères avec des valeurs numériques et/ou des caractères de chaîne. Cette fonction peut être remplacée par StrSet, qui permet en outre de contrôler la longueur des chaînes de caractères.
int (valeur de retour) : code de valeur de retour
char *str : pointeur sur la chaîne de caractères à remplir.
const char *string : structure de la chaîne de caractères à créer avec les éléments constants et le type des éléments variables. Un exemple de type est: – % c (caractère) – % I ou % d (entier) – % s (chaîne de caractères) – % f (floatant).
Paramètre 3 et suivants : liste des éléments variables à placer dans la chaîne de caractères.
Cette fonction remplace les caractères minuscules d’une chaîne de caractères par des caractères majuscules. Cette fonction peut-être utilisée à partir de la version 8.6 du 27/12/16 et les versions 9 du code système sinon elle est à remplacer par la fonction void upper (char *buf);
Cette fonction remplace les caractères majuscules d’une chaîne de caractères par des caractères minuscules. Cette fonction peut-être utilisée à partir de la version 8.6 du 27/12/16 et les versions 9 du code système sinon elle est à remplacer par la fonction void lower (char *buf);
Cette fonction est identique à sprintf mais elle effectue des vérifications sur la taille des chaînes de caractères. Il est donc préférable d’utiliser cette fonction.
int (valeur de retour) : code de valeur de retour char *str : pointeur sur la chaîne de caractères à remplir. const char *string : structure de la chaîne de caractères à créer avec les éléments constants et le type des éléments variables. Un exemple de type est: – % c (caractère) – % I ou % d (entier) – % s (chaîne de caractères) – % f (floatant). Paramètre 3 et suivants : liste des éléments variables à placer dans la chaîne de caractères.
char StrGetChar (char *s, unsigned long pos);
Cette fonction est utilisée pour récupérer un caractère dans une chaîne de caractères.
char (valeur de retour) : variable char contenant le caractère récupéré ou 0 si la position demandée est en dehors de la chaîne de caractères. char *s : pointeur sur la chaîne de caractères à examiner. unsigned long pos : variable de type unsigned long indiquant l’emplacement du caractère recherché dans la chaîne de caractères.
Exemple :
Char ChCar ; chCar = StrGetChar(%MS20, 10) ;
unsigned char StrSetChar (char *s, unsigned long pos, char c);
Cette fonction permet de modifier un caractère dans une chaîne de caractères. Elle va vérifier si on essaye de changer un caractère en dehors de la chaîne de caractères. Elle est valable depuis la version 9.0 du 26/09/16 du code système.
unsigned char (valeur de retour): variable de type unsigned char. Elle vaut 1 si l’action est correcte. Elle vaut 0 si l’action action n’a pas pu être effectuée. char *s : pointeur sur la chaîne de caractères à examiner. unsigned long pos : une variable de type unsigned long indiquant la place du caractère à modifier dans la chaîne de caractères. char c : caractère à modifier.
Le Bus IO s’appuie sur le protocole Modbus pour communiquer entre un maître et des esclaves. Le principe est d’établir la connexion entre les variables du maître et celles de l’esclave et le système gère automatiquement les trames de communication pour mettre à jour ces variables. Tout se passe du côté du maître. L’esclave répond simplement aux trames en suivant la norme Modbus.
7.1 Déclaration des équipements esclaves
Pour définir un esclave, cliquez sur l’onglet « Programme » dans la barre de menu de la fenêtre principale. Cliquez ensuite sur « Equipements » puis sur « Ajouter un équipements distants ». La fenêtre popup suivante s’ouvre:
Capture d’écran de la fenêtre popup « Propriétés de l’équipement »
Les champs suivants sont disponibles:
Index : numéro de l’esclave. Chaque équipement est repéré par un numéro unique.
Libellé : texte servant uniquement d’aide à la compréhension et qui n’a pas d’incidence dans le fonctionnement.
Port : type de port. Il faut choisir entre Série, Ethernet, Wi-Fi ou Radio. Pour un port série, il faut préciser le numéro du port, la vitesse et le format de communication. Pour un port Ethernet ou Wi-Fi, il faut préciser l’adresse IP de l’esclave. Pour un port radio, il faut préciser le canal de fréquence.
Protocole : protocole pour communiquer. Il faut choisir entre Modbus (c’est le ModBus standard), Sirea (c’est le ModBus étendu qui n’est utilisable qu’avec les appareil Sirea), Modbus (mots inversés) (les mots qui constituent des entiers longs et des flottants sont inversés par rapport au Modbus standard), Modbus (écritures multiples uniquement)(utilisé pour l’esclave 0 pour émettre des trames en broadcast à tous les esclaves) ou Modbus (mots inversés, écritures multiples uniquement).
Numéro d’esclave: numéro d’esclave ModBus.
Délai : délai intertrame en ms de la communication.
Timeout : temps entre le début de l’attente d’une réponse et le passage en erreur afin de continuer la communication.
Longueur maximale d’une trame : nombre d’octets maximal dans une trame, c’est à dire le nombre de mots multiplié par 2 ou le nombre de bits divisé par 8.
Regrouper les variables : case à cocher qui permet lors de la lecture de données de créer des trames plus longues mais moins nombreuses en faisant la lecture de données non intéressantes.
7.2 Déclaration des variables
Dans la Déclaration des variables, dans l’onglet « Communication », le champ « Adresse distante » doit être rempli avec l’adresse de l’esclave suivie d’un point et du numéro de l’équipement.
Par exemple si on écrit %MW16.1 alors cela signifie que la variable maître sera liée à la variable %MW16 de l’équipement 1. De plus, dans l’onglet « Communication », il est possible de mettre à l’échelle la valeur.
7.3 État de la communication avec les équipements
7.3.1 Structure statistique
Il existe des informations sur l’état de la communication avec les équipements. Elles sont contenues dans une structure « LogStats ». Pour pouvoir lire cette structure, il faut d’abord obtenir un pointeur sur l’équipement et ensuite obtenir un pointeur sur la structure stockant les statistique de l’équipement. Sirea a mis à disposition toute une bibliothèque de bloc fonction permettant d’obtenir simplement l’état de la communication.
Exemple pour obtenir la structure des statistique de l’équipement 1 :
Etat de la dernière trame (0 : pas de communication, 1 : communication OK, plus de 250 : erreur)
unsigned long nbFramesOK
Nombre de trames OK
unsigned long nbFramesERR
Erreur sur le nombre de trames
Tableau sur la structure LogStats
8. Protocole HTTP
Pour un automate avec un port Ethernet, il est possible de développer un serveur Web avec MicroHMI. Deux sockets doivent être utilisés. Le premier est configuré en mode COM_PROTOCOL_HTTP avec son port 80 et le suivant est configuré en mode COM_PROTOCOL_HTTP_QUERY avec son port 81. L’utilisation de deux sockets permet d’avoir un affichage plus fluide et de charger correctement les images à être affichées. Si l’automate dispose d’un port Ethernet, que l’option HTTP du code système est activée, et que l’application n’a pas d’IHM, le serveur Web pourra récupérer les fichiers dans le répertoire WWW de la carte SD. Il suffit d’indiquer dans un navigateur l’adresse IP de l’automate et le nom du fichier.
9. Wi-Fi
9.1 Mode
Il existe le mode Ad Hoc pour faire un point d’accès Wi-Fi à partir d’un automate et le mode client. C’est la variable %SW95 (W_MODE) qui est utilisée pour le gérer.
Constantes
Valeur
Description
WSOCK_MODE_OFF
0
Pas de connections WiFi
WSOCK_MODE_STA
1
Connexion en mode client
WSOCK_MODE_AP
2
Connexion en mode Ad Hoc
Tableau sur les modes de connexion Wi-Fi avec leur description
9.2 Fonctions utiles
void WSockSetSSID (char *ssid);
Cette fonction permet d’initialiser le nom de la station Wi-Fi, aussi bien en mode client qu’en mode Ad Hoc. Cette propriété peut également être définie avec le paramètre « W_SSID » du fichier main.cfg. La norme autorise jusqu’à 32 caractères.
char *ssid : une chaîne de caractères contenant le SSID du réseau.
Exemple :
WSockSetSSID (TP-LINK _ 9B4144) ;
void WSockSetSecKey (char *key);
Cette fonction permet de définir la clé de sécurité, aussi bien en mode client qu’en mode Ad Hoc. Cette propriété peut également être définie avec le paramètre « W_SKEY » du fichier main.cfg.
char *key : chaîne de caractères contenant la clé de sécurité
Exemple :
WSockSetSecKey ("123456") ;
void WSockSetSecType (char *type);
Cette fonction est utilisée pour régler le type de cryptage. Elle est particulièrement utile en mode Ad Hoc car en mode client il suffit de ne pas l’appeler pour utiliser la détection automatique. Cette propriété peut également être définie avec le paramètre « W_STYPE » du fichier main.cfg.
char *type : chaîne de caractères contenant le type de cryptage. Les valeurs possibles sont « » (une chaîne de caractères vide utilise la détection automatique), OPEN (pas de cryptage), WEP, WPA, WPAAES, WPA2AES, WPA2TKIP ou WPA2.
Exemple :
WSockSetSecType ("") ;
void WSockSetKey (char *type, char *key);
Cette fonction permet de définir le type de cryptage et la clé de sécurité. C’est l’équivalent des fonctions WSockSetSecKey et WSockSetSecType.
char *type : chaîne de caractères contenant le type de cryptage. Les valeurs possibles sont « » (une chaîne de caractères vide utilise la détection automatique), OPEN (pas de cryptage), WEP, WPA, WPAAES, WPA2AES, WPA2TKIP ou WPA2.
char *key : chaîne de caractères contenant la clé de sécurité
Exemple :
WSockSetKey ( "", "123456 ") ;
10. Connexion à un serveur
Il est très facile d’établir une connexion avec un MicroSERVER afin de remonter des données. Les données à remonter doivent être configurées dans les onglets « Historisation » et « Serveur distant » dans l’onglet « Propriétés de la variable » dans l’éditeur de variable. Cette communication peut se faire par un port série s’il y a un modem GPRS derrière.
10.1 Réglage
La fenêtre de paramétrage est accessible dans MicroLADDER dans l’onglet « Programme » de la barre de menu de la fenêtre principale puis dans « Equipement » puis « Equipement de base ».
Capture d’écran de la fenêtre « Propriétés de l’équipement »
Les paramètres sont identiques à l’utilisation de la fonction LogSetRemoteDevice décrite dans la section 10.2 Réglage par programmation. Par contre il est à noter que le champs « Taille de la mémoire (en octets) » doit être spécifié pour les automates ne disposant pas de RAM sauvegardée. On doit y rentrer la taille de la RAM allouée à la mémorisation des historiques. Pour les automates disposant d’une RAM sauvegardée, toute la RAM est utilisée. Il n’est pas nécessaire de préciser le port du serveur si c’est le port par défaut (13214) qui est utilisé.
10.2 Réglage par programmation
void LogSetRemoteDevice (long index, char *type, char *label, unsigned char comPort, unsigned short speed, unsigned short format, char *host, unsigned short sockPort, unsigned short freq, unsigned long timeout, char *password);
Cette fonction est utilisée si il y a des paramètres de connexion qui évoluent pendant l’exécution du programme. Cette fonction est active sur front. Elle n’est appelée qu’une seule fois ou si les paramètres de communication changent.
long index : entier de type long indiquant l’index du dispositif qui veut se connecter au serveur.
char *type : chaîne de caractères contenant le type de dispositif. Cette information est uniquement utilisée pour réaliser l’affichage sur le serveur.
char *label : chaîne de caractères contenant l’étiquette ou l’emplacement. Cette information est uniquement utilisée pour réaliser l’affichage sur le serveur.
unsigned char comPort : identification du port de communication utilisé pour la communication.
unsigned short speed : indication de la vitesse de communication. Pour une communication en Ethernet ou Wi-Fi, il est nécessaire de mettre COM_SPEED_NONE.
unsigned short format : format de communication. Pour une communication en Ethernet ou en Wi-Fi, il est nécessaire de mettre COM_FORMAT_NONE.
char *host : chaîne de caractères contenant l’adresse du serveur.
unsigned short sockPort : port du serveur distant. Par défaut, c’est le port 13214.
unsigned short freq : identification de la fréquence radio en cas d’utilisation de lora.
unsigned long timeout : entier de type long non signé contenant le délai d’attente en secondes.
char *password : chaîne de caractères contenant le mot de passe.
Il n’est pas nécessaire de paramétrer le protocole du socket Ethernet ou Wi-Fi car la fonction le fait elle-même. Pour connaître l’état de la connexion, il faut tester la variable « LogDataPortStep ». Elle est supérieure ou égale à « LOG_DATA_PORT_STEP_WAIT_CMD » (valeur 6) lorsque tout va bien. Les paramètres de connexion sont sauvegardés. Il n’est pas nécessaire de relancer la fonction LogSetRemoteDevice à chaque redémarrage de l’application, mais seulement après un chargement.
11. Gestion des historiques
Sur tous les automates, il est possible de gérer les historiques. S’il n’y a pas de RAM sauvegardée, les données seront perdues en cas de coupure de courant. Il est possible d’avoir des événements (mémorisation de toutes les dates d’apparition et de disparition des pannes, mémorisation de toutes les dates d’apparition des messages), alarmes (récupération des défauts présents et de la date d’apparition) et des traces (avec dates et valeurs d’une donnée). Ces informations sont stockées en mémoire. Il est ensuite possible de lire ces données et de les sauvegarder sur la carte SD ou la clé USB. Il est également possible de récupérer ces informations sur un système externe à l’aide d’un protocole spécifique.
11.1 Paramétrage de l’historique
Les paramètres se trouvent dans l’onglet « Historisation » dans la fenêtre « Propriétés de la variable » d’une variable.
11.2 Alarme
On peut créer une alarme pour cette variable en remplissant les champs suivants :
Condition de l’alarme : menu déroulant permettant de choisir l’opérateur logique de la condition de l’alarme (<, <=, >, >=, != et ==). Si on choisit « Aucune » alors il n’y aura pas d’alarmes pour cette variable.
Seuil de l’alarme : valeur de la condition avec laquelle l’alarme est activée. Une alarme est un état, et un événement se produit et est créé chaque fois qu’un seuil est dépassé.
Libellé d’apparition de l’alarme : texte qui apparaîtra lorsque la condition d’alarme est présente.
Libellé de disparition de l’alarme : texte qui apparaîtra lorsque la condition d’alarme disparaîtra.
11.3 Événement
On peut créer une événement pour cette variable en remplissant les champs suivants :
Condition de l’événement : menu déroulant permettant de choisir l’opérateur logique de la condition de l’événement (<, <=, >, >=, != et ==). Si on choisit « Aucune » alors il n’y aura pas d’événement pour cette variable.
Seuil de l’événement : valeur de la condition avec laquelle un événement sera activé.
Libellé de l’événement : texte qui apparaîtra lorsque la condition de l’événement est présente.
11.4 Courbe
On peut pour cette variable en remplissant les champs suivants : :
Type d’historisation : menu déroulant permettant de choisir comment on souhaite archiver les courbes de valeur dans le temps. Il y a trois types d’historisations : – « Aucune »: aucune historisation effectuée. – « Standard » : prend une valeur avec un intervalle régulier – « Moyennée » : prend une valeur moyenne sur une période de temps donnée
Délai d’historisation (en secondes) : délai d’archivage. Il dépend du type de journalisation parmi deux possibles: – « Standard » : temps spécifié (1 minute par exemple) – « Moyennée » : période de temps spécifiée
Seuil d’historisation : seuil au-delà duquel il enregistrera une valeur.
Pour qu’une donnée de courbe soit mémorisée, il faut que le temps écoulé soit supérieur ou égal au temps paramétré et que le delta de valeur soit supérieur ou égal au seuil paramétré. Dans le cas d’une valeur non moyennée, à la fin de la période, si le delta de variation dépasse l’hystérésis, il y a enregistrement de cette valeur. Dans le cas d’une valeur moyennée, une moyenne est réalisée pendant la période, à la fin de la période, si le delta de variation dépasse l’hystérésis , il y a enregistrement de cette valeur.
LogVariable *LogFindVariable (char *address);
Cette fonction permet de pointer sur la structure « LogVariable » d’une variable historique. Elle doit être utilisée avant d’effectuer une opération sur une variable historique.
LogVariable * (valeur de retour): variable de type pointeur sur une structure LogVariable.
char *address : chaîne de caractères contenant la variable.
Exemple :
LogVariable * var = LogFindVariable ("%MW20 ") ;
LogVariable *LogGetVariable (unsigned short index);
Cette fonction fait la même chose que la fonction LogFindVariable mais à partir de l’indice de la variable historique. Les index pour utiliser cette fonction doivent être connus, mais les index sont assignés à la compilation et donc inconnus lors de l’écriture du programme.
LogVariable * (valeur de retour) : variable de type pointeur sur une structure LogVariable.
unsigned short index : index de la variable historique.
Exemple :
LogVariable * var = LogGetVariable (4) ;
12. Informations diverses
12.1 Taille mémoire disponible
Chaque variable déclarée occupe de la place en RAM. Si en plus cette variable est initialisée, elle occupe de la place dans la mémoire flash. Pour connaître la quantité de mémoire utilisée, il faut regarder le fichier « size.txt » qui est généré lors de la compilation. Toutes les valeurs sont exprimées en octet.
Nom de la colonne
Signification
text
Taille du code programme
data
Taille des variables initialisées
bss
Taille des variables non initialisées
dec
Taille mémoire (programme + variables) en décimal
hex
Taille mémoire (programme + variables) en hexadécimal
filename
Nom du fichier
Tableau sur les noms des colonnes d’un fichier size.txt et de leur signification
La somme des colonnes data et bss ne doit pas dépasser la taille de la RAM. La somme des colonnes text et data ne doit pas dépasser la taille de la mémoire flash sachant que 64 ko sont déjà occupés par le moniteur. Exemple :
Capture d’écran du contenu d’un fichier size.txt
Lorsque l’automate dispose d’une RAM sauvegardée, les variables automate (%M,%MW, …) sont stockées dans cette RAM sauvegardée et le compilateur ne contrôle pas la taille. Il peut potentiellement y avoir un débordement de mémoire, mais les RAM sauvegardées des automates sont tout de même assez grandes. Pour savoir s’il reste de la place en RAM sauvegardée, une solution consiste à déclarer une variable sauvegardée et à regarder le nombre de points qu’il est possible d’historiser (voir la section 11. Gestion des historiques pour plus de détails).
Seuls des électriciens professionnels ou du personnel qualifié peuvent transporter ou installer ce produit.
L’utilisateur doit être parfaitement familiarisé avec la structure et le principe de fonctionnement de l’ensemble du système de stockage d’énergie.
L’utilisateur doit être parfaitement familiarisé avec ce manuel et les normes locales en vigueur.
1.2 Utilisation du manuel
Lisez ce manuel avant l’installation de l’armoire AEH. Il doit être conservé à un endroit accessible à tout moment.
Le contenu de ce manuel sera régulièrement mis à jour ou révisé si nécessaire. En cas de doute, référez-vous toujours à la version la plus récente du manuel.
1.3 Symboles
Attention Indique qu’il existe un risque potentiel. S’il n’est pas évité, il pourrait entraîner un dysfonctionnement de l’équipement et des dommages matériels.
Attention, risque de danger Indique un danger avec un niveau de risque élevé qui, s’il n’est pas évité, pourrait entraîner la mort ou des blessures graves.
Attention, risque de choc électrique Indique le risque de choc électrique lors des manipulations.
Attention, risque d’incendie Indique le danger d’incendie qui peut exister si la procédure décrite n’est pas respectée.
Attention, borne de conducteur de protection L’équipement doit être correctement mis à la terre pour assurer la sécurité du personnel.
Attention, risque de choc électrique, stockage à décharge temporisée Indique qu’un risque de choc électrique existe dû aux condensateurs chargés. Les manipulations sont à effectuer au moins 5 minutes après que toutes les alimentations ont été débranchées.
2. Consignes de sécurité
Le personnel d’installation et de maintenance de l’équipement doit être formé et familiarisé avec les exigences générales de sécurité lors de travaux sur des équipements électriques. Il doit également être familiarisé avec les lois et réglementations locales et les exigences de sécurité.
Lisez attentivement ce manuel avant l’opération. L’équipement ne sera pas sous garantie s’il ne fonctionne pas conformément à ce manuel.
Les opérations sur l’AEH est réservé aux électriciens qualifiés.
Lorsque l’AEH est en fonction, ne touchez aucune pièce électrique à l’exception de l’écran tactile.
Toutes les opérations électriques doivent être conformes aux normes locales de fonctionnement.
Le service de garantie de l’AEH ne comprend pas la maintenance du module.
L’autorisation de la société locale de services publics est requise avant d’installer le système de stockage d’énergie et seul le personnel professionnel est qualifié pour l’opération.
2.1 Transport
Le transport doit suivre les méthodes de transport décrites dans le manuel d’utilisateur. Le poids et le centre de gravité de l’AEH doivent être prises en compte pour le transport. Le centre de gravité est indiqué sur le colis.
Note 1 : L’armoire ne peut être démontée ni lors du transport ni de l’utilisation. Tout défaut attribué à une modification non autorisée par SIREA annulera la garantie légale et l’assurance qualité de son bon fonctionnement.
Note 2 : Les mouvements brusques d’inclinaison et les secousses violentes sur l’AEH doivent être absolument évitées ainsi que les chutes lors du levage.
Note 3 : Veuillez lire attentivement les paramètres étiquetés pour sélectionner un moyen de transport et un lieu de stockage approprié. Nous suggérons d’utiliser un chariot élévateur pour déplacer l’armoire.
Attention, risque de danger Pendant le transport, l’équipement de levage et le personnel doivent être qualifiés. L’AEH doit être placé verticalement et l’inclinaison ne peut pas être supérieure à 10 degrés. Il est interdit de placer l’AEH à l’envers ou de la transporter en position horizontale. Un levage et un transport incorrect peuvent entraîner des blessures graves, des pertes matérielles et des dommages à l’AEH.
2.2 Réception et stockage
L’AEH doit être soigneusement vérifiée avant de signer le document de la compagnie de transport. Vérifiez les articles reçus par rapport au bon de livraison. Si vous constatez un défaut ou des dommages, informez immédiatement la société de transport en annotant des réserves sur le bon de livraison. En cas de besoin, vous pouvez solliciter l’aide du service client de SIREA.
Dans le cas où l’armoire doit être stockée avant l’installation ou l’utilisation, elle doit être stockée de la manière suivante :
L’emballage doit être remis dans son état d’origine
L’AEH ne peut être stockée que lorsqu’elle est arrêtée et toutes les portes sont fermées
Lieu de stockage : Local sec pour protection des circuits internes de la poussière et de l’humidité
Température de stockage en fonction des batteries :
Pylontech : -20°C – 60°C
Snam Phenix : 5°C – 36°C
BeePlanet : -20°C – 60°C
Humidité de stockage : 0% – 90%
Altitude maximale : 2000 m
Attention Stockage strictement interdit sans emballage ! Éviter le stockage directement au soleil. Garder l’armoire à la verticale et éviter de poser de l’équipement sur l’armoire.
2.3 Installation
Une installation correcte nécessite de suivre toutes les instructions du manuel d’utilisation concernant le transport, le montage, le câblage et la mise en service. SIREA ne garantit pas les dommages dus à une mauvaise utilisation.
Le niveau de protection de l’AEH est IP54, qui est conçu pour une installation à l’intérieur. Veuillez vous référer au chapitre 4 pour les instructions d’installation plus détaillées.
L’emplacement de l’installation doit être sec et sans condensation. L’AEH est uniquement destiné à être utilisé dans une zone d’exploitation électrique fermée.
Un espace de 80 cm doit être laissé entre le côté « conversion » de l’AEH et le mur afin de permettre un dépannage. Veuillez laisser un espace d’environ 20 cm entre le mur et le côté comportant une grille d’aération. Veuillez laisser un espace de 10 cm entre la face arrière de l’AEH et le mur.
Emplacement d’installation de l’AEH
Attention, risque d’incendie L’AEH convient uniquement pour le montage sur du béton ou d’autres surfaces non combustibles.
2.4 Opérateur
Le personnel d’installation et d’entretien de l’équipement doit être formé et familiarisé avec les exigences générales de sécurité lors de travaux sur les équipements électriques. Le personnel d’installation et de service doit également être familiarisé avec les lois ; les réglementations locales et les exigences de sécurité.
2.5 Réparation et entretien
Avertissement, risque de choc électrique La réparation et l’entretien doivent être effectués après 5 minutes de coupure du courant continu (DC) et courant alternatif (AC). Seulement le personnel technique professionnel est qualifié pour ces opérations.
Attention, risque de choc électrique, stockage à décharge temporisée Un risque de choc électrique existe dû aux condensateurs ; le couvercle doit être retiré au moins 5 minutes après que toutes les alimentations ont été débranchées.
2.5.1 Ouvrir les disjoncteurs
Sectionnez les disjoncteurs AC et DC en commençant par l’AC et assurez-vous que l’AEH ne soit pas connectée par accident. Vérifiez que l’AEH est complètement hors tension et qu’elle ne présente plus de tension en utilisant un VAT. Même quand les disjoncteurs AC et DC sont débranchés, il reste de la tension dans certains composants comme dans les capacités. C’est pour cela que l’opération de réparation ou d’entretien doit uniquement être effectuée au moins 5 minutes après la coupure.
2.5.2 Entretien et modification
Seules les personnes avec l’autorisation de SIREA sont qualifiées pour effectuer l’entretien ou apporter des modifications à l’installation. Pour assurer la sécurité personnelle, utilisez uniquement les accessoires d’origine fournis par le fabricant. Le non-respect de ces mesures peut mener à la perte de la conformité avec les standards de sécurité et de CEM.
2.5.3 Paramètres de fonctionnement et de sécurité
Ne changez pas les paramètres de l’AEH sans avoir l’autorisation du propriétaire du produit et de SIREA. Cela pourrait entraîner des blessures ou des dommages matériels et la garantie sera annulée.
2.6 Onduleur CEM et niveau de bruit
La compatibilité électromagnétique (CEM) est l’exigence pour l’équipement électrique qu’il puisse fonctionner normalement dans l’environnement électromagnétique et ne provoque pas lui-même un impact environnemental inacceptable.
Propriété anti interférence des composants internes.
Propriété anti-interférence de l’extérieur.
Impact des émissions électromagnétiques sur l’environnement.
L’onduleur peut générer du bruit et des rayonnements électromagnétiques pendant le fonctionnement. Selon les émissions CEM et le niveau de bruit, l’AEH doit être utilisé dans des environnements industriels. Par conséquent, tout le personnel ne doit pas rester longtemps à proximité de l’AEH.
Attention Selon les émissions CEM et le niveau de bruit, l’AEH doit être utilisé dans des environnements industriels. Par conséquent, le personnel ne doit pas rester à proximité de l’AEH sur de longs moments.
2.7 Notes importantes
Note 1 : L’électricité statique peut endommager l’AEH Les décharges électrostatiques peuvent causer des dommages irréparables aux composants internes de l’AEH. Lors de l’utilisation de l’AEH, l’opérateur doit respecter les normes de protection antistatique.
Note 2 : Restriction L’AEH ne peut pas être directement utilisée pour connecter l’équipement de survie et l’équipement médical.
Note 3 : Précautions Assurez-vous que des outils d’installation ou d’autres éléments inutilisés ne soient pas laissés à l’intérieur de l’AEH avant la mise en service.
Note 4 : Maintenance La maintenance ne peut être effectuée qu’une fois l’AEH totalement hors tension et déchargée.
3. Description du produit
3.1 Références concerncées
Réference
Nom du produit
2EN02-00700
AEH 10
2EN02-00711
AEH 20
2EN02-00300
AEH 40
2EN02-00600
AEH 60
2EN02-00712
AEH 80
2EN02-00602
AEH 100
3.2 Caractéristiques
3.2.1 Dimensions
AEH avec batteries Pylontech et SNAM
Produit
Dimensions
AEH 10
H210 x L60 x P80 cm
AEH 20
H210 x L60 x P80 cm
AEH 40
H210 x L120 x P80 cm
AEH 60
H210 x L120 x P80 cm
AEH 80
H210 x L180 x P80 cm
AEH 100
H210 x L180 x P80 cm
AEH avec batteries BEEPLANET
Produit
Capacité de stockage
Dimensions
AEH 10
Jusqu’à 40 kWh
H215 x L60 x P80 cm
AEH 10
Au-delà de 40 kWh
H195 x L120 x P80 cm
AEH 20
Jusqu’à 40 kWh
H215 x L60 x P80 cm
AEH 20
Au-delà de 40 kWh
H195 x L120 x P80 cm
AEH 40
Jusqu’à 80 kWh
H195 x L120 x P80 cm
AEH 40
Au-delà de 80 kWh
H195 x L180 x P80 cm
Au-delà
Selon projet
Selon projet
3.2.2 Caractéristiques techniques communes
Plage de tension d’entrée MPPT : 180-960 V
Courange d’entrée maximal MPPT : 25 A par string
Tension nominale AC : 230 / 400 VAC
Efficacité MPPT : 97,70%
Rendement maximal batterie : 97,8%
Nombre de string par MPPT : 2
Indice de proctection : IP54
3.2.3 Caractéristiques techniques spécifiques
Produit
Puissance sortie AC
Nombre de MPPT
Estimation poids (sans batterie)
AEH 10
10 000 W
2
350 kg
AEH 20
20 000 W
2
350 kg
AEH 40
40 000 W
4
450 kg
AEH 60
60 000 W
6
550 kg
AEH 80
80 000 W
8
590 kg
AEH 100
100 000 W
10
640 kg
3.2.4 Caractéristiques techniques des batteries
Valeurs pour une batterie
Tension nominale
Capacité nominale
Plage de température de fonctionnement
Poids
Pylontech H48050
48 V
2,4 kWh
0 – 50 °C
24 kg
Pylontech H48074
48 V
3,55 kWh
0 – 50 °C
32 kg
Pylontech H32148
32 V
4,74 kWh
0 – 50 °C
48 kg
SNAM Phenix
50 V
3 – 3,5 kWh
5 – 36 °C
45 kg
BeePlanet
65,7 V
9,61 kWh
20 – 40 °C
39 kg
3.3 Système de stockage d’énergie
Les armoires AEH sont conçues pour assurer le stockage d’énergie et piloter le système photovoltaïque. Elles convertissent le courant continu généré par les modules PV en courant continu pour les batteries et en courant alternatif pour l’injection dans le réseau ou la charge locale. La batterie peut également alimenter la charge locale.
La structure d’un système de stockage d’énergie typique est illustrée ci-dessous :
Structure système de stockage
3.4 Schéma électrique de l’armoire
Synoptique d’une armoire AEH (non contractuel) :
3.5 Disposition des composants principaux
Zone
Commentaires
1
Ventilateur Pour extraction de la chaleur
2
Armoire Armoire IP54
3
Arrêt d’urgence En cas de problème
4
Poignée Poignée pour ouvrir la porte avec serrure et clé à double barre
5
Grille de ventilation Grille d’aspiration du ventilateur
3.6 Description des organes de coupure
Les composants de l’armoire sont nommés de la manière suivante :
de 00 à 09 : composants installés à l’extérieur (coffret déporté pour transducteur)
de 10 à 29 : composants pour la partie AC de sortie
10 : QS général
11-16 : onduleur
17 : éclairage
18 alimentation :
19 : climatisation et prise
de 30 à 49 : composants pour la partie PV
de 50 à 69 : composants pour la partie batterie
de 70 à 89 : composants pour la partie AC sortie secourue
de 90 à 99 : rajout client
3.7 Modes de fonctionnement
Les modes de fonctionnement de l’AEH sont listés ci-dessous. Selon l’installation, le mode de fonctionnement peut différer.
Dans le mode connecté réseau (on-grid), l’AEH est connectée au réseau électrique du distributeur d’électricité. Selon la marque de la batterie, le DOD (profondeur de décharge batterie) peut varier.
Si le SOC (état de charge de la batterie) est supérieur au seuil bas du DOD : L’AEH injecte de la puissance sur le réseau local pour réguler la puissance soutirée du réseau à 0W.
Si la production solaire est supérieure à la consommation, la production alimente la consommation et charge les batteries.
Si la production solaire est inférieure à la consommation, la production et la batterie alimentent la consommation.
Si la production solaire et la puissance de la batterie sont inférieures à la consommation, le réseau complétera la demande.
Si le SOC est inférieur ou égal au seuil bas du DOD :
La consommation est alimentée par le réseau et la puissance photovoltaïque.
Si la production photovoltaïque est supérieure à la consommation, la production rechargera la batterie.
Il faut que la batterie soit rechargée de 10% au-dessus du seuil bas du DOD pour relancer la régulation.
3.8 Batterie
La batterie représente une partie importante du système de stockage d’énergie, une protection stricte est nécessaire dans l’ensemble du processus de fonctionnement.
Le seuil de protection doit être défini sur l’AEH pour assurer un fonctionnement sûr de la batterie.
Les paramètres comprennent entre autres :
la quantité de batteries et d’unités
la capacité
le courant de charge
le courant de décharge
la protection contre les surtensions
la protection contre les sous-tensions
Attention, risque de danger Un réglage incorrect des paramètres de la batterie peut mener à un fonctionnement anormal ou même à des dommages matériels. Le réglage de ces paramètres doit être effectué par du personnel qualifié
3.8.1 Batteries neuves
Batteries Pylontech : Plage de température de fonctionnement : 10 – 40 °C
En dehors de cette plage de température, la batterie risque de se couper pour des raisons de protection. Si l’armoire n’est pas connectée au réseau électrique, l’onduleur s’éteint.
3.8.2 Batteries recyclées
Batteries SNAM Phenix : Plage de température de fonctionnement : 5°C – 36°C
En dehors de cette plage de température, la batterie risque de se couper pour des raisons de protection. Si l’armoire n’est pas connectée au réseau électrique, l’onduleur s’éteint. Le bouton d’arrêt d’urgence (si présent) permet d’effectuer une coupure générale de la batterie. Pour relancer la batterie, il est nécessaire de désarmer le bouton d’arrêt d’urgence.
Batteries BeePlanet : Plage de température de fonctionnement : 20 – 40°C
En dehors de cette plage de température, la batterie risque de se couper pour des raisons de protection. Si l’armoire n’est pas connectée au réseau électrique, l’onduleur s’éteint. Le bouton d’arrêt d’urgence (si présent) permet d’effectuer une coupure générale de la batterie. Pour relancer la batterie, il est nécessaire de désarmer le bouton d’arrêt d’urgence.
3.9 Protection
3.9.1 Anti-îlotage
Lorsque le réseau électrique local est fermé en raison d’un dysfonctionnement ou d’une maintenance des équipements, l’AEH sera physiquement coupé du raccordement au réseau, afin de protéger le personnel d’exploitation travaillant sur le réseau électrique. L’armoire est donc conforme aux normes applicables.
3.9.2 Protection foudre
Le module de protection contre la foudre de l’armoire est doté d’une protection contre les surtensions côté DC/AC pour éviter un endommagement de l’AEH. Pour plus de fonctions de protection, veuillez vous référer à la section 6.3.
4. Installation du produit
4.1 Conditions d’installation requises
Pour assurer le fonctionnement normal de la machine, l’environnement d’installation est requis comme suit :
L’indice de protection d’AEH est IP54. De plus, ce produit étant un équipement électronique, il ne doit pas être placé dans un environnement humide ;
Installer a l’intérieur et éviter la lumière du soleil et la pluie ;
La ventilation de la pièce doit être bonne ;
L’environnement d’installation doit être propre ;
Étant donné qu’un certain bruit sera produit en fonctionnement, cet équipement devra être installé loin des quartiers résidentiels ;
Le sol d’installation doit être suffisamment régulier et ferme pour supporter le poids de l’armoire ;
La position d’installation doit être pratique pour l’entretien ;
La température ambiante doit être dans la plage préconisée
Il est suggeré que l’AEH soit installée dans la salle de distribution. Le sol, le dégagement mural, l’équipement de ventilation et les précautions doivent être conçus par un personnel professionnel et satisfaire les exigences suivantes.
4.1.1 Fondation
L’AEH doit être installé sur un sol plat avec un matériau ignifuge. L’affaissement ou l’inclinaison du sol est interdit. La fondation doit être solide, sûre et fiable. La fondation doit être capable de supporter la charge de l’AEH. Sa capacité de charge doit être prise en compte tout au long du choix du lieu d’installation.
4.1.2 Espace de dégagement
Les espaces de dégagement doivent être respectés comme indiqués dans le schéma suivant :
4.1.3 Tranchée de câble
L’AEH adopte une entrée inférieure et une sortie inférieure pour connecter les câbles. Les tranchées de câbles sont recommandées.
Les tranchées de câbles sont souvent conçues et construites par la partie construction sur la base des normes pertinentes, le poids et les dimensions de l’équipement devant être pris en compte. Une bonne connexion électrique est nécessaire entre les différentes tranchées de câbles et la terre.
4.1.4 Spécification de câblage
Les câbles de l’AEH peuvent être classés en câbles d’alimentation et en câbles de communications.
Pour le câblage, les câbles de puissance AC et DC doivent être séparés des câbles de communication. Respectez le rayon de courbure du câble. Le câble doit être aussi court que possible.
Afin de réduire l’interférence électromagnétique causée par un changement soudain de la tension de sortie, le câble d’alimentation et les câbles de communication doivent être placés dans des tranchées de câbles différentes. La distance entre les câbles doit être de plus de 0,1 m.
4.1.5 Exigence d’aération
En fonctionnement, l’AEH peut produire de la chaleur. Lorsque la température ambiante est trop élevée, la propriété électrique de l’équipement peut être affectée, l’équipement peut même être endommagé. Par conséquent, le dégagement de chaleur doit être pleinement pris en compte dans la conception du local pour assurer le fonctionnement de l’équipement à haut rendement.
4.1.6 Environnement de ventilation
Afin d’assurer le fonctionnement sûr et fiable de l’AEH, la température ambiante doit permettre à la batterie de rester dans sa plage de température de fonctionnement. Des températures trop élevées peuvent mener à un dysfonctionnement du système et à la dégradation rapide des batteries. Des dispositifs de ventilation appropriés doivent être installés pour évacuer la chaleur générée par l’armoire. Les mesures anti-poussière et anti-humidité sont à respecter.
4.1.7 Autres protections
Selon les exigences CEM et le niveau de bruit, l’AEH doit être installé dans un environnement industriel.
4.1.8 Protection feu
Dans le cas d’une armoire avec une capacité de stockage supérieure à 15kWh, il est exigé par la norme d’installer l’armoire dans un local coupe-feu (local batterie) avec les protections adaptées.
4.2 Outils nécessaires
Grue de levage, chariot élévateur (avec la capacité de supporter le poids de l’AEH)
Clé dynamométrique
Tournevis
Pince à dénuder
Machine à sertir les bornes
Multimètre
4.3 Transport de l’armoire emballée
Le transport doit suivre les méthodes de transport décrites dans le manuel d’utilisateur. Le poids et le centre de gravité de l’AEH doivent être prises en compte pour le transport. Le centre de gravité est indiqué sur le colis.
Note 1 : L’armoire ne peut être démontée ni lors du transport ni lors de l’utilisation. Tout défaut attribué à une modification non autorisée par SIREA est au-delà de l’assurance qualité et la garantie se verra annulée.
Note 2 : Les mouvements brusques d’inclinaison et les secousses violentes sur l’AEH doivent être scrupuleusement évités ainsi que toutes chutes lors du levage.
Note 3 : Veuillez lire attentivement les paramètres étiquetés pour sélectionner un moyen de transport et un lieu de stockage approprié. Nous suggérons d’utiliser un chariot élévateur pour déplacer l’armoire.
Attention, risque de danger Pendant le transport, l’équipement de levage et le personnel doivent être qualifiés. L’AEH doit être placé verticalement et l’inclinaison ne peut pas être supérieure à 10 degrés. Il est interdit de placer l’AEH à l’envers ou de la transporter en position horizontale. Un levage et un transport incorrect peuvent entraîner des blessures graves, des pertes matérielles et des dommages à l’AEH.
Attention Avant de déplacer l’AEH à l’endroit désigné, nous vous suggérons de tirer les câbles DC et AC. Comme les câbles sont relativement épais, ils sont difficiles à câbler après l’installation de l’AEH.
4.4 Installation électrique
Attention, risque de choc électrique Il existe un risque de choc électrique de haute tension lors du fonctionnement de l’AEH. Seuls des électriciens possédant des compétences professionnelles peuvent intervenir. Toutes les connexions avec cet équipement doivent être effectuées hors tension. L’AEH peut être endommagé si la borne d’entrée ou de sortie est mal branchée. Le non-respect de ces informations peut entraîner des blessures corporelles graves, voire mortelles et des pertes matérielles importantes.
4.4.1 Exigences d’entrée et de sortie
Câble (Cu)
Exigences section de câble (mm2)
Réseau Phase A
Référez-vous au tableau dans la section “Raccordement AC”
Réseau Phase B
Référez-vous au tableau dans la section “Raccordement AC”
Réseau Phase C
Référez-vous au tableau dans la section “Raccordement AC”
Neutre
Référez-vous au tableau dans la section “Raccordement AC”
Terre
Référez-vous au tableau dans la section “Raccordement AC”
Transducteur
0,75 mm2, blindé, paire torsadé recommandé
Ethernet
Cat. 5 ou plus est recommandé
Réseau triphasé L’onduleur inspecte en permanence si le réseau satisfait aux conditions de connexion au réseau. Le tableau suivant indique la limite du réseau pour la satisfaction des conditions de connexion au réseau (Les exigences dans différents pays peuvent varier, la valeur peut être configurée. Veuillez-vous référer aux réglementations locales pour plus de détails.) L’autorisation du service d’alimentation électrique local est nécessaire avant d’installer l’alimentation inversée connectée au réseau.
Limite
Commentaire
Limite de tension réseau
184 – 276 V
Limite de fréquence réseau (50 Hz)
45 – 55Hz
Limite de fréquence réseau (60 Hz)
55 – 65 Hz
4.4.2 Raccordement AC
Attention, risque de danger Lors des manipulations sur cette partie de l’armoire, assurez-vous que les disjoncteurs sont coupés et que les fils ne présentent pas de tension aux bornes.
Réalisez les branchements hors tension. Les raccordements AC s’effectuent sur le bornier XP en bas de l’armoire.
Raccordement si l’AEH est raccordé au réseau :
Fil
Bornier XP
Neutre
Borne 1
Phase 1
Borne 2
Phase 2
Borne 3
Phase 3
Borne 4
Terre
Borne de terre
Raccordement de la charge (si version avec sortie secourue par batterie) :
Fil
Bornier XP
Neutre
Borne 5
Phase 1
Borne 6
Phase 2
Borne 7
Phase 3
Borne 8
Terre
Borne de terre
Section de raccordement :
Section minimale
Longueur de câble <= 30m
30m <= Longueur de câble <= 100m
10 kW
6 mm2
10 mm2
20 kW
6 mm2
16 mm2
40 kW
16 mm2
35 mm2
60 kW
35 mm2
50 mm2
80 kW
50 mm2
95 mm2
100 kW
70 mm2
120 mm2
Attention Les informations sur les sections des câbles sont données à titre indicatif. Ce tableau ne remplace en aucun cas une étude de dimensionnement prenant en compte le type d’application.
4.4.3 Raccordement du transducteur de mesure
Selon le type de l’installation, le lieu d’installation du transducteur peut varier. Il peut être installé dans le TGBT ou dans l’armoire AEH.
Installation dans le TGBT
Dans le cas où le transducteur est installé dans le TGBT, le câblage est le suivant.
Les tores de mesure sont à installer dans le TGBT en amont de tous les disjoncteurs sur l’arrivée du réseau électrique. Il est important de respecter le sens des tores de mesure et l’ordre des fils. Deux types de tores peuvent être utilisés, des tores ouvrants ou non ouvrants. Il est important de suivre les indications suivantes en fonction du type de tores utilisés.
Branchement de l’alimentation AC
Phase 1 sur borne 2 du transducteur
Phase 2 sur borne 5 du transducteur
Phase 3 sur borne 8 du transducteur
Neutre sur borne 10 du transducteur
Branchement des tores non ouvrants sur le transducteur Chint DTSU 666
Pour mettre les tores dans le bon sens, il faut respecter le sens de la flèche dessinée à l’intérieur du tore. Elle doit être dirigée vers la consommation.
Phase 1 (si l’installation avec panneaux photovoltaïques) :
Fil rouge sur la borne 3 du transducteur
Fil noir sur la borne 1 du transducteur
Phase 2 (si l’installation avec panneaux photovoltaïques) :
Fil rouge sur la borne 6 du transducteur
Fil noir sur la borne 4 du transducteur
Phase 3 (si l’installation avec panneaux photovoltaïques) :
Fil rouge sur la borne 9 du transducteur
Fil noir sur la borne 7 du transducteur
Note : S’il s’agit d’une installation sans panneaux photovoltaïques sur l’onduleur, inverser rouge et noir des tores.
Raccordement de la communication avec l’armoire AEH
Relier borne 24 (A) du transducteur à la borne XTC1 de l’AEH
Relier borne 25 (B) du transducteur à la borne XTC2 de l’AEH
Installation dans l’armoire AEH
Dans le cas où le transducteur est installé dans l’armoire AEH, le câblage est le suivant.
Les tores de mesure sont à installer dans le TGBT en amont de tous les disjoncteurs sur l’arrivée du réseau électrique. Il est important de respecter le sens des tores de mesure et l’ordre des fils. Deux types de tores peuvent être utilisés, des tores ouvrants ou non ouvrants. Il est important de suivre les indications suivantes en fonction du type de tores utilisés.
Branchement des tores non ouvrants sur le transducteur Chint DTSU 666 dans l’AEH
Phase 1 (si l’installation avec panneaux photovoltaïques) :
S1 du tore sur la borne XTC1 dans l’armoire AEH
S2 du tore sur la borne XTC2 dans l’armoire AEH
Phase 2 (si l’installation avec panneaux photovoltaïques) :
S1 du tore sur la borne XTC3 dans l’armoire AEH
S2 du tore sur la borne XTC4 dans l’armoire AEH
Phase 4 (si l’installation avec panneaux photovoltaïques) :
S1 du tore sur la borne XTC5 dans l’armoire AEH
S2 du tore sur la borne XTC6 dans l’armoire AEH
Note : S’il s’agit d’une installation sans panneaux photovoltaïques sur l’onduleur, inverser S1et S2 des tores.
Branchement des tores ouvrants sur le transducteur Chint DTSU 666 dans l’AEH
Pour mettre les tores dans le bon sens il faut respecter le sens de la flèche dessinée àl’intérieur du tore. Elle doit être dirigée vers la consommation.
Phase 1 (si l’installation avec panneaux photovoltaïques) :
Fil rouge du tore sur la borne XTC1 dans l’armoire AEH
Fil noir du tore sur la borne XTC2 dans l’armoire AEH
Phase 2 (si l’installation avec panneaux photovoltaïques) :
Fil rouge du tore sur la borne XTC3 dans l’armoire AEH
Fil noir du tore sur la borne XTC4 dans l’armoire AEH
Phase 3 (si l’installation avec panneaux photovoltaïques) :
Fil rouge du tore sur la borne XTC5 dans l’armoire AEH
Fil noir du tore sur la borne XTC6 dans l’armoire AEH
Note : S’il s’agit d’une installation sans panneaux photovoltaïques sur l’onduleur, inverserrouge et noir des tores.
Paramétrage du transducteur
Appuyer sur “SET”
“Code” apparaît sur l’écran
Réappuyez sur “SET” pour entrer le code
Entrez le code 701
Appuyez sur le bouton “flèche” pour augmenter la valeur du chiffre
Appuyez sur “SET” pour aller sur le numéro suivant
Une fois le numéro 701 entré, appuyez sur “SET” jusqu’à ce que “Ct” apparaisse
Lorsque “Ct” apparaît, appuyez sur “flèche”
Choisir la valeur adéquate (contacter le bureau d’étude pour la connaître)
Cliquez sur le bouton “ESC” pour sauvegarder et retourner dans le mode normal
Vérification du fonctionnement
Pour vérifier le fonctionnement, coupez toute source d’injection de courant sur le tableau électrique. Appuyez sur le bouton flèche pour faire défiler les informations :
UA, UB, UC indiquent les tensions respectives des phases 1, 2, 3 : elles doivent avoir une valeur proche de 230 V.
PT indique la puissance totale mesurée par les tores. La valeur doit être négative quand le bâtiment consomme.
4.4.4 Mise à la terre
L’armoire doit être correctement mise à la terre pour assurer la sécurité. Vérifiez la bonne connexion entre le PE du distributeur de puissance et l’AEH. Assurez-vous que la section du câble de terre est adaptée. La mise à la terre doit satisfaire les standards IEC.
4.4.5 Raccordement DC côté modules PV
Attention, risque de danger
Lors des manipulations sur cette partie de l’armoire, assurez-vous que les disjoncteurs sont coupés et que les fils ne présentent pas de tension aux bornes.
Attention, risque de danger Lors des manipulations sur cette partie de l’armoire, assurez-vous que les disjoncteurs sont coupés et que les fils ne présentent pas de tension aux bornes.
Selon l’installation, le nombre de string PV peut varier. La connexion des champs photovoltaïques se fait dans l’armoire avec des connecteurs de type MC4.
Le code couleur dans l’AEH est le suivant :
Rouge – borne positive (+)
Noir – borne négative (-)
L’installateur doit donc avoir des connecteurs MC4 mâle et femelle et une pince à sertir adaptée. Les câbles venants des champs PV sont à connecter dans le respect des polarités : borne positive sur le câble rouge de l’armoire et la borne négative sur le câble noir.
Les procédures spécifiques sont les suivantes :
Déterminez les pôles positifs et négatifs avec un multimètre
Connectez le positif du PV au câble rouge
Connectez le négatif du PV au câble noir
Connectez le champ photovoltaïque afin de vérifier les polarités : rouge positif et noir négatif
4.4.6 Raccordement des batteries
Attention, risque d’incendie et d’explosion Lors de l’installation des batteries, il est obligatoire de suivre les instructions données dans ce manuel de manière rigoureuse pour éviter des dommages. Les batteries lithium risquent un emballement thermique ou une explosion lors de la mauvaise manipulation ou en cas de court-circuit.
4.4.6.1 Batteries Pylontech
A la livraison de l’AEH, le master BMS (MBMS) est déjà présent dans l’armoire. La position des batteries dans la chaîne n’a pas d’importance.
Branchement des câbles de puissance
Une fois les batteries mises en place, les câbles de puissance sont à brancher.
En partant de la batterie du bas :
Branchez un des câbles orange de 30 cm sur la borne orange (positive).
Branchez l’autre côté du câble sur la borne noire (négative) de la batterie au-dessus.
Répétez l’opération jusqu’à atteindre la batterie du haut.
Connectez le câble de 30 cm avec les deux connecteurs orange entre la borne orange de la dernière batterie (B+) et la borne orange du MBMS (B+).
Connecter le câble noir de 2 m entre la borne noire de la batterie du bas et la borne noire (B-) du MBMS.
Attention Veuillez bien vérifier la polarité des batteries avant de brancher le dernier câble et de fermer le circuit. Un court-circuit peut provoquer un emballement thermique ou une explosion des batteries.
Branchement des câbles de communication
Du haut vers le bas :
Branchez le câble RJ45 sur la prise “Link Port” du MBMS et sur la prise “Link Port 0” de la batterie en dessous.
Branchez un câble RJ45 entre la prise “Link Port 1” et la prise “Link Port 0” de la batterie en dessous.
Répétez l’opération jusqu’à la batterie du bas.
La dernière batterie n’a pas de câble branché sur le “Link Port 1”
Sur le MBMS, le câble RJ45 “Onduleur 2” doit être branché sur la prise marquée “CAN link port B”
Sur le MBMS, le câble RJ45 “mARM” doit être branché sur la prise marquée “RS485 Link B”
Mise sous tension de la batterie
Pour effectuer la mise sous tension des batteries :
Enclenchez le disjoncteur bleu du MBMS (1)
Appuyez sur le bouton rouge (2) quelques secondes jusqu’à entendre un signal sonore.
Tous les voyants doivent s’allumer en vert.
Montage final :
4.4.6.2 Batteries SNAM PHENIX
À la livraison, le master BMS (MBMS) est déjà placé dans l’armoire. La position des batteries dans la chaîne n’a pas d’importance.
Branchement des câbles
Une fois les batteries mises en place, branchez les câbles de puissance et de communication comme indiqué sur les images. Les traits rouges représentent les câbles de puissance, les traits verts représentent les câbles de communication.
Connexion du master BMS
Connectez la borne noire du MBMS à la borne noire de la batterie située en dessous.
Connectez la borne rouge du MBMS à la borne rouge de la dernière batterie de la chaîne (en haut à gauche sur l’image).
Le MBMS doit avoir sa borne noire connectée à la première batterie de la chaîne et sa borne rouge à la dernière batterie de la chaîne
Vérifiez la tension DC aux bornes du disjoncteur QF30
Attention Si votre installation est OFF-GRID dès que les câbles de puissances sont connectés au BMS le disjoncteur QF30 à une tension supérieure à 200V à ses bornes (les manchons orange signifient qu’il y a de la tension même lorsque l’installation est hors tension).
4.4.6.3 Batteries BEEPLANET
A la livraison, le master BMS (MBMS) est déjà placé dans l’armoire. Veuillez faire attention à ne pas mélanger les batteries entre les chaînes, ceci peut mener à des pertes de performance dues aux différents états de charge entre les chaînes. Trouvez le numéro du string sur les étiquettes de chaque batterie pour le montage dans la bonne chaîne (Numéro de la chaîne “N” dans le numéro de série sous forme de XXXX-X-NXX).
Branchement des câbles de puissance
Une fois les batteries mises en place dans la chaîne correspondante, branchez les câbles comme indiqué par la suite.
Prendre les câbles de puissance avec le connecteur rouge d’un côté et le noir de l’autre côté.
Commencez avec la dernière batterie de la chaîne et branchez le connecteur noir sur la borne noire. Branchez le connecteur rouge sur la borne rouge de la batterie au-dessus.
Répétez cette opération jusqu’à atteindre la première batterie en haut.
Prendre le câble avec les deux connecteurs noirs et le brancher entre la borne noire de la première batterie et la borne noire du MBMS côté “BATTERY”.
Pour fermer la chaîne des batteries, brancher le long câble avec les connecteurs rouges des deux côtés entre la borne rouge du MBMS côté “BATTERY” et la prise rouge de la dernière batterie de la chaîne.
Branchement des câbles de communication
Pour brancher les câbles de communication, procéder comme indiqué par la suite :
Commencer au MBMS et connecter le premier RJ45 sur la borne “SPI1” puis le relier à la borne “SPI2” de la première batterie.
Relier le prochain câble RJ45 entre le “SPI1” de la première batterie et le “SPI2” de la prochaine batterie.
Répéter ce processus jusqu’à la dernière batterie. Elle n’aura pas de câble sur la prise “SPI2”
Une fois tous les câbles branchés, le montage doit ressembler à la photo suivante :
4.4.7 Raccordement des communications
Raccordement transducteur de mesure
Afin de raccorder le transducteur de mesure (s’il est déporté dans le TGBT), branchez le câble de communication RS485 (0.75mm² blindé) entre le transducteur et les bornes XTC en bas de l’armoire.
Raccordement au réseau internet
Afin de raccorder l’AEH à internet, il est nécessaire d’amener un câble RJ45 de Cat. 5 ou supérieure à l’intérieur de l’armoire et de le connecter en bas sur la prise RJ45.
5. Utilisation du produit
5.1 Procédure de démarrage et arrêt
5.1.1 Procédure de démarrage
Premier démarrage :
Vérifiez que le bouton d’arrêt d’urgence (si présent) est désarmé.
Enclenchez tous les disjoncteurs → Le voyant “sous tension” s’allume
Démarrez les batteries (voir en fonction des batteries)
Vérifiez que le voyant défaut est éteint
5.1.2 Procédure d’arrêt
Coupez les disjoncteurs AC si l’armoire est connectée au réseau de distribution
Coupez les disjoncteurs DC PV et batterie
Coupez le disjoncteur QF30 (si présent)
Attention, risque de choc électrique, stockage à décharge temporisée Un risque de choc électrique existe dû aux condensateurs ; le couvercle doit être retiré au moins 5 minutes après que toutes les alimentations ont été débranchées.
Attention, risque de danger En cas de manipulation des disjoncteurs dans l’armoire, veuillez respecter les consignes de sécurité. Le non-respect de ces consignes peut entraîner des blessures graves.
5.2 Interface graphique
5.2.1 Présentation de l’IHM
Écran en façade de l’armoire (si présent) :
L’utilisateur peut afficher les informations sur le fonctionnement de l’armoire.
Après la mise sous tension, l’écran LCD affiche la page d’accueil après environ 15 secondes.
Sur cet écran, il est possible de visualiser les informations de base.
A la première mise sous tension de l’écran, il est possible que vous deviez configurer l’écran tactile en appuyant un à un sur les 4 boutons carrés qui apparaissent sur l’écran. Ceci permet de calibrer la dalle tactile de l’écran.
Ci-dessous, une description d’un exemple d’informations pouvant apparaître sur le système.
Synoptique du tableau de bord de l’interface de l’AEH
L’écran affiche les puissances produites par le PV, soutirées ou injectées au réseau, chargées ou déchargées du stockage et la puissance consommée.
L’état de charge de la batterie est exprimé en % de 20 % à 100 %. Selon l’installation, il peut y avoir un bouton « Forçage groupe ». Celui-ci permet en appuyant dessus de démarrer le groupe électrogène ou bien de se connecter au réseau pour recharger les batteries.
Selon l’installation, en appuyant sur l’image au centre de l’écran, les détails suivants seront affichés : la tension ACin, la puissance par phase, l’adresse IP de l’armoire et la puissance PV par string.
5.2.2 Historique
En cliquant sur le bouton « Graphique » en bas à droite sur la page principale, les données historiques sont visualisables.
Remarque : Pour revenir sur la page d’accueil, il suffit de cliquer sur le bouton d’accueil dans le coin inférieur gauche de l’écran.
Sur les graphiques, les données historiques de l’armoire (réseau, groupe électrogène si présent, consommation photovoltaïque et charge) sont affichées.
Courbes des charges de l’interface de l’AEH
Il est possible de sélectionner l’affichage de la plage horaire avec les boutons en bas de l’écran. La plage par défaut est d’une heure.
En appuyant sur la flèche en bas à droite, les informations relatives à la batterie seront affichées. En vert l’état de charge SOC et en orange l’état de santé SOH de la batterie.
Graphique des batteries de l’interface de l’AEH
5.2.3 Alarmes
Si une alarme apparaît, une sonnerie retentit et une cloche s’affiche dans le coin supérieur gauche de la page d’accueil. Après avoir cliqué sur la cloche, les alarmes en cours sont affichées.
Historique des alarmes sur l’interface de l’AEH
Liste des alarmes possibles :
Selon l’installation les défauts peuvent varier
Numéro de défaut
Nom de défaut
1
Alarm_Onduleur_3PH défaut (communication modbus)
2
Alarm_Onduleur_3PH2 défaut (communication modbus avec onduleur 2)
3
Alarm_BMS_A16 (communication modbus)
4
Alarm_BMS_A16bis (communication modbus avec A16bis)
5
Défaut PV (24h sans PV)
6
CAN_A16_BMS (communication CAN entre MBMS et A16)
7
CAN_A16_BMS_A16bis (communication CAN entre MBMS2 et A16bis)
8
Low battery voltage
9
SOH batteries low
10
Fusion_Fusible
11
Défaut_Com_Serveur
12
AC_Out_Coupe (SOC <= 20%)
13
DefautSofarFault1
14
DefautSofarFault2
15
DefautSofarFault3
16
DefautSofarFault4
17
DefautSofarFault5
18
DefautSofarFault6
19
DefautSofarFault7
20
DefautSofarFault8
21
DefautSofarFault9
22
DefautSofarFault10
23
DefautBMSwFaultAutomateSyst
24
DefautBMSwFaultBmsSyst
25
DefautBMSFault0_7
26
DefautBMSFault8_15
27
DefautBMSFault16_23
28
DefautBMSFault24_31
29
DefautBMSFault32_35
30
Défaut parafoudre
Attention Dans le cas où un défaut numéro 13 ou supérieur est présent sur l’AEH, contactez Sirea pour une analyse après une extinction totale du système.
6. Entretien du produit
6.1 Maintenance régulière
Afin d’assurer le fonctionnement normal de l’AEH, des travaux de maintenance réguliers sont nécessaires (tableau ci-dessous).
Action
Fréquence
Nettoyage ou remplacement du filtre anti-poussière
6 mois
Vérification de la poussière, de l’humidité ou de la condensation à l’intérieur de l’armoire
Tous les mois
Vérification des connexions des câbles et resserrage des vis si nécessaire
Tous les mois
Vérification de l’étiquette d’avertissement. En ajouter ou en remplacer si nécessaire.
Tous les mois
Contrôles manuels des disjoncteurs AC et DC.
Tous les mois
Vérification de la présence d’un son anormal avec l’AEH en fonctionnement.
Toutes les mois
Attention, risque de danger Toutes les opérations de maintenance doivent être effectuées à condition que les côtés DC et AC de l’AEH, du module PV et de l’interrupteur de l’armoire de distribution AC soient tous ouverts. L’entretien ne doit être effectué qu’après avoir sectionné le courant alternatif et le courant continu pendant au moins 5 minutes, afin d’éviter un choc électrique.
6.2 Traitement des déchets
L’AEH ne causera pas de pollution environnementale, car tous les composants répondent aux exigences de protection de l’environnement. Conformément aux exigences de protection de l’environnement, l’utilisateur doit éliminer l’AEH conformément aux lois et réglementations en vigueur.