PROGRAMACIÓN AVANZADA DE PLC’s

Slides:



Advertisements
Presentaciones similares
Equipo #3 Unidad III: ALU Efraín Corral Eduardo Castillo Elías Alarcón
Advertisements

Instrucciones de operación sobre datos
DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
DISEÑO DE TRANSFERENCIA ENTRE REGISTROS
CIRCUITOS SECUENCIALES E.U.I.T. Informática de Gijón
Aritmética del Computador Introducción a la Tecnología de la Información.
Álgebra 2010 Clase N° 1 Conjuntos numéricos I
Sistema Numérico Binario
REGISTROS INTERNOS DEL PROCESADOR.
INICIACION A LA PROGRAMACION DEL PLC
ORGANIZACIÓN COMPUTACIONAL
CLASE 3 SOFTWARE DEL MICROPROCESADOR
TEMA 2 Arquitectura de un Ordenador
Integrantes: Moyolehuani Tatéi Temai
Generación de Números Seudo-Aleatorios
¿Cuál debe ser el valor de b, para que el número que resulta al reemplazar b en la expresión 5 (b + 2) + 3 sea múltiplo de 5?
UPC Tema: ESPACIO VECTORIAL Rn
Departamento de Tecnología Curso: 4º E.S.O. I.E.S. Ana Mª Matute
APLICACIONES DE ALGEBRA BOOLEANA
La maquina de Turing La máquina de Turing es una caja negra (tan simple como una máquina de escribir y tan compleja como un ser humano) capaz no sólo de.
Integrantes Carlos Junior Salinas Rivera (ILHUICOATL). Comunidad: coatl (serpiente).
El procesador: la ruta de datos y el control (II Parte)
3. INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
Unidad aritmético-lógica
Programación en Lenguaje Ensamblador.
Números enteros.
JUGANDO CON LOS NÚMEROS
REGLAS DE LOS SIGNOS.
UNIDAD 1:SISTEMA DE NUMEROS
TECNOLOGIA DE LA INFORMACION
¿Qué es un PUNTERO?: Un puntero es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No.
Operaciones con fracciones
Circuitos Combinacionales Comunes
PROG. EN ENSAMBLADOR Ing. Pablo Cesar Tapia Catacora.
Aritmética y Computadores. Refresco de aritmética binaria. Operaciones aritméticas y lógicas. Construcción de una ALU para MIPS. Multiplicación y División.

Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30
Microcomputadores Prof : Tatiana Marín R.. Sistema basado en microprocesador de 8 bits.
Instrucciones: FORMATO DE INSTRUCCIONES

SISTEMAS DE NUMERACIÓN
PHP TODO SOBRE PHP.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 13.
Bus I2C Bus serie síncrono. (+-) SDA: datos SLC: reloj kbits/s (pero también kbits/s y 3.4Mbits/s)
Conceptos Arquitectónicos del computador
OPERACIONES CON NÚMEROS DECIMALES
Microprocesador (80X86) Universidad Nacional de Ingeniería
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
Tema 1: DATOS Y REGISTROS
Unidad I: Registros e Interrupciones Facilitador: Ing. Eduardo Brando.
Aritmética PARA COMPUTADORAS
Unidad aritmético-lógica
CODIFICACIÓN DE LA INFORMACIÓN
Organización del Computador I Verano Aritmética (3 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004 Profesora Borensztejn.
Arquitectura de Computadoras I
Área : Aritmética Tema 7: Números con signo Multiplicación y División.
Capítulo 4 CPU y la memoria.
Vamos a tratar algunos temas que es necesario conocer a la hora de administrar un sistema informático y que nos van a ser útiles sin importar el sistema.
OPERACIONES BINARIAS BÁSICAS
Sistema Binario.
José Alvarado – Cristian Anzola
NÚMEROS ENTEROS Y DECIMALES
Curso: Fundamentos de Computación
 PRESENTADO POR : ANDRES MAYORGA DANIELA PAEZ VEGA.
En las computadoras el formato natural para la aritmética es el binario. Sin embargo, para muchos propósitos, los datos numéricos se introducen desde el.
El microprocesador y su arquitectura
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
Arquitectura de Computadoras (Taller) Semestre II de 2008.
EXCEL. En Excel 2007 tenemos el cuadro de diálogo Formato de celdas para aplicar formato al contenido de las celdas seleccionadas. 1 Inicio 1 Inicio 2.
Transcripción de la presentación:

PROGRAMACIÓN AVANZADA DE PLC’s Soporte Técnico

LA INSTRUCCIÓN MOV REALIZA EL MOVIMIENTO DE UN DATO DE 16 BIT, DESDE MOV, FUN(21) LA INSTRUCCIÓN MOV REALIZA EL MOVIMIENTO DE UN DATO DE 16 BIT, DESDE UN CANAL A OTRO. EL CONTENIDO DEL CANAL FUENTE S SE TRANSFIERE AL CANAL DESTINO D. LAS ÁREAS DE DATOS UTILIZABLES EN LA TRANSFERENCIA SON : — S:#, IR, SR, HR, TIM, CNT — D: IR, HR Soporte Técnico

EJEMPLO. EMBOTELLADORA EL MOTOR M1 ESTARÁ EN MARCHA HASTA QUE LA FOTOCÉLULA F1 DETECTE E1 F1 CUANDO F1 DETECTE, COMENZARÁ A LLENARSE LA BOTELLA AL ACTIVARSE LA ELECTROVÁLVULA E1 CUANDO LA BOTELLA PESE LO DESEADO, SE ACTIVARÁ E1 Y DESPUÉS DE 3 SEGUNDOS, LA CINTA SE PONDRÁ EN MARCHA HASTA QUE LA FOTOCÉLULA F1 VUELVA A DETECTAR. M1 4 / 20 mA ENTRADAS F1 : 0000 CÉLULA DA CARGA: ENTRADA ANALÓGICA SALIDAS M1 : 1000 E1 : 1001 Soporte Técnico

LA INSTRUCCIÓN SFT REALIZA LA FUNCIÓN DE REGISTRO DE DESPLAZAMIENTO SFT, FUN(10) /1 LA INSTRUCCIÓN SFT REALIZA LA FUNCIÓN DE REGISTRO DE DESPLAZAMIENTO EN SERIE EL DESPLAZAMIENTO AFECTA A LOS BITS, EN SENTIDO DEL MENOS SIGNIFICATIVO AL MÁS SIGNIFICATIVO IN= ENTRADA DE DATOS. EL ESTADO DE ESTA ENTRADA SE INTRODUCE EN EL REGISTRO DE DESPLAZAMIENTO CON EL FLANCO ASCENDENTE DEL IMPULSO DE RELOJ. SP= IMPULSO DEL RELOJ. EL FLANCO ASCENDENTE CREA EL DESPLAZAMIENTO DE LOS DATOS, SI RT 0 RT= RESET. SU FLANCO ASCENDENTE DETERMINA EL RESET DEL CANAL (O CANALES) SOBRE LOS QUE SE PRODUCE EL DESPLAZAMIENTO B , E= PRIMER Y ÚLTIMO CANAL DEL ÁREA DE DATOS SOBRE LA QUE SE PRODUCE EL DESPLAZAMIENTO Soporte Técnico

SI COMO CANALES DE DESPLAZAMIENTO SE UTILIZAN LOS DEL ÁREA HR, EN SFT, FUN(10) /2 SI COMO CANALES DE DESPLAZAMIENTO SE UTILIZAN LOS DEL ÁREA HR, EN CASO DE FALLO DE ALIMENTACIÓN LOS DATOS SE MANTIENEN 0000 IN SFT LD 0000 0001 CP LD 0001 05 LD 0002 0002 R SFT (10) 05 06 06 CH 05 0 1 2 3 14 15 DATOS ESTE DATO SE PIERDE 0 1 2 3 CH 06 14 15 Soporte Técnico

EJEMPLO. APLICACIÓN FUNCIÓN SFT SE TIENE UNA LÍNEA DE SUMINISTRO DE BOTELLAS. SOBRE LA LÍNEA EXISTEN 10 PUESTOS QUE PUEDEN EN UN MOMENTO DADO CONTENER BOTELLA. LA PRESENCIA DE BOTELLA EN UN PUESTO SE DETECTA CON UN SENSOR. CON OTRO SENSOR SE DETERMINA SI LA BOTELLA ES BUENA O MALA. SEGÚN LA NATURALEZA DE CADA BOTELLA ÉSTA ES RECHAZADA O NO. Soporte Técnico

EJEMPLO. APLICACIÓN FUNCIÓN SFT LA LÍNEA ACCIONADA POR UN MOTOR, ES CONTROLADA CON UN PULSADOR DE START, UNO DE STOP Y UNO DE EMERGENCIA. ANTE UNA FALTA DE ALIMENTACIÓN, LA MÁQUINA DEBE PODER CONTINUAR CORRECTAMENTE CON EL PROCESO CUANDO LA ALIMENTACIÓN VUELVE, PREVIO START. UN PULSADOR ACTÚA DE RESET DE LA LÍNEA: (MOTOR OFF, NINGUNA BOTELLA BUENA SOBRE LA LÍNEA). ENTRADAS RESET 0007 PRESENCIA 0001 BUENA/MALA 0002 START 0003 STOP 0004 EMERGENCIA 0005 SALIDAS START MOTOR 1000 RECHAZADOR 1001 AUX 1002 CLOCK HR0000 Soporte Técnico

EJEMPLO. APLICACIÓN FUNCIÓN SFT SENSOR DE PRESENCIA EN PUESTO SENSOR “BUENA / MALA” RECHAZADOR 0 1 2 3 4 5 6 7 8 9 1 1 0 0 0 1 0 1 0 1 Soporte Técnico

EJEMPLO. BRAZO ROBOT Soporte Técnico START 0000 LS1 LS2 LS3 LS4 LS5 B PS1 IZQ DCHA LS1 0001 LS2 0002 LS3 0003 LS4 0004 LS5 0005 PS1 0006 RTRANSPORTADORA 1000 GIRO DERECHA 1001 GIRO IZQUIERDA 1002 SUBIR 1003 BAJAR 1004 COGER 1005 SOLTAR 1006 0 1 2 3 4 5 6 7 8 CICLO DE TRABAJO Soporte Técnico

RELLENAR BLOQUE, FUN(71) @FUN(71) FUNCIÓN: TRANSFIERE EL DATO CONTENIDO EN UN CANAL (O CONSTANTE) A UN GRUPO DE CANALES ESPECIFICADOS. BSET D I F D= DATO I= CANAL INICIAL F= CANAL FINAL Soporte Técnico

RELLENAR BLOQUE, FUN(71) @FUN(71) 3200 BSET #2345 DM10 DM20 DM10 #2345 #2345 DM11 #2345 DM20 #2345 Soporte Técnico

MOVER BLOQUE, FUN(70) @FUN(70) FUNCIÓN: TRANSFIERE DATOS DE VARIOS CANALES CONSECUTIVOS A OTROS CANALES TAMBIÉN CONSECUTIVOS XFER N= Nº CANALES N O= CANAL ORIGEN O D= CANAL DESTINO D Soporte Técnico

MOVER BLOQUE, FUN(70) @FUN(70) 3300 XFER #4 LR00 HR04 LR 0000 3456 HR 0400 3456 LR 0001 5629 HR 0401 5629 LR 0002 5894 HR 0402 5894 LR 0003 8974 HR 0403 8974 Soporte Técnico

FUNCIÓN: LEE LOS DATOS ASCII CONTENIDOS EN OCHO CANALES (16 MENSAJE, FUN(46) @FUN(46) FUNCIÓN: LEE LOS DATOS ASCII CONTENIDOS EN OCHO CANALES (16 CARACTERES) Y LOS VISUALIZA EN EL DYSPLAY DEL DISPOSITIVO DE PROGRAMACIÓN MSG N N= CANAL DE COMIENZO NOTA: EL ÚLTIMO CARÁCTER DEBE SER OD Soporte Técnico

MENSAJE DE LONGITUD DOBLE, FUN(47) @FUN(47) FUNCIÓN: LEE LOS DATOS ASCII CONTENIDOS EN DIECISEIS CANALES (32 CARACTERES) Y LOS VISUALIZA EN EL DYSPLAY DEL DISPOSITIVO DE PROGRAMACIÓN (CONSOLA O INTERFACE RS232) LMSG N= CANAL DE COMIENZO N D= CANAL DE DESTINO D NOTA: EL ÚLTIMO CARÁCTER DEBE SER OD Soporte Técnico

CONTADOR REVERSIBLE, FUN(12) FUNCIÓN: CONTADOR REVERSIBLE. CUENTA ENTRE CERO Y SV DE ACUERDO CON LOS CAMBIOS EN DOS CONDICIONES DE EJECUCIÓN, LA ENTRADA DE CON TAJE ADELANTE (II) Y LA DE CONTAJE ATRÁS (DI) II CNTR12 N= Nº CANAL DE COMIENZO DI N # (000 A 511) R SV= VALOR SELECCIONADO SV IR, SR, AR, DM, HR, LR, # Soporte Técnico

EJEMPLO. SECUENCIA DE MENSAJE EN CONSOLA DE PROGRAMACIÓN APLICACIÓN: Utilizar la instrucción MSG para mostrar mensajes en la consola de programación PRO-27. La instrucción MSG permite mostrar un mensaje de hasta 16 caracteres sobre el display de la consola de programación. En este caso el programa deberá hacer posible el desplazamiento de un mensaje de 32 caracteres por el display, a izquierda o a derecha según voluntad del usuario e incluso poder detenerlo. Soporte Técnico

EJEMPLO. SECUENCIA DE MENSAJE EN CONSOLA DE PROGRAMACIÓN CANAL HEX ASCII DM10 4F4D OM DM11 524F RO DM12 4E20 N DM13 454C EL DM14 4543 EC DM15 5452 TR DM16 4F4E ON DM17 4943 IC DM18 5320 S DM19 4C45 LE DM20 2053 S DM21 414C AL DM22 5544 UD DM23 4120 A DM24 484F HO DM25 4C41 LA El mensaje estará contenido en los DM’s del 10 al 25 en formato ASCII de la siguiente forma: ORDEN DE PARADA DE MENSAJE: Entrada 0000. SENTIDO DE DESPLAZAMIENTO DEL MENSAJE: Entrada 1 FRECUENCIA DE DESPLAZAMIENTO: Base de tiempo constante. Soporte Técnico

DIRECCIONAMIENTO INDIRECTO Cuando para un operando se especifica el área dde DM, se puede utilizar una dirección indirecta. Para diferenciar el direccionamiento de DM indirecto se coloca un asterisco delante de DM : *DM Cuando se especifica una dirección indirecta de DM, el canal DM designado contendrá la dirección del canal DM que contiene el dato que se utilizará como operando de la instrucción. Cuando se utilice direccionamiento indirecto, la dirección del canal deseado debe estar en BCD y debe especificar un canal comprendido en área de DM. Soporte Técnico

DIRECCIONAMIENTO INDIRECTO Normalmente la variable especificada por una cierta instrucción es tal que la instrucción opera con el dato especificado en la variable especificada. TIM00 DM0011 #0432 DM0011 EN ESTE CASO SV = 432 El direccionamiento indirecto permite especificar un dato por la dirección de DM donde ése dato está contenido (la dirección es la variable). TIM00 *DM0011 #0432 DM0011 #0432 DM0432 EN ESTE CASO SV = 1547 Soporte Técnico

DIRECCIONAMIENTO INDIRECTO Ejemplo: Canal Contenido DM 0000 4C59 MOV(21) DM 0001 1111 *DM 0001 Dirección indirecta DM 0002 F35A Indica DM 1111. LR 00 DM 1111 5555 5555 movido a LR 00. DM 1112 2506 DM 1113 D541 Si se designa *DM 0001 como primer operando y LR 00 como segundo operando de MOV(21), los contenidos de DM0001 son 1111 y DM 1111 contiene 5555, el valor 5555 será movido a LR 00. Soporte Técnico

DIRECCIONAMIENTO INDIRECTO EJEMPLO ALMACENAR LA TEMPERATURA EN UN HORNO CADA 15 SEG. Y DURANTE 2 HRS., TIEMPO DE DURACIÓN DEL PROCESO. DATOS Tº ENTRADA ANALÓGICA: CANAL 101 INICIO DATOS: DM 0001 Soporte Técnico

FUNCIÓN: ESTAS INSTRUCCIONES GESTIONAN EL FLAG DE ACARREO, STC / CLC, FUN 40 / 41 FUNCIÓN: ESTAS INSTRUCCIONES GESTIONAN EL FLAG DE ACARREO, O FLAG CY. EL FLAG CY SE UTILIZA EN LAS OPERACIONES MATEMÁTICAS, PARA DETECTAR: EXISTENCIA DE OVERFLOW EN EL RESULTADO DE UNA SUMA (ADD) EXISTENCIA DE RESULTADO NEGATIVO EN UNA SUBSTRACCIÓN (SUB) LD 0000 STC(40) LD NOT 0000 CLC(41) LD 1904 OUT 1000 Soporte Técnico

ADD, FUN(30) /1 LA INSTRUCCIÓN ADD EJECUTA LA SUMA ENTRE DOS DATOS DE 16 BIT (CANALES Y/O CONSTANTES) EN FORMATO BCD AL RESULTADO SE LE SUMA EL ACARREO SUMANDO 1 SI CY= ON LOS PARÁMETROS DE LAS INSTRUCCIONES SON 3: A1,A2 = SUMANDOS (#, IR, SR, HR, TIM, CNT) R = RESULTADO (IR, HR) = A1+A2+CY LD 0000 STC(40) ADD(30) A1 HR00 #0001 A2 HR00 R Soporte Técnico

ADD, FUN(30) /2 EN EL CASO DE ACARREO (CY = 1), LA SUMA DE LOS DOS SUMANDOS HA SUPERADO EL LÍMITE 9999. EL RESULTADO EFECTIVO ES ENTONCES 10000+R EN EL CASO DE SUMA CON 8 O MÁS CIFRAS BCD, (SUMA COMBINADA) SE DEBERÁ RESETEAR CY SÓLO PARA LA PRIMERA SUMA. SI EL RESULTADO DE LA OPERACIÓN SUMA ES = 0, ENTONCES EL FLAG EQ = 1 SI LOS SUMANDOS NO ESTÁN EN FORMATO BCD, LA OPERACIÓN NO SE EJECUTA Y ENTONCES ER = 1 Soporte Técnico

SUB, FUN(31) /1 LA INSTRUCCIÓN SUB EJECUTA LA SUBSTRACCIÓN DE DOS DATOS DE 16 BIT EN FORMATO BCD AL RESULTADO SE LE RESTA EL ACARREO O BIEN SE LE SUMA -1 SI CY = ON LOS PARÁMETROS DE LA INSTRUCCIÓN SON 3: Mi = MINUENDO (#, IR, SR, HR, TIM, CNT) Su = SUSTRAENDO (#, IR, SR, HR, TIM, CNT) R = RESULTADO (IR, HR) = Mi - Su - CY LD 0000 STC(40) SUB(31) Mi #0100 Su 00 05 R Soporte Técnico

SUB, FUN(31) /2 CY EQ DATOS Mi > Su Mi = Su Mi < Su R= Mi - Su SEGÚN LOS VALORES QUE TENGAN Mi Y Su, SE TIENEN LOS SIGUIENTES CASOS: RESULTADO CY EQ DATOS Mi > Su Mi = Su Mi < Su R= Mi - Su R= 0 R= Mi + (10000-Su) 1 SI Mi Y Su NO ESTÁN EN EL FORMATO BCD, LA OPERACIÓN NO SE EJECUTA, Y ER = 1 Soporte Técnico

MULTIPLICACIÓN BCD, FUN(32) @FUN(32) FUNCIÓN: MULTIPLICA EL CONTENIDO DE LOS DATOS ESPECIFICADOS EN LA INSTRUCCIÓN (EN BCD) Y EL RESULTADO SE TRANSFIERE A UN REGISTRO. MUL A, B = CANALES /CONSTANTES A R = REGISTRO RESULTADO B C Soporte Técnico

MULTIPLICACIÓN BCD, FUN(32) @FUN(32) 3300 MUL 10 #0021 DM100 0034 CH 10 X 0021 = 714 DM100= (CH 10) X 21 Soporte Técnico

DIVISIÓN BCD, FUN(33) @FUN(33) FUNCIÓN: DIVIDE EL CONTENIDO DE LOS DATOS ESPECIFICADOS EN LA INSTRUCCIÓN (EN BCD) Y EL RESULTADO SE TRANSFIERE A DOS REGISTROS (COCIENTE Y RESTO). A = DIVIDENDO DIV B = DIVISOR A R = COCIENTE B R+1 = RESTO C A, B = CANAL / CONSTANTE Soporte Técnico

DIVISIÓN BCD, FUN(33) @FUN(33) 3300 DIV 10 #4 LR10 133 CH 10 (CH 10) = (LR 10) X 4 + LR 11 4 33 LR 10 1 LR 11 Soporte Técnico

EJEMPLO DE PROGRAMACIÓN SUMA DE DATOS DE HASTA 8 DÍGITOS APLICACIÓN: SE TRATA DE SUMAR DOS DATOS QUE PUEDEN TENER UNA LONGITUD DE HASTA 8 DÍGITOS. ESTE PROGRAMA PUEDE LLEVARSE A CABO UTILIZANDO DIRECTAMENTE LA INSTRUCCIÓN DE SUMA DE DOBLE LONGITUD PERO LO HAREMOS USANDO LA INSTRUCCIÓN ADD NORMAL. LOS DATOS A SUMAR SON LOS SIGUIENTES: DATO A: 4 DÍGITOS MAYORES DM1 4 DÍGITOS MENORES DM0 DATO B: 4 DÍGITOS MAYORES DM3 4 DÍGITOS MENORES DM2 EL RESULTADO SE GUARDARÁ EN : DÍGITO NUM 9 DM6 4 DÍGITOS MAYORES DM5 4 DÍGITOS MENORES DM4 El programa debe poder detectar si alguno de los datos A o B no está en formato BCD. Utilizar el CARRY en las instrucciones suma. Soporte Técnico