Télécharger Imprimer la page

Sew Eurodrive UFP11A Manuel page 47

Publicité

Mode de
En règle générale, le mode de fonctionnement DP-V1 peut être activé pour la détermi-
fonctionnement
nation d'un maître C1. Tous les esclaves DP dont les fonctions DP-V1 sont activées dans
(mode DP-V1)
leur fichier GSD et supportant le protocole DP-V1 seront alors pilotés en mode DP-V1.
Les esclaves DP standard seront encore pilotés via PROFIBUS DP ; il en découlera une
exploitation mixte de modules compatibles DP-V1 ou DP. Selon l'étendue des fonction-
nalités du maître, il est également possible d'exploiter en mode DP simple un participant
compatible DP-V1 ayant été déterminé via un fichier GSD DP-V1.
6.5
Annexes
Exemple de
Le programme STEP7 suivant montre la procédure d'accès aux paramètres via les
programme pour
blocs de fonctions STEP7 SFB 52/53. Ce texte peut être copié et importé/transcrit en
automate
tant que programme source STEP7.
SIMATIC S7
Exemple : bloc fonctionnel FB5 "DPV1_MoviLink_FB"
FUNCTION_BLOCK FB 5
TITLE =DPV1_Movilink_FB
//AVERTISSEMENT!
//Cet exemple de programme ne donne qu'une procédure de principe.
//SEW n'endosse aucune responsabilité d'ordre juridique ou de toute autre nature concernant des
//conséquences entraînées par des erreurs de programmation.
//
//Conditions à respecter :
// - maître DP de la famille S-300 ou S-400 bénéficiant des fonctionnalités DP-V1 entre
// - produits SEW compatibles DP-V1 (c'est-à-dire utilisant le fichier
// SEWA600x.GSD)
//
//Ce module fonctionnel opère un échange de paramètres par le canal DP-V1 entre
//automate et variateur. Sachant que, sur le canal DP-V1, il s'agit d'échanges acycliques, il
//faut maintenir l'appel de ce module fonctionnel jusqu'à l'accomplissement de l'échange de
//données (c'est-à-dire pendant toute la durée entre la demande d'exécution du module par
//fActivate et réception du compte-rendu d'exécution par fDone).
AUTHOR : SEW
FAMILY : Movilink
VERSION : 0.1
VAR_INPUT
Drive_IO_Address : INT ;
bService : BYTE ; //octet qui définit le service Movilink demandé : 0x01 = Read, 0x02 = Write, etc.
bAxis : BYTE ;
//0 pour un axe ; sous-adresse en cas d'utilisation de l'UFP11A
wParameterIndex : WORD ;
wSubIndex : WORD ;
//Subindex Movilink
dwWriteData : DWORD ; //écriture des données
InstanzDB_SFB52 : BLOCK_DB ;
InstanzDB_SFB53 : BLOCK_DB ;
END_VAR
VAR_OUTPUT
bError : BYTE ;
//0 = pas de défaut ; 1 = défaut S7 ; 2 = time-out ; 3 = défaut Movilink
dwData : DWORD ;
//si fError=0 : données ; si fError=1 : Error-Code S7 ; les autres valeurs sont indéfinies
END_VAR
VAR_IN_OUT
fActivate : BOOL ;
//demande d'exécution de la fonction
fBusy : BOOL ;
//bit Busy. Reste à TRUE jusqu'à ce que la fonction se termine ou que le time-out
fDone : BOOL ;
//déclenche. Indique que la fonction s'est terminée (avec ou sans défaut)
END_VAR
VAR
fStaticBusy : BOOL ;
//bit de mémorisation du bit Busy
fStaticWriteReq : BOOL ;
fDPV1WriteDone : BOOL ;
fAuxflag : BOOL ;
dwStaticDriveAddr : DWORD ;
iStaticReqLength : INT ; //Longueur des télégrammes à transmettre
MVLK_Req : STRUCT
//structure Movilink WriteRequest
RequestReference : BYTE
RequestId : BYTE
:= B#16#40;
Axis : BYTE ;
//REQ: Axis
No_of_Parameter : BYTE
Attribute : BYTE ;
//REQ: Attribut
No_of_Elements : BYTE ;
ParameterNumber : WORD ; //REQ: Parameternumber
Subindex : WORD ;
//REQ: Subindex
Format : BYTE
:= B#16#43;
Values : BYTE
:= B#16#1;
WriteData : DWORD ;
//REQ: valeur 32 bits à écrire
END_STRUCT ;
TimeoutCounter : WORD ;
END_VAR
Manuel Interface bus de terrain UFP11A pour PROFIBUS DP-V1
//adresse (dans la périphérie de l'automate) du variateur
//index Movilink du paramètre
//instance de la fonction-système SFB52; nécessaire pour DPV1_READ
//instance de la fonction-système SFB53; nécessaire pour DPV1_WRITE
//TRUE en cas de requête Movilink WriteReq ; FALSE en cas de requête ReadReq
//indique si la requête DP-V1 a été exécutée
//adresse I/O du convertisseur
:= B#16#1;
//REQ: Request Reference
//REQ: Request ID
:= B#16#1;
//REQ: No of Parameters
//REQ: No of Elements
//compteur Time-out
Fonctions DP-V1
Annexes
6
47

Publicité

loading