Envoyer des données (liaison MEWNET)
Cette instruction envoie des données vers une autre station via des modules de liaison dans un réseau.
Entrée
Zone de 32 bits de sauvegarde des données de contrôle
Zone de départ de 16 bits de sauvegarde des données source (zone de données dans la station source)
Type d’opérandes de destination pour sauvegarder les données dans la station de destination. Sélectionnez la zone en définissant l’adresse 0 (par ex. DT0 ou WR0, ...) (zone de données dans la station de destination)
Adresse de départ de la zone 16 bits pour les opérandes de destination spécifiées par d_AdrType (zone de données dans la station de destination). Doit être une constante
Les variables s2_Start, d_AdrType et d_AdrOffs doivent être du même type de données.
Caractéristiques de s1_Control :
Octet de poids fort de s1 |
Octet de poids faible de s1 |
|
---|---|---|
1. N° de liaison (LK : 1 à 3, la station elle-même) |
1. Transfert de mots |
|
Possibilité de connecter jusqu’à 3 unités de liaison à 1 unité centrale. |
F = 0 |
Transfert de mots |
n2 = 0 |
Transfert du mot lorsque "0" est défini |
|
Parmi les 3 unités de liaison, LK sélectionne l’unité de liaison source. |
n1 = 11–16 |
Indique le nombre de mots qui doivent être envoyés |
2. N° de la station de liaison (UN : 1 à 63, une autre station) |
2. Transfert de bits |
|
Possibilité de connecter jusqu’à 63 stations à 1 unité de liaison. |
F = 1 |
Transfert de bits |
UN sélectionne le numéro de station de destination |
n2 = 0–15 |
N° du bit de destination |
n1 = 0–15 |
N° du bit source |
Pour en savoir plus, voir le manuel technique du module intelligent correspondant.
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.
VAR
start: BOOL:=FALSE;
(*activates the function*)
specify_value: DWORD:=0;
(*stores the control data*)
send_address: WORD:=0;
(*Starting 16-bit area for
storing source data*)
dest_address: WORD:=0;
(*Type of destination
operands for storing data
in the destination station*)
n: INT:=0;
END_VAR
La fonction est exécutée lorsque la variable start est sur TRUE.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_CONTACT,,start,3,1,5,3,);
B(B_F,F145_SEND!,Instance,9,0,17,7,,?DEN?Ds1_Control?Ds2_Start?Dd_AdrType?Dd_AdrOffs?AENO);
B(B_VARIN,,specify_value,7,2,9,4,);
B(B_VARIN,,send_address,7,3,9,5,);
B(B_VARIN,,dest_address,7,4,9,6,);
B(B_VARIN,,5,7,5,9,7,);
L(1,2,3,2);
L(5,2,9,2);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF start then
F145_SEND( specify_value, send_address, dest_address, 5);
END_IF;