IES Antonio José Cavanilles. Alicante CFGS Automatización y Robótica Industrial http://cavanilles.edu.gva.es
Sistemas Programables Avanzados Contadores rápidos en PLC Siemens S7 31xC y alarmas de proceso (OB40). Utilización de los contadores rápidos de los autómatas S7 300 para aplic aciones de contaje, medición de frecuencia y modulación el ancho de pulso. Uso de las alarmas de proceso (OB40) para tareas de interrupción.
Este trabajo se distribuye bajo licencia Creative Commons BY-NC-SA Roberto Álvarez Sindín http://creativecommons.org/licenses/by-nc-sa/4.0/
Revisión 0.9 Febrero 2014
Índice 1. Especificaciones y funciones básicas ...................... ........................................... .......................................... ..................... 1 2. Cableado ..................... .......................................... ........................................... ........................................... .......................................... ..................... 2 3. Función de contaje .................... .......................................... ............................................ ........................................... ........................... ...... 4 3.1 Contaje sin fin ................... ......................................... ............................................ ........................................... ........................... ...... 5 3.2 Contaje único .................... .......................................... ............................................ ........................................... ........................... ...... 5 Sin sentido normal de contaje: ................... ........................................ ........................................... ......................... ... 5 Sentido de contaje normal adelante ........................................................ 6 Sentido de contaje atrás at rás ...................... ............................................ .......................................... ............................... ........... 6 3.3 Contaje periódico ..................... ........................................... ........................................... .......................................... ..................... 7 Sin sentido normal de contaje: ................... ........................................ ........................................... ......................... ... 7 Sentido de contaje normal adelante ........................................................ 7 Sentido de contaje atrás at rás ...................... ............................................ .......................................... ............................... ........... 7 4. Función de medición de frecuencia .................... ......................................... ........................................... ......................... ... 8 5. Función de modulación del ancho de pulso ..................................................... ................................ ..................... 9 6. Evaluación de los datos datos de de entrada del encoder encoder ...................... ........................................... ....................... 10 7. Configuración Hardware Hardware y parametrización (en Step 7) ..................... ................................. ............ 11 8. Control de los contadores rápidos desde desde programa .................... ....................................... ................... 16 8.1 Control de contadores. SFB COUNT COUNT (SFB (SFB 47) .................... ......................................... ....................... 17 8.2 Control de medida medida de frecuencia. SFB FREQUENC (SFB 48) ................... ..................... 18 8.3 Control de modulación modulación de ancho de pulso. pulso. SFB PULSE (SFB 49) ............. 19 8.4 Alarmas de diagnostico y de proceso .................... ......................................... ................................. ............ 20 9. Ejemplo de aplicación ...................... ............................................ ........................................... ........................................ ................... 22 Documentación de referencia: A5E00105486-05 A5E0010 5486-05 CPU 31xC 31xC Funciones tecnológic tecnológicas as A5E00105494-12 A5E00105494-12 CPU 31xC 31xC y CPU 31x: Configuración Configuración e instalación instalación A5E00105477-12 A5E0010 5477-12 CPU 31xC 31xC y CPU 31x: Datos Datos técnicos técnicos A5E02789978-01 A5E0278 9978-01 Software de sistema para S7-300 y S7-400 Funciones estándar y funciones de sistema
Disponibles en la web del fabricante del producto: http://support.automation.siemens.com/
Este trabajo se distribuye bajo licencia Creative Commons BY-NC-SA http://creativecommons.org/licenses/by-nc-sa/4.0/
Roberto Álvarez Sindín. IES Cavanilles. Alicante
1.
Sistemas Programables Avanzados
Especificaciones y funciones básicas
De acuerdo con las especificaciones del fabricante la CPU compacta 313C dispone de 3 canales con una frecuencia máxima de 30 kHz, mientras que la 314C cuenta con 4 canales a una frecuencia máxima de 60 kHz. Las señales admisibles son de encoder incremental de 24 V con dos fases desfasadas en 90° (encoder rotativo de fase diferencial) (medida de pulsos x4). Las funciones de contaje están integradas en la propia CPU y se han de configurar a través del software de programación. Funcionalidades: Contaje
Modos de operación de contaje
Contaje sin fin
Contaje único
Contaje periódico
Función de puerta
Para iniciar, detener e interrumpir las funciones de contaje. Función latch
Esta función permite guardar el valor interno de contaje actual con flanco ascendente en la entrada digital. Comparador
En la CPU se puede guardar un valor de comparación. Dependiendo de los valores de contaje y comparación es posible activar una salida digital y/o generar una alarma de proceso. Histéresis
Para la salida digital es posible ajustar una histéresis. Esto evitará que cambie la salida digital cuando el valor de contaje entre en el rango del valor de comparación en caso de producirse ligeras fluctuaciones en la señal del encoder. Alarmas de proceso Medición del período
Es posible medir la duración del período de la señal de contaje hasta una frecuencia máxima de contaje de 1 kHz Medición de frecuencia
Función de puerta
La función de puerta se utiliza para iniciar y detener la medición de frecuencia. Límite inferior/límite superior
Para vigilar la frecuencia se puede ajustar un límite inferior y un límite superior. Cuando se alcanzan estos límites se puede activar una salida digital y/o generarse una alarma de proceso. Alarmas de proceso Modulación del ancho de pulso (PWM)
Función de puerta
La función de puerta se utiliza para iniciar y detener la modulación del ancho de pulso. Alarmas de proceso
Contadores rápidos en Siemens S7 31xC
1
Roberto Álvarez Sindín. IES Cavanilles. Alicante
2.
Sistemas Programables Avanzados
Cableado
La disposición básica de los conectores se representa en la imagen, para las CPU con dos conectores (X1 y X2) como es el caso de las CPU 313C y 314C 2 DP.
La asignación de los conectores para estas dos CPU se resume en las tablas siguientes:
Contadores rápidos en Siemens S7 31xC
2
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Tomando los canales estándar para este tipo de CPU y utilizando un encoder incremental de fase diferencial (A+B+Z) tendremos que conectar para los diferentes contadores: Contador 0
Fase A Fase B Puerta HW Latch Salida
E124.0 E124.1 E124.2 E125.4 A124.0
Contador 1
Fase A Fase B Puerta HW Latch Salida
E124.3 E124.4 E124.5 E125.5 A124.1
Contador 2
Fase A Fase B Puerta HW Latch Salida
E124.6 E124.7 E125.0 E125.6 A124.2
Contador 3
Fase A Fase B Puerta HW Latch Salida
E125.1 E125.2 E125.3 E125.7 A124.3
Nota: El contador 3 sólo está disponible en la CPU 314C-2 DP
Para otras funciones realizar el cableado según lo indicado en las tablas anteriores.
Contadores rápidos en Siemens S7 31xC
3
Roberto Álvarez Sindín. IES Cavanilles. Alicante
3.
Sistemas Programables Avanzados
Función de contaje
El PLC dispone de funciones específicas de contaje para registrar y evaluar las señales mediante la función SFB COUNT (SFB 47) . El contaje puede realizarse hacia delante o hacia atrás y tres modalidades de operación (seleccionables en la configuración HW el PLC):
Contaje sin fin, por ejemplo para leer el recorrido con un encoder incremental de 24 V
Contaje único, por ejemplo para contar unidades hasta un límite máximo.
Contaje periódico, por ejemplo en aplicaciones con procesos de contaje repetidos.
La frecuencia de contaje máxima depende del modelo de autómata, en el 31C es de 30 kHz y en el 314C-2 DP de 60 kHz. Este valor es seleccionable (hasta el máximo) desde la configuración HW. Con frecuencias superiores a 1 kHz no se mide la duración del periodo entre dos flancos de contaje sucesivos. Los límites de contaje vienen determinados por el tipo de dato en que se almacenan los valores (32 bits), por lo que los rangos admisibles serán (puede seleccionarse cualquier valor para el contador dentro de esos límites): Límite inferior – 2 147 483 648 (- 231) Límite superior: + 2 147 483 647 (2 31 – 1) El sentido de contaje puede establecer se tres formas:
Sentido normal: Cuenta entre los valores límite de contaje
Adelante. Cuenta de 0 hasta el límite seleccionado y se reinicia (valor de carga).
Atrás, descuenta desde el valor parametrizado hasta -1, para reiniciarse (valor de carga) con el siguiente pulso.
Mediante la función puerta (Gate) se puede iniciar, detener o interrumpir la función del contador. Existen dos tipos de puerta por software (bit de control SW_GATE ) y por hardware ( Puerta HW una entrada física del PLC, que se abre con un flanco ascendente y se cierra con el descendente). Además es posible definir una puerta interna combinación lógica de las puertas SW y HW, que se indica con el bit STS_GATE , que controlará el contaje. En modo contaje único esta puerta interna se cierra de forma automática al rebasar los límites de contaje. Existen además otros bits de control cuando el contaje rebasa por exceso ( STS_OFLW ), por defecto (STS_UFLW) o pasa por cero ( STS_ZP ).
Contadores rápidos en Siemens S7 31xC
4
Roberto Álvarez Sindín. IES Cavanilles. Alicante
3.1
Sistemas Programables Avanzados
Contaje sin fin
En este modo de operación, la CPU empieza a contar a partir de 0 o a partir del valor de carga.
Cuando el contador alcanza el límite superior de contaje contando hacia delante y recibe un impulso de contaje adicional en sentido positivo, salta al límite inferior de contaje y sigue contando desde allí. Cuando el contador alcanza el límite inferior de contaje contando hacia atrás y recibe un impulso adicional de contaje en sentido negativo, salta al límite de contaje superior y sigue contando desde allí. Los límites de contaje están ajustados permanentemente en el rango de contaje máximo.
De forma gráfica se comportará de la siguiente forma:
3.2
Contaje único
En esta modalidad de operación la CPU cuenta el sentido normal de contaje parametrizado sólo una vez. Deberá reiniciarse la puerta de contaje para realizar otra operación. Podremos configurar este modo de tres formas diferentes. Sin sentido normal de contaje:
La CPU empieza a contar a partir del valor de carga una sola vez y en ambos sentidos, hacia delante y hacia atrás. Los límites de contaje se ajustan a los valores máximos (por exceso y defecto) de forma permanente. Cuando el contador rebasa el límite inferior o superior de contaje salta al otro límite y la puerta se cierra automáticamente. Para reiniciar el contaje deberá generar un flanco ascendente del control de la puerta. Si se interrumpe el control de la puerta el contaje continuará en el estado de contaje actual. Si se cancela el control de puerta, el contador empezará a contar a partir del valor de carga. Gráficamente:
Contadores rápidos en Siemens S7 31xC
5
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Sentido de contaje normal adelante
La CPU empieza a contar a partir del valor de carga, el contaje es hacia adelante o hacia atrás. Si el contador alcanza el valor de fin -1 en sentido positivo, éste saltará con el siguiente impulso de contaje positivo hasta el valor de carga y la puerta se cerrará automáticamente. Para reiniciar el contaje deberá generar un flanco ascendente del control de la puerta. Una vez iniciada la puerta, el contador comienza a contar desde el valor de carga. También dispone de la posibilidad de contar rebasando el límite inferior. No obstante, en tal caso no será compatible el valor de contaje con los resultados de comparación resultantes. Por eso deberá evitarse este rango. De forma gráfica:
Sentido de contaje atrás
La CPU empieza a contar a partir del valor de carga, el contaje es hacia adelante o hacia atrás. Si el contador alcanza en sentido negativo el valor de contaje 1, saltará con el siguiente impulso de contaje negativo hasta el valor de carga (valor inicial) y la puerta se cerrará automáticamente. Para reiniciar el contaje deberá generar un flanco ascendente del control de la puerta. Una vez iniciada la puerta, el contador comienza a contar desde el valor de carga. También dispone de la posibilidad de contar rebasando el límite superior de contaje. No obstante, en tal caso no serán compatibles el valor de contaje con los resultados de comparación resultantes. Por eso deberá evitarse este rango. De forma gráfica tendremos:
Contadores rápidos en Siemens S7 31xC
6
Roberto Álvarez Sindín. IES Cavanilles. Alicante
3.3
Sistemas Programables Avanzados
Contaje periódico
En este modo de operación, la CPU cuenta periódicamente en función del sentido normal de contaje. Podremos configurar este modo de tres formas diferentes. Sin sentido normal de contaje:
La CPU empieza a contar a partir del valor de carga en ambos sentidos, hacia delante y hacia atrás. Los límites de contaje se ajustan a los valores máximos (por exceso y defecto) de forma permanente. Cuando el contador rebasa el límite inferior o superior de contaje, salta al valor de carga y sigue contando desde allí. Gráficamente:
Sentido de contaje normal adelante
La CPU empieza a contar a partir del valor de carga, el contaje es hacia adelante o hacia atrás. Si el contador alcanza el valor de fin -1 en sentido positivo, éste saltará con el siguiente impulso de contaje positivo hasta el valor de carga y sigue contando desde allí. También dispone de la posibilidad de contar rebasando el límite inferior. No obstante, en tal caso no será compatible el valor de contaje con los resultados de comparación resultantes. Por eso deberá evitarse este rango. De forma gráfica:
Sentido de contaje atrás
La CPU empieza a contar a partir del valor de carga, el contaje es hacia adelante o hacia atrás. Si el contador alcanza en sentido negativo el valor de contaje 1, saltará con el siguiente impulso de contaje negativo hasta el valor de carga (valor inicial) y sigue contando desde allí. Para reiniciar el contaje deberá generar un flanco ascendente del control de la puerta. Una vez iniciada la puerta, el contador comienza a contar desde el valor de carga. Contadores rápidos en Siemens S7 31xC
7
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
También dispone de la posibilidad de contar rebasando el límite superior de contaje. No obstante, en tal caso no serán compatibles el valor de contaje con los resultados de comparación resultantes. Por eso deberá evitarse este rango. De forma gráfica tendremos:
4.
Función de medición de frecuencia
En esta modalidad de operación la CPU cuenta los impulsos que llegan en un determinado tiempo de integración y emite un valor de frecuencia. El tiempo de integración puede ajustarse a un valor comprendido entre 10 ms y 10 000 ms en intervalos de 1 ms. El tiempo de integración se puede ajustar en las pantallas de parametrización, o bien escribirlo y leerlo en el programa de usuario. El valor de la frecuencia a determinar está disponible en la unidad "mHz" . Es posible leer este valor en su programa de usuario a través del parámetro MEAS_VAL del FREQUENC (SFB 48). Si hay un valor nuevo, se activa el bit STS_CMP.
La medición se llevará a cabo durante el tiempo de integración que haya sido parametrizado por el usuario. Una vez transcurrido el tiempo de integración se actualizará el valor medido. Si el período de la frecuencia medida es mayor que el tiempo de integración parametrizado, como valor medido se notificará 0 o el valor medio, dependiendo de la parametrización. Hasta el final del primer tiempo de integración notificará como respuesta el valor -1. Los valores de medición de frecuencia dependen del modelo de CPU, de 0 a 30 kHz para el 313C y de 0 a 60 kHz para el 314C-2 DP. Si durante el tiempo de integración se produce una inversión del sentido de giro, el valor de medición para ese período será indeterminado. Los bits de respuesta STS_C_UP y STS_C_DN permiten la evaluación del sentido. Una vez finalizado el tiempo de integración, se indica la frecuencia medida (f ≥ 1mHz). Si la periodicidad
de la frecuencia medida supera el tiempo de integración parametrizado:
Contadores rápidos en Siemens S7 31xC
8
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Con "frecuencia directa" se emitirá el valor "0" al terminar el tiempo de integración.
Con "frecuencia media" se repartirá el último valor entre los siguientes intervalos de medición sin flanco ascendente (f ≥ 1 mHz). Esto se c orresponde con una ampliación del tiempo de integración. Para ello se divide el último valor medido por el número de intervalos de medición sin flanco ascendente.
Ejemplo: Si el último valor medido fue 12 000 mHz, se emitirá el valor 4000 mHz después de tres intervalos de medición.
5.
Función de modulación del ancho de pulso
El valor de salida predeterminado (OUTP_VAL) de la función SFB PULSE (SFB 49) es transformado por la CPU en una secuencia de impulsos con la correspondiente relación impulso/pausa (modulación del ancho de pulso). La secuencia de impulsos se emite una vez transcurrido el retardo a la conexión parametrizado en la salida digital DO (secuencia de salida).
Contadores rápidos en Siemens S7 31xC
9
Roberto Álvarez Sindín. IES Cavanilles. Alicante
6.
Sistemas Programables Avanzados
Evaluación de los datos de entrada del encoder
Se podrán utilizar encoder incrementales asimétricos de 24 V con dos impulsos eléctricos desfasados en 90°. Los datos característicos del encoder a tener en cuenta: Incrementos: Un incremento caracteriza el período de señales de las dos pistas, A y B, del sensor. Este
valor se indica en los datos técnicos del encoder y/o en su placa de características. Flancos en pistas A y B: La CPU puede contar los flancos de las pistas. En general sólo se evaluará el
flanco A (evaluación simple). Si se lleva a cabo una evaluación múltiple, obtendrá mayor resolución. En las pantallas de parametrización se determina si en las pistas se lleva a cabo una evaluación simple, doble o cuádruple. La evaluación múltiple sólo puede ejecutarse con encoders incrementales asimétricos de 24 V con pistas A y B desfasadas en 90°. Evaluación simple: Evaluación simple significa que sólo se evaluará un flanco de la pista A; los impulsos
de contaje hacia delante se evaluarán en caso de flanco ascendente en la pista A y en caso de darse un nivel Low en la pista B, se evaluarán los impulsos de contaje hacia atrás con flanco ascendente en A y el nivel High en la pista B.
Evaluación doble: Evaluación doble significa que se evaluaran los flancos positivos y negativos de la
pista A; dependerá del nivel de la pista B que se generen impulsos de contaje hacia delante o hacia atrás.
Evaluación cuádruple: Evaluación cuádruple significa que se evaluarán los flancos positivos y negativos
de las pistas A y B; dependerá de los niveles de las pistas A y B que se generen impulsos de contaje hacia delante o hacia atrás.
Contadores rápidos en Siemens S7 31xC
10
Roberto Álvarez Sindín. IES Cavanilles. Alicante
7.
Sistemas Programables Avanzados
Configuración Hardware y parametrización (en Step 7)
Una vez tengamos cableadas las entradas del PLC habrá que hacer los ajustes en el HW desde el programa. Con el proyecto creado e insertado el PLC iremos a la página de HW y allí seleccionaremos el apartado ‘Contaje’, haciendo doble clic sobre el mismo para editar la configuración.
Por defecto tendré 3 pestañas una de descripción general y otras dos para modificar los parámetros básicos de alarmas, que veremos más adelante.
En la parte superior hay dos desplegables, para seleccionar el canal a utilizar (3 canales en el 313C y 4 en el 314C-2 DP) y el modo de operación. Seleccionando uno de los modos de contaje nos aparecerá un aviso y una nueva pestaña para la configuración. Contadores rápidos en Siemens S7 31xC
11
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Los parámetros disponibles en la pestaña dependerán del modo de contaje seleccionado (derecha), mediad de frecuencia o modulación de pulso.
Los parámetros más significativos del modo contaje los resumimos en la siguiente tabla: Parámetro
Sentido normal de contaje
Función de puerta
Valor final/ Valor inicial Valor de comparación
Funcionamiento
Ninguno: Sin limitación del rango de contaje
Adelante: Limitación del rango de contaje hacia arriba. El
contador cuenta de 0 o del valor de carga en sentido positivo hasta el valor final parametrizado 1 para saltar a continuación de nuevo con el siguiente impulso positivo del encoder al valor de carga. Atrás: Limitación del rango de contaje hacia abajo. El contador cuenta desde el valor de inicio parametrizado o desde el valor de carga hasta 1 en sentido negativo para saltar después de nuevo hasta el valor de carga con el siguiente impulso negativo del encoder.
Cancelar el contaje: El contaje comienza después de cerrarse
la puerta y volverse a iniciar esta puerta desde el valor de carga. Interrumpir el contaje: El contaje continúa después de cerrarse y volver a iniciarse la puerta en el último estado de contaje.
Valor al fin con sentido normal de contaje adelante Valor inicial con sentido normal de contaje atrás 31 De 2 a 2147483647 (2 - 1)
Comentario
No disponible en modo ‘Contaje sin fin’
No disponible en modo ‘Contaje sin fin’
El valor de contaje se compara con el valor de comparación. Consulte también el parámetro "Comportamiento de la salida": Sin sentido normal de contaje -231 a + (231-1) 31 Sentido normal de contaje adelante -2 hasta el valor de fin -1 31 Sentido normal de contaje atrás 1 a + (2 – 1)
Histéresis
La histéresis sirve para evitar conexiones frecuentes de la salida cuando el valor de contaje se encuentra en el rango del valor de comparación. 0 y 1 significan: Histéresis desconectada
Rango admisible De 0 a 255
Base de tiempo
Es posible elegir si la duración del período debe medirse en unidades de 125 ns o 1 μs en caso de una frecuencia máxima de contaje de 1 kHz. Si la frecuencia máxima de contaje es superior a 1 kHz no se mide la duración del período y no se puede ajustar.
Rango admisible De 125 ns a 1 μs
Contadores rápidos en Siemens S7 31xC
12
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Parámetro Entrada:
Evaluación de señal Entrada:
Puerta HW
Sistemas Programables Avanzados
Funcionamiento
Comentario
Ajustar según el tipo de dispositivo conectado: Impulso más señal sentido. Encoder (evaluación x1, x2 ó x4) Según esté marcada la casilla determina si el control de puerta se hará a través de la puerta SW y puerta HW. Si no está marcada el control será sólo por SW. Dependerá del tipo de encoder utilizado (Fase Z) y si se desea utilizar.
Sentido de contaje invertido
Permite configurar la entrada invirtiendo el sentido de contaje.
Comportamiento de la salida
La salida y el bit de estado "Comparador" (STS_CMP) se activan en función de este parámetro. Opciones: Sin comparación Valor de contaje ≥ valor de comparación Valor de contaje ≤ valor de comparación Impulso del valor de comparación (Duración del impulso)
Alarmas de proceso:
Existen una serie de opciones de alarma que pueden activarse. Dependiendo de la configuración del modo de contaje y las opciones seleccionadas estarán o no disponibles.
Seleccionando Impulso se puede definir la duración de los impulsos de la señal de salida De 0 a 510 ms
Abrir / Cerrar la puerta HW
Cuando se abre o se cierra la puerta hardware se genera una alarma de proceso si está abierta la puerta software. Alcance del comparador
Cuando se alcanza el comparador (reacción) se genera una alarma de proceso. Flanco de contaje (Impulso de contaje)
Puede seleccionar si se debe disparar una alarma de proceso en cada flanco de contaje a una frecuencia máxima de contaje de 1 kHz. Esta alarma de proceso no se puede seleccionar si la frecuencia máxima de contaje es superior a 1 kHz. El disparo de una alarma de proceso en cada flanco de contaje provoca una fuerte carga de trabajo de la CPU en caso de frecuencias de contaje elevadas. Por tanto, habilite esta alarma de proceso sólo si los flancos de contaje están separados como mínimo 10 ms entre sí. Rebase por exceso / defecto
Cuando se produce un rebase por exceso y/o defecto (rebase del límite superior/inferior de contaje) se genera una alarma de proceso. Frecuencia máxima:
Contaje Frecuencia máxima:
Latch Ocupación de los datos de entrada
La frecuencia máxima de contaje de las señales pista A/impulso, pista B/sentido y puerta HW se puede graduar de forma escalonada. El valor máximo depende de la CPU utilizada.
Máximo 30 kHz para 313C y 60 kHz para 314C-2 DP
La frecuencia máxima de la señal Latch (de congelación) se puede graduar de forma escalonada. El valor máximo depende de la CPU utilizada. Por defecto 10 kHz.
Máximo 30 kHz para 313C y 60 kHz para 314C-2 DP
Es posible elegir si con una frecuencia máxima de contaje de 1 kHz puede leerse el valor de contaje o bien la duración del período en los datos de entrada (datos E) del submódulo "Contaje". Si la frecuencia máxima de contaje es superior a 1 kHz sólo se admite "Valor de contaje"
Depende de la frecuencia máxima de contaje
Contadores rápidos en Siemens S7 31xC
13
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Parámetros de Medición de frecuencia
Parámetro
Funcionamiento
Comentario
Tiempo de integración
Ventana de tiempo en la que se miden los impulsos entrantes. Valores admisibles de 10 ms a 10.000 ms
Límite inferior
El valor medido se compara con el límite inferior. Cuando se rebasa por defecto el límite inferior se activa el bit de estado "Rebase por defecto" (STS_UFLW). El límite inferior debe ser menor que el límite superior.
Valores admisibles CPU 313C
El valor medido se compara con el límite superior. Cuando se rebasa por exceso el límite superior se activa el bit de estado "Rebase por exceso" (STS_OFLW). El límite superior debe ser mayor que el límite inferior.
Valores admisibles CPU 313C
Frecuencia máxima de contaje/Puerta HW
La frecuencia máxima de contaje de las señales pista A/impulso, pista B/sentido y puerta HW se puede graduar de forma escalonada. El valor máximo depende de la CPU utilizada:
Máximo 30 kHz para 313C y 60 kHz para 314C-2 DP
Indicación del valor medido
Si la periodicidad de la frecuencia medida supera el tiempo de integración parametrizado, se emitirá con frecuencia "directo" el valor "0" cuando se agote el tiempo de integración, con frecuencia "valor medio " se extiende el último valor por los siguientes intervalos de medición sin flancos (f ≥ 1 mHz). Esto se corresponde con una ampliación del tiempo de integración. Para ello se divide el último valor medido por el número de intervalos de medición o flancos.
Entrada:
Ajustar según el tipo de dispositivo conectado: En la entrada se conecta la señal de contaje y la señal de sentido. En la entrada se conecta un encoder con evaluación simple.
Límite superior
Evaluación de señal
Entrada:
Puerta HW
Entrada:
De 0 a 29.999.999 mHz CPU 314C-2 DP De 0 a 59.999.999 mHz
De 0 a 30.000.000 mHz CPU 314C-2 DP De 0 a 60.000.000 mHz
Según esté marcada la casilla determina: Si está marcada, el control de puerta se hará a través de la puerta SW y puerta HW. La frecuencia máxima de la señal de puerta HW corresponde a la frecuencia máxima de contaje ajustada Si no está marcada el control será sólo por puerta SW. Permite configurar la entrada invirtiendo el sentido de contaje.
Sentido de contaje invertido Contadores rápidos en Siemens S7 31xC
14
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Parámetro
Sistemas Programables Avanzados
Funcionamiento
Comportamiento de la salida
El valor medido se compara con el límite inferior y superior. La salida se ajustará en función de este parámetro. Opciones: Sin comparación Fuera de límites Por debajo del límite inferior Por encima del límite superior
Alarmas de proceso:
Existen una serie de opciones de alarma que pueden activarse. Dependiendo de la configuración del modo de contaje y las opciones seleccionadas estarán o no disponibles.
Comentario
Abrir / Cerrar la puerta HW
Cuando se abre o se cierra la puerta hardware se genera una alarma de proceso si está abierta la puerta software. Fin de la medición
Al final de la medición se genera una alarma de proceso. Rebase por exceso / defecto
Cuando se produce un rebase por exceso y/o defecto (rebase del límite superior/inferior) se genera una alarma de proceso. Nota
El disparo de una alarma de proceso en cada flanco de contaje provoca una fuerte carga de trabajo de la CPU en caso de frecuencias de contaje elevadas. Si las alarmas de proceso aparecen en el submódulo "Contaje" con más rapidez de la que pueden procesarse en el OB de alarma de proceso (OB 40), se p roduce un diagnóstico de "Alarma de proceso perdida" si la alarma de diagnóstico está habilitada. Las frecuencias de contaje altas pueden provocar una carga de trabajo de la CPU tan elevada, de manera que se exceda el tiempo de vigilancia de ciclo configurado, o bien que la comunicación de la CPU deje de funcionar o que funcione muy lentamente. Se recomienda habilitar la alarma de proceso en cada flanco de contaje sólo si es seguro que los flancos de contaje están separados como mínimo 10 ms entre sí.
Parámetros de Modulación del ancho de pulso
Contadores rápidos en Siemens S7 31xC
15
Roberto Álvarez Sindín. IES Cavanilles. Alicante
8.
Sistemas Programables Avanzados
Control de los contadores rápidos desde programa
El control de las funciones desde el programa de usuario se hace llamando los siguientes bloques de función del sistema: Contaje Medición de frecuencia Modulación del ancho de pulso
SFB COUNT (SFB 47) SFB FREQUENC (SFB 48) SFB PULSE (SFB 49)
Los SFB se encuentran en la "Standard Library" bajo "System Function Blocks". El acceso a los SFB se realiza a través de los correspondientes DB instancia, en el que se encuentran los parámetros del SFB. Al insertar el SFB le especificaré el DB asociado al mismo. Es posible acceder a los parámetros a través de:
el número de DB y la dirección absoluta en el bloque de datos.
el número de DB y la dirección simbólica en el bloque de datos.
Los parámetros más importantes para la función están interconectados adicionalmente en el bloque. Es posible asignar a los parámetros de entrada un valor directamente en el SFB o consultar los parámetros de salida. Nota: Para cada canal deberá acceder siempre con el mismo DB instancia al SFB, ya que el DB instancia contiene los estados
necesarios para el procesamiento interno del SFB. No se permite el acceso de escritura a las salidas del DB instancia.
Contadores rápidos en Siemens S7 31xC
16
Roberto Álvarez Sindín. IES Cavanilles. Alicante
8.1
Sistemas Programables Avanzados
Control de contadores. SFB COUNT (SFB 47)
Funciones disponibles:
Iniciar/Detener el contador con la puerta software SW_GATE Habilitar/controlar la salida DO Leer bits de estado Leer el valor actual de contaje y del valor Latch Peticiones de lectura y escritura de los registros internos de contaje Leer la duración del período actual (sin conexión al bloque; disponible sólo en el DB instancia)
Especificaciones de los parámetros del bloque: Parámetros de entrada:
LADDR CHANNEL SW_GATE CTRL_DO SET_DO
(WORD) Dirección E/S del submódulo que se ha definido previamente en "HW Config". Por defecto serán del W768 al W783 (W768 en hexadecimal sería W#16#300). La dirección 0 en el DB de instancia. (INT) Número de canal a utilizar (0, 1, 2 ó 3). (Dirección DB de instancia 2). (BOOL) Puerta software para iniciar o detener el contador. (DB de instancia bit 4.0). (BOOL) Habilitación de salida (además de lo parametrizado en el HW). (DB de instancia bit 4.1). (BOOL) Forzado de salida (si está habilitado CTRL_DO). (DB de instancia bit 4.2).
Parámetros de salida:
STS_GATE STS_STRT STS_LTCH STS_DO STS_C_DN STS_C_UP COUNTVAL LATCHVAL
(BOOL) Estado de puerta interna. (DB de instancia bit 12.0). (BOOL) Estado puerta HW (entrada de inicio). (DB de instancia bit 12.1). (BOOL) Estado entrada LATCH. (DB de instancia bit 12.2). (BOOL) Estado salida. (DB de instancia bit 12.3). (BOOL) Estado sentido atrás. (DB de instancia bit 12.4). (BOOL) Estado sentido adelante. (DB de instancia bit 12.5). (DINT) Valor actual de contaje. (Dirección DB de instancia 14) (DINT) Valor actual de LATCH. (Dirección DB de instancia 18)
Otros parámetros NO conectados al bloque (datos locales estáticos)
RES_STS STS_CMP STS_OFLW STS_UFLW STS_ZP
(BOOL) Desactivar bit de estado. Permite desactivar los bits STS_CMP, STS_OFLW, STS_UFLW y STS_ZP. (DB de instancia bit 32.2). (BOOL) Estado del comparador. Indica que la condición del comparador o que la salida está activada. (DB de instancia bit 26.3). (BOOL) Estado de rebase por exceso. (DB de instancia bit 26.5). (BOOL) Estado de rebase por defecto. (DB de instancia bit 26.6). (BOOL) Estado de paso por cero (sólo contaje sin sentido normal de contaje). También se activa cuando el contador se pone a 0 o cuando empieza a contar a partir del valor de carga 0. (DB de instancia bit 26.7).
Para trabajar desde el programa con la interfaz del contador tendremos una serie de parámetros (no es necesario escribirlos en la SFB para utilizarla), que nos permiten trabajar con los contadores. Parámetros de entrada
JOB_REQ JOB_ID
JOB_VAL
(BOOL)Lanzamiento de la petición(flanco ascendente). (DB de instancia bit 4.3). (WORD) Número de petición. (Dirección DB de instancia 6). Puede tomar los valores: 00 hex Petición sin función 01 hex Escribir valor de contaje 02 hex Escribir valor de carga 04 hex Escribir valor de comparación 08 hex Escribir la histéresis 10 hex Escribir la duración de impulso 82 hex Leer valor de carga 84 hex Leer valor de comparación 88 hex Leer la histéresis 90 hex Leer la duración de impulso 31 31 (DINT) Valor para la petición de escritura. (Dirección DB de instancia 8). Valores entre (-2 ) a (+2 – 1)
Resultados en la salida del SFB
JOB_DONE JOB_ERR JOB_STAT
(BOOL) Es posible iniciar una nueva petición. (DB de instancia bit 22.0). (BOOL) Petición errónea. (DB de instancia bit 22.1). (WORD) Número de error de petición (0 a FFFF hex). (Dirección DB de instancia 24).
Otros parámetros NO conectados al bloque
JOB_OVAL
(DINT) Valor de salida para las peticiones de lectura. (Dirección DB de instancia 28). Los valores admisibles dependen del tipo de contaje. La histéresis entre 0 y 255 y la duración del impulso de 0 a 510 ms.
Contadores rápidos en Siemens S7 31xC
17
Roberto Álvarez Sindín. IES Cavanilles. Alicante
8.2
Sistemas Programables Avanzados
Control de medida de frecuencia. SFB FREQUENC (SFB 48)
Funciones disponibles:
Iniciar/detener con la puerta software SW_GATE Habilitar/controlar la salida DO Leer bits de estado Leer el valor medido actual Peticiones para leer y escribir en el registro interno de frecuencia
Especificaciones de los parámetros del bloque: Parámetros de entrada:
LADDR CHANNEL SW_GATE MAN_DO SET_DO
(WORD) Dirección E/S del submódulo que se ha definido previamente en "HW Config". Por defecto serán del W768 al W783 (W768 en hexadecimal sería W#16#300). La dirección 0 en el DB de instancia. (INT) Número de canal a utilizar (0, 1, 2 ó 3). (Dirección DB de instancia 2). (BOOL) Puerta software para iniciar o detener la medida de frecuencia. (DB de instancia bit 4.0). (BOOL) Habilitación del control manual de la salida. (DB de instancia bit 4.1). (BOOL) Forzado de salida. (DB de instancia bit 4.2).
Parámetros de salida:
STS_GATE STS_STRT STS_DO STS_C_DN STS_C_UP MEAS_VAL COUNTVAL
(BOOL) Estado de puerta interna. (DB de instancia bit 12.0). (BOOL) Estado puerta HW (entrada de inicio). (DB de instancia bit 12.1). (BOOL) Estado salida. (DB de instancia bit 12.2). (BOOL) Estado sentido atrás. (DB de instancia bit 12.3). (BOOL) Estado sentido adelante. (DB de instancia bit 12.4). (DINT) Valor actual de frecuencia. (Dirección DB de instancia 14) (DINT) Valor actual de contaje (Dirección DB de instancia 18)
Otros parámetros NO conectados al bloque (datos locales estáticos)
RES_STS STS_CMP STS_OFLW STS_UFLW
(BOOL) Desactivar bit de estado. Permite desactivar los bits STS_CMP, STS_OFLW, STS_UFLW y STS_ZP. (DB de instancia bit 32.2). (BOOL) Estado del comparador. Indica que la condición del comparador o que la salida está activada. (DB de instancia bit 26.3). (BOOL) Estado de rebase por exceso. (DB de instancia bit 26.5). (BOOL) Estado de rebase por defecto. (DB de instancia bit 26.6).
Para trabajar desde el programa con la interfaz de medida de frecuencia tendremos una serie de parámetros (no es necesario escribirlos en la SFB para utilizarla. La última petición debe haber concluido (JOB_DONE = TRUE). Parámetros de entrada
JOB_REQ JOB_ID
JOB_VAL
(BOOL)Lanzamiento de la petición(flanco ascendente). (DB de instancia bit 4.3). (WORD) Número de petición. (Dirección DB de instancia 6). Puede tomar los valores: 00 hex Petición sin función 01 hex Escribir límite inferior 02 hex Escribir límite superior 04 hex Escribir tiempo de integración 81 hex Leer límite inferior 82 hex Leer límite superior 84 hex Leer tiempo de integración (DINT) Valor para la petición de escritura. (Dirección DB de instancia 8). Valores entre (-231) a (+231 – 1)
Resultados en la salida del SFB
JOB_DONE JOB_ERR JOB_STAT
(BOOL) Es posible iniciar una nueva petición. (DB de instancia bit 22.0). (BOOL) Petición errónea. (DB de instancia bit 22.1). (WORD) Número de error de petición (0 a FFFF hex). (Dirección DB de instancia 24).
Otros parámetros NO conectados al bloque
JOB_OVAL
(DINT) Valor de salida para las peticiones de lectura. (Dirección DB de instancia 28). Los valores admisibles 31 31 son de (-2 ) a (+2 – 1).
Rangos admisibles para JOB_VAL, dependen del modelo de CPU Escribir límite inferior: De 0 a 29 999 999 (313C) y de 0 a 59 999 999 (314C-2 DP) Escribir límite superior: De 0 a 30 000 000 (313C) y de 0 a 60 000 000 (314C-2 DP) Escribir tiempo de integración: de 10 a 10 000 ms Contadores rápidos en Siemens S7 31xC
18
Roberto Álvarez Sindín. IES Cavanilles. Alicante
8.3
Sistemas Programables Avanzados
Control de modulación de ancho de pulso. SFB PULSE (SFB 49)
Funciones disponibles:
Iniciar/detener con la puerta software SW_EN Habilitar/controlar la salida DO Leer bits de estado Introducción del valor de salida Peticiones de escritura y lectura de registros
Especificaciones de los parámetros del bloque: Parámetros de entrada:
LADDR CHANNEL SW_EN MAN_DO SET_DO OUTP_VAL
(WORD) Dirección E/S del submódulo que se ha definido previamente en "HW Config". Por defecto serán del W768 al W783 (W768 en hexadecimal sería W#16#300). La dirección 0 en el DB de instancia. (INT) Número de canal a utilizar (0, 1, 2 ó 3). (Dirección DB de instancia 2). (BOOL) Puerta software para iniciar o detener la salida. (DB de instancia bit 4.0). (BOOL) Habilitación del control manual de la salida. (DB de instancia bit 4.1). (BOOL) Forzado de salida. (DB de instancia bit 4.2). (INT) Preajuste del valor de salida por miles (de 0 a 1000) o como valor analógico (de 0 a 27648). (Dirección DB de instancia 6)
Parámetros de salida:
STS_EN STS_STRT STS_DO
(BOOL) Estado de habilitación. (DB de instancia bit 16.0). (BOOL) Estado puerta HW (entrada de inicio). (DB de instancia bit 16.1). (BOOL) Estado salida. (DB de instancia bit 16.2).
Otros parámetros NO conectados al bloque (datos locales estáticos)
Para trabajar desde el programa con la interfaz de modulación de ancho de pulso tendremos una serie de parámetros (no es necesario escribirlos en la SFB para utilizarla. La última petición debe haber concluido (JOB_DONE = TRUE). Parámetros de entrada
JOB_REQ JOB_ID
JOB_VAL
(BOOL)Lanzamiento de la petición(flanco ascendente). (DB de instancia bit 4.3). (WORD) Número de petición. (Dirección DB de instancia 10). Puede tomar los valores: 00 hex Petición sin función 01 hex Escribir duración del periodo 02 hex Escribir retardo a la conexión 04 hex Escribir duración mínima de impulsos 81 hex Leerr duración del periodo 82 hex Leer retardo a la conexión 84 hex Leer duración mínima de impulsos (DINT) Valor para la petición de escritura. (Dirección DB de instancia 12). Valores entre (-231) a (+231 – 1)
Resultados en la salida del SFB
JOB_DONE JOB_ERR JOB_STAT
(BOOL) Es posible iniciar una nueva petición. (DB de instancia bit 16.3). (BOOL) Petición errónea. (DB de instancia bit 16.4). (WORD) Número de error de petición (0 a FFFF hex). (Dirección DB de instancia 18).
Otros parámetros NO conectados al bloque
JOB_OVAL
(DINT) Valor de salida para las peticiones de lectura. (Dirección DB de instancia 20). Los valores admisibles 31 31 son de (-2 ) a (+2 – 1).
Rangos admisibles para JOB_VAL: Escribir duración del periodo: Según base de tiempo de 0,1 ms (de 4 a 65535) o de 1 ms (de 1 a 65535) Escribir el retardo a la conexión: De 0 65535 Escribir la duración mínima de impulsos: Según base de tiempo de 0,1 ms (de 2 a T /2) o de 1 ms (de 0 a T/2)
Contadores rápidos en Siemens S7 31xC
19
Roberto Álvarez Sindín. IES Cavanilles. Alicante
8.4
Sistemas Programables Avanzados
Alarmas de diagnostico y de proceso
Utilización de la alarma de diagnóstico
En caso de aparición de
errores de parametrización (datos de los módulos) y
el error "Se ha perdido un error de proceso"
Se puede disparar una alarma de diagnóstico. La alarma de diagnóstico se muestra tanto si se trata de un error entrante como saliente. La alarma de diagnóstico permite reaccionar inmediatamente a errores en el programa de usuario. En todo caso, se activará el led rojo SF. Procedimiento
1. Habilite la alarma de diagnóstico en la pantalla de parametrización "Parámetros básicos". (Selección de alarmas: diagnóstico o diagnóstico/proceso) 2. Instale el OB de alarma de diagnóstico (OB 82) en su programa de usuario. Evaluación de una alarma de diagnóstico en el programa de usuario
Después de dispararse una alarma de diagnóstico podrá evaluar en el OB 82 qué alarma de diagnóstico se ha disparado.
Si en el OB 82, byte 6 + 7 (OB 82_MDL_ADDR) consta la dirección de su submódulo, significa que la alarma de diagnóstico ha sido disparada por el contador de su CPU.
Si aún queda por lo menos un error pendiente, en el OB 82, byte 8, se activa el bit 0 (módulo defectuoso). Si todos los errores pendientes se han notificado como "salientes", en el OB 82, byte 8, se desactiva el bit 0.
Obtendrá la causa exacta del error evaluando los bytes 8 y 11.
Uso de la alarma de proceso
Es posible disparar una alarma de proceso con determinados eventos. La alarma de proceso permite reaccionar a los eventos inmediatamente en el programa de usuario. Procedimiento
1. Habilite la alarma de proceso en la pantalla de parametrización "Parámetros básicos". (Selección de alarmas: Proceso o diagnóstico/proceso) 2. Ajuste cada uno de los eventos que desea que disparen una alarma de proceso en las pantallas de parametrización correspondientes a "Contaje", "Medición de frecuencia" o "Modulación del ancho de pulso". 3. Instale el OB de alarma de proceso (OB 40) en su programa de usuario. Reacción ante una alarma de proceso
El sistema operativo de la CPU accede al OB 40 en el programa de usuario. La activación de una alarma de proceso sin que se encuentre cargado el OB correspondiente provoca que la CPU pase a STOP. Contadores rápidos en Siemens S7 31xC
20
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Evaluación de una alarma de proceso en el programa de usuario
Después de dispararse una alarma de proceso podrá evaluar en el OB 40 qué alarma de proceso se ha disparado.
Si en el OB 40, byte 6 + 7 (OB_40_MDL_ADDR) consta la dirección de su submódulo, la alarma de proceso ha sido disparada por el contador de su CPU.
Obtendrá la causa exacta evaluando los bytes 8 a11 de la palabra doble OB40_POINT_ADDR. Contaje
Medición de frecuencia
Modulación de ancho de pulso
Contadores rápidos en Siemens S7 31xC
21
Roberto Álvarez Sindín. IES Cavanilles. Alicante
9.
Sistemas Programables Avanzados
Ejemplo de aplicación
Conectar un encoder de fase diferencial al canal 0 del PLC y realizar un contaje sin fin hasta el valor 1000. Realizar la configuración HW del contador con una histéresis de valor 10, habilitando la alarma de proceso cuando se alcance el valor establecido. Al activarse esta alarma deberá conectarse la salida A125.0, que se desactivará mediante la entrada E125.0. Comprobar el funcionamiento del resto de funciones del SFC. Cargar mediante JOB_VAL un valor que se escribirá de forma indirecta en un área de memoria MW20. El nuevo valor del contador se obtendrá escalando el valor de la entrada analógica 0 del PLC entre 0 y 10000 (es necesario pasar el valor real resultante del escalado a entero para poder ser introducido al contador). Volver a realizar la medida del comprobando que se han modificado los valores de la alarma. Desde Step 7 crearemos un nuevo proyecto basado en el modelo de PLC disponible, CPU 313C ó CPU 314C-2 DP y editaremos el HW paa habilitar el módulo de contaje en el canal 0 en modo ‘Contaje sin fin’.
Haremos el ajuste de los parámetros de contaje tal y como se muestran en la imagen: Canal 0: Contaje sin fin Función puerta -> Interrumpir contaje Valor de comparación -> 1000 Histéresis -> 10 Evaluación señal -> Encoder 1x Puerta HW -> Habilitada Comportamiento de la salida - > Comparación El resto de parámetro, dejarlos por defecto. Guardar y compilar cambios.
Contadores rápidos en Siemens S7 31xC
22
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Crearemos después una función FC1 ‘Contador’ y en ella insertaremos el SFB 47 desde la Standard
Library -> System Function Blocks -> SFB 47
Como es un bloque de sistema necesita un DB de instancia para almacenar los datos, por lo que le asignaremos el DB1, que se creará de forma automática.
Ahora parametrizamos el bloque con los datos que se muestran a continuación (revisar la ayuda del bloque y la documentación) Datos imprescindibles LADDR = W#16#300 (Dirección contaje ajustada en HW 768) CHANNEL = 0 (Canal 0 de contaje) SW_GATE = E126.0 (Inicialización contaje) CTRL_DO = E126.1 (Habilitación salida) SET_DO = E126.2 (Forzado salida) STS_GATE = M10.1 (Estado de puerta interna) STS_STRT = M10.2 (Estado puerta HW E124.2) STS_LTCH = M10.3 (Estado entrada LATCH E125.4 ). STS_DO = M10.4 (Estado salida A124.0). STS_C_DN = M10.5 (Estado sentido atrás) STS_C_UP = M10.6 (Estado sentido adelante) COUNTVAL = MD100 (Valor actual de contaje) LATCHVAL = MD104 (Valor actual de LATCH) El resto de valores los dejamos de momento sin completar.
Contadores rápidos en Siemens S7 31xC
23
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Ahora lo único que me queda es llamar al FC1 en el OB1 y comprobar el funcionamiento del contador.
Accediendo al DB1 de instancia podremos ver y utilizar todos los parámetros asociados a las operaciones de contaje, lo que nos facilita la utilización por programa. En este ejemplo hemos usado marcas para ver mejor el estado de algunos bits, pero en programa no es necesario ya que las podemos llamar directamente desde el programa. Comprobar el funcionamiento correcto del contador.
Contadores rápidos en Siemens S7 31xC
24
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Modificación de los parámetros del contador mediante programa: JOB_REQ JOB_ID JOB_VAL
Lanzamiento de la petición Número de petición. Valores admisibles (formato W#16#xy): Valor para la petición de escritura (numérico o canal).
→→→→
Resultados en la salida del SFB
JOB_DONE JOB_ERR JOB_STAT
Última petición completada. Petición errónea Número de error de petición
Escribiremos en el bloque de función de contador rápido los parámetros En el OB1 (o en otra FC) añadimos una línea de programa que mueva los parámetros a las palabras de control.
Con la E125.7 cargaremos los valores en el contador rápido (M10.0) W#16#4 en MW50 para escribir un nuevo valor de comparación L#10000 en MD60 para poner la comparación en 10000
Comprobar que ahora el disparo de comparación (A125.0) se hace al alcanzar 10000 . Probar otros valores y otras operaciones sobre el contador. Alarmas de proceso en OB40
Vamos ahora a configurar una alarma de proceso en el OB40, para ello modificamos la configuración HW para que se habiliten las alarmas de proceso y configuramos una alarma de alcance del valor de comparación.
Como siempre, guardar, compilar y cargar en el PLC las modificaciones. Contadores rápidos en Siemens S7 31xC
25
Roberto Álvarez Sindín. IES Cavanilles. Alicante
Sistemas Programables Avanzados
Creamos ahora una OB40 de alarma de proceso que nos ponga a SET una salida la A125.0 (y también A125.1) y que se reseteará (en OB1) mediante la entrada E125.0. La evaluación de las alarmas de interrupción se hacen en la doble palabra OB40_POINT_ADDR, el disparador de comparación del contador 0 es el bit 3 del primer byte de la doble palabra ( ver tablas del punto 8.4), por tanto el valor que tengo que evaluar es 08000000 : 7 0
6 0
5 0
Byte 1 4 3 0 1
0
2 0
1 0 8
0 0
7 0
6 0
5 0
Byte 2 4 3 0 0
0
2 0
1 0 0
0 0
7 0
6 0
5 0 0
Byte 3 4 3 0 0
2 0
1 0 0
0 0
7 0
6 0
5 0
Byte 4 4 3 2 0 0 0
0
1 0
0 0
0
Entonces, cuando tenga un 08000000 en OB40_POINT_ADDR significa que se ha disparado la alarma de proceso de que el contador 0 ha alcanzado su valor de contaje. Me bastará entonces comparar el valor de la doble palabra con ese valor en el OB40. Como no puedo compararlo en hexadecimal puedo hacerlo de dos formas. Mediante una comparación lógica con doble palabra. O pasando el valor de OB40_POINT_ADDR a una doble palabra y comparando en entero: (OB40) Método 1
(OB40) Método 2
Lo pondremos de las dos formas en el OB40, para verificar que ambas formas son válidas, una activará la salida A125.0 y la otra la A125.1. Finalmente ya sólo me queda poner en el OB1 un reset de la alarma que desactive los bits que se había puesto a 1 al activarse al alarma de contaje y probar el funcionamiento del programa. Si está todo correcto, se producirá el disparo de la alarma al llegar el contaje a 10000 pulsos. Nota:
En caso de tener varias alarmas de interrupción activas en el OB40, además de evaluar el bit del OB40_POINT_ADDR, hay que tomar en consideración que módulo es el que ha disparado la alarma ya que podría darse la casualidad de que otra alarma de otro módulo active también ese mismo bit. Para ello hay que evaluar el OB_40_MDL_ADDR que indica el módulo que ha provocado el disparo. Combinando el módulo y el punto, se pueden poner varias alarmas de proceso en el OB40 y cada una tendrá su disparador propio y realizará acciones únicas en función de la alarma activa.
Contadores rápidos en Siemens S7 31xC
26