Está en la página 1de 16

DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA

CARRERA DE INGENIERÍA ELECTRÓNICA EN
TELECOMUNICACIONES, AUTOMATIZACIÓN Y
CONTROL, INSTRUMENTACIÓN, MECATRÓNICA
ASIGNATURA: PLC NRC: 2546

INFORME DE LABORATORIO
No. 2.1
Profesor: Ing. Edgar Tipán
INTEGRANTES
1. William Cóndor
2. Darwin Paucar
3. Diego Rodriguez

21 de Octubre de 2013 - Sangolquí

1

................................................ MARCO TEORICO................................................................. 8 5.......................................... ...............CONTENIDO RESUMEN DE LA PRÁCTICA ......... ........................ 3 4......... CONCLUSIONES Y RECOMENDACIONES ....................................................................................................................................... PREGUNTAS ........................................................ OBJETIVOS ................................................................. PROCEDIMIENTO ....................................................................... ANEXOS ................... 14 2 ....................... 3 3...... 13 9..................................... 13 10................................................ ANALISIS RESULTADOS ........................................................................................... 3 1............................................... 11 8.......................... 10 7................................................................... 8 6.... BIBLIOGRAFÍA....................................................................................................... TEMA .. MATERIALES Y EQUIPOS..................................................................................... 3 2..................................................................................................................

3 . la función mov se localiza en la carpeta move logical. 3.RESUMEN DE LA PRÁCTICA El laboratorio realizado consistió en la utilización de las instrucciones de comparación. subrutinas que se utilizó en nuestro trabajo realizado. subrutinas. transferencia. de tal manera que la práctica tuvo éxito en su prueba práctica. 1.  Hacer uso de las subrutinas para minimizar el código del programa. Figura 1. se tuvo que diseñar un programa que encienda tres motores utilizando solo un timer. apagado. la secuencia que se debía seguir para el encendido y apagado fue dado por el instructor. salto y funciones para copiar y mover un dato. transferencia.  Emplear instrucciones de Flujo de Programa en la solución de problemas de automatización. FUNCION MOV En ciertas ocasiones debemos copiar datos para poder sustituir el dato principal esto se realiza con la función mov mientras el renglón sea verdadero copia una palabra a una palabra destino sin eliminar la palabra origen. reset y pause respectivamente. de tal manera que este se optimice. TEMA  Uso de operaciones de comparación. OBJETIVOS  Familiarizarse con el uso y aplicación de las instrucciones de transferencia de datos. A continuación se puede explicar con un ejemplo el funcionamiento de la función MOV.1. salto y subrutina 2. y funcione correctamente. MARCO TEORICO 3.  Identificar el uso y aplicación de las instrucciones matemáticas. por lo menos un jump y subrutinas de encendido.

0.0. Se deben utilizar dos elementos. 4 . Elemento A: que puede ser constante. Lenght.. Como se muestra en el ejemplo al utilizar la función FILL. esta función se encuentra localizada en la carpeta file Misc. FUNCION FILL La función fill se utiliza básicamente para inicializar una serie de reglones de código. 2. Figura 2.3. A continuación se presenta un ejemplo para entender de mejor manera dicha función. 4. I/O física o espacio de memoria.En este ejemplo se puede observar que si se activa la entrada I:0/0. Las funciones de comparación deben estar en el lado izquierdo del programa y pueden estar en serie (AND) o en paralelo (OR). 3.El destino del dato. hasta N7. 5. Elemento B: que no puede ser I/O física. ELEMENTOS QUE SE REQUIEREN PARA LA CONFIGURACIÓN DE LA INSTRUCCIÓN DE COMPARACIÓN.Donde va la variable de inicialización.10. se quiere que se inicialice. se procede a inicializar con el valor de 0. Dest. o dato que se desee inicializar. sin afectar la palabra de origen.2. esto dependiendo de la longitud que se introduzca en la función a operar.La longitud a partir del destino. Las instrucciones de comparación son utilizadas para evaluar la relación entre dos valores. desde la dirección N7. la función Fil tiene su respectiva sintaxis donde consta de: Source. con una sola función. 3. Como se observa en la figura.. los bits de la dirección N7. automáticamente se mueve a la dirección N7..

FUNCIONAMIENTO DE LAS INSTRUCCIONES JMP Y LABEL Básicamente lo que realiza la función jmp y label es un salto en la secuencia de un programa. Los enteros negativos son almacenados en complemento a dos. Si A y B son iguales. la instrucción es verdadera. Si A>B. retornando a la siguiente network. la instrucción es falsa. la instrucción es falsa. Si A y B no son iguales. Tabla 1. la instrucción es verdadera. la instrucción es Falsa.4. es mayor que otro (B). Si A>B. Less Than (LES) Use esta instrucción para comparar si un valor (A). Si A<B. mientras que B puede ser una constante o una dirección.Instrucciones de Comparación SÍMBOLO NOMBRE DESCRIPCIÓN Use esta instrucción para comparar si dos valores son iguales. Si A<B. Equal (EQU) Use esta instrucción para comparar si un valor (A). es menor que otro (B). al momento de culminar la etiqueta. 5 . A debe ser una dirección. la instrucción es verdadera. Greater Than (GRT) Limit (LIM) Test Use esta instrucción para verificar si un valor está dentro o fuera de un rango especificado. Figura 3. 3.

Por otra parte si no se activa la entrada I:0/0. 6 . de tal manera que este salta a la etiqueta Q2:0 y procede a la activación de una variable B3:0. Para la comprensión de las funciones mencionadas se realizara el siguiente ejemplo: EJEMPLO:  En el programa posterior se implementó 4 networks.   Figura 4. o más dependiendo de la capacidad del módulo. se observa que el contador no presenta cambios en el acumulador. a activar la salida B3:0.Como se observa para realizar el salto se utiliza la función JMP. habilitando asi la salida Q:0/0. para activar el salto. Y su respectivo direccionamiento está dado por Q2:0. Cabe mencionar que se puede realizar 256 etiquetas. Figura 5. y este a su vez habilita el contador. Entonces al ejecutar el programa y activar la entrada se observa que salta a la etiqueta 0. evitando así que se ejecute la línea de código 2 y 3. en donde consta de una entrada I:0/0. el programa procede a seguir la línea siguiente de la secuencia. Dónde: Q2: Es el número del archivo. a la etiqueta correspondiente con la función LBL. 0: Es el número de la etiqueta.

no se activa y por l tanto salta a la línea 2 habilitando SALIDA 1 y esta a su vez habilita el contador como se observa en la figura posterior. Para crear la subrutina damos click derecho sobre la carpeta Program Files y damos un nombre a la subrutina. de tal manera que se eliminara variables innecesarias. nos permite evitar utilizar líneas de código que no se van a utilizar. SUBRUTINA Las subrutinas son programas cortos que son llamados a lo largo del programa principal. y el programa se ejecutara de manera mas rapia. 3. Para llamar a una subrutina utilizaremos el comando JSR (jump to subrutine) y especificaremos a cual subrutina queremos ir. cuando se acaban de ejecutar regresan a la línea siguiente de donde fueron llamados.5. 7 . se crea otro diagrama escalera. Lad 2 siempre es nuestro programa principal y se ejecuta por default. la línea de JMP. Figura 7.  Figura 6. En si la función JMP Y LBL. Por otra parte si se desactiva I:O/O.

5.  1 CPU Allen Bradley de la Serie SLC 500. con la diferencia que el puerto de comunicación va a ser el PLC. 4.        5. MATERIALES Y EQUIPOS. 8 . 1 Módulo de Salidas Discretas. 1 Módulo de Entradas Discretas. con instalación de RSLogix500 y RSLinx 1 Tablero Didáctico de Simulación 1 Fuente de alimentación +24 VDC Cables de Conexión PROCEDIMIENTO Configurar el driver en RSLinx La imagen que se puede observar pertenece al emulador. 1 Computador Personal.Figura 8. Figura 9. cierto paso se lo realiza de la misma manera en el módulo.1.

3.5. En nuetro caso realizamos la practica del encendido mediante la secuencia. al presionar Read IO Config. Como se observa en la siguiente figura se procede a configurar el tipo de PLC que se está utilizando. crear un nuevo archivo y configurar el tipo de PLC y sus módulos (de ser el caso) en el programa. se escogerá cualquier modulo con la serie correspondiente. Donde automáticamente identificara el modelo a ser utilizado. que se especifico en el preparatorio. Realizar el programa Ladder que cumpla con la lógica de control planteada en esta práctica. Figura 10. puede ser la serie 03 o 05 dependiendo del módulo que se tenga. Figura 11.  Si no se supo exactamente el modelo se procede a ir a: I/O CONFIGURATION  5. en caso de que no se sepa exactamente qué modelo es. Ejecutar el software RSLogix500. 9 .2.

en cada ladder implementado Las subrutinas son útiles debido a que me permiten reutilizar código y organizar el programa esto se traduce al ahorro de líneas de programación.5. de tal manera que se puede maniobrar de mejor manera el programa al no tener tantas líneas de código. para la comprobación del programa implementado. subrutinas y saltos en programación Ladder. 5. ya que dependiendo de la serie las variables de entrada y salida son diferentes. fue el cambio de versión que existe entre programar en el simulador y transcribir o copiar al módulo. Figura 12. Transferir el programa. se cargó al módulo. reset y pause del motor respectivamente. apagado. En este caso tenemos las salidas de las luces piloto. ANALISIS RESULTADOS En la presente práctica se aprendió sobre el manejo de las. y como en todos los programas que se realiza tenían pequeños errores. donde está en la secuencia de apagado. Ejecutar el programa en el PLC y probar si la lógica del programa desarrollado funciona correctamente en el Modo ONLINE. y esta titilando el botón de pause. Se utilizó 1 programa principal. Una vez cambiado todas las variables a utilizar.6. Con estas subrutinas el código es más comprensible y el programa principal tiene menos líneas de código. y 4 subrutinas las cuales son: encendido.5. los cuales se solucionaron en el transcurso de la hora de clases. 5. m2 y m3 están apagados. 10 . 6. Uno de los problemas que se tuvo. A continuación se observa la ejecución del programa en el módulo. de acuerdo a la asignación de éstas en el programa. mientras que los motores m1.4. Conectar las Entradas y Salidas del PLC al Tablero de simulación correspondiente.

como run o prog. la subrutina es un archivo diferente del programa principal.1.Figura 13. la función jump salta a un label (LBL) determinado por el archivo de control Q2.  Los saltos sirven para saltar porciones de programa.  La subrutina salta a un archivo que se lo asigna con un número de archivo de programa. o de mejor manera en la posición de la mitad para que la ejecución se haga únicamente desde el CPU.  Pueden realizarse saltos hacia adelante o hacia atrás del programa. 11 . 7. la subrutina se usa para indicar al controlador que ejecute un archivo de subrutina separado dentro del programa de escalera y retornar a la instrucción siguiente a la instrucción JSR. PREGUNTAS 7. Hay que verificar que la llave que se está señalando debe estar en el modo que se desee. Diferencias entre un salto y una subrutina  Un salto se lo declara dentro de un mismo archivo.

para inicializar cualquier tipo de variables.  Mask Compare Equal to (MEQ) Esta instrucción MEQ es una instrucción de entrada que compara un valor de una dirección de origen con datos en una dirección de comparación y permite que se enmascaren porciones de los datos.  En si la diferencia principal es que uno de ls comando puede copiar varios datos con una sola instrucción.  Este comando se diferencia con el comando copy.3. nos permite mover un dato a otra dirección mediante una instrucción. la instrucción es verdadera. mientras que el otro necesita una instrucción para mover un solo dato. Cuantos saltos y cuantas subrutinas puede tener un PLC Allen Bradley SLC500 y como se identifican En los SLC se pueden tener 256 saltos y se los identifica con Q2:0 (tendríamos de la etiqueta Q2:0 a la Q2:255) 12 . La instrucción se hace falsa cuando detecta una desigualdad. que a su vez este copia valores solo de 0. FILL y COPY  El comando MOV.7.  Mientras que el comando COPY permite mover varias palabras en una sola instrucción.  La función FIIL es utilizable para Inicializar o resetear valores. Si los datos en la dirección de origen coinciden con los datos en la dirección de comparación bit a bit (menos los bits con máscara). MASK. mientras que el comando copy inicializa con cualquier valor de una dirección dada por el usuario.2. dando un destino y el número de reglones que se va a resetar a partir del destino. 7. Diferencias del comando MOV.

organizar el programa. de esta manera poder realizar la programación adecuada.net/cursoplc/ 13 . LIM 8.7. Es recomendable revisar los videos tutoriales dados por el instructor. de esta manera no habría problemas al momento de copiar el programa al cpu y ejecutarlo. [1]Rockwell Automation Inc. utilizar menos networks y optimizar de mejor manera el programa implementado. Descargarse los simuladores necesarios. CONCLUSIONES Y RECOMENDACIONES        9.unmsm. BIBLIOGRAFÍA. lo mismo ocurre con la subrutina.edu. Es necesario conocer el modulo del plc correcto para poder llevar simulado el programa a implementar. [2]http://sisbib. 2000.pe/bibvirtualdata/tesis/ingenie/reategui_gh/cap3. para poder guiarse de mejor manera y llegar a ser buenos programadores. Que tipos de comparaciones tiene un PLC Allen Bradley SLC500 EQU •Igual NEQ •No igual LES •Menor que LEQ •Menor o igual que GRT •Mayor que GEQ •Mayor o igual que MEQ •Comparación igualdad con máscara. •Prueba el límite Las subrutinas son muy útiles ya que me permiten reutilizar código.pdf [3]Videos Tutoriales [4] http://instrumentacionycontrol. Con estos comandos avanzados (subrutina y jump) los programas son más óptimos y comprensibles.4. SLC 500 INSTRUCTION SET. Nunca debemos poner en una línea un jump sin acompañarlo de una condición ya que si no lo hacemos el salto siempre se estará ejecutando. Los saltos son muy útiles cuando inicializamos variables o bobinas ya que podemos ejecutar cierto tramo del código una sola vez y después saltar. ya que si no tienes ninguna condición siempre será llamada.

ANEXOS Diagrama del programa - Programa Principal 14 .10.

- Subrutina ENCENDIDO - Subrutina APAGADO 15 .

- Subrutina RESET - Subrutina PAUSA 16 .