Você está na página 1de 31

CPR de Badajoz

Curso 2012 /2013


UD4.Procesado de seales analgicas.
Jos Mara Delgado Casado
Profesor Tcnico FP Instalaciones Electrotcnicas IES JAVIER GARCA TLLEZ (Cceres)
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Las seales de entrada / salida al / del PLC vistas hasta ahora eran todas seales digitales, que se caracterizan por tener nicamente dos estados: conexin
(1) y desconexin (0).
Los dispositivos detectores conectados a las entradas digitales son dispositivos todo / nada que nicamente pueden adoptar dichos estados, tanto
sensores electromecnicos (pulsadores, interruptores, nales de carrera, boyas de nivel...) como de estado slido (detectores inductivos, capacitivos, de
presencia,...).
UD4. Procesado de seales analgicas.
1.Seales digitales y seales analgicas.
De igual forma ocurre con los dispositivos accionadores y preaccionadores conectados a las salidas digitales del PLC. Dado que las salidas del PLC (a
rel o a transistor) slo poseen los estados de conexin / desconexin, los dispositivos conectados a ellos slo podrn distinguir entre estos dos estados,
emplendose habitualmente para ello rels y/o contactores.
Foto: directindustry.com Foto: fanell.com Foto: cabeco.com Foto: ledscontrol.com
Foto: directindustry.com Foto: rs-online.com
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
En el caso de las instalaciones trmicas y en otros muchos mbitos son corrientes dispositivos que no realizan una deteccin / accionamiento todo-nada
sino que realizan una medicin dentro de un rango, en funcin de la cual deben activarse / desactivarse procesos o realizar procesamiento de datos.
Los dispositivos que adoptan ms de un estado y que generan seales continuas (dato de informacin variable con el tiempo) en base a alguna magnitud
fsica, objeto de la medicin, se denominan dispositivos analgicos, y las seales que generan, seales analgicas.
En el caso de las instalaciones trmicas y de eciencia energtica, son corrientes dispositivos como:
- Medidores de temperatura (PT-100 o termopares).
- Medidores de caudal.
- Luxmetros.
- Sensores piezoelctricos de presin.
- Balastos electrnicos.
- Servomotores.
- Variadores de frecuencia.
- Electrovlvulas regulables.
- (...)
UD4. Procesado de seales analgicas.
1.Seales digitales y seales analgicas.
Foto: nissitec.com.ar
En los PLCs, la medicin de seales analgicas o el envo de valores analgicos a actuadores para actuar en consecuencia se consigue a travs de mdulos
de E/S analgicos, que realizan conversiones analgico / digitales para el procesado de seales.
Foto: grupohierros.com Foto: solostocks.com
Tanto para el procesado de entradas como de salidas analgicas, existen estndares de seal de envo / recepcin de informacin:
Estndar de tensin Estndar de corriente
0-10 Vcc 4-20 mA
-10 +10 Vcc 0-20 mA
2-10 Vcc 1-5 mA
0-5 mA
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Los mdulos de E/S analgicos de los PLCs transforman las seales analgicas a digitales (o viceversa, en el caso
de las salidas) asociando un rango de variacin de datos digitales a la informacin recibida / enviada desde / hacia el
sensor o actuador.
UD4. Procesado de seales analgicas.
1.Seales digitales y seales analgicas.
En ocasiones los sensores analgicos (p.e. en el caso de los termopares) no cumplen el estndar en transmisin
analgica de informacin, y requieren un preprocesado de la seal antes de su entrada en el PLC en el rango
estandarizado. Para este n se emplean dispositivos como los acondicionadores de seal.
Foto: Rockwell Automation
Imagen: Acondicionador de seal Allen-Bradley de carril DIN para Termopar tipo J.
En el caso del S7-200 y el S7-1200 de Siemens existen varios tipos de mdulos de E/S destinados a realizar la
conversin analgico / digital y poder procesar seales analgicas y enviar datos analgicos a actuadores.
Para el S7-200 existen mdulos generales para el tratamiento de seales analgicas y mdulos dedicados para la
medida de temperaturas, posicionamiento, pesaje, etc.
Imagen: Catlogo Siemens S7-200
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
1.Seales digitales y seales analgicas.
Imagen: Catlogo Siemens S7-200
Foto: Siemens (mdulos EM231 y EM235)
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
1.Seales digitales y seales analgicas.
En el caso del S7-1200 existen dos tipos de elementos que realizan medidas / actuaciones analgicas: los mdulos SM (1231, 1232, 1234) y las tarjetas
Signal Board SB 1232.
En el caso de los mdulos SM la diferencia entre los mismos es el nmero de E/S analgicas capaces de tratar. En el catlogo S7-1200 de Siemens
pueden verse sus principales caractersticas.
Foto: Siemens (mdulo SM 1231)
Dado que hay CPUs que no son ampliables con mdulo de seal (como la CPU 1211C), el S7-1200 integran la posibilidad de acoplar una tarjeta de seal
(Signal Board) que proporciona, adems de las dos AI que integra la propia CPU, AO de 12 / 11 bits de resolucin (U/I) o AI adicionales, o incluso DI y DO .
Las tarjetas SB van integradas en el cuerpo del PLC, optimizando de esta forma el espacio ocupado por el conjunto.
Foto: Siemens (SB 1232)
SB 1221 (DIx4 24 Vdc) SB 1222 (DQx4 24 Vdc) SB 1223 (DIx2 DQx2
24 Vdc)
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: resolucin.
Existen varios parmetros fundamentales a la hora de realizar conversiones analgico / digitales en sensores industriales (campo de medida, alcance, error,
exactitud, precisin, sensibilidad, etc). Desde el punto de vista prctico, uno de los fundamentales a la hora de implementar el control con PLCs es la
resolucin de los convertidores analgico / digitales del PLC.
Resolucin: Podemos denir la resolucin como el nmero de valores discretos capaz de ser distinguidos de forma individual por el autmata en el rango de
seal admisible por el convertidor analgico / digital.
S7-200 : mdulo EM235
En el caso del mdulo EM235 para el S7-200, podemos ver por hoja de caractersticas que la resolucin del mismo en rango
de tensin es de 12 bits. Eso signica que es capaz de distinguir entre 4096 valores diferentes.
2
12
= 4096
En un rango de medicin, p.e. de 0 a 10 Vcc (unipolar) signica que el EM235 es capaz de realizar cambios en medidas de:
10/4096 = 0.00244 V ! 2.5 mV
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Esto quiere decir que cada cambio de 2.5 mV de valor de la seal de entrada, el EM235 aumentar una unidad el valor digital que enviar al PLC, convirtiendo
de esta forma el valor de medida analgica en una cadena de unos y ceros (1001010...) binarios correspondientes al nmero decimal comprendido entre 0 y
4096.
No obstante, para el caso anterior del S7-200 podemos ver en su hoja de caractersticas que no distingue entre 4096 valores, sino entre 32000 para el caso de
rangos unipolares (0 a 10 V, 0-20 mA) o 64000 para el caso de bipolares (-10 a 10 V).
Cmo puede ser eso?. La explicacin viene dada en la propia hoja de caractersticas:
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: resolucin.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
En el caso de valores unipolares, el formato de los 12 bits de datos (4096 valores posibles, en el caso de rango de tensin) va incrustado en una palabra (W)
de datos (2 bytes consecutivos), de forma que el formato real del dato analgico queda traducido:
El primero de los bits de la palabra (MSB-Most Signicant Bit) se reserva para el caso de valores bipolares, indicando con un 0 si es positivo y con un 1 si es
negativo, por lo que en el caso de los unipolares est permanentemente a 0. Los ltimos 3 bits (LSB-Less Signicant Bit) estn permanentementa a 0, con lo
que el dato real queda incrustado entre el tercer cuarto y decimoquinto bit.
Esto caso que una variacin de una unidad en los posibles 4096 valores (2.5 mV) se traduzca automticamente como una variacin de 8 en el valor total de la
palabra:
1000 = 0! 2
0
+ 0! 2
1
+ 0! 2
2
+1! 2
3
= 8
Cualquier variacin por tanto del cuarto bit menos signicativo ocasionar que el valor de la palabra de datos cambie automticamente en 8 valores, como
puede verse en el razonamiento anterior, lo que har que los 4096 valores se conviertan en:
4096! 8 = 32768
Reservndose el exceso de 32000 para el desbordamiento de medida.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: resolucin.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Otro aspecto fundamental del EM235, adems de su resolucin y el tramiento de valores que veremos posteriormente es su conexionado con el PLC.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: conexionado.
1
2
3
4
El mdulo EM235 (tambin los EM231 y EM232 aunque su esquema no se
adjunta aqu) requieren de una alimentacin de 24 Vcc, que puede
suministrarse desde la fuente de alimentacin del PLC. El bus en este caso
slo transmite datos, pero no alimentacin.
1
2
Salida analgica en corriente (Io) y en tensin (Vo), con masa de conexin
(Mo).
DIP Switches para congurar el rango de entrada, resolucin, ganancia y
atenuacin de seal.
3
4 Entradas analgicas (x4 en el caso del EM235), que pueden congurarse
en tensin o en corriente, tal y como muestra la gura. Aquellas entradas
analgicas que no estn en uso deben puentearse entre + y -, tal y como
reeja la gura.
5
5 GAIN y OFFSET: Gain y Offset son dos potencimetros integrados en el
EM235 (en el caso del EM231 no se incluye el Offset) que permiten realizar
un ajuste a seal 0 digital cuando el mdulo detecte seal 0 analgica, y un
ajuste del rango de seal digital a 32000 cuando la seal analgica sea tope.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Aunque la palabra de datos real ocupe exclusivamente 12 bits, el S7-200 convierte valores reales analgicos (p. ej. temperatura, tensin, etc.) en valores
digitales en formato de palabra de 16 bits (1W = 2 bytes). A estos valores de entradas analgicas se accede con un identicador de rea (AI .- Analog
Input), seguido del tamao de los datos (W) y de la direccin del byte inicial.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: tratamiento de valores.
Puesto que las entradas analgicas son palabras que comienzan siempre en bytes pares (p. ej. 0, 2, 4, etc.), es preciso utilizar direcciones con bytes pares (p.
ej. AIW0, AIW2, AIW4, etc.) para acceder a las mismas. Las entradas analgicas son valores de slo lectura. De esta forma, en el caso del EM235,
tendremos:
AIW0, AIW2, AIW4, AIW6
Al igual que ocurre con las entradas analgicas, a las salidas analgicas se accede con otro identicado de rea (AQ.- Analog Output), seguido del t del
tamao de los datos (W) y de la direccin del byte inicial. Tendremos por tanto AQ0, AQ2, AQ4,... En el caso del EM235 (AQx2), tendremos:
AQW0, AQW2
En el caso de las entradas analgicas, el S7-200 permite realizar un ltrado de las mismas, que no es ms que obtener un valor promedio de un nmero
preseleccionado de muestreo. Esto es til para aquellas entradas analgicas que puedan variar cuando lo que realmente interesa es un valor medio. Por
contra, aquellas entradas analgicas de las que queramos reejar su variacin en cada ciclo de scan, no es aconsejable ltrarlas. Los parmetros de ltrado
se pueden denir en el bloque de sistema.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Previo paso al tratamiento de valores, es aconsejable hacer una calibracin y un ajuste de ltrado de las entradas del mdulo analgico.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: tratamiento de valores.
El procedimiento de calibracin de entradas se describe detalladamente en el manual de sistema del S7-200:
1. Desconectar la alimentacin del mdulo y seleccionar el rango de entrada deseado con el bloque de microinterruptores (0-10 V, 0-20 mA,...)
2. Conectar la alimentacin de la CPU y del mdulo y esperar un tiempo (el manual dice unos 15 minutos) para que el mdulo pueda estabilizarse.
3. Utilizando un transmisor, una fuente de tensin o de intensidad, aplicar a una de las entradas una seal de valor cero (cerrando las dems).
4. Leer el valor que la CPU ha recibido del correspondiente canal de entrada.
5. Con el potencimetro OFFSET, seleccionar el valor cero u otro valor digital.
6. Aplicar una seal de rango mximo a una entrada y leer el valor que ha recibido la CPU.
7. Con el potencimetro GAIN, seleccionar el valor 32000 (tope de rango de medida digital) u otro valor digital.
8. En caso necesario, volver a calibrar el desplazamiento (OFFSET) y la ganancia (GAIN).
Una vez realizada la calibracin de las entradas, es aconsejable decidir si se va a realizar o no un ltrado de entradas analgicas, teniendo en cuenta algunos
conceptos:
a) En el caso de emplear una CPU 224XP, no es necesario ltrar las entradas por software (MicroWin), ya que el propio convertidor analgico / digital de la
CPU lo realiza.
b) La ltracin de las entradas analgicas permite disponer de un valor analgico ms estable, por lo que es aconsejable utilizar el ltro de entradas
analgicas en aplicaciones donde la seal de entrada cambia lentamente, eliminando de esta forma las posibles variaciones rpidas. Si la seal es rpida, no
es recomendable habilitar el ltro analgico, ya que no se actualizar el valor.
c) Existen dos parmetros fundamentales a la hora de realizar el ltrado de entradas analgicas:
- Nmero de muestreos: nmero de ciclos de scan necesarios en los que los cuales se realiza un promedio de la entrada analgica y se actualiza
su valor. A mayor nmero de ciclos, ms estable ser la seal pero ms necesitar cambiar para ser actualizada en promedio.
- Banda muerta: Para evitar que no se reejen cambios importantes en la entrada analgica, puede denirse una banda muerte, de forma que el
ltro cambie la entrada analgica cuando sta cambie una diferencia especicada del valor actual.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Todas las operaciones realizadas con entradas y salidas analgicas deben realizarse consecuentemente en formato de palabra. De esta forma, para realizar
un movimiento de dato analgico ser necesario hacerlo en formato de palabra:
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: tratamiento de valores.
Dado que el valor de la entrada analgica siempre est
presente en AIWx, a la hora de realizar operaciones es
aconsejable volcar (mover) el valor de la entrada analgica a un
rea de memoria con el que posteriormente trabajar (tratar,
escalar, incrementar o decrementar articialmente, comparar...).
En este ejemplo, se realiza el movimiento del valor analgico
presente en AIW0 en formato palabra (16 bits) al rea de
memoria de variables, con el que poder posteriormente operar.
El movimiento se realiza en formato palabra (MOV_W), y ambos
datos (IN & OUT) deben serlo.
Una vez realizado el movimiento, se realiza en cada ciclo de
scan la comparacin del valor de VW0 (que podr variar entre
-32768 y +32767) con diversos valores, activando salidas en
consecuencia.
De esta forma, si VW0 es menor de 15000, se activa la salida
Q0.0. Si el valor est entre 15000 y 25000, lo har la salida
Q0.1, y si el valor es mayor de 25000 (y menor de 32767), la
salida activada ser Q0.2.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Tratar valores de la forma en que se ha hecho en el ejemplo anterior es extremadamente incmodo, ya que implica realizar varios clculos previos de cara a
realizar la comparacin:
- Del rango real de medida (p.e. sensor de temperatura de entre -0 y 760C) al rango de seal analgica (0-10V, 0-20 mA,...).
- Del rango de seal analgica (0-10V, 0-20 mA,...) al rango de dato en formato palabra del S7-200 (-32768 a +32767 para bipolares y de 0 a +32767 para
unipolares, que es ajustado a -32000 a +32000 para bipolares y 0 a 32000 para unipolares mediante ganancia y offset).
,que slo es razonable en el caso de tratamiento de valores en porcentajes conocidos (p.e. sensor ultrasnico que mide el nivel de un depsito y slo toma
decisiones respecto al rango de 50% del mismo).
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: escalado de valores.
En otros casos, lo normal es optar por dos posibilidades:
a) Realizacin de las operaciones aritmticas correspondientes al tramiento de datos dentro de programa.
b) Realizar un escalado y normalizacin de valores.
La realizacin de un escalado tiene como objetivo convertir los datos en formato palabra del S7-200 (enteros) en valores reales del rango de medida del
dispositivo original (p.e. la temperatura de 0 a 760C) de acuerdo a la resolucin del mismo, y poder realizar operaciones de forma directa.
ESCALADO UNIPOLAR
ESCALADO BIPOLAR
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
En algunos casos incluso ser necesario un escalado con desviacin,
p.e. si el rango de medida de dispositivo de 4-20 mA, ya que el EM235
slo mide seal en corriente de 0 a 20 mA.
Esto signica que una medida de 4 mA del dispositivo (cero en su
medida), el PLC la interpreta como un dato de seal de valor entero
(en palabra) de 6400 (20% del rango de 32000, por lo que las seales
se normalizan a este valor, y no a +32767).
Esto implica que en el escalado de salida, ste valor deber
corresponder al dato de rango mnimo (0) de medida del dispositivo.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: escalado de valores.
ESCALADO CON DESVIACIN
En las imgenes anteriores, el signicado de los acrnimos en ejes es el siguiente:
Lo que signica que el valor escalado puede ser
calculado mediante la recta de interpolacin lineal entre
Osh y Ish, e Osl y Isl.
Podemos calcular por tanto el valor de acuerdo a la
siguiente frmula:
O
V
=
(O
sh
!O
sl
)
(I
sh
! I
sl
)
" (I
v
! I
sl
) +O
sl
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: escalado de valores.
Por suerte, para evitar la implementacin directa de estas operaciones aritmticas a la hora de operar, Siemens proporciona la librera scale.mwl (aunque no
de forma directa, pero s disponible desde su web), que una vez aadida a STEP-7/MicroWin implementa 3 funciones para simplicar esta operacin:
1) S_ITR: convierte seales de entrada analgicas en valores normalizados entre 0.0 y 1.0
Su Input ser la salida analgica de medicin (o direccin de
memoria en formato palabra donde est su valor), y ser
necesario especicar Ish e Isl del rango del dato (dependiendo
de si la conversin es unipolar, bipolar o con desviacin), y
tendr como Osh y Osl la unidad. El valor real deber ser
volcado a un rea en formato doble palabra.
2) S_RTR: convierte rango de datos en formato real a valores en formato real (escalando al rango de medida
del dispositivo):
El valor real anterior entre 0.0 y 1.0 deber ser ahora escalado
al rango real de medicin del dispositivo. Su input en este caso
ser el rea de memoria donde se ha almacenado el dato
previo (en formato DW), Ish e Isl sern respectivamente 0 y 1,
y Osh y Osl sern el rango de medicin real del dispositivo (o
un porcentaje, si se preere, para lo cual el rango de salida
ser entre 0 y 100).
El dato escalado ser depositado en otro rea en formato
doble palabra.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: escalado de valores.
Ser posible, al igual que se ha realizado con las entradas analgicas, escalar valores normalizados en formato real a una salida analgica mediante:
3) S_RTI: convierte un nmero real normalizado (entre 0 y 1) a un valor entero de salida analgico (entre 0 y
32000, o entre -32000 y 32000).
En este caso, si se desea mandar un valor normalizado (p.e.
escalones de velocidad de un ventilador de 0.25, 0.5, 0.75 y 1
a un variador de frecuencia), la funcin S_RTI escribe
directamente en la salida AQWx el valor necesario en formato
palabra.
En este caso, los valores de Ish e Isl son los reales
normalizados, mientras que el Osh y Osl ser necesario
congurar el rango de salida (unipolar, bipolar o con
desviacin).
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
En el siguiente ejemplo se pretende mostrar el nivel de un depsito cerrado de agua en
una pantalla visualizadora, para lo cual se ha conectado en la parte inferior del mismo un
sensor de presin con un rango de medida de 4-20 mA, que se conecta a una entrada
analgica del S7-200. Del mismo se enva posteriormente la seal en un rango de 0-10 V a
un dispositivo visualizador.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: escalado de valores (EJEMPLO)
El mdulo EM235 se tiene que calibrar de forma que el valor analogico de 20 mA
corresponda al valor total de llenado del depsito (10m) y al valor digital 32000. Con un nivel
de llenado de 0m, el valor analgico de 4 mA se convertir en 6400. El programa deber
realizar la escala de los valores digitales convertidos en altura en metros.
Posteriormente, la tensin para el sealizador del nivel de llenado se tiene que generar a
travs del mdulo de salidas analgicas EM235 entre 0 y 10 V.
El programa en el S7-200 tiene por tanto que contemplar:
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-200: escalado de valores (EJEMPLO)
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: resolucin.
En el caso del S7-1200, como se ha comentado anteriormente, ste viene equipado con 2 AI en tensin, con rango 0-10 V (no pueden ser conguradas como
entradas en corriente ni en otro rango diferente), como puede verse en la imagen:
En este caso, la resolucin de las entradas analgicas integradas en el S7-1200 es de 10 bits, a diferencia de los 12 bits del mdulo EM235 del S7-200. Para
el caso de las SB y los SM, la resolucin de las AI y AQ aumenta hasta los 12 bits, admitiendo tanto entrada en tensin como en corriente.
Esto signica que el rango de valores capaces de ser distinguidos por el PLC en base a los 10 bits de almacenamiento es de:
2
10
= 1024
No obstante, al igual que ocurra con el EM235, estos 10 bits van integrados en una palabra de datos, por lo que su rango de variacin en el PLC ser mayor
como podemos ver en las caractersticas: de 0 a 27648.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: resolucin.
En el caso de las entradas AI integradas del S7-1200, se han eliminado los ajustes de ganancia y offset y aunque los 16 bits de la palabra de datos admiten
un rango de variacin de:
2
16
= 65536
que se queda en nicamente de 0 a 32767 por ser unipolar (0 a 10 V), se ha modicado el rango para contemplar sobreimpulsos y excesos de seal (valores
de entrada en tensin por encima de los 10 V). De esta forma, el rango de 0-10 Vcc comprende las seales entre 0 y 27658.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: conexionado.
El conexionado de las entradas AI integradas es extremadamente simple: nicamente es necesario cablear la fuente de tensin en el rango 0-10 V entre la
masa del dispositivo (2M) y la entrada analgica. En el caso de los mdulos SM, deben alimentarse a 24Vdc y cablear las AI y AQ de acuerdo al diagrama.
Entradas analgicas (AIx4)
Salidas analgicas (AQx2)
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Al agregar una CPU a STEP7, se asignan automticamente las direcciones de entrada (I) y salida (Q). El direccionamiento predeterminado puede no
obstante cambiarse seleccionando el campo de direccin en la ventana de conguracin de la vista general de dispositivos y tecleando nmeros nuevos.
Con respecto a las entradas analgicas de la CPU, hay que tener en cuenta que se asignan en grupos de dos, y ocuparn por tanto 4 bytes:
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: tratamiento de valores.
Por defecto vienen asignadas como AI2_1: 64...67. Esto quiere decir
que las entradas analgicas en el S7-1200 ocuparn los canales:
IW64, IW66
Prescindiendo en este caso del identicador analgico A que era
necesario anteponer en el caso del S7-200.
En el caso de emplear SBs o SMs con entradas / salidas analgicas
adicionales, las mismas ser igualmente congurables desde la vista
general de dispositivos:
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Al igual que ocurra con el S7-200, puede emplearse de forma directa un dato de entrada analgica (en este caso, IW64) o almacenarse en un rea de
variables para su uso. En el caso del S7-1200, al no existir el rea V, puede almacenarse en un bloque de datos (DB) para su posterior uso y comparacin.
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: tratamiento de valores.
En este ejemplo, con un bit asociado en conguracin de marcas de
sistema y ciclo para siempre ON, se realiza un movimiento del dato
de IW64 a un byte de un bloque de datos creado a tal n (DB1) y
denominado entrada_analog.
Posteriormente se compara el valor de este byte con consignas de
referencia, activando o desactivando salidas consecuentemente:
- Si entrada_analog tiene un valor menor o igual de 15000, se
activar la salida Q0.0.
- Si entrada_analog est en un rango (IN_RANGE) de entre 15001
y 20000, se activar la salida Q0.1 (y se desactivar la Q0.0 anterior).
- Si por ltimo entrada_analog tiene un valor superior a 20000 (y
menor del rebase por exceso), se activar la salida Q0.2 (y se
desactivar la Q0.1).
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Al igual que ocurra con el EM235 del S7-200, realizar comparaciones de forma directa con valores, ya que de nuevo implicara la conversin de alguna forma
externa:
- Del rango real de medida (p.e. sensor de temperatura de entre -0 y 760C) al rango de seal analgica (0-10V).
- Del rango de seal analgica (0-10V) al rango de dato en formato palabra del S7-1200 (en este caso de 0 a 27648).
A diferencia del S7-200, el S7-1200 viene con funciones integradas para realizar el escalado y normalizacin de valores, o bien para realizar el clculo
mediante la implementacin de la recta de interpolacin:
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: escalado de valores.
1) Funciones de normalizacin y escalado: NORM_X y SCALE_X.
La instruccin NORM_X normaliza el valor de las variables de la entrada VALUE mapendolas en una escala lineal. Los parmetros MIN y MAX sirven para
denir los lmites de un rango de valores que se reeja en la escala. En funcin de la posicin del valor que se debe normalizar en este rango de valores, el
resultado se calcula y se deposita como nmero en coma otante en la salida OUT. Si el valor que se debe normalizar es igual al valor de la entrada MIN, la
salida OUT devuelve el valor "0.0". Si el valor que se debe normalizar adopta el valor de la entrada MAX, la salida OUT devuelve el valor "1.0".
En este caso se normaliza la entrada IW64, cuyos valores pueden
tomarse en el rango entre 0 y 27648 (0 a 10 Vcc) a un nmero
real entre 0 y 1 que se deposita en MD0.
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: escalado de valores.
La instruccin SCALE_X escala el valor de la entrada VALUE mapendolo en un rango de valores determinado . Al ejecutar la instruccin, el nmero en coma
otante de la entrada VALUE se escala al rango de valores denido por los parmetros MIN y MAX. El resultado de la escala es un nmero entero que se
deposita en la salida OUT.
En este caso se escala el valor almacenado en MD0 en el rango
entre 0 y 760, almacenando este valor en formato real en el rea
de memoria en doble palabra MD10.
Dado que en el en las funciones NORM_X y SCALE_X del S7-1200 es posible utilizar las entradas y salidas de habilitacin, todo el proceso puede
recogerse en un solo Network de la siguiente forma:
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: escalado de valores.
2) Funcin de clculo de la recta de interpolacin (CALCULATE).
La instruccin CALCULATE permite crear una funcin matemtica que se ejecuta con mltiples parmetros de entrada para obtener el resultado en funcin de
la ecuacin denida.
La funcin es accesible desde el rbol de instrucciones bsicas de las Task Cards, dentro de Funciones matemticas, o
bien directamente insertando un bloque de funcin sin denir y escribiendo el nombre de la misma.
La instruccin no congurada ofrece dos parmetros de entrada y uno de salida. El primer paso es seleccionar el tipo de
datos con el que se va a realizar la operacin, desplegando el men presente en ???. En el caso de realizar escalado de
valores analgicos, la operacin deber realizarse en formato real.
La funcin es accesible desde el rbol de instrucciones bsicas de las Task Cards, dentro de Funciones matemticas, o bien directamente insertando un
bloque de funcin sin denir y escribiendo el nombre de la misma.
La instruccin no congurada ofrece dos parmetros de entrada y uno de salida. El primer paso es seleccionar el tipo de datos con el que se va a realizar la
operacin, desplegando el men presente en ???. En el caso de realizar escalado de valores analgicos, la operacin deber realizarse en formato real.
Posteriormente deber accederse al botn introducir ecuacin visible en la gura superior, debiendo introducir la ecuacin de la recta genrica de
interpolacin para el escalado de valores:
INTRODUCIR ECUACIN
O
V
=
(O
sh
!O
sl
)
(I
sh
! I
sl
)
" (I
v
! I
sl
) +O
sl
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: escalado de valores.
Deber escribirse la ecuacin en el formato esperado por la instruccin CALCULATE, por lo que podemos traducir la ecuacin anterior a:
O
V
=
(O
sh
!O
sl
)
(I
sh
! I
sl
)
" (I
v
! I
sl
) +O
sl
Out = ((in
4
! in
5
) / (in
2
! in
3
))*(in
1
! in
3
) + in
5
Donde:
Ov Out Valor de salida escalado
Iv in1
Valor de entrada analgica
Ish in2
Lmite superior del valor de entrada escalado
Isl in3
Lmite superior del valor de entrada escalado
Osh in4
Lmite superior del valor de salida escalado
Osl in5
Lmite inferior del valor de salida escalado
95BSoftware de programacin STEP 7
2.3 Herramientas fciles de utilizar
Controlador programable S7-1200
36 Manual de sistema, 11/2011, A5E02486683-05

En este ejemplo, introduzca la ecuacin siguiente para escalar un valor analgico bruto.
(Las designaciones "ln" y "Out" corresponden a los parmetros de la instruccin Calcular.)
Out value = ((Out high - Out low) / (ln high - ln low)) * (ln value - ln low) + Out low
Out = ((in4 - in5) / (in2 - in3)) * (in1 - in3) + in5
Donde: Out value (Out) Valor de salida escalado
ln value (in1) Valor de entrada analgica
ln high (in2) Lmite superior del valor de entrada escalado
ln low (in3) Lmite inferior del valor de entrada escalado
Out high (in4) Lmite superior del valor de salida escalado
Out low (in5) Lmite inferior del valor de salida escalado
En el cuadro "Editar clculo", introduzca la ecuacin con los nombres de los parmetros:
OUT = ((in4 - in5) / (in2 - in3)) * (in1 - in3) + in5


Al hacer clic en "Aceptar", la
instruccin Calcular crea las
entradas necesarias para la
instruccin.

lntroduzca los nombres de las
variables de los valores que
corresponden a los parmetros.

Con lo que la ecuacin quedar de la forma:
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
UD4. Procesado de seales analgicas.
2. Tratamiento de seales analgicas en el S7-1200: escalado de valores.
Ser necesario posteriormente introducir en la ecuacin a calcular las reas de memoria de donde bien se toman los valores (caso de la entrada analgica
y los valores de referencia en el escalado) o bien don de se colocarn los valores calculados:
Es fundamental tener en cuenta que todos los datos introducidos en la funcin CALCULATE
deben tener formato real. Si intentamos introducir IW64 como dato analgico de entrada en
in1, ser imposible hacerlo de forma directa, al ser un entero. Es necesario una conversin
previa de tipos empleando la funcin CONVERT:
Una vez realizada la conversin de tipos es posible rellenar la funcin CALCULATE y obtener el valor real en OUT correspondiente al dato real de medida
del dispositivo conectado a la entrada analgica.
En este caso, el valor unipolar (0-10V) presente en la entrada
analgica IW64, convertida previamente a real en MD40, lo
estamos escalando a un nmero real entre 0 y 760, que se volcar
en el rea de memoria MD50.
CPR de Badajoz
Curso 2012 /2013
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Jos Mara Delgado Casado
@JM_Delgado
jmdelgado@elec2.es
www.elec2.es
http://www.youtube.com/jmardelc
http://www.slideshare.net/Jmardelc
http://pinterest.com/jmardelc/
Podis encontrarme en:
http://magnetic.tumblr.com/
Jos Mara Delgado Casado
CPR de Badajoz
Curso 2012 /2013
Curso Autmatas Programables
IES San Roque (BADAJOZ)
Jos Mara Delgado Casado
Todo el material contenido y generado en este documento, excepto aquellas imgenes que pudieran tener licencia copyright y que se han empleado con
nes educativos, estn licenciados bajo Creative Commons CC BY-NC-SA 3.0 ES.

Você também pode gostar