Está en la página 1de 12

S7-200

Escalado de valores analgicos

Ejemplo N 38

SIMATIC
Ejemplos S7-200
Grupo
6

Tema
Escalado de valores analgicos

Descripcin resumida
Este programa lee un valor analgico para la entrada de uno de los canales de entrada
analgicos en el ST-200 y alimenta el valor de salida XQ a una zona escalada por el usuario.
Todos los parmetros necesarios deben configurarse con valores en el segmento de
inicializacin del programa. Las siguientes variables son relevantes para la frmula de
escalado:
Ov = valor de salida escalado
Iv = valor analgico de entrada
Osh = lmite superior de la escala para el valor de salida escalado
Osl = lmite inferior de la escala para el valor de salida escalado
Ish = lmite superior de la escala para el valor analgico de entrada
Isl = lmite inferior de la escala para el valor analgico de entrada
El esquema de escalado puede representarse de la siguiente manera:
Valores
salida
escalados
Osh

Ov
Valores
Osl

Isl

Iv

Ish

analg
entrada

La siguiente frmula de clculo del valor escalado puede obtenerse del diagrama:
Ov = [(Osh - Osl) * (Iv - Isl) / (Ish - Isl)] + Osl

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

Escalado de valores analgicos

Ejemplo N 38

Diagrama de bloques
Entrada

P1
Q0.0

Lquido
P2
Q0.1

0-10V

Salida

Transductor de
presin
diferencial

4-20mA

Indicador
analg.
24V
0V

A+ A-

CPU 214

Vo Io L+ M

EM 235

I0.0
I0.1
Abrir Cerrar
entrada entrada

TD 200

F5
F1

F6
F2

F7
F3

F8
F4
SHIFT

ESC ENTER

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

Escalado de valores analgicos

Ejemplo N 38

Estructura del programa


C o m ienzo
program a

Bloque datos:
Configurar TD200
Inicializar - valores de
e s c a l a m xim o y m nim o

Cargar valores en Mem oria


V para preparar para
subrutina 0

SBR: 0
Valores de escala para
salida analgica

Truncar valor
retornado y mover
a AQW
to the AQW
SBR:0
Escalar valores
para TD 200

Habilitar m ensaje de
TD 200 adecuado

Abrir entrada correspondiente o


vlvula de salida si se indica

Fin
program a

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

Escalado de valores analgicos

Ejemplo N 38

Requisitos de hardware
1. Definicin de una zona de entrada para mdulos analgicos EM235
Para definir la zona operativa de la tensin de entrada o intensidad de entrada, existen 6
microinterruptores DIP en la parte inferior del mdulo EM235. Los potencimetros OFFSET y
GAIN sirven para calibrar los mdulos de entradas analgicas.

0 to 200ma
Range
Margen
hasta
20 mA
OFF
ON
1

11

CompenMicrointerruptores
Dip de configuracin
Offset Ganancia
Gain
Configuration
Dip-Switches
sacin

Descripcin del programa


Un recipiente cerrado aloja en su interior un lquido. Se desea conocer el nivel actual del
lquido permanentemente a travs del instrumento indicador. El programa monitoriza el nivel
observando si est dentro de unos lmites especificados y, si se alcanza un nivel mximo o
mnimo, esta situacin se sealiza a travs del TD200, cerrndose la vlvula de entrada o de
salida.
- El transductor de presin diferencial entrega una corriente (4 - 20mA) proporcional al nivel
del lquido a la entrada del mdulo de entradas analgicas.
- El mdulo analgico EM235 debe calibrarse de modo que, a un nivel de 10m, el valor de la
intensidad analgica, 20 mA, se convierte en un valor de 32000 y a 0 m (4mA) en un valor de
3200. El programa escala los valores digitales convertidos a altura (metros).
- El programa de usuario verifica los valores introducidos para asegurarse de que no rebasan
el lmite mximo de 10m. Cuando el lquido alcanza este nivel, se visualiza el mensaje
alcanzado nivel mximo a travs del TD200. Simultneamente, se activa un bit de salida para
cerrar la vlvula de entrada.
- El lquido no debe caer por debajo del nivel mnimo de 1 m. Si se alcanza este lmite, el
programa visualiza el mensaje Alcanzado nivel mnimo a travs del TD200 y activa la salida
para cierre de la vlvula de salida.
- Para el indicador de nivel de lquido, debe generarse la tensin a travs del mdulo de
salidas analgicas. Esta tensin se genera grabando el correspondiente valor digital en el
AQW o palabra de salida analgica.
- El mdulo de salidas analgicas alimenta el nivel de lquido (entre 0m y 10m) a un
instrumento de medida como tensin entre 0 y 10V. La indicacin analgica de un instrumento
de medida responde a la tensin con una inclinacin de la aguja proporcional al nivel del
lquido.
La frmula escalar cualquier valor determinado entre cualesquiera puntos mximo y mnimo
determinados de la escala. Este programa, en concreto, recibe la palabra de entrada analgica
(AIW) y la escala tanto al TD 200 como al mdulo de salidas analgicas. En primer lugar, el
programa lee la palabra AIW, que es un valor comprendido entre 4 y 20 mA, y lo escala a un
valor entre 3200 y 32000. El valor, a continuacin, se escala al AQW, que oscila entre 0 y
32000. A continuacin, el AIW se escala al TD 200, que tiene un valor de escala mnimo de 0 y
un valor de escala mximo de 10.

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

Escalado de valores analgicos

Ejemplo N 38

Listado del programa


// Ttulo = Monitorizacin de nivel de lquido con valores analgicos escalados:
// El tamao de programa es 100 palabras.

LD
MOVD
MOVW
DTR

SM0.0
0
AIW0
AC1

AC1
AC1
VD500

S7-200 Tips & Tricks


C79000-G7078-C214-01

// Siempre
// borrar AC1
// mover palabra de entrada analgica 0 a AC1
// convertir valor de AC1 de decimal a real

S7-200

Escalado de valores analgicos

Ejemplo N 38

//Los valores de escalado mximo y mnimo para AIW0, AQW0 y el TD200 deben moverse a ubicaciones de
// almacenamiento temporales para su utilizacin en la subrutina 0.
//
LD
SM0.0
// Siempre
MOVD
VD500
VD1000
// mover AIW0 a VD1000
MOVD
VD200
VD1004
// mover valor mx._escala AIW (32000) a VD1004
MOVD
VD204
VD1008
// mover valor mn._escala AIW (3200)a VD1008
MOVW
VW208
VW1012
// mover valor mx._escala AIW (32000) a VD1012
MOVD
VD212
VD1016
// mover valor mn. _escala AQW (0) a VD1016
CALL
0
// llamar a subrutina 0

LD
TRUNC
MOVW

SM0.0
VD2000
AC1

LD
MOVD
MOVD
CALL

SM0.0
VD216
VD220
0

AC1
AQW0

VD1012
VD1016

// Siempre
// Truncar valor enviado desde SBR 0 y colocarlo en AC1
// mover valor a palabra de salida analgica

// Siempre
// mover TD200 valor mx._escala (10) a VD1012
// mover TD200 valor mn._escala (0) a VD1016
// llamar a subrutina 0

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

Escalado de valores analgicos

Ejemplo N 38

LD
MOVR
*R
TRUNC
MOVW
=

SM0.0
VD2000
AC1
KR+100.000 AC1
AC1
AC1
AC1
VW116
V10.7

// Siempre
// mover valor devuelto de SBR 0 a AC1
// multiplicar valor por 100.00
// truncar valor en AC1
// mover el valor en AC1 al val. de pal. incrustada para indic. en TD200
// habilitar mensaje de TD200

LDR>=
=

VD2000
V10.6

VD224

// Si el valor de SBR 0 es >= Lmite superior,


// habilitar mensaje Alcanzado valor mximo

LDR<=
=

VD2000
V10.5

VD228

// Si el valor de SBR 0 es <= Lmite inferior,


// habilitar mensaje Alcanzado valor mnimo

LDN
A
AN
=

V10.6
I0.0
Q0.1
Q0.0

S7-200 Tips & Tricks


C79000-G7078-C214-01

// Contenedor no lleno,
// y Abrir entrada activada,
// y vlvula de salida no esta abierta,
// abrir vlvula de entrada

S7-200

LDN
A
AN
=

Escalado de valores analgicos

V10.5
I0.1
Q0.0
Q0.1

Ejemplo N 38

// Nivel no por debajo de mnimo,


// y Abrir salida activada,
// y vlvula de entrada no est abierta,
// abrir vlvula de salida

MEND

// Subrutina 0:
//
// La SBR0 es responsable de ejecutar las operaciones matemticas que escalan
// la palabra de entrada analgica para el TD200 y el AQW0.
// La frmula es la siguiente:
//
Ov = [(Osh - Osl) * (Iv - Isl) / (Ish - Isl)] + Osl
//
SBR
0
// Subrutina 0
LD
SM0.0
// Siempre
MOVR
VD1012
AC1
// mover valor mx.escala a AC1
-R
VD1016
AC1
// y deducir valor mn.e scala de 1
MOVR
VD1004
AC2
// mover valor mx.escala a AC2
-R
VD1008
AC2
// y deducir valor mn.escala de AC2
MOVR
VD1000
AC3
// mover AIW0 a AC3
-R
VD1008
AC3
// y deducir valor mn._scale AIW de AC3

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

LD
/R
*R
MOVR
+R

Escalado de valores analgicos

SM0.0
AC2
AC1
AC3
VD1016

AC3
AC3
VD2000
VD2000

RET

S7-200 Tips & Tricks


C79000-G7078-C214-01

Ejemplo N 38

// Siempre
// dividir el valor en AC3 entre el valor en AC2
// multiplicar el valor en AC1 por AC3
// aadir el valor en AC3 a VD1016
// y colocar la suma en VD2000

//Retorno

S7-200

Escalado de valores analgicos

Ejemplo N 38

//

// Bloque de datos DB1:


// El bloque de parmetros de TD200 para visualizacin
// del mensaje con el valor escalado del nivel de
// lquido medido en un contenedor y los avisos
// cuando se alcanzan los lmites.
//
VB0
' TD'
// Identificacin del TD200
VB2
16#10
// Idioma - Ingls, actualizacin lo ms rpido
//posible
VB3
16#00
// Indicacin con 20 caracteres
VB4
3
// N de mensajes = 3
VB5
0
// Marca MB0 para teclas F
VW6
100
// VB100 = comienzo de mensaje
VW8
10
// VB10 = direccin de bits habilitacin mensajes
VB100
' Nivel lquido'
// Texto 1 = 12 caracteres para Mensaje 1
VB112
'= '
// = y espacio en blanco
VB114
16#00
// MSB de byte de formato - sin procesamiento, sin
// reconocimiento
VB115
16#12
// LSB de byte formato - 1 palabra con
// 2 posiciones despus de punto decimal con
// signo
VB116
16#00
// Valor palabra incrustada - MSB
VB117
16#00
// Valor palabra incrustada - LSB
VB118
' m'
// Texto 2 = 1 carcter y un espacio
VB120
' Alcanzado nivel mx. ' // Texto 1 = 20 caracteres del mensaje 2
VB140
' Alcanzado nivel mn '
// Texto 1 = 20 caracteres del mensaje 3
//
// Inicializacin:
//
VD200
32000.0
//Mx_Escala AIW
VD204
3200.0
//Mn_Escala AIW
VD208
32000.0
//Mx_Escala AQW
VD212
0.0
//Mn_Escala AQW
VD216
10.0
//Mx_Escala TD200
VD220
0.0
//TD200 Mn_Escala
VD224
10.0
//Comprobacin de lmite superior
VD228
1.0
//Comprobacin de lmite inferior
//

10

S7-200 Tips & Tricks


C79000-G7078-C214-01

S7-200

Escalado de valores analgicos

Ejemplo N 38

Notas sobre conversin


Para convertir de IEC a S7-Micro/DOS AWL:
Anteponga una K a todas las constantes numricas no hexadecimales (p.ej., 4
K4)
Sustituya16# por KH para todas las constantes hexadecimales (p.ej., 16#FF
KHFF)
Las comas identifican divisiones de campo. Emplee las teclas de flecha o la tecla
TAB para alternar entre campos.
Para convertir un programa en S7-Micro/DOS AWL a KOP, cada segmento debe
comenzar por la palabra NETWORK seguida de un nmero. Cada segmento de
este programa de Ejemplo de Aplicacin est identificado por un nmero en el
esquema de contactos. Utilice la instruccin INSW del men EDIT para entrar en un
nuevo segmento.
Las instrucciones MEND, RET, RETI, LBL, SBR e INT todas tienen sus propios
segmentos. No son posibles los comentarios de lnea, identificados por // con S7Micro/DOS, pero s son posibles los comentarios de segmento.

El bloque de datos mostrado se cre en Micro/Win; en Micro/DOS utilice el editor de memoria


V para introducir un bloque de datos (consulte la gua del usuario de Micro/DOS). Observe que
en Micro/Win:
16#.. especifica un valor hexadecimal
text representa un valor de cadena

Notas generales
Los Ejemplos de Aplicacin para SIMATIC S7-200 se facilitan para ofrecer a los usuarios del
S7-200 indicaciones orientativas sobre cmo pueden resolverse, desde el punto de vista de la
tcnica de programacin, determinadas tareas con este PLC. Estas instrucciones no tienen por
finalidad abarcar todos los detalles o variaciones del equipo, ni tienen presente cualquier
eventualidad posible. La utilizacin de los Ejemplos de Aplicacin para el S7-200 es libre.
Siemens se reserva el derecho de introducir cambios en las especificaciones aqu mostradas o
realizar mejoras en cualquier momento sin previo aviso ni obligacin. Esto no exime al usuario
de la responsabilidad de seguir prcticas exactas para la aplicacin, instalacin, explotacin y
mantenimiento del equipo adquirido. Si surgiera algn conflicto entre la informacin general
contenida en esta publicacin, el contenido de los dibujos o esquemas o el material
complementario, o ambos, tendrn prioridad estos ltimos.
Siemens no asume ninguna responsabilidad, sea cual sea el motivo jurdico, por los daos o
lesiones personales derivados del uso de los ejemplos de aplicacin.
Reservados todos los derechos. Cualquier forma de duplicado o distribucin, incluso de
extractos, est permitida nicamente con la autorizacin expresa de SIEMENS.

S7-200 Tips & Tricks


C79000-G7078-C214-01

11

S7-200

12

Escalado de valores analgicos

Ejemplo N 38

S7-200 Tips & Tricks


C79000-G7078-C214-01

También podría gustarte