Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Objetivo de la Leccin Presentar los parmetros utilizados para cuantificar los recursos del PLC, as como hacer una introduccin de aquellos recursos que son relevantes en la programacin de los PLC. Lista de Temas Ancho de la memoria Capacidad de memoria Caractersticas de los contadores Caractersticas de los temporizadores Resolucin de los conversores ADC y DAC Reloj de tiempo real Ciclo de funcionamiento del PLC Modo de operacin del PLC Tiempo de proceso ARQUITECTURA DEL PLC
A continuacin, a manera de complemento al estudio de la arquitectura del PLC, se presentan algunos tpicos que deben tener en cuenta los programadores de aplicaciones.
Ancho de la Memoria Nmero de bits que conforman una posicin de memoria; es usual que las memorias tengan anchos de 8 o 16 bits. En la tabla a continuacin, se presentan las denominaciones dadas a grupos de bits; son nombres convencionales en el mundo informtico as como en la vida cotidiana, llamamos docena a un grupo de 12: Nmero de Denominac Smbo bits in lo 4 Nibble 8 Byte B 16 Word W 32 Doble Word DW 1
Cabe aclarar, que el trmino Word es usado implcitamente para grupos de 16 bits, sin embargo, cuando un fabricante utiliza grupos de bits no descritos en la tabla anterior puede emplear la expresin para describir el grupo siempre y cuando haga la salvedad de a cuantos bits se refiere en sus documentos. Es el caso de memorias con ancho de 14 bits, se pueden mencionar como palabras (Words) de 14 Bits. Capacidad de Memoria Indica la cantidad de posiciones que posee la memoria. Para estas cantidades tambin existen convenciones: Denomina Smbo cin lo 1.024 Kilo K 1048.576 Mega M 1073741.82 Giga G 4 Cantidad
Los valores de capacidad y ancho se integran en una sola notacin. Por ejemplo, si una memoria tiene 2.048 posiciones con un ancho de 8 bits se dice que su capacidad es de 2K Bytes o 2KB. A esta ltima, se le puede agregar la especificacin del tipo de memoria. As se puede hablar, por ejemplo, de una RAM de 8MB. Caractersticas de los Contadores Existen dos tipos de Contadores: los Implementados en Memoria (llamados simplemente contadores) que ejercen la funcin de contar por medio de ordenes del programa de usuario y los Rpidos (o Mdulos Contadores descritos en la leccin anterior) que cuentan de manera automtica sin la necesidad de ordenes de programa. Para que un Contador Implementado en Memoria cuente los flancos ascendentes presentes en la entrada I1.3 se escribe en el programa la siguiente instruccin: SI I1.3 = FLANCO ASCENDENTE, ENTONCES INCREMENTE CONTADOR 1. Si antes de que se ejecute la instruccin han ocurrido dos flancos, dos eventos, el contador slo se incrementara en 1 y no en 2, como sera lo correcto; un contador rpido no presenta este problema. Los contadores permiten establecer los siguientes parmetros de configuracin de desempeo: 2
Conteo Ascendente: la cuenta se incrementar cada vez que llega un pulso de conteo a su entrada. Conteo Descendente: la cuenta se decrementa cada vez que llega un pulso de conteo a su entrada. Valor Inicial: Establece el valor de inicio de la cuenta. Mdulo de Conteo: Indica el valor de la cuenta, en el cual el contador reinicia su ciclo de conteo. Por ejemplo, un contador ascendente de mdulo 60 y valor inicial 0 (cero), contar desde 00 (doble cero) hasta 59 cclicamente. Es decir, el valor que sigue a 59 es 0 (cero). Tenga presente que se dice mdulo 60 pues entre 00 (doble cero) y 59 hay 60 pasos. Cargar Valor Inicial: Ordena que el valor establecido como inicial se cargue a la cuenta. Reset: Inactiva el contador, y la cuenta inicia en 0 (cero). Tipos de salida de un contador: Q: indica que el contador ha vuelto a la cuenta 0 despus de alcanzar el valor del mdulo de conteo. Cont: contiene el valor de la cuenta, dependiendo de las opciones disponibles este valor se puede leer en binario, BCD, etc. Vea en un bloque funcional como trabaja un contador:
Rango de los Contadores: Indica cuantos pasos distintos de cuenta puede tener un contador, se presenta como un valor entero o en el nmero de bits que componen el registro de conteo. En la tabla a continuacin, se presenta el nmero de bits y el rango de conteo correspondiente. Bits 1 4 8 10 11 Rangos de Conteo 01 0 15 0 255 0 1.023 0 2.047
Los contadores se ubican en cascada para obtener rangos superiores a los disponibles. Caractersticas de los Temporizadores Su funcin es la de efectuar un retardo durante un tiempo t. Poseen una entrada de disparo (Trigger), una entrada de reposicin R y una salida de temporizador Q. Los tipos ms comunes de temporizadores son: Por Impulso, de Retardo de Conexin, de Retardo de Desconexin y Monoestable. Temporizador por Impulso: La salida se activa a partir del momento en que se activa la seal de disparo y sigue as por un tiempo t. La duracin del disparo debe ser mayor o igual a t, de lo contrario la temporizacin se suspende.
Temporizador de Retardo de Conexin: La salida se activa un tiempo t despus de activado el disparo y se mantiene activa mientras este presente la seal de disparo.
Temporizador de Retardo de Desconexin: La salida se activa desde el momento en que se presenta la seal de disparo, y se desactiva un tiempo t despus de desaparecer el disparo.
Temporizador Monoestable: La salida se activa en el momento en que se presenta el disparo y esta activa durante t segundos sin importar la duracin que tenga el pulso de disparo.
Resolucin de los Conversores Anlogo/Digital - ADC El Conversor ADC es un componente obligado de las entradas anlogas; el resultado de la conversin es un valor numrico directamente proporcional a la amplitud de la seal anloga presente en la entrada. En cualquier caso se aplica la frmula siguiente: Resolucin = Rango / 2 ^ # de bits La amplitud de la seal en la entrada se calcula por: Valor de Entrada = Resolucin * Resultado Numrico
Resolucin de los DAC Para las salidas digitales las consideraciones de resolucin son igual que para las entradas digitales. La amplitud de la seal de salida sera: Valor de Salida =Resolucin * Entrada Numrica La resolucin de los Conversores ADC y DAC depende del nmero de bits que conforman el registro numrico y el rango admisible en la entrada/salida anloga, como se muestra en la siguiente tabla:
-10 - +10 V
0 20 mA
Reloj de Tiempo Real (RTC) Reloj Calendario de presencia obligatoria en todos los PLC modernos, permite consultar fechas (ao, mes, da) y horas (hora, minutos, segundos, milisegundos) actuales y programar tareas para que ocurran en determinada fecha y hora; su funcionamiento no depende del estado de alimentacin de energa del sistema pues cuenta con una pila elctrica interna.
Ciclo de Funcionamiento del PLC. Conformado por cuatro etapas: 1. Carga los valores de las entradas digitales en la memoria imagen de entradas. 2. Ejecuta el programa de usuario. 3. Cumple rutinas propias del mantenimiento del sistema. 4. Carga la memoria imagen de salidas hacia las salidas digitales. Este ciclo se repite ininterrumpidamente sin importar cual sea el programa del usuario.
Memoria Imagen de Entradas: Bloque de memoria que contiene el estado de las entradas digitales del PLC. Cuando se ejecuta alguna instruccin que debe comprobar el estado de una entrada digital, en realidad se revisa el valor correspondiente en la memoria imagen y no el del circuito de entrada.
Dado que la seal del circuito de entrada puede cambiar de valor en cualquier momento, la memoria imagen mantiene un nico valor para ser usado por el programa y hacer que este se ejecute de manera coherente. De lo contrario, ocurriran inconsistencias que afectaran gravemente la lgica de control y por ende el sistema fsico bajo control. A continuacin se desarrolla un ejemplo que justifica su existencia. Se programa el encendido simultneo de 2 motores: uno conectado a la salida Q. y el otro a Q.1, a partir del momento en que el pulsador acoplado a la entrada I. se activa. Si el PLC no usa memoria imagen podra ocurrir lo siguiente: No se carga la memoria imagen. I. est ACTIVO. Al ejecutar la instruccin SI I. = ACTIVO ENTONCES O. ACTIVO. Ordena que se encienda O.. I. cambia a estado INACTIVO. Al ejecutar la instruccin SI I. = ACTIVO ENTONCES O.1 ACTIVO. No ordena el encendido de O.1 pues encontr la entrada inactiva .
El resultado: Fallo en el programa. Si el PLC usa memoria imagen: Al cargar la memoria imagen, I. est ACTIVO. Al ejecutar la instruccin SI I. = ACTIVO ENTONCES O. = ACTIVO. Ordena que se encienda O.. I. cambia a estado INACTIVO, pero en la memoria imagen aparece ACTIVO. Al ejecutar la instruccin SI I. = ACTIVO ENTONCES O.1 = ACTIVO. Ordena el encendido de O.1 pues encontr la imagen de la entrada ACTIVA.
Bloque de memoria que contiene los valores que el programa desea que estn presentes en los circuitos de salidas digitales. De hecho el programa acta sobre las salidas, indirectamente, a travs de la memoria imagen de salidas. Modos de Operacin del PLC Los cuatro son los modos de operacin genricos de los PLC: RUN, STOP, ERROR y POWER-ON. RUN: El PLC ejecuta el programa de usuario como modo normal de operacin, se cumple el ciclo de funcionamiento explicado con anterioridad. STOP: El PLC ignora el programa de usuario y efecta sus programas internos. En ste modo el usuario puede monitorear y / o programar el PLC desde un PC. ERROR: El PLC detiene la ejecucin del programa de usuario, pues sus programas internos encuentran un error de programacin o de hardware. Como en el caso del modo STOP, se inactiva todas las salidas y no se permite llevar a acabo el modo RUN hasta tanto no se resuelva el problema que caus el error. POWER-ON: Este modo ocurre a partir del momento en que se energiza el PLC; este utiliza el modo POWER-ON para autoconfigurarse y hacer comprobaciones de estado del sistema. Una vez realizadas las rutinas de inicio asumen segn las condiciones del sistema, uno de los otros tres modos. Las reglas siguientes permiten que el programa interno pase de un modo a otro el PLC: Pasa a modo ERROR desde cualquiera de los otros tres modos, si se ha encontrado un error. De modo STOP a RUN y viceversa segn se indique en el control de operario dispuesto para tal fin o desde el PC. De modo POWER-ON a modo STOP o RUN segn se indique en el control de operario dispuesto para tal fin o desde el PC. Sale de modo ERROR a modo STOP o RUN segn se indique en el control de operario dispuesto para tal fin o desde el PC, una vez se haya solventado el error.
Tiempo de Proceso Se llama tiempo de proceso del PLC, a aquel que se lleva en realizar un ciclo de funcionamiento, es decir, es el tiempo que tarda desde que se carga la memoria
imagen de salidas hasta que nuevamente se vuelve a cargar. Esta medida indica que tan rpido puede ser un PLC y para que aplicaciones sirva. El tiempo de proceso de los PLC est en el orden de las decenas de milisegundos, aunque en los ms modernos es del orden de las unidades de milisegundos. Reflexiones Sobre lo Visto: Los fabricantes de PLC han hecho un gran esfuerzo para integrar los sistemas basados en microprocesadores a las prcticas industriales. Algunos recursos de los PLC ya son conocidos en el mbito industrial como es el caso de los Temporizadores y Contadores. En esta leccin no abarcamos el estudio de todos los recursos posibles, nos limitamos a presentar una introduccin a los mismos. En el siguiente captulo haremos nfasis en el aprendizaje de los restantes recursos y en la programacin.
Ejercicios: Ejercicio 1: Implemente un contador de monedas de $500 pesos. Datos de entrada: El sensor deja pasar 4000 monedas por minuto. Tiempo de proceso 10mS. Determine s: Puede usar para el efecto un contador implementado en memoria o es necesario un contador rpido. La tolva del contador de monedas puede contener hasta 7000 monedas, de cuantos bits, como mnimo, debera ser el contador utilizado? Ejercicio 2. Para el mismo caso del Ejercicio 1 se desea almacenar en memoria las ltimas 100 cuentas realizadas. Cuntos bytes de memoria RAM seran necesarios para almacenar dicha informacin? Ejercicio 3. Realice la asignacin de circuitos y el esquema de conexiones del contador de monedas.
Presentar en perspectiva los lenguajes de programacin utilizados para programar aplicaciones en PLC.
Lista de Temas
Lenguajes de Programacin Clasificacin de los Lenguajes de Programacin Niveles de los Lenguajes De Bajo Nivel De Alto Nivel Niveles de los lenguajes especficos para PLC Lenguajes de Programacin para PLC Listas Plano de Contactos Diagrama de Bloques Funcionales Organigrama de Bloques Secuenciales
LENGUAJES DE PROGRAMACIN
La diversidad de lenguajes obedece a que los programadores de PLC poseen formacin en mltiples disciplinas. Los programadores de aplicaciones familiriarizados con el rea industrial prefieren lenguajes visuales, por su parte quienes tienen formacin en electrnica e informtica se prefieren, inicialmente, los lenguajes escritos.
Niveles de los Lenguajes: Los lenguajes de programacin de sistemas basados en microprocesadores, como es el caso de los PLC, se clasifican en niveles; al microprocesador le corresponde el nivel ms bajo, y al usuario el ms alto.
Lenguajes de Bajo Nivel: Lenguaje de Mquina: cdigo binario encargado directamente en el microprocesador de la ejecucin del programa. Lenguaje Ensamblador: lenguaje sinttico de sentencias que representan cada una de las instrucciones que puede ejecutar el microprocesador. Una vez diseado un programa en lenguaje ensamblador es necesario, para cargarlo en el sistema, convertirlo (compilarlo) a lenguaje de mquina. Los programadores de lenguajes de bajo nivel deben estar especializados en microprocesadores y dems circuitos que conforman el sistema.
Lenguajes de Alto Nivel: Se basan en la construccin de sentencias orientadas a la estructura lgica de lo deseado; una sentencia de lenguaje de alto nivel representa varias de bajo; cabe la posibilidad que las sentencias de un lenguaje de alto nivel no cubran todas las instrucciones del lenguaje de bajo nivel, lo que limita el control sobre la mquina. Para que un lenguaje de alto nivel sea legible por el sistema, debe traducirse a lenguaje ensamblador y posteriormente a lenguaje de mquina.
Caractersticas
Nivel Alto Acceso a los Recursos Preferencias de Uso Profesionales en reas Restringido a los de: automatizacin smbolos que industrial, mecnica y proporciona el lenguaje. afines. Profesionales en reas Total a los recursos de de: electrnica e programacin. informtica.
Escritos
Bajo
Caracterstica
Lista de instrucciones
Ejemplos*
IL AWL STL IL/ST LADDER LD KOP FBD FBS FUD AS SFC PETRI GRAFCET
Tipo Nivel
Escrit o Bajo
Plano Contactos.
de
Diagrama Elctrico
Alto
Diagrama de Diagrama Lgico Bloques Funcionales. Organigrama De Bloques Diagrama Algortmico Secuenciales
Visual
Listas: Lenguaje que describe instruccin por instruccin, lo que debe hacer el PLC.
Plano de Contactos: Representa el funcionamiento deseado, como en un circuito de contactores y rels, fcil de entender y utilizar para usuarios con experiencia en lgica alambrada. En general, nos referimos a este lenguaje como LADDER (escalera), ya que la forma de construccin de su esquema se asemeja a una escalera.
Organigrama De Bloques Secuenciales: Explota la concepcin algortmica que todo proceso cumple con una secuencia. Estos lenguajes son los ms utilizados por programadores de PLC de mayor trayectoria.
Lista de Temas Ambientes de Programacin Descarga e Instalacin del WINSPS Tutora del WINSPS Arrancar el Programa Crear un Proyecto Nuevo Definir Smbolos Escribir Programas IL Equivalente en Lenguaje de Contactos Equivalente en Lenguaje de Bloques Funcionales Escribir Programas en Lenguaje de Contactos Escribir Programas en Lenguaje de Bloques Funcionales Escribir Programas de Organigramas de Bloques Secuenciales Generar la Cadena de Ejecucin
AMBIENTES DE PROGRAMACIN
Se refiere a los recursos de software externos al PLC necesarios para desarrollar las aplicaciones y poder cargarlas en el PLC en forma de lenguaje de mquina. Dichos recursos obedecen a la siguiente subdivisin: Mquina de Desarrollo: es donde el diseador de software desarrolla los programas. Puede ser un PC o un programador de mano. Programas de Desarrollo: Instalado en la mquina de desarrollo permite que los programas se escriban en alguno de los lenguajes disponibles.
Interfaz de Comunicacin: una vez realizado un programa la interfaz de comunicacin permite la transferencia del mismo hacia el PLC. En muchos casos la interfaz tambin permite la comunicacin desde el PLC hacia la mquina de desarrollo, esto da la posibilidad de que programas en el PLC puedan ser ledos en los programas de desarrollo y que se pueda monitorear la ejecucin de la aplicacin as como depurar los programas de aplicacin paso a paso. Para el presente curso se ha escogido el ambiente de programacin WINSPS versin 3.22 en espaol. Las dos principales razones por las cuales ha sido escogido el WINSPS son: permite trabajar con los cuatro lenguajes de programacin desarrollados en el curso y en un capitulo posterior podrs realizar prcticas remotas con el PLC CL200. Descarga e Instalacin del WINSPS: En el sitio WEB http://193.108.217.183/ATProducts/plcwebsite/englisch/ podrs descargar a tu equipo la aplicacin WINSPS versin 3.22 o posterior. A continuacin procede a instalar el programa respondiendo consecuentemente a las indicaciones del Asistente de Instalacin.
Si no has aun no has obtenido una licencia del programa emerger un mensaje haciendo nfasis sobre esta situacin
En el campo de ruta de proyecto establece la ruta de tu directorio de proyectos. Para navegar has clic en el botn .
Si no hay una ruta predefinida en el campo de ruta de biblioteca debes crear un nuevo directorio y especificarlo en este campo. Crear un Proyecto Nuevo Has clic en el botn Para abrir el formulario:
Has clic en
Se pedir confirmacin acerca de la creacin de nuevos archivos, responde que si a cada una. Al finalizar aparecer el editor WINSPS.
En el men Archivo has clic en En el campo Nombre del Fichero escribe: PROGRAMA.
Has clic en Se te preguntar si deseas crear el mdulo PROGRAMA.PXO. Contesta S. En el control de lista de archivos has clic en el archivo OM1.PXO para editarlo.
-PROGRAMA. Como se
En el extremo izquierdo de la lnea aparece un cdigo de error en rojo y en la barra de estado (abajo) se identifica el error: Operando de origen desconocido. Esto es por aun no hemos definido el smbolo PROGRAMA. Has clic en el icono Aparece la plantilla de definicin de smbolos PROJECT.SXS
FC0
Ubcate en regin de definicin de mdulos funcionales y escribe PROGRAMA (separado por un solo tabulador).
Vuelve al Editor de Mdulos de Programa haciendo clic en Ahora la sentencia escrita en el mdulo OM1.PXO no declara error.
Has clic en PROGRAMA.PXO en el control de lista de archivos para volver a tu programa. Definir Smbolos En la plantilla de smbolos (clic en ) localiza la regin para escribir smbolos de usuario y define los siguientes:
Guarda todo (
) y vuelve a tu PROGRAMA.PXO (
).
Escribir Programas IL Escribe las tres lneas de programa y posiciona el cursor antes de la instruccin EM.
Con el botn desplzate a la Red 2, asgnale el ttulo Parada y escribe el programa que se muestra.
Programa Equivalente en Lenguaje de Contactos Has clic en el botn Aparece el equivalente de la Red 1 en Lenguaje de Contactos.
10
Escribir Programas en Lenguaje de Contactos Ubcate en la Red 1. En el editor de Lenguaje de Contactos ( detrs del botn insertar rama ) has clic en la opcin
Ubcate en el nombre del contacto normal abierto y escribe START. Pulsa ENTER.
11
Con lo cual se completado la primera Red. Has clic en el botn de desactivar cuadrcula Pasa a la Red 2.
Escribir Programas en Lenguaje de Bloques Funcionales Has clic en el botn de Lenguaje de Bloques Funcionales pasar al editor FBD. Introduce una compuerta AND utilizando el botn para
Nombra la primera entrada STOP. Posiciona el cursor en la patilla de la segunda entrada y brrala con la tecla <Supr>.
Lleva el cursor hasta el smbolo de bifurcacin de salida e introduce un flip-flop de Reset prioritario haciendo clic en botn .
12
Guarda todo
Escribir Programas de Organigramas de Bloques Secuenciales En el men Cambio has clic en la opcin Preferencias Con lo cual aparece de nuevo la pantalla de configuracin de proyecto. Crea un nuevo proyecto para el CL150 llamado MiPrimerSFC Escribe MiPrSFC en el campo lenguaje de ejecucin.
Nota: Usando el Explorador asegrate que el directorio indicado en la Ruta de Biblioteca (p.e. Biblioteca150) contenga los archivos: Btsmadap.pxl y Kette150.pxl. Tambin que el directorio donde se encuentre el archivo
13
WinSPS.exe (p.e. C:\Program Files\Bosch\WinSPS) se encuentre el archivo winsps.ini. Si no es as crea el archivo winsps.ini con el Block de Notas o con algn editor ASCII y escribe la lnea: /K90. Guarda el winsps.ini y cierra el Block de Notas. Cierra el WINSPS, vuelve abrirlo y realiza los dos pasos anteriores para crear el proyecto.
Has clic en En la plantilla de smbolos (clic en ) localiza la regin para escribir smbolos de usuario y define los siguientes:
Guarda todo (
Has clic en el botn de paso / transicin para agregar un segundo paso (1N2)
14
Posiciona el cursor en la entrada del smbolo de Condicin de Accin del primer paso.
Agrega una condicin AND picando en el botn Con el cursor en la entrada de una de las dos Condiciones de para invertir la condicin. Accin, has clic en el botn
En las Condiciones de Accin escribe START y STOP. En la Accin escribe MOTOR. Ubica el cursor en el smbolo de tipo de Accin.
Y cmbiala a tipo SET con el botn cambiar Accin de Paso Completa el programa como se indica en la imagen:
15
Generar la Cadena de Ejecucin En el men Elementos del lenguaje elige la opcin Parmetros de Cadena En el formulario que aparece has los cambios para que quede como se muestra:
16
Has clic en
y luego en
En el men Archivo has clic en Crear nuevo proyecto Aparece un barra de progreso y por ltimo un mensaje que declara que el proyecto fue creado con xito. Has clic en En el men Archivo elige Generar cadena..... Aparece el formulario de Generar Cadena de Ejecucin Activa las casillas como se muestra:
17
En el formulario de resultado de la generacin de cadena se encuentra el mensaje de que el archivo ketten.pxo es errneo.
Has clic en Lo cual nos lleva al mdulo de programa donde est el error
-CADENA150,5 por CM
En realidad este error de traduccin al espaol, es posible que en prximas versiones ya est depurado. Inserte tabulaciones en las siguientes 5 lneas a partir del operando para que se eliminen los errores PF.
18
Ejercicios
Los temas de la Ayuda del WINSPS te permitirn profundizar mucho mas en el manejo del entorno de programacin, recuerda que en esta leccin te hemos mostrado los mnimos pasos necesarios para iniciar a utilizar el software pero aun quedan muchas caractersticas que debes aprender. Te sugiero que comiences por el tema Introduccin al WINSPS de la Ayuda. No tardes en escribir los programas del curso en WINSPS. Y empezar a disear los tuyos propios.
OPERACIONES LGICAS
Las operaciones lgicas ms utilizadas son: AND, OR, NOT, EXOR. A continuacin se presentan las tablas de verdad que las definen:
AND
ENTRADAS SALIDA
OR
ENTRADAS SALIDA
EXOR
ENTRADAS SALIDA
NOT
ENTRADA SALIDA
A F F V V
B F V F V
Y F F F V
A F F V V
B F V F V
Y F V V V
A F F V V
B F V F V
Y F V V F
A F V
Y V F
La operacin lgica AND -conjuncin- entrega como resultado V si todas las entradas son V; se aplica en situaciones en que se requiere realizar una accin si y slo s se cumplen un determinado nmero de condiciones. En lenguaje de contactos se realiza disponiendo contactos en serie. Ejemplo: En el circuito se activa Q1.2 cuando I1.0, I1.1 e I1.2 son verdaderas. De hecho, el PLC evala la rama ejecutando la operacin lgica Q1.2 = I1.0 AND I1.1 AND I1.2.
La operacin lgica OR disyuncin- entrega como resultado V siempre que alguna de las entradas sea V, lo que se logra poniendo los contactos en paralelo.
La operacin lgica NOT inversin- entrega como resultado el estado contrario al presente en la entrada, esto se logra con el uso de Contactos Normal Cerrado. Ejemplo: Funcin y operacin realizada es Q1.0 = NOT I1.0.
La EXOR - OR Exclusiva- es V si alguna de las entradas, pero nunca ambas, es V tambin; se puede decir que es V si y slo si las entradas son distintas. Analicemos detenidamente el circuito que la realiza. Ejemplo: Para realizar la operacin Q1.0 = I1.0 EXOR I1.1, se debe efectuar una combinacin de operaciones AND y OR: Q1.0 =((I1.0 AND (NOT I1.1)) OR ((NOT I1.0) AND I1.1)). En el lenguaje de contactos en el cual las operaciones lgicas deben resolverse a partir de contactos normal abierto y normal cerrado, este es un caso frecuente.
Ejemplo 1: Elevador de Piezas Recordemos el problema del Elevador de Piezas, presentado en una leccin anterior: En una etapa de un proceso de fabricacin se desplazan piezas de una banda transportadora a otra banda, la segunda ubicada a mayor altura. Para esto se dispone de un elevador basado en un cilindro neumtico (Z1). Cuando el elevador llega a su altura mxima, otro cilindro (Z2) empuja la pieza hasta la segunda banda transportadora. Descripcin de la secuencia: a. El sistema est en su posicin inicial cuando ambos cilindros estn retrados y no hay pieza sobre la plataforma del elevador. b. Llega una pieza a la plataforma del elevador, el detector de proximidad S0 la detecta y el cilindro Z1 debe empezar a moverse. c. El sensor S2 determina que Z1 lleg a su fin de carrera, el cilindro Z2 debe empezar a moverse. d. Al llegar a su fin de carrera (S4 detecta esta posicin) Z2 debe empezar a retraerse; de hecho, empuj la pieza hacia la segunda banda transportadora. e. S3 determina que el cilindro Z2 llega a su posicin de inicio de carrera, Z1 empieza a retraerse. f. S1 detecta a Z1 en inicio de carrera, el sistema estar de nuevo en posicin inicial. g. El ciclo se repite cuando llega una nueva pieza a la plataforma del elevador. Asignacin de circuitos: Sensores y Actuadores S0 Entrada/Salida I0.0 Descripcin Funcional Detector de proximidad. Determina que hay una pieza lista para ser elevada. Detector fin de carrera. Determina que el cilindro Z1 se halla en su
S1
I0.1
S3
I0.3
S4
I0.4
Y1 Y2
Q0.0 Q0.1
Esquema de conexiones: Con la descripcin de la secuencia se establecen las preposiciones lgicas para determinar el diagrama de contactos. a. Posicin Inicial: S0= F, S1= V, S3 = V. b. Avance de Z1: S0= V, S1= V, S3 = V. Por lo tanto, (SET Y1)= S0 AND S1 AND S3. Y1 debe ser referencia de una Bobina de Puesta a Uno, de lo contrario al avanzar Z1 desactivara S1 lo cual provocara que la preposicin fuera Falsa y el cilindro se regresara sin haber alcanzado su posicin final. c. Avance de Z2: S2= V, S3= V. As (SET Y2)=S2 AND S3. Y2 Bobina de Puesta a Uno, por la consideracin anterior. d. Retroceso de Z2: S4= V. Una bobina de Puesta a Cero acciona el retroceso de Z2. (RESET Y2)= S4. e. Retroceso de Z1: S2= V, S3= V. Esta condicin es idntica al avance de Z2, de dejarse as el elevador iniciara el descenso antes de que la pieza sea empujada. Para diferenciarla agregaremos un bit en memoria (M0.0) que indique que se trata del paso e de la secuencia y no el paso c. Este bit se activa en el paso d, (SET M0.0)= S4. Entonces, (RESET Y1)= S2 AND S3 AND M0.0 y modificaremos la operacin del paso c por (SET Y2) = S2 AND S3 AND (NOT M0.0). f. Posicin Inicial: S0=F, S1=V, S3=V. Al regresar a la posicin inicial aprovechamos para restablecer el bit M0.0. (RESET M0.0)= S1 AND S3.
El programa ha sido realizado en WINSPS versin 3.22, se introdujo una tabla de asignacin de smbolos que permite que el esquema sea ms legible. Adems se separ el programa en tres redes o circuitos: avance, bit de estado y retroceso, lo cual no slo permite analizar con facilidad el esquema, sino que tambin da orden a la ejecucin del programa. La instruccin de fin de mdulo (EM) al final del programa es de uso obligatorio en la mayora de los ambientes de programacin para PLC. Ejemplo 2: Arranque y Parada Una aplicacin clsica en automatizacin industrial es la de proveer a un motor elctrico el control de arranque y parada. Dado: Motor M1. Contacto de rel trmico X1. Contactor K1 conectado al motor. Pulsador de arranque RUN. Pulsador de parada STOP. Lmpara de emergencia LAMP.
Al pulsar RUN se activan la bobina K1 y el contacto normal abierto K1, lo cual provoca una retencin de K1 haciendo que el motor quede encendido permanentemente a pesar de que se suelte RUN, para apagarlo se oprime STOP momentneamente. El motor tambin se apaga a causa del rel X1 y en este caso enciende la lmpara LAMP. Veamos a continuacin otra posible solucin:
CURSO DE PLC LENGUAJE DE PLANO DE CONTACTOS Operaciones Lgicas 7 Reflexiones Sobre lo Visto:
El conocimiento de las operaciones lgicas nos permite un mejor desempeo en el anlisis y diseo de programas en Lenguaje de Contactos. En este nivel del curso ya son capaces de realizar programas en Lenguaje de Contactos para una gran cantidad de aplicaciones. En la siguiente leccin aumentaremos este potencial aprendiendo sobre el uso de los temporizadores y contadores. Intenta una bsqueda en Internet para obtener programas que te permitan escribir aplicaciones para PLC. Te recomiendo el WINSPS versin 3.22 en espaol el cual puedes descargar en la siguiente direccin: http://193.108.217.183/ATProducts/plcwebsite/englisch/ Ejercicios: 1. Las operaciones NAND, NOR, EXNOR y YES son las negadas de la AND, OR, EXOR y NOT respectivamente. Realice las tablas de verdad para cada una de las ramas del siguiente circuito e identifique a que operacin lgica corresponden.
2. Disee un programa para la siguiente aplicacin: Una troqueladora hidrulica posee un cilindro hidrulico de doble efecto Z1 para el impacto, una electro vlvula biestable con bobinas Y1 para extender el cilindro (impacto), y Y2 para retraer el cilindro, un sensor S0 que detecta que la pieza a
En la Identificacin del Paso se antepone a la N el nmero de cadena y posterior a ella el nmero de paso, debajo se puede escribir un nombre simblico para el paso. Mientras el paso est activo se realiza la accin siempre y cuando la Condicin de Accin sea verdadera. El paso se inactiva cuando se cumple la condicin de transicin. Con lo cual el programa activar el siguiente paso de la cadena. Si la Condicin de Transicin se hace presente antes que la Condicin de Accin la Accin de Paso no se lleva a cabo. Ejemplo:
Inmediatamente despus del Arranque se activa el Paso 1, mientras est activo se evaluaran las Condiciones de Accin y Transicin. Cuando el operario presione el pulsador RUN1 provocar que la Condicin de Accin sea evaluada como verdadera lo cual har que se ejecute la Accin del Paso: Encender el Motor 1.
Cuando el Motor 1 active su fin de carrera FC_1 se valida la condicin de transicin con los cual el paso 1 deja de ser activo haciendo que se apague el Motor 1 y que el paso 2 se convierta en activo. Al activarse el Paso 2 sus Condiciones de Accin y Transicin sern ahora las evaluadas. Cuando el operario presione el pulsador RUN2 el Motor 2 se enciende. Al alcanzar el fin de carrera FC_2 se apaga dicho motor y se desactiva el paso 2. As, se ha llegado al Fin de Cadena; el programa procede a activar el Paso que este posicionado en el Arranque de Cadena (Paso 1). Relaciones Lgicas de las Transiciones y Combinacin de las Acciones de Paso:
En el lenguaje SFC es posible hacer que las Condiciones de Transicin sean relaciones lgicas complejas, tambin que la Accin de Paso est compuesta de varias acciones simples.
En los casos para los cuales la Accin de Paso debe ejecutarse sin la mediacin de una condicin especfica, la Condicin de Accin debe validarse con un valor verdadero, para lo cual se usa el smbolo LOG1. El mismo procedimiento se lleva a cabo cuando se quiere que una Transicin ocurra de manera incondicional.
Si se cumple la Condicin de Accin la variable en el campo de Accin ser verdadera nicamente mientras el Paso est activo. Ejemplo:
Para que el Motor 1 se mantenga encendido el operario debe mantener el pulsador oprimido. Si lo suelta el motor se apaga pues la Condicin de Accin se evala como falsa. El operario pierde el control sobre el pulsador cuando el motor accione el sensor de fin de carrera FC_1. Accin de Puesta a Uno:
Si se Cumple la Condicin de Accin la variable en el campo de Accin ser verdadera inclusive despus de que el Paso se inactive. Ejemplo:
El motor se enciende al pulsarse RUN1, y continuar encendido a pesar de que se suelte el pulsador o se accione el fin de carrera. Accin de Puesta a Cero:
Si se cumple la Condicin de Accin la variable en el campo de Accin ser verdadera inclusive despus de que el Paso se inactive.
Si se cumple la Condicin de Accin la salida del temporizador indicado en el campo de Accin se har verdadera durante el tiempo indicado en el campo inferior izquierdo. Si el Paso se desactiva antes de que termine el tiempo la salida se har falsa. Ejemplo:
Si el interruptor Retar est accionado se quiere retener la ejecucin del Paso 2 durante 4 segundos. El paso se desactiva al cabo del los 4 segundos cuando se oprima el pulsador Stop.
Si se cumple la Condicin de Accin la salida del temporizador indicado en el campo de Accin se har verdadera durante el tiempo indicado en el campo inferior izquierdo sin importar si el Paso se desactiva.
Si la Condicin de Accin es verdadera la salida del temporizador se har verdadera un tiempo t despus de iniciarse la accin siempre y cuando el Paso no se inactive. El temporizador se describe en el campo de Accin y el tiempo t en el campo inferior izquierdo.
Si la Condicin de Accin es verdadera la salida del temporizador se har verdadera un tiempo t despus de iniciarse la accin sin importar que el Paso se inactive. El temporizador se describe en el campo de Accin y el tiempo t en el campo inferior izquierdo.
Si la Condicin de Accin es verdadera el contador indicado en el campo de Accin se carga con el valor inicial descrito en el campo inferior izquierdo.
Si se cumple la Condicin de Accin el contador indicado en el campo de Accin se reinicia con cero.
Si se cumple la Condicin de Accin se ejecutan las instrucciones de otros lenguajes referidas en el campo de Accin. Los lenguajes pueden ser Listas, de Contactos y FBD.
Bifurcacin Paralela:
10
Permite la insercin de una o varias Cadenas en paralelo con un tramo de la ya existente. Para entrar a la bifurcacin se debe cumplir la Condicin de transicin del paso anterior. Todas las cadenas se ejecutarn de manera independiente. Para salir de la Bifurcacin Paralela deben completarse la totalidad de los pasos de todas las cadenas y cumplirse la Condicin de transicin para salir de la Bifurcacin. Ejemplo:
Con sta Bifurcacin se logra que el Motor 1 permanezca encendido por 15 segundos a partir del momento en que se pulsa RUN1. Bifurcacin Alternativa:
11
Slo se ejecuta una Cadena de la Bifurcacin. El programa ejecutar la primera cadena que encuentre con Condicin de Transicin verdadera al evaluarlas de izquierda a derecha. Ejemplo:
Si FC_1 est accionado se realiza un giro en sentido horario hasta que se alcance FC_2. Si FC_2 es verdadero se gira en sentido antihorario hasta que se active FC_1 Bucle:
12
Permite repetir varias veces la ejecucin de un tramo de la Cadena. El programa primero evala la Condicin de Transicin de Salida del Bucle y despus la Condicin de Transicin del Bucle. Si se cumple la Condicin de Salida del Bucle se abandona el Bucle. Por el contrario, si sta es falsa se evala la Condicin de Transicin del Bucle lo cual har que se efecte el Bucle si es verdadera. Ejemplo:
En el Paso 2 se carga el contador con el valor inicial 4, a partir del Paso 3 se hace un recorrido ya sea horario o antihorario dependiendo del estado de FC_1 y FC_2. terminado el recorrido se decrementa el contador en el
13
Paso 6; si al decrementarse an no ha llegado a cero entonces la Condicin de Transicin de Bucle hace que la cadena se repita desde el paso 3. Cuando se completen 4 recorridos se valida la Condicin de Transicin de salida de Bucle haciendo que finalice el Bucle y se active el Paso 7. El Paso 3 es un paso vaco, sin Condicin de Accin ni Accin de Paso. Se ha puesto simplemente para separar la llegada del Bucle del inicio de la Bifurcacin Alternativa. Salto:
Hace que la ejecucin de la cadena se trasfiera al paso indicado en el Smbolo de Salto si la Condicin de Transicin de Salto se Cumple. Ejemplo: En este ejemplo se muestra como hacer uso de un salto para evitar que una secuencia se complete si las condiciones iniciales no estn dadas de manera correcta. Se debe realizar un proceso el cual el operario debe encender primero una luz roja como indicacin visual de que va a comenzar el proceso y a continuacin el pulsador RUN2 para iniciar el resto del proceso. El Motor 1 debe hacer un recorrido desde FC_1 hasta FC_2. Alcanzado FC_2 se enciende el Motor 2 y 5 segundos mas tarde el Motor 3 el cual se mantiene encendido durante 50 segundos. Al cabo de los cuales se apagan el Motor 2, el Motor 3 y la luz roja.
14
No se permite el reinicio del proceso si los pulsador RUN1 y RUN2 no estn liberados. Habra un error de calidad de produccin si al iniciarse la secuencia el Motor 1 no est activando a FC_1. Si tal es el caso, se hace un salto al paso 5 en el cual se apaga la luz roja y el proceso no tiene lugar.
15
16
17
Ejercicios
Convierta los programas de vistos en los ejemplos de aplicacin de las lecciones anteriores a SFC Con el SFC hemos completado el estudio de 3 lenguajes de programacin de alto nivel. Con este bagaje nos quedar mas sencillo acometer el estudio de el lenguaje de listas de instrucciones (de bajo nivel), el cual comenzaremos en la siguiente leccin.