Sei sulla pagina 1di 6

Universidad de Oviedo

El Autmata S7 200
Area de Ingeniera de
Problemas
Sistemas y Automtica

PROBLEMA 7.7
Disear el programa de control de un autmata programable que realice el enunciado
siguiente:
Un semforo ha de regir el paso de vehculos, pero ste estar sujeto a una variacin
en su temporizacin, segn el nmero de vehculos que se encuentren en cola de
espera. La calle, como se puede apreciar en el dibujo, est dividida en dos carriles con
sus respectivos sensores (S1, S2) y (S3, S4).

S1 S2

S3 S4

Cuando en uno cualquiera de los carriles se encuentran 20 o ms vehculos la


temporizacin ha de ser la siguiente:
verde: 30 s mbar: 5 s fijo y 3 s a 2 Hz rojo: 15 s
Cuando tengamos menos de 20 vehculos en ambos carriles la temporizacin ha de
ser la siguiente:
verde: 20 s mbar: 5 s fijo y 3 s a 2 Hz rojo: 20 s
El valor de la cuenta efectiva para efectuar el cambio de la secuencia de la
temporizacin es la que realiza desde el momento en que el semforo se pone en rojo
hasta un instante antes de producirse el cambio a verde.
Nota:
Se supone que los carriles son de direccin nica y no se puede cambiar de
uno a otro.
Los vehculos que se controlan son solamente automviles (no bicicletas).
Hacer una subrutina para obtener la temporizacin de la luz roja y verde.

Algoritmo subrutina: Algoritmo Programa principal:


Mirar contadores Control de los contadores
Cargar T_Rojo y T_Verde con el valor Llamo a la subrutina al principio del ciclo
adecuado en funcin de los contadores Calculo Tempo = T_Verde + 8 + T_Rojo
Lanzo un temporizador de valor Tempo
Programo un oscilador
Calculo valor T_AmbarF y T_AmbarI
Gestiono las salidas
J. Argelles / J. Alonso / V. Gonzlez 1
Prob0707, PRINCIPAL (OB1)

Direccin Nombre Tipo var. Tipo de datos Comentario


TEMP INT
TEMP INT
TEMP

1/5
Prob0707, PRINCIPAL (OB1)

Network 1 Control de los contadores

Ent_via1 N_C0
CU CTUD

Sal_via1
CD

Inicio
P R

+200 PV

Network 2
Ent_via2 N_C1
CU CTUD

Sal_via2
CD

Inicio
P R

+200 PV

Network 3 LLamada a la subrutina al principio del ciclo

Inicio Ciclo SBR_0


/ P EN

T_Verde T_Verde
T_Rojo T_Rojo

Network 4 Clculo del valor de temporizacin = Tempo

SM0.0 ADD_I ADD_I


EN ENO EN ENO

T_Verde IN1 OUT Tempo T_Rojo IN1 OUT Tempo


+8 IN2 Tempo IN2

Network 5
Inicio Ciclo Ciclo
/ IN TON

Tempo PT

Network 6 Control del Oscilador

T32 T32
/ IN TON

+500 PT

Network 7
T32 M0.0
<=I
+250
Network 8
Inicio Ciclo L_Verde
<=I
T_Verde

2/5
Prob0707, PRINCIPAL (OB1)

Network 9
SM0.0 ADD_I ADD_I
EN ENO EN ENO

T_Verde IN1 OUT Amb_F Amb_F IN1 OUT Amb_I


+5 IN2 +3 IN2

Network 10 Salidas

Inicio Ciclo Ciclo L_Ambar


>I <=I
T_Verde Amb_F
Ciclo Ciclo M0.0
>I <I
Amb_F Amb_I
Network 11

Inicio Ciclo Ciclo L_Roja


>I <=I
Amb_I Tempo

3/5
Prob0707, SBR_0 (SBR0)

Direccin Nombre Tipo var. Tipo de datos Comentario


EN IN BOOL
IN INT
IN_OUT
LW0 T_Verde OUT INT
LW2 T_Rojo OUT INT
OUT
TEMP

4/5
Prob0707, SBR_0 (SBR0)

Network 1 Asigancion de tiempos

Cuando hay menos de 20 coches M0.0 = 0


Si hay ms de 20 coches M0.0 = 1

N_C0 M0.0
>=I
+20
N_C1
>=I
+20
Network 2
M0.0 MOV_W MOV_W
EN ENO EN ENO

+300 IN OUT T_Verde +150 IN OUT T_Rojo

Network 3
M0.0 MOV_W MOV_W
/ EN ENO EN ENO

+200 IN OUT T_Verde +200 IN OUT T_Rojo

5/5