Tele information compteurs EDF

Les infos sont transmises cycliquement sur la ligne, modulées en ASK à 50kHz, ce qui correspond en gros à : soit aucune tension présente, soit un signal à 50kHz de 10V CC environ. Le 0V équivaut à un 1 logique, le 50kHz à un 0 logique. Pour être exploitées, ces infos doivent être démodulées pour être aux formats TTL ou RS232.

C’est donc une liaison série qui délivre des caractères ASCII suivant le protocole suivant :

* 1200 bits/s
* 7 bits/caractères
* 1 bit de stop
* parité paire

Un groupe de messages complet constitue une trame qui débute par le caractère STX (code ASCII = 02), et se termine par ETX (03).

Chaque message composant la trame comprend :

* un caractère LF (code ASCII = 0A hexa)
* une étiquette de 4 à 8 caractères
* un espace SP (20 hexa)
* des données de 1 à 12 caractères
* un espace SP(20 hexa)
* un caractère de contrôle
* un caractère CR (0D hexa)

Ces différents messages donnent les indications suivantes en fonction de l’abonnement souscrit :

* n° d’identification du compteur, étiquette: ADCO (12 caractères)
* option tarifaire (type d’abonnement) : OPTARIF (4 car.)
* intensité souscrite : ISOUSC ( 2 car. unité = ampères)
* index si option = base : BASE ( 9 car. unité = Wh)
* index heures creuses si option = heures creuses : HCHC ( 9 car. unité = Wh)
* index heures pleines si option = heures creuses : HCHP ( 9 car. unité = Wh)
* index heures normales si option = EJP : EJP HN ( 9 car. unité = Wh)
* index heures de pointe mobile si option = EJP : EJP HPM ( 9 car. unité = Wh)
* index heures creuses jours bleus si option = tempo : BBR HC JB ( 9 car. unité = Wh)
* index heures pleines jours bleus si option = tempo : BBR HP JB ( 9 car. unité = Wh)
* index heures creuses jours blancs si option = tempo : BBR HC JW ( 9 car. unité = Wh)
* index heures pleines jours blancs si option = tempo : BBR HP JW ( 9 car. unité = Wh)
* index heures creuses jours rouges si option = tempo : BBR HC JR ( 9 car. unité = Wh)
* index heures pleines jours rouges si option = tempo : BBR HP JR ( 9 car. unité = Wh)
* préavis EJP si option = EJP : PEJP ( 2 car.) 30mn avant période EJP
* période tarifaire en cours : PTEC ( 4 car.)
* couleur du lendemain si option = tempo : DEMAIN
* intensité instantanée : IINST ( 3 car. unité = ampères)
* avertissement de dépassement de puissance souscrite : ADPS ( 3 car. unité = ampères) (message émis uniquement en cas de dépassement effectif, dans ce cas il est immédiat)
* intensité maximale : IMAX ( 3 car. unité = ampères)
* Puissance apparente : PAPP ( 5 car. unité = Volt.ampères)
* groupe horaire si option = heures creuses ou tempo : HHPHC (1 car.)
* mot d’état (autocontrôle) : MOTDETAT (6 car.)

Le bornier téléinformation est situé en bas, à droite du compteur électronique.

La liaison vers l’utilisation se fait par un câble 2 conducteurs avec écran relié à la terre.

Nota : le compteur peut être configuré en mode « veille » et n’émettre que l’étiquette ADCO. Pour avoir accès au jeu d’informations complet, il suffit de le faire paramétrer en conséquent par EDF.

PRM Fieldbus discovery, découverte de bus de terrain

Attention, pour faire un field bus discovery appelé aussi découverte de bus de terrain, il faut :
– se connecter à la PRM
– que les DTM des équipements à découvrir soient installés
– que les GSD des équipements à découvrir soient ajoutés dans la bibliothèque
– que le catalogue matériel des DTMs soit mis à jour

à ce moment là seulement les quipements peuvent être « découverts »

PRM GSD non présent dans la bibliothèque des GSDs

Si vous ouvrez un fichier STA, vous pouvez travailler sur l’application sans avoir forcément tous les GSDs présents dans la bibliothèque.

Vous pourrez alors faire toutes les manipulations ne nécessitant pas de regénération des variables liées à la PRM.

une icone (petit triangle jaune) apparaît sur le noeud indiquant que le GSD n’est pas dnas la bibliothèque.

Vous pouvez alors rajouter le GSD dans la bibliothèque (menu équipement/ajouter GSD) toutefois il est nécessaire de fermer le projet puis de le réouvrir pour que la modification soit prise en compte pour l’ancien équipement présent dans l’arborescence de la DTM PRM.

Câblage CEV modbus série Ethernet

Câblage d'un CEV pour faire la passerelle Modbus Série Modbus Ethernet TCP/IP
  ______________
 |      _____   |
 |     |    |   |      
 O     O    O   O
 |     |______________ D(B)
 |___________________ D(A)


 O     O    O   O



                  O    O
                  |___________ +24V
                  O    O
                  |___________ -24V


Le 0V du LU9GC3 va sur le 2 et le 3 du SCA 50
Le D(B) sur le 5
Le D(A) sur le 4

Pour faire la configuration sur Ethernet

Raccordement OSITRACK SCA62 SCA50

TCSMCN1F2 (M12 vers libre pour ositrack)
1 shield
2 rouge
3 Noir 0V
4 Blanc D0
5 Bleu D1

Si banchement en direct de la tête de lecture Ositrack alors TCSMCN1F2 avec 24V :
1 Shield
2 24V
3 0V
4 D0
5 D1

RJ45
3 Vert 0V
4 Noir D(A)
5 Rouge D(B)

Sur SCA50 :
1 Shield
2 Blanc 0V
3 Rouge 0V
4 Blanc D(A)
5 Bleu D(B)

Mémoire OSITRACK et modes de marche

Zone etiquette : %MW0 (16#0000) à %MW32767 (16#7FFF)
Zone Station : %MW32768 (16#8000) à %MW65535 (16# FFFF)

16#8000 Bit 0 étiquette présente, Bit 5 : Badg de configuration présent
16#8001 : compteur d’étiquettes (incrémenté à chaque nouvelle étiquette)
16#8002 à 8009 UID identifiant unique actualisé à chaque nouvelle étiquette
16#8018 : bits 0 à 7 adresse de la station (1 à 15)
16#8019 à FFFF zone réservée aux réglages de la station

Zone étiquette :
XGH B21/B22/B90 : 256 octets de 0 à 127
XGH B32 : 112 octets 0 à 55
XGH B444 : 3408 octets de 0 à 1703
XGH B445 13632 octets de 0 à 6815

PRM utilisation avec Quantum

Le piège d’une utilisation de la PRM avec Quantum est qu’il faut localiser les variables d’E/S :
– Les Buffers d’E/S
– le tableau de Diag_info pour le DIAG
– le tableau de lecture pour le READ
– le tableau de données à écrire pour le WRITE

Accès aux paramètres internes du NOM M340

Exemple de code:
if dataCh010Get then
read_var(addm(‘0.1.0’), ‘%MW’, dataCh010StartAddr, dataCh010Size, dataCh010Mgt, dataCh010Buff);
dataCh010Get := false;
end_if;

Contenu de la zone:

Address Field kind Designation
%MW0 INT Tx Start Delay: wait a delay before sending data. It is commonly used with the half duplex modem mode to set the RTS signal, wait the CTS signal and then wait this delay before sending data. It seems to conform to FOCKS mechanism.
%MW1 INT Tx End delay: wait a while after the last byte sent. It is commonly used with half duplex modem mode to maintain the RTS signal this time, to let enougth time to the modem to send the buffer to the peer, before switching to reception mode. It seems to conform to the FOCKS mechanism.
%MW16 INT bus_message_count
%MW18 INT bus_com_error_count
%MW20 INT bus_except_error_count
%MW22 INT slave_mes_count
%MW24 INT slave_no_resp_count
%MW26 INT slave_NAK_count
%MW28 INT slave_busy_count
%MW30 INT bus_char_overrun_count
%MW30 INT Internal com_event_count
%MW30 INT Internal diag_register
%MW30 INT Internal successfull_mstr_count
%MW30 INT Internal successfull_slave_count
%MW40 INT Internal bad_adr_count
%MW42 INT Internal bad_length_count
%MW44 INT Internal mstr_retry_count
%MW46 INT Internal STOP_BYTES
%MW48 INT Internal listenOnlyMode
%MW50 INT Internal KindOfFlowControl (0:full duplex, 1 RTS, 2 DTR)
%MW100 INT Internal conf mode
%MD102 DINT Internal conf baudrate
%MW104 INT Internal conf dataLength
%MW106 INT Internal conf parity
%MW108 INT Internal conf stopBitNb
%MW110 INT Internal conf rs232
%MW112 INT Internal conf hwFlowCtrl
%MW114 INT Internal conf modemMode
%MW116 INT Internal conf framesDelay
%MW118 INT Internal conf silence
%MW120 INT Internal conf slaveAnswerDelay
%MW122 INT Internal conf slaveNumber
%MW124 INT Internal conf slaveNumberExternal
%MW126 INT Internal conf polarizationModbus
%MW128 INT Internal conf polarizationUnitelway
%MW130 INT Internal conf nbRetries
%MW132 INT Internal conf rtsCtsTimeout
%MW134 INT Internal conf endOfFrameChar1
%MW136 INT Internal conf endOfFrameIncludedChar1
%MW138 INT Internal conf endOfFrameByteChar1
%MW140 INT Internal conf endOfFrameChar2
%MW142 INT Internal conf endOfFrameChar2
%MW144 INT Internal conf endOfFrameIncludedChar2
%MW146 INT Internal conf endOfFrameByteChar2
%MW148 INT Internal conf blindTimeMs
%MW150 INT Internal usePatchedTimings
%MW152 INT Internal t3_5ch
%MW154 INT Internal t1_5ch
%MW156 INT Internal tDelay
%MD158 DINT Internal conf KindOfFlowControl (0: none, 1: RTS automatic, 2: DTR automatic instead of RTS)
%MW160 INT Internal conf ctsDelayBeforeTx : In half duplex mode, on sending, the RTS signal raise, then when the CTS raise the delay is executed beforte sending the frame.
%MW162 INT Internal conf rtsDelayAfterTx: In half duplex mode, after sending, the RTS signal is maintain until the delay is over.
%MW200 INT Current version of the local channel server (00.01)
%MW201 INT Flash Slave Address
%MW202 INT Is it authorized to change the address ?
%MW1000 INT Modbus RTU Master: internal protocol code
%MW1002 INT Modbus RTU Master: KindOfFlowControl (0: none, 1: RTS automatic, 2: DTR automatic instead of RTS)
%MW1010 INT Modbus RTU Master: T1_5crS
%MW1012 INT Modbus RTU Master: T1_5crR
%MW1014 INT Modbus RTU Master: T3_5crS
%MW1016 INT Modbus RTU Master: T3_5crR
%MW1018 INT Modbus RTU Master: DelayInBits
%MW1090 INT Modbus RTU Master: nb retries configured
%MW1100 INT Modbus RTU Master: SlaveAnswerDelay10ms Broadcast
%MW1101 INT Modbus RTU Master: SlaveAnswerDelay10ms Slave 1
%MW1102 INT Modbus RTU Master: SlaveAnswerDelay10ms Slave 2
%MW1103 INT
%MW1347 INT Modbus RTU Master: SlaveAnswerDelay10ms Slave 247
%MW1348 INT Modbus RTU Master: SlaveAnswerDelay10ms Point to Point
%MW1500 INT Modbus RTU Slave: internal protocol code
%MW1502 INT Modbus RTU Slave: KindOfFlowControl (0: none, 1: RTS automatic, 2: DTR automatic instead of RTS)
%MW1510 INT Modbus RTU Slave: T1_5crS
%MW1512 INT Modbus RTU Slave: T1_5crR
%MW1514 INT Modbus RTU Slave: T3_5crS
%MW1516 INT Modbus RTU Slave: T3_5crR
%MW1518 INT Modbus RTU Slave: DelayInBits
%MW1600 INT Modbus RTU Slave: SlaveAddr
%MW1602 INT Modbus RTU Slave: BlindTimeAfterReception
%MW1604 INT Modbus RTU Slave: blindTimeActivated
%MW1606 INT Modbus RTU Slave: ListenOnlyMode
%MW2000 INT Modbus ASCII Master : internal protocol code
%MW2002 INT Modbus ASCII Master : KindOfFlowControl (0: none, 1: RTS automatic, 2: DTR automatic instead of RTS)
%MW2010 INT Modbus ASCII Master: T1_5crS
%MW2012 INT Modbus ASCII Master: T1_5crR
%MW2014 INT Modbus ASCII Master: T3_5crS
%MW2016 INT Modbus ASCII Master: T3_5crR
%MW2018 INT Modbus ASCII Master: DelayInBits
%MW2090 INT Modbus ASCII Master: nb retries configured
%MW2100 INT Modbus ASCII Master: SlaveAnswerDelay10ms Broadcast
%MW2101 INT Modbus ASCII Master: SlaveAnswerDelay10ms Slave 1
%MW2102 INT Modbus ASCII Master: SlaveAnswerDelay10ms Slave 2
%MW2103 INT
%MW2347 INT Modbus ASCII Master: SlaveAnswerDelay10ms Slave 247
%MW2348 INT Modbus ASCII Master: SlaveAnswerDelay10ms Point to Point
%MW2500 INT Modbus ASCII Slave: internal protocol code
%MW2502 INT Modbus ASCII Slave: KindOfFlowControl (0: none, 1: RTS automatic, 2: DTR automatic instead of RTS)
%MW2510 INT Modbus ASCII Slave: T1_5crS
%MW2512 INT Modbus ASCII Slave: T1_5crR
%MW2514 INT Modbus ASCII Slave: T3_5crS
%MW2516 INT Modbus ASCII Slave: T3_5crR
%MW2518 INT Modbus ASCII Slave: DelayInBits
%MW2600 INT Modbus ASCII Slave: SlaveAddr
%MW2602 INT Modbus ASCII Slave: BlindTimeAfterReception
%MW2604 INT Modbus ASCII Slave: blindTimeActivated
%MW2606 INT Modbus ASCII Slave: ListenOnlyMode
%MW3000 INT Char Mode: internal protocol code
%MW3002 INT Char Mode: KindOfFlowControl (0: none, 1: RTS automatic, 2: DTR automatic instead of RTS)
%MW3100 INT Char Mode: Stop criteria present
%MW3102 INT Char Mode: Ticr
%MW3104 INT Char Mode:  EOF byte 1
%MW3104 INT Char Mode:  EOF char 1 added
%MW3104 INT Char Mode:  EOFbyte 2
%MW3104 INT Char Mode:  EOF char 2 added

Connection à un M340, transparence réseau

Dans le set address on peut en USB mettre l’adresse IP avec r.m.c{IP}

Ou pour router sur USB à partir de TCP/IP, choisir le driver TCP/IP et mettre : 90.0.0.1\\r.m.c{IP}

On peut aussi : IP1\\r.m.c{IP2} : cela veut dire que l’on est connecté sur le même réseau que l’automate IP1 avec le PC et que l’on veut aller sur l’automate IP2 qui est sur un autre réseau.

On a aussi la possibilité de mettre « nom de réseau » à la place de r.m.c, ce qui permet de porter des applications avec des modules situés à des emplacements différents.

On peut aussi si on est en modbus série :
@modbus serie
@modubusserie\\r.m.c{IP}

Pour résumer : (où r.m.c peut aussi être nom de réseau)
USB
SYS
r.m.c{IP}
SYS\\r.m.c{IP}
SYS\\r.m.c.@

Ethernet :
IP
IP\\r.m.c{IP2}
IP\\r.m.c.@

Modbus série :

@
@\\r.m.c{IP}
r.m.c.@