Sew Eurodrive DFS11B Manual Del Usuario página 105

Interface de bus de campo profibus dp-v1 con profisafe
Tabla de contenido

Publicidad

VAR_TEMP
MVLK_Resp : STRUCT
//Estructura Movilink Response
ResponseReference : BYTE ;
ResponseId : BYTE ;
//RESP: Response ID
Axis : BYTE ;
//RESP: Axis
No_of_Parameter : BYTE ;
Attachment : ARRAY
[0 .. 7 ] OF //REQ: Datos
BYTE ;
END_STRUCT ;
fTempError : BOOL ;
fTempBusy : BOOL ;
fTempDone : BOOL ;
fTempValid : BOOL ;
dwTempStatus : DWORD ;
END_VAR
BEGIN
NETWORK
TITLE =Utilizar parámetros de transferencia en la estructura Movilink
U
#fActivate;
FP
#fAuxflag; //Si no se inicia ni se procesa ningún servicio
O
#fBusy; //...de parámetro,
SPBN
END; //...se abandona la función
U
#fStaticBusy; //Si está activado static Busy, ya se había efectuado el servicio WRITE,
SPBN
NEWR; //saltar en este caso a otra consulta
U
#fDPV1WRITEDone; //Si se ha finalizado sin fallo el servicio WRITE, saltar a READ
SPB
READ;
SPA
WRIT; //De lo contrario, saltar a WRITE
NEWR: NOP
0; //Inicialización:
UN
#fStaticBusy; //Bits y valores de salida se resetean
S
#fStaticBusy; //Salida y bit de marca Busy se resetean
S
#fBusy;
R
#fDone; //DoneBit se resetea
L
0;
T
#bError; //Valores de salida, fallos y datos se ponen a CERO
T
#dwData;
L
#Drive_IO_Address; //Convertir DriveAddress de Int a DWord
T
#dwStaticDriveAddr;
//Llevar los datos a estructura de Movilink (aquí se suministran los parámetros de entrada sólo
//para los valores variables de la estructura)
L
#bAxis;
T
#MVLK_Req.Axis;
L
#bService; //Byte de servicio se multiplica con 10 hex
SLW
4;
T
#MVLK_Req.Attribute;
L
#bService;
SPL
ERUI; //Saltar a servicio Error MVLK
SPA
ERUI; // 0x00 No Service
SPA
ZEHN; // 0x01 READ Parameter
SPA
SEXZ; // 0x02 WRITE Parameter
SPA
SEXZ; // 0x03 WRITE Parameter volatile
SPA
ZEHN; // 0x04 READ Min
SPA
ZEHN; // 0x05 READ Max
SPA
ZEHN; // 0x06 READ Default
SPA
ZEHN; // 0x07 READ Scale
SPA
ZEHN; // 0x08 READ Attribute
SPA
ZEHN; // 0x09 READ EEPROM
ERUI: NOP
0; // Fallo servicio MVLK no permitido
L
3; //Fallo Movilink
T
#bError;
L
DW#16#501; //MLER_ILLEGAL_SERVICE
SET
;
S
#fDone; //Busybit y Donebit se resetean
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WRITEDone;
BEA
; //Finalizar la función
SEXZ: NOP
0;
SET
;
S
#fStaticWRITEReq; //Indica para la evaluación de los datos que fue un MVLK-WRITE-Request
L
16;
SPA
LEN; //Saltar a definición de longitud
ZEHN: NOP
0;
SET
;
R
#fStaticWRITEReq; //Indica para la evaluación de los datos que fue un MVLK-READ-Request
L
10;
LEN:
NOP
0;
T
#iStaticReqLength;
L
#wParameterIndex;
T
#MVLK_Req.ParameterNumber;
L
#wSubIndex;
T
#MVLK_Req.Subindex;
L
#dwWRITEData; //Datos se escriben en la estructura, no importa si se trata de acceso de
T
#MVLK_Req.WRITEData;
Handboek – Veldbusinterface DFS11B PROFIBUS DP-V1 met PROFIsafe
Planificación del proyecto de un maestro C1
//RESP: Response reference
//RESP: No. of parameters
//escritura o de lectura
Funciones de PROFIBUS DP-V1
I
9
0 0
105

Publicidad

Tabla de contenido
loading

Tabla de contenido