Curso de Robótica utilizando una Computadora Personal y el programa PC - PLC DIVISION CONTROL AUTOMATICO Tel./FAX del exterior 54-2284-429410 Tel/FAX 02284-429410 E-mail : [email protected][email protected]www.vaf.com.ar/ControlesElectronicos Chacabuco 2043 . (B7400BVI) - Olavarría - Pcia. de Buenos Aires μICRO
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Curso de Robóticautilizando una
Computadora Personaly el programa
PC - PLC
DIVISION
CONTROL AUTOMATICOTel./FAX del exterior 54-2284-429410
Chacabuco 2043 . (B7400BVI) - Olavarría- Pcia. de Buenos Aires
µICRO
Curso de Robótica
Fundamentación
Si partimos definiendo a la ROBOTICA como una disciplina decaracter práctico con orientación tecnológica, cuyo objetivo funda-mental es reemplazar a operadores humanos en tareas demanipulación que, por su monotonicidad, riesgo o característicashostiles pueden ser ejecutadas de mejor manera por máquina,optimizando la calidad, cantidad y costo de producción y disminuyendolos riesgos, haciendo uso de ingenios eléctricos, mecánicos,electrónicos y computacionales polifuncionales sumamente versátilesy complejos, quienes nos dedicamos a la capacitación tenemos laobligación de preparar permanentemente a todos quienes seinteresen, a los efectos de poder ubicarse o reubicarse en unmercado laboral sumamente competitivo en este aspecto, donde lamáquina en cierto modo reemplaza personas, pero a su vez, necesitade quienes la operen con la debida preparación técnica.
En este marco es que desarrollamos el presente proyecto deestudio, donde el alumno tendrá la oportunidad de conocer losalcances del control automático, manipulando computadoras,programas especialmente diseñados, equipos adaptados para talefecto, y la posibilidad de desarrollar su creatividad para el logro delcontrol de los elementos o procesos que cada participante deseeexperimentar.
Este curso prepara al alumno, como estudiante , a los efectosde posicionarse en el mercado laboral con un aprendizaje acorde aestos tiempos, al operario , para reubicarse en un ámbito de trabajototalmente cambiante y tecnificado, al docente para obtener losconocimientos necesarios que le permitiran enfrentar a sus cátedrascon una formación posteriormente requerida por sus propios alumnos,al profesor técnico con la adquisición de conocimientos inéditosen cuanto a programas, equipos y metodología se refiere, y a todosaquellos que por inquietud personal así lo deseen.
01
MetodologíaEl curso se dicta a un grupo no mayor de 10 alumnos. Las primeras clases sonintroductorias tipo seminario con participación del alumno. Luego comienzan las clasesteórico-prácticas con realización de ejercicios agrupados en trabajos prácticos. Porcada concepto teórico se realizan varios ejercicios que lo aclaran y afianzan. Todos losejercicios propuestos tienen aplicación directa en el mundo real, incluso los mássimples. Cada vez que se termina una unidad del programa se realizan ejercicios dondese utilizan los conceptos recien adquiridos y todos los anteriores.Durante el curso se les inculca a los alumnos la idea de trabajar en forma ordenada, dedocumentar en forma clara todos los algoritmos de control implementados sin economizaren cuanto a notas y diagramas aclaratorios se refiera. El objetivo es que un programahecho por una persona tiene que poder ser completamente entendido por otra sin quemedie para ello la primera.Una vez culminado el aprendizaje de conceptos de programación se forman grupos detrabajo y se realizan visitas a empresas con la propuesta de realizar proyectos deautomatización y, en los casos que fuera posible, la concreción de los mismos.
Equipamiento y material didácticoEl equipamiento necesario para el dictado del curso consta los siguientes elementospor cada alumno participante:- Una PC (mínimo 386, 40mhz, 4 Mb, VGA) con el programa PC - PLC- Un entrenador que consiste en un tablero con conexión al port serie de la PC conentradas y salidas discretas y analógicas, pusadores, llaves, sensores, actuadores, etc.Además a cada alumno se le entrega.- La carpeta con los conceptos teóricos dictados en el curso.- La carpeta de trabajos prácticos.- El Manual del Usuario del programa PC - PLC.- Una Licencia de Uso del Programa.
DuraciónEl curso dura ocho meses con una clase semanal de dos horas.
DictanteLa persona que dicta el curso debe tener título de Ingeniería y es aconsejable que poseaexperiencia en automatización de procesos.Además, personal técnico de µICRO se ocupa de prepararlo previamente y desupervisar las clases y las evaluaciones durante el curso.
02
Curso de Robótica
Programa
Unidad 1- Definición terminológica y conceptualización.- Tipos de Controladores.- Elementos necesarios para realizar una automatización.- Diagrama esquemático de un Sistema de Control Automático.
Unidad 2- Elementos que constituyen las Entradas y las Salidas- Reconocimiento de tipos de Entrada y Salida. Ejercicios.- Proposición de problemas de automatización e identificación de las Entradas y Salidas mínimas necesarias para cumplir el objetivo propuesto.
Unidad 3- Introducción al programa PC-PLC.- Visualización general del programa.- Modo Operador - Modo Programador.- Organización de la Entrada/Salida.- Configuracion.- Manejo de la Base de datos de Usuarios.- Identificación de las Entradas y Salidas discretas y analógicas.- Concepto de variables auxiliares discretas y analógicas.- Modos de programación: Programas de acción combinacional y secuencial.- Concepto de Análisis lógico. Diagramas lógicos.- Nodos Y, O, Negador discreto, Nodos de Comparación. Ejercicios.- Nodos operacionales:SUMA, RESTA, MULT., DIV. Ejercicios.- Contadores con Nodo SUMA. Flancos positivo y negativo. Ejercicios.- Nodo SRB (Set-Reset Bit). Ejercicios.- Nodos Temporizadores TMC, TMS. Ejercicios.- Configuración y utilización de las Variables de Tiempo. Ejercicios.- Configuración y programación de Eventos. Histórico de Eventos.
03
Unidad 1
Definición terminológica y conceptualización:
RobóticaUna de las areas de la informática que hoy en día se habla más a menudo es la robótica,
pero es importante definir a la misma como:MECANISMOS QUE SE UTILIZAN PARA SUSTITUIR A LOS HOMBRES EN TAREAS
PELIGROSAS, NOCIVAS, FATIGOSAS O REPETITIVAS.
Control AutomáticoEs el reemplazo del control manual o visual (hecho por humanos) por un equipo mecánico,
neumático, eléctrico o, de preferencia en la actualidad, electrónico. Si comparásemos un serhumano con un robot, el Control Automático sería la parte inteligente de éste último.
Control Numérico (CNC)Es la parte de la Robótica que se dedica al posicionamiento mecánico con precisión. Es
utilizado en máquinas herramientas (tornos, fresadoras, alesadoras, etc), en equipos parachequeo de piezas, en máquinas de colocación de piezas (pick and place machines), cortadoraspor Laser, oxicorte y por plasma, etc.
Controlador Lógico Programable (PLC)Es el autómata programable más utilizado en la industria. Su función consiste en realizar
la parte inteligente del control automático. En su concepción normal el PLC realiza el control delproceso pero no permite la visualización del mismo en pantallas ni la gestión de datoscorrespondiente. Para lograr estos objetivos el PLC se debe complementar con terminalesgráficas y comunicar con una computadora.
Entrada y Salida (E/S)Son los elementos que conectan al Procesador Central (CPU) con el mundo exterior. Las
Entradas llevan datos desde el mundo exterior hacia la CPU (una temperatura, el posicionamientode una llave selectora, etc). Las Salidas llevan órdenes desde la CPU hacia el mundo exterior(orden de encender una luz, orden de marchar un motor, etc).
Computadora Personal (PC)En su concepción original la Computadora Personal fue pensada para la realización de
tareas que caen dentro de las siguientes áreas:- Gestión administrativa.- Procesamiento y edición de textos.- Educación.- Cálculos de Ingeniería- Diseño asistido (gráfico, electrónico, civil, mecánico, etc)- Comunicaciones (conexión a la red telefónica por medio de modem).- Entretenimientos. (juegos interactivos, animación, etc).
04
Para todos estos trabajos la computadora necesita de una Unidad de Procesamiento deDatos (CPU), el Software (los programas) adecuado a cada necesidad y de Periféricos deEntrada y Salida.
La CPU consta de:. Procesador Central.. Memoria.. Circuitería de interconexión.
Los periféricos típicos de Entrada son:. Teclado. Mouse. Disketera. Disco de almacenamiento masivo. Joystick. Scanner. Tableta digitalizadora para CAD. Puertos de comunicaciones.
Los periféricos típicos de Salida son:. Pantalla. Impresora. Disketera. Disco de almacenamiento masivo. Plotter. Puertos de comunicaciones.
Si deseamos utilizar una Computadora Personal para realizar tareas de ControlAutomático debemos agregarle nuevos periféricos. Estos son:
De ENTRADA:. Sensores o detectores (de temperatura , de presión, de caudal, de color, de intensidad
de luz, de nivel, de distancia, de proximidad, de interrupción de haz infrarrojo, etc).De SALIDA:. Actuadores (encendido de luces, contactores o relés para marcha de motores, válvulas
a solenoide para control de paso de fluidos, relés de estado sólido, variadores de velocidad demotores, variadores de intensidad de iluminación, etc).
Además debemos proporcionar el software adecuado para realizar las tareas de:
- Control Automático del/los procesos.- Visualización del/los procesos controlados mediante mímicos en Pantalla.- Interface con el operador. Entrada de datos en tiempo de ejecución del control.- Gestión de datos generados por el/los procesos controlados.
05
Tipos de ControladoresPara realizar las tareas de control existen distintos tipos de Controladores :
Neumáticos:Se basan en la utilización de aire comprimido y son capaces de realizar análisis lógico y
temporizaciones. Se utiliza en aplicaciones donde es importante que no se produzcan chispasen las conmutaciones (fábricas de explosivos, destiladoras de derivados del petróleo, etc).
Mecánicos:Se utilizan en algunas máquinas herramienta para el torneado de roscas de paso variable,
roscas cónicas, copiadores de plantillas, etc. Se basan en la utilización de levas. Su utilizaciónha sido reemplazada por los equipos electrónicos de Control numérico (CNC).
Eléctromecánicos:Se utilizan para funciones simples como Secuenciadores, Contadores de piezas,
Temporizadores.
Eléctricos:Se basan en la utilización de relés y temporizadores eléctricos. Para un programa de
mediana complejidad se necesitan varios tableros con decenas de relés y una importante laborde cableado. Para realizar una modificación a la lógica del programa es necesario a vecescambiar cientos de cables o incluso realizar nuevamente tableros completos.
Su utilización está siendo reemplazada por el uso de Controladores Electrónicos.
Electrónicos:Son los controladores de la actualidad y se encuentran en constante evolución. Se basan
en la utilización de microprocesadores. Pueden ser fijos o programables.Fijos: Tienen una función preestablecida ya desde su proceso de fabricación y no se puede
modificar. Ejemplos: El controlador interno de un lavarropas automático, controladores detemperatura hogareños, controladores internos de algunas máquinas específicas comoempaquetadoras, etiquetadoras, etc.
Programables: No tienen una función especificada, la función la decide el usuario alprogramarlo. En su versión original los controladores electrónicos programables fueron diseñadospara emular tableros de relés. De ésta manera se lograban las mismas prestaciones que con lostableros sin el costo de armado de los mismos y con la ventaja adicional de que para realizarmodificaciones al programa no hacía falta reemplazar tableros enteros sino solo modificarpantallas de programación. El lenguaje de programación de éstos equipos se basaba en larepresentación gráfica de los mismos relés y temporizadores que estaba emulando, llamándosepor esto Lenguaje de Contactos . De esta manera los diseñadores de tableros de comandoeléctrico se convertían fácilmente en programadores de controladores electrónicos.
Con el tiempo, se fue aplicando el Control Automático a procesos cada vez más complejosy ya no era suficiente la emulación de tableros de relés. El lenguaje original tuvo que evolucionary se le fueron agregando nuevos bloques funcionales y mayores capacidades tales comorealización de operaciones matemáticas, comparación de magnitudes, etc.
06
Actualmente hay tantos lenguajes de programación como marcas de Controladores, cadauno con distintos bloques funcionales y características especiales. Aunque la mayoría de los PLCaún se programan en lenguaje de contactos, hoy existen otras opciones: hay algunos que seprograman definiendo modelos de control basados en reglas de tipo If ..then otros utilizan lo quese denomina Fuzzy Logic (lógica difusa) en los cuales el control no se basa en modelosmatemáticos ni en reglas fijas sino en modelos empíricos de actualización dinámica.
Los Organismos Internacionales de Normalización trabajan actualmente en el diseño de unlenguaje standard. Uno de los lenguajes que se postula como probable es el GRAFCET que fuediseñado en Francia en la década de los '80 y que utiliza la programación basada en diagramasde flujo.
En su concepción actual los Controladores Lógicos Programables (PLC) realizan lastareas de control pero no poseen los periféricos ni la capacidad de programación necesaria pararealizar los complementos que demanda un control automático completo, que son: Lavisualización del proceso controlado en forma de mímicos, la gestión de datos generadospor el mismo y la Interface con el operador para ingreso de datos en tiempo real. Para lograrestos objetivos es necesario comunicar al PLC con una computadora o una terminal especial.
Numerosos fabricantes de productos electrónicos y de software ofrecen actualmente laposibilidad de utilizar una Computadora Personal para realizar tareas de Control Automático,como SCADA (Supervisory Control And Data Acquisition, que consiste en usar una PC paratareas de supervisión) y procesos controlados completamente por PC. Entre las ventajas de éstaalternativa figuran: Lenguajes más modernos y flexibles, mayor potencia de cálculo, menor costo,disponibilidad de repuestos y mantenimiento de Computadoras Personales en cualquier partedel mundo.
07
Diagrama esquemático de un Sistema de Control Automático
ENTRADAS(SENSORES)
SALIDAS(ACTUADORES)
CONTROL(PROGRAMA)
INTERFACECON OPERADOR
(ENTRADA DE DATOS ENTIEMPO DE EJECUCION)
VISUALIZACION DELPROCESO
CONTROLADO(PANTALLAS, DISPLAYS)
CPU
PROCESO A CONTROLAR
GESTION DE DATOSGENERADOS POR EL
PROCESO(ARCHIVOS, BASE DE
DATOS)
CPUMódulo de
Entrada
Unidad 2
Elementos que constituyen las Entradas y las Salidas
Las Entradas y Salidas comunican a la CPU del controlador con el mundo exterior. Estosprocesos de comunicación constan de las siguientes etapas:
ENTRADASLa comunicación entre la CPU y las entradas se denomina Adquisición de Datos .Estos datos pueden ser de dos tipos:
. Discretos: Solo se discriminan dos casos posibles (ON, OFF). Por ejemplo si un botonestá pulsado o no, si el nivel de un tanque está por encima o por debajo del mínimo, etc. En talescasos se dice que es una ENTRADA DISCRETA.
. Analógicos: Se discrimina un rango de valores posibles, por ejemplo la temperatura deun ambiente, el nivel se cereal de un silo, el grado de acidez de un líquido, etc. En tales casos sedice que es una ENTRADA ANALOGICA.
Diagrama esquemático de una ENTRADA
COMUNICACIONDIGITAL (binaria)
SEÑALNORMALIZADA
SEÑAL SINNORMALIZAR
SensorTransductorde señal
El SENSOR: Capta la magnitud a medir (temperatura, peso, humedad, etc) yentrega una señal sin normalizar.
El Transductor de señal: Capta la señal sin normalizar y la traduce a unaseñal normalizada.
El Módulo de Entrada : Lee la señal normalizada y la traduce a sistema binario.La CPU recibe el dato binario y lo pone a disposición del programa del usuario.
Algunos sensores incluyen el elemento sensor y el transductor de señal en el mismo gabinete.El Transductor de señal permite que el usuario seleccione el rango de trabajo.Si la entrada es discreta suele tener un solo ajuste llamado ajuste de conmutación, el cualpermite al usuario ajustar el valor de señal que conmutará la entrada de OFF a ON.Si, en cambio, es analógica , cuenta con los ajustes CERO y SPAN, los cuales permiten alusuario determinar el rango de trabajo que va a utilizar.
Rango de TrabajoEs el rango de valores en el que va a trabajar el usuario en una aplicación específica. Por ejemplo,si va a leer una temperatura, sería entre qué valor mínimo y qué valor máximo detectará el sensor.El ajuste CERO le permite ajustar el valor mínimo, y el ajuste SPAN le permite ajustar el valormáximo.
08
Obtención del dato analógico en las unidades adecuadas
Para leer una entrada analógica el controlador necesita un Módulo de Entrada Analógica. Estemódulo tendrá una característica llamada Precisión , que es EN CUANTAS UNIDADESDIVIDE EL RANGO DE LA MAGNITUD A MEDIR. Los valores típicos de Precisión son: 255,2000, 4095. Veamos qué significan estos valores:
Por ejemplo si la Precisión del Módulo es de 4095 significa que la CPU recibirá un valornumérico comprendido entre 0 y 4095. Entonces si se ajusta el transductor para que lea unsensor de temperatura entre 500ºC y 1500ºC, cuando el sensor detecte temperaturas iguales omenores a 500ºC la CPU recibirá el valor numérico 0, y cuando el sensor detecte una temperaturade 1500ºC o más la CPU recibirá el valor numérico 4095.
Para calcular la temperatura medida en ºC se aplica la siguiente fórmula:
Temperatura en ºC = Temperatura Mínima + Valor Leído * Rango / Precisión del módulo
En nuestro caso:
Temperatura mínima = 500ºCRango = Temperatura máxima - Temperatura mínima = 1500 - 500 = 1000Precisión del módulo = 4095
Temperatura en ºC = 500ºC + Valor Leído * 1000 / 4095
El caso general, para cualquier magnitud (peso, humedad, etc) sería:
Valor Real = Valor Mín + Valor Leído * (Valor Máx - Valor Mín) / Precisión
Donde Valor Mín y Valor Máx son los ajustes Cero y Span del transductor.Precisión es la precisión del módulo de entrada analógico utilizado.
09
Esta fórmula asume que la señal leída tiene una relación LINEAL con lamagnitud a medir. Cuando esto no se cumple, o sea cuando el sensor esde respuesta NO LINEAL se recurre al uso de Búsqueda en tablas .Veremos ejemplos de este último caso en ejercicios posteriores.
En la mayoría de los casos el transductor y el actuador estan juntos en el mismo gabinete.El Transductor de Potencia permite que el usuario seleccione el rango de trabajo.Si la salida es discreta el transductor no suele tener ajustes.Si, en cambio, es analógica , cuenta con los ajustes CERO y SPAN, los cuales permiten alusuario determinar el rango de trabajo que va a utilizar.
Rango de TrabajoEs el rango de valores en el que va a trabajar el usuario en una aplicación específica. Por ejemplo,si va a comandar un motor a distintas velocidades, sería entre qué valor de velocidad mínima yqué valor de velocidad máxima girará el motor. El ajuste CERO le permite ajustar el valor mínimo,y el ajuste SPAN le permite ajustar el valor máximo.
La manera de realizar los cálculos para los actuadores es análoga al caso ya explicado de lasentradas analógicas.
Valor a enviar = (Valor Deseado - Valor Mín) * Precisión / (Valor Máx - Valor Mín)
Donde Valor Mín y Valor Máx son los ajustes Cero y Span del transductor.Precisión es la precisión del módulo de salida analógico utilizado.
SALIDASLa comunicación entre la CPU y las salidas se denomina Comando de Actuadores .Estos comandos pueden ser de dos tipos:
. Discretos: Solo se discriminan dos casos posibles (ON, OFF). Por ejemplo encendidoy apagado de luces, marcha y parada de motores, etc. En tales casos se dice que es unaSALIDA DISCRETA.
. Analógicos: Se discrimina un rango de valores posibles, por ejemplo variación de laintensidad de luz que emite una lámpara, marcha de un motor a distintas velocidades, etc. Entales casos se dice que es una SALIDA ANALOGICA.
CPU
COMUNICACIONDIGITAL (binaria)
SEÑALNORMALIZADAMódulo de
Salida
SEÑAL ALACTUADOR
Actuador
Diagrama esquemático de una SALIDA
TransductordePotencia
La CPU: Obtiene el valor a comandar del programa del usuario y lo envía haciael módulo de salida en sistema binario.El Módulo de Salida : Lee el dato binario y lo convierte en una señalnormalizada.El Transductor de Potencia: Capta la señal normalizada y la traduce a laseñal que necesita el actuador.El ACTUADOR : Recibe la señal del transductor y la convierte en un hechopalpable.
10
Unidad 3
Introducción al programa PC-PLC
El programa PC-PLC permite utilizar una PC como controlador para realizar las siguientestareas:
- Adquisición local y remota de datos discretos y analógicos. (Entradas).- Comando local y remoto de actuadores discretos y analógicos. (Salidas).- Realización de diagramas lógicos para comando directo. (programas combinacionales )- Programación de algoritmos de control mediante diagramas de flujo. (programas secuenciales )- Temporizaciones, operaciones matemáticas, comparación de magnitudes, búsqueda entablas.- Realización de pantallas gráficas interactivas para monitoreo de los procesos controlados:simulación de pupitres, pulsadores, luces, mensajes, animación de procesos, entrada de datos.- Gestión de los datos generados por el/los procesos controlados.- Registro de eventos en Base de Datos con Fecha y Hora.- Claves de acceso. Base de datos de usuarios. Adjudicación de derechos de acceso.- Registro de Auditoría.
Operación del programa
El PC-PLC tiene dos modos de trabajo: modo Operador y modo Programador . El programadores la persona que realiza el programa para automatizar un proceso, y el operador será la personaque lo utilice posteriormente.Al arrancar el PC-PLC se pone automáticamente en modo Operador . Para pasar a modoProgramador debe dentificarse como usuario. Para esto se debe pulsar Alt-K. Aparecerá unaventana que nos pide número de usuario y clave de acceso. Si no han sido creados usuariosdebemos teclear 1 <ENTER> <ENTER>. (Esto es debido a que el PC-PLC cuando es instaladocrea automáticamente el usuario nro 1 sin clave de acceso. Para crear nuevos usuarios ymodificar la tabla de derechos de acceso debemos remitirnos al Manual del Usuario de PC-PLC).Una vez identificado como usuario aparecerá en la parte superior izquierda de la pantalla elmensaje USR:01, indicando que el usuario 01 es el responsable de todas las modificacionesque se hagan en de allí en adelante hasta que se retire tecleando Alt-K <ESC>.La pantalla principal del modo Programador esta basada en menúes del tipo drop down, comola mayoría de los programas para PC. Se utilizan las flechas para seleccionar una opción demenú y las teclas ENTER y ESC para entrar y salir de una opción de menú respectivamente.Además se cuenta con teclas rápidas para acceder a las distinats ventanas del programa. Hayuna tecla rápida particular, Alt-B , que nos muestra un menú de todas las otras teclas rápidas.
11
Organización del programa PC-PLC
El PC-PLC utiliza variables de tipo discreto y variables de tipo analógico.
Las variables discretas pueden tomar solo dos valores:ON y OFF. Se organizan en tresbloques:1 - Entradas discretasSon variables de solo lectura, el programa no puede modificar su valor, solo puede consultarlo.Estas variables representan en el PC-PLC los datos discretos que vienen de los sensoresconectados en el exterior del controlador. Por ejemplo si una entrada discreta está conectada aun pulsador de tipo normal abierto en un proceso dado, cada vez que alguien presione el pulsadorla variable pasará al estado ON, y mientras nadie presione el pulsador la variable se mantendráen estado OFF. En realidad hay una posibilidad de cambiar el valor de la variable desde elprograma, que es forzándola ON o forzándola OFF. En estos dos casos el programa deja de verlo que sucede en el exterior a esa variable en particular hasta que se deja de forzar.2 - Salidas discretasSon variables de lectura y escritura. El estado de la variable (ON u OFF) lo determina el PC-PLC.Para lograr esto se utilizan los análisis de las salidas discretas.Cada salida discreta tiene su análisis propio, el cual consiste en una pregunta de tipo lógico. Laforma de realizar esa pregunta la explicaremos mas adelante en Diagramas Lógicos. Lassalidas discretas están conectadas directamente a actuadores en el exterior del controlador. Porejemplo si una salida discreta está conectada a un motor, cada vez que la variable pase a valerON el motor marchará, y mientras la variable esté en OFF el motor estará detenido. Ademásestas variables tambien se pueden forzar ON u OFF. Mientras una salida discreta esté forzadaOFF u ON, el actuador conectado a esta salida se mantendrá en ese estado ignorando elresultado del análisis de esa salida.3 - Auxiliares discretasSon similares a las salidas discretas. Las diferencias son las siguentes:- No se pueden forzar.- No se pueden conectar a actuadores en el exterior del controlador.
Las variables analógicas pueden tomar un rango de valores posibles. Se organizan en tresbloques:1 - Entradas analógicasSon variables de solo lectura, el programa no puede modificar su valor, solo puede consultarlo.Estas variables representan en el PC-PLC los datos analógicos que vienen de los sensoresconectados en el exterior del controlador. Por ejemplo si una entrada analógica está conectadaa un sensor que detecta el nivel de líquido de un tanque, esta contendrá un número que representaa dicho nivel, y cada vez éste se modifique, se modificará -consecuentemente el valor quecontiene la entrada analógica.2 - Salidas analógicasSon variables de lectura y escritura. El contenido de la variable lo determina el PC-PLC. Paralograr esto se utilizan los análisis de las auxiliares discretas y los pasos de las secuencias debidoa que las salidas analógicas no tienen su análisis propio. Las salidas analógicas estánconectadas directamente a actuadores en el exterior del controlador. Por ejemplo si una salidaanalógica está conectada a un actuador para variar la velocidad de un motor,
12
cada vez que se modifique el valor que contiene la salida analógica, variará en consecuencia lavelocidad de dicho motor.
3 - RegistrosCumplen el rol de auxiliares analógicos. Son variables de lectura y escritura que no se puedenconectar directamente a actuadores en el exterior del controlador. Los registros se utilizan: - En temporizadores. - En Contadores. - En la realización de cálculos y aplicación de fórmulas. - En la comparación de magnitudes.. - En la confección de tablas y la búsqueda de datos dentro de las mismas. - En las operaciones de lectura y escritura en archivos. - En la obtención de las variables de tiempo real. (Año, mes, día, hora, min, seg.). - En la comunicación con las Pantallas de Operador.Debido a esto es que hay muchos más registros que ninguna otra variable.Los registros no tienen asociada una ventana de análisis, por lo que para realizar las operacionesantes citadas se deben utilizar los análisis de las auxiliares discretas y los pasos de lassecuencias.
Programación
En el PC-PLC hay dos tipos de programa:Los de acción combinacional , donde el estado de una salida es determinado por unacombinación instantánea de variables de entrada. En ese caso el programa consiste en una solapantalla de análisis por cada salida involucrada.Los de acción secuencial , donde el estado de una o más salidas es determinado por uno o masdiagramas de flujo llamados secuencias. En este caso tambien se utilizan pantallas de análisispara determinar:
- en las secuencias : las condiciones para pasar de un paso a otro.- en las salidas : en qué pasos se encienden y en qué pasos se apagan éstas.
Diagramas lógicos
Los mencionados Análisis consisten en una pregunta de tipo lógico representada en formagráfica y que cabe en una pantalla. A este gráfico se lo denomina Diagrama Lógico .Los Diagramas Lógicos constan de unos elementos llamados Nodos , los que se agrupanformando un árbol cuya raíz es el nodo que se encuentra más a la derecha. El resultado del Nodoraíz es el resultado del Análisis , el cual siempre es de tipo DISCRETO.Existen distintos tipos de nodos. Consisten en un rectángulo con varios elementos de entrada ala izquierda y el resultado discreto abajo a la derecha.
xxxXXXXXXXXXXXXXXXXXXXXXXXXX
RESULTADO DISCRETODEL NODO
NOMBRE DEL NODO
ELEMENTOS DEENTRADA DEL NODO
13
ED001 ED004 AU007 RESULTADO DEL NODO ON ON ON ON ON ON OFF OFF ON OFF ON OFF OFF ON ON OFF
Los Nodos más sencillos y más utilizados son el Y y el O.
Nodo YTodos sus elementos de entrada son de tipo discreto. La cantidad de éstos es variable de 1 a16. El resultado del nodo es ON solamente si todos sus elementos de entrada valen ON. Encualquier otro caso el resultado será OFF.Ejemplo:
el nodo Y es el equivalente de conectar llaves en serie. Veamos el mismo ejemplo en forma decontactos eléctricos:
En éste ejemplo, la lámpara representa al resultado del nodo. Como se puede apreciar, ésta soloencenderá si estan cerradas (ON) las tres llaves.
Nodo OTodos sus elementos de entrada son de tipo discreto. La cantidad de éstos es variable de 1 a16. El resultado del nodo es OFF solamente si todos sus elementos de entrada valen OFF. Encualquier otro caso el resultado será ON.Ejemplo:
El nodo O es el equivalente de agrupar llaves en paralelo. Veamos el mismo ejemplo en formade contactos eléctricos:
En éste ejemplo, la lámpara representa al resultado del nodo. Como se puede apreciar, éstaencenderá si se cierra (ON) cualquiera de las tres llaves.
YED001ED004AU007
ED001 ED004 AU007
OED001ED004AU007
ED001 ED004 AU007 RESULTADO DEL NODO OFF OFF OFF OFF ON OFF OFF ON OFF ON OFF ON OFF OFF ON ON
+
-
+
-
ED001
ED004
AU007
14
Habiendo ya adquirido el concepto de Análisis y conociendo el comportamiento de los nodosO e Y podemos realizar nuestro primer Programa de acción combinacional .
ProblemaSupongamos que hay una lámpara conectada a la salida discreta nro uno (SD001) y dospulsadores conectados a las entradas discretas ED001 y ED002 respectivamente.Se debe realizar un programa que encienda dicha lámpara cuando estan pulsadossimultáneamente ambos pulsadores (ED001 y ED0020).
Resolución Como el programa trabajará sobre la salida discreta nro uno (SD001) debemos ubicarnos enla pantalla de análisis de la misma. Para lograr esto primero nos ubicamos en la ventana desalidas discretas ya sea seleccionando la opción Salidas del menú Discretas o directamentetecleando la combinación de teclas Alt-S desde cualquier parte del PC-PLC. Luego utilizandolas flechas nos posicionamos en el renglón correspondiente a la SD001.Si observamos el menú de la parte inferior de la ventana veremos que una de las opciones esDescripción. Pulsamos las tecla D y tecleamos: LUZ <ENTER>.Otra de las opciones del mencionado menú es Análisis. Pulsando la tecla A aparece una ventanaen blanco cuyo título es SD001: LUZ. En la parte superior izquierda se ve un rectángulo sindenominación, que es el primer nodo del análisis, y en la parte inferior aparecen dos renglones:uno con los distintos tipos de nodo, y el otro es un mensaje que dice que el programa estáesperando que seleccionemos el tipo de nodo a utilizar. En nuestro caso tecleamos 1, que es elNODO Y.Al haber definido el tipo de nodo cambian los mensajes de los renglones inferiores de la pantalla:uno contiene un menú con los distintos tipos de elementos de entrada para nodos y el otro es unmensaje (T:Teclas de edición ) que nos aclara como acceder a una pantalla de ayuda (de la cualretornamos pulsando cualquier tecla).El nodo Y recién creado consta de un solo elemento de entrada. Para agregarle un nuevoelemento pulsamos la tecla A. Para definir el primer elemento tecleamos 1, que es entradadiscreta ED, y tecleamos el nro 1 <ENTER>, luego pulsamos flecha abajo y tecleamosnuevamente 1 2 <ENTER>. Quedará configurado el siguiente esquema:
De esta manera hemos realizado nuestro primer diagrama lógico, que consiste en un nodo Y condos elementos de entrada. Para que éste análisis comience a funcionar debemos teclear <ESC>con lo que aparecerá un menú de salida. Las opciones son: A:Acepta, I:Ignora y ESC:Continúatrabajando. Debemos pulsar A, de esta manera el diagrama es grabado y puesto a funcionar,regresando a la pantalla de salidas discretas. Para probar el correcto funcionamiento de nuestroprograma podemos utilizar el ENTRENADOR o forzar ON las entradas ED001 y ED002 en laventana de entradas discretas, comprobando luego que la salida discreta SD001 pasa al estadoON mientras esten ON las entradas ED001 y ED002.
YED001ED002
SD 001 - LUZ
15
Negador discretoSi en el ejercicio anterior quisiéramos que la luz se encienda cuando el pulsador ED002 estépresionado y el pulsador ED001 esté sin presionar deberíamos agregarle al elemento deentrada ED001 el modificador Negador , que es un círculo a la derecha del elemento a negar.Para realizar este cambio pulsamos la tecla A, para entrar nuevamente al Análisis . Luegopulsamos flecha arriba para posicionarnos sobre ED001. Una vez allí pulsamos 6, con lo queaparecerá un círculo lleno a la derecha de ED001, indicando que ese elemento de entrada estánegado.
Luego para que entre en vigencia la modificación debemos pulsar ESC A.Nuevamente debemos probar el programa mediante el ENTRENADOR o forzando las entradasED001 y ED002.
Anidamiento de NodosSi ahora a nuestro ejercicio le agregáramos dos nuevos pulsadores conectados a las entradasdiscretas ED003 y ED004 respectivamente y la condición de que para que encienda la luz debeestar:
- ED001 sin presionar- ED002 presionadoy, además, ED003 presionado ó ED004 presionado (nueva condición)
Para realizar este cambio pulsamos A para entrar al Análisis . Luego A para agregar un elementoal Nodo Y sobre el que estamos parados. Luego pulsamos flecha izquierda para crear un nodohijo y pulsamos 2 para indicar que es un Nodo O . Luego pusamos A para agregar un elementoal Nodo O recien creado. Ahora pulsamos 1 3 <ENTER> y luego flecha arriba 1 4 <ENTER> ,con lo que queda el siguiente esquema:
Como podemos apreciar, se puede formar un árbol (con un máximo de siete nodos) en unapantalla. El resultado discreto de cada nodo hijo se introduce como dato de entrada en el nodoque tenga a su derecha. El resultado discreto del nodo de más a la derecha, llamado nodo raíz ,es el resultado del Análisis . En nuestro caso, este resultado es el que decide si se enciende ono la salida discreta nro uno (SD001) y consecuentemente, la LUZ.Nuevamente debemos probar el programa mediante el ENTRENADOR o forzando las entradasED001, ED002, ED003 Y ED004.
YED001ED002
16
ED001
ED002
OED003ED004 Y
SD 001 - LUZ
NODORAIZ
NODO HIJO RESULTADODISCRETO DELNODO RAIZ
RESULTADODISCRETO DENODO HIJO
Nodos de ComparaciónHasta ahora hemos visto los nodos O e Y, los cuales trabajan solo con elementos de entradadiscretos. Veremos que en un Análisis también se pueden hacer consultas sobre variablesanalógicas, como son los Registros , las Entradas y Salidas Analógicas y las Constantes .Los nodos de comparación tienen la siguiente forma:
IGUAL MAYOR MENOR MAYOR MENOR O IGUAL O IGUAL
En estos nodos los elementos de entrada XXX e YYY son analógicos, y el resultado del nodo, es,como en todos los nodos, discreto. Si se cumple la comparación será ON, si no se cumple seráOFF.Por ejemplo:
En éste caso si el registro nro uno (R0001) contiene un valor mayor que 55, la Luz se encenderá.Si, en cambio contiene un valor menor o igual que 55, la Luz se apagará.Es importante agregar que en un Análisis se puede hacer una pregunta con distintos tipos denodos:
En éste ejemplo la Luz encenderá solo si la entrada discreta uno (ED001) vale ON ysimultáneamente el registro nro catorce (R0014) contiene un valor mayor que 137. En cualquierotro caso la Luz se apagará.
CMP=XXX
YYY
CMP>XXX
YYY
CMP<XXX
YYY
CMP>=XXX
YYY
CMP<=XXX
YYY
SD 001 - LUZ
CMP>R0001
00055
SD 001 - LUZ
CMP>R0014
00137 YED001
17
Nodos de Operaciones matemáticasPara realizar operaciones matemáticas se utilizan los siguientes nodos:
SUMA RESTA MULTIPLICACION DIVISION MODULO
(RESTO DE LA DIVISION)
En estos nodos los elementos XXX e YYY son los operandos de la operación matemática y elelemento RRR es el lugar donde se almacenará el resultado analógico de dicha operación. Elelemento Hab es de tipo discreto y permite imponer condiciones para que se ejecute laoperación matemática. Su uso es opcional, si se deja en blanco la operación se hará siempre.El resultado discreto de estos nodos es siempre ON, y generalmente no se utiliza.Para realizar operaciones matemáticas se utilizan Pasos de Secuencias o Análisis deAuxiliares discretas .Ejemplos:
(a) (b)En el ejemplo (a) se suma permanentemente el contenido del registro uno (R0001) al contenidodel registro dos (R0002) y se guarda el resultado en el registro tres (R0003).En el ejemplo (b) siempre que la entrada discreta uno (ED001) valga ON, al contenido del registronro cien (R0100) se le restará el valor 27 y se guardará el resultado en la salida analógica nro uno(SA001). En ambos casos el resultado discreto del Análisis es ON, por lo tanto los auxiliaresAU007 y AU008 permanecerán siempre en estado ON.Si se necesita realizar un cálculo más complejo se pueden agrupar nodos de operacionesmatemáticas colocando un nodo Y como raíz. Veamos un ejemplo:
HHHXXXYYYRRR
SUM
HabS1S2Rsl
HHHXXXYYYRRR
RES
HabMinSusRsl
HHHXXXYYYRRR
MUL
HabM1M2Rsl
HHHXXXYYYRRR
DIV
HabD1D2Rsl
HHHXXXYYYRRR
MOD
HabD1D2Rsl
AU 007 - CALCULO 1 AU 008 - CALCULO 2
SUM
HabS1S2Rsl
RES
HabMinSusRsl
R0001R0002R0003
ED001R0100
27SA001
AU 009 - CALCULO 3
MUL
HabM1M2Rsl
R0100R0007R0100
SUM
HabS1S2Rsl
R0005R0006R0100 Y
18
En éste caso el Nodo Y sirve para agrupar nodos de operaciones matemáticas, relizándoseéstas de arriba hacia abajo. En nuestro ejemplo sucede lo siguiente:El contenido del R0005 es sumado al contenido del R0006 y el resultado de la suma sealmacena en el R0100. Luego el contenido del R0100 se multiplica por el contenido delR0007 y el resultado de la multipicación se guarda en el R0100.La misma operación matemática expresada en otra notación sería:
R100 = ( R0005 + R0006 ) * R0007
En general cuando debemos introducir una fórmula en el PC-PLC el camino a seguir es elinverso, es decir debemos traducir una fórmula a lenguaje de Nodos teniendo en cuenta laprecedencia de los signos y los paréntesis.Veamos un ejemplo:
En este ejemplo hemos utilizado el R0100 como auxiliar de cálculo, para almacenar el valorintermedio de R0002+R0003.
AU XXX - FORMULA
SUM
HabS1S2Rsl
Y
R0002R0003R0100
SUM
HabS1S2Rsl
R0004R0005R0001
MUL
HabM1M2Rsl
R0100R0001R0001
SUM
HabS1S2Rsl
DIV
HabDiv1Div2Rsl
R000100127R0001
R000100072R0001
RESULTADOFINAL
LAS OPERACIONESSE REALIZAN DEARRIBA HACIA
ABAJO
Contadores
Para realizar el conteo de eventos se utiliza el nodo SUM. (En realidad el PC-PLC cuenta conun nodo contador llamado CNT pero se mantiene solo para compatibilidad con versionesanteriores y no se recomienda su uso).Supongamos que a la salida de una máquina automática que fabrica tornillos hay una canaletaque guía los mismos hacia un cajón de empaque. En la mitad de la canaleta hay un sensorinductivo conectado a la entrada discreta ED001 que pasa a ON cada vez que detecta el pasajede un tornillo por la canaleta. Si quisiéramos llevar la cuenta de la cantidad de tornillos fabricadospodríamos realizar el siguiente Análisis :
19
SUM
HabS1S2Rsl
ED001R000100001R0001
ERROR:Lo debe
habilitar elflanco
AU XXX - CONTADOR DE TORNILLOS
En este ejemplo se utiliza el registro R0001 como contador de tornillos usando el análisis de algunauxiliar discreto no utilizado.Siempre que la ED001 esté ON el R0001 se incrementará. Pero cada vez que un tornillo pasepor la canaleta, el R0001 se incrementa muchas veces, dependiendo del tiempo que esté eltornillo siendo detectado por el sensor. Para que funcione bien como contador hace falta agregarun modificador a la entrada Hab llamado Flanco positivo.El modificador Flanco positivo consiste en una flecha apuntando hacia arriba a la derecha delelemento de entrada de un nodo. Este hace que al nodo SUM, en nuestro caso, entre un pulsocada vez que la ED001 pasa a ON, y de este modo el R0001 solo se incrementa una vez por cadatornillo.
ED001
ED001
ED001
SUM
HabS1S2Rsl
AU XXX - CONTADOR DE TORNILLOS
ED001R000100001R0001
Nota: Además del Flanco positivo tambien existe el modificador Flanco negativo ,el cual genera un pulso ON cada vez que la variable discreta en cuestión pasa de ONa OFF.
20
En el ejemplo del contador de tornillos la condición que determina que hay que incrementar elcontador es un solo elemento de entrada (ED001). En ese caso se puede aplicar el modificadorFlanco positivo directamente como pudimos ver.Ahora supongamos que para detectar cada pieza a contar hay dos fotocélulas conectadas a lasED002 y ED003 respectivamente, y que solo indican que hay una pieza cuando están ON ambassimultáneamente. El siguiente Análisis NO FUNCIONA:
El modificador flanco positivo solo se puede aplicar a una variable discreta pero no al resultadodiscreto de un nodo hijo. Para resolver este problema utilizamos otro auxiliar discreto:
AU 001 - DETECTOR DE PIEZAS AU XXX - CONTADOR DE PIEZAS
AU XXX - CONTADOR DE PIEZAS
SUM
R000100001R0001
HabS1S2Rsl
ERROR:El PC-PLC nopermite colocar el
modificador Flanco Positivoacá
YED002ED003
SUM
AU001R000100001R0001
YED002ED003
Al contador se le pueden agregar otros elementos. Por ejemplo:
SUM
HabS1S2Rsl
ED001R000100001R0001
Y
AU XXX - CONTADOR CON RESET
SUM
HabS1S2Rsl
ED0020000000000R0001
Este contador cuenta los pulsos de la entrada ED001, y además cuando la entrada ED002pasa a ON el registro acumulador R0001 pasa a valer 0 (se resetea).
21
HabS1S2Rsl
NODO SRB ( SET / RESET BIT DE UN REGISTRO)
Los registros son variables analógicas de uso general. En los ejemplos que hemos visto hastaahora los hemos utilizado para realización de cálculos, comparaciones y como contadores.Además de como variable analógica, un registro se puede utilizar como un conjunto de 32variables discretas llamadas Bits . Estos bits se pueden encender (SET) y apagar (RESET)mediante el nodo SRB. Si utilizamos esta característica de los registros debemos documentarcada bit utilizado colocándole una descripción. (Para realizar esto debemos pararnos en laventana de registros sobre el registro que contiene el bit, y pulsar la tecla T, con lo queaparecerá una ventana cuyo título es la descripción del registro y que muestra en tiempo realel estado ON/OFF del cada uno de los 32 bits que lo componen. En la parte inferior apareceun menú para seleccionar el bit, teclear la descripción y retornar).El nodo SRB tiene el siguiente formato:
- El elemento de entrada Set es de tipo discreto. Cuando vale ON enciende el bit, cuando valeOFF no actúa (ni lo enciende ni lo apaga).- El elemento de entrada Rst es de tipo discreto. Cuando vale ON apaga el bit, cuando vale OFFno actúa (ni lo enciende ni lo apaga).- El elemento de entrada Bit es una constante que va de 1 a 32, es el número de bit dentro delregistro.- El elemento de entrada Reg es el registro al cual se le está encendiendo o apagando el bit.
Si ambos elementos Set y Rst valen ON, el bit pasa a valer OFF. Es decir que tiene prioriad elRst .Si ambos elementos Set y Rst valen OFF, el bit no cambia de estado. Es decir mantiene el estadoque tenía antes del análisis.
El resultado del nodo SRB es igual al estado del bit. Es decir que si un nodo SRB está puestocomo nodo raíz en el análisis de una variable discreta, el estado de dicha variable será el mismoque el del bit. Esta última posibilidad es muy utilizada.
SRB
SetRstBitReg
ED001ED002
01R0001
AU XXX - SET / RESET BIT 1 DER0001
22
Ejemplo: Control de un motor eléctrico con la siguiente configuración:
ED001:Llave habilitadora de arranqueED002:Pulsador de marchaED003:Pulsador de paradaED004:Sensor de Sobrecorriente en el motor.
SD001:Contactor de motor eléctrico.
Recordemos que por estar el SRB como nodo raíz, el estado del bit será el resultado del análisisy, consecuentemente, el estado del contactor (SD001).Si estando ON la llave habilitadora de arranque ED001 se presiona el pulsador de marchaED002, se encenderá el bit (Set), y como el análisis pertenece a la salida SD001 se cerraráconsecuentemente el contactor y arrancará el motor. Luego si se deja de presionar el pulsadorED001 el bit no será seteado ni reseteado, y mantendrá el estado ON ( o sea el motor en marcha).Si se presiona el pulsador de parada ED002 o si pasa a ON el sensor de sobrecorriente en elmotor ED003, el bit pasará a OFF (Rst ), y consecuentemente se parará el motor. Dicho de otramanera: Para que arranque el motor se debe cumplir simultáneamente (nodo Y) que estéhabilitado el arranque y que se presione el pulsador de marcha. Y para que se detengasolo hace falta que se cumpla una sola de las condiciones de parada (nodo O), o seaparada manual por pulsador o automática por sobrecorriente . En este ejemplo el bit 1 delregistro R0001 reflejará el estado de la salida SD001. En capítulos posteriores veremos que estebit sirve para comunicarse con las pantallas de visualización de mímicos.A este esquema se lo puede hacer mas completo. Si se le agregan más condiciones dearranque, éstas se colocarán como elementos de entrada del nodo Y del Set. Y si se agregancondiciones de parada se colocarán como elementos de entrada del nodo O del Rst.
SD 001 - CONTACTOR DE MOTORELECTRICO
SRB
SetRstBitReg
01R0001
YED001ED002OED003
ED004
23
Otra aplicación interesante del nodo SRB es el control de niveles basado en comparaciones conhistéresis.
Ejemplo: Control de temperatura de un horno .Se necesita mantener el horno a 150ºC +/- 2ºC. O sea entre 148ºC y 152 ºC.Las entradas y salidas son las siguientes:ED001 : Llave de encendidoEA001 : Sensor de temperatura. (Entrada analógica ).SD001 : Actuador que enciende el elemento calefactor.
Supongamos que el módulo de la entrada analógica EA001 tiene una precisión de 4095 (12 bits)y que el transductor entrega señal cero cuando la temperatura es de 50ºC y señal máxima cuandola temperatura es de 200ºC. Aplicando la fórmula de conversión :
Valor Real = Valor mínimo + Valor leído * (Valor Máximo - Valor Mínimo) / Precisión
Utilizaremos el registro R0001 para convertir a ºC el valor de temperatura leído en la EA001.Reemplazando en la fórmula quedaría:
R0001 = 50ºC + EA001 * (200ºC - 50ºC) / 4095
Pasándolo a lenguaje de nodos en el análisis del auxiliar AU001
AU 001 - CONVERSION DE EA001 A ºC SOBRE R0001
MUL
HabM1M2Rsl
EA00100150R0001
Y
DIV
HabD1D2Rsl
R000104095R0001
SUM
HabS1S2Rsl
R000100050R0001
De ésta manera el R0001 contiene el valor de temperatura en ºC actualizado permanentemente.
Ahora trabajamos en el análisis de la salida que actúa sobre el elemento calefactor:
SD 001 - Actuador que enciende el elemento calefactor
SRB
SetRstBitReg
01R0001
YED001
CMP
<=R0001
148
O
CMP
>=R0001
152 ED001
24
tiempo
temperatura
152ºC
148ºC
0ºC
ESTADODELELEMENTOCALEFACTOR
OFF
ON
En éste período el bites seteado a ONpermanentemente
En
éste
per
íodo
el b
it no
es
sete
ado
ni r
eset
eado
,m
antie
ne e
l est
ado
ON
En
éste
per
íodo
el b
it no
es
sete
ado
ni r
eset
eado
,m
antie
ne e
l est
ado
OF
F
En
éste
per
íodo
el b
it no
es
sete
ado
ni r
eset
eado
,m
antie
ne e
l est
ado
ON
En
éste
per
íodo
el b
it no
es
sete
ado
ni r
eset
eado
,m
antie
ne e
l est
ado
OF
F
En éstos instantes el bites seteado a OFF
En éstos instantes el bites seteado a ON
25
Recordemos que por estar el SRB como nodo raíz, el estado del bit será el resultado del análisisy, consecuentemente, el estado del elemento calefactor (SD001).Si analizamos la parte que se refiere al Set vemos que si la llave de encendido ED001 está enON y la temperatura del horno (R0001) es inferior o igual a 148ºC el bit es seteado a ON, yconsecuentemente se encenderá el elemento calefactor. Por otro lado si analizamos la parte quese refiere al Rst vemos que si la llave de encendido está en OFF o la temperatura del horno(R0001) es superior o igual a 152ºC el bit es reseteado a OFF, apagando consecuentementeel elemento calefactor.En los casos de temperaturas intermedias el bit no es seteado ni reseteado, manteniendo elestado que tenía. De ésta manera se logra el efecto de histéresis buscado. Para mayor claridadveamos el siguiente gráfico:
En éste ejemplo si la entrada discreta ED001 pasa a ON, la salida discreta SD001 pasará a ONdespues de 5 segundos, y se mantendrá en ON mientras ED001 esté en ON. Luego si la entradaED001 pasa a OFF, la salida SD001 pasará a OFF inmediatamente.
NODOS TEMPORIZADORES
Para las temporizacones el PC-PLC cuenta con dos nodos: TMC, con unidad de tiempos encentésimas de segundo y TMS con unidad en segundos. La configuración de éstos nodos es lasiguiente:
TMC
HabResRegLím
XXXXYYYYRRRRLLLLL
Los elementos de entrada Hab y Res son de tipo discreto.El elemento Reg debe ser un registro. En dicho registro se almacena en forma codificada eltiempo transcurrido desde la última vez que fue reseteado el temporizador.El elemento Lím puede ser un registro o una constante. Es el valor de tiempo programado en lasunidades correspondientes. Si es un TMC seran centésimas de seg., y si es un TMS seránsegundos.Funcionamiento :Mientras la entrada Res se mantenga en estado ON el temporizador no contará el tiempo y elresultado será permanentemente OFF.Cada vez que la entrada Res pase de ON a OFF el temporizador empezará a contar el tiempo.Mientras transcurre el tiempo el resultado del temporizador será OFF. Cuando el tiempotranscurrido sea mayor o igual al valor especificado en Lím el resultado del temporizador seráel mismo que la entrada Hab.
SD 001
TMS
HabResRegLím
ED001ED001R0001
5
Ejemplo: Retardo al encendido
26
Mientras ED001 esté OFF eltemporizador se mantienereseteado entregando OFF.Cuando ED001 pasa a ONcomienza a contar el tiempo.Una vez transcurrido el mismoel temporizador entregará ON.
SD 007
TMS
HabResRegLím
ED001ED001R0001
3
En éste ejemplo si la entrada discreta ED001 pasa a ON, la salida discreta SD007 pasará a ONinmediatamente, y se mantendrá en ON mientras ED001 esté en ON. Luego si la entrada ED001pasa a OFF, la salida SD007 pasará a OFF despues de 3 segundos.
Ejemplo: Retardo al apagado
AU 001
TMS
HabResRegLím
ED001ED001R0001
3
En éste ejemplo si la entrada discreta ED001 pasa a ON, el auxiliar discreto AU001 pasará aON despues de 2 segundos, y se mantendrá en ON mientras ED001 esté en ON. Luego si laentrada ED001 pasa a OFF, el auxiliar AU001 pasará a OFF despues de 3 segundos.Estos esquemas se pueden utilizar como filtros. Veamos una aplicación.
Ejemplo: Retardo al encendido y al apagado
Este caso se resuelve utilizando un nodo SRB (set/reset bit) y necesita de dos temporizadores,uno para el retardo al encendido y otro para el retardo al apagado.
SRB
SetRstBitReg
1R0003
TMS
HabResRegLím
ED001ED001R0002
2
27
Y
El nodo Y se utilizapara invertir (negar)el resultado del nodotemporizador
Mientras ED001 esté ON eltemporizador se mantienereseteado entregando OFF.Cuando ED001 pasa a OFFcomienza a contar el tiempo.Una vez transcurrido el mismoel temporizador entregará ON.
Este filtro funciona del siguiente modo: Si el bit está en OFF solo pasará a ON si la entradadiscreta ED001 está en ON un mínimo de 10 centésimas de seg. Y si el bit está en ON solo pasaráa OFF si la ED001 está en OFF un mínimo de 10 centésimas. De ésta manera se filtran los picosde duraciones inferiores a 10 centésimas. Para filtrar ruidos de mayor duración solo debemoscambiar el valor Lím de los temporizadores, pudiendo incluso tener un valor diferente uno del otro.
Ejemplo: Filtro de una entrada discreta con ruido
En una aplicación hay una vía por la que circulan vagonetas y perpendicularmente a la misma hayuna barrera infrarroja para detectar el paso de dichas vagonetas. En el ambiente hay un alto gradode polución, con lo cual a veces la barrera infrarroja genera pulsos de estado ON aunque no hayauna vagoneta. Además algunas vagonetas tienen huecos en las paredes laterales, haciendo quemientras está pasando una vagoneta frente a la barrera se generan pulsos OFF. La barrerainfrarroja está conectada al controlador como la entrada discreta ED001.El objetivo buscado es tener una señal en el controlador que nos dé ON sin ruidos cuando pasauna vagoneta y OFF sin ruidos cuando no hay vagoneta.Para resolver éste caso se utiliza un auxiliar discreto con un filtro formado por dos temporizadores:uno para retardo al encendido y otro para retardo al apagado. Para mayor claridad veamos ungráfico:
Barrera infrarroja(ED001)
Auxiliar Filtrado(AU001)
PULSOS ONPULSOS OFF
ESTADO OFFSIN RUIDO
ESTADO ONSIN RUIDO
28
AU 001: Barrera infrarroja filtrada (ED001)
TMC
HabResRegLím
ED001ED001R0001
10
SRB
SetRstBitReg
1R0001
TMC
HabResRegLím
ED001ED001R0002
10
29
VARIABLES DE TIEMPO
El PC-PLC permite al usuario realizar programas de acción cronológica, es decir que losmismos sepan si es lunes o martes, qué hora es, qué día del mes, el mes y el año y que ademáspuedan realizar distintas operaciones de acuerdo a éstos datos.Para habilitar ésta posibilidad el usuario se debe posicionar en la ventana de Configuración delmenú Principal y seleccionar la opción Variables de Tiempo . Luego se debe teclear en cadavariable un número de registro, el cual reflejará ese dato posteriormente. Por ejemplo supongamosque tecleamos los siguientes datos.
SELECCIONE LOS REGISTROS DONDE SE ALMACENARAN AUTOMATICAMENTE LOS VALORES INDICADOS (1-9999)
Una vez tecleados estos datos y habiendo confirmado con ENTER sucederá lo siguiente:El registro R9993 contendrá el año (por ejemplo 1997).El registro R9994 contendrá el mes (1 a 12).El registro R9995 contendrá el día del mes (1 a 31).El registro R9996 contendrá la hora (0 a 23).El registro R9997 contendrá los minutos (0 a 59).El registro R9998 contendrá los segundos (0 a 59).El registro R9999 contendrá el día de la semana (1:Dom 2:Lun 3:Mar . . . )
Luego es aconsejable posicionarse a la ventana de Registros (Alt-R ), ir al registro 9993 (tecleari 9993 ENTER) y cargar la descripción correspondiente a cada registro para facilitar la lecturay la programación en el futuro. Las descripciones quedarán como muestra la figura:
Registros
D:Descripc. B:Buscar V:Valor T:Bits L:Listar I:Ir a Reg.Nº:
Ahora para utilizar las variables que hemos configurado veamos algunas aplicaciones.
Ejemplo: Encendido de luces a horario
En un establecimiento se debe encender un grupo de luces de lunes a viernes en el horario de19 a 22 hs. Dicho grupo de luces está conectado a la salida discreta SD001.Para resolver esto trabajamos directamente sobre el análisis de la salida.
SD 001 - Actuador que enciende el grupo de luces
Y
CMP
>=R9999
2CMP
<=R9999
6CMP
>=R9996
19CMP
<=R9996
22
Día de la semanamayor o igual a
LunesDía de la semanamenor o igual a
ViernesHora mayoro igual a
19Hora menoro igual a
22
Por ser un nodo Y sedeben cumplir todas las
comparacionessimultáneamente
Otro ejemplo: Encendido de luces a horario con intervalos y días salteados
En un establecimiento se debe encender un grupo de luces los días lunes, miércoles y viernes enlos horarios de 6:50 a 8:30 hs y de 19:20 a 22:10 hs. Dicho grupo de luces está conectado a lasalida discreta SD001.Para resolver este caso utilizaremos auxiliares discretos:
AU 001 - Auxiliar que vale ON si es Lunes, Miércoles o Viernes
O
CMP
=R9999
2CMP
=R9999
4CMP
=R9999
6
Día de la semanaigual a Lunes
Día de la semanaigual a Miércoles
Día de la semanaigual a Viernes
Por ser un nodo O elauxiliar dará ON si secumple alguna de las
condiciones
30
AU 002 - Auxiliar que vale ON a las 6:50 hs
AU 003 - Auxiliar que vale ON a las 8:30 hs
Y
CMP
=R9996
8CMP
=R9997
30
Por ser un nodo Y sedeben cumplir todas las
comparacionessimultáneamente
Hora iguala 8
Minutosigual a 30
Y
CMP
=R9996
6CMP
=R9997
50
Por ser un nodo Y sedeben cumplir todas las
comparacionessimultáneamente
Hora iguala 6
Minutosigual a 50
AU 004 - Auxiliar que vale ON a las 19:20 hs
Y
CMP
=R9996
19CMP
=R9997
20
Por ser un nodo Y sedeben cumplir todas las
comparacionessimultáneamente
Hora iguala 19
Minutosigual a 20
31
AU 005 - Auxiliar que vale ON a las 22:10 hs
Y
CMP
=R9996
22CMP
=R9997
10
Por ser un nodo Y sedeben cumplir todas las
comparacionessimultáneamente
Hora iguala 22
Minutosigual a 10
SD 001 - Actuador que enciende el grupo de luces
Finalmente trabajamos sobre el análisis de la salida utilizando un nodo Set/Reset Bit:
SRB
SetRstBitReg
1R0001
YAU001
OAU002AU003Y
AU001
OAU004AU005
Descripción del análisis:
Las condiciones que encienden el bit son:Que el día de la semana sea Lunes, Miércoles o Viernes (AU001)y que además sean las 6:50 hs (AU002) o las 19:20 hs (AU003).Las condiciones que apagan el bit son:Que el día de la semana sea Lunes, Miércoles o Viernes (AU001)y que además sean las 8:30 hs (AU004) o las 22:10 hs (AU005).
Por estar el nodo SRB como nodo raíz del análisis, el estado del bit será el mismo que el de lasalida discreta SD001, a la que pertenece el análisis.
32
EVENTOS
El PC-PLC tiene la posibilidad de registrar eventos en base de datos almacenando fecha y horaen que el evento se manifiesta, y fecha y hora en que el mismo deja de manifestarse.Para trabajar con eventos el usuario se debe posicionar en la ventana de Programación delmenú Principal y seleccionar la opción Eventos .Los eventos son similares a los auxiliares discretos, tienen una descripción y un análisisasociado a cada evento y la manera de programar estos análisis es exactamente igual a lassalidas discretas y a los auxiliares discretos. La diferencia es que cada evento se puedeconfigurar para que manifieste sus cambios de estado (ON y OFF) de tres maneras diferentes:1 - Imprimiendo los cambios en una impresora (que puede ser local o remota).2 - Registrando los cambios en una base de datos.3 - Avisar el estado ON del evento mediante señal sonora (el speaker de la PC).
Ejemplo: MONITOREO DE LA PUERTA DE ACCESO A UNA SALA .
En una fábrica se necesita monitorear la cantidad de personal que entra y sale de la sala demáquinas, registrando además la fecha y la hora.Para detectar el paso del personal se conecta una barrera infrarroja en la puerta acceso a dichasala y se configura en el PC-PLC como la entrada discreta ED001.Luego trabajamos sobre el análisis del evento EV001.
33
EV001 - Registro del acceso a sala de máquinas
YED001
De ésta manera el evento EV001 pasará a ON cada vez que la barrera infrarroja ED001 detecteel paso de una persona.Ahora para que éstos cambios se registren en el archivo de histórico se debe pulsar la tecla Cdel menú de la ventana de eventos (estando seleccionado el evento EV001) y luego ENTER enla opción Registrar en histórico cuando cambia de estado .
Posteriormente para ver el histórico debemos pulsar la tecla H estando parados en el eventoEV001 o bien podemos ir a la ventana de Histórico General de Eventos , del menúProgramación .
Ejemplo: SUPERVISION DEL CONTROL DE TEMPERATURA DE UN HORNO
En una planta de cocción de cerámicos se debe supervisar el control de la temperatura de unazona del horno. Dicha supervisión consiste en detectar cada vez que la temperatura de la zonaen cuestión sube por encima del máximo permitido y en qué momento vuelve a caer dentro delrango, registrando en ambos casos la fecha y la hora.Para detectar la temperatura hay un sensor del tipo termocupla conectado a la entrada analógicaEA001, y el valor máximo de temperatura en la zona está determinado por el registro R0001.Luego trabajamos sobre el análisis del evento EV002.
EV 002 Supervision del control de temperatura de Horno 1 - Zona 12
CMP
>EA001R0001
Cada vez que la temperatura en la zona (EA001) sea mayor que el máximo permitido (R0001)el evento EV002 pasará a ON, luego si la temperatura se hace igual o inferior a dicho máximoel evento pasará a OFF.Para que éstos cambios se registren en el archivo de histórico se debe pulsar la tecla C del menúde la ventana de eventos (estando seleccionado el evento EV002) y luego ENTER en la opciónRegistrar en histórico cuando cambia de estado .Es posible además configurar el evento para que avise mediante una señal sonora cuando seencuentra en estado ON. Dicha señal dejará de sonar si el evento pasa a OFF o si el operadorreconoce el evento pulsando ENTER en la Ventana de eventos activos , a la cual se accedepulsando simultáneamente las teclas Alt-T . En éste último caso se registrará automáticamenteen el histórico el momento en que el evento fue reconocido.
34
APENDICE
Plantilla metodológica para resolver un problema de Control.
. Estudio completo del problema a resolver.
. Definición de los objetivos concretos del control a realizar.
. Análisis de la conveniencia de aplicar Control Automático.. Problemas que se generen a partir de la aplicación del Control Automático y posibilidad de resolver los mismos.. Inversión inicial, mantenimiento y tiempo de amortización.. Ventajas y beneficios inmediatos y/o a largo plazo.. Posibilidades de expansión.
. Identificación de los elementos a controlar.
. Definición de los requisitos mínimos necesarios que deberá cumplir el personal que operará el sistema.. Identificación de las entradas y salidas mínimas necesarias.. Definición de las instalaciones civiles, mecánicas, eléctricas, etc.. Realización del / los diagramas de flujo para el control, la visualización y la gestión.. Pasaje de los mismos al lenguaje del Controlador.. Ensayo, correcciones y puesta a punto del programa mediante simulación.. Realización de las instalaciones necesarias.. Puesta en marcha del Sistema.. Documentación completa.
Trabajo Práctico Nro 1
Dados los siguientes elementos de automatización definir si son entradas osalidas y si son discretas o analógicas.
ENTRADAO SALIDA
DISCRETA OANALOGICA
- Elemento que permite detectar si una puerta está abierta o cerrada.- Elemento que permite encender y apagar una luz.
- Elemento que permite detectar la velocidad de giro de un motor.- Elemento que permite detectar la presencia o no de un objeto dentro de un recipiente.- Elemento que permite detectar el nivel de líquido de un tanque.- Elemento que permite hacer girar un motor a distintas velocidades.- Elemento que permite detectar si el nivel de líquido de un tanque está por encima o por debajo del mínimo.- Elemento que permite detectar el grado de apertura de una puerta.- Elemento que permite detectar el nivel de luz que hay en un ambiente determinado.- Elemento que permite detectar la temperatura en el interior de un recipiente.- Elemento que permite detectar el porcentaje de humedad de un objeto dado.- Elemento que permite detectar el grado de acidez de un líquido.- Elemento que permite detectar si el nivel de ruido en un ambiente dado está por encima o por debajo de un cierto valor.- Elemento que permite detectar si un motor está girando o no.
E D
S D
E A
E D
E A
S A
E D
E A
E A
E A
E A
E A
E D
E D
01
Trabajo Práctico Nro 2Dados los siguientes problemas de automatización definir las Entradas ySalidas mínimas necesarias para cumplir el objetivo propuesto.
02
1 - Encendido automático de las luces de un establecimiento entre las 18y las 22 horas de lunes a viernes. Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
3 - Control automático de la temperatura de una casa.
2 - Riego automático de una huerta basándose en la humedad del suelo yen las lluvias. Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
LLAVE DE ENCENDIDO
GRUPO DE LUCES
LLAVE DE ENCENDIDO
VALVULA SOLENOIDE DE PASO DE AGUA
SENSOR DE HUMEDADPLUVIOMETRO
LLAVE DE ENCENDIDO
VALVULA SOLENOIDE DE GAS
SENSOR DE TEMPERATURASELECTOR DE TEMPERATURA DESEADA
4 - Control automático de un lavarropas.
Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
6 - Control del nivel de un silo de cereal entre un mínimo y un máximo.
Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
5 - Control de las luces de una confitería bailable.
SENSOR DE TEMPERATURASELECTOR DE TEMPERATURA DE LAVADO
ROTACION LENTA PARA LAVARROTACION RAPIDA PARA CENTRIFUGAR
ELECTROVALVULAS PARA CARGA Y DESCARGADEL AGUA
LLAVE DE ENCENDIDOSELECCION DE PROGRAMAS
GRUPOS DE LUCESMOTORES PARA LUCES GIRATORIASGENERADORES DE HUMO PARA EFECTOS
LUCES DE INTENSIDAD VARIABLEMOTORES DE VELOCIDAD VARIABLE
SEÑAL DE AUDIO PARA EFECTOSAUDIORRITMICOS
LLAVE DE ENCENDIDOSENSOR DE NIVEL MINIMOSENSOR DE NIVEL MAXIMO
MOTOR PARA CARGA DE CEREAL AL SILO
LLAVE DE ENCENDIDOSELECCION DE PROGRAMAS
03
7 - En la fabricación de pinceles se desea automatizar la cocción delpegamento de los mismos. Para eso se debe mantener la temperatura deun horno en un valor estable 80ºc +/- 3ºC. Además los pinceles debenpermanecer a dicha temperatura durante 10 minutos.
Descripción del ProcesoA - El operador indica al controlador que va a utilizar el horno.B - El operador realiza manualmente la carga de una bandeja con pincelesdentro del horno, avisando al controlador que ha ingresado una nuevabandeja.C - El controlador debe avisar luego al operador mediante una bocinacuando los pinceles han estado 10 minutos a la temperatura de 80ºC.D - El operador realiza manualmente la descarga de la bandeja, avisando alcontrolador que ya ha retirado los pinceles para que este apague la bocina.E - Si hay mas pinceles para cocinar el proceso vuelve al punto BF - Si no hay mas pinceles para cocinar el operador indica al controladorque no va a utilizar mas el horno.
Entradas discretas Entradas analógicas
Salidas discretas Salidas analógicas
LLAVE DE ENCENDIDOPULSADOR DE AVISO DE BANDEJA EN HORNO
PULSADOR DE AVISO DE RETIRO DE BANDEJA
SENSOR DE TEMPERATURA
ELEMENTO CALEFACTORBOCINA
04
Cálculos trabajando con Entradas y Salidas Analógicas
1 - Para medir el nivel de líquido de un tanque de 10 mts de altura se colocó un sensorultrasónico en la parte superior del mismo y se ajustó el transductor para que entregue señalcero cuando la distancia entre el sensor y el nivel del líquido sea de 3 mts, y señal máximacuando dicha distancia sea de 10 mts (tanque vacío). El módulo de entrada tiene unaPrecisión de 1023. En cierto momento la CPU recibe el número 145.Calcular en ese caso el nivel del tanque en mts.
VALOR REAL = VALOR MIN + VALOR LEIDO * (VALOR MAX - VALOR MIN) / PRECISION
VALOR REAL = 3 mts + 145 * ( 10 mts - 3 mts ) / 1023 = 3.992
NIVEL DEL TANQUE = 10 mts - VALOR REAL = 10 - 3.992 = 6,008 mts
2 - Para controlar la velocidad de giro de un molino se utiliza como actuador un variador develocidad que comanda un motor. El transductor se ajusta para que cuando reciba señalmínima desde la CPU el motor este detenido y cuando reciba señal máxima desde la CPU elmotor gire a 2800 RPM. El módulo de salida analógico tiene una precision de 4095. Calcularel valor que debe enviar el usuario a traves del programa para que el motor gire a 1200 RPM.
VALOR A ENVIAR = (VALOR DESEADO - VALOR MIN) * PRECISION / (VALOR MAX - VALOR MIN)
VALOR A ENVIAR = (1200 RPM - 0) * 4095 / (2800 RPM - 0 RPM ) = 1755
3 - Para medir la temperatura de un horno se utiliza un sensor cuyo transductor ha sidoajustado para entregar señal cero a 100ºC y señal máxima a 1200ºC. El módulo de entradaanalógica tiene una precisión de 1999.Calcular la temperatura del horno cuando la CPU recibe el valor 972.
VALOR REAL = VALOR MIN + VALOR LEIDO * (VALOR MAX - VALOR MIN) / PRECISION
VALOR REAL = 100 ºC + 972 * (1200 ºC - 100 ºC) / 1999 = 634.86 ºC
4 - En la automatización de una máquina mezcladora se debe utilizar una balanza capaz demedir con una sensibilidad de 1 gramo. El sensor de peso (celda de carga) se conecta a untransductor que se ajusta para entregar una señal CERO cuando hay 500 gramos de materialy señal máxima cuando hay 1500 gramos de material.Calcular cual sería la precisión mínima necesaria del módulo de entrada analógico.
VALOR REAL = VALOR MIN + VALOR LEIDO * (VALOR MAX - VALOR MIN) / PRECISION
=> PRECISION = VALOR LEIDO * (VALOR MAX - VALOR MIN) / (VALOR REAL - VALOR MIN)
PRECISION = 1 * (1500 gr - 500 gr) / (501gr - 500 gr) = 1000
05
Trabajo Práctico Nro 3
Trabajo Práctico Nro 4
Realizar en el programa PC-PLC los diagramas lógicoscorrespondientes.
1 - En una fábrica de patines se utiliza un balancín para estampar las piezas metálicasnecesarias. Para que baje el cabezal, el cual utiliza una electroválvula neumática (SD001), sedeben cumplir las siguientes condiciones:
- El operador debe oprimir simultánemente dos pulsadores (ED001 y ED002), cada unocon una mano, para asegurarse que no tiene ninguna mano debajo del cabezal.- Para evitar que se dañe la matriz de estampado hay un sensor que detecta que haymaterial para estampar.(ED003).
2 - En un establecimiento de instaló un sistema de alarma que consta de los siguienteselementos: Sensores de apertura en 2 ventanas y 2 puertas, detectores de presencia de tipoinfrarrojo en 2 habitaciones, teclado autónomo que lee una clave de 5 dígitos y entrega una señalON si la clave es correcta y OFF si es incorrecta, una sirena y un pulsador de prueba de la sirena.
SD001 - ELECTROVALVULA BAJAR CABEZAL DE ESTAMPADO
SD002 - SIRENA DE ALARMA
YED001ED002ED003
ED001 SENSOR DE APERTURA DE PUERTA 1ED002 SENSOR DE APERTURA DE PUERTA 2ED003 SENSOR DE APERTURA DE VENTANA 1ED004 SENSOR DE APERTURA DE VENTANA 2ED005 DETECTOR DE PRESENCIA EN HABITACION 1ED006 DETECTOR DE PRESENCIA EN HABITACION 2ED007 TECLADOED008 PULSADOR DE PRUEBA DE LA SIRENA
OED001ED002ED003ED004ED005ED006
YED007
OED008
06
SD002 - LUZ INDICADORA DE NIVEL MAXIMO
3 - Para realizar el control de nivel de un tanque de combustible se colocaron dos sensores denivel de tipo discreto: uno a la altura del nivel mínimo y el otro a la altura del nivel máximo. En untablero remoto hay cuatro luces indicadoras: Una se debe encendeder cuando el nivel seencuentra entre el mínimo y el maximo, otra cuando el nivel es mayor o igual al máximo, otracuando el nivel el menor o igual al mínimo y la cuarta se enciende si detecta una falla en algunode los sensores, en el caso de que el sensor de maximo nivel indique ON y el del mínimo nivelindique OFF.
YED001ED002
07
ED001 SENSOR DE NIVEL MAXIMOED002 SENSOR DE NIVEL MINIMOSD001 LUZ INDICADORA DE NIVEL INTERMEDIOSD002 LUZ INDICADORA DE NIVEL MAXIMOSD003 LUZ INDICADORA DE NIVEL MINIMOSD004 LUZ INDICADORA DE QUE FALLA ALGUN SENSOR
SD003 - LUZ INDICADORA DE NIVEL MINIMO
YED001ED002
SD004 - LUZ INDICADORA DE QUE FALLA ALGUN SENSOR
YED001ED002
SD001 - LUZ INDICADORA DE NIVEL INTERMEDIO
YED001ED002
SD001 - CONTACTOR DE APERTURA DE PUERTA
SD002 - CONTACTOR DE CIERRE DE PUERTA
4 - La puerta de la cámara de un frigorífico se controla mediante un actuador eléctrico de dobleacción, un contacto abre y el otro cierra. Para abrir y cerrar la puerta desde afuera hay dospulsadores que se encuentran al lado de la misma. El pulsador de apertura solo funciona si estáactivada una llave selectora remota, para evitar que pueda abrir la cámara personal noautorizado. Para abrir desde adentro hay un pulsador al lado de la puerta del lado interno de lacámara, el cual funciona aunque no este activada la mencionada llave remota, para evitar que sequede encerrada una persona. La puerta es corrediza y tiene dos finales de carrera quedeterminan si está totalmente abierta o totalmente cerrada. Si se oprimen simultánemante lospulsadores de apertura y cierre externos la puerta no debe abrir ni cerrar. Si se oprime el pulsadorde apertura interno la puerta debe abrir salvo que se encuentre totalmente abierta.
OED004
Y
Y
ED005
ED001ED002ED003
YED002ED006ED001ED004SD001
08
ED001 PULSADOR DE APERTURA EXTERNOED002 PULSADOR DE CIERRE EXTERNOED003 LLAVE SELECTORA REMOTAED004 PULSADOR DE APERTURA INTERNOED005 FINAL DE CARRERA - PUERTA TOTALMENTE ABIERTAED006 FINAL DE CARRERA - PUERTA TOTALMENTE CERRADASD001 CONTACTOR DE APERTURA DE PUERTASD002 CONTACTOR DE CIERRE DE PUERTA
5 - Determinar el resultado de los siguientes análisis lógicos para las distintas situacionesplanteadas.
6 - Para medir la temperatura de un horno se utiliza un sensor cuyo transductor ha sidoajustado para entregar señal cero a 0ºC y señal máxima a 1200ºC. El módulo de entradaanalógica tiene una precisión de 4095 y ha sido configurado para obtener el valor sobre laEA001. Además hay conectada una sirena de alarma a la salida discreta SD001. a - Utililizar el análisis de un auxiliar discreto para calcular la temperatura en grados ºCsobre el registro R0001
VALOR REAL = VALOR MIN + VALOR LEIDO * (VALOR MAX - VALOR MIN) / PRECISIONTemperatura en ºC = 0 ºC + EA001 * (1200 ºC - 0 ºC) / 4095 = EA001 * 1200 / 4095
R0001 = EA001 * 1200 / 4095
09
AUXXX - CONVERSION DE SENSOR DE TEMP. A GRADOSCENT.
MUL
HabM1M2Rsl
EA00101400R0001
Y
DIV
HabD1D2Rsl
R000104095R0001
SUM
HabS1S2Rsl
R000100100R0001
b - Realizar el análisis de la sirena para que suene si la temperatura excede los 900 ºC.
1 - 1 - Para medir el nivel de líquido de un tanque de 15 mts de altura se colocó un sensorultrasónico en la parte superior del mismo y se ajustó el transductor para que entregue señalcero cuando la distancia entre el sensor y el nivel del líquido sea de 1 m, y señal máximacuando dicha distancia sea de 15 mts (tanque vacío). El módulo de entrada tiene unaPrecisión de 4095 y ha sido configurado para obtener el valor sobre la Entrada AnalógicaEA001.
a - Realizar el diagrama lógico utilizando el análisis de un auxiliar discreta para traducira centímetros el número leído en la EA001 y guardarlo en el registro R0100.
10
Trabajo Práctico Nro 5
AUXXX - CONVERSION DE NIVEL DE TANQUE A cm
MUL
HabM1M2Rsl
EA00101400R0100
Y
DIV
HabD1D2Rsl
R010004095R0100
SUM
HabS1S2Rsl
R010000100R0100
RES
HabS1S2Rsl
1500R0100R0100
La distancia medida por el sensor ultrasónico se calcula utilizando la fórmula:
Valor Real = Vmín + Vleído * (Vmáx - Vmín) / Precisión
Distancia = 100 cm + EA001 * (1500 cm - 100 cm) / 4095
El nivel del tanque es igual a la diferencia entre la altura total y la distanciamedida por el sensor.
Nivel = 1500 cm - Distancia
Finalmente teniendo en cuenta ambas formulas y suponiendo que deseamos queel resultado se vuelque sobre el registro R0100.
R0100 = 1500 cm - (100 cm + EA001 * (1500 cm - 100 cm) / 4095)
Luego utilizamos el análisis de algun auxiliar discreto para cargar la fórmula:
b - Se debe controlar el nivel del tanque entre 10 y 14 mts utilizando una bombaimpulsada por un motor eléctrico cuyo contactor está conectado a la salida discreta SD031.El motor de la bomba tiene un sensor de sobrecorriente que está conectado a la entradadiscreta ED001 que indica falla si está ON.
c - Hay una luz de alarma conectada a la salida discreta SD30 que debe pasar a ON siel nivel del tanque es mayor o igual a 14,5 mts.
d - Realizar los diagramas lógicos utilizando los análisis de auxiliares discretas paracontar las veces que el nivel del tanque cae por debajo de los 8 mts y las veces que sube porencima de los 12 mts almacenando dichas cuentas en los registros R0032 y R0033respectivamente.
11
SD031:MOTOR DE BOMBA
SRB
SetRstBitReg
R010001000
01R0101
CMP<R0100
01400
CMP>
SD030 - LUZ NIVEL DE TANQUE MAYOR A IGUAL A 14,5 MTS
R010001450
CMP>
AU001: MENOR A 8 MTS
AU002: MAYOR A 12 MTS
SUM
HabM1M2Rsl
AU001R0032
1R0032
Y
SUM
HabD1D2Rsl
AU002R0033
1R0033
R010000800
CMP<
R010001200
CMP>
AUXXX: CONTADORES
OED001
2 - En una planta de agua mineral se utiliza una bomba centrífuga impulsada por un motoreléctrico, el cual tiene como actuador un relé electromagnético. Para el control de marcha dela bomba hay un pulsador local que solo funciona si está habilitada una llave selectora remota.Para detener el motor hay dos pulsadores, uno local y uno remoto. Además hay un sensor quedetecta si hay sobrecarga de corriente en el motor.
ED001 PULSADOR DE MARCHA LOCALED002 LLAVE SELECTORA REMOTAED003 PULSADOR DE PARADA LOCALED004 PULSADOR DE PARADA REMOTOED005 SENSOR DE SOBRECARGA DE CORRIENTE
SD001 RELE DE BOMBA CENTRIFUGA
SD001 - RELE DE BOMBA CENTRIFUGA
SRB
SetRstBitReg
YED001ED002
01R0001
OED003ED004ED005
e - Programar una pantalla de operador en la que se vea un mímico del tanque con elnivel de líquido, la bomba con su motor, y un cartel que indique el estado del sensor desobrecorriente.
12
3 - Se debe realizar el control automático de una destiladora de solvente clorado. Elesquema es el siguiente:
SOLVENTE DESTILADO
BOMBA B1
PASO CALIBRADO
SOLVENTE LIQUIDOSIN DESTILAR
SOLVENTE GASEOSO
COLECTOR DE SOLVENTEDESTILADO
123456789123456789123456789123456789
ENFRIADOR
VENTILADOR V1
ST2
ST1
VS1
VS3
SOLVENTE
AGUA
SC1TRAMPA DE
AGUA
VS2
GASLLAMAPILOTO
QUEMADOR
PLACA DISIPADORA
ST3
AGUA PARAREFRIGERACION
DE LASERPENTINA
ST4
TANQUE T1
TANQUE T2TANQUE T3
AGUARESIDUAL
TANQUE T4
Descripción del proceso
El solvente sin destilar es calentado hasta la temperatura de ebullición (73ºC) en el tanque T1.El vapor de solvente sube y se condensa en la serpentina cayendo luego al colector desolvente destilado. En la serpentina se condensa vapor y una pequeña parte de agua queproviene de la humedad ambiental. Esta mezcla líquida fluye hacia la trampa de agua, en lacual se separa el agua del solvente por decantación (el agua flota en el solvente). Finalmenteel solvente destilado y sin agua fluye por gravedad hacia el tanque T2.
Detalles para realizar los algoritmos de control
El equipo cuenta con una llave de encendido. Los procesos a controlar son los siguientes:
Calentamiento del solvente: Se utiliza un quemador de gas el cual se enciende y apagamediante la válvula a solenoide VS2. El solvente a destilar es clorado y puede formar ácidoclorhídrico si se eleva su temperatura a 260ºC en presencia de vapor de agua. Para evitar elfuego directo sobre la base del tanque se utiliza una placa disipadora la cual no debesobrepasar los 100ºC. Para medir la temperatura de dicha placa se utiliza el sensor detemperatura ST3.
Enfriamiento del solvente: Se utiliza una serpentina por la que circula agua impulsada porla bomba B1. A la entrada de la serpentina hay un paso calibrado que garantiza la circulaciónde un mínimo de agua. El paso del agua restante es controlado mediante la válvula solenoideVS1.
13
La temperatura de la serpentina se debe mantener entre 25ºC y 35ºC para que condense elvapor de solvente y que a la vez condense la menor cantidad posible de humedad ambiental.Para medir dicha temperatura se utiliza el sensor ST1.El vapor de solvente debe condensarse TODO en la serpentina. Si por alguna causa latemperatura de la serpentina se fuera de rango y el vapor no alcanzara a condensarse, estesaldría hacia la atmósfera, contaminando el ambiente y además perdiéndose el solvente.Para detectar esta situación se utiliza el sensor de temperatura ST4. Si la temperatura en laparte superior de la serpentina supera los 40ºC se debe apagar el quemador.
Enfriamiento del agua: Se utiliza un enfriador equipado con el ventilador V1. Latemperatura del agua en el tanque T4 se debe mantener entre 15ºC y 25ºC. Para medir dichatemperatura se utiliza el sensor ST2.
Separación del agua residual en la trampa de agua: El solvente decanta por tener unpeso específico superior al del agua. De esta manera el agua va quedando atrapada y elnivel de solvente va descendiendo. Para detectar el nivel mínimo de solvente se utiliza elsensor de continuidad SC1, que aprovecha las propiedades de los líquidos en cuestión: Elsolvente es aislante y el agua ionizada es conductora. Entonces cuando el sensor decontinuidad SC1 pasa a ON significa que el nivel de solvente está en el mínimo. En esemomento se debe energizar la válvula a solenoide VS3 durante 30 segundos para quefluya el agua desde la trampa de agua hacia el tanque T3 de agua residual.
Implementación del Control Automático
Los módulos de entrada analógicos tienen una precisión de 255 y los transductores fueronajustados para entregar señal cero a 0ºC y señal máxima a 200ºC.
Entradas discretasED001 LLAVE DE ENCENDIDOED002 SENSOR DE CONTINUIDAD SC1
Salidas discretasSD001 ELECTROVALVULA VS2 - QUEMADORSD002 BOMBA B1SD003 ELECTROVALVULA VS1 - AGUASD004 VENTILADOR V1SD005 ELECTROVALVULA VS3 - TRAMPA DE AGUA
Entradas analógicasEA001 SENSOR DE TEMPERATURA ST3 - CALENTADOREA002 SENSOR DE TEMPERATURA ST1 - SERPENTINAEA003 SENSOR DE TEMPERATURA ST4 - SEGURIDADEA004 SENSOR DE TEMPERATURA ST2 - AGUA REFRIGERACION
14
Registros utilizadosR0001: Temperatura de ST1 en grados centígrados - SERPENTINAR0002: Temperatura de ST2 en grados centígrados - AGUA REFRIGERACIONR0003: Temperatura de ST3 en grados centígrados - CALENTADORR0004: Temperatura de ST4 en grados centígrados - SEGURIDADR0005: Temporizador de Secuencia 1R0010: Registro de Control
Bit 1: Válvula VS2 - QuemadorBit 2: Válvula VS1 - Agua hacia la serpentinaBit 3: Ventilador V1
AUXXX - CONVERSION DE SENSOR ST1 A ºC AUXXX - CONVERSION DE SENSOR ST2 A ºC
AUXXX - CONVERSION DE SENSOR ST4 A ºC
DIV
HabD1D2Rsl
R0001255
R0001
MUL
HabM1M2Rsl
EA002200
R0001 Y
DIV
HabD1D2Rsl
R0002255
R0002
MUL
HabM1M2Rsl
EA004200
R0002 Y
DIV
HabD1D2Rsl
R0003255
R0003
MUL
HabM1M2Rsl
EA001200
R0003 Y
DIV
HabD1D2Rsl
R0004255
R0004
MUL
HabM1M2Rsl
EA003200
R0004 Y
SD001:Válvula VS2 - Quemador
CALENTAMIENTO DEL SOLVENTE
SRB
SetRstBitReg
01R0010
YED001
R000395
OED001
CMP
<=>=R0003
105
CMP
>R0004
40
CMP
15
AUXXX - CONVERSION DE SENSOR ST3 A ºC
ENFRIAMIENTO DEL SOLVENTE
SD002: Bomba de agua B1
SD004: Ventilador V1
SD003: Válvula VS1 - Circulación de agua por la Serpentina
SRB
SetRstBitReg
02R0010
YED001
R000135
OED001
CMP
><R0001
25
CMP
ENFRIAMIENTO DEL AGUA
YED001
SRB
SetRstBitReg
03R0010
YED001
R000225
OED001
CMP
><R000215
CMP
16
SECUENCIA 01
Descarga de la Trampa de Agua
PASO 01
PASO 02
SD005: Válvula VS3 - Descarga de Trampa de Agua
Paso 01 Sec 01 : Si equipo en marcha y sensor SC1 detecta nivel mínimo
Paso 02 Sec 01 : Esperar que transcurran 30 segundos.
YED001ED002
Si el resultado es POSITIVO ir a Paso 2 Si es NEGATIVO ir a Paso1
Si el resultado es POSITIVO ir a Paso 1 Si es NEGATIVO ir a Paso2
P0201P0201R0005
3000
TMCHabRstRegLim
YP0201
Paso 02 de secuencia 01
17
Separación del agua residual en la trampa de agua
Las variables de Tiempo fueron configuradas de la siguiente manera:R9993 - AñoR9994 - MesR9995 - Día del mesR9996 - HoraR9997 - MinutosR9998 - SegundosR9999 - 1:Domingo 2:Lunes 3:Martes 4:Miércoles 5:Jueves 6:Viernes 7:Sábado
Trabajo Práctico Nro 6
1 - Se debe realizar el encendido automático de las luces de un establecimiento. Todas las luceshan sido configuradas y cableadas a la misma salida discreta. En el tablero eléctrico hay una llavede encendido y una llave de prueba de lámparas.Las luces deben encender de lunes a viernes de 07:45 a 12:20 y de 13:45 a 19:00. Los díassábado y domingo deben encender de 19 a 23:30.
Entradas discretasED001 LLAVE DE ENCENDIDOED002 LLAVE DE PRUEBA DE LAMPARAS
Salidas discretasSD001 GRUPO DE LUCES
AU002 : de Sábado a DomingoAU001:De Lunes a Viernes
Y>=
CMP
<=
CMPR9999
6
R99992 O=
CMP
=
CMPR9999
1
R99997
AU003:De 07:45 a 12:20
SRB
SetRstBitReg
01R0001
YR9996
7
CMP
=CMP
=YR9996
12
CMP
=R9997
20
CMP
=
R999745
18
AU005:De 19 a 23:30
AU004:De 13:45 a 19:00
SD001: Grupo de Luces
SRB
SetRstBitReg
02R0001
YR9996
13
CMP
=CMP
=R999745
R999619
CMP
=
SRB
SetRstBitReg
03R0001
R999619
CMP
=YR9996
23
CMP
=R9997
30
CMP
=
YOO
ED002ED001
YAU001
OAU003AU004Y
AU002AU005
19
2 - En el mismo establecimiento de debe automatizar el timbre interno. En el tablero eléctrico hayuna llave de encendido y una llave de prueba del timbre. Debe sonar de lunes a viernes desdelas 08:00:00 hasta las 08:00:10, luego desde las 10:30:00 hasta las 10:30:10 y finalmente desdelas 12:00:00 hasta las 12:00:10. Los días sábado y domingo no debe sonar.Nota: Para determinar si es de Lunes a Viernes se utiliza el auxiliar uno del ejercicio anterior.Nota 2: La configuración de las Variables de Tiempo es igual que en el ejercicio anterior.
Entradas discretasED003 LLAVE DE ENCENDIDOED004 PRUEBA DEL TIMBRE