PROYECTO FIN DE CARRERA INGENIERÍA DE...

173
PROYECTO FIN DE CARRERA INGENIERÍA DE TELECOMUNICACIÓN GESTOR DE COMUNICACIÓN POR SMS PARA PLC S7-200 Autor: Lorenzo Rivas Kaiser Tutor: Jesús Iván Maza Alcañiz Fecha: Octubre de 2012

Transcript of PROYECTO FIN DE CARRERA INGENIERÍA DE...

Page 1: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

PROYECTO FIN DE CARRERA

INGENIERÍA DE TELECOMUNICACIÓN

GESTOR DE COMUNICACIÓN POR SMS PARA PLC S7-200

Autor: Lorenzo Rivas Kaiser

Tutor: Jesús Iván Maza Alcañiz

Fecha: Octubre de 2012

Page 2: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Con especial cariño para mis padres Félix y Elsbeth,

a quienes agradezco su ejemplo, su esfuerzo y su dedicación.

Page 3: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada
Page 4: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 2/103

Índice

INTRODUCCIÓN ………………………………………………………………………………………. 3 DESCRIPCIÓN GENERAL DEL PROYECTO …………………………………………… 7

Objetivo y desarrollo ………………………………………………………….. 7 Librería Nubitek SMS Manager …………………………………………… 8

BLOQUE I ELEMENTOS DE DESARROLLO DE LA LIBRERÍA DE GESTIÓN DE MENSAJES ELEMENTOS HARDWARE ………………………………………………………………………… 12

Autómata SIEMENS S7-200 …………………………………………… 12 Módem GSM TC65iT ………………………………………………………….. 26 Cable de comunicación entre PLC y módem ………………. 29

ELEMENTOS SOFTWARE ………………………………………………………………………… 32 STEP7 MicroWIN ………………………………………………………….. 32 Comandos AT para control del modem GSM ………………. 37

REQUISITOS DE LA APLICACIÓN FINAL …………………………………………… 40 ESTUDIOS PREVIOS ……………………………………………………………………………………….. 44

Control del modem desde el hiperterminal ………………. 44 Desarrollo del driver de comunicaciones ………………. 45 Diseño de la máquina de estados …………………………….. 49

ESTRUCTURA DEL PROGRAMA ………………………………………………………….. 51 Bloques funcionales del programa ……………………………… 51 Enviar SMS ……………………………..………………………………………….. 55 Recibir SMS ……………………………..………………………………………….. 58 Teleservicio ……………………………..………………………………………….. 61

BLOQUE II UTILIZACIÓN DE LA LIBRERÍA DE GESTIÓN DE MENSAJES REQUERIMIENTOS MÍNIMOS ………………………………………………………………………… 64 INSTALACIÓN DE NUBITEK SMS MANAGER …………………………………………… 66 HARDWARE: CONEXIONADO Y CONFIGURACIÓN …………………………….. 70 EL MODEM GSM ……………………………………………………………………………………….. 74 MODO DE PRUEBA Y CLAVE NUBITEK ……………………………………………. 76 FUNCIONES DE PROGRAMA: INTRODUCCIÓN Y EJEMPLO ………………. 79 SMS MANAGER: LA FUNCIÓN PRINCIPAL ……………………………………………. 81 ENVIAR SMS ………………………………………………………………………………………..…………….. 83 RECIBIR SMS ………………………………………………………………………………………..…………….. 91 ÁREA DE VARIABLES DE USUARIO …………………………………………………………… 94

Mapa del área de variables de usuario ……………………………………………. 95 Códigos de error/evento …………………………………………………………… 98

TELESERVICIO Y GESTIÓN DEL PUERTO CERO …………………………….. 100 ANEXO I CÓDIGO DE LA LIBRERÍA NUBITEK SMS MANAGER

Page 5: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 3/103

Introducción

Este proyecto se enmarca en la tendencia que desde hace unos años

caracteriza al mundo de la automatización: el acceso a numerosos sistemas

diferentes de comunicación y la integración con elementos ajenos a los

propios de automatización.

A gran escala, los grandes PLCs han desarrollado herramientas para integrarse

en la estructura de las fábricas: comunicaciones por Ethernet, sistemas MES

para integrar las aplicaciones de gestión de la producción a nivel PC con la

capa de control PLC, nuevos sistemas de cableado en fábrica basados en

tecnología inalámbrica, etc.

En el mercado del pequeño PLC, la tendencia se expresa con personalidad

propia. Al igual que con el gran PLC, también se han desarrollado las opciones

de comunicación en planta, integración con los PLCs de nivel superior

(Profibus, Ethernet), pasarelas de conexión con aplicaciones PC, etc. Sin

embargo donde se está produciendo la última revolución es en plano de las

“islas autónomas” que suponían las estaciones remotas, aquellas encargadas

de controlar pequeñas instalaciones de agua, electricidad, antenas, etc. Lo

mismo para la maquinaria que requiere movilidad, o para la que se encuentra

en una posición aislada en una gran factoría.

Evolución histórica

Numerosos fabricantes han ido desarrollando sus propuestas para conectar a

las estaciones remotas con las máquinas o personas responsables de

supervisarlas y/o controlarlas.

Page 6: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 4/103

Las primeras pasaron por el uso de tecnología de telefonía analógica, en líneas

dedicadas. De tal forma con un módem analógico y una línea de 2 hilos

dedicada se podía conectar un equipo situado hasta a 30 Km. de distancia.

Siguiendo con los sistemas analógicos, se pasó luego a la integración con la

red conmutada, es decir, la conexión a través de la red comercial de telefonía.

El PLC aprendía a llamar por teléfono, o al menos a responder y comunicar. La

desventaja es que requiere que haya un punto de conexión a la red junto al

PLC, pero una vez conectado, ya no hay limitaciones en cuanto a la distancia

alcanzable.

Aparecieron igualmente las opciones de comunicación por radio, con sus

ventajas e inconvenientes: menor alcance, saturación del espacio

radioeléctrico, ruidos, consumo de energía (no siempre disponible en

estaciones remotas). La principal ventaja, que era el primer sistema

inalámbrico para PLC.

Con la tecnología GSM llegaron sistemas más avanzados. Rápidamente se

desarrollaron también tecnologías de conexión remota entre dos máquinas

por módem GSM: usando un acceso en modo datos se permite a una máquina

realizar una llamada a otra. Una vez conectadas pueden intercambiar datos de

forma inalámbrica. La principal desventaja era y sigue siendo la necesidad de

contar con cobertura de algún operador de telefonía móvil.

Uno de las tendencias más extendidas a día de hoy son los dispositivos donde

se integra comunicación GSM con entradas y salidas digitales. El dispositivo se

configura en general desde un PC y es capaz de enviar mensajes SMS cuando

recibe impulsos eléctricos por alguna de sus entradas. A veces se utiliza de

forma autónoma y otras en paralelo con un PLC, que se coordina

eléctricamente con él.

Finalmente, la tendencia que se impone es la incorporación de tecnologías de

tipo GPRS/3G para hacer comunicaciones con servidores conectados a

Page 7: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 5/103

Internet. Esto permite abordar la comunicación máquina-operador, en ambos

sentidos, pero también la comunicación entre máquinas (casi siempre a través

de un servidor central).

Comunicación por SMS

En general las aplicaciones de mensajes SMS para PLC se utilizan para

comunicar desde el PLC directamente con el usuario final, con la persona

encargada del mantenimiento o la supervisión del equipo. En la mayoría de los

casos la comunicación por SMS no es la forma más adecuada para la

comunicación entre máquinas, aunque ofrece indudables ventajas en algunos

casos concretos.

En el ámbito de las aplicaciones de SMS, las posibilidades en el mercado

comenzaron siendo muy limitadas: equipos preconfigurables, sistemas poco

versátiles, o proyectos de software muy básicos para programadores

dispuestos a desarrollarlos y adaptarlos a sus necesidades.

Los equipos preconfigurables ocupan una posición preponderante en el

mercado: son dispositivos que integran un módem GSM y una serie de

entradas y salidas. Con un puerto se configura el comportamiento del equipo.

Avisos ante activación de las entradas, y telecontrol por SMS sobre el estado

de las salidas. Estos equipos, por su sencillez, han sido muy exitosos en

numerosos campos.

En otras instalaciones se ha utilizado como elemento intermedio de

comunicación un PC, que tiene mayor capacidad de proceso para controlar un

modem. Este sistema es apropiado en instalaciones de mayor tamaño, y en

ellos el PLC solicita a un PC, por la vía de comunicación que compartan, que

se realice un envío de SMS a través del modem que tenga conectado, en

general al puerto serie.

Page 8: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 6/103

Muchas marcas de controladores han desarrollado software, ejemplos y

librerías para que los programadores pudieran integrar directamente la

gestión del modem en el programa de control de sus equipos. El resultado ha

sido muy diverso, pero casi siempre ha adolecido o de robustez, o de

versatilidad, o de sencillez para el programador.

Aún así, como la tendencia es imparable, ya existen en el mercado algunos

equipos de control, en general muy sencillos u orientados a procesos

particulares (como riego o clima), con el modem y la programación de avisos

SMSs integrada, y en las nuevas familias de PLCs que salen en los últimos años

sí se viene incorporando esta tecnología, en general a través de módulos de

ampliación específicos para comunicación por telefonía (SMS, GPRS, etc).

En el caso concreto del PLC S7-200 de Siemens, la solución aportada por la

compañía no era satisfactoria: se trataba de una librería de libre distribución

con prestaciones muy limitadas, que adolecía de una adecuada robustez ante

fallos y cuya capacidad de control del módem y de los procesos de

comunicación no estaba convenientemente resuelta. Como consecuencia de

estas carencias, su utilización requería de una programación adicional muy

compleja para el integrador tipo de este familia de PLCs.

Page 9: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 7/103

Descripción general del proyecto

Objetivo y desarrollo

El objetivo del proyecto ha sido desarrollar un software de propósito general

para el envío y recepción de SMSs, que pueda ser integrado fácilmente en

cualquier programa de control de un PLC SIEMENS S7-200.

Para cumplir dicho objetivo se ha creado una librería que está a disposición

del programador y que le permite centrarse estrictamente en la funcionalidad

de comunicación por SMS, esto es, qué mensaje quiere mandar, cuándo y a

quién, y que realiza su misión de forma transparente a todos los procesos

internos de control del modem, de gestión del puerto de comunicaciones y de

otras tareas engorrosas.

El entorno de trabajo STEP 7 MicroWIN permite la creación de librerías, y con

esta herramienta se ha creado un conjunto de funciones que permiten al

programador del equipo manejar el envío y la recepción de SMSs como si

fueran una funcionalidad propia del S7-200, programándolo como una función

más del proyecto.

Para dotar de comunicación GSM al S7-200 se ha incorporado un modem

TC65T, que se gobierna mediante “comandos AT” a través del puerto serie.

Este juego de comandos, en su mayor parte estandarizado para dispositivos

GSM, permite un control total de las funciones de configuración y

comunicación del modem. Dicho de otra forma, todo el control del modem y

el envío /recepción de SMSs se reduce a un diálogo por el puerto serie

formado por comandos AT que genera el autómata y las respuestas ofrecidas

por el modem.

Page 10: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 8/103

Este panorama de comando/respuesta ha permitido tratar todo el proyecto

con un enfoque de máquina de estados, que en cada punto ordena una acción

mediante un comando AT, y en función de la respuesta avanza hacia otro

estado determinado. De hecho, el trabajo de estudio previo del modem se ha

efectuado utilizando un hiperterminal y actuando sobre el modem con

comandos AT desde una consola, hasta conocer en detalle su funcionamiento.

A continuación la tarea consistió en programar el PLC para que procediera

dando él mismo los comandos AT desde el puerto, y actuando en función de

las respuestas.

Otro de los puntos notables en el trabajo del proyecto ha sido la de integrar

de una forma coherente y robusta la acción de diversos elementos, algunos

síncronos y gobernados por el programa, y otros asíncronos y relacionados al

programa. Como elemento síncrono principal está la gestión de la máquina de

estados, y como elementos asíncronos la lista es mucho mayor:

principalmente las comunicaciones por el puerto con el módem, las órdenes

de envío de SMSs, y la llegada de SMSs al modem.

Por último, el tercer punto fuerte del desarrollo del proceso fue la tarea de

hacer transparente al usuario toda la parafernalia propia e interna del

envío/recepción de SMSs, es decir, la configuración interna del módem, la

gestión de la comunicación por el puerto, y el tratamiento de bajo nivel del

envío/recepción de SMSs (conflictos y colisiones de operaciones simultaneas,

análisis y procesado de cadenas de texto, etc).

Librería Nubitek SMS Manager

El resultado de este proyecto es la librería Nubitek SMS Manager, desarrollada

por Lorenzo Rivas en el ámbito de la empresa Nubitek Industrial IT, SL,

partiendo de los conocimientos y experiencias que adquirió durante su etapa

previa, en el departamento de automatización de la empresa SIEMENS. Desde

que la librería se comenzó a comercializar ha sido utilizada por numerosos

Page 11: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 9/103

programadores y en la actualidad está implementada en múltiples

instalaciones y máquinas en países de los cinco continentes.

Descripción

Nubitek SMS Manager es un software de control que permite a un PLC S7-200

de Siemens combinarse con un módem GSM y realizar envío y recepción de

SMS, integrando la comunicación vía SMS en cualquier programa de control

de forma sencilla, robusta y segura.

Nubitek SMS Manager es una librería lista para añadirse al entorno de

programación STEP7 MicroWIN. Se compone de 3 funciones de usuario y su

uso es extremadamente sencillo: por cada mensaje que desee enviar o recibir

tan solo deberá añadir un segmento a su programa de control.

Campos de aplicación

Nubitek SMS Manager ofrece numerosas posibilidades de aplicación:

� Recibir en el móvil alarmas o hitos de mantenimiento.

� Consultar el estado de una estación remota.

� Recibir datos de producción.

� Comandar una instalación a distancia.

� Realizar una comunicación por SMS entre estaciones distribuidas.

Prestaciones

Nubitek SMS Manager ofrece las siguientes prestaciones al programador:

� Control total del módem GSM: la aplicación se encarga por completo

de todo lo relacionado con la gestión del modem: inicialización y

configuración del módem GSM, envío de los SMS salientes, recepción y

Page 12: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 10/103

análisis de los SMS entrantes, configuración y gestión del puerto de

comunicación, gestión y recuperación ante incidencias, etc.

� Enviar SMS: Nubitek SMS Manager gestiona ilimitados SMS de salida a

múltiples teléfonos de destino. Para enviar un SMS tan sólo se deben

indicar los parámetros básicos: condición de disparo, texto del mensaje

y teléfono(s) de destino.

Los textos de los SMS se definen libremente en el Bloque de Datos, la

inserción de variables en los SMS de salida se hace de forma automática

y las alarmas simultáneas se gestionan sin perder ninguna.

� Recibir SMS: el reconocimiento de mensajes entrantes se hace

mediante palabras clave que identifican el mensaje, lo que aporta gran

flexibilidad.

Nubitek SMS Manager analiza los SMS entrantes y avisa si se ha recibido

uno que se ajusta a algunos de los patrones marcados. Incluso puede

capturar valores numéricos contenidos en el SMS y almacenarlos en una

posición de memoria.

� Teleservicio: Nubitek SMS Manager es compatible con el acceso por

teleservicio desde STEP7 MicroWIN, modo que se puede activar de

forma local o también de forma remota, mediante un SMS.

Page 13: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 11/103

BLOQUE I

ELEMENTOS DE DESARROLLO DE LA LIBRERÍA DE GESTIÓN DE MENSAJES

Page 14: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 12/103

Elementos Hardware

Autómata SIEMENS S7-200

El SIMATIC S7-200 es el PLC de gama baja de la familia SIMATIC de SIEMENS,

actualmente en fase de sustitución con la nueva familia S7-1200. Es un micro-

PLC compacto y potente, con notables posibilidades a nivel de conectividad.

Como es norma en la mayoría de fabricantes, responde a una concepción

modular del PLC que permite soluciones no sobredimensionadas y ampliables

en cualquier momento.

Es uno de los micro-PLCs más extendidos en el mundo. La división de

automatización de Siemens es, de hecho, uno de los líderes del mercado

mundial.

La gama S7-200 comprende diversos sistemas de automatización pequeños

que se pueden utilizar para numerosas tareas. Gracias a su diseño compacto,

su bajo costo y su amplio juego de operaciones, los sistemas de

automatización S7-200 son idóneos para controlar tareas sencillas. La gran

variedad de modelos S7-200 y el software de programación basado en

Windows ofrecen la flexibilidad necesaria para solucionar las tareas de

automatización.

Hay 5 modelos diferentes de CPU y numerosos módulos de ampliación, que

añaden entradas y salidas digitales, analógicas, funcionalidades de

comunicación (profibus, ethernet..), pesaje, posicionamiento, etc.

CPU S7-200

La CPU S7-200 incorpora en una carcasa compacta un microprocesador, una

fuente de alimentación integrada, así como los circuitos de entrada y de

Page 15: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 13/103

salida. Tras haber cargado el programa en el S7-200, éste contendrá la lógica

necesaria para observar y controlar los aparatos de entrada y salida de la

aplicación.

En la parte superior de la CPU están las salidas digitales integradas y la fuente

de alimentación. Según el modelo, se puede alimentar a 24 VCC o a 110/230

VAC. Igualmente, las salidas pueden ser a relé o a transistor.

En la parte inferior se localizan las entradas digitales integradas (a 24 VCC) y

una pequeña fuente de alimentación a 24 VCC que sirve para alimentar

módulos de ampliación, sensores, etc.

A la derecha la CPU tiene una pequeña tapa tras la que se encuentran:

� El selector de modo: permite pasar la CPU a RUN o STOP de forma

manual. Incorpora una tercera posición, TERM, que se diferencia del

modo RUN en un matiz de seguridad. Cuando se da alimentación a la

CPU, en posición RUN ésta arranca de forma automática. En la posición

TERM la CPU permanece en STOP.

� Potenciómetros analógicos: permiten modificar entre 0 y 255 el valor

de un registro interno predeterminado. Son útiles para hacer ajustes

manuales de forma sencilla.

Page 16: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 14/103

� Puerto de ampliación: excepto en la CPU más sencilla, que no tiene,

este puerto permite conectar los módulos de ampliación a la CPU.

A la izquierda, abajo, se encuentra el puerto RS485 de comunicación de la

CPU. Las CPUs más avanzadas de la gama tienen dos y son totalmente

idénticos, tienen la misma funcionalidad y funcionan en paralelo. El puerto de

la CPU puede funcionar en modo PPI, protocolo estándar de Siemens, o en

modo Freeport, esto es, en modo carácter y completamente controlado por el

usuario. El uso del puerto es un punto clave en el desarrollo de este proyecto,

por lo que se describe en detalle más adelante en este capítulo.

Las características de las distintas CPUs que conforman la gama S7-200 se

resumen en el cuadro siguiente:

Page 17: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 15/103

El slot para cartucho: es una posición para alojar alguno de los cartuchos

opcionales, que pueden ser de memoria para carga del programa, de memoria

para funciones de datalogging, de pila o de reloj de tiempo real.

Los LEDs de estado: indican el modo de funcionamiento actual de la CPU,

RUN o STOP, y el posible fallo de CPU (SF)

Módulos de ampliación

El S7-200 tiene estructura modular, es decir, la gama dispone de numerosas

tarjetas de ampliación que permiten configurar y añadir funcionalidad de

forma personalizada a las necesidades de la instalación.

Este carácter modular permite optimizar la funcionalidad del PLC y el coste en

hardware y en espacio en el armario eléctrico. Además ofrece otras ventajas,

como facilidad para el mantenimiento (en caso de fallo solo hay que reponer

la tarjeta dañada) o como la posibilidad de realizar ampliaciones en el futuro, a

medida que crecen las necesidades del sistema.

La CPU 221 no permite ampliaciones, pero la 222 admite añadir 2 módulos de

ampliación y el resto de la gama admite hasta 7.

El S7-200 dispone de 3 familias diferentes de tarjetas de ampliación: las de

entrada/salida, ( digital o analógica), las de comunicación (ethernet, profibus,

etc.), y las de función especial (posicionamiento, pesaje, etc.)

1.- Módulos de entradas y salidas

Los módulos digitales sirven para añadir puntos digitales de entrada, salida, o

ambos al tiempo. Se caracterizan por el número de señales que incorporan (8

ó 16) y por el tipo. Las salidas pueden ser a transistor o a relé, las entradas

normalmente a 24Vcc pero también hay alguna tarjeta que admite 220 Vac.

Page 18: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 16/103

Estas señales van asociadas siempre a una variable booleana del programa,

por ejemplo I0.2 o Q2.1

Los módulos de señal analógica permiten capturar el valor medido por un

sensor en su rango continuo de trabajo (temperatura, presión, nivel, distancia,

etc.). Igualmente, permiten actuar de forma variable ante un dispositivo de

operación (luminosidad, calor, velocidad, etc.).

Entradas analógicas: la señal eléctrica que produce el sensor de medida

analógico puede variar en un rango de tensión (0 – 10 V) o de intensidad (0 –

20 mA). Este rango es convertido por la tarjeta analógica de entrada en un

valor numérico entre 0 y 32000, de forma que el PLC, realizando sobre él una

conversión matemática, puede obtener el valor real medido.

Dentro del grupo de tarjetas de entrada analógica hay un conjunto específico

para conexión a sensores de temperatura, tipo termopar o termorresistencias,

que realizan un procesado de la señal recibida algo más complejo, y que

directamente ofrece el valor numérico de temperatura medido.

Salidas analógicas: la tarjeta de salidas analógicas realiza el proceso contrario.

Convierte en tensión o intensidad, según se realice el cableado del sensor, un

valor numérico entre 0 y 32000.

2.- Módulos de comunicaciones

Los módulos de comunicación añaden al PLC numerosas posibilidades de

conexión con otros dispositivos. En algunos casos a través de buses de campo

específicos del entorno industrial, en otros por medio de vías de comunicación

más estandarizadas.

� Módulo EM277 Profibus: este módulo permite al S7-200 integrarse

como esclavo en una red Profibus DP, mapeando parte de su área de

variables en el mapa de entrada/salida del dispositivo maestro de la

Page 19: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 17/103

red. Una red Profibus DP se utiliza como bus de campo porque

garantiza al maestro realizar un intercambio de información completo

con todos y cada uno de los esclavos de la red en un tiempo de ciclo

determinado y conocido.

� Módulo CP243-2 Asi: este módulo habilita al S7-200 para actuar como

maestro de una red ASI, que es una red de actuador sensor. Se

caracteriza por ser mucho más rápida que Profibus en el tiempo de

refresco, pero a costa de simplificar al máximo el tipo de información

intercambiada. Se utiliza para conectar al maestro sensores y

actuadores digitales, principalmente, aunque también los admite

analógicos.

� Módulo EM241 módem: se trata de un módem analógico, que permite

realizar comunicaciones tanto por línea dedicada entre dos S7-200,

como a través de la red conmutada de telefonía. En la época previa al

desarrollo de las redes móviles, supuso un gran avance porque también

permite al entorno de desarrollo realizar una conexión remota con el

equipo, de cara a labores de mantenimiento y supervisión.

� Módulo CP 243-1 Ethernet: tarjeta con un puerto para conectar el

equipo a una red Ethernet. Esto le permite intercambiar grandes

volúmenes de información a través de este medio tan extendido. Se

utiliza sobre todo para información no crítica de operación, pues

Ethernet no es una red determinista en el tiempo.

� Módulo CP243-1 Ethernet IT: es una tarjeta como la anterior, pero

incorpora una serie de capacidades para realizar tareas en el ámbito de

internet: esto es, el envío de email, el intercambio de ficheros por ftp, y

el alojar páginas html que pueden visualizarse desde un navegador.

Ésta última funcionalidad es muy interesante porque, si se asocian

valores de operación al fichero html, permite realizar un monitorización

vía web de la instalación.

Page 20: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 18/103

3.- Módulos de función especial

� Módulo EM 253 de posicionamiento: se utiliza para gobernar motores

paso-paso, que requieren un tren de pulsos como señal de control. La

tarjeta convierte perfiles de movimiento en un tren de pulsos de la

frecuencia y duración adecuada. Dispone además de numerosas

herramientas de desarrollo, puesta en marcha y diagnóstico.

� Módulo de pesaje Siwarex MS: realiza todo el procesado de la señal

procedente de una célula de carga. Proporciona herramientas de

gestión de este tipo específico de mediciones, como gestión de taras,

desplazamientos del cero, pesos netos y brutos, pesajes dinámicos, etc.

Áreas de Memoria del S7-200

El S7-200 posee diferentes áreas de memoria, en general de mayor tamaño a

medida que se sube en la gama de CPUs disponibles.

1.- Memoria de programa

Es la que aloja el programa de usuario, con un tamaño entre 4 Kb y 24 Kb. La

CPU debe pasar a STOP para realizar una carga de programa. En las CPUs a

partir de la 224 se puede habilitar el modo de edición en RUNTIME y realizar

modificaciones del programa sin parar la operación, aunque a costa de

consumir memoria de programa. Es decir, si se habilita el modo de edición en

RUNTIME no está disponible para programa el 100%, sólo dos terceras partes.

Esta memoria es una EPROM y no se borra nunca, es decir, aunque se deje la

unidad sin alimentación durante un largo periodo, el programa permanece.

Page 21: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 19/103

2.- Memoria de variables

La memoria V se utiliza para almacenar toda la información y las variables de

trabajo. Es una memoria uniforme, no tipada, de un tamaño entre 2 Kb y 10 Kb.

Esta memoria no se inicializa al paso de STOP a RUN, es decir, los valores

permanecen igual durante una parada y en el rearranque. Por el contrario, si

se quita la alimentación de la CPU no retiene información por defecto. Es

necesario declarar específicamente las áreas “remanentes”, que vendrán

soportadas por la pila interna (un condensador interno de alta capacidad con

una duración de unos 2 meses).

El usuario puede destinar la memoria V para lo que considere oportuno, salvo

las áreas que ocasionalmente puedan ocupar librerías de operación o

configuraciones para pantallas táctiles, etc. Se puede inicializar en la carga de

programa, mediante el llamado “Bloque de Datos”.

3.- Memoria de marcas

La memoria M o área de marcas se utiliza generalmente para almacenar

información a nivel de bit o variables auxiliares de trabajo. Es una memoria

uniforme, no tipada, de un tamaño de 32 bytes para todas las CPUs. Es decir,

es muy pequeña en comparación con la memoria V. Es por eso que

habitualmente se usa para almacenar información booleana, mientras que la

memoria V se usa deja para gestión de variables numéricas, de tamaños Word

o DobleWord.

Respecto al mantenimiento de los datos, su comportamiento frente a paradas

o pérdidas de alimentación es exactamente el mismo que para la memoria V.

Page 22: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 20/103

4.- Memoria de entrada/salida

En realidad se trata de 4 áreas de memoria diferentes, que mapean las señales

digitales y analógicas de entrada y de salida. Tienen un tamaño máximo, por

supuesto, pero están supeditadas a la presencia física real de esas entradas o

salidas, es decir, están directamente relacionadas con el hardware del equipo.

Las señales digitales se mapean a nivel de bit, por ejemplo I2.4 o Q0.6, y las

analógicas como tipo WORD, por ejemplo AIW2 o AQW4.

5.- Memoria local

El S7-200 dispone de 64 bytes de memoria local (L), de los cuales 60 se

pueden utilizar como memoria “borrador” para transferir parámetros formales

a las subrutinas.

La memoria local es similar a la memoria V (memoria de variables), con una

excepción: la memoria V tiene un alcance global, en tanto que la memoria L

tiene un alcance local. El término “alcance global” significa que a una misma

dirección de la memoria se puede acceder desde cualquier parte del

programa (programa principal, subrutinas o rutinas de interrupción). El

término “alcance local” significa que la dirección de la memoria está asociada

a una determinada parte del programa.

El S7-200 asigna 64 bytes de la memoria L al programa principal, 64 bytes a

cada nivel de anidado de las subrutinas y 64 bytes a las rutinas de

interrupción. A los bytes de la memoria L asignados al programa principal no

se puede acceder ni desde las subrutinas ni desde las rutinas de interrupción.

Una subrutina no puede acceder a la asignación de la memoria L del programa

principal, ni a una rutina de interrupción, ni tampoco a una subrutina diferente.

Una subrutina tampoco puede acceder a la asignación de la memoria L del

programa principal, ni a la de otra subrutina.

Page 23: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 21/103

El S7-200 asigna la memoria L según sea necesario en ese momento. Por

consiguiente, mientras se está ejecutando la parte principal del programa, no

existen las asignaciones de la memoria L para las subrutinas y las rutinas de

interrupción. Cuando ocurre una interrupción o cuando se llama a una

subrutina, la memoria local se asigna según sea necesario. La nueva

asignación de la memoria L puede reutilizar las mismas direcciones de la

memoria L de una subrutina o de una rutina de interrupción diferentes.

6.- Memoria de marcas especiales

La memoria SM o área de marcas especiales es un área de memoria destinada

a intercambiar información con el sistema operativo de bajo nivel de la CPU.

Es una memoria completamente estructurada en la que se localizan

numerosos campos y registros, de distinto tipo y formato dependiendo de la

información que alberguen.

En los campos de lectura de la memoria SM el usuario puede obtener valores

procedentes del sistema operativo, como el tiempo en milisegundos empleado

en el último ciclo de programa o el estado del bit de desbordamiento de

operaciones matemáticas.

Igualmente, usando los campos de escritura, el usuario puede configurar

numerosos sistemas, como la velocidad del puerto de comunicaciones o el

tiempo para una interrupción temporizada.

En la tabla se puede ver la definición del primer byte, el SMB0, con 8 bits de

estado, algunos de los cuales son muy importantes en la programación

cotidiana.

Page 24: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 22/103

Tipos de variables en el S7-200. Criterio del tamaño

El S7-200 admite diversos tipos de variables para realizar sus operaciones de

control. El primer criterio a tener en cuenta es el tamaño de datos que se

puede implementar.

� Bit: Es la mínima información asumible, una variable booleana con dos

estados. Muy utilizado en control puesto que viene asociado a todo tipo

de sensores y actuadores digitales, así como a condiciones

verdadero/falso de operación. Se direcciona indicando el área de

memoria, el byte que lo contiene, y la posición del bit (entre 0 y 7)

dentro del byte. Por ejemplo, M0.3 o Q2.1

� Byte: Unidad formada por 8 bits. Se direcciona indicando el área de

memoria, la letra B y el número de byte correspondiente. Por ejemplo,

VB220 o MB4.

Page 25: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 23/103

� Word: Unidad formada por 2 bytes. Se direcciona indicando el área de

memoria, la letra W y el número del byte de comienzo. Por ejemplo,

VW80 hace referencia a la variable WORD que ocupa los bytes 80 y 81

de la memoria V.

� DobleWord: Unidad formada por 4 bytes. Se direcciona indicando el

área de memoria, la letra D y el número del byte de comienzo. Por

ejemplo, VD20 hace referencia a la variable DOBLEWORD que ocupa

los bytes 20, 21, 22 y 23 de la memoria V.

Tipos de variables en el S7-200. Criterio del formato.

El S7-200 puede almacenar variables en formatos muy diversos, cada uno con

sus características particulares.

� BIT: Es la variable booleana, admite verdadero/falso.

� INT: El formato INT o Entero representa un valor numérico entero con o

sin signo, en tamaño WORD, lo que proporciona un rango de

representación de 65.536 valores.

� DINT: El formato DINT o Doble Entero representa un valor numérico

entero con o sin signo, en tamaño DOBLEWORD, lo que proporciona un

rango de representación de 4.294.967.296 valores.

Page 26: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 24/103

� REAL: El formato REAL o de Coma Flotante representa un valor

numérico real en tamaño DOBLEWORD. Al utilizar una codificación

interna de signo, mantisa y exponente, proporciona un rango de

representación amplísimo, y se utiliza principalmente para representar

valores con decimales.

� CHAR: El formato ASCII o Carácter representa un único carácter de

escritura (letras, cifras y signos de puntuación), en tamaño byte.

� STRING: El formato STRING o Cadena de caracteres representa un

texto de hasta 254 caracteres. El formato interno consiste en un primer

byte que indica el tamaño del texto alojado en la variable y a

continuación comienza la cadena de caracteres, en formato ASCII.

Por tener un tamaño variable y en ocasiones mucho mayor de 4 bytes,

no puede ser tratado en el acumulador de la CPU (el registro de trabajo

del microprocesador). Es por ello que se direcciona haciendo referencia

al byte de inicio, y siempre se gestionan a alto nivel, mediante las

funciones que el S7-200 proporciona en su entorno de programación.

� POINTER: El formato POINTER o Puntero representa la dirección de

una posición de memoria. Indica área de memoria y posición de byte

(no puede contener información a nivel de bit)

Bloques de programación

El programa para S7-200 puede estructurarse usando bloques de programa

reutilizables y parametrizables, que permiten una mayor eficacia de la

programación, la optimización del código empleado y la simplificación y

ordenamiento del programa. Existen 3 tipos de bloques de programa

Page 27: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 25/103

1.- Bloque Principal

Es el bloque básico del programa, desde el que se estructura todo el resto de

unidades de programa y se ejecuta permanentemente, una y otra vez.

2.- Subrutinas

Son bloques que permiten albergar parte del código del programa y que por

tanto permiten optimizar el código (son reutilizables) y generar un programa

ordenado. El S7-200 admite hasta 127 subrutinas.

Se pueden parametrizar con variables de entrada, salida, o entrada/salida.

La llamada a estos elementos de programa se produce desde el bloque

principal o desde otra subrutina, pero siempre de forma síncrona, esto es, la

llamada se produce en un momento concreto desde dentro del programa.

3.- Bloques de Interrupción

Son bloques de programa que presentan 2 diferencias fundamentales

respecto a las subrutinas.

La primera, derivada en parte de la segunda, es que no son parametrizables.

La segunda característica diferencial es que las interrupciones se ejecutan de

forma asíncrona, esto es, su llamada no está localizada en un punto concreto

dentro del programa sino que está asociada a un evento determinado

(eventos de comunicación, de cambio de estado de una entrada digital, de

temporización, de contaje rápido, etc.)

Según el evento de llamada se asocia un nivel de prioridad, de forma que al

ocurrir, se interrumpe la ejecución del programa principal o subrutina en

curso, y se da paso al código de la interrupción. En caso de concurrencia de

varias interrupciones se procesan por orden de prioridad.

Page 28: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 26/103

Las interrupciones se asocian a los eventos mediante una instrucción dentro

del programa principal, indicando el número del bloque de interrupción y el

código de evento asociado.

Ciclo de ejecución del programa

El programa para S7-200, como el del común de los autómatas industriales, se

ejecuta de forma cíclica indefinidamente en el tiempo, lo que redunda en un

control permanente sobre la instalación, pero que determina una forma

característica de enfocar la programación.

La dinámica es la siguiente: el PLC lee el estado de todas las entradas

conectadas y lo vuelca sobre la “imagen de proceso de entradas”, esto es, la

memoria que recoge el estado de la instalación. Esta memoria, junto con el

estado de las memorias internas de trabajo, son los inputs para ejecutar el

programa de usuario, cuyos resultados se concretan en modificar las

memorias internas de trabajo y en escribir la “imagen de proceso de salidas”,

que se vuelca directamente sobre las salidas del PLC q actúan sobre la

instalación. Terminado el proceso, se vuelve a empezar por el principio y de

forma indefinida.

En resumen, se puede contemplar esta dinámica como un proceso constante

de captura, procesado y actuación sobre del estado de la instalación.

Esta característica de trabajo de los autómatas hace que la integración con

elementos ajenos, como por ejemplo un módem, requiera un ejercicio extra de

gestión en el programa mediante estados, interrupciones y transiciones.

Módem GSM TC65iT

El terminal módem CINTERION TC65T es un dispositivo de comunicación

GSM/GPRS enfocado a una amplia variedad de aplicaciones. No está

Page 29: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 27/103

concebido como un producto de propósito industrial, pero esto no quita que

pueda incorporarse a este ámbito. El equipo fue desarrollado originalmente

por SIEMENS, que luego vendió la división correspondiente a la empresa

alemana CINTERION.

El TC65iT es módem GSM/GPRS cuatribanda lo que permite su uso en las

redes de comunicación GSM de todo el mundo, y con cualquier operador.

Una de sus características particulares es que dispone de un microprocesador

que le permite ejecutar programas JAVA (J2ME) y que le proporciona una

grandísima versatilidad. Esta funcionalidad, sin embargo, no se ha utilizado en

el desarrollo del presente proyecto, que utiliza solo comandos AT para control

de modem.

Dispone de varios interfaces de comunicación con dispositivos externos, lo

que lo hace muy versátil, y de una capacidad interna de procesado que lo

hace muy potente.

Descripción del módulo físico

El módem TC65iT se encierra en un terminal plástico de 190 gr de peso y

dimensiones 130 x 90 x 38 mm que tiene los siguientes elementos de

alimentación, interfaz y antena:

1. 24 puntos para alimentación y entrada/salida digital y analógica.

2. Puerto serie con conector hembra de 9 pines sub.-D

3. Conector hembra SMA para la antena

4. Botón de encendido y apagado

5. Conector hembra Western de 4 polos para audio

6. Bandeja para alojar la tarjeta SIM del operador de telefonía

7. Conector hembra Western de 6 polos para alimentación y señales de

encendido y apagado

Page 30: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 28/103

8. Además en la cara superior dispone de un LED azul configurable para

(a) mostrar el estado del módulo (encendido, conectado o apagado) o

(b) la actividad de comunicación.

Alimentación

El módem TC65iT admite un rango de alimentación entre 8 y 30 V en

continua. Se puede alimentar a través de los puntos al efecto en el bloque de

24 conectores, o a través del conector Western de 6 polos, que además

incluye una señal para encendido.

Page 31: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 29/103

Antena

La antena estándar que se utiliza con el módem TC65T es una FMA de 3

metros que con ganancia de 0 dBm.

Cable de comunicación entre PLC y módem

El control del módem se realiza introduciendo comandos a través del puerto

serie del terminal, con protocolo ASCII de 8 bits. Las velocidades más

comunes de trabajo son 9600, 19200 o 115200 baudios.

El cable PC/PPI MULTIMAESTRO de Siemens se utiliza para programar PLCs

S7-200 desde el puerto serie de un PC. En definitiva se trata de un conversor

RS232-RS485 que puede configurarse para unir el puerto serie del módem

con el puerto RS485 del PLC.

Page 32: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 30/103

El cable PC/PPI multimaestro disponer de una mochila de procesado

electrónico de la señal que permite configurar el tipo de comunicación entre

ambos extremos.

El cable autoconfigura su velocidad de trabajo, por lo que los 3 primeros

interruptores no son necesarios.

El quinto interruptor indica comunicación freeport o ASCII, lo que anula buena

parte de la electrónica de la mochila y deja el cable como un mero conversor

RS232-RS485.

El microswitch 6 permite realizar una comunicación serie cruzada, necesaria

para esta unión de dispositivos en concreto.

El interruptor 7 configura comunicación a 10 bits por carácter

Page 33: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 31/103

Adaptador para la conexión cable-módem

Se requiere un adaptador de 9 pines macho-macho para la conexión del

conector serie del cable al puerto del módem, ya que ambos son hembra.

Page 34: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 32/103

Elementos Software

STEP7 - MicroWIN

El STEP7-MicroWIN es el entorno de desarrollo y programación para PLCs S7-

200. Es un software de SIEMENS que permite configurar, programar y

mantener un proyecto, orientado tanto a trabajo offline como online.

Dispone de una multitud de subareas que permiten realizar distintas tareas,

como son:

� Desarrollar el programa del PLC.

� Asignar nombres simbólicos a las variables de un proyecto.

� Mapear y cargar en memoria un conjunto de valores de salida.

� Monitorizar y escribir en tiempo real sobre las variables y el programa

de un PLC en marcha.

� Visualizar el comportamiento del programa en ejecución dentro de un

PLC.

� Configurar características del PLC, como la velocidad del puerto de

comunicación o el grado de protección con contraseña del equipo.

� Definir el interfase de comunicaciones del PC con el PLC y gestionar

dicha comunicación.

La forma de programación de PLCs que ofrece este entorno está muy

orientada a lenguaje KOP o de contactos, y resulta muy visual pues se trata de

un sistema que representa gráficamente el flujo de información, y con cajas la

ejecución de funciones.

Page 35: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 33/103

Distribución del entorno de trabajo

En la parte superior de la ventana se localizan los menús e iconos de trabajo

para las funciones más comunes.

A la izquierda de la ventana se localiza un área con iconos para la navegación

por las distintas áreas y funcionalidades del entorno.

A continuación está el árbol de navegación, que recoge de forma ordenada

todos los elementos que conforman el proyecto, así como las herramientas de

programación.

A la derecha, en la subventana principal, es donde se desarrolla el trabajo:

programación, configuración, gestión de los símbolos, etc.

Finalmente, en la parte inferior está la ventana de información, que ofrece

datos sobre errores, compilación, etc.

Page 36: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 34/103

Bloques de programa

La definición de bloques de programa se realiza en el árbol de navegación,

creando una nueva subrutina en la carpeta de programa. Por defecto se crea

con el nombre de la subrutina libre más baja, por ejemplo SBR4. El

programador puede cambiarle el nombre para otorgarle un significado acorde

a su funcionalidad.

Dentro de las funciones el programa se estructura en segmentos, cada uno

con su número, título y recuadro para comentario.

La definición de los parámetros de entrada y salida de la función se hace en la

tabla que se muestra en la parte superior de la función. Se indica nombre, tipo

de variable y tipo en el interfaz. STEP7 MicroWIN permite incluso el paso de

punteros y cadenas como parámetros.

A continuación en la tabla se definen las variables temporales que se vayan a

usar en la función, que se mapean en la memoria dinámica L.

Desarrollo de Librerías

STEP7 – MicroWIN permite crear una librería a partir de una o varias funciones

ya programadas.

Las funciones que forman una librería se pueden integrar así en la estructura

de funciones disponibles en el entorno de programa y usarse de forma fácil y

flexible.

Las funciones y variables que usa en su interior quedan transparentes al

usuario de la librería. Igualmente la librería incorpora de forma transparente

las interrupciones que se hayan definido desde las funciones de la librería.

Las funciones de una librería deben estar programadas en su totalidad con

representación simbólica. La imposibilidad de usar direccionamientos

Page 37: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 35/103

absolutos permite que el mapeo del área de memoria para el procesado de

datos internos de la librería sea flexible. La única excepción en esta

programación simbólica está en el uso de las variables de la memoria local de

las funciones, que es libre.

Creación de librerías

El proceso para crear una librería es el siguiente:

� Crear un proyecto donde se encuentren todas las funciones que se

quieren integrar en la librería, y teniendo en cuenta que toda la

programación debe ser simbólica.

� Ir a Archivo � Crear librería… La ventana correspondiente contiene 3

pestañas.

� La primera pestaña permite seleccionar las subrutinas del proyecto que

forman el conjunto de funciones de usuario de la librería (las funciones

que se llaman internamente, así como las interrupciones, se añaden

automáticamente)

� La segunda pestaña se utiliza para nombrar la librería, definir

propiedades, número de versión y ruta en la que guardarla.

� La tercera pestaña permite al programador indicar una contraseña para

la librería, lo que permite ocultar la programación interna de sus

funciones.

El resultado es un fichero de extensión .mwl que puede ser abierto desde

STEP7-MicroWIN para integrar la librería.

Integración de librerías

Para integrar una librería en STEP7-MicroWIN el proceso es:

� Ir a Archivo � Agregar o quitar librería…

Page 38: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 36/103

� Se muestra la lista de las librería que ya han sido integradas en el

entorno de programación. Hay que pulsar el botón Agregar.

� Seleccionar la ruta de la librería (archivo .mwl).

� Pulsar el botón Aceptar.

Como resultado se genera en la carpeta librerías una subcarpeta con el

nombre de la librería y que contiene las funciones de usuario que estén

incluidas en ella.

Uso de las funciones de una librería

Para usar las funciones de una librería en un proyecto, el proceso es:

� Abrir la carpeta de la librería en el árbol de navegación.

� Incorporar la función pretendida en el programa del proyecto como si

fuera una subrutina más del proyecto.

� De forma automática se añadirán al programa esta función y todas

aquellas que se llamen internamente. Se localizarán, reunidas en una

subcarpeta Librerías, en la carpeta de bloques de programa del árbol de

navegación.

� Finalmente hay que asignar una zona de memoria para que la librería

sitúe las variables que utiliza internamente, en Archivo � Asignar

memoria a librería…

Acceso remoto por teleservicio

El teleservicio es la funcionalidad que permite al entorno de desarrollo

comunicar vía módem con un PLC remoto y trabajar como si estuvieran

físicamente conectados con un cable.

Page 39: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 37/103

Para ello se necesita un módem a ambos extremos de la comunicación, esto

es, uno conectado al PC desde el que se llama al PLC, y otro conectado al

puerto de éste.

Esta utilidad es muy demandada, pues evita a los programadores tener que

hacer desplazamientos para realizar pequeñas mejoras o en su caso un primer

diagnóstico de incidencias, que en muchos casos pueden solucionarse

fácilmente.

El teleservicio es una funcionalidad integrada de serie en STEP7-MicroWIN, y

requiere que tanto el módem local del PC como el del PLC estén

correctamente configurados. También requiere que el PLC tenga el puerto de

acceso en modo PPI.

Como las aplicaciones de PLC para control del módem utilizan el puerto en

modo freeport, es necesario habilitar vías para que, ya sea de forma remota o

localmente, se indique al PLC que debe detener la aplicación, conmutar el

puerto a modo PPI y permitir así el acceso remoto.

Comandos AT para control del modem GSM

La configuración y control estándar de un módem GSM se realiza mediante la

introducción de comandos AT a través de alguno de los interfaces habilitados.

En el presente proyecto se utiliza el puerto serie, a 9600 baudios y sin control

de flujo, lo que obliga a las partes a gestionar las colisiones convenientemente:

la iniciativa de la comunicación la toma siempre el PLC, y el modem se limita a

responder a los comandos recibidos.

La mayoría de los comandos AT admitidos por el módem se corresponden

con las convenciones GSM, pero en ocasiones los fabricantes introducen

variaciones, en general comandos añadidos o formatos diferentes.

Page 40: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 38/103

Lista de comandos utilizados

La lista de los comandos que se han utilizado en este proyecto, para gestión

del módem, son:

Configuración general del módem:

� AT+IPR=9600 � se utiliza para marcar al módem una velocidad en el

puerto de 9600 baudios

� AT&f0 � configura el módem con la parametrización de fábrica.

� ATE0 � elimina el ECO del puerto del módem.

� AT+cpin? � consulta si el PIN está cargado (para no repetir la

operación si no es necesario).

� AT+cpin=1234 � carga el PIN de la tarjeta SIM alojada en el módem.

� AT+gsn � consulta el código IMEI del módem.

� AT&w � graba la configuración realizada

� AT^moni � petición de características generales de la red GSM, entres

ellas la cobertura actual.

Configuración de la gestión de SMS:

� AT+cnmi=0,0,0,0 � configura el modo en el que se comporta el

módem ante la recepción de un SMS entrante. Para facilitar la

comunicación con el PLC, se ha inhibido el aviso, de forma que es el

PLC el que hace un polling preguntando al módem si tiene SMSs

nuevos.

� AT+cmgf=1 � configura el modo texto para el formato de SMS.

� AT^ssmss=1 � indica que para cualquier acción relacionada con los

mensajes SMS (lectura, almacenaje, borrado, etc) la memoria

preferentemente es la de la SIM.

Page 41: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 39/103

� AT+cpms=MT,MT,MT � configura las memorias de escritura, lectura y

borrado para SMSs como la suma de las disponibles en el módulo y en

la tarjeta SIM.

Configuración del módem para aceptar llamadas de teleservicio desde STEP7-

MicroWIN:

� AT&D0 � configura el puerto serie para ignorar el control DTR (Data

Terminal Ready) en el flujo de datos.

� AT\Q0 � deshabilita el control de flujo en el puerto serie.

� ATS0=1 � respuesta automática al segundo timbre para llamadas

entrantes de datos

Comandos para envío y recepción de SMS

� AT+cmgs=”+34666123456” � Comando para solicitar el envío de un

SMS al número de teléfono indicado. Ante la respuesta positiva, se debe

introducir el texto y finalizar con Control_Z.

� AT+cmgr=1 � Lectura del SMS alojado en el buzón 1 de la memoria de

SMS.

� AT+cmgd=1 � Borrado del SMS alojado en el buzón 1 de la memoria de

SMS.

Page 42: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 40/103

Requisitos de la aplicación final

Enfoque comercial

El programador típico de PLCs al nivel del S7-200 tiene unas nociones medias

en programación de autómatas. Una aplicación con unas necesidades de

gestión de datos y de las comunicaciones tan complejas como la gestión de

SMSs escapa a las posibilidades de la mayoría de ellos.

Es por eso que se hace necesario enfocar la creación de esta librería desde un

aspecto que haga completamente transparente la gestión del módem, los

aspectos de la comunicación, la gestión del puerto, etc.

En este sentido, con Nubitek SMS Manager la primera preocupación fue lograr

que todos los aspectos relacionados con el módem fueran ajenos al

programador:

Los modems compatibles, TC35i, TC65iT y MC55iT, vienen de fábrica con

diferente velocidad del puerto por defecto. Lo primero que hace Nubitek SMS

Manager es configurar la velocidad del módem a 9600 baudios, pero se lo

comunica varias veces, haciendo un barrido inicial a diferentes velocidades.

Así se evita que el programador tenga que entrar a configurar la velocidad del

puerto por sí mismo, con el hiperterminal.

Nubitek SMS Manager no se limita a hacer el envío y recepción de SMS, sino

que se encarga de la gestión total del módem. El módem se puede sacar de la

caja según llega de fábrica y conectarse a la aplicación, que carga toda la

Page 43: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 41/103

configuración necesaria. Esto aumenta el tamaño que ocupa la librería en la

memoria de programa del PLC, pero facilita muchísimo al programador la

puesta en marcha.

Otra preocupación durante el desarrollo fue evitar que el programador tuviera

que gestionar las colisiones entre acciones, esto es, que la aplicación pudiera

asimilar órdenes de envío y recepción de SMSs de forma asíncrona y

simultánea, pero que la ejecución de todas ellas se realizara de forma síncrona

y ordenada. Dos alarmas pueden saltar al mismo tiempo, pero el módem no

puede mandar dos SMS al mismo tiempo, su envío debe ser secuencial.

Igualmente un SMS de entrada no puede perderse porque en ese momento se

esté procesando un SMS de salida.

Por último, la recepción de SMS no podía limitarse a recibir una cadena y

servirla al programador para que él la analice, puesto que en muchos casos el

procesado de cadenas de texto resulta ajeno al programador de PLCs. El

enfoque va más allá y lo que ofrece es la detección de un SMS con un patrón

determinado, mediante la búsqueda de palabras clave. Es decir, la aplicación

no sirve el SMS recibido, sino que avisa de cuál es el SMS recibido.

La clave de protección

La comercialización de la aplicación requiere que se pueda cobrar un precio

por ella, lo cual ofrece dos enfoques:

� Cobrar por la descarga: las desventajas son enormes, pues no se puede

controlar el número de veces que un cliente la usa, el cliente no puede

conocer el producto antes de comprarlo, su publicación en Internet

anularía la capacidad de venta por pago, etc. La única ventaja: la

aplicación se simplifica y ocupa menos espacio.

� Cobrar por una licencia: permite descargar la aplicación para conocerla

antes de comprarla, pero el principal obstáculo era cómo generar una

Page 44: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 42/103

licencia para un PLC, y sobre todo que esa licencia no pudiera aplicarse

a todas las instalaciones (un cliente con una única licencia podría poner

50 estaciones en marcha).

La solución para optar por el sistema de licencias está en ligar la clave de uso

a un parámetro único de cada instalación, fácilmente accesible y declarable

por el usuario final, y a su vez accesible por la aplicación del PLC: el parámetro

que reúne todas estas condiciones es IMEI del módem, puesto que el PLC no

dispone de un número de serie accesible internamente por programa.

Las aplicaciones de Nubitek, durante la inicialización y aleatoriamente durante

el uso, consultan el IMEI del módem que está conectado al PLC, lo procesan

según un algoritmo matemático y obtienen un valor entero entre 1 y 32000.

Debe coincidir con la clave de licencia que se introduce como parámetro de

entrada de la función principal. Si no la aplicación apaga el módem y luego se

bloquea.

El uso de la clave ofrece una ventaja extra, que es la opción de crear claves de

prueba. Las aplicaciones de Nubitek admiten el cero como clave de prueba, lo

que otorga a la aplicación funcionalidad completa, salvo que se bloquea cada

cinco horas y debe reiniciarse la CPU.

En definitiva, un usuario puede descargar la librería y probarla en su totalidad

sin tener que desembolsar nada de dinero, y al mismo tiempo Nubitek se

asegura de que la librería no se puede usar indiscriminadamente y de que

venderá una licencia por cada una de las instalaciones en las que se vaya a

aplicar.

Fiabilidad y Robustez

Nubitek SMS Manager es una aplicación que por su propia naturaleza está

enfocada a instalarse en lugares remotos, y es por esto que no se puede

Page 45: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 43/103

contar con un servicio de mantenimiento que se haga cargo de ella de manera

corriente.

Dicho de otra forma, la aplicación debe ser capaz de reponerse a cualquier

eventualidad: pérdida de cobertura, perdida de alimentación, fallo de envío de

sms, etc.

Por un lado la aplicación vigila que su ritmo de progreso sea normal. Si se

reinicia el PLC por una pérdida de alimentación o si detecta alguna anomalía

(el módem no responde o su respuesta no es la esperada, etc), entonces se

reinicia la aplicación y se reconfigura el módem, y sigue intentándolo hasta

que se normaliza la situación de nuevo.

Por otra parte, el buffer de envío de SMSs salientes queda a salvo de errores,

esto es, si un SMS saliente no se envía correctamente, o si la alarma salta en un

momento en el que el módem no está disponible, o si saltan varias al mismo

tiempo, el buffer queda con la información almacenada hasta que se

consiguen sacar los envíos de SMS adelante. Es el único área de datos que no

se reinicializa, pero para evitar problemas también hay un proceso que elimina

registros que hayan quedado incoherentes.

La gestión de errores

En aplicaciones técnicas que resultan ajenas a los programadores la garantía

de un soporte técnico resulta tan importante como el realizar una aplicación

accesible. Para ello la librería incluye un campo interno que indica el tipo de

error que haya podido ocurrir: problemas con el PIN de la tarjeta SIM o con la

clave Nubitek, falta de cobertura, de comunicación con el módem, de

recepción de SMSs, etc.

Es una información accesible para que el propio programador solucione

rápidamente algún problema, pero también un dato que puede indicar al

soporte técnico para facilitar el diagnóstico remoto de un problema.

Page 46: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 44/103

Estudios previos

Antes de abordar la construcción final de la aplicación, y teniendo en cuenta

los requisitos funcionales que se habían marcado para el producto final, se

realizaron en paralelo una serie de trabajos previos en investigación, diseño,

creación de herramientas software, etc.

Control del modem desde el hiperterminal

El primer paso para el desarrollo de la aplicación para el PLC consistió en

conocer a fondo el protocolo de intercambio de información con el modem,

mediante los comandos AT. Este estudio se realizó prescindiendo del PLC, y

conectando el modem directamente a la aplicación hiperterminal del PC, que

permite el acceso directo al puerto serie. De esta forma el puerto serie del

modem queda directamente enlazado a la pantalla y teclado del ordenador.

El objetivo de este estudio fue primero conocer la lista de comandos para

configurar el modem exactamente según las necesidades y para procesar el

envío y recepción de SMSs de una forma asumible por el PLC. Uno de los

objetivos principales en esta fase fue alcanzar una configuración del modem

en el que todas las comunicaciones pudieran ser siempre iniciativa de la parte

del PLC (por ejemplo ante la llegada de un nuevo SMS al modem, su

configuración por defecto es enviar una trama de aviso, pero se buscó la

opción de que las consultas al buffer de entrada se hicieran siempre a petición

del controlador).

Un segundo objetivo fue conocer la familia de respuestas a los comandos

utilizados. La más común de todas, especialmente a los comandos de

configuración, es “OK”.

Page 47: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 45/103

Un tercer objetivo fue conocer el comportamiento del modem ante fallos,

incidencias y errores, para generar en el PLC un driver de comunicaciones

robusto y capaz de reponerse de forma autónoma a respuestas de error y a

cualquier eventualidad.

Por último se estudió el tiempo de respuesta a los comandos del proceso,

para establecer de forma correcta la gestión de tiempos del driver de

comunicaciones.

Desarrollo del driver de comunicaciones

El driver de comunicaciones es una pieza del código del PLC que se desarrolló

para facilitar de forma completamente transparente al resto del proyecto una

funcionalidad de diálogo a través del puerto del PLC, en protocolo ASCII. Este

driver es transparente al usuario final de la aplicación, es decir, está concebido

para facilitar la programación a nivel interno para esta y para otras librerías de

comunicación entre un PLC y un módem.

Page 48: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 46/103

El driver se contempla como una herramienta de comando y respuesta para

gestión dentro de una máquina de estados, de forma que en cada estado se

lanza de salida una cadena de texto como comando (o consulta), a

continuación se pasa a modo de escucha, y en función de la respuesta

recibida la máquina cambia a otro estado, donde si procede se puede iniciar

de nuevo el proceso de comunicación.

El driver gestiona eventos asíncronos de la comunicación (fin de mensaje

saliente, nuevo mensaje entrante, etc.) pero ofrece a la capa superior una

interfaz síncrona que facilita su uso en la librería. En cada ciclo de

comunicación internamente el driver pasa por los siguientes estados: reposo,

mensaje de salida en marcha (síncrono por evento de programación), mensaje

de salida finalizado y transición a modo de escucha (asíncrono por evento del

puerto de comunicaciones), mensaje recibido (asíncrono por evento del

puerto de comunicaciones), cuerpo del mensaje recibido listo para análisis

(síncrono e interno al driver), fin del análisis (síncrono por evento de

programación), y de nuevo a reposo.

Este driver ofrece a la capa superior funcional un conjunto de dos funciones,

una para realizar un envío de una cadena y otra para detectar qué respuesta

se ha recibido. Esto permite que desarrollar muy fácilmente cualquier nuevo

protocolo de relación con el módem, enviando comandos y analizando

respuestas.

Page 49: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 47/103

La función de envío de cadena se llama “Enviar_Cadena” y tiene como

parámetros el texto a enviar, una variable booleana para indicar si hay o no

que concatenar un parámetro en el comando (debe ser colocado con

anterioridad en una posición predeterminada de la librería), otra variable para

indicar si el parámetro debe concatenarse entrecomillado, y finalmente un

parámetro para expresar el tiempo máximo que requiere la respuesta en

recibirse completa una vez que comienza a recibirse (por ejemplo la cadena

con el grado de cobertura requiere más de los 500 ms previstos por defecto).

Page 50: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 48/103

La función de análisis de la respuesta se llama “Buscar_Cadena” y tiene como

parámetro de entrada una palabra que hay que encontrar en la respuesta y

como parámetro de salida el bit que activa el nuevo estado al que se pasa si la

búsqueda ha resultado positiva. Dentro de un estado se puede llamar varias

veces a la función “Buscar_cadena”, en caso de que se puedan esperar varias

respuestas.

El driver también indica a la capa superior funcional si hay un error por

timeout en la respuesta es decir, no ha habido respuesta al último comando) o

si la respuesta recibida no coincide con ninguna de las que se han previsto.

Como lo que prima es la robustez del sistema, y dadas también las

limitaciones de un sistema PLC, en general ante cualquier imprevisto en las

comunicaciones la opción es reiniciar el modem y reconfigurarlo todo de

nuevo antes de retomar la aplicación.

Page 51: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 49/103

Diseño de la máquina de estados

La máquina de estados es la arquitectura ideal para gestionar una aplicación

de este tipo. Permite trabajar de forma muy ordenada sobre un proceso

complejo y lleno de eventos asíncronos. Los tipos de procesos que se han

aplicado a estados particulares son:

� Realizar un ciclo completo de comando y respuesta con el modem. En

función de la respuesta se hace la nueva transición a un estado u otro.

� Realizar un periodo de espera. Por ejemplo, después de cargar el PIN

se pasa a un estado que consiste en esperar 10 segundos antes de

continuar con la configuración del modem.

� Realizar un procesado de la respuesta del modem. Por ejemplo, al

solicitar el nivel de cobertura la cadena recibida es compleja y contiene

mucha información adicional. Por tanto tras este ciclo de comunicación

se pasa a un estado en el que lo que se hace es analizar la cadena

recibida (que permanece en el buffer de recepción) para extraer el dato

de cobertura.

� Realizar un procesado para generar un comando de salida al modem.

Por ejemplo, cuando se está enviando un SMS de salida, se realizan dos

ciclos de comunicación con el modem, uno para indicar el teléfono al

que se envía el SMS, y un segundo con el texto. Entre ambas fases de

comunicación (2 estados) existe un tercer estado en el que se

construye la cadena de texto.

� Reposo. En el estado de reposo no se realizan acciones concretas, sino

que se monitorizan de manera continua los eventos que lanzan

procesos, como por ejemplo, enviar un nuevo SMS, consultar los SMSs

entrantes, etc.

Utilizando estas 4 acciones, más la gestión del estado de reposo, la máquina

de estados permite construir la aplicación como una secuencia controlada.

Desde el punto inicial se realiza una larga cadena secuencial de pasos que

Page 52: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 50/103

tiene como objeto inicializar y configurar el modem, y que una vez que

termina da paso al estado de reposo. Desde el estado de reposo se pueden

lanzar, de forma ordenada, determinados procesos. Todos ellos vuelven al

estado de reposo una vez finalizados.

Si se encuentra una nueva orden de salida en el buffer de mensajes salientes,

se arranca la secuencia de estados que envían un SMS.

Si vence el temporizador de lectura entrante, se arranca la secuencia de

estados que consultan si hay nuevos mensajes en el buffer de SMS entrantes

del modem, y si la respuesta es positiva se lee el mensaje y se analiza.

Si se ha solicitado un paso a modo teleservicio, se arranca la secuencia de

estados que modifica la configuración del puerto para pasarlo de modo

freeport a modo PPI, y a continuación se detiene la aplicación de gestión de

SMSs.

Page 53: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 51/103

Estructura del programa

Bloques funcionales del programa

La máquina de estados

La forma óptima de afrontar una aplicación orientada a la comunicación por

módems es utilizando la máquina de estados, donde cada estado está ligado a

un ciclo pregunta-respuesta con el módem, a un periodo de espera, o a una

operación concreta de procesamiento de datos.

La secuenciación de estados viene dada por la lista de comandos y sus

respuestas posibles, estableciéndose un árbol de estados en función de las

repuestas que da el módem. Por ejemplo, al preguntar si el PIN está cargado,

una respuesta negativa hace pasar al estado de carga de PIN y una positiva

hace saltar al comando siguiente, la consulta del IMEI.

En el estado de reposo es un gestor de transiciones el que decide salir a un

estado ejecutivo si procede. Los eventos que pueden provocar salir del reposo

son la existencia de SMSs en el buffer de salida, la temporización de consulta

de SMSs entrantes.

El gestor de salida de SMSs

Durante el reposo, en cada ciclo de programa el gestor de salida de SMS

consulta si hay nuevos mensajes en el buffer de salida, en cuyo caso hace salir

al sistema del estado de reposo e iniciar el proceso de envío de SMS, que se

compone de 4 estados: indicación al módem del teléfono de destino,

construcción del texto del SMS, envío del texto y fin del envío.

Page 54: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 52/103

El buffer de salida de SMSs es un buffer para 7 mensajes diferentes, donde se

guarda información sobre el estado de progreso de cada envío, el/los

número(s) de destino, la posición de memoria donde se encuentra el mensaje,

y en su caso el valor que se quiere integrar en el cuerpo del mensaje.

La separación entre las operaciones que introducen datos en el buffer y las

que ejecutan el envío de los SMS es un pilar básico de la estructura de esta

aplicación. Esto permite simplificar los procesos y a su vez hacerlos más

eficientes.

La petición de envío de un SMS es un proceso controlado por el programador

y está asociado a eventos ajenos a la aplicación, por lo que se puede producir

en cualquier estado. Con la separación de procesos se permite que se ordenen

varios envíos simultáneamente o que se haga cuando el modem esté ocupado

en otro proceso.

El envío de SMSs se dispara siempre que la aplicación está en estado de

reposo y hay mensajes en el buffer. Durante el reposo el sistema recorre el

buffer buscando algún registro ocupado, en cuyo caso lo marca como activo y

dispara el proceso de envío.

A efectos prácticos, aunque la entrada de un SMS enviado a 2 destinos

diferentes sea un único registro en el buffer, el proceso de envío lo considera

completamente como 2 envíos diferentes. Primero se envía el SMS al primer

número de teléfono, una vez finalizado el proceso y vuelto al estado de

reposo, el sistema volverá a recorrer el buffer y encontrará que este registro

sigue ocupado y que falta por enviar al segundo destino, por lo que lanzará un

segundo proceso de envío.

El sistema de buffer de salida hace que el sistema sea aún más robusto,

puesto que el buffer no se libera hasta que el SMS ha sido enviado con éxito.

Si hubiera un problema con el envío, la aplicación realizará un proceso de

Page 55: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 53/103

inicialización y reconfiguración del módem, tras el cual volverá a un estado de

reposo, en el que encontrará de nuevo que tiene un SMS en el buffer de salida.

El gestor de recepción de SMSs

La llegada de SMSs al módem puede ocurrir en cualquier momento, no ya solo

en cualquier estado, sino en cualquier momento de la ejecución del programa.

Es un evento completamente asíncrono. Por eso la aplicación, durante la

configuración, indica al módem que no notifique la llegada de SMSs, sino que

espere a ser consultado sobre ello.

Así la aplicación sí que puede gestionar la recepción de SMSs de una forma

controlada y síncrona, en el momento que le interesa. Durante el estado de

reposo el sistema hacer correr un temporizador. Cuando se acumulan 5

segundos en estado de reposo, el gestor de recepción hace salir del estado de

reposo y entrar en el proceso de recepción de SMS.

Lo primero que hace es consultar si hay algún mensaje nuevo. La respuesta

puede ser negativa, en cuyo caso vuelve al estado de reposo, o positiva, en

cuyo caso la respuesta es el propio SMS, junto con todos los datos asociados:

fecha y hora, remitente, etc.

En caso de haber recibido un nuevo SMS se coloca el texto en un buffer y se

lanza el proceso de reconocimiento, tras lo cual se borra el mensaje de la SIM

y se vuelve al proceso de reposo.

El gestor de fallo

El gestor de fallo es un proceso dentro de la aplicación que gestiona de una

forma centralizada cualquier incidente que se haya podido producir.

Cuando un proceso detecta un problema aborta su ejecución y activa un bit

de fallo específico, que es analizado por el gestor de fallo. La actuación

Page 56: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 54/103

posterior consiste en informar del error o incidencia ocurrida, escribiendo el

código de error en el campo al efecto, y acudir a un estado apropiado, como

pueda ser el de bloqueo (por ejemplo por fallo de PIN o de clave), el de

inicialización de la aplicación (por ejemplo por fallo de comunicación con el

módem) o el de continuar por donde iba (por ejemplo por medida de

cobertura escasa).

El gestor de fallo es una herramienta fundamental para este tipo de

aplicaciones si se pretende que sea válida para que una comunidad de

programadores haga uso de ella, pues es necesario que dispongan de

opciones de depuración de fallos para cuando realizan la puesta en marcha de

la aplicación, en muchas ocasiones desplazados, con pocas opciones de

recibir soporte, y con plazos de finalización ajustados.

El área de variables de usuario

La aplicación dispone de dos vías de intercambio de información con el

programador/usuario.

La primera es el propio programa, a través del intercambio de parámetros en

la llamada a las funciones de la librería: pin de la tarjeta SIM, teléfonos de

destino, etc.

El otro interfaz es el área de intercambio de variables de usuario, que se

mapea al comienzo del área de memoria V asignado a la librería. En este

grupo de variables se encuentra información de interfaz con la aplicación en

ambos sentidos, y se enfoca a procesos de puesta en marcha y de eventos

puntuales paralelos al programa, como el código de error, la medida de la

cobertura, la gestión del teleservicio, etc.

Esta forma de intercambiar información con el usuario permite englobar un

amplio surtido de datos para que programadores avanzados puedan

integrarlas en la aplicación de SMS, para que aplicaciones un poco más

Page 57: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 55/103

complejas dispongan de su interfaz, para que el soporte y el proceso de

puesta en marcha sea más claro. Igualmente con este sistema se limita el

interfaz de las funciones de usuario a los parámetros estrictamente

indispensables.

Enviar SMS

Función de envío de SMSs

La función de envío de SMS se usa una vez por cada mensaje SMS que se

quiera enviar. Dispone de 4 parámetros de entrada, 2 de los cuales son de

obligada definición: la posición del texto del mensaje y de un número de

destino. Aparte se puede incluir un segundo teléfono de destino y un valor

numérico que se desea integrar en el texto del mensaje, (usando el

procedimiento previsto para ello).

La función de envío de mensaje funciona internamente como un administrador

que busca un hueco libre en el buffer de salida de mensajes e introduce en él

todos los datos necesarios para que el mensaje sea procesado.

Así, la orden de enviar un mensaje, desde el punto de vista del usuario, se

procesa incluso cuando el modem no está habilitado o cuando hay otro SMS

siendo enviado.

Estructura de buffer de salida de SMS

El buffer de salida de SMS consta de 7 registros de 18 bytes cada uno. La

llamada a la función Send_SMS busca un registro libre y lo rellena con los

datos del SMS que se quiere enviar.

La cabecera del registro se utiliza en modo binario, teniendo cada bit un

significado. El primero indica que el registro está ocupado, y el segundo que el

Page 58: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 56/103

registro está activo, es decir, que se está procesando el envío de uno de sus

SMSs. En la cabecera hay además 2 bits para indicar qué registros de teléfono

están ocupados (el primero, el segundo, o los dos) y 2 bits para hacer el

seguimiento de envío de los textos.

A continuación hay 4 registros de 4 bytes cada uno. El primero es un puntero

al comienzo del texto del SMS, el segundo y tercero son los punteros al

comienzo de las cadenas de los números de teléfono de destino, y el último es

un puntero a la variable que se desea insertar en el texto.

La importancia del buffer es que permite desligar la parte síncrona de la

asíncrona en el envío de SMSs. Además permite que la gestión del proceso de

envío se gestione de una forma síncrona por parte de la aplicación principal, y

que las órdenes de envío se generen de forma asíncrona y distribuida por las

funciones de envío SMS.

Proceso de envío de un SMS

Cuando la máquina de estados está en reposo el proceso de salida de SMS

escanea permanentemente el buffer de salida en busca de registros ocupados

y pendientes de ser enviados.

Cuando encuentra uno lo primero que hace es marcarlo como activo y guarda

el puntero al inicio del buffer en el campo reservado para ello.

A continuación salta al primer estado del proceso de salida de un SMS: la

petición de envío de SMS a un teléfono de destino. Se envía el comando

at+cmgs al módem, seguido del primer teléfono de destino, que se concatena

a la cadena de comando gracias a que se dispone del puntero a su comienzo.

Cuando se recibe la respuesta “>” el modem está listo. Entonces se pasa al

siguiente estado, que es la construcción del texto y su colocación en el buffer

correspondiente. Se copia, usando el puntero al comienzo del texto, y si

Page 59: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 57/103

procede se sustituye el identificador de variable por la cadena con el valor

actual de la variable que se quiera insertar (cuyo puntero está en el cuarto

campo del registro).

A continuación se pasa al siguiente estado, que es el envío del texto. Se

comunica directamente al módem, acabando con el marcador Control^Z.

La respuesta “CMGS” indica que el envío ha resultado con éxito, y entonces se

pasa al último paso de un envío, que es el cierre. En este proceso se actualizan

los datos del registro. Si no hay un segundo teléfono de envío, se libera el

registro. Si lo hay, se borran los datos del campo de cabecera que indican que

hay que enviar el primer SMS y se desactiva el bit de registro activo.

Finalmente se vuelve al modo de reposo, que volverá a recorrer el buffer en

busca de SMSs que enviar.

Construcción del texto e inclusión de valores numéricos

La aplicación de envío de SMSs permite insertar de forma automática el valor

de una variable en el lugar que se precise del cuerpo del SMS. Para ello es

necesario cubrir dos aspectos:

En la cadena de texto general debe colocarse un identificador adecuado que

marca la posición en la que se pone la variable, y el tipo de dato que es.

En la llamada al bloque envío SMS, debe incluirse el puntero al dato que debe

ser insertado. Por supuesto, debe coincidir en tipo de dato con el del

identificador.

Llegado el momento del envío del SMS, en la fase de construcción del texto la

aplicación coloca la cadena en el buffer de envío y lo escanea en busca de un

identificador de tipo &. Si no lo encuentra se da el visto bueno al envío, pero si

lo encuentra se inicia el proceso de inserción de la variable:

Page 60: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 58/103

Se identifica el tipo de dato que debe ser insertado, en función del carácter

localizado a continuación del modificador “&”. Puede ser I,D o R, para indicar

un valor entero, doble entero o de tipo real.

Se lee el valor de la variable a la que apunta el puntero y se hace la conversión

a cadena de texto.

Se elimina de la cadena a enviar el identificador y se sustituye por la cadena

generada con el valor numérico de la variable.

Ahora sí se da el visto bueno al envío.

Recibir SMS

Función de recepción de SMS

La función de recepción de SMSs se utiliza para declarar un patrón que, de ser

reconocido en un SMS entrante, hará que se active un bit de reconocimiento.

La función principal es la que gestiona el flujo de SMSs entrantes, y captura el

texto para servirlo limpio a las funciones de recepción de SMS, que se limitan a

analizarlo y activar el bit de reconocimiento de SMS si procede. Es por así

decirlo, una gestión centralizada y un análisis distribuido.

Muestreo de recepción de SMS

La recepción de un mensaje en el módem es un evento absolutamente

asíncrono, que depende de la red GSM, no del PLC. Para que no interfiera en la

cadencia de comunicaciones por el puerto del PLC, el módem se configura

para que no anuncie de manera activa la llegada de un nuevo mensaje. Así, es

el PLC el que, cada 5 segundos aproximadamente, le consulta al modem si

tiene un nuevo mensaje recibido. Esta forma de consulta se integra fácilmente

Page 61: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 59/103

dentro del orden del PLC, y le permite seguir manteniendo la iniciativa en

cualquier tipo de comunicación con el módem.

Para facilitar la tarea de muestreo, se utiliza una de las características del

almacenamiento de SMSs: el sistema de la SIM dispone de una serie de

buzones, entre 1 y n, en los que puede guardarse el mensaje recibido, y un

mensaje entrante siempre se almacena en el que esté libre con el valor de

dirección más bajo. La aplicación utiliza el buzón 1, de forma que lo mantiene

siempre vacío. Si llega un mensaje, lo lee, lo sirve al análisis y lo borra, para

que el siguiente mensaje vuelva a guardarse en el buzón 1.

Las 3 posibles respuestas a una consulta de lectura de SMS son: a) que el

buzón está vacío, con lo que no se hace nada y se vuelve a preguntar

transcurrido un tiempo, b) que el buzón tiene un mensaje ya leído, con lo que

el modem lo sirve pero el PLC lo ignora y lo que hace es borrar el mensaje

para dejar el buzón libre, y c) que el buzón tiene un mensaje nuevo, con lo que

el modem también lo sirve y la aplicación actúa.

La actuación en caso de mensaje entrante, siempre dentro de la gestión

central, consiste en capturar de la respuesta global del modem lo que es el

texto limpio del SMS, y colocarlo en una posición de memoria predeterminada.

A continuación se activa un bit de “mensaje recibido y listo para ser

analizado”, que permita a las funciones distribuidas de recepción de mensaje

analizarlo y compararlo con cada uno de los patrones definidos.

Tras el ciclo de análisis se borra el mensaje del buzón para volver a dejarlo

vacío. Si el mensaje recibido no se ajustara a ningún patrón, se activaría el

aviso de “mensaje recibido no ajustado a ningún patrón”.

En resumen, toda la gestión de mensajes entrantes queda bajo la

responsabilidad de la función principal, que cuando recibe uno nuevo lo deja

dispuesto para que las funciones de “análisis de patrón” lo identifiquen.

Page 62: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 60/103

Análisis de mensajes entrantes

Las función de análisis de SMS entrante están siempre activas, en todos los

ciclos de programa. Sin embargo solo actúan si está activo el bit de “mensaje

recibido y listo para ser analizado”. En ese caso cotejan el patrón que tienen

definido a la entrada con la cadena de texto del mensaje entrante, y avisan si

el resultado es positivo.

La función puede utilizarse en el programa tantas veces sea necesario para

definir todos los patrones diferentes que se quiera. Cada llamada debería

activar un bit diferente, correspondiente a cada patrón diferente.

La función de recepción de SMS permite que se declaren 1 ó 2 palabras clave.

Si son encontradas en el texto de un mensaje entrante, se activa el bit de

salida (en el caso de tener dos palabras clave definidas, deben encontrarse las

dos para dar respuesta positiva).

El sistema incorpora tres vías para robustecer la identificación de mensajes:

� Permite que las palabras clave se integren en un texto con más

información aparte de las propias palabras clave, es decir, solo es

necesario que las palabras estén contenidas en el mensaje. Si hay

palabras o texto de más, es ignorado.

� Permite que el orden en el que se encuentran las palabras sea

cualquiera, es decir, no requiere que el orden en el que se sitúan las

palabras clave dentro del mensaje sea el mismo que con el que se

definen en la función.

� No diferencia entre letras en mayúsculas y minúsculas, lo que minimiza

errores por este motivo. La aplicación primero convierte a minúsculas el

texto del mensaje y también las palabras clave, y luego hace la labor de

cotejado. Así, si el patrón estuviera definido en minúsculas, no dejaría

de identificarse en un mensaje enviado en mayúsculas, o que tenga la

Page 63: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 61/103

primera letra en mayúsculas por acción correctora automática del

móvil.

Captura de valores numéricos

Si el patrón definido por palabras clave es localizado de forma positiva, la

función de análisis de mensajes entrantes lanza una segunda funcionalidad,

tratando de localizar valores numéricos en el cuerpo del mensaje. Si localiza

alguno, lo convierte a valor de tipo real y lo sirve a través del otro de los

parámetros (en este caso de entrada/salida) de la función.

Esto permite al usuario dar comandos al sistema no solo de tipo maniobra,

sino también de configuración o parametrización.

Teleservicio

El teleservicio es una funcionalidad propia de los sistemas Siemens. Permite

que el entorno de desarrollo del S7-200, STEP7 MicroWIN, acceda de forma

remota al equipo, al igual que lo haría si estuviese físicamente conectado con

un cable. La aplicación está integrada en el entorno MicroWIN y resulta de

gran utilidad a los programadores porque les permite realizar un acceso

remoto para mantenimiento y modificaciones.

El teleservicio consiste en realizar una llamada de datos desde un módem

GSM conectado al PC hasta el módem GSM conectado al PLC. MicroWIN, el

PLC y ambos modems deben estar correctamente configurados para soportar

esta operación. Una vez establecida la llamada de datos, que inicia la parte del

PC, se habilita el enlace entre MicroWIN y el PLC para trabajar con el

programa en la forma habitual (tan solo difiere en la velocidad de trabajo, que

se reduce considerablemente). El enlace se conforma sobre una llamada de

datos, no sobre enlace de tipo GPRS.

Page 64: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 62/103

El teleservicio no es un desarrollo de Nubitek, pero Nubitek SMS Manager es

compatible con él. Desde el punto de vista del PLC, hay dos aspectos

fundamentales a tener en cuenta para permitir esta compatibilidad:

El modem del PLC, receptor de la llamada, debe estar correctamente

configurado. Mediante los comandos AT adecuados el software Nubitek SMS

Manager le deshabilita el control de flujo en la comunicación del puerto, le

deshabilita la señal DTR del puerto, y lo más importante, habilita la respuesta

automática al primer tono cuando se reciba una llamada de datos entrante.

La carga de estos comandos no interfiere en el funcionamiento habitual de la

aplicación Nubitek SMS Manager, por lo que la aplicación los carga en el

modem por defecto, durante la configuración inicial, y así queda preparado

para una eventual llamada de teleservicio.

El puerto del PLC debe estar configurado en modo PPI, para que un vez que

se ha establecido el enlace entre los modems, se pueda establecer el enlace

entre MicroWIN y PLC. La aplicación Nubitek SMS Manager en régimen normal

trabaja con el puerto del PLC en modo freeport, que es el que le permite

comunicarse mediante comandos AT. Por tanto la aplicación debe ser avisada

previamente de que se va a hacer un acceso por teleservicio para que pueda

parar la aplicación de mensajes, liberar el puerto y conmutarlo a modo PPI.

Petición y finalización

Un bit interno de la aplicación se utiliza para solicitar la conmutación a modo

Telerservicio. Cuando este bit está activado ocurren varias cosas. Lo primero

es que se deja terminar el proceso en marcha (envío de un SMS saliente,

consulta o lectura de un SMS entrante, etc). Cuando se vuelve a la situación de

reposo la aplicación para todos los procesos relacionados con la gestión de

SMS (sin reiniciar los buffers ni nada) y conmuta el puerto a modo PPI.

Page 65: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 63/103

BLOQUE II

UTILIZACIÓN DE LA LIBRERÍA DE GESTIÓN DE MENSAJES

Page 66: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 64/103

Requerimientos mínimos

CPU S7-200

Nubitek SMS Manager requiere ejecutarse en una CPU 224 o superior, y de

última generación (es decir, con referencia xxx23, firmware 2.0). La lista de

CPUs válidas es:

CPU 224 DC 6ES7 214 1AD23 0XB0

CPU 224 AC 6ES7 214 1BD23 0XB0

CPU 224XP DC 6ES7 214 2AD23 0XB0

CPU 224XP AC 6ES7 214 2BD23 0XB0

CPU 226 DC 6ES7 216 2AD23 0XB0

CPU 226 AC 6ES7 216 2BD23 0XB0

Cable PC/PPI

El cable PC/PPI que se ha considerado para el desarrollo de la aplicación es el

cable PC/PPI Multimaestro de ref. Siemens 6ES7 901 3CB30 0XA0. Por tanto

este es el que Nubitek recomienda para conectar el puerto de la CPU con el

módem GSM. Versiones anteriores del cable u otros modelos de adaptador

PC/PPI podrían ser válidos, pero no se puede garantizar el correcto

funcionamiento de la comunicación.

STEP7 MicroWIN

Para instalar y utilizar Nubitek SMS Manager se precisa de STEP7 MicroWIN

4.0 Service Pack 2 o una versión superior.

Page 67: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 65/103

Memoria de programa

La librería Nubitek SMS Manager requiere 6.0 Kbytes de la memoria de

programa del S7-200.

Memoria de variables

La librería Nubitek SMS Manager se reserva un total de 771 bytes en la

memoria V para poder realizar la gestión interna de sus variables de trabajo. El

usuario no debe usar esta área en su programa de control.

Page 68: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 66/103

Instalación de Nubitek SMS Manager

Nubitek SMS Manager es una librería para gestionar el envío y recepción de

SMS que está lista para integrarse en el entorno de programación STEP7-

MicroWIN.

¿Qué es una librería?

Una librería es un subprograma que realiza una función de control

determinada, de forma autosuficiente y encapsulada. Así, quien usa una

librería no necesita preocuparse por el funcionamiento interno de la misma.

Un ejemplo de librería es Nubitek SMS Manager. Quien la usa en sus

programas sólo tiene que proporcionarle los parámetros de uso, como el

número de móvil del destinatario y el texto. La librería se encarga de la

compleja gestión del módem y del envío del SMS.

Una característica importante de una librería es que se integra en el entorno

de desarrollo/programación como una función más del sistema, lo que

permite al programador usarla en cualquiera de sus programas de control, con

un importante ahorro de tiempo de desarrollo y con una mayor fiabilidad.

Pasos para instalar la librería en STEP7-MicroWIN

Para poder hacer uso de la herramienta Nubitek SMS Manager, en primer lugar

se debe proceder a la instalación de la librería en el entorno de programación

STEP 7 MicroWIN.

1. Debe obtenerse el archivo nubitek_sms_manager_v1.3.mwl de la

librería Nubitek SMS Manager (por ejemplo desde la página de

descargas de la web www.nubitek.com).

Page 69: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 67/103

2. Abrir STEP7-MicroWIN

3. En la barra de menú, hacer clic en Archivo -> Agregar o quitar librería...

4. Hacer clic en Agregar, acceder al directorio donde está el archivo

nubitek_sms_manager_v1.3.mwl de la librería. Una vez agregada, pulsar

Aceptar para salir.

5. En este punto la librería Nubitek SMS Manager ya debe estar instalada.

Puede verificarse accediendo al icono Librerías que hay en el árbol de

operaciones: debe aparecer la carpeta de la librería y las 3 funciones

que la componen.

Page 70: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 68/103

La librería está instalada: pueden usarse estas 3 funciones de gestión de SMS

como si fueran una función más de MicroWIN.

Asignación de memoria a la librería

Una vez que se empiezan a usar las funciones de la librería en un proyecto, y

siempre antes de cargarlo o compilarlo, se debe asignar a la librería un rango

de memoria: su gestión interna requiere 771 bytes en memoria V, cuya

ubicación puede definir el usuario.

1. Hacer clic en Archivo->Asignar memoria a librería:

2. En la ventana que se abre, seleccionar la pestaña Nubitek SMS Manager

(si no se tiene otras librerías instaladas será la única pestaña existente)

Page 71: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 69/103

3. Pulsar el botón Proponer dirección y MicroWIN indicará un rango de

memoria libre.

Si por cualquier razón se prefiere otro rango distinto basta con volver a

pulsar sobre Proponer dirección o escribir directamente la posición de

inicio deseada.

Importante: nunca deben incluirse variables de usuario del programa de

control en este rango de memoria que usa la librería.

4. Pulsar Aceptar.

Page 72: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 70/103

Hardware: conexionado y configuración

Equipos necesarios

Los elementos hardware necesarios para la instalación son:

� Una CPU SIMATIC S7-200 (mínimo CPU224 v2.0)

� Un módem GSM, con antena y fuente de alimentación. Se puede usar

cualquiera de las siguientes opciones:

� Cinterion TC35i Dual-Band EGSM900 / GSM1800 MHz

� Cinterion TC65iT Quad band: GSM 850/900/1800/1900 MHz

� Cinterion MC55iT Quad band: GSM 850/900/1800/1900 MHz

Page 73: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 71/103

� Una tarjeta SIM activa de cualquier operador de telefonía móvil.

� Un cable PC/PPI multimaestro (ref. 6ES7 901 3CB30 0XA0, de

Siemens)

� Un adaptador macho-macho de 9 pines sub-D.

Configuración del cable PC/PPI

El cable multimaestro tiene 8 microinterruptores en el lateral de la mochila

que permiten configurar su modo de operación.

Para que Nubitek SMS Manager pueda comunicar correctamente con el

módem GSM, el cable PC/PPI debe disponerse en modo 9600 baudios, 10 bits,

PPI/Freeport y conexión remota: 01000110

Microinterruptor 1 2 3 4 5 6 7 8

Posición 0 1 0 0 0 1 1 0

Si se usara un cable PC/PPI de la generación previa, con solo 6

microinterruptores, la configuración es 000110, pero no se puede garantizar el

funcionamiento de todas características de Nubitek SMS Manager si se utiliza

este cable, especialmente para las funciones de Teleservicio.

NOTA: Cada vez que se modifique la configuración de los microinterruptores

se debe quitar la alimentación del cable PC/PPI para que se asuma la nueva

configuración. Para ello se debe desconectar el cable del puerto de la CPU S7-

200. Una vez que se hayan apagado los pilotos del lateral, debe volverse a

conectar.

Page 74: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 72/103

Conexionado de los equipos

Los pasos para el conexionado de los equipos son:

1. Introducir la tarjeta SIM en el módem GSM. La ranura donde debe

insertarse está etiquetada en el módem como SIM y tiene al lado un

pequeño el botón amarillo. Presionando este botón con un objeto

punzante saldrá la bandeja donde colocar la tarjeta SIM. Es importante

asegurarse que la bandeja está correctamente introducida.

2. Colocar el adaptador de 9 pines macho-macho en el puerto serie

hembra del módem GSM.

Page 75: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 73/103

3. Conectar al módem la antena y la fuente de alimentación (en la entrada

RJ11)

4. Configurar el cable PC/PPI como se indica en el punto anterior.

5. Conectar el extremo serie del cable PC/PPI (hembra) al módem

mediante el adaptador de 9 pines macho-macho. El extremo PPI

(macho) debe conectarse al puerto 0 del PLC S7-200.

Atención: la aplicación no funciona si se conecta el cable PC/PPI al

puerto 1 de la CPU.

6. Dar alimentación a ambos equipos. En algunas versiones de TC65 hay

que pulsar el botón On/Off durante un segundo.

Page 76: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 74/103

El módem GSM

Velocidad del puerto

Lo normal es que el módem venga de fábrica con el puerto configurado a

9600 baudios (TC35i) o a 115200 baudios (TC65). En estos casos Nubitek SMS

Manager conectará sin problema con el módem, el usuario tan sólo debe

conectarlo al cable PC/PPI.

Si el puerto no está configurado en una de estas dos velocidades, Nubitek

SMS Manager no podrá comunicar con el módem. Si esto ocurriera se puede

tratar de cambiar la velocidad del puerto manualmente: conectando el módem

con el puerto serie de un PC, abriendo el hiperterminal y estableciendo una

comunicación por el puerto COM a la velocidad que corresponda, y 8 bits de

datos, paridad ninguna, 1 bit de parada y ningún control de flujo. Para verificar

que ha establecido conexión puede escribirse AT (+ enter), y se debe recibir

respuesta OK. El comando ‘AT+IPR=9600’ fija la velocidad del módem a un

nivel que sí permite a Nubitek SMS Manager comunicar.

Cobertura

Nubitek SMS Manager indica la cobertura que mide el módem y escribe este

nivel, en dBm, en una posición del área de variables de usuario, en la memoria

V. Si no hubiera nivel de señal suficiente para trabajar con garantías lo indicará

con el código de error correspondiente, y se activará el bit de baja cobertura.

En el capítulo sobre el área de variables de usuario se dan más detalles.

Para comprobar de manera rápida la cobertura en la instalación se puede

probar con un móvil normal, situándolo en el lugar donde se coloca la antena

y observando su indicación de cobertura en el display.

Page 77: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 75/103

Módem TC35i

El módem TC35i se enciende automáticamente al recibir alimentación.

Conviene introducir o extraer la tarjeta SIM siempre con la alimentación

desconectada.

El LED del módem puede presentar 3 estados:

� Apagado: el módem no tiene alimentación o ha recibido una orden de

apagado.

� Intermitencia regular (1 segundo iluminado y otro apagado): el módem

está encendido y activo, pero aún no se ha establecido un enlace con el

operador de telefonía móvil (equivale a tener un teléfono móvil

encendido pero sin el PIN cargado)

� Destello fugaz cada 2 segundos: se ha establecido el enlace con el

operador de telefonía móvil, se produce al poco de cargar el PIN en la

tarjeta SIM. Este es el modo en el que debe operar el módem, y debe

alcanzarse a los pocos segundos de activar la instalación. Si no

ocurriera así compruebe el código de error consultando el capítulo

sobre el área de variables de usuario .

Módem TC65iT

Las versiones 2.0 y 3.0 del TC65 se comportan de forma equivalente al TC35i.

La versión 1.4 del TC65iT, también compatible con Nubitek SMS Manager,

presenta un comportamiento diferente. El LED es usado para indicar el estado

de comunicación, con lo que parpadea cuando se envía o recibe un SMS.

Además el modem no se enciende automáticamente: una vez alimentado y

conectados los puertos requiere que se pulse el botón on/off durante casi un

segundo.

Page 78: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 76/103

Modo de prueba y clave Nubitek

La librería Nubitek SMS Manager se caracteriza porque:

� Es de libre descarga y distribución y se puede instalar libre y

gratuitamente en STEP7-MicroWIN.

� Requiere una clave para ejecutarse con éxito en el S7-200.

� Admite un modo de pruebas para poder probarlo gratuitamente

Clave Nubitek

Es la clave que habilita a Nubitek SMS Manager para que funcione de forma

ilimitada en el tiempo. Sin una clave correcta el programa apaga el módem y

se bloquea.

Debe indicarse en el propio programa del PLC, como parámetro Nubitek_KEY

de la función SMS_Manager.

Page 79: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 77/103

IMPORTANTE: la clave Nubitek está ligada al módem GSM que se va a usar en

la instalación, es decir:

� Para obtener la clave hay que declarar el IMEI del módem GSM que se

va a emplear.

� La clave permite a Nubitek SMS Manager funcionar única y

exclusivamente con ese módem, y no con otro.

¿Qué es el IMEI?

El IMEI es un identificador único para cada dispositivo hardware GSM (un

módem, un móvil, etc.)

Es un número de 15 cifras donde se indica el fabricante, país y número de

serie: es único para cada módem.

En el caso de los modems de Cinterion, el IMEI viene indicado en la pegatina

del reverso, bajo el código de barras.

Page 80: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 78/103

Modo de prueba

Se configura indicando el valor cero en el campo donde se situaría la clave

Nubitek, es decir, haciendo el parámetro Nubitek_Key = 0.

El modo de prueba permite usar Nubitek SMS Manager con todas sus

prestaciones y hacer tantas pruebas o demos a clientes como sean necesarias.

Tan sólo presenta una limitación: en este modo la gestión de SMS se bloquea

aproximadamente cada 5 horas, y se apaga el módem. Para continuar las

pruebas sólo hay que encender de nuevo el módem y reiniciar la CPU.

Si se desea conocer cuando se producirá el bloqueo, el campo Minutes_LEFT

del área de variables de usuario muestra el número de minutos que quedan

para el siguiente bloqueo.

Page 81: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 79/103

Funciones de programa: introducción y ejemplo

La librería Nubitek SMS Manager consta de 3 funciones sencillas y muy fáciles

de integrar en cualquier programa de control.

Descripción

SMS_Manager realiza toda la gestión general de la aplicación, además del

control del puerto y la inicialización del módem. Debe llamarse en todos los

ciclos de programa una única vez, al inicio.

Send_SMS se usa una vez para cada uno de los SMS que hay que enviar. Se

llama con la condición de disparo o envío y hay que indicarle el texto y los

teléfonos de destino. No hay limitación en cuanto al número de SMS diferentes

que se pueden enviar.

Receive_SMS se usa para definir las palabras clave que el programa de control

debe reconocer en los SMS de entrada. La función analiza los SMS recibidos y

activa un bit de salida cuando las encuentra. No hay limitación en el número

de mensajes diferentes a reconocer.

Un ejemplo sencillo

En el sencillo ejemplo de programa que se muestra en la siguiente imagen se

llaman a las 3 funciones desde el bloque principal de programa.

� Segmento 1: SMS_Manager configura el módem y realiza todo el control

de la aplicación de SMS. Se le indica el PIN de la tarjeta SIM y para el

modo de prueba se pone Nubitek_Key =0. Cuando la aplicación está

lista activa el bit de salida Q0.0.

Page 82: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 80/103

� Segmento 2: cuando Alarm_Stop tiene un flanco de subida se llama a

Send_SMS, que envía el aviso SMS_Stop al móvil de David. Tanto el

texto del mensaje como el número de teléfono se definen en el Bloque

de Datos.

� Segmento 3: Receive_SMS define las palabras clave que forman la

consigna de arranque del proceso. Cuando se recibe el SMS “active

process” se activa el bit Start_Production.

Page 83: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 81/103

SMS Manager: la función principal

Es el bloque principal de control y gestión de la aplicación, necesario para que

funcione.

Debe llamarse sólo una vez y ejecutarse en todos los ciclos de programa,

antes de cualquier otra función de la librería. Lo mejor es realizar la llamada

con el contacto SM0.0 al comienzo del Bloque Principal OB1.

Parámetros de SMS_Manager

� PIN: (STRING) Código PIN de la tarjeta SIM que hay en el interior del

módem.

Se escribe directamente como cadena de 4 caracteres a la entrada de

la función. Por ejemplo “2244”

Si se usa una tarjeta SIM con el código PIN deshabilitado se indica con

la cadena vacía “”

� Nubitek_KEY: (INT) Clave que proporciona Nubitek para que la librería

se ejecute de forma indefinida.

Para trabajar en modo de pruebas, poner el valor 0.

Page 84: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 82/103

Se escribe como variable entera (sin comillas).

� Ready: (Bool) Bit de salida que indica que la aplicación está ok y lista

para enviar y recibir SMS.

En la fase de inicialización, en condiciones normales, tarda unos 30

segundos en ponerse a 1.

Puede resultar conveniente aplicarlo a una salida del S7-200 para poder

observar de un vistazo que la aplicación y el módem están funcionando

correctamente.

Page 85: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 83/103

Enviar SMS

La función Send_SMS envía un SMS a uno o dos móviles de destino. Se usa

una vez por cada SMS diferente que se desea enviar.

Parámetros de Send_SMS

� SMS: (Puntero a String) Texto del SMS, que se ha definido en el Bloque

de Datos como variable tipo String. Se indica en modo puntero a la

posición de inicio del texto, usando la notación de puntero “&”.

Por ejemplo, para enviar el SMS definido como VB3000 “ALARMA:

maquina parada por fallo motor”, se indica &VB3000.

Se aconseja hacer uso de notación simbólica para facilitar la

compresión y mantenimiento del programa.

� Tel_1: (Puntero a String) Número de teléfono de destino del SMS, que

se ha definido en el Bloque de Datos como variable tipo String. Se

indica en modo puntero a la posición de inicio, usando la notación de

puntero “&”.

Page 86: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 84/103

Por ejemplo, para el teléfono definido como VB3100 “+34600123456” ,

se indica &VB3100.

Se aconseja hacer uso de notación simbólica para facilitar la

compresión y mantenimiento del programa.

� Tel_2: (Puntero a String) Número de teléfono de destino adicional. Se

define igual que Tel_1 y permite enviar el SMS a un segundo móvil en la

misma acción.

Si no se desea especificar un segundo teléfono debe ponerse 0.

� Value: (Puntero) Puntero a la posición de la variable numérica que se

desea incluir de forma automática en el texto SMS. Puede ser un valor

INT, DINT o REAL.

Si no se desea insertar ninguna variable en el texto del SMS el

parámetro Value no tiene utilidad, debe ponerse 0.

Definición de los textos y teléfonos de destino

Tanto el texto de los SMS como los teléfonos de destino se definen

cómodamente en el Bloque de datos, como variables tipo String. Importante:

hay que usar comillas dobles.

Por ejemplo:

VB3000 “ALARMA: maquina parada por fallo motor”

VB3100 “+34600123456”

Nubitek SMS Manager no tiene limitación en cuanto al número de SMS y

teléfonos de destino. Admite todos los SMS y teléfonos diferentes que el

bloque de datos pueda almacenar.

Page 87: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 85/103

Los textos de los SMS se definen de forma flexible:

� Pueden tener cualquier longitud siempre que no superen los 160

caracteres.

� Admiten cualquier texto, pero determinados caracteres locales o poco

comunes pueden no ser aceptados por el módem o el operador GSM.

Conviene probar que estos caracteres se envían correctamente.

� Nubitek SMS Manager permite insertar variables numéricas en el texto

de forma fácil y automática. Se explica en detalle en el apartado

específico de este mismo capítulo.

Los teléfonos de destino:

� Deben definirse usando el signo ‘+’ y el identificador de país. Por

ejemplo, para el caso de España (prefijo 34) el teléfono 600123456

debe indicarse como +34600123456.

� En un mismo proyecto pueden usarse teléfonos de diferentes países,

siempre que se indiquen sus respectivos prefijos.

� Importante: en determinados países u operadores no debe ponerse el

prefijo de país. Si las pruebas dan fallo en el envío de SMS (código de

error 32) conviene probar el cambio en la definición del teléfono.

Page 88: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 86/103

Condición de envío

La función Send_SMS debe ser llamada cuando se cumpla la condición de

envío del SMS.

Importante: Send_SMS debe ejecutarse sólo una vez, es decir, un único ciclo

de programa. Para evitar que se reenvíe repetidamente el mismo SMS,

conviene indicar la condición de disparo seguida de un flanco de subida.

Nota: la función Send_SMS ignora las órdenes de envío cuando el bit Ready

no está activo.

Filtro antirrebote

Puede ocurrir que por efecto rebote en la condición de disparo se envíe varias

veces el mismo SMS. Esto ocurre si la condición de disparo no es del todo

fiable, por ejemplo por un mal contacto, una falta de histéresis en el umbral de

una señal analógica, etc.

Si se desea poner un filtro antirrebote para no recibir varios SMS por el mismo

aviso se debe usar un temporizador a la desconexión antes del flanco de

subida. Por ejemplo, para una protección de 10 minutos, hacer como en la

figura:

Page 89: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 87/103

Cómo insertar un valor en el texto del SMS

Nubitek SMS Manager puede insertar una variable en la posición deseada de

un SMS, de forma fácil y automática. El modo de proceder es el siguiente:

1. Incluir en el texto del SMS un identificador en la posición donde debe

situarse el valor. Según el tipo de variable y el formato deseado, el

identificador que hay que usar es:

� &I para una variable INT

� &D para una variable DINT

� &R para una variable REAL (se muestra con tres decimales)

2. Poner el puntero a la variable en el parámetro Value de la función

Send_SMS.

Conviene tener en cuenta que:

� La variable indicada en el parámetro Value debe ser coherente con el

identificador que se incluya en el texto. Nubitek SMS Manager no puede

comprobarlo.

Page 90: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 88/103

� La notación de puntero es“&”, es decir, para insertar por ejemplo la

variable VW4000 hay que indicar &VW4000. MicroWIN lo traducirá de

forma automática a una posición byte, (&VB4000) pero Send_SMS

funcionará correctamente.

� Se aconseja hacer uso de notación simbólica para facilitar la

compresión y mantenimiento del programa.

Ejemplo

Para enviar un SMS que contenga por ejemplo la temperatura de un horno, se

deberá definir el texto en el bloque de datos e incluir el identificador del valor

en la posición adecuada:

VB1000 “La temperatura del horno es de &R grados”

Si por ejemplo la variable de temperatura en formato REAL está contenida en

VD2500, se llama a la función Send_SMS y se le indica el puntero en el

parámetro Value:

Value = &VD2500

Page 91: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 89/103

Si en el momento de enviar el SMS la temperatura es tal que VD2500 es

313.6324, el SMS recibido es:

“La temperatura del horno es de 313.632 grados”

Beneficios del uso de símbolos

El uso de símbolos para nombrar las variables de programa es siempre

beneficioso en cualquier aplicación. En un programa de gestión de SMS puede

mejorar notablemente la legibilidad y mantenimiento del programa.

Cada mensaje, cada teléfono, cada condición de disparo y cada variable a

insertar puede tener su nombre simbólico.

Si se compara el ejemplo de la imagen anterior con el de la siguiente. se

observan dos formas de enviar un aviso a mantenimiento cuando se produce

una alarma por exceso de temperatura en el horno, la segunda es

evidentemente más clara.

Page 92: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 90/103

Cómo aplicar la notación simbólica

Conviene nombrar los mensajes y los teléfonos de destino directamente desde

el bloque de datos. Hay que pulsar el botón derecho sobre la línea en que se

definen y seleccionar “Definir símbolo…”.

Los nombres de las variables a insertar y de las condiciones de disparo se

asignan de la forma habitual, ya sea en el programa o desde la tabla de

símbolos.

Por ejemplo en el bloque de datos:

SMS_Alarma “La temperatura del horno es de &R grados”

Tel_Mantenimiento “+34600123456”

Y en la función Send_SMS:

SMS � &SMS_Alarma

Tel_1 � &Tel_Mantenimiento

Tel_2 � 0

Value � &T_Horno

Nota: si se desea usar notación simbólica en el parámetro Value, se debe

escribir directamente el puntero del símbolo (&T_Horno por ejemplo). Si se

escribe la forma absoluta (&VD2500) MicroWIN lo convertirá a formato

puntero (&VB2500) y no aplicará la conversión a símbolo.

Page 93: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 91/103

Recibir SMS

La función Receive_SMS reconoce un SMS de entrada en base a una o dos

palabras clave. Permite además capturar de forma automática un valor

numérico contenido en el texto del mensaje.

Receive_SMS debe usarse una vez para cada tipo de mensaje diferente que se

quiera reconocer. No hay limitación en el número de veces que se use.

Se debe llamar a la función en todos los ciclos de programa, usando el

contacto SM0.0.

Parámetros de Receive_SMS

� TXT_1 y TXT_2: (String) Palabras clave a reconocer en el mensaje de

entrada.

Se escriben directamente como cadena a la entrada (por ejemplo

“activar” y “riego”)

Si solo se quiere definir una palabra clave hay que dejar TXT_2 sin uso y

poner la cadena vacía “”.

Page 94: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 92/103

� SMS_Rcv: (Bool) Bit de salida que se activa cuando se recibe un SMS

que contiene las palabras clave.

Importante: El bit de salida SMS_Rcv solo se activará durante un único

ciclo de programa. Luego vuelve a quedar en reposo.

� Value: (Real) Recoge el valor numérico que ha capturado del mensaje

de entrada y lo guarda en formato REAL, aunque en el SMS se reciba

como entero.

Es un parámetro de entrada/salida. Por ello el valor permanece en la

variable después de recibirse el mensaje.

Es un parámetro de uso opcional. Si no se va a usar debe escribirse una

posición cualquiera en desuso.

Reconocimiento flexible

Receive_SMS reconoce los SMS de forma robusta y flexible, liberando al

usuario de recordar un formato estricto.

� Permite que en el SMS haya más texto aparte del de las palabras clave.

� Localiza las palabras clave en cualquier orden y posición.

� No discrimina entre mayúsculas y minúsculas (dentro del alfabeto

estándar internacional)

� Captura el valor numérico ya sea entero o con decimales, y en cualquier

lugar del mensaje.

Por ejemplo, si en una llamada a la función Recibir_SMS se definen las

palabras clave “Activar” y “riego”, entonces se reconocerá cualquiera de los

siguientes mensajes:

� “activar riego”

� “ACTIVAR RIEGO”

Page 95: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 93/103

� “riego activar”

� “Activar el sistema de riego.”

Otras características

� Si un SMS se ajusta a dos patrones diferentes sólo se activará la salida

SMS_Rcv de la función Receive_SMS que esté primero en el programa.

� Si se desea ahorrar memoria de programa se pueden definir las

palabras clave en el bloque de datos y poner como parámetros TXT_1 y

TXT_2 solo las posiciones de memoria (por ejemplo VB3000 y

VB3020). Utilizando simbólicos no se perderá legibilidad del programa.

Ejemplo de captura de valores

En el ejemplo de la figura se configura Receive_SMS para recibir la orden de

activación del riego y el tiempo que se desea activar.

Al recibir por ejemplo el mensaje “activar el riego 35 minutos” el sistema

activará el bit Iniciar_Riego (lo pone a 1 sólo un ciclo de programa) y escribirá

el valor 35.0 en la variable Tiempo_de_Riego (en formato REAL y de forma

permanente).

Page 96: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 94/103

Área de variables de usuario

En el área de variables de usuario se localizan un grupo de variables que usa la

aplicación Nubitek SMS Manager para ofrecer información al usuario, o recibir

órdenes para un uso concreto. Puede hacerse una similitud con el área SM de

marcas especiales del S7-200.

Se localizan en la memoria V, al comienzo del área reservada para la librería.

Se puede consultar la posición exacta de cada variable en la tabla de

símbolos, en la pestaña con el nombre de la librería (una vez que se haya

asignado memoria a la librería).

Estas variables se pueden integrar en el programa de control para un uso

avanzado. Sin embargo, aunque en la tabla de símbolos aparecen con un

nombre simbólico, en la aplicación solo pueden usarse con direccionamiento

absoluto (es una regla de Step7-MicroWIN, debido a que son variables

internas de una librería)

Page 97: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 95/103

Mapa del área de variables de usuario

Suponiendo que el área asignada a la librería comienza en VBn, es:

SMS_Ready (Read, Bool, VBn + 0.0)

Indica que la aplicación está lista para enviar y recibir SMS. En la fase de

inicialización, en condiciones normales, tarda unos 30 segundos en

ponerse a 1. Es equivalente a la salida SMS_Ready de la función

principal.

PPI_Mode (Read, Bool, VBn + 0.1)

Indica que el puerto 0 de la CPU del S7-200 está en modo PPI.

En este modo se puede realizar una conexión desde STEP7-MicroWIN,

ya sea por teleservicio o directamente, desconectando el módem y

conectando la programadora al puerto.

En este modo la gestión de SMS queda temporalmente deshabilitada.

PPI_Request (Write, Bool, VBn + 0.2)

Bit para solicitar a la aplicación un cambio del puerto 0 a modo PPI.

Importante: No debe actuarse directamente sobre el campo SMB30 de

control del puerto 0. Activando este bit la aplicación hace el cambio de

forma ordenada.

Puede conectarse a una entrada del sistema para facilitar el acceso del

programador sin tener que poner la CPU en STOP.

Solo es necesario activar el bit un ciclo. La aplicación lo pondrá a 0 de

nuevo cuando se complete el paso a modo PPI.

Page 98: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 96/103

END_Teleservice (Write, Bool, VBn + 0.3)

Bit para solicitar la vuelta al modo de operación normal desde el modo

PPI. Se usa para indicar a la aplicación que ya se han terminado las

labores de mantenimiento y que puede hacer de nuevo uso del puerto y

del módem.

Al escribir un valor 1 en esta variable, se inicia un periodo de 90

segundos en los que el bit estará intermitente. Al acabar se produce el

cambio a modo normal.

Low_Signal_Level (Read, Bool, VBn + 0.4)

Indica que la medición del nivel de cobertura refleja un bajo nivel de

señal de la operadora, por debajo del umbral que asegura una correcta

comunicación.

El valor medido de señal, en dBm, se muestra en la variable

Signal_Level.

La medición no se realiza de forma continuada, sólo cuando se reinicia

la aplicación.

FULL_Licence (Read, Bool, VBn + 0.5)

Indica que se está usando una clave Nubitek y que la aplicación

funcionará de forma ininterrumpida.

TEST_mode (Read, Bool, VBn + 0.6)

Indica que se está trabajando en el modo de pruebas. La aplicación se

bloquea aproximadamente cada 5 horas.

Page 99: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 97/103

Se pueden consultar los minutos que quedan para el siguiente bloqueo

en la variable MINUTES_LEFT.

ERROR (Read, Bool, VBn + 0.7)

Indica que ha ocurrido algún error o evento. Este bit se pone a 1 tan

sólo un ciclo de programa.

En el campo Last_ERROR se almacena el código que indica qué clase

de error o evento se ha producido.

Last_ERROR (Read, INT, VBn + 2.0)

Código del último error o evento que se ha producido, y lo mantiene

hasta que ocurre uno nuevo.

Se puede consultar el significado de cada código de error en el

siguiente apartado de este capítulo.

SMS_Counter (Read, INT, VBn + 4.0)

Contador de SMS enviados por la aplicación.

Puede usarse para numerar los SMS salientes, de forma que el

destinatario puede saber que los va recibiendo correctamente y en su

totalidad.

Signal_Level (Read, INT, VBn + 6.0)

Valor medido de señal GSM, en dBm.

Un valor mayor de -91dBm es suficiente. Menor de -95 dBm es muy

deficiente.

Page 100: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 98/103

Minutes_LEFT (Read, INT, VBn + 8.0)

Está asociado al modo de pruebas. En modo normal es 0.

Es un contador decreciente que indica el número de minutos que restan

para que la aplicación se bloquee.

Last_Value_RCV (Read, REAL, VBn + 10.0)

Recoge el último valor que se ha capturado por una función

Receive_SMS. Este mismo valor también es proporcionado por la misma

función con el parámetro Value.

Códigos de error / evento

Nubitek SMS Manager facilita una serie de códigos para ayudar al

programador en la fase de desarrollo y en la de mantenimiento. El campo

Last_ERROR del área de variables de usuario almacena el código del último

error o evento producido.

Se actualiza cada vez que se activa el bit ERROR del área de variables de

usuario y puede consultarse desde el propio programa de control para actuar

en consecuencia.

Page 101: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 99/103

La lista de códigos es:

Código

de error

Descripción

11 El módem no responde al comando enviado por el PLC: posible

desconexión del cable PC/PPI o pérdida de alimentación del módem.

12 Error inesperado: la respuesta del módem no se reconoce por el PLC

13 El módem indica ERROR: posible fallo de parametrización.

14 El PIN de la tarjeta SIM no es correcto

15 La cobertura no es suficiente para poder establecer una

comunicación con garantías

23 Modo de pruebas: la desconexión del módem se ha ejecutado.

Rearranque CPU y módem para disponer de otras 5 horas.

24 La clave Nubitek no es correcta: módem apagado

31 Se ha recibido un SMS que no corresponde a ningún patrón definido

32 El SMS no se ha podido enviar correctamente: causa desconocida.

33 El buffer de salida de SMS está lleno (admite hasta 7 SMS encolados).

El último SMS no ha sido enviado.

Page 102: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 100/103

Teleservicio y gestión del puerto cero

Nubitek SMS Manager utiliza el puerto cero de la CPU S7-200 para la conexión

con el módem GSM. La aplicación se encarga de toda la configuración del

puerto y también de cargar en el módem todos los parámetros para soportar

Teleservicio desde un PC remoto.

Importante: el puerto cero debe reservarse en exclusiva para la comunicación

con el módem GSM, no debe tratarse bajo ningún concepto de crear una red

con más elementos.

Importante: el programador no debe en ningún caso tratar de controlar el

puerto de manera externa a la aplicación. Puede entrar en conflicto y

ocasionar que la gestión de SMS no funcione.

Cómo acceder a la CPU desde STEP7-MicroWIN

El funcionamiento normal del puerto bajo el control de Nubitek SMS Manager

es en modo freeport, necesario para gobernar el módem GSM y la aplicación

de SMS. Este modo es incompatible con el acceso de STEP7 - MicroWIN a

través del puerto, ya sea de forma directa o mediante Teleservicio.

Para acceder con STEP7-MicroWIN a la CPU a través del puerto 0 es necesario

que esté configurado en modo PPI.

Las formas de acceder a la CPU son 4:

� Usar una CPU de dos puertos y conectar a través del puerto 1 en modo

PPI.

� Poner la CPU en STOP: esto configura automáticamente los puertos en

modo PPI.

Page 103: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 101/103

� Solicitar de forma local a Nubitek SMS Manager que suspenda

temporalmente la gestión de SMS y conmute el puerto a modo PPI de

forma controlada. Esto permite desconectar del puerto el cable del

módem y acceder con la programadora. Para más detalle consulte el

apartado relacionado de este mismo capítulo.

� Solicitar a la aplicación, de forma remota mediante un SMS, que se

configure para permitir un acceso por Teleservicio a través del módem

GSM. Para más detalle consulte el apartado relacionado de este mismo

capítulo.

Acceso remoto por Teleservicio

El asistente para módems de STEP7-MicroWIN se utiliza para configurar los

módems remoto y local.

Será necesario configurar el módem local en la forma habitual, pero no es

necesario configurar el módem remoto, ya que lo hace la aplicación por sí

misma.

Para hacer un acceso remoto por Teleservicio se deben seguir los pasos

siguientes:

� Enviar un SMS al número de teléfono de la estación remota con la

palabra ‘teleservicio’. Esto hará conmutar el puerto a modo PPI.

� Esperar un plazo prudente, por ejemplo 1 minuto, y proceder a hacer el

acceso por Teleservicio desde STEP7-MicroWIN como se hace

habitualmente.

� Una vez que se envía el SMS dispone de un tiempo de 2 horas de

acceso. Al finalizar la estación volverá de forma automática al modo de

gestión de SMS.

Page 104: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 102/103

Cuando se finalizan las tareas de mantenimiento se puede colgar la llamada y

dejar que la estación vuelva por sí sola al modo normal de trabajo,

transcurridas las dos horas.

Si no se quiere que la estación espere el plazo normal de 2 horas sino que

conmute lo antes posible se deben seguir los pasos siguientes:

� Al finalizar la tarea de mantenimiento el operador no debe colgar sino

mantenerse online.

� Abrir la tabla de símbolos asociada a la librería.

� Localizar la posición asignada al bit END_Teleservice del área de

variables de usuario.

� Abrir la tabla de estado y ponerse online.

� Visualizar el valor del bit END_Teleservice, que estará en FALSE

(MicroWIN obliga a usar direccionamiento absoluto para ver esta

variable, por pertenecer a una librería)

� Forzar el valor TRUE en el bit END_Teleservice. No lo fuerce de manera

continua, es suficiente con escribirlo puntualmente, un ciclo. Se

observará que inicia una intermitencia.

� A partir de ese momento se dispone de 90 segundos para desconectar,

transcurridos los cuales la estación volverá al modo de gestión de SMS.

Acceso local por el puerto cero

El área de variables de usuario habilita para el programador el bit

PPI_Request, cuya activación hace que Nubitek SMS Manager realice el

cambio del puerto a PPI de forma controlada.

El programador puede activar el bit PPI_Request desde una botonera o un

panel de operador y solo debe actuar sobre él un único ciclo de programa. El

Page 105: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

Proyecto Fin de Carrera Lorenzo Rivas Kaiser Gestor de comunicación por SMS para PLC S7-200 103/103

bit permanecerá activo hasta que se haga efectivo el cambio de modo:

entonces PPI_Request se pondrá a 0 y PPI_Mode a 1.

Una vez que PPI_Mode está a 1 dispone de un tiempo de 2 horas de libre

acceso PPI por el puerto 0, tras lo cual volverá de forma automática al modo

de gestión de SMS. Durante este tiempo la aplicación de SMS estará en

suspenso.

Para volver al modo de gestión de SMS antes de finalice el periodo de 2 horas

hay q actuar sobre el bit END_Teleservice un único ciclo de programa. El bit

END_Teleservice iniciará una intermitencia de 90 segundos, luego se hará la

conmutación del puerto, END_Teleservice dejará de parpadear, PPI_Mode se

desactivará, y a los pocos segundos SMS_Ready se activará de nuevo.

Page 106: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

ANEXO I

CÓDIGO DE LA LIBRERÍA NUBITEK SMS MANAGER

Page 107: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �����������������������������������

������� ����������������������� �!"�����!���!�#��� $�%&'%$&&(�����$�&)�&*� �!"���������+�!�!�#��� &(%�&%$&�$�����'��&��'�

� ������ ,����-��% ,�����������. /���������

�&%& 0���1 ,2�3 ���� �

� � ,2�3 � �

��������

34��������/#���������56

Page 108: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ � ���������� �0�&&�

������� � �������������� �!"�����!���!�#��� &*%&�%$&&6�����6�$5�7*� �!"���������+�!�!�#��� �*%&$%$&&)�����(�77�&$�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& 38 8 ,08: 38�������+��"�� 8��!������%�%�;((((;�

�<7 ������=2> 8 8, =�1����-������1��������������"��������1%�?.��&�+���,2 ,�����

� � 8��?, � �

�5%& 0���1 �?, ���� 1.����0���1����.����������!��-�� � .

�5%� �� ,2�3 ���� �

�5%$ 3�������.��-�!�� ,2�3 ���� �

�96 0�����@ ,2�3 02�� �

� � ,2�3 � �

�8�0�0>����� ������ � ��������

���/=���2� � ��������

A20 8�� �%*%*

9�,2� &(�$&�&

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

?�8,2=� � ����:20��.����������!��-�� � �.�����"�� 6B$&&

,"�.��.��"����8� ?/,8��+����"��������1������� � ��������%�8���.���!�..��1��������@�!�����-��1���������!1!��C�.���!�������+�����������!��.���� �&%&�!����!�%

,"�����.�����.!���������+�D"�����!"���B�����������.C�����"��!�������+������+��"����+�������������%

,"��?.���������+��������� � ����������.��-�������������D������+�������������D��.�����DDD%������%!��

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

200�0�/�92 �

��%B�������������.D����������.��.����+�����"��3�/

�$%B�?��@��!������.���.�����3�/�����.�

�*%B�2�����.��������"�������

�7%B�8�!����!��38������

�(%B�: ��.��������-����.��������������"������.����"��!����!�!����

$*%B�,2 ,���������������.!���!������-��1�(�"��.

$7%B�8�!����!��������=�1

*�%B�8�!������ � ����.�E��+�@������1������+�����

*$%B��������� � �.�������+�����%�/"�!�� � �.�F��������!������������

**%B��������� � ��++����.�+��

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

/�98:� �92�200�0�

��%B�2�������������.���������!���������-������������3�/

�$%B������.��.����������������!����.������������.��������������3�/

�*%B� �����������������F�!��������������������������.������!���200�0

�7%B�2��38�����.�!����!��

�(%B����!������������.�.+�!������������������.�����!������!����!�!�#��!�����������.

$*%B��������������.�������.!���@�#������������.���G�!���!����(�"���.%�

$7%B����!��-������������.�!����!��

*�%B� ��"����!�������� � �������!����.�����������������������+�����

*$%B� �������������-������ � %�0�-�.�������H������ � �1���������������.����

**%B�2���++������.��������� � ��.��������

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

�!��$&�&�/��1���"��������8��.������8,C� �

DDD%������%!��

��������

8��!����F�!���

2

� �

�&%�

&&�8��!����F�� &���!��-�

������ 9���!!�#� /���������

&&�8��!����F�� A�6%&

&���!��-� A�6%�

��������

3�����&

2

�&%&

34��������/#�����$���56

Page 109: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ � ���������� �0�&&�

���������

� � �?,

0

� 0�

:3&&� ������� 3&&�3�I 0���1 J0���1

:3&��,���.��-�!��

&���!��-�

������ 9���!!�#� /���������

3&&�3�I A$$%&

&���!��-� A�6%�

:3&&� ������� A$�%& 3������������� �������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

0���1 A&%& 1.����0���1����.����������!��-�� � .

���������

� 02,

&���!��-�

������ 9���!!�#� /���������

&���!��-� A�6%�

��������

:�.�����/��-�

2

�������K/�����3?=

:3&&� �������

J������=2> J ��

������ 9���!!�#� /���������

:3&&� ������� A$�%& 3������������� �������

���������

0

38�&�������F��� � 2&$� � �����+���

38�&$�������� �

38�&�������F��� �

������ 9���!!�#� /���������

2&$� � �����+��� A$'%$

38�&�������F��� � A$6%�

38�&$�������� � A$6%$

���������

�����F���0/A

2

:3&&� �������

������ 9���!!�#� /���������

:3&&� ������� A$�%& 3������������� �������

���������

:�.�����8

2

�&%&

34��������/#�����*���56

Page 110: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ � ���������� �0�&&�

���������

:�.�����2�����.

2

:3&&� �������

������ 9���!!�#� /���������

:3&&� ������� A$�%& 3������������� �������

���������

,0�/3>

2�2

�?,8

3&5�38

LJ38 /���3��������

������ 9���!!�#� /���������

/���3�������� A�*76

3&5�38 A$*%*

��������

:�������M�,

2

��

:3&&� �������

J ��

������ 9���!!�#� /���������

:3&&� ������� A$�%& 3������������� �������

��������

:�.����� � ��?,

2

0���1

������ 9���!!�#� /���������

0���1 A&%& 1.����0���1����.����������!��-�� � .

���������

0�!��-�� �

2

� �0!-,M,��

,M,�$

A���

0���1

;���.��-�!;

;;

J0�����@

J3�������.��-�!��

J3�������.��-�!�� :3&7� ���!�,���.��-

������ 9���!!�#� /���������

:3&7� ���!�,���.��- A$�%7

0���1 A&%& 1.����0���1����.����������!��-�� � .

���������

��A��

2�2

�?,8

�&%�

�1��� ���������� �1��� ����������

������ 9���!!�#� /���������

�1��� ���������� A�66&

34��������/#�����7���56

Page 111: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ���� � �� �0�&��

������� ���� � ������ �!"�����!���!�#��� �)%&7%$&&6�����$�((�&$� �!"���������+�!�!�#��� $6%&$%$&&)�������77��&�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& � 8 9<�09 3���������� � ���@��.����������"��9�������!����%�%�NA�$&&&�

�97 ,���� 8 9<�09 3�������������������������.����������"��9�������!�

�9) ,���$ 8 9<�09 3�������������������������.����������"��9�������!�%�?.��&��+�����D�����

�9�$ A��� 8 9<�09 3�����������������!�-����+�����!�.��������"�� � ���@�%�?.��&��+�����D�����

� � 8��?, � �

� � �?, � �

�9�5 3�0���.��� ,2�3 9<�09 �

��$& /���!��� ,2�3 �>,2 �

�<$� 8���!� ,2�3 8, �

��$* /���!�����@ ,2�3 �>,2 �

�$7%& 0���.����2�!������� ,2�3 ���� �

�9$( 3�0���.�����@ ,2�3 9<�09 �

� � ,2�3 � �

�8�0�0>����� ������ � ��������

���/=���2� ���� �

A20 8�� �%*%*

9�,2� &(�$&�&

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

?.���"�.�+�!�������� 29��� � %

,"��+�!����� ���� � ��.�����1����.����2�,8�2�+�����!"� � %�0�������������.����"����"��."�������!���������"�.���0�.����29:2%

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

�!��$&�&�/��1���"��������8��.������8,C� �

DDD%������%!��

�����.�.�����++������ � �.��������1��.����!�������0���.����B����������

� 0

��A�9<

2�2

�?,8

�&%& J0���.����2�!�������

N�++��� � ��?, J3�0���.�����@

������ 9���!!�#� /���������

�++��� � ��?, A�5&

�����.�.�����++������ � �.��������1��.����!�������0���.����B�$��������

�0

2�2

89M

88,

8��

�&%&

J8���!�

6

�����.�.�����++������ � �.��������1��.����!�������0���.����B�*���������

��A��

2�2

�?,8

�&%&

LJ3�0���.�����@ J/���!�����@

34��������/#�����(���56

Page 112: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ���� � �� �0�&��

�����.�.�����++������ � �.��������1��.����!�������0���.����B�5���������

�$*%6��.������������/?3�9����������.�����!��������!��

� �

��A�9<

2�2

�?,8

�$*%6 J0���.����2�!������� J0���.����2�!�������

J3�0���.�����@ J3�0���.���

�����.�.�����++������ � �.��������1��.����!�������0���.����B�6��������

�99�98

2�2

�?,8�

8$

�&%&

O�)

J3�0���.�����@

J3�0���.�����@

�����.�.�����++������ � �.��������1��.����!�������0���.����B�)���������

2M,

�����.�.�����++������ � �.��������1��.����!�������0���.����B��&���������

02,

J0���.����2�!������� 2&�� ����@ ��

������ 9���!!�#� /���������

2&�� ����@ �� A$'%�

/��.��!!����������!���!������������

��A��

2�2

�?,8

PQ9

<�0��

2�2

�?,8�

8$

PQ9

<�0��

2�2

�?,8�

8$

��A��

2�2

�?,8

�&%&

$J& J/���!�����@

J,����

&

$J�&&&��&&

J/���!�����@

J/���!�����@

J,���$

&

$J�&&&&&��

J/���!�����@

J/���!�����@

J/���!�����@ LJ3�0���.���

34��������/#�����5���56

Page 113: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ���� � �� �0�&��

/�����!������3���������,�@�����������

�99�98

2�2

�?,8�

8$

��A�9<

2�2

�?,8

�&%&

O$

J3�0���.���

J3�0���.���

J � LJ3�0���.���

/�����!������3���������,�������������

�99�98

2�2

�?,8�

8$

��A�9<

2�2

�?,8

�&%&

O7

J3�0���.���

J3�0���.���

J,���� LJ3�0���.���

/�����!������3���������,���$��������

�99�98

2�2

�?,8�

8$

��A�9<

2�2

�?,8

�&%&

O7

J3�0���.���

J3�0���.���

J,���$ LJ3�0���.���

/�����!������A�����������A������������!�.���������� � ��������

�99�98

2�2

�?,8�

8$

��A�9<

2�2

�?,8

�&%&

O7

J3�0���.���

J3�0���.���

LJA��� LJ3�0���.���

34��������/#�����6���56

Page 114: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.����� � ��?,�� �0�&$�

������� :�.����� � ��?,������ �!"�����!���!�#��� �)%&7%$&&6�����*�&$�$'� �!"���������+�!�!�#��� ��%&$%$&&)�����$�7)�(&�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

�&%& �.!�� � ��� ,2�3 ���� �

�&%� /���!�����!��-� ,2�3 ���� �

�<� 8���!� ,2�3 8, �

�9* 3�0���.�����@ ,2�3 9<�09 �

��6 /���!�����@ ,2�3 �>,2 �

�9) 3�,�@�� ,2�3 9<�09 �

�9�$ ,�@�� ,2�3 9<�09 �

�9�5 3�A���� ,2�3 9<�09 �

�9$& A���� ,2�3 9<�09 �

�9$7 3�,�� ,2�3 9<�09 �

�9$) ,�� ,2�3 9<�09 �

�*$%& � ������ ,2�3 ���� �

��** �@�98, ,2�3 �>,2 �

� � ,2�3 � �

�����.�.������.�4��.�������.!��.��"�1����.�G�.�������-�����������++��� � ��?,��������

� � �

3&&�3�I :3&&� ������� J�.!�� � ���

������ 9���!!�#� /���������

3&&�3�I A$$%&

:3&&� ������� A$�%& 3������������� �������

��������

��A�9<

2�2

�?,8

J�.!�� � ���

N�++��� � ��?, J3�0���.�����@

������ 9���!!�#� /���������

�++��� � ��?, A�5&

�.��������������.����!��� � ����������.������-����B�����������

�0

2�2

89M

88,

8��

�&%&

J8���!�

6

34��������/#�����)���56

Page 115: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.����� � ��?,�� �0�&$�

�.��������������.����!��� � ����������.������-����B�$���������

�6%6�"�!����+����!�������������0���.�����!�����������/���!��������0���.�����������++������ � ��?,

��A��

2�2

�?,8

��A�9<

2�2

�?,8

0

0

�99�98

2�2

�?,8�

8$

J�.!�� � ���

LJ3�0���.�����@ J/���!�����@

�6%6

J3�0���.�����@ 3� � ��?,��!��-�

3�� � ��!��-�

3&&�3�I

J�.!�� � ���

O�)

J3�0���.�����@

J3�0���.�����@

������ 9���!!�#� /���������

3&&�3�I A$$%&

3�� � ��!��-� A$)%&

3� � ��?,��!��-� A9(5

�.��������������.����!��� � ����������.������-����B�*��������

2M,

2�-������ � ��?,�B�&����/�����������/���!������������.���� � ������++����������1�������.����%���������

��A��

2�2 �

�?,8

3�� � ��!��-� J/���!�����!��-�

L3� � ��?,��!��-� J/���!�����@

������ 9���!!�#� /���������

3�� � ��!��-� A$)%&

3� � ��?,��!��-� A9(5

34��������/#�����'���56

Page 116: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.����� � ��?,�� �0�&$�

2�-������ � ��?,�B�&$��/�����������!�!��������-������ � ���������

� � 0

0

� 0

0

�99�8

2�2

�?,8�

8$

0

3��&*� ���= 3�� � � 3�� � �

�6%$

3�� � $ 3�� � $

�6%&

� �/�����

� �/�����

3��&*� ���=

������ 9���!!�#� /���������

3��&*� ���= A$5%*

3�� � � A$)%�

3�� � $ A$)%$

� �/����� A<7 /�������+� � �.����.��!����.�����.����.�����

2�-������ � ��?,�B�&*����!���F�!�#����������+������������-������������

� �

0

� �

0

3�� � ��!��-� �6%* 3�� � �

3��&&�,��� �

�6%*

�6%5

�6%� 3�� � � 3�� � $

3��&&�,��� �

�6%�

�6%5

������ 9���!!�#� /���������

3��&&�,��� � A$5%&

3�� � � A$)%�

3�� � $ A$)%$

3�� � ��!��-� A$)%&

34��������/#������&���56

Page 117: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.����� � ��?,�� �0�&$�

2�-������ � ��?,�B�&7�� �����"�1�����+������!���F���C�!��������������.���� � ���������

� � �

��A��

2�2

�?,8

0

3�� � ��!��-� 3�� � � 3�� � $

& J/���!�����@

3&&�3�I

3�� � ��!��-�

������ 9���!!�#� /���������

3&&�3�I A$$%&

3�� � � A$)%�

3�� � $ A$)%$

3�� � ��!��-� A$)%&

2�-������ � ��?,�B�&(����!��������,���+����������������!���������-��� � ���������

� � �

�99�98

2�2

�?,8�

8$

�99�98

2�2

�?,8�

8$

��A�9<

2�2

�?,8

,0�/3>

2�2

�?,8

3��&&�,��� � /&&�/�� 3�� � �

3� � ��?,��!��-�

O5

J3�,��

3�� � $

3� � ��?,��!��-�

O�&

J3�,��

LJ3�,�� J,��

LJ,�� /���3��������

������ 9���!!�#� /���������

/���3�������� A�*76

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

3��&&�,��� � A$5%&

3�� � � A$)%�

3�� � $ A$)%$

3� � ��?,��!��-� A9(5

34��������/#����������56

Page 118: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.����� � ��?,�� �0�&$�

2�-������ � ��?,�B�&5��/��.��!!����������@��������-����������

�99�98

2�2

��A�9<

2�2

�?,8�

8$

�?,8

�99�98

2�2

�?,8�

8$

8�.������A����

2

/�����

A����

0

3��&��/��.����� �

3� � ��?,��!��-�

O$

J3�,�@�� LJ3�,�@�� J,�@��

3� � ��?,��!��-�

O�7

J3�A����

LJ,�@��

J3�A����

3��&$�,�@��� �

3��&��/��.����� �

������ 9���!!�#� /���������

3��&��/��.����� � A$5%�

3��&$�,�@��� � A$5%$

3� � ��?,��!��-� A9(5

2�-������ � ��?,�B�&6��2.!�����������1�������.�����������/���!������������.���� � ������++����������

��A��

2�2

�?,8

J/���!�����!��-�

J/���!�����@ L3� � ��?,��!��-�

������ 9���!!�#� /���������

3� � ��?,��!��-� A9(5

34��������/#������$���56

Page 119: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������0�!��-�� � �� �0�&*�

������� 0�!��-�� � ������ �!"�����!���!�#��� &5%&�%$&&6�����&�*$�(5� �!"���������+�!�!�#��� �(%&�%$&&'����$$�*6�75�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& ,M,�� 8 ,08: <�����������!����F������"����!������ � ���%�%�;�/,8A2;�

�97 ,M,�$ 8 ,08: <����$������!����F������"����!������ � ���%�%�;��/R82;�%�8+�����D�����C�.��;;

�9) A��� 8��?, 02�� ����!�-����!�������+�����"����!������ �

��$%& � �0!- �?, ���� �� � �D��"�,M,�������,M,�$�"�.��������!��-��%��!��-��+������1�����!1!��%

� � �?, � �

��$%� ,@����= ,2�3 ���� �

��$%$ ,@�$��= ,2�3 ���� �

��$%* R�1������ ,2�3 ���� �

���* ���������@� ,2�3 �>,2 �

���7 8���!��� ,2�3 �>,2 �

���( 8���!���� ,2�3 �>,2 �

�9�5 A���� ,2�3 02�� �

�$&%& 2.�������-� ,2�3 ���� �

��$� �2�$ ,2�3 �>,2 �

�$$%& ,@�$�A�!�� ,2�3 ���� �

� � ,2�3 � �

�8�0�0>����� ������ � ��������

���/=���2� 0�!��-�� �

A20 8�� �%*%*

9�,2� &(�$&�&

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

?.���"�.�+�!��������02/�:8I2�<�09 ���������!������ � %

,"��+�!�����0�!��-�� � ��.���!�..��1��������@�!�����-��1���������!1!��C�.��!�������.���� �&%&�!����!�%

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

�!��$&�&�/��1���"��������8��.������8,C� �

DDD%������%!��

��������

� 0

� 02,

38�&�������F��� � J � �0!-

&���!��-�

������ 9���!!�#� /���������

38�&�������F��� � A$6%�

&���!��-� A�6%�

��������

,0��2

2�2 SS� �

�?,8

�&%& J�2�$

&

J,@�$�A�!��

LJ,M,�$ J�2�$

34��������/#������*���56

Page 120: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������0�!��-�� � �� �0�&*�

���������

,0�/3>

2�2

�?,8

���.!��.

2

/�9���

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

Q� �

�&%&

LJ,M,�� /����@�����

N/����@�����

� J���������@�

/���3��������

/����@�����

J���������@�

J���������@�

&

J,@����=

������ 9���!!�#� /���������

/����@����� A��)5

/���3�������� A�*76

���������

� �

,0�/3>

2�2

�?,8

���.!��.

2

/�9���

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

J,@����= J,@�$�A�!��

LJ,M,�$ /����@�����

N/����@�����

� J���������@�

/���3��������

/����@�����

J���������@�

������ 9���!!�#� /���������

/����@����� A��)5

/���3�������� A�*76

��������

� �

� Q�

J,@�$�A�!�� J,@�$��=

J,@�$�A�!�� J���������@�

&

34��������/#������7���56

Page 121: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������0�!��-�� � �� �0�&*�

���������

� � �

0

J,@����= J,@�$��= J � �0!-

38�&�������F��� �

38�&$�������� �

������ 9���!!�#� /���������

38�&�������F��� � A$6%�

38�&$�������� � A$6%$

���������

��A��

2�2

�?,8

/R0� 89

2�2

�?,8�

8$

Q�

�0

2�2 �

�?,8

89M

J � �0!-

� J8���!���

/���3��������

;&�$*7(56)';

J8���!���

J8���!���

&

JR�1������

/���3��������

J8���!���

JA����

������ 9���!!�#� /���������

/���3�������� A�*76

���������

��A��

2�2

�?,8

/R0� 89

2�2

�?,8�

8$

Q�

8/��

2�2 SS� �

�?,8

�?��0

2�2

�?,8�

8$

JR�1������

� J8���!����

/���3��������

;B;

J8���!����

J8���!����

&

J8���!����

J8���!���

J2.�������-�

J8���!���� J8���!����

J2.�������-�

B�%&

JA����

JA����

������ 9���!!�#� /���������

/���3�������� A�*76

34��������/#������(���56

Page 122: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������0�!��-�� � �� �0�&*�

���������

��A�0

2�2

�?,8

��A�0

2�2

�?,8

JR�1������

JA���� JA���

JA���� ��.��A����0/A

������ 9���!!�#� /���������

��.��A����0/A A9�& ��.��A����!�������+���������!������ �

34��������/#������5���56

Page 123: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����8�� �0�&7�

������� :�.�����8������ �!"�����!���!�#��� $$%&7%$&&6�����5�$&�(*� �!"���������+�!�!�#��� $7%&�%$&&)����$&�*��&7�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

�&%& /��.����� � ,2�3 ���� �

��� 8���!���.���� ,2�3 �>,2 �

��$ �������,���� ,2�3 �>,2 �

��* ������� � ,2�3 �>,2 �

� � ,2�3 � �

/�������!�#�������.�!�!��.���������!��!�������������������

� �

�99�8

2�2

�?,8�

8$

QS8 �

3&&�3�I 2&(� � �8��2����

�<$$

,�/��.���� � �8

,�/��.���� � �8

,�/��.���� � �8

(&&&

J/��.����� �

������ 9���!!�#� /���������

3&&�3�I A$$%&

2&(� � �8��2���� A�'%(

,�/��.���� � �8 A<*5

��������

� � 0

0

3&&�3�I 2&(� � �8��2���� 2&(� � �8��2����

38�&$�������� �

3&&�3�I

������ 9���!!�#� /���������

3&&�3�I A$$%&

38�&$�������� � A$6%$

2&(� � �8��2���� A�'%(

���������

��A�<

2�2

�?,8

0

J/��.����� �

& ,�/��.���� � �8

38�&&�/��.����� �

3&&�3�I

������ 9���!!�#� /���������

3&&�3�I A$$%&

38�&&�/��.����� � A$6%&

,�/��.���� � �8 A<*5

34��������/#������6���56

Page 124: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����8�� �0�&7�

���������

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

����1��

2

A����A��

A�$

?��0

02 ,�0

/�92�

,0��2

2�2

�?,8

����1��

2

A����A��

A�$

?��0

02 ,�0

/�92�

����1��

2

A����A��

A�$

?��0

02 ,�0

/�92�

,0�/3>

2�2

�?,8

89M

38�&�������F��� �

(& J8���!���.����

�++���/��

;T0T;

J8���!���.����

J8���!���.����

$

>2

J8���!���.����

�++���/�� J�������,����

J�������,����

J8���!���.����

J�������,����

>2

J�������,����

(

J������� �

>2

�++���/��

J8���!���.����

J������� �

/���3��������

������ 9���!!�#� /���������

�++���/�� A�(&)

/���3�������� A�*76

38�&�������F��� � A$6%�

� A�5%�

>2 A�5%&

��������

���.!��.

2

/�9���

38�&�������F��� �

N/���3��������

������ 9���!!�#� /���������

/���3�������� A�*76

38�&�������F��� � A$6%�

34��������/#������)���56

Page 125: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8��!����F�!����� �0��&�

������� 8��!����F�!��������� �!"�����!���!�#��� $�%&'%$&&(�����$�&)�&*� �!"���������+�!�!�#��� $6%&$%$&&)�����6�(5�()�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

�9& 3�0���.�����@ ,2�3 9<�09 �

�<7 8���!� ,2�3 8, �

� � ,2�3 � �

88/8��8I�/8��92�A�08���2 �92��2 ,�9�0��������

0

0

�&%& >2

,��

,��

������ 9���!!�#� /���������

� A�5%�

,�� A�5%*

,�� A�5%$

>2 A�5%&

9���������������������������������

0

0

0

0

�&%& :3&&� �������

:3&��,���.��-�!��

:3&$�29�,���.��-

29�,���.��-�!�

:3&*��!����3����

:3&7� ���!�,���.��-

������ 9���!!�#� /���������

29�,���.��-�!� A&%* 0���.�����.����"�������&���!����������������

:3&&� ������� A$�%& 3������������� �������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

:3&$�29�,���.��- A$�%$ 2�����!"�����!���������.��������-��-������.�.������������ �������

:3&*��!����3���� A$�%* ��������!�!���������G�!������.�!�����.����!��+����!�������������

:3&7� ���!�,���.��- A$�%7

���������

� 0

0

0

�&%& 0���1

338�����

338�0���.�

������ 9���!!�#� /���������

338����� A&%� 3����&��+��"��/3?����338�����

338�0���.� A&%$ 0���.�����.����"�������&����338�����

0���1 A&%& 1.����0���1����.����������!��-�� � .

34��������/#������'���56

Page 126: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8��!����F�!����� �0��&�

0�.���������.���.�+���.����!����!�!������������

� 0

0

0

0

0

0

0

0

0

0

�&%& /&&�/��

/&��M�,

/&$� ���M�,

/&*�0/A

/&7� ���0/A

/&(������F��0/A

2&��0/A������

2&$�0/A�����

&*�/����I

�&%� &$�830'5&&

2&(� � �8��2����

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

/&��M�, A�)%�

/&$� ���M�, A�)%$

/&*�0/A A�)%* ��"����!��������.��.��

/&7� ���0/A A�)%7 �!��-����.������ ��M�,�"�.��� ��0/A

/&(������F��0/A A�)%( ,��.���!�������.��.��C���������������C�.���������������F����

&$�830'5&& A�6%$

&*�/����I A�6%*

2&��0/A������ A�'%&

2&$�0/A����� A�'%� �����.��.�����!���������!���!����!�����������������.������

2&(� � �8��2���� A�'%(

��������

� 0

0

0

�&%& 3�� � ��!��-�

3�� � �

3�� � $

������ 9���!!�#� /���������

3�� � � A$)%�

3�� � $ A$)%$

3�� � ��!��-� A$)%&

���������

��A�<

2�2

�?,8

�&%&

(&&& ,�/��.���� � �8

������ 9���!!�#� /���������

,�/��.���� � �8 A<*5

34��������/#�����$&���56

Page 127: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8��!����F�!����� �0��&�

0�.����������.�+���.���������������������

��A�<

2�2

�?,8

0

�&%&

& ,����2.����

��D� ��������-��

������ 9���!!�#� /���������

��D� ��������-�� A&%7 : �� ������������D������.����"��!�����!�����

,����2.���� A<*&

���������

��A�<

2�2

�?,8

��A�0

2�2

�?,8

�&%�

& � �/�����

&%& ��.��A����0/A

������ 9���!!�#� /���������

��.��A����0/A A9�& ��.��A����!�������+���������!������ �

� �/����� A<7 /�������+� � �.����.��!����.�����.����.�����

8��!����F�!���������.��8, ������.���������.��-����.����+����%���������

0

0

0

0

��A�<

2�2

�?,8

�&%� &���!��-�

=&&��������

=&���@/��-�.

=&$�9�+����

=&7�2��3��-

& ��.��200�0

������ 9���!!�#� /���������

=&&�������� A$&%&

=&���@/��-�. A$&%�

=&$�9�+���� A$&%$

=&7�2��3��- A$&%7

&���!��-� A�6%�

��.��200�0 A<$ /�����+��"����.������������-��������!���

34��������/#�����$����56

Page 128: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8��!����F�!����� �0��&�

8��!����F������++������!����!�!����1����������������������

,0�/3>

2�2

�?,8

,0�/3>

2�2

�?,8

,0�/3>

2�2

�?,8

�&%&

;; �++���/��

;; /���3��������

;; /����@�����

������ 9���!!�#� /���������

�++���/�� A�(&)

/����@����� A��)5

/���3�������� A�*76

:��������.�!�����.��@������.����!��.��!!�������!������.��������

,0�/3>

2�2

�?,8

,0�/3>

2�2

�?,8

,0�/3>

2�2

�?,8

�&%&

;T0; /��������

;T��; /���!������I

;T;; /���!������.

������ 9���!!�#� /���������

/���!������. A�7$

/���!������I A�7&

/�������� A�*)

8��!����F�!���������++������ ��������� � �1���.� ���.��.�!����.�B����������

� 0

0

�&%& 2&�� ����@ ��

2&$� � �����+���

������ 9���!!�#� /���������

2&�� ����@ �� A$'%�

2&$� � �����+��� A$'%$

���!�����+����������!������!��+����!�#��������������������

������� �.�.

2

�&%&

3&��8��*.

������ 9���!!�#� /���������

3&��8��*. A$$%� �.������.��������*�.�����.�������������������������

34��������/#�����$$���56

Page 129: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8��!����F�!����� �0��&�

������������!����F�!������������

� 0

�&%& &&�8��!����F��

������ 9���!!�#� /���������

&&�8��!����F�� A�6%&

8��!����F�����.��++��.������-������������1� � �.������������!������/3?��������

� 02,

�&%�

8��!����F�!���������++������ ��������� � ���������

��A�9<

2�2

�?,8

�&%&

N�++��� � ��?, J3�0���.�����@

������ 9���!!�#� /���������

�++��� � ��?, A�5&

8��!����F�!���������++������ ��������� � ���������

�0

2�2

89M

88,

8��

�&%&

J8���!�

5*

8��!����F�!���������++������ ��������� � ���������

��A�<

2�2

�?,8

�99�98

2�2

�?,8�

8$

�&%&

& LJ3�0���.�����@

O$

J3�0���.�����@

J3�0���.�����@

8��!����F�!���������++������ ��������� � ���������

2M,

34��������/#�����$*���56

Page 130: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3�����&�� �0����

������� 3�����&������ �!"�����!���!�#��� $�%&'%$&&(�����$�&)�&*� �!"���������+�!�!�#��� �&%&(%$&�&�����'�&&�$*�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

�&%& ��� �.��3����! ,2�3 ���� �

�&%� ���9�.!���,�� ,2�3 ���� �

:�.���������!��������,���.��-�!����������

� � � �

3&&�3�I :3&&� ������� =&&�������� :3&(�/������3�.����

������ 9���!!�#� /���������

=&&�������� A$&%&

3&&�3�I A$$%&

:3&&� ������� A$�%& 3������������� �������

:3&(�/������3�.���� A$�%(

:�.���������!��������,���.��-�!����������

� � 0

0

0

:3&7� ���!�,���.��- :3&(�/������3�.���� :3&&� �������

338�0���.� :3&��,���.��-�!��

:3&*��!����3����

:3&7� ���!�,���.��-

338�����

338�0���.�

������ 9���!!�#� /���������

:3&&� ������� A$�%& 3������������� �������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

:3&*��!����3���� A$�%* ��������!�!���������G�!������.�!�����.����!��+����!�������������

:3&7� ���!�,���.��- A$�%7

:3&(�/������3�.���� A$�%(

338����� A&%� 3����&��+��"��/3?����338�����

338�0���.� A&%$ 0���.�����.����"�������&����338�����

/��+��������������&��������������338���������

� �

��A��

2�2

�?,8

0

:3&��,���.��-�!�� :3&*��!����3����

) ��*&

:3&*��!����3����

������ 9���!!�#� /���������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

:3&*��!����3���� A$�%* ��������!�!���������G�!������.�!�����.����!��+����!�������������

34��������/#�����$7���56

Page 131: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3�����&�� �0����

,������F�!�������.�����������������,���.��-�!�����������

,��,�

2

� �!��-�

>��.

,���

/�������

�&%&

:3&��,���.��-�!��

6$&&&&&

,��

,�3����!�,���.��-

J ��� �.��3����!

������ 9���!!�#� /���������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

,�� A�5%$

,�3����!�,���.��- A97)

/����!����.�������!��������������������.!���@�����������

� �

J ��� �.��3����! :3&$�29�,���.��-

29�,���.��-�!� :3&��,���.��-�!��

������ 9���!!�#� /���������

29�,���.��-�!� A&%* 0���.�����.����"�������&���!����������������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

:3&$�29�,���.��- A$�%$ 2�����!"�����!���������.��������-��-������.�.������������ �������

8���������!������� ��:���� ������,���.��-�!��C����������.�*&�.�����������������

� � �

:3&$�29�,���.��- �&%( 29�,���.��-�!�

������ 9���!!�#� /���������

29�,���.��-�!� A&%* 0���.�����.����"�������&���!����������������

:3&$�29�,���.��- A$�%$ 2�����!"�����!���������.��������-��-������.�.������������ �������

,������F�!���������.�*&�.����� �.����� ������,���.��-�!�����������

,��,�

2

� �!��-�

>��.

,���

/�������

�&%&

:3&$�29�,���.��-

'&&&&

,��

,�9�.!���!��,��

J ���9�.!���,��

������ 9���!!�#� /���������

:3&$�29�,���.��- A$�%$ 2�����!"�����!���������.��������-��-������.�.������������ �������

,�9�.!���!��,�� A9($

,�� A�5%$

34��������/#�����$(���56

Page 132: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3�����&�� �0����

:�.���������!������������� ����������������

0

0

0

������� �.�.

2

J ���9�.!���,�� :3&&� �������

:3&��,���.��-�!��

:3&$�29�,���.��-

:3&*��!����3����

29�,���.��-�!�

&&�8��!����F��

������ 9���!!�#� /���������

29�,���.��-�!� A&%* 0���.�����.����"�������&���!����������������

&&�8��!����F�� A�6%&

:3&&� ������� A$�%& 3������������� �������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

:3&$�29�,���.��- A$�%$ 2�����!"�����!���������.��������-��-������.�.������������ �������

:3&*��!����3���� A$�%* ��������!�!���������G�!������.�!�����.����!��+����!�������������

34��������/#�����$5���56

Page 133: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3�����&�� �0����

���������

/��+��������������&�������������� ����������������������"������������������!��!�#�%

� � �

��A��

2�2

�?,8

��A��

2�2

�?,8

��A��

2�2

�?,8

��A�<

2�2

�?,8

��A�<

2�2

�?,8

��A��

2�2

�?,8

0/A

2�2

,��

3�0,

�,/R

2�2

8,

2A,

�,/R

2�2

8,

2A,

28

0

0

:3&&� ������� :3&*��!����3���� &$�830'5&&

$( ��*&

&$�830'5&&

' ��*&

�5J�/ ��)6

( �<'&

$(&& �<'$

$(( ��'7

�++���/��

&

��0/A

$*

��M�,

'

338�����

:3&*��!����3����

������ 9���!!�#� /���������

�++���/�� A�(&)

��0/A 8,��$

��M�, 8,���

&$�830'5&& A�6%$

:3&&� ������� A$�%& 3������������� �������

:3&*��!����3���� A$�%* ��������!�!���������G�!������.�!�����.����!��+����!�������������

338����� A&%� 3����&��+��"��/3?����338�����

34��������/#�����$6���56

Page 134: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����/��-��� �0��$�

������� :�.�����/��-������� �!"�����!���!�#��� $�%�$%$&&5����$��()�&�� �!"���������+�!�!�#��� �*%&$%$&&)�����(�76�7)�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�<& /�����3?= 8 8, �

� � 8��?, � �

�$%& ������� �?, ���� �

� � �?, � �

�$%� 3����� ,2�3 ���� �

�$%$ 2���F�����.� ,2�3 ���� �

�<* /�����3?=���� ,2�3 8, �

�<( 8,�9�-������ ,2�3 8, �

�96 98,�/�!�����0�.�� ,2�3 98, �

�9�� 0���G ,2�3 98, �

�9�( /����0���G�� ,2�3 98, �

�9�' /����0���G�$ ,2�3 98, �

� � ,2�3 � �

8��!�����F�!����.��������

� 0

Q8

0

SS8

0

��A�<

2�2

�?,8

�&%� =&(���������

J/�����3?=

&

?�����!��!�

,2 ,�����

J/�����3?=

&

,2 ,�����

?�����!��!�

J/�����3?= ������=�1

������ 9���!!�#� /���������

=&(��������� A$&%(

?�����!��!� A&%( ?���������=�1�.��

������=�1 A<*$

,2 ,����� A&%5 ,2 ,�����

A���+�!�!����������������!������������������

Q8 � �

SS8 �

PQ8

J/�����3?=

&

?�����!��!� J3�����

,2 ,����� =&���@/��-�.

J/�����3?=

&

?�����!��!�

,2 ,�����

������=�1

J/�����3?=

������ 9���!!�#� /���������

=&���@/��-�. A$&%�

?�����!��!� A&%( ?���������=�1�.��

������=�1 A<*$

,2 ,����� A&%5 ,2 ,�����

34��������/#�����$)���56

Page 135: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����/��-��� �0��$�

A����������.1��.�������!��!����.����������������

� Q8

0

SS8

0

��A�<

2�2

�?,8

J3����� J/�����3?=

&

?�����!��!�

,2 ,�����

J/�����3?=

&

,2 ,�����

?�����!��!�

J/�����3?= ������=�1

������ 9���!!�#� /���������

?�����!��!� A&%( ?���������=�1�.��

������=�1 A<*$

,2 ,����� A&%5 ,2 ,�����

���������

�:�8,8�2

2�2

�?,

�&%&

J0���G

/�������!�#�������.�!�!��.���������!��!�������������������

� �

<�9�9<

2�2

�?,8�

8$

98A�98

2�2

�?,8�

8$

?��98

2�2

�?,8�

8$

98�8

2�2

�?,8

SS8 �

,2 ,����� J3�����

�5J&&

J0���G

J/����0���G��

J/����0���G��

O5&�&&

J/����0���G��

$6'

J/����0���G��

J/����0���G��

J/����0���G�� �����.��2 ,

�����.��2 ,

&

J2���F�����.�

=&7�2��3��-

������ 9���!!�#� /���������

=&7�2��3��- A$&%7

�����.��2 , A<) ?.����,2 ,�����C����������������.����������

,2 ,����� A&%5 ,2 ,�����

34��������/#�����$'���56

Page 136: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����/��-��� �0��$�

���������

� � �

J3����� /&&�/�� J�������

J2���F�����.� =&(���������

=&(���������

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

=&(��������� A$&%(

/�����������F�������8�28�1����/��-����������������

� � �

<�9�9<

2�2

�?,8�

8$

SS9

0

:3&&� ������� 3&&�3�I ?�����!��!�

�5J&&&

J0���G

J/����0���G�$

J/����0���G�$

�5J&&&

3 &&�8�28

3&&�3�I

������ 9���!!�#� /���������

3&&�3�I A$$%&

3 &&�8�28 A$(%&

?�����!��!� A&%( ?���������=�1�.��

:3&&� ������� A$�%& 3������������� �������

34��������/#�����*&���56

Page 137: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �����������������F���0/A�� �0��*�

������� �����F���0/A������ �!"�����!���!�#��� �7%&�%$&&6�����5�&&�(5� �!"���������+�!�!�#��� $$%&�%$&&)�����$�$7�$(�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

� � ,2�3 � �

��������

� 02,

/&7� ���0/A

������ 9���!!�#� /���������

/&7� ���0/A A�)%7 �!��-����.������ ��M�,�"�.��� ��0/A

��������

� 0

0

/&7� ���0/A /&*�0/A

/&7� ���0/A

/&(������F��0/A

������ 9���!!�#� /���������

/&*�0/A A�)%* ��"����!��������.��.��

/&7� ���0/A A�)%7 �!��-����.������ ��M�,�"�.��� ��0/A

/&(������F��0/A A�)%( ,��.���!�������.��.��C���������������C�.���������������F����

���������

�.!���/�����

2

3�.���/�����

� �

0

�&%& 2&7�����72����

;200�0; 2&��0/A������

2&��0/A������ 38�&&�/��.����� � 2&(� � �8��2����

2&7�����72����

������ 9���!!�#� /���������

38�&&�/��.����� � A$6%&

2&��0/A������ A�'%&

2&7�����72���� A�'%*

2&(� � �8��2���� A�'%(

���������

�.!���/�����

2

3�.���/�����

3&*�0�.��,/

;�=; 3&7��2/�

������ 9���!!�#� /���������

3&*�0�.��,/ A$*%&

3&7��2/� A$*%�

34��������/#�����*����56

Page 138: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �����������������F���0/A�� �0��*�

��������

�.!���/�����

2

3�.���/�����

3&7��2/�

;�=; 3&(�/��.�����38

������ 9���!!�#� /���������

3&7��2/� A$*%�

3&(�/��.�����38 A$*%$

,��������.����������������

/�������������.�������

�.!���/�����

2

3�.���/�����

3&(�/��.�����38

; 8��38; 3&5�38

������ 9���!!�#� /���������

3&(�/��.�����38 A$*%$

3&5�38 A$*%*

,��������.����������������

/�������������.�������

�.!���/�����

2

3�.���/�����

3&(�/��.�����38

;02�9>; 3&)�8�28

������ 9���!!�#� /���������

3&(�/��.�����38 A$*%$

3&)�8�28 A$*%(

,��������.����������������

/�������������.�������

�.!���/�����

2

3�.���/�����

3&5�38

;�=; 3&6�3�.�38

������ 9���!!�#� /���������

3&5�38 A$*%*

3&6�3�.�38 A$*%7

���������

�.!���/�����

2

3�.���/�����

3&)�8�28

;�=; 3&'�/�8

������ 9���!!�#� /���������

3&)�8�28 A$*%(

3&'�/�8 A$*%5

���������

�.!���/�����

2

3�.���/�����

3&'�/�8

;�=; 3�&�/:�

������ 9���!!�#� /���������

3&'�/�8 A$*%5

3�&�/:� A$*%6

34��������/#�����*$���56

Page 139: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �����������������F���0/A�� �0��*�

��������

�.!���/�����

2

3�.���/�����

3�&�/:�

;�=; 3�$�/3�

������ 9���!!�#� /���������

3�&�/:� A$*%6

3�$�/3� A$7%�

��������

�.!���/�����

2

3�.���/�����

3�$�/3�

;/3� ; 3��� �

������ 9���!!�#� /���������

3��� � A$7%&

3�$�/3� A$7%�

���������

�.!���/�����

2

3�.���/�����

3��� �

;�=; 3�*��9,0

������ 9���!!�#� /���������

3��� � A$7%&

3�*��9,0 A$7%$

���������

�.!���/�����

2

3�.���/�����

3�*��9,0

;�=; 3�7�� �G�

������ 9���!!�#� /���������

3�*��9,0 A$7%$

3�7�� �G� A$7%*

��������

�.!���/�����

2

3�.���/�����

3�7�� �G�

;�=; 3�(�0�.����

������ 9���!!�#� /���������

3�7�� �G� A$7%*

3�(�0�.���� A$7%7

���������

�.!���/�����

2

3�.���/�����

3�(�0�.����

;�=; 3�5�:�����

������ 9���!!�#� /���������

3�(�0�.���� A$7%7

3�5�:����� A$7%(

34��������/#�����**���56

Page 140: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �����������������F���0/A�� �0��*�

���������

�.!���/�����

2

3�.���/�����

3�5�:�����

;�=; 3�6�/�������

������ 9���!!�#� /���������

3�5�:����� A$7%(

3�6�/������� A$7%5

���������

�.!���/�����

2

3�.���/�����

3�6�/�������

; ��-���; 3�)������F������

������ 9���!!�#� /���������

3�6�/������� A$7%5

3�)������F������ A$7%6

���������

�.!���/�����

2

3�.���/�����

3��&&�,��� �

;Q; 3��&��/��.����� �

������ 9���!!�#� /���������

3��&&�,��� � A$5%&

3��&��/��.����� � A$5%�

���������

�.!���/�����

2

3�.���/�����

3��&$�,�@��� �

;/�: ; 3��&*� ���=

������ 9���!!�#� /���������

3��&$�,�@��� � A$5%$

3��&*� ���= A$5%*

��������

�.!���/�����

2

3�.���/�����

38�&&�/��.����� �

;O/�:0��&CC&; 3&&�3�I

������ 9���!!�#� /���������

3&&�3�I A$$%&

38�&&�/��.����� � A$6%&

��������

�.!���/�����

2

3�.���/�����

38�&&�/��.����� �

;02/�?02�9; 38�&�������F��� �

������ 9���!!�#� /���������

38�&&�/��.����� � A$6%&

38�&�������F��� � A$6%�

34��������/#�����*7���56

Page 141: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �����������������F���0/A�� �0��*�

���������

�.!���/�����

2

3�.���/�����

38�&&�/��.����� �

;02/�02�9; 38�&$�������� �

������ 9���!!�#� /���������

38�&&�/��.����� � A$6%&

38�&$�������� � A$6%$

���������

�.!���/�����

2

3�.���/�����

38�&$�������� �

;�=; 3&&�3�I

������ 9���!!�#� /���������

3&&�3�I A$$%&

38�&$�������� � A$6%$

��������

�.!���/�����

2

3�.���/�����

3 &&�8�28

;�=; 3&&�3�I

������ 9���!!�#� /���������

3&&�3�I A$$%&

3 &&�8�28 A$(%&

2:�2,�� 8�����������

0

0

/&(������F��0/A 2&$�0/A�����

/&&�/��

/&(������F��0/A

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

/&(������F��0/A A�)%( ,��.���!�������.��.��C���������������C�.���������������F����

2&$�0/A����� A�'%� �����.��.�����!���������!���!����!�����������������.������

34��������/#�����*(���56

Page 142: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����2�����.�� �0��7�

������� :�.�����2�����.������ �!"�����!���!�#��� �7%&�%$&&6�����5�&��$&� �!"���������+�!�!�#��� $6%&$%$&&)�����$�$)��$�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 ���� �

� � 8��?, � �

� � �?, � �

�&%& /���/������ ,2�3 ���� �

�&%� ��D���-�� ,2�3 ���� �

�&%$ 2-���� ,2�3 ���� �

�&%* 0����!��� ,2�3 ���� �

��� 8���!��� ,2�3 �>,2 �

� � ,2�3 � �

��������

� 0

�&%& J0����!���

/������������������������!����!�!�����������

,��,�

2

� �!��-�

>��.

,���

/�������

�&%&

/&&�/��

$$&&&

,��

,� �����/��

J/���/������

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

,� �����/�� A977

,�� A�5%$

:�.�����������!����������������

��A��

2�2

�?,8

/R0� 89

2�2

�?,8�

8$

Q�

�8

2�2 PS8 �

�?,8

89M

SS�

0

3�)������F������

� J8���!���

�++���/��

;B;

J8���!���

J8���!���

&

��������-��

B'�

J��D���-��

�++���/��

J8���!���

��������-��

J8���!���

&

2&$�0/A�����

3�)������F������

3&&�3�I

������ 9���!!�#� /���������

�++���/�� A�(&)

3&&�3�I A$$%&

3�)������F������ A$7%6

2&$�0/A����� A�'%� �����.��.�����!���������!���!����!�����������������.������

��������-�� A<5 �����+��"��: �� ��������Q�B'������.��=�

34��������/#�����*5���56

Page 143: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����2�����.�� �0��7�

:�.��������2-����.���� �����B�����������

� �

J��D���-�� J2-����

2&�� ����@ ��

2&$� � �����+���

������ 9���!!�#� /���������

2&�� ����@ �� A$'%�

2&$� � �����+��� A$'%$

:�.��������2-����.���� �����B�$��������

� �

J2-���� 200�0

J/���/������

2&��0/A������

2&$�0/A�����

=&&��������

������ 9���!!�#� /���������

200�0 A&%6 2���������-�����!����C�.�����.��200�0�+����

=&&�������� A$&%&

2&��0/A������ A�'%&

2&$�0/A����� A�'%� �����.��.�����!���������!���!����!�����������������.������

���������

��%B�2�������������.���������!���������-������������3�/

*$%B�2�����������������-������ � %�0�-�.��������������.����%

� �

��A�<

2�2

�?,8

��A�<

2�2

�?,8

J/���/������ 3�� � ��!��-� J0����!���

�� ��.��200�0

3�� � ��!��-�

*$ ��.��200�0

������ 9���!!�#� /���������

3�� � ��!��-� A$)%&

��.��200�0 A<$ /�����+��"����.������������-��������!���

34��������/#�����*6���56

Page 144: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����2�����.�� �0��7�

:�.��������2-����.���� �����B�*%���������

�(%B����!������������.�.+�!������������������.�����!������!����!�!�#��!�����������.

*�%B� ��"����!�������� � �������!����.�����������������������+�����

**%B�2���++������.��������� � ��.��������

� �

��A�<

2�2

�?,8

��A�<

2�2 0

�?,8

��A�<

2�2 0

�?,8

J2-���� J��D���-�� ��D� ��������-��

�( ��.��200�0

2&�� ����@ �� 2&�� ����@ ��

** ��.��200�0

2&$� � �����+��� 2&$� � �����+���

*� ��.��200�0

������ 9���!!�#� /���������

2&�� ����@ �� A$'%�

2&$� � �����+��� A$'%$

��.��200�0 A<$ /�����+��"����.������������-��������!���

��D� ��������-�� A&%7 : �� ������������D������.����"��!�����!�����

:�.��������2-����.���� �����B�7%� ����.����/��-�.���������

$�%B��������!���������.�����.���.����.�������

$*%B��������������.�������.!���@�#����������������������.��"���G�!����%�

$7%B����!��-����+�����-������������.�!����!��

� �

��A�<

2�2

�?,8

� SS8

��A�<

2�2

�?,8

� �

��A�<

2�2

�?,8

0

=&&�������� =&���@/��-�.

$� ��.��200�0

,2 ,����� �����.��2 ,

&

$* ��.��200�0

?�����!��!� =&$�9�+����

$7 ��.��200�0

&���!��-�

������ 9���!!�#� /���������

=&&�������� A$&%&

=&���@/��-�. A$&%�

=&$�9�+���� A$&%$

&���!��-� A�6%�

?�����!��!� A&%( ?���������=�1�.��

��.��200�0 A<$ /�����+��"����.������������-��������!���

�����.��2 , A<) ?.����,2 ,�����C����������������.����������

,2 ,����� A&%5 ,2 ,�����

34��������/#�����*)���56

Page 145: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�.�����2�����.�� �0��7�

:�.��������2-����.���� �����B�(%�0�.��.���!�����������������

�*%B� �����������������F�!��������������������������.������!���200�0

�7%B�2��38�����.�!����!��

� �

��A�<

2�2 0

�?,8

� �

��A�<

2�2

�?,8

��A�<

2�2

�?,8

2&��0/A������ 3&5�38 &���!��-�

�7 ��.��200�0

3&5�38 3�� � ��!��-� J0����!���

�* ��.��200�0

3�� � ��!��-�

*$ ��.��200�0

������ 9���!!�#� /���������

3&5�38 A$*%*

3�� � ��!��-� A$)%&

&���!��-� A�6%�

2&��0/A������ A�'%&

��.��200�0 A<$ /�����+��"����.������������-��������!���

:�.��������2-����.���� �����B�5%�0�.��.��.����.������.���������

�$%B������.��.����������������!����.������������.��������������3�/

*$%B� � ����.��"�����������-����!����!�������

� �

��A�<

2�2

�?,8

��A�<

2�2

�?,8

2&$�0/A����� 3�� � ��!��-� J0����!���

�$ ��.��200�0

3�� � ��!��-�

*$ ��.��200�0

������ 9���!!�#� /���������

3�� � ��!��-� A$)%&

2&$�0/A����� A�'%� �����.��.�����!���������!���!����!�����������������.������

��.��200�0 A<$ /�����+��"����.������������-��������!���

��������

������� �.�.

2

J0����!���

&&�8��!����F��

������ 9���!!�#� /���������

&&�8��!����F�� A�6%&

34��������/#�����*'���56

Page 146: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�������M�,�� �0��(�

������� :�������M�,������ �!"�����!���!�#��� �7%&�%$&&6�����5�&&�$5� �!"���������+�!�!�#��� $'%&�%$&&)�����&�76�($�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

�&%& �� 8��?, ���� �

� � �?, � �

� � ,2�3 � �

��������

����..�

2

J ��

,2�3�08I�/8��92���00�U?2�92����92��B����������

�.����2.����

2

3�.����.

3&��8��*.

*(&& 3&$��830'5&&

������ 9���!!�#� /���������

3&��8��*. A$$%� �.������.��������*�.�����.�������������������������

3&$��830'5&& A$$%$

���������

� �

0

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&$��830'5&& &$�830'5&& 3&*�0�.��,/

3&$��830'5&&

&$�830'5&&

;��O���S'5&&;

&

������ 9���!!�#� /���������

3&$��830'5&& A$$%$

3&*�0�.��,/ A$*%&

&$�830'5&& A�6%$

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&*�0�.��,/

;��N+&;

*&&&

������ 9���!!�#� /���������

3&*�0�.��,/ A$*%&

� A�5%�

34��������/#�����7&���56

Page 147: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�������M�,�� �0��(�

��������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&7��2/�

;���&;

&

������ 9���!!�#� /���������

3&7��2/� A$*%�

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&(�/��.�����38

;��O!���V;

&

������ 9���!!�#� /���������

3&(�/��.�����38 A$*%$

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&5�38

;��O!���S;

>2

&

������ 9���!!�#� /���������

3&5�38 A$*%*

� A�5%�

>2 A�5%&

���������

�.����2.����

2

3�.����.

3&6�3�.�38

�&&&& 3&)�8�28

������ 9���!!�#� /���������

3&6�3�.�38 A$*%7

3&)�8�28 A$*%(

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&)�8�28

3 &&�8�28 ;��O�.�;

&

������ 9���!!�#� /���������

3&)�8�28 A$*%(

3 &&�8�28 A$(%&

� A�5%�

34��������/#�����7����56

Page 148: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�������M�,�� �0��(�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3&'�/�8

;��O!���S&C&C&C&;

&

������ 9���!!�#� /���������

3&'�/�8 A$*%5

� A�5%�

��������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�&�/:�

;��O!��+S�;

&

������ 9���!!�#� /���������

3�&�/:� A$*%6

� A�5%�

��������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3��� �

;��W..�..S�;

&

������ 9���!!�#� /���������

3��� � A$7%&

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�$�/3�

;��O!��.S�,C�,C�,;

&

������ 9���!!�#� /���������

3�$�/3� A$7%�

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�*��9,0

;��N9&;

&

������ 9���!!�#� /���������

3�*��9,0 A$7%$

� A�5%�

34��������/#�����7$���56

Page 149: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�������M�,�� �0��(�

��������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�7�� �G�

;��XU&;

&

������ 9���!!�#� /���������

3�7�� �G� A$7%*

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�(�0�.����

;��.&S�;

*&&&

������ 9���!!�#� /���������

3�(�0�.���� A$7%7

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�5�:�����

;��ND;

&

������ 9���!!�#� /���������

3�5�:����� A$7%(

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3�6�/�������

;��W����;

�$&&

������ 9���!!�#� /���������

3�6�/������� A$7%5

� A�5%�

���������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3��&&�,��� �

;��O!��.S;

>2

>2

&

������ 9���!!�#� /���������

3��&&�,��� � A$5%&

>2 A�5%&

34��������/#�����7*���56

Page 150: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������:�������M�,�� �0��(�

���������

� �

2�-����/�����

2

/������

3��������

/������.

�F��0/A

3��&$�,�@��� � /&&�/�� &*�/����I

;;

>2

�$&&

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

3��&$�,�@��� � A$5%$

&*�/����I A�6%*

� A�5%�

>2 A�5%&

��������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

38�&&�/��.����� �

;��O!���S�;

*&&&

������ 9���!!�#� /���������

38�&&�/��.����� � A$6%&

� A�5%�

��������

2�-����/�����

2

/������

3��������

/������.

�F��0/A

38�&$�������� �

;��O!���S�;

�$&&

������ 9���!!�#� /���������

38�&$�������� � A$6%$

� A�5%�

34��������/#�����77���56

Page 151: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8�.������A������ �0��5�

������� 8�.������A���������� �!"�����!���!�#��� &5%&�%$&&6�����&�**�&&� �!"���������+�!�!�#��� $'%&�%$&&)�����&�$7�&)�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& /����� 8 ,08: �

�97 A���� 8 9<�09 �

� � 8��?, � �

� � �?, � �

�)%& R�1�A���� ,2�3 ���� �

�)%� A�����0 ,2�3 ���� �

�)%$ A�����98 ,2�3 ���� �

�)%* A�����8 ,2�3 ���� �

��' 8���!�����!� ,2�3 �>,2 �

���& 8���!���@ ,2�3 �>,2 �

���� �F��!����� ,2�3 �>,2 �

���$ �F��-���� ,2�3 �>,2 �

� � ,2�3 � �

��!��������!������1�.��;��.���;�������"�1�-���������.�������������

,0�/3>

2�2 0

�?,8

�&%& JR�1�A����

LJ/����� /���3��������

������ 9���!!�#� /���������

/���3�������� A�*76

�.��������0���������

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

Q�

�&%&

� J8���!�����!�

/���3��������

;N0;

J8���!�����!�

J8���!�����!�

&

JR�1�A����

JA�����0

������ 9���!!�#� /���������

/���3�������� A�*76

34��������/#�����7(���56

Page 152: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8�.������A������ �0��5�

�.��������98,���������

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

Q�

JR�1�A����

� J8���!�����!�

/���3��������

;N9;

J8���!�����!�

J8���!�����!�

&

JR�1�A����

JA�����98

������ 9���!!�#� /���������

/���3�������� A�*76

�.��������8,���������

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

Q�

JR�1�A����

� J8���!�����!�

/���3��������

;N8;

J8���!�����!�

J8���!�����!�

&

JR�1�A����

JA�����8

������ 9���!!�#� /���������

/���3�������� A�*76

��R�1�A������.��!��������!������1�������������

� 02,

JR�1�A����

8�R�1�A������/� ,0?//8�������� �.����������/��������������

,0��2

2�2

�?,8

92/��

2�2

�?,8

�&%&

LJ/����� J �F��!�����

J8���!�����!� /���3��������

������ 9���!!�#� /���������

/���3�������� A�*76

34��������/#�����75���56

Page 153: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8�.������A������ �0��5�

8�R�1�A�������!����F�!�#�����3�����.�����������.���������/��������������

����1��

2

A����A��

A�$

?��0

02 ,�0

/�92�

����1��

2

A����A��

A�$

?��0

02 ,�0

/�92�

�&%&

J8���!�����!�

$

>2

J8���!�����!�

J �F��!�����

J8���!�����!�

J �F��!�����

>2

������ 9���!!�#� /���������

� A�5%�

>2 A�5%&

8�R�1�A�������/��-��.��������A��������/��������������

� �

0�

2�2

�?,8

�,

98�

2�2

�?,8

�,

8�

2�2

�?,8

�,

�&%& JA�����0

LJA����

$J��&&&&��

/����@�����

JA�����98

LJA����

&

/����@�����

JA�����8

LJA����

&

/����@�����

������ 9���!!�#� /���������

/����@����� A��)5

34��������/#�����76���56

Page 154: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������8�.������A������ �0��5�

/� ,0?//8������A�����������/��������������

��A��

2�2

�?,8

/R0� 89

2�2

�?,8�

8$

,0��2

2�2

�?,8

����1��

2

A����A��

A�$

?��0

02 ,�0

/�92�

,0�/3>

2�2

�?,8

89M

,0�/�,

2�2

�?,8

�&%&

� J8���!���@

/����@�����

;B&�$*7(56)';

J8���!���@

/����@����� J �F��-����

J �F��-����

J8���!���@

J �F��-����

>2

/����@�����

J8���!���@

J �F��-����

/����@�����

/����@����� /���3��������

������ 9���!!�#� /���������

/����@����� A��)5

/���3�������� A�*76

� A�5%�

>2 A�5%&

/� ,0?//8��������3����� �����������/��������������

,0�/3>

2�2

�?,8

89M

,0�/�,

2�2

�?,8

�&%&

LJ/�����

J8���!�����!�

J �F��!�����

/����@�����

/����@����� /���3��������

������ 9���!!�#� /���������

/����@����� A��)5

/���3�������� A�*76

34��������/#�����7)���56

Page 155: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ���������������.!��.�� �0��'�

������� ���.!��.������ �!"�����!���!�#��� $6%&6%$&&������)�&6��5� �!"���������+�!�!�#��� $*%&7%$&&6�����$�7��$5�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& /�9��� 8 9<�09 �

� � 8��?, � �

� � �?, � �

�<7 �2�D��� ,2�3 8, �

�<5 8���!� ,2�3 8, �

�9) 3������D��� ,2�3 9<�09 �

�<�$ 8����@ ,2�3 8, �

���7 �����@ ,2�3 �>,2 �

� � ,2�3 � �

��������

,0��2

2�2

�?,8

��8

2�2

�?,8

�&%&

LJ/�9��� J�����@

J�����@ J�2�D���

��������

��A�9<

2�2

�?,8

�&%&

J/�9��� J3������D���

���������

�0

2�2

89M

88,

8��

�&%&

J8���!�

J�2�D���

���������

�99�98

2�2

�?,8�

8$

�&%&

J3������D���

J3������D���

34��������/#�����7'���56

Page 156: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ���������������.!��.�� �0��'�

��������

QS� PS�

��8

2�2

�?,8

�99�8

2�2

�?,8�

8$

8��

2�2

�?,8

LJ3������D���

5(

LJ3������D���

'&

LJ3������D��� J8����@

*$

J8����@

J8����@

J8����@ LJ3������D���

���������

2M,

34��������/#�����(&���56

Page 157: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������������� �.�.�� �0�$&�

������� ������� �.�.������ �!"�����!���!�#��� $'%�$%$&&5�����&�(6�&(� �!"���������+�!�!�#��� $$%&�%$&&)�����*�*'�7(�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

�<& �!�� ,2�3 8, �

�9$ 3��@ ,2�3 9<�09 �

� � ,2�3 � �

��������

8�2/�,0��� ����/�92����00��� �2���? 20�>��/,8A��� �2���8,�92���� � 2� 8:?82,2

��A�<

2�2

�?,8

��A�9<

2�2

�?,8

�&%&

* J�!��

NI����3����!��� J3��@

������ 9���!!�#� /���������

I����3����!��� A�$$

��������

���

(

���������

��A�<

2�2

�?,8

�99�98

2�2

�?,8�

8$

?��8

2�2

�?,8�

8$

Q8 Y�3

�&%&

& LJ3��@

$

J3��@

J3��@

J�!��

J�!��

J�!��

&

(

34��������/#�����(����56

Page 158: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ �.����2.������ �0�$��

������� �.����2.���������� �!"�����!���!�#��� $6%�$%$&&5�������$6�$(� �!"���������+�!�!�#��� �5%&�%$&&6�����&�$��$��

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�<& �. 8 8, �

� � 8��?, � �

�$%& 3�.��� �?, ���� �

� � ,2�3 � �

,��������.���������������

/�������������.�������

�99�8

2�2

�?,8�

8$

�&%&

�<$$

,����2.����

,����2.����

������ 9���!!�#� /���������

,����2.���� A<*&

,��������.���������������

/�������������.�������

Q8

��A�<

2�2

�?,8

������� �.�.

2

,����2.����

J�.

& ,����2.����

J3�.���

������ 9���!!�#� /���������

,����2.���� A<*&

34��������/#�����($���56

Page 159: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������,��,� �� �0�$$�

������� ,��,� ������ �!"�����!���!�#��� $6%�$%$&&5�������$6�$(� �!"���������+�!�!�#��� &$%&�%$&&6�����6�$$�7$�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�&%& �!��-� 8 ���� �

�9� �. 8 98, �

�(%& ,��� 8 ���� �

�95 /������� 8��?, 98, �

��&%& >� �?, ���� �

�9�� �@�98� �<$$ ,2�3 98, �

��������

8�98

2�2

�?,8

�&%&

�<$$ J�@�98� �<$$

,����������

� �

��A�9<

2�2

�?,8

J,��� J�!��-�

& J/�������

,�����������

� � P9

�99�98

2�2

�?,8�

8$

J,��� J�!��-� J/�������

J�.

J�@�98� �<$$

J/�������

J/�������

,�� ���������

� �

��A�9<

2�2

�?,8

J,��� J�!��-�

J�. J/�������

,�� ��������

� � Q9

?��98

2�2

�?,8�

8$

J,��� J�!��-� J/�������

&

J/�������

J�@�98� �<$$

J/�������

����!�!���������.��������������

� QS9 �

� Q9

J,��� J/�������

J�.

J>�

J,��� J/�������

&

34��������/#�����(*���56

Page 160: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � �������������.!���/������� �0�$*�

������� �.!���/����������� �!"�����!���!�#��� &�%��%$&&(�����)�&��((� �!"���������+�!�!�#��� *&%�&%$&&'�����*�7'�&&�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& /����� 8 ,08: �

� � 8��?, � �

�7%& 3�.��� �?, ���� �

��( 3�.�,M, ,2�3 �>,2 �

�5%& /���2�!������� ,2�3 ���� �

��������

� 0

02,

/&(������F��0/A J3�.���

������ 9���!!�#� /���������

/&(������F��0/A A�)%( ,��.���!�������.��.��C���������������C�.���������������F����

��������

�? /�����/�92��U?2�2 ,��� �2 320�9��3�0��2 ,��2,�3�

,0�/3>

2�2

�?,8

��A��

2�2

�?,8

,0� 89

2�2

�?,8�

8$

�&%&

LJ/����� /����@�����

� J3�.�,M,

�++���/��

/����@�����

J3�.�,M,

������ 9���!!�#� /���������

�++���/�� A�(&)

/����@����� A��)5

���������

8�2/�,0��� ����/�92����00��� �2���? 20�>��/,8A��� �2���8,�92���� � 2� 8:?82,2

PQ� �

J3�.�,M,

&

J/���2�!�������

���������

8�2/�,0��� ����/�92����00��� �2���? 20�>��/,8A��� �2���8,�92���� � 2� 8:?82,2

� �

������� �.�.

2

0

0

J/���2�!������� 2&7�����72����

J3�.���

/&(������F��0/A

/&&�/��

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

/&(������F��0/A A�)%( ,��.���!�������.��.��C���������������C�.���������������F����

2&7�����72���� A�'%*

34��������/#�����(7���56

Page 161: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������2�-����/������� �0�$7�

������� 2�-����/����������� �!"�����!���!�#��� �(%&�%$&&6�����6�**�$)� �!"���������+�!�!�#��� �)%&�%$&&)�������(��7$�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�9& /������ 8 ,08: �

�7%& 3�������� 8 ���� �

�7%� /������. 8 ���� �

�<( �F��0/A 8 8, �

� � 8��?, � �

� � �?, � �

� � ,2�3 � �

9�!�.���������-������!�������������

� 02,

/&&�/��

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

��������

,0�/3>

2�2

�?,8

,0�/�,

2�2

�?,8

,0�/�,

2�2

�?,8

,0�/�,

2�2

�?,8

,0�/�,

2�2

�?,8

,0�/�,

2�2 0

�?,8

�&%&

LJ/������ �++���/��

J/������.

/���!������. �++���/��

J3��������

/���3�������� �++���/��

J/������.

/���!������. �++���/��

&*�/����I

/�������� �++���/��

&*�/����I &*�/����I

/���!������I �++���/��

������ 9���!!�#� /���������

�++���/�� A�(&)

/���!������. A�7$

/���!������I A�7&

/�������� A�*)

/���3�������� A�*76

&*�/����I A�6%*

34��������/#�����((���56

Page 162: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������2�-����/������� �0�$7�

0��!��-�������.���������.!!"��������������������

��A�<

2�2

�?,8

Q8

��A�<

2�2

�?,8

�&%&

(&& �<'$

J �F��0/A

(&&

J �F��0/A �<'$

2�-���������/�������������������&���������

� 0

0/A

2�2

,��

3�0,

M�,

2�2

,��

3�0,

�&%& �)6%6

�++���/��

&

�++���/��

&

/&&�/��

/&��M�,

������ 9���!!�#� /���������

�++���/�� A�(&)

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

/&��M�, A�)%�

34��������/#�����(5���56

Page 163: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3��������8�28�� �0�$(�

������� 3��������8�28������ �!"�����!���!�#��� $�%�$%$&&5����$��()�&�� �!"���������+�!�!�#��� &�%�&%$&&6�����$��*�*5�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

�<& /��-��3���!�� 8 8, �

� � 8��?, � �

�$%& ������� �?, ���� �

� � �?, � �

�9* 8�28 ,2�3 9<�09 �

�<6 /�����3?= ,2�3 8, �

�9' 3�������@ ,2�3 9<�09 �

���* /���!���� �8, ,2�3 �>,2 �

���7 �8,�� ,2�3 �>,2 �

���( �8,�� ,2�3 �>,2 �

���5 �8,�/ ,2�3 �>,2 �

���6 �8,�9 ,2�3 �>,2 �

�<�) 8,�9�-������ ,2�3 8, �

�<$& 8,�9�-�.�� ,2�3 8, �

�9$$ 98,�/�!�����0�.�� ,2�3 98, �

�<$5 0�.�� ,2�3 8, �

�<$) 8,��@�� ,2�3 8, �

�<*& 0�?������. ,2�3 8, �

�<*$ 0�9�!���. ,2�3 8, �

�<*7 0�/������. ,2�3 8, �

�<*5 0��������. ,2�3 8, �

�<*) 0�.����� ,2�3 8, �

�7&%& ���� ,2�3 ���� �

� � ,2�3 � �

��������

QS8 �

PS8 Y�3

������=�1

*&&&&

J ����

������=�1

''''

������ 9���!!�#� /���������

������=�1 A<*$

��,2/8��92��/�,0�3?=��������

� QS8

?��8

2�2

�?,8�

8$

P8

?��8

2�2

�?,8�

8$

�&%& ������=�1

$&&&&

������=�1

O$&&&&

J/�����3?=

������=�1

$&&&&

������=�1

O�&&&&

J/�����3?=

������ 9���!!�#� /���������

������=�1 A<*$

/��/?�� �3�0������8/2/8��320��2,2���������

��A�9<

2�2

�99�98

2�2

�?,8 �?,8�

8$

��A��

2�2

�?,8

�&%&

N�++���/�� J8�28 $

J8�28

J8�28

7 J/���!���� �8,

������ 9���!!�#� /���������

�++���/�� A�(&)

34��������/#�����(6���56

Page 164: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3��������8�28�� �0�$(�

��,2/8��92��� �/8 0� �/�1���U?2� �0���2��02 ?�,�9��3�0��320��2,2���������

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�&%&

J8�28

O�(

J3�������@ LJ3�������@ J �8,��

J8�28

O�7

J3�������@ LJ3�������@ J �8,��

J8�28

O��

J3�������@ LJ3�������@ J �8,�/

J8�28

O�$

J3�������@ LJ3�������@ J �8,�9

��������

�8

2�2

�?,8

89M

�99�8

2�2

�?,8�

8$

98A

2�2

�?,8�

8$

R0�9<

2�2

�?,8

98�8

2�2

�?,8

98A�8

2�2

�?,8�

8$

�?��8

2�2

?��8

2�2

�?,8�

8$

�?,8�

8$

�&%&

J/���!���� �8,

J8,�9�-������

O6�

J/��-��3���!��

J8,�9�-�.��

J8,�9�-������

J8,�9�-�.��

J98,�/�!�����0�.��

J98,�/�!�����0�.��

�5

J98,�/�!�����0�.��

J98,�/�!�����0�.�� J0�.��

J0�.��

O�&

J0�9�!���.

J0�9�!���.

O�&

J8,��@�� J0�.��

J8,��@��

J0��������.

34��������/#�����()���56

Page 165: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3��������8�28�� �0�$(�

��,2/8��92��� �/8 0� ���1�9�U?2� �0���2��02 ?�,�9��3�0��320��2,2���������

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�99�98

2�2

��A��

2�2

�?,8�

8$

�?,8

�&%&

J8�28

O�(

J3�������@ LJ3�������@ J �8,��

J8�28

O�*

J3�������@ LJ3�������@ J �8,��

J8�28

O5

J3�������@ LJ3�������@ J �8,�/

J8�28

O)

J3�������@ LJ3�������@ J �8,�9

���������

�8

2�2

�?,8

89M

�?��8

2�2

?��8

2�2

�?,8�

8$

�?,8�

8$

98A

2�2

�?,8�

8$

R0�9<

2�2

�?,8

98�8

2�2

�?,8

98A�8

2�2

�?,8�

8$

�?��8

2�2

?��8

2�2

�?,8�

8$

�?,8�

8$

�&%&

J/���!���� �8,

J8,�9�-������

J/��-��3���!��

O*

J8,��@�� O')

J8,��@��

J8,�9�-�.��

J8,�9�-������

J8,�9�-�.��

J98,�/�!�����0�.��

J98,�/�!�����0�.��

�5

J98,�/�!�����0�.��

J98,�/�!�����0�.�� J0�.��

J0�.��

O�&

J0�/������.

J0�/������.

O�&

J8,��@�� J0�.��

J8,��@��

J0�?������.

34��������/#�����('���56

Page 166: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������3��������8�28�� �0�$(�

:220�/8��92��02 ?�,�9��3�0��320��2,2���������

��A�<

2�2

�?��8

2�2

�?,8 �?,8�

8$

�99�8

2�2

�?��8

2�2

�?,8�

8$

�?,8�

8$

�99�8

2�2

�?��8

2�2

�?,8�

8$

�?,8�

8$

�99�8

2�2

�?,8�

8$

PQ8 �

�&%&

J0��������. J0�.����� O�&

J0�.�����

J0�.�����

J0�/������.

J0�.�����

J0�.����� �&

J0�.�����

J0�.�����

J0�9�!���.

J0�.�����

J0�.����� �&

J0�.�����

J0�.�����

J0�?������.

J0�.�����

J0�.�����

J0�.�����

J/�����3?=

J ����

���������

���

:�.��#�����!��-����+�����-����!����!�����������

� �

J ���� J�������

=&$�9�+����

=&(���������

������ 9���!!�#� /���������

=&$�9�+���� A$&%$

=&(��������� A$&%(

34��������/#�����5&���56

Page 167: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ����������������..��� �0�$5�

������� ����..������� �!"�����!���!�#��� &*%&$%$&&6�����6�*��(6� �!"���������+�!�!�#��� �)%&�%$&&)�������*5�&5�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

� � 8 � �

� � 8��?, � �

� � �?, � �

� � ,2�3 � �

��������

,0�/3>

2�2

�?,8

,0�/�,

2�2

�?,8

�&%&

;��W.�.�; �++���/��

/�������� �++���/��

������ 9���!!�#� /���������

�++���/�� A�(&)

/�������� A�*)

2�-���������/�������������������&��������

� 0

0/A

2�2

,��

3�0,

M�,

2�2

,��

3�0,

�&%& �)6%6

�++���/��

&

�++���/��

&

������ 9���!!�#� /���������

�++���/�� A�(&)

2.���������������������.��������������

������� �.�.

2

0

0

0

�&%&

3&&�3�I

/&&�/��

/&7� ���0/A

=&&��������

=&(���������

������ 9���!!�#� /���������

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

/&7� ���0/A A�)%7 �!��-����.������ ��M�,�"�.��� ��0/A

=&&�������� A$&%&

=&(��������� A$&%(

3&&�3�I A$$%&

34��������/#�����5����56

Page 168: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ����������������1���� �0�$6�

������� ����1�������� �!"�����!���!�#��� &5%&�%$&&6�����*�7&�*$� �!"���������+�!�!�#��� &5%&�%$&&6�����'��6�77�

� ������ ,����-��% ,�����������. /���������

� 2 8 ���� �

��& A�� 8 �>,2 �

��� A�$ 8 �>,2 �

�$%& ?��0 8 ���� �

�$%� 02 ,�0 8 ���� �

�$%$ /�92� 8 ���� �

� � 8��?, � �

��* A���� �?, �>,2 �

� � �?, � �

�<7 8���A� ,2�3 8, �

�<5 8���A$ ,2�3 8, �

�<) 8���A���� ,2�3 8, �

� � ,2�3 � �

,��������.���������������

/�������������.�������

��8

2�2

��8

2�2

�?,8 �?,8

�&%&

JA�� J8���A� JA�$ J8���A$

��������

�99�8

2�2

�?,8�

8$

J ?��0

J8���A�

J8���A$

J8���A����

���������

?��8

2�2

�?,8�

8$

J02 ,�0

J8���A�

J8���A$

J8���A����

���������

?��8

2�2

�99�8

2�2

�?,8�

8$

�?,8�

8$

J/�92�

J8���A�

J8���A$

J8���A���� �

J8���A����

J8���A����

��������

8��

2�2

�?,8

�&%&

J8���A���� JA����

34��������/#�����5$���56

Page 169: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ��M�,��8,����

������� ��M�,������ �!"�����!���!�#��� &)%&6%$&&7�����&�7*�*'� �!"���������+�!�!�#��� �)%&�%$&&)�������*(�((�

� ������ ,����-��% ,�����������. /���������

� � ,2�3 � �

� � ,2�3 � �

� � ,2�3 � �

��������

� 02,8

=&&��������

������ 9���!!�#� /���������

=&&�������� A$&%&

��������

� 0

0

02,8

3&$��830'5&& 3&$��830'5&&

&$�830'5&&

&&�8��!����F��

������ 9���!!�#� /���������

3&$��830'5&& A$$%$

&&�8��!����F�� A�6%&

&$�830'5&& A�6%$

���������

� 0

�&%& /&��M�,

������ 9���!!�#� /���������

/&��M�, A�)%�

0��!��-�������.���������.!!"��������������������

0/A

2�2

,��

3�0,

�&%& �)6%6

�++���/��

&

������ 9���!!�#� /���������

�++���/�� A�(&)

��������

�&%& /&$� ���M�,

/&*�0/A

������ 9���!!�#� /���������

/&$� ���M�, A�)%$

/&*�0/A A�)%* ��"����!��������.��.��

34��������/#�����5*���56

Page 170: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ��0/A��8,��$�

������� ��0/A������ �!"�����!���!�#��� &6%&6%$&&7�������7��$)� �!"���������+�!�!�#��� $$%&(%$&&6����$&�7$��6�

� ������ ,����-��% ,�����������. /���������

�&%& A���+�!���8�28 ,2�3 ���� �

�&%� �� ,2�3 ���� �

� � ,2�3 � �

��������

0

�&%& /&7� ���0/A

/&$� ���M�,

������ 9���!!�#� /���������

/&$� ���M�, A�)%$

/&7� ���0/A A�)%7 �!��-����.������ ��M�,�"�.��� ��0/A

��������

� � �

?�����!��!� 3&)�8�28 JA���+�!���8�28

3 &&�8�28

������ 9���!!�#� /���������

3&)�8�28 A$*%(

3 &&�8�28 A$(%&

?�����!��!� A&%( ?���������=�1�.��

���������

� 02,8

JA���+�!���8�28

���������

3��������8�28

2

�������K/��-��3��K

�&%&

� J ��

��������

����..�

2

J ��

34��������/#�����57���56

Page 171: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ��: �!������

������ 9���!!�#� /���������

� ���� A��$&&

0���1 A&%& 1.����0���1����.����������!��-�� � .

338����� A&%� 3����&��+��"��/3?����338�����

338�0���.� A&%$ 0���.�����.����"�������&����338�����

29�,���.��-�!� A&%* 0���.�����.����"�������&���!����������������

��D� ��������-�� A&%7 : �� ������������D������.����"��!�����!�����

?�����!��!� A&%( ?���������=�1�.��

,2 ,����� A&%5 ,2 ,�����

200�0 A&%6 2���������-�����!����C�.�����.��200�0�+����

>2 A�5%&

� A�5%�

,�� A�5%$

,�� A�5%*

&&�8��!����F�� A�6%&

&���!��-� A�6%�

&$�830'5&& A�6%$

&*�/����I A�6%*

/&&�/�� A�)%& �!��-����.�����.����-��������"�.������.����!������.��.��

/&��M�, A�)%�

/&$� ���M�, A�)%$

/&*�0/A A�)%* ��"����!��������.��.��

/&7� ���0/A A�)%7 �!��-����.������ ��M�,�"�.��� ��0/A

/&(������F��0/A A�)%( ,��.���!�������.��.��C���������������C�.���������������F����

2&��0/A������ A�'%&

2&$�0/A����� A�'%� �����.��.�����!���������!���!����!�����������������.������

2&7�����72���� A�'%*

2&(� � �8��2���� A�'%(

=&&�������� A$&%&

=&���@/��-�. A$&%�

=&$�9�+���� A$&%$

=&7�2��3��- A$&%7

=&(��������� A$&%(

:3&&� ������� A$�%& 3������������� �������

:3&��,���.��-�!�� A$�%� 3�������������338C������,���.��-�!��

:3&$�29�,���.��- A$�%$ 2�����!"�����!���������.��������-��-������.�.������������ �������

:3&*��!����3���� A$�%* ��������!�!���������G�!������.�!�����.����!��+����!�������������

:3&7� ���!�,���.��- A$�%7

:3&(�/������3�.���� A$�%(

3&&�3�I A$$%&

3&��8��*. A$$%� �.������.��������*�.�����.�������������������������

3&$��830'5&& A$$%$

3&*�0�.��,/ A$*%&

3&7��2/� A$*%�

3&(�/��.�����38 A$*%$

3&5�38 A$*%*

3&6�3�.�38 A$*%7

3&)�8�28 A$*%(

3&'�/�8 A$*%5

3�&�/:� A$*%6

3��� � A$7%&

3�$�/3� A$7%�

3�*��9,0 A$7%$

3�7�� �G� A$7%*

3�(�0�.���� A$7%7

3�5�:����� A$7%(

3�6�/������� A$7%5

3�)������F������ A$7%6

3 &&�8�28 A$(%&

3��&&�,��� � A$5%&

3��&��/��.����� � A$5%�

3��&$�,�@��� � A$5%$

3��&*� ���= A$5%*

38�&&�/��.����� � A$6%&

38�&�������F��� � A$6%�

38�&$�������� � A$6%$

3�� � ��!��-� A$)%&

3�� � � A$)%�

3�� � $ A$)%$

2&�� ����@ �� A$'%�

2&$� � �����+��� A$'%$

I����3����!��� A�$$

/�������� A�*)

/���!������I A�7&

/���!������. A�7$

/����@����� A��)5

�++��� � ��?, A�5&

/���3�������� A�*76

�++���/�� A�(&)

�1��� ���������� A�66&

��.��A����0/A A9�& ��.��A����!�������+���������!������ �

,� �����/�� A977

,�3����!�,���.��- A97)

,�9�.!���!��,�� A9($

3� � ��?,��!��-� A9(5

��.��200�0 A<$ /�����+��"����.������������-��������!���

� �/����� A<7 /�������+� � �.����.��!����.�����.����.�����

34��������/#�����5(���56

Page 172: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ��: �!������

������ 9���!!�#� /���������

��������-�� A<5 �����+��"��: �� ��������Q�B'������.��=�

�����.��2 , A<) ?.����,2 ,�����C����������������.����������

,����2.���� A<*&

������=�1 A<*$

,�/��.���� � �8 A<*5

34��������/#�����55���56

Page 173: PROYECTO FIN DE CARRERA INGENIERÍA DE …bibing.us.es/proyectos/abreproy/12080/fichero/Volumen+I%2FProyecto... · En el caso concreto del PLC S7-200 de Siemens, la solución aportada

��������������� � ������������ ������.�?�3

������ 9���!!�#� /���������

� �������� �0�&& �8�0�0>������������ � ��������

���� � �0�&� �8�0�0>������������ � ��������

:�.����� � ��?, �0�&$

0�!��-�� � �0�&* �8�0�0>������������ � ��������

:�.�����8 �0�&7

8��!����F�!��� �0��&

3�����& �0���

:�.�����/��-� �0��$

�����F���0/A �0��*

:�.�����2�����. �0��7

:�������M�, �0��(

8�.������A���� �0��5

���.!��. �0��'

������� �.�. �0�$&

�.����2.���� �0�$�

,��,� �0�$$

�.!���/����� �0�$*

2�-����/����� �0�$7

3��������8�28 �0�$(

����..� �0�$5

����1�� �0�$6

��M�, 8,���

��0/A 8,��$

����������������� ���

34��������/#�����56���56