Description

Une opération d'activation/désactivation du service HTTP ou FTP/TFTP modifie l'état du service HTTP et FTP/TFTP du module.

Implémentation réseau

Une opération d'activation/désactivation du service HTTP ou FTP/TFTP peut s'effectuer sur des réseaux Ethernet TCP/IP.

Implémentation du bloc DATA_EXCH

Un bloc DATA_EXCH permet de modifier l'état du service FTP/TFTP ou HTTP pendant l'exécution de l'application. Le bloc DATA_EXCH ne peut pas changer l'état du service HTTP ou FTP/TFTP si celui-ci a été désactivé via l'un des outils de configuration.

NOTE : il est également recommandé d'utiliser l'EFB ETH_PORT_CTRL au lieu de la fonction DATA_EXCH pour gérer la sécurité sur le M340 et le M580.
NOTE : le bloc DATA_EXCH ne permet pas de modifier les services Ethernet du port intégré du M580. Pour ce faire, utilisez le bloc ETH_PORT_CTRL.

Configuration de la variable Address

La variable Address identifie l'adresse locale du module pour lequel le service FTP/TFTP ou HTTP sera activé ou désactivé.

Variable

Type

Description

Address

ARRAY [0..5] of INT pour Premium

ARRAY [0..7] of INT pour M340

Adresse de l’entité destinataire de l’échange. Si le paramètre Action est de type émission/réception, les adresses de diffusion sont interdites.

Pour Premium :

  • Utilisez la fonction ADDR .

  • Exemple : ADDR( ‘0.4.0.SYS’ )

Pour M340 :

  • Utilisez la fonction ADDM .

  • L'entité cible de l'échange est un tableau de 8 mots.

  • Exemple : ADDM( '0.4.0' )

NOTE : Dans chaque exemple, l'adresse est :
  • rack = 0

  • emplacement = 4

  • voie = 0.

Configuration de la variable Action

La variable Action identifie le type de fonction du bloc fonction DATA_EXCH :

Variable

Type

Description

Valeur (hexa)

Action

INT

1 = transaction suivie d'une mise en attente pour la réception

16#0001

Configuration de la variable Data_to_Send

La variable Data_to_Send est un tableau ARRAY [0..3] de types INT et se compose des éléments suivants :

Variable

Description

Valeur (hexa)

Data_to_Send[0]

  • Octet de poids fort = 16#00

  • Octet de poids faible = code de requête (16#5A)

16#005A

Data_to_Send[1]

  • Octet de poids fort = 16#01

  • Octet de poids faible = code de sous-requête (16#6E)

16#016E

Data_to_Send[2]

  • Octet de poids faible = commande de service Ethernet (16#xx) sur M340/M580. 16#00 sur Premium

  • Octet de poids fort = commande de service Ethernet (16#xx) sur Premium. 16#00 sur M340/M580

Les valeurs de commande du service Ethernet peuvent être :

  • 16#00 - Aucun changement

  • 16#01 - Activation de FTP uniquement

  • 16#02 - Désactivation de FTP uniquement

  • 16#10 - Activation de HTTP uniquement

  • 16#20 - Désactivation de HTTP uniquement

  • 16#11 - Activation de FTP et de HTTP

  • 16#12 - Activation de HTTP ; désactivation de FTP

  • 16#21 - Désactivation de HTTP ; activation de FTP

  • 16#22 - Désactivation de FTP et de HTTP

16#00xx sur M340/M580

16#xx00 sur Premium

Data_to_Send[3]

  • Octet de poids fort = réservé (16#00)

  • Octet de poids faible = réservé (16#00)

16#0000

Configuration de la variable Management_Param

La variable Management_Param est un tableau ARRAY [0..3] de types INT et se compose des éléments suivants :

Variable

Description

Valeur (hexa)

Management_Param[0]

  • Octet de poids fort = Numéro d'échange, spécifié par le système

  • Octet de poids faible = Bit d'activité, spécifié par le système

-

Management_Param[1]

-

Management_Param[2]

le timeout peut prendre n'importe quelle valeur. La base du timeout étant de 100 ms, dans cet exemple, le timeout est réglé sur 10 secondes.

16#0064

Management_Param[3]

  • Octet de poids fort = longueur (16#00)

  • Octet de poids faible = longueur (16#08)

NOTE : la longueur doit être réglée sur une valeur de 8 octets.

16#0008

Affichage de la réponse

Utilisez une table d'animation Control Expert pour afficher la réponse. La réponse se trouve dans la variable Received_Data qui est de type ARRAY [0..3] OF INT :

Variable

Valeur (hexa)

Exemple d'une réponse ayant abouti :

Received_Data[0]

16#005A (M340 Modbus)

16#008A (Premium UNITE)

Received_Data[1]

16#xxFE (Réussite)

Received_Data[2]

16#00yy

NOTE : le mot créé avec la valeur 16#yyxx a la même signification que la sortie ETH_SCE_STATUS de l'EFB ETH_PORT_CTRL.

Received_Data[3]

16#0000

Exemple de réponse n'ayant pas abouti :

Received_Data[0]

16#005A (M340 Modbus)

16#008A (Premium UNITE)

Received_Data[1]

16#xxFD (erreur détectée)1

Received_Data[2]

16#00xx1

Received_Data[3]

16#0000

1. Le code de l'erreur détectée apparaît au format FD xx xx, où xx xx peut prendre les valeurs suivantes :

  • 50 86 : occupé : lorsque la requête arrive deux secondes après la requête précédente, que cette dernière ait abouti et qu'une erreur ait été détectée.

  • 40 01 : même état : lorsque la requête est appelée pour conserver la configuration des services HTTP et FTP/TFTP en l'état.

  • 20 04 : données non valides : lorsque les données de la requête ne figurent pas dans le formulaire spécifié par le type de requête.

  • 50 69 : désactivé : lorsque le service FTP/TFTP ou HTTP est déjà désactivé par Control Expert et que la requête tente de modifier l'état du service désactivé.

NOTE : En cas de détection de plusieurs erreurs, l'ordre de priorité de l'affichage est Désactivé, Données non valides, Même état et Occupé.