Description

Le programme ci-dessous est une petite application de démonstration, qui permet de basculer facilement entre les quatre fonctions principales du bloc XMIT :

  • Sortie de message ASCII (0)

  • Entrée ASCII simple (1)

  • Entrée ASCII terminée (2)

  • Maître Modbus (3)

Pour sélectionner la fonction, entrez le numéro approprié dans la variable ModeSelection. Un signal montant sur X_Trigger active le bloc XMIT en réglant la variable Start sur 1. Start reste à 1 jusqu'à l'exécution de la fonction ou l'apparition d'une erreur.

Section CEI

Sélection des données de configuration

Bloc fonction XMIT

Maintient Start activé jusqu'à la fin de l'exécution de la commande ou l'apparition d'une erreur

Déclaration de variables

Les tableaux suivants montrent les variables utilisées dans cet exemple.

Tableau de variables

Nom de variable

Type de données

Adresse

Description

Start

BOOL

Doit rester activée jusqu'à la fin de l'exécution du bloc XMIT.

Abort

BOOL

Abandonne l'opération XMIT.

opActive

BOOL

Indique l'état du bloc XMIT.

opError

BOOL

Indique l'état du bloc XMIT.

opDone

BOOL

Indique l'état du bloc XMIT.

Port

BYTE

Sélectionnez le port 1 ou 2.

DirectMessageOut

WordArr256

400257

Données de configuration réelles ou données à transmettre.

DirectXmitSet

XMIT_SET

400513

Données de configuration réelles.

DirectMessageIn

WordArr256

400001

Données reçues par les fonctions d'entrée ASCII.

DirectXmitConfig

XMIT_CFG

400523

Données de configuration réelles.

X_Trigger

BOOL

Déclenche la fonction XMIT.

ModeSelection

UINT

Sélectionnez la fonction demandée (0 à 3).

Message AsciiOut

WordArr256

Message à transmettre par la sortie ASCII.

MessageSimpleAsciiIn

WordArr256

(Aucun contenu requis)

MessageTermAsciiIn

WordArr256

Données de configuration pour l'entrée ASCII terminée.

MessageModbus

WordArr256

Données de configuration pour Modbus.

XmitSetForAsciiOut

XMIT_SET

Données de configuration pour la sortie ASCII.

XmitSetForSimpleAsciiIn

XMIT_SET

Données de configuration pour l'entrée ASCII simple.

XmitSetForTermAsciiIn

XMIT_SET

Données de configuration pour l'entrée ASCII terminée.

XmitSetForModbus

XMIT_SET

Données de configuration pour Modbus.

Valeurs initiales

Ci-dessous sont indiquées les valeurs initiales des différents tableaux utilisés :

Contenu de la structure de données XmitSetForAaciiOut

Nom de l'élément

Type de données

Adresse

Commentaire

BaudRate

WORD

9600

DataBits

BYTE

8

Parity

BYTE

2

StopBits

BYTE

1

CommandWord

WORD

512

Bit 7 défini

MessageLen

WORD

16

Transmet les 16 premiers caractères du tableau MessageAsciiOut.

RespTimeOut

WORD

100

RetryLimit

WORD

100

XmStartDelay

WORD

100

XmEndDelay

WORD

100

Contenu de la structure de données XmitSetForSimpleAsciiIn

Nom de l'élément

Type de données

Adresse

Commentaire

BaudRate

WORD

9600

DataBits

BYTE

8

Parity

BYTE

2

StopBits

BYTE

1

CommandWord

WORD

1152

Bits 6 et 9 définis.

MessageLen

WORD

16

opDone réglé sur 1 après réception des 16 caractères.

RespTimeOut

WORD

100

RetryLimit

WORD

100

XmStartDelay

WORD

100

XmEndDelay

WORD

100

Contenu de la structure de données XmitSetForTermAsciiIn

Nom de l'élément

Type de données

Adresse

Commentaire

BaudRate

WORD

9600

DataBits

BYTE

8

Parity

BYTE

2

StopBits

BYTE

1

CommandWord

WORD

2176

Bits 5 et 9 définis.

MessageLen

WORD

5

L'élément DirectXmitSet.MessageLen est automatiquement réglé sur 5, quelle que soit la valeur de cette entrée.

RespTimeOut

WORD

100

RetryLimit

WORD

100

XmStartDelay

WORD

100

XmEndDelay

WORD

100

Contenu de la structure de données XmitSetForModbus

Nom de l'élément

Type de données

Adresse

Commentaire

BaudRate

WORD

9600

DataBits

BYTE

8

Mode RTU

Parity

BYTE

2

StopBits

BYTE

1

CommandWord

WORD

256

Bit 8 défini

MessageLen

WORD

5

Pour les codes fonction 01 à 06, 15 et 16.

RespTimeOut

WORD

1000

RetryLimit

WORD

10

XmStartDelay

WORD

100

XmEndDelay

WORD

100

Contenu de la structure de données MessageAsciiOut

Nom de l'élément

Type de données

Adresse

Commentaire

MessageAsciiOut[2]

WORD

17220

'CD' à transmettre

MessageAsciiOut[3]

WORD

17734

'EF'

MessageAsciiOut[4]

WORD

18248

'GH'

MessageAsciiOut[5]

WORD

18762

'IJ'

MessageAsciiOut[6]

WORD

19276

'KL'

MessageAsciiOut[7]

WORD

19790

'MN'

MessageAsciiOut[8]

WORD

20304

'OP'

MessageAsciiOut[...]

WORD

...

Contenu de la structure de données MessageTermAsciiIn

Nom de l'élément

Type de données

Adresse

Commentaire

MessageAsciiOut[1]

WORD

258

0x0102 1 caractère de début et 2 caractères de fin

MessageAsciiOut[2]

WORD

9216

0x2400 Premier caractère de début '$'

MessageAsciiOut[3]

WORD

3338

0x0D0A Caractères de fin [CR][LF]

Contenu de la structure de données MessageModbus

Nom de l'élément

Type de données

Adresse

Commentaire

MessageAsciiOut[1]

WORD

3

Lecture de plusieurs registres de maintien (4x)

MessageAsciiOut[2]

WORD

32

Lecture de 32 registres

MessageAsciiOut[3]

WORD

10

Adresse Modbus de l'automate esclave

MessageAsciiOut[4]

WORD

101

Début par le registre 40101

MessageAsciiOut[5]

WORD

701

Destination des données : registre 40701