5.5
Ejemplo de aplicación
En el siguiente ejemplo se lee por completo un transpondedor MDS D124 con un bucle
simple y un lector IO-Link RF2X0 en modo 2. Los valores medidos y válidos se guardan en
un bloque de datos global.
Tabla 5- 1
Ejemplo de programación
Código de programa
//Si no hay transpondedor en el campo, salta a la evaluación de errores
U
"ANW";
SPBN
ende;
//Ejecutar el bucle de lectura solo una vez
U
"Once_flag";
SPB
ende;
//Si se produce un error, incrementar contador de errores
U
"Error";
SPB
erro;
//Nuevo comando de lectura si <bit Ready> está activo y no hay <error>
U
"Done";
SPBN
ende;
//¿La dirección es <comando de lectura> = <acuse de lectura>?
//La dirección 10 está ajustada (véase configuración HW)
L
"PAE_Status";
UW
W#16#2;
L
B#16#2;
==I
;
U(
;
L
"PAA_Adr_L";
L
"PAE_Adr_L";
==I
;
)
;
SPB
adre;
SPA
Lese;
//Guardar datos de dirección de transpondedor actual en DB de datos
adre: L
"PAE_Adr_L";
SLD
3;
T
"lwa";
L
"PAE_Data";
AUF
"FC1Daten";
T
DBD ["lwa"];
L
"PAE_Adr_L";
+
B#16#4;
T
"FC1Daten".dbadresse;
//Nuevo comando de lectura si <bit Ready> está activo y no hay <error>
Lectura: L
B#16#2;
T
"PAA_CMD";
//Carga la última dirección válida
L
"FC1Daten".dbadresse;
T
"PAA_Adr_L";
//Aumentar dirección de lectura (área de direcciones 112 bytes = 70 Hex para MDS D124)
L
"FC1Daten".dbadresse;
SIMATIC RF200 IO-Link
Manual de sistema, 03/2012, C79000-G8978-C276-01
// Comando de lectura
// = Acuse
//Comentarios
// Presencia (I10.5)
// Ejecutar bucle una vez (M2.0)
// Bit de error (I10.6)
// => Cancelar en caso de error
// Bit Ready (I10.7)
// PII : CMD
// PIQ : Adr-L
// PII : Adr-L
// Acuse válido => aplicar datos
// => Emitir comando de lectura
// PII : Adr-L
// Ampliar a dirección de 16 bits
// Memoria de la dirección actual (MD3)
// PII : Data(Byte4-7)
// DB de memoria (DB100)
// Introducir datos leídos en DB
// Aumentar dirección en 4 bytes
// Guardar nueva dirección de lectura
// Comando de lectura
// PIQ : CMD
// DB de memoria (DB100.DBB114)
// PIQ : Adr-L
// DB de memoria (DB100.DBB114)
Puesta en servicio y parametrización
5.5 Ejemplo de aplicación
71