Définir les paramètres de communication pour le port CPU/SCU/MCU
Cette instruction FP envoie les modifications des paramètres de communication à un module. Les modifications sont spécifiées par s2_dutParameter pour le port de communication indiqué par s1_Port. Si le mode de communication est défini sur Liaison API, les paramètres de la liaison API peuvent être spécifiés par s3_dutPlcLinkParameter.
Lorsque vous utilisez cette instruction, veillez à ce que le mode de communication du port approprié soit sur Liaison API.
Entrée
Indique les ports de communication (selon le type d’API) :
Port COM, par ex. SYS_COM0_PORT
Port Ethernet, par ex. SYS_ETHERNET_USER_CONNECTION_1
MCU/SCU, par ex. 16#xx01 (xx = numéro du connecteur) dans COM01
Paramètres à définir pour le port CPU/SCU/MCU
Paramètres à définir pour la Liaison API
Sortie
Adresse de départ de la zone mémoire dans l’unité maître qui sauvegarde le résultat du traitement (1 mot)
Contenu du résultat d_Result
FALSE : Exécution terminée normalement
TRUE : Exécution terminée anormalement
FALSE : Process terminé
TRUE : Process en cours
Avant d’exécuter l’instruction, vérifiez que le bit 15 (drapeau de process en cours) de la zone de sauvegarde du résultat, spécifiée par dResult, est sur FALSE.
Si la modification des paramètres est exécutée pour un port COM alors qu’un envoi/une réception est en cours, l’envoi/la réception est annulé et les paramètres sont modifiés. Les données reçues sont perdues. L’envoi est suspendu.
Lorsque la requête de modification est en cours de traitement, le bit 15 de la zone de sauvegarde du résultat d_Result passe à TRUE. Lorsque le process est terminé, il devient FALSE.
Le résultat du process est sauvegardé dans la zone spécifiée par d_Result. Si une erreur apparaît, le drapeau du résultat de l’exécution (bit 14) devient TRUE. Le code d’erreur est sauvegardé dans les octets de poids faible de d_Result.
Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.
Si le mode de communication du port approprié n’est pas défini sur Liaison API.
Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.
Si le mode de communication du port approprié n’est pas défini sur Liaison API.
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
nPort: INT;
dutParameter: FP_COM_PARAMETER_DUT;
dutPlcLinkParameter: FP_COM_PLCLINK_PARAMETER_DUT;
wResult: WORD:=0;
bEnable: BOOL:=FALSE;
END_VAR
La fonction est exécutée lorsque la variable bEnable est définie sur TRUE.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_CONTACT,,bEnable,3,2,5,4,);
B(B_F,FP_COM_SET_PARAMETER!,,12,1,25,7,,?DEN?Ds1_Port?Ds2_dutParameter?Ds3_dutPlcLinkParameter?AENO?Ad_Result);
B(B_VARIN,,nPort,10,3,12,5,);
B(B_VAROUT,,wResult,25,3,27,5,);
B(B_VARIN,,dutParameter,10,4,12,6,);
B(B_VARIN,,dutPlcLinkParameter,10,5,12,7,);
L(1,0,1,7);
L(1,3,3,3);
L(5,3,12,3);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (bEnable) then
FP_COM_SET_PARAMETER(s1_Port := nPort,
s2_dutParameter := dutParameter,
s3_dutPlcLinkParameter := dutPlcLinkParameter,
d_Result => wResult);
end_if;