Está en la página 1de 5

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

EL RELOJ DE TIEMPO
REAL DEL PLC S7-200

Carlos Canto Q

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

EL RELOJ DE TIEMPO REAL


OPERACIN LEER RELOJ DE TIEMPO REAL READ_RTC

La operacin Leer reloj de tiempo real lee la hora y fecha actuales


del reloj y carga ambas en un bfer de 8 bytes (que comienza en la
direccin T).
RTC

READ_RTC
EN

ENO
BUFFER T

Carlos Canto Q

VB400 aaaa
VB401 mm
mm
VB402 dd
dd
VB403 hh
hh
VB404 min
min
VB405 ssss
VB406 0000
VB407 nd
nd

ao

mes

da
hora.

min
segs
Num. de da

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

EL RELOJ DE TIEMPO REAL


OPERACIN AJUSTAR RELOJ DE TIEMPO REAL SET_RTC
SET_RTC
EN

La operacin Ajustar reloj de tiempo real


escribe en el reloj la hora y fecha actuales
que estn cargadas en un bfer de 8 bytes
(que comienza en la direccin T).

ENO

Buffer T

RTC

Carlos Canto Q

SET_RTC
SET_RTC

VB400 aaaa
VB401 mm
mm
VB402 dd
dd
VB403 hh
hh
VB404 min
min
VB405 ss
ss
VB406 0000
VB407 nd
nd

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

EL RELOJ DE TIEMPO REAL

Todos los valores de la fecha y la hora se deben codificar en BCD (p.ej., 16#97
para el ao 1997). Utilice los siguientes formatos de datos:
Ao/mes

aamm

aa: 0 a 99

mm: 1 a 12

Da/hora

ddhh

dd: 1 a 31

hh: 0 a 23

Minutos/segundos

mmss

mm: 0 a 59

ss: 0 a 59

Da de la semana

dd: 0 a 7

1 = Domingo
0 = desactiva el da de la
semana (permanece 0)

El reloj de tiempo real se inicializa con la siguiente fecha y hora tras un corte de
alimentacin prolongado o una prdida de memoria:

Carlos Canto Q

Fecha:

01-Ene-90

Hora:

00:00:00

Da de la semana:

Domingo

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

INSTRUCCIONES DE COMPARACIN
La operacin Comparar byte se utiliza para comparar dos valores: IN1 e
IN2. Las comparaciones incluyen: IN1 = IN2, IN1 >= IN2, IN1 <= IN2,
IN1 > IN2, IN1 < IN2, o IN1 <> IN2.

Las comparaciones de bytes no llevan signo.En KOP, el


contacto se activa si la comparacin es verdadera.
IN1
==B
IN2

Carlos Canto Q

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

INSTRUCCIONES DE CONVERSION BCD-ENTERO-BCD


BCD_I
EN

ENO

IN

OUT

I_BCD
EN

ENO

IN

OUT

Carlos Canto Q

La operacin Convertir de BCD a entero


convierte el valor BCD de entrada (IN) en
un valor de entero y carga el resultado en
la variable indicada por OUT. El margen
vlido de IN est comprendido entre 0 y
9999 BCD.
La operacin Convertir de entero a
BCD convierte el valor entero de
entrada (IN) en un valor BCD y carga
el resultado en la variable indicada
por OUT. El margen vlido de IN est
comprendido entre 0 y 9999 enteros.

Facultad de Ciencias UASLP

Ejemplo1:

AUTMATAS PROGRAMABLES

Se desea implementar un programa que realice lo siguiente:

Al accionarse la entrada I0.0


Si el ao es 2005 se activar la
salida Q0.0
si estamos en el mes de abril se
accionar Q0.1
Si es el da lunes (2), se acciona
la salida Q0.2
Si es el da lunes (2), y son las
12:50 se acciona la salida Q0.3.

1)
2)
3)
4)

El buffer T
VB400

Ao

VB401

Mes

VB402

Da

VB403

Hora

VB404

Minuto

VB405

Segundo

VB406

Milisegundo

VB407

Da de la semana

Network1
I0.0

Leer Reloj

READ_RTC
EN
ENO
T

VB400
Network 2

Compara ao 2004

VB400
Q0.0
>=B
4
Network 3 Compara mes de Abril
VB401
Q0.1
>=B
4
Network 4 Compara da 1
VB407
Q0.2
>=B
2
Network 5 Compara da 1 a las 12:50
VB407
>=B
2

VB403
>=B
16#12

VB404
>=B
16#50

Q0.3

Todos los valores de la fecha y hora se deben de codificar en BCD.

Carlos Canto Q

Facultad de Ciencias UASLP

AUTMATAS PROGRAMABLES

Eejemplo2: Se desea corregir el ao del reloj de tiempo real


I2.1

READ_RTC
EN
VB400

Carga byte del ao al Acumulador 0

MOV_B
EN
VB400

IN

OUT

AC0

BUFFER T

INC_W
EN
AC0

IN

OUT

AC0

IN

OUT

READ_RTC
EN
VB400

Carlos Canto Q

VB400
VB401
VB402
VB403
VB404
VB405
VB406
VB407

0404
0505
0202
1010
3030
0202
0000
0404

ao 2004

mes mayo

da 02
10 hrs.

AC0

30 min
20 segs
miercoles

AC0

0404
+1
Incrementa ao +1
0505

Regresa byte de AC0 al buffer

MOV_B
EN
AC0

Pasa el RTC al Buffer que empieza en VB400

RTC

VB400

RTC

Actualiza
ActualizaRTC
RTC

VB400
VB401
VB402
VB403
VB404
VB405
VB406
VB407

0505
0505
0202
1010
3030
2020

0000
0404

Facultad de Ciencias UASLP

Ejemplo3:
I2.1

READ_RTC
EN

VB400

AUTMATAS PROGRAMABLES
se requiere que un motor conectado en la salida Q0.0
se prenda todos los domingos del ao en curso a las
2 pm, que se mantenga prendido por 35 minutos y
despus se apague.

MOV_B

; Cargar la hora enBCD al AC0

EN

VB403

IN

AC0

EN
IN

VB404

EN
IN

OUT

AC0
; Convertir valor de la hora en BCD a
entero (16 bits) y dejar en AC0

BCD_I
OUT

AC0

MOV_B

EN
IN

AC1

OUT

AC1
; Convertir los minutos de BCD a entero
(16 bits) y dejar en AC1

BCD_I
OUT

AC1
>=B
35

AC1
; si ya han transcurrido 35 minutos
apagar motor

M0.1

AC0

VB407

==B
14

==B
1

Carlos Canto Q

; Cargar los minutos en BCD a AC1

Q0.0
M0.1

; si es domingo y son las 14 horas prender motor en


Q0.0 y mantener prendido .

También podría gustarte