Vous êtes sur la page 1sur 19

22/10/2016 COMPTAGE

D’ENERGIE
SOCOMEC

MIKAEL KOLANOWSKI
COMPTAGE D’ENERGIE 22 octobre 2016

Table des matières


INTRODUCTION ....................................................................................................................................... 2
PRESENTATION MATERIEL ...................................................................................................................... 3
1. AFFICHEUR DIRIS D50 .................................................................................................................. 3
2. MODULE U10 ............................................................................................................................... 3
2.1 Table d’échange .................................................................................................................. 4
3. MODULE I60 ................................................................................................................................ 4
3.1 Charge équilibré .................................................................................................................. 5
3.2 Charge équilibré .................................................................................................................. 7
3.3 Charge d’équilibré ............................................................................................................... 8
3.4 Synthèse .............................................................................................................................. 8
RECUPERATION DES DONNEES............................................................................................................... 9
1. RESEAU ........................................................................................................................................ 9
2. FONCTION READ_VAR ............................................................................................................... 10
3. LES BLOCS DFB ........................................................................................................................... 11
3.1 Module de tension U10 ..................................................................................................... 11
3.2 Module de courant I60 ...................................................................................................... 12
4. PROGRAMMATION DFB ............................................................................................................ 13
4.1 Entrée / Sorties / Données ................................................................................................ 13
4.2 Programme ........................................................................................................................ 14
5. ORGANISATION PROGRAMME .................................................................................................. 16
5.1 Structure ............................................................................................................................ 16
5.2 Variables ................................................................................................................................ 17
CONCLUSION ......................................................................................................................................... 18

1
COMPTAGE D’ENERGIE 22 octobre 2016

INTRODUCTION

Dans beaucoup de projets que j’ai à réaliser la consommation électrique à une importance
pour de plus en plus d’industries. Dans ce document je vais vous présentez un constructeur de
compteur énergétique que j’ai le plus utilisé. L’entreprise SOCOMEC propose depuis quelques années
des compteurs énergétique, mais je vais vous présentez le système DIGIWARE.

Figure 1: Réseau DIGIWARE

Ce système DIGIWARE qui est un réseau géré par un DIRIS D50 un petit afficheur qui affiche
les données recueillit par les différents modules connectés sur le même réseau. Un réseau doit
contenir un afficheur DIRIS D50 (ou un module C31), d’un module de tension dans notre exemple un
U10 et d’un module d’intensité I60 qui peut recevoir 6 entrées que je vais nommer Ti.

Nous allons recueillir certaines informations via un réseau Ethernet avec le protocole
Modbus TCP sur un M340 (attention sur un Premium l’adressage change). Donc je pense que vous
allez penser il va utiliser un DTM, mais non ici les DTMs ne sont pas compatible, donc obligé d’utiliser
la bonne vieille méthode avec la fonction READ_VAR.

2
COMPTAGE D’ENERGIE 22 octobre 2016

PRESENTATION MATERIEL

1. AFFICHEUR DIRIS D50

Figure 2: Afficheur DIRIS D50

Concrètement ce module nous est transparent car appart le configurer en mettant une
adresse IP et la langue, il n’y a pas de grand intérêt il sert donc de passerelle et surtout permet
d’afficher facilement les données recueillis.

2. MODULE U10

Figure 3: Module de tension U10

Il existe aussi le U20 et le U30 il donne chacun un peu plus d’informations. Il est important
que l’électriquement il soit au début de votre installation car il sert de référence.

3
COMPTAGE D’ENERGIE 22 octobre 2016

2.1 Table d’échange

Figure 4: Extrait table d'échange

Ce tableau extrait de la documentation disponible sur le site de SOCOMEC représente les


données que je souhaite connaitre de ce module. Nous pouvons voir que c’est une table de taille 17
mots qui commence à l’adresse @36864.

Attention si vous utilisez le module U30 par exemple la même table à une longueur de 37
mots.

Notre but sera de revenir récupérer la fréquence, la tension entre phase et de la tension
entre phase neutre.

3. MODULE I60

Figure 5: Module I60

Ce module permet de brancher six capteurs Ti, des capteurs d’intensités qui viennent se
brancher sur le jeu de barre ou vient se clipper autour des fils. Attention il y a un sens malgré que
l’on peut le configurer via un logiciel de configuration EASYCONFIG disponible sur le site de
SOCOMEC.

4
COMPTAGE D’ENERGIE 22 octobre 2016

3.1 Charge équilibré

5
COMPTAGE D’ENERGIE 22 octobre 2016

Nous pouvons voir que cette table d’échange est plus grande que celle du module de tension
U10. Mais cette table est la table de la première entrée TOR du module.

Ce module donne les valeurs instantanées qui est cette table, mais aussi donne des
informations énergétiques sur une autre table (ci-dessous).

6
COMPTAGE D’ENERGIE 22 octobre 2016

Alors vous vous en doutez si j’ai six entrées TOR j’ai donc 6 tables pour les valeurs
instantanées et 6 tables pour les valeurs énergétiques. Mais il y a quelque particularité à savoir pour
ne pas vous tromper durant vos requêtes.

3.2 Charge équilibré

Figure 6: Illustration charge équilibré

Par exemple, vous voulez mesurer les valeurs sur un moteur asynchrone triphasé qui est une
charge équilibre c’est-à-dire que par phase il y aura la même intensité, la même tension, la même
fréquence (enfin en théorie).

Un seul capteur d’intensité suffit donc si vous avez suivis mes dires plus haut, il y aura donc 6
tables de valeurs instantanée et 6 pour les valeurs énergétiques. Vous pouvez sur un même module
mettre 3 charges équilibrées et 1 charge déséquilibré.

7
COMPTAGE D’ENERGIE 22 octobre 2016

3.3 Charge d’équilibré

Figure 7: Illustration charge d'équilibré

Pour une charge d’équilibré il vous faudra 3 capteurs d’intensité, un sur chaque phase car la
tension, l’intensité est différente.

Donc les informations que l’on souhaite retrouver sera sur la première table. Donc si vous
avez une autre charge d’équilibré les valeurs seront dans la deuxième table.

3.4 Synthèse

Voici différent tableaux qui montre différente configuration possible d’un module I60.

Entrées Table @ Instantané @ Energie


I1 Moteur 1 1 @18432 @19840
I2 Moteur 2 2 @20480 @21888
I3 Moteur 3 3 @22528 @23936
I4 Moteur 4 4 @24576 @25984
I5 Moteur 5 5 @26624 @28032
I6 Moteur 6 6 @28672 @30080

Entrées Table @ Instantané @ Energie


I1 Alim_V1
I2 Alim_V2 1 @18432 @19840
I3 Alim_V3
I4 Moteur 4 2 @20480 @21888
I5 Moteur 5 3 @22528 @23936
I6 Moteur 6 4 @24576 @25984

Entrées Table @ Instantané @ Energie


I1 Alim_V1
I2 Alim_V2 1 @18432 @19840
I3 Alim_V3
I4 Tert_V1
I5 Tert_V2 2 @20480 @21888
I6 Tert_V3

8
COMPTAGE D’ENERGIE 22 octobre 2016

RECUPERATION DES DONNEES

Dans la configuration actuel nous avons un DIRIS D50 qui regroupe grâce à l’IHM les données
des différents modules. Donc le but secondaire de ce document est de venir récupérer les données
dans un automate pour l’utiliser dans un programme ou supervision.

1. RESEAU

 M340
@10.149.1.55

 DIGIWARE U10  DIGIWARE I60


@3 @4

 DIRIS D50
@10.149.1.60
@1

9
COMPTAGE D’ENERGIE 22 octobre 2016

2. FONCTION READ_VAR

Cette fonction de communication très connu par les automaticiens est la seule méthode à ma
connaissance qui permet de venir lire les valeurs des différents modules de communications. Je vais
reprendre l’explication de l’aide d’Unity Pro qui me semble déjà bien complète.

Figure 8: Bloc READ_VAR

10
COMPTAGE D’ENERGIE 22 octobre 2016

Dans notre exemple nous allons envoyer une requête les unes après les autres pour ne pas
planté le réseau car par expérience au bout de 4 requêtes simultanées les modules SOCOMEC ont
tendance à ne plus trop bien le gérer. Donc nous allons attendre que la première requête soit faite
pour lancer la deuxième.

Alors j’ai créé des blocs DFB pour chaque module, un bloc DFB pour le U10 et deux autres
pour le module I60 un pour les valeurs instantanées et un pour l’énergie. Je vais vous présenter
chacun d’eux sachant que je ne présenterai pas la programmation des blocs qui se résume à la
gestion des requêtes.

3. LES BLOCS DFB

3.1 Module de tension U10

Ce bloc permet de venir récupérer les informations du


module de tension U10.

L’index est un compteur qui s’incrémente dès que la


requête est finie est passe donc à un autre bloc.

L’adresse est l’adresse IP du DIRIS D50 ainsi que


l’esclave que l’on souhaite lire donc l’adresse Modbus @3.
Nous donnons le point de départ de la table @36864 et
combien de mots nous voulons lire.

Un bit de défaut communication signal un éventuel


défaut, une entrée permet d’acquitter les défauts.

En sortie, nous avons les valeurs que nous souhaitons


récupérer. On peut voir que l’index de lecture est aussi en
sortie car comme je l’ai dit plus haut il est incrémenté à la
fin de la requête.

On y récupère la fréquence en Hz 1/1000 ainsi que la


tension entre phases et phase/neutre en Volt 1/100.
Figure 9: Bloc valeur module de tension U10

Pour l’index penser à le mettre à 1 quand il est égal à 0 et quand il est supérieur à votre dernier bloc
afin qu’il recommence.

11
COMPTAGE D’ENERGIE 22 octobre 2016

3.2 Module de courant I60

Je vous rappelle qu’il y a deux tables pour le


module de courant I60, ce bloc permet de récupérer les
valeurs instantanées. Le bloc fonctionne pareil que le
bloc de tension on peut voir que l’index est de 2 donc
c’est le second bloc qui sera lu. L’adresse Modbus est
de @4. Nous commençons sur la première table
@18432.

Sur ce bloc nous récupérons l’intensité nominal


en Ampère 1/1000, la puissance active en Watt 1/1000,
la puissance réactive en Voltampère réactif 1/1000, la
puissance apparente en Voltampère 1/1000 ainsi que le
cos phi.

Figure 10: Bloc valeur instantanée

Voici le second bloc qui permet de récupérer les


valeurs sur l’énergie. Donc avec un autre index mais
toujours à la même adresse.

On vient lire dans la première table des énergies


@19840

Ici je viens juste récupérer la consommation en Wh


de la pompe.

Figure 11: Bloc énergie

12
COMPTAGE D’ENERGIE 22 octobre 2016

4. PROGRAMMATION DFB

Les blocs DFB servent à envoyer une requête de lecture de mots en MODBUS TCP. Je vais
détailler le programme en ST.

4.1 Entrée / Sorties / Données

Figure 12: Entrée sortie bloc DFB

Gestion est un tableau de 4 INT et data est un tableau de 60 INT.

13
COMPTAGE D’ENERGIE 22 octobre 2016

4.2 Programme

Le morceau de programme ci-dessus est la gestion et l’envoie de la requête. Elle est


identique dans tous les blocs.

Initialisation du timeout

Je viens mettre la valeur du timeout j’aurais bien pu mettre [Gestion[2] :=10 ;].

Requête

Si je n’ai pas de requête en cours, logique que le bloc envoie qu’une seule requête et que
chaque bloc est appelé que quand l’index est égal à l’index d’appel du bloc. Donc on peut voir la
version en ST du bloc READ_VAR expliquer dans le chapitre 2. On vient donner l’adresse où lire, le
type de donnée à lire, le début de la table avec sa longueur. Ensuite comme tout READ_VAR une
table de gestion de 4 entiers et une table de réception où nous allons récupérer nos valeurs.

14
COMPTAGE D’ENERGIE 22 octobre 2016

Contrôle

On vient contrôler que la requête c’est bien passer grâce à notre table de gestion notamment
le deuxième mot [Gestion[1]]. C’est ici que l’on voit s’il y a une erreur si égale à 0 tout va bien si
différent de 0 donc la requête ne s’est pas correctement passée. Quand cela ne se passe pas bien
cela incrémente un compteur de défaut qui une fois à 100 monte un défaut de communication.

D’après les tables de communication donner dans le chapitre Présentation Matériels, nous
récupérons les valeurs aux bonne endroit. Vous le remarquer dans ma requête je récupère tout et je
viens chercher ce que j’ai besoin. Mais comme je récupère de INT dans un tableau de 60 INT (je sais
c’est beaucoup mais au moins je ne suis pas bridée) je dois les remettre en format DINT grâce à la
fonction INT_AS_DINT je viens mettre l’entier de poids fort et de poids faible.

Ce programme est celui du bloc de tension U10 mais ce qui diffère c’est la seconde partie ou
on vient récupérer les valeurs à des endroits différents.

15
COMPTAGE D’ENERGIE 22 octobre 2016

5. ORGANISATION PROGRAMME

Alors la façon d’organiser votre programme ne tient qu’à vous et je ne vais pas donner la seule
solution, mais je vais présenter ma façon afin de vous faciliter dans votre programmation et durant
votre mise en service.

5.1 Structure

J’ai créé deux structures une pour les informations du module de tension U10 et une pour le
module d’intensité I60.

Figure 13: Structures

16
COMPTAGE D’ENERGIE 22 octobre 2016

5.2 Variables
J’ai donc crée des variables qui ont comme type nos structures.

Figure 14: Variable

17
COMPTAGE D’ENERGIE 22 octobre 2016

CONCLUSION

Voilà la fin de ce document je peux vous transmettre ses blocs afin de vous permettre de les
utiliser. Ce document traire seulement sur comment les utiliser et non comment fonctionne les blocs
malgré que j’ai abordé l’élément principal des blocs avec la fonction READ_VAR.

J’ai déjà pu mettre en service ces compteurs énergétique et ces blocs fonctionnent. Je vais
quand même finir sur des éléments à faire attention, si un module ne communique pas, un défaut de
communication montera. Pour configurer vos modules prenait un câble de chargeur de portable qui
fait synchronisation micro-USB comme ceux des Samsung Galaxy S6 ou S5. Pour les configurer
télécharger le logiciel EasyConfig disponible sur inscription sur le site de SOCOMEC. Il permet de
configurer vos modules simplement.

Commencer par configurer votre module U10, ensuite configure vos modules I60 un à un.
N’oubliez pas votre terminal de ligne sinon cela ne fonctionnera pas, il est à mettre sur le dernier
module I60. Puis à la fin configurer le DIRIS D50 en choisissant la langue et mettre une adresse IP.
Ensuite faire un scan des modules brancher et normalement vous devrez trouver vos modules avec la
bonne adresse.

Pour toutes modifications vous pouvez vous branchez directement sur le DIRIS D50 et depuis
EasyConfig lancer un scan USB vous verrez apparaitre tous vos modules.

Pour tout défaut n’hésitez pas à regarder dans le bloc le tableau de gestion qui vous donnera
l’erreur s’il y a c’est plus facile à trouver quand on a déjà un indice.

18