6. `
Se quiere que la vagoneta efectúe el siguiente proceso cada vez que pulsemos el botón de
arranque:
Debe cargar material en el área de carga (nivel 1) en un proceso que dura 5 segundos.
Tras cargar, dirigirse al puesto de trabajo situado en el nivel 2 y efectuar la descarga del
materia, este proceso dura 4 segundos. Una vez concluido el proceso de descarga volver a
situarse en el área de carga. Repetir el mismo proceso para los puestos de trabajo situados en
los niveles 3, 4 y 5.
Durante la etapa de carga debe mantenerse encendido el indicador luminoso correspondiente
al área de carga, de igual forma durante la descarga se mantendrá encendida la luz
correspondiente al puesto de trabajo donde se efectúa la descarga.
Notas:
Se pide programar en lenguaje literal estructurado.
Utilizar una palabra interna para indicar en cada instante el puesto de trabajo sobre el
que se está actuando.
8. (* Paso al estado de movimiento hacia derecha *)
IF %TM0.Q THEN
SET %M2;
RESET %M1;
END_IF;
(* Elijo hasta donde moverme *)
IF(%MW0=2)THEN
IF %M2 AND %I1.9 THEN
SET %M3;
RESET %M2;
END_IF;
ELSIF(%MW0=3)THEN
IF %M2 AND %I1.10 THEN
SET %M3;
RESET %M2;
END_IF;
ELSIF(%MW0=4)THEN
IF %M2 AND %I1.11 THEN
SET %M3;
RESET %M2;
END_IF;
ELSE
IF %M2 AND %I1.12 THEN
SET %M3;
RESET %M2;
END_IF;
END_IF;
9. (* Etapa de descarga *)
IF RE %M3 THEN
START %TM1;
ELSIF FE %M3 THEN
DOWN %TM1;
END_IF;
(* Vuelta a zona de carga *)
IF %M3 AND %TM1.Q THEN
SET %M4;
RESET %M3;
END_IF;
(* Acciones a realizar al llegar a la zona de carga *)
IF %M4 AND %I1.8 THEN
SET %M1;
RESET %M4;
%MW0:=%MW0+1;
END_IF;
END_IF;
!(* Activacion de las salidas *)
%Q2.1:=%M2;
%Q2.0:=%M4;
!(* Vuelta al estado de reposo *)
IF %MW0>5 THEN
SET %M0;
RESET %M1;
RESET %M10;
END_IF;
12. Etapa 3
! FOR %MW0:=0 TO %MW4 DO (* Recorremos las %MW4 últimas salidas *)
%MW1:=15-%MW0; (* para empezar por la última *)
SET %Q2.0[%MW1]; (* las activamos *)
END_FOR;
Etapa 4
Acción continua:
! %Q2.0:16:=%MW10; (* Copiamos en la tabla de salidas el contenido de
MW10 , donde se ha guardado la tabla de entrada*)
Acción desactivación:
! %Q2.0:16:=0;