La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

PROGRAMACIÓN AVANZADA DE PLC’s

Presentaciones similares


Presentación del tema: "PROGRAMACIÓN AVANZADA DE PLC’s"— Transcripción de la presentación:

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

2 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

3 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 : CÉLULA DA CARGA: ENTRADA ANALÓGICA SALIDAS M1 : E1 : Soporte Técnico

4 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

5 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 0001 CP LD 05 LD 0002 R SFT (10) 06 06 CH 05 14 15 DATOS ESTE DATO SE PIERDE CH 06 14 15 Soporte Técnico

6 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

7 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 PRESENCIA BUENA/MALA START STOP EMERGENCIA SALIDAS START MOTOR RECHAZADOR AUX CLOCK HR0000 Soporte Técnico

8 EJEMPLO. APLICACIÓN FUNCIÓN SFT
SENSOR DE PRESENCIA EN PUESTO SENSOR “BUENA / MALA” RECHAZADOR Soporte Técnico

9 EJEMPLO. BRAZO ROBOT Soporte Técnico START 0000 LS1 LS2 LS3 LS4 LS5 B
PS1 IZQ DCHA LS LS LS LS LS PS RTRANSPORTADORA 1000 GIRO DERECHA GIRO IZQUIERDA SUBIR BAJAR COGER SOLTAR 1006 CICLO DE TRABAJO Soporte Técnico

10 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

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

12 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

13 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

14 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

15 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

16 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

17 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

18 EJEMPLO. SECUENCIA DE MENSAJE EN CONSOLA DE PROGRAMACIÓN
CANAL HEX ASCII DM F4D OM DM F RO DM E N DM C EL DM EC DM TR DM F4E ON DM IC DM S DM C LE DM S DM C AL DM UD DM A DM F HO DM C 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

19 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

20 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

21 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

22 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

23 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 STC(40) LD NOT CLC(41) LD OUT Soporte Técnico

24 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 STC(40) ADD(30) A1 HR00 #0001 A2 HR00 R Soporte Técnico

25 ADD, FUN(30) /2 EN EL CASO DE ACARREO (CY = 1), LA SUMA DE LOS DOS SUMANDOS HA SUPERADO EL LÍMITE 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

26 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 STC(40) SUB(31) Mi #0100 Su 00 05 R Soporte Técnico

27 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

28 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

29 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

30 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

31 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

32 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: DÍGITOS MAYORES DM1 4 DÍGITOS MENORES DM0 DATO B: 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


Descargar ppt "PROGRAMACIÓN AVANZADA DE PLC’s"

Presentaciones similares


Anuncios Google