Beruflich Dokumente
Kultur Dokumente
SESIN PRCTICA DE LOGIX PARA PROGRAMADORES I_________________________________________5 ACERCA DE ESTA SESIN PRCTICA................................................................................................................5 ANTES DE COMENZAR..................................................................................................................................6 MATERIALES DE LA SESIN PRCTICA..............................................................................................................6 CONVENCIONES DEL DOCUMENTO....................................................................................................................8 SESIN PRCTICA 1: USO DE MULTITAREAS/MULTIPROGRAMAS EN LOGIX (20 MINUTOS)___________________9 ACERCA DE ESTA SESIN PRCTICA................................................................................................................9 ACTIVACIN DEL SOFTWARE DE PROGRAMACIN RSLOGIX 5000..........................................................................9 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................10 DIVISIN DEL PROGRAMA ACTUAL PARA USAR MLTIPLES TAREAS.........................................................................13 DIVISIN DE CADA SECCIN DEL CDIGO DEL TRANSPORTADOR EN SU PROPIO PROGRAMA EN LA TAREA CONTINUA...........24 RESUMEN DE LA SESIN PRCTICA 1............................................................................................................31 SESIN PRCTICA 2: TEMAS CUBIERTOS (20 MINUTOS)_______________________________________32 ACERCA DE ESTA SESIN PRCTICA..............................................................................................................32 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................33 CMO DESCARGAR EL PROGRAMA................................................................................................................34 ACTIVIDAD 1 (EN LNEA): MLTIPLES TAREAS PERIDICAS O UNA TAREA PERIDICA.................................................35 RESUMEN DE LA ACTIVIDAD 1......................................................................................................................43 ACTIVIDAD 2 (EN LNEA): LOS EFECTOS DE LA TAREA PERIDICA EN LA TAREA CONTINUA.........................................44 RESUMEN DE LA ACTIVIDAD 2......................................................................................................................47 SESIN PRCTICA 3: CONFIGURACIN DE LA
BASE DE DATOS DE TAGS EN UN CONTROLADOR
LOGIX (40 MINUTOS)_____________________________________________________________48 ACERCA DE ESTA SESIN PRCTICA..............................................................................................................48 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................48
Sesin prctica de Logix para programadores I LOT-SP004A-ES-E Pgina 2 de 163
CMO CREAR UN TIPO DE DATOS DEFINIDO POR EL USUARIO PARA UN TRANSPORTADOR............................................49 USO DEL UDT DE TRANSPORTADOR.............................................................................................................57 USO DE LA FUNCIN DATA SCOPING.............................................................................................................73 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................75 USO DE LA FUNCIN DATA SCOPING EN EL PROGRAMA.....................................................................................76 RESUMEN DE LA SESIN PRCTICA 2............................................................................................................80 SESIN PRCTICA 4: TEMA CUBIERTO (10 MINUTOS)_________________________________________81 ACERCA DE ESTA SESIN PRCTICA..............................................................................................................81 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................81 CMO DESCARGAR EL PROGRAMA................................................................................................................82 ACTIVIDAD 1 (EN LNEA): TIPOS DE DATOS INT COMPARADOS CON TIPOS DE DATOS DINT......................................83 RESUMEN DE LA ACTIVIDAD 1......................................................................................................................87 SESIN PRCTICA 5: REUTILIZACIN DE CDIGO (15 MINUTOS) 88 ACERCA DE ESTA SESIN PRCTICA..............................................................................................................88 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................88 REUTILIZACIN DE CDIGO USANDO LAS FUNCIONES DE COPIAR Y PEGAR...............................................................90 REUTILIZACIN DE CDIGO USANDO LA HERRAMIENTA LADDER PARTIAL IMPORT/EXPORT..........................................92 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................93 USO DE LA HERRAMIENTA LADDER PARTIAL IMPORT/EXPORT PARA HACER UNA EXPORTACIN A UN ARCHIVO L5X.........94 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR...................................................................................97 USO DE LA HERRAMIENTA LADDER PARTIAL IMPORT/EXPORT PARA HACER UNA IMPORTACIN A UN ARCHIVO L5X ........98 RESUMEN DE LA SESIN PRCTICA 3..........................................................................................................104 SESIN PRCTICA 6: TEMA CUBIERTO (10 MINUTOS)________________________________________105 ACERCA DE ESTA SESIN PRCTICA............................................................................................................105
CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR.................................................................................105 CMO DESCARGAR EL PROGRAMA..............................................................................................................106 ACTIVIDAD 1: DUPLICACIN EN LNEA / SUBRUTINA INDEXADA / SUBRUTINA ALMACENADA EN UN BFER....................107 RESUMEN DE LA ACTIVIDAD 1....................................................................................................................115 SESIN PRCTICA 7: PORTABILIDAD DE LAS PLATAFORMAS LOGIX (10 MINUTOS) / OPCIONAL___________117 ACERCA DE ESTA SESIN PRCTICA............................................................................................................117 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR.................................................................................117 PORTABILIDAD DE UN PROYECTO ENTRE PLATAFORMAS LOGIX...........................................................................118 RESUMEN DE LA SESIN PRCTICA 7..........................................................................................................126 SESIN PRCTICA 8: ASIGNACIN DE ALIAS EN LA PLATAFORMA LOGIX (15 MINUTOS)__________________127 ACERCA DE ESTA SESIN PRCTICA............................................................................................................127 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR................................................................................128 ASIGNACIN DE TAGS DE ALIAS..................................................................................................................129 RESUMEN DE LA SESIN PRCTICA 8..........................................................................................................141 SESIN PRCTICA 9: CLCULO DE MEMORIA DEL PROGRAMA FUERA DE LNEA (10 MINUTOS)______________142 ACERCA DE ESTA SESIN PRCTICA............................................................................................................142 CMO ABRIR UN ARCHIVO EXISTENTE DEL CONTROLADOR.................................................................................143 HERRAMIENTA DE CLCULO DE MEMORIA FUERA DE LNEA.................................................................................144 RESUMEN DE LA SESIN PRCTICA 9..........................................................................................................150 SESIN PRCTICA 10: PROGRAMACIN EN LNEA (15 MINUTOS) 151 ACERCA DE ESTA SESIN PRCTICA............................................................................................................151 CMO PROBAR EL PROGRAMA....................................................................................................................151 RESUMEN DE LA SESIN PRCTICA 10........................................................................................................163
A quin est dirigida esta sesin prctica? Esta sesin prctica est diseada para personas que: Estn familiarizadas con la programacin de controladores SLC, PLC5 o Logix. Han completado la sesin prctica Introduccin a Logix. Estn familiarizadas con el software RSLogix 5000.
Antes de comenzar
Antes de comenzar esta sesin prctica, asegrese de cerrar cualquier aplicacin que est activa actualmente. Tome nota que esto probablemente ya se hizo. Para esta sesin prctica usted necesitar completar las 8 secciones en orden, ya que cada seccin est basada en la seccin previa. Al final de la mayora de secciones principales de la sesin prctica, encontrar la seccin Temas cubiertos. Estas secciones ofrecen una evaluacin de los temas recientemente cubiertos. Estas secciones son opcionales y no es obligatorio que usted las complete.
Software En esta sesin prctica se usa uno de los siguientes programas de software: Software de programacin RSLogix 5000 V13.03 RSLinx V2.43
Archivos En esta sesin prctica se usan los siguientes archivos: Estos archivos estn ubicados en C:\RSLogix 5000\Project. ste es el directorio predeterminado de RSLogix 5000. Estos archivo se usan durante las principales secciones de la sesin prctica. Conveyor_Program_S1.ACD Conveyor_Program_S2.ACD Conveyor_Program_S3.ACD Conveyor_Program_S4.ACD Conveyor_Program_S5.ACD Conveyor_Program_S6.ACD Conveyor_Program_S7.ACD Conveyor_Program_S8.ACD Conveyor_Program_S9_CLX.ACD Conveyor_Program_S9_CLX.ACD Look_up_a_bar_code.ACD
Estos archivo se usan en las secciones Temas cubiertos de la sesin prctica y son opcionales. Z_A1_program_task_CLX.ACD Z_A2_Int_Dint_CLX.ACD Z_A3_PM_CLX.ACD Z_A4_Porting_CLX.ACD Z_A5_Alias_CN_CLX.ACD
Para su informacin
Nota: Si no se especifica el botn del mouse, usted debe hacer clic en el botn izquierdo del mouse.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S1.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto se seleccionar el programa Conveyor_Program_S1.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
El Controller Organizer aparece al lado izquierdo de la ventana RSLogix 5000, con una carpeta del controlador llamada Conveyor_Program.
Para su informacin
El Controller Organizer es una representacin grfica del contenido de su archivo del controlador. Esta pantalla consta de un rbol de carpetas y archivos que contienen toda la informacin acerca de los programas y datos en el archivo del controlador actual. Las carpetas principales predeterminadas en este rbol son:
Controller File Name contiene los tags del controlador cubiertos, el administrador de fallos del controlador y el administrador de encendido. Tasks en esta carpeta se muestran las tareas. Cada tarea muestra sus propios programas con rutinas y tags del controlador cubiertos. Trends en esta carpeta se muestran las tendencias. Data Types muestra tipos de datos predefinidos y definidos por el usuario. Los tipos de datos se crean en esta carpeta. I/O Configuration contiene informacin acerca de la configuracin de hardware de este archivo del controlador. Dispone de una jerarqua de mdulos con los cuales se comunica el controlador.
Al frente de cada carpeta, hay un cuadrado que contiene el signo + o el signo . El signo + indica que la carpeta est cerrada. Haga clic en l para expandir la pantalla del rbol y mostrar los archivos en la carpeta. El signo indica que la carpeta ya est abierta y su contenido est visible.
Se ejecutar una vez Devolver el control a la tarea interrumpida Usar: si usted desea ejecutar el cdigo tan pronto como ocurre un evento o disparo.
Si hace doble clic en la MainRoutine, ver que el ingeniero estaba tratando de segmentar el programa usando la instruccin JSR para ir a los transportadores y el lazo de temperatura. Luego, si hace doble clic en la rutina Conveyor_1, notar las JSR a las rutinas relacionadas con ese transportador. Esta es la manera en que un PLC tradicional hace la segmentacin del programa. As no se aprovecha el sistema Logix. Lo primero que usted observa es que el lazo de temperatura est codificado en la MainTask, que es una tarea continua.
Para su informacin
Usted puede conocer el tipo de tarea si se fija en el icono de la carpeta. Un icono de Tarea continua tiene el siguiente aspecto:
Usted sabe que es mejor programar un lazo PID usando tareas peridicas. Por lo tanto, lo primero que decide hacer es mover la rutina Temperature_Loop a una tarea peridica. 3. Haga clic con el botn derecho del mouse en la carpeta Tasks y seleccione New Task.
Para su informacin
En esta ventana usted configura las propiedades de una nueva tarea. Esta ventana cambia segn el tipo de tarea que usted elija. Hay dos nuevas opciones de configuracin para cada tarea (comenzando con V12): Disable Automatic Output Processing to Reduce Task Overhead Al final de una tarea se realiza el procesamiento de salida. El controlador examina el rbol de E/S y actualiza el estado de las salidas afectadas por la tarea. Al desactivar el procesamiento de salida, la tarea se ejecuta ms rpidamente. Si usted tiene una tarea peridica que slo hace manipulacin de datos y no tiene salidas, puede ser conveniente desactivar el procesamiento de salida. O si slo tiene unas cuantas salidas que son manipuladas por la tarea, puede ser conveniente inhabilitar el procesamiento de salida y usar la instruccin IOT (Immediate Output), procesamiento de salida efectuado inmediatamente. Tambin puede habilitar e inhabilitar el procesamiento de salida programticamente a travs del cdigo de aplicacin usando la instruccin SSV (Set System Variable). Inhibit Task Esta funcin le permite evitar que se ejecute una tarea. Se utiliza durante la puesta en marcha del sistema para aislar y probar una tarea especfica inhibiendo otras tareas en el proyecto.
Tambin puede inhibir o desinhibir una tarea programticamente a travs del cdigo de aplicacin usando la instruccin SSV (Set System Variable).
5. Configure la nueva tarea peridica de acuerdo a los datos siguientes. Cuando haya terminado, haga clic en OK.
6. La seccin Tasks del Controller Organizer ahora debe tener el siguiente aspecto.
7. Actualmente no hay un programa definido en la tarea peridica Temperature_Loop. Para aadir un programa, haga clic con el botn derecho del mouse en Temperature_Loop y seleccione New Program.
9. Escriba, como nombre del programa, PID_Loop. Cuando haya terminado, haga clic en OK
10. Haga clic en el signo + para expandir el programa PID_Loop que acaba de aadir a la tarea peridica Temperature_Loop. Usted notar que todava no hay rutinas asignadas a este programa.
11. No tendremos que crear una nueva rutina. Arrastraremos la rutina Temperature_Loop desde la tarea continua hasta la tarea peridica. Coloque el puntero sobre la rutina Temperature_Loop. Haga clic y mantenga presionado el botn izquierdo del mouse. La rutina se resaltar. Arrastre la rutina Temperature_Loop y colquela sobre el programa PID_Loop en la tarea peridica.
12. Cuando suelte el botn izquierdo del mouse, la rutina Temperature_Loop se aadir al programa PID_Loop.
13. A continuacin configuraremos el programa PID_Loop para tener una rutina principal que ser la rutina Temperature_Loop que acabamos de arrastrar y colocar.
14. Haga clic con el botn derecho del mouse en PID_Loop y luego seleccione Properties.
16. Haga clic en la ficha Configuration. Se activar la ficha Configuration. Usted observa que no se ha asignado una rutina principal.
Para su informacin
Se pueden asignar dos tipos de rutinas para un programa: principal y de fallo. Usted siempre debe asignar una rutina principal. La rutina de fallo es opcional. La rutina principal es la primera rutina que se ejecuta cuando se ejecuta el programa. Por ejemplo, en nuestro caso, cuando se ejecuta el PID_Loop del programa, ste se iniciar con la rutina Temperature_Loop. Esto es equivalente a una MCP para un PLC5 o un Archivo 2 para un SLC. La rutina de fallo le permite usar cdigo para borrar fallos especficos y permite que el controlador contine con la ejecucin. No programe la rutina de fallo para borrar globalmente todos los fallos mayores recuperables.
17. Lo que queremos es asignar la rutina Temperature_Loop como rutina principal. Para ello, haga clic en la flecha hacia abajo del cuadro de seleccin junto a Main: Seleccione Temperature_Loop y haga clic en Apply.
18. Con esto se asigna la rutina Temperature_Loop como rutina principal. Haga clic en OK para cerrar la ventana Program Properties. 19. Haga doble clic en la rutina Temperature_Loop. Esto abrir el editor de lgica de escalera. Puesto que la instruccin PID anteriormente estaba en la tarea continua, tuvo que usarse un temporizador para condicionar la ejecucin de PID.
20. Ahora que PID se est ejecutando en una tarea peridica, la condicin de temporizador ya no se necesita. Elimine el rengln cero y la condicin de temporizador efectuado (XIC) en el rengln uno.
21. En el men File, seleccione Save As. Aparecer la ventana Save As. 22. En el campo File Name, escriba Conveyor_Program_S2. Luego haga clic en Save. Si el sistema le indica que reemplace el archivo, haga clic en Yes.
Divisin de cada seccin del cdigo del transportador en su propio programa en la tarea continua
Ahora que usted ha concluido la transferencia del lazo de temperatura a la tarea peridica, usted decide dividir cada cdigo del transportador en su propio programa. Esto permitir una ms fcil codificacin, resolucin de problemas y adicin de segmentos adicionales de transportador en el futuro. Usted continuar trabajando en el programa de la seccin anterior, Conveyor_Program_S2. Para su informacin Un controlador Logix le permite dividir su aplicacin en mltiples programas, cada uno con sus propios datos. No hay necesidad de administrar nombres de tags que crean conflicto entre programas. Esto facilita la reutilizacin de cdigos y nombres de tag en diferentes programas. Actualmente, slo nos dedicaremos al uso de varios programas. Posteriormente aprenderemos a administrar nombres de tags. 1. En el Controller Organizer, haga clic con el botn derecho del mouse en la carpeta MainTask y seleccione New Program.
3. Cree un programa para el transportador 1. Escriba Conveyor_1 en el campo Name. Luego, haga clic en OK.
4. En el Controller Organizer, ahora usted tendr 2 programas en la tarea continua: MainProgram y Conveyor_1.
5. Ahora, arrastre y coloque las 4 rutinas de MainProgram en el programa Conveyor_1. Estas rutinas son C1_Alarm_Status, C1_Energy_Manag, C1_Start_Stop y Conveyor_1.
7. A continuacin debemos asignar una rutina principal al programa Conveyor_1. Recuerde que un programa siempre debe tener una rutina principal. 8. Haga clic con el botn derecho del mouse en la carpeta del programa Conveyor_1 y seleccione Properties.
11. Lo que queremos es asignar la rutina Conveyor_1 como rutina principal. Para ello, haga clic en la flecha hacia abajo del cuadro de seleccin junto a Main. Seleccione Conveyor_1 y haga clic en Apply.
12. Haga clic en OK para cerrar la ventana Program Properties. 13. En el Controller Organizer, la estructura del programa ahora aparece como se indica a continuacin. Usted observa que aparece junto a la rutina Conveyor_1. Esto la designa como rutina principal para el programa Conveyor_1.
15. Cuando haya terminado de crear los programas para los otros 2 transportadores, la estructura del programa en el Controller Organizer aparecer como se indica a continuacin:
16. En la tarea continua, el MainProgram ya no se necesita. Ahora lo retiraremos del programa. 17. Primero tendremos que retirar el MainProgram de la lista de tareas continuas de programas programados para ejecutar. Haga clic con el botn derecho del mouse en la carpeta MainTask y seleccione Properties.
19. Haga clic en la ficha Program Schedule. Se activar la ficha Program Schedule.
20. En la lista Scheduled, resalte MainProgram. Haga clic en Remove. Luego haga clic en Apply. Con esto se cancela la sincronizacin del programa. Ahora est cancelada la sincronizacin del programa y ste ya no ser ejecutado por el controlador. En la figura siguiente usted ver que el MainProgram ahora aparece en la lista Unscheduled.
21. Haga clic en OK para cerrar la ventana Task Properties. 22. Guarde el programa haciendo clic en el icono Save 23. En el men File, seleccione Close. en la barra de herramientas.
En un PLC tradicional usted tena 3 tipos diferentes de tareas Principal = Continua en Logix STI = Peridica en Logix PII/DII = Evento en Logix
Pero slo tena una STI y PII/DII. En Logix usted tiene mltiples tareas peridicas y de eventos. Esto puede ser una herramienta potente, pero debe entenderse antes de implementarse. Al programar con Logix, surge la pregunta: cul es la mejor manera de segmentar un proyecto? Es mejor usar mltiples programas en una sola tarea o mltiples tareas peridicas con un programa? La respuesta ms comn es usar mltiples tareas peridicas con un programa, lo cual, en el 99% de los casos, es la decisin incorrecta. Por qu? La mejor manera de demostrarlo es con un ejemplo en lnea. Esto se lograr usando un programa que tiene una tarea continua con 5 programas separados, 5 tareas peridicas con un programa cada una y una tarea peridica con 5 programas. Para la tarea continua todos los programas son iguales, un lazo simple para hacer la ejecucin del programa en 5 ms. Por lo tanto, con 5 programas, la tarea continua debe requerir aproximadamente 25 ms para ejecutarse. Las 5 tareas peridicas contienen el mismo programa que la tarea continua, por lo tanto cada ejecucin debe tomar aproximadamente 5 ms. La pregunta ahora es: A qu rgimen debo ejecutar la tarea peridica y con qu prioridad deben ejecutarse las tareas?
Alternar tareas significa que cuando mltiples tareas se ejecutan con la misma prioridad, stas se ejecutarn en segmentos de tiempo de 1 ms alternndose entre s. Por ejemplo, si tiene 3 tareas peridicas con la misma prioridad, la Tarea 1 se ejecutar por 1 ms, luego la Tarea 2 se ejecutar por 1 ms y luego la Tarea 3 se ejecutar por 1 ms. Este patrn se repetir hasta que se haya completado la ejecucin de todas las tareas.
La mayora de personas estableceran 21 ms o 25 ms para los perodos de tareas peridicas y les daran la misma prioridad. Veamos el detalle descargando un programa y viendo las diferentes ejecuciones de tareas y programas en accin. Siga los pasos siguientes para completar esta sesin prctica avanzada .
2. Haga clic con el botn izquierdo del mouse en el programa llamado Z_A1_program_task_CLX.ACD.. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Z_A1_program_task_CLX.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
2. La ruta de comunicacin al controlador se ha guardado con el proyecto. Cuando aparezca la ventana Download, seleccione Download.
3. El programa se descargar. El sistema le pedir que cambie el controlador al modo de marcha, seleccione Yes. Si no se le pidi que cambie el controlador al modo de marcha, use el interruptor de llave para colocar el controlador en el modo de marcha.
Para su informacin Usted observa un smbolo sobre algunas de las carpetas de tareas. El smbolo de pausa significa que la tarea est inhibida actualmente o no se est ejecutando.
2. En el Controller Organizer, haga clic con el botn derecho del mouse en la tarea peridica Periodic y seleccione Properties.
Para su informacin: Ficha Task Properties Monitor Scan Times (Elapsed Time): Mostrar los tiempos transcurridos mximo y ltimo de esta tarea. Interval Times (Elapsed Timer Between Triggers): Mostrar los tiempos mximo y mnimo entre disparos de las tareas peridicas. Este tiempo debe ser aproximadamente el perodo de ejecucin de la tarea peridica. Task Overlap Count: ste es el nmero de veces que esta tarea se activ para su ejecucin y no pudo realizarse porque estaba en ejecucin actualmente. Cuando esto ocurre, el controlador registrar un fallo menor. Reset: Este botn restablecer todos los campos a cero.
6. Haga clic en el botn Reset. 7. Usted ver que los tiempos de escn para la tarea son de aproximadamente 5 ms y el intervalo es aproximadamente 75 ms. El perodo para la tarea es 75 ms. 8. En el Controller Organizer, haga doble clic en Controller Tags. Esto abrir el Tag Monitor. En la ventana Tag Monitor podremos manipular la ejecucin del programa. Verifique que est en la ficha Monitor Tags.
9. En el Tag Monitor introduzca un 1 en la columna de valor para Inhibit_Periodic y presione Enter. El valor regresar a cero.
10. En el Tag Monitor introduzca un 1 en la columna de valor para Uninhibit_Periodic y presione Enter. El valor regresar a cero.
11. Esto causar que las otras tareas peridicas que estn inhibidas comiencen a ejecutarse. 12. En el men Window, seleccione Task Properties Periodic. Esto traer la ventana Task Properties al primer plano.
13. Cuando aparezca la ventana Task Properties, haga clic en el botn Reset.
14. Si se fija en la ventana Task Properties, observar que el tiempo de escn para la tarea ahora es aproximadamente 21 ms. Esto se debe a que la conmutacin de tareas est ocurriendo entre las 5 tareas peridicas.
15. Qu sucedera si reducimos el perodo de las tareas peridicas a 22 ms? En el men Window, seleccione Controller Tags A1_program_task(controller).
16. Esto traer la ventana Tag Monitor al primer plano. 17. En el Tag Monitor introduzca un 1 en la columna de valor para Periodic_to_22 y presione Enter. El valor regresar a cero. Con esto acaba de cambiar todos los perodos de tareas peridicas a 22 ms.
18. Traiga Task Properties Periodic al primer plano. 19. Haga clic en el botn Reset. Usted nota que el tiempo de escn para las tareas ahora es aproximadamente 21 ms, pero Interval Time muestra un mximo de aproximadamente 24 ms. Fue una buena decisin elegir este rgimen de tarea peridica desde un inicio, verdad?
20. En el Controller Organizer, haga clic con el botn derecho del mouse en la tarea peridica Periodic4 y seleccione Properties.
21. Cuando aparezca la ventana Task Properties Periodic4, haga clic en la ficha Monitor. 22. Cuando aparezca la ficha Monitor, haga clic en el botn Reset.
Aparece un valor en Task Overlaps y el valor de Scan Times no es 21 ms. Esto se debe a la conmutacin de tareas. Recuerde, la tarea peridica conmutar tareas en incrementos de 1 ms. Una manera fcil de mostrar esto es con un cronograma. Por ejemplo, cada vez que usted ve P1 en la figura siguiente, es la ejecucin en 1 ms de la tarea peridica 1. P1 P2 P3 P4 P5 | P1 P2 P3 P4 P5 | P1 P2 P3 P4 P5 | P1 P2 P3 P4 P5 | P1 P2 P3 P4 P5 | Por lo tanto, cunto tiempo requiere la tarea peridica P1 para ejecutarse? Cuente el nmero de PX hasta que haya contado cinco P1. Usted obtiene un conteo de 21 o 21 ms; esto es lo que vimos. Ahora, cunto tiempo requiere la tarea peridica P5 para ejecutarse? Con un conteo usted obtendr 25 ms; esto sera para la tarea Periodic4. Esto es lo que vimos. 24. Regrese a Tag Monitor. Introduzca un 1 en la columna de valor para Periodic_to_75 y presione Enter. El valor regresar a cero. Con esto acaba de cambiar todos los perodos de tareas peridicas nuevamente a 75 ms. 25. Por lo tanto, ejecutar las tareas peridicas a 22 ms no fue una buena idea. Usted piensa, las ejecutar a 26 ms, esto me proporcionar tiempo de procesamiento interno y ser aceptable. 26. Modifique el valor del tag Task_22 a 26000. Esto nos permitir cambiar los perodos de las tareas peridicas a 26 ms.
27. Introduzca un 1 en la columna de valor para Periodic_to_22 y presione Enter. El valor regresar a cero. Con esto acaba de cambiar todos los perodos de tareas peridicas nuevamente a 26 ms. 28. Conmute nuevamente a la ventana Task Properties Periodic. 29. Haga clic en el botn Reset. Parece que todo est bien, pero lo que realmente debemos examinar es Periodic4. 30. Conmute a la ventana Task Properties Periodic4. 31. Haga clic en el botn Reset. Usted observa que ya no hay superposiciones de tareas y el tiempo de escn es aproximadamente 24 ms. Todo est bien, la tarea se est ejecutando en el tiempo que esperbamos, y no hay superposiciones. 32. Cierre la ventana Task Properties haciendo clic en OK. 33. En la ventana Tag Monitor introduzca un 1 en la columna de valor para Inhibit_Periodic y presione Enter. El valor regresar a cero. Usted acaba de inhibir la ejecucin de todas las tareas peridicas. 34. En la ventana Tag Monitor introduzca un 1 en la columna de valor para Combined_Periodic y presione Enter. El valor regresar a cero. Acaba usted de iniciar la ejecucin de la tarea Combined_Periodic. 35. En el Controller Organizer, haga clic con el botn derecho del mouse en la tarea peridica Combined_Periodic y seleccione Properties. 36. Cuando aparezca la ventana Task Properties, haga clic en la ficha Configuration. Observar que el perodo est establecido para 25 ms. 37. A continuacin, haga clic en la ficha Monitor. 38. Haga clic en el botn Reset.
39. Notar que el perodo de ejecucin es menos de 25 ms y que no hay superposiciones, pero cuando tena 5 tareas peridicas individuales, hubieron superposiciones y tuvo que establecer el perodo en 26 ms. En este caso el programa no tiene el tiempo de procesamiento interno adicional de la conmutacin de tareas. Cierre la ventana haciendo clic en OK.
Usted observa que el tiempo de escn aqu es menor que el de la tarea peridica Periodic4 anterior. Usted obtiene un mejor rendimiento con la tarea Combined_Periodic.
Resumen de la actividad 1
En esta sesin prctica demostramos que es mejor hacer la segmentacin del programa usando mltiples programas en una tarea en lugar de mltiples tareas. Usted obtendr as un mejor rendimiento y no tiene que preocuparse acerca de la conmutacin de tareas. Tambin es conveniente evitar tener varias tareas con la misma prioridad y perodos similares para evitar el tiempo de escn adicional debido a la conmutacin de tareas. El programa de ejemplo us todas las tareas peridicas con el mismo perodo y prioridad. Qu sucedera si tuviera un proyecto con la siguiente configuracin? Perodo de tarea Periodic1 2 ms, prioridad 1, ejecucin 1 ms Perodo de tarea Periodic2 4 ms, prioridad 2, ejecucin 5 ms Perodo de tarea Periodic3 5 ms, prioridad 2, ejecucin 2 ms Perodo de tarea Periodic4 15 ms, prioridad 7, ejecucin 4 ms Perodo de tarea Periodic5 20 ms, prioridad 10, ejecucin 9 ms
Perodo de tarea Periodic1 2 ms, prioridad 1, ejecucin 1 ms Perodo de tarea Periodic23 4 ms, prioridad 2, ejecucin 2.0 ms (Periodic2 y Periodic3 combinadas) Perodo de tarea Periodic45 15 ms, prioridad 7, ejecucin 11 ms (Periodic4 y Periodic5 combinadas)
De esta manera usted evita tareas con la misma prioridad combinndolas y tambin combinando tareas que se ejecutan con perodos similares.
5. Veamos el efecto de las tareas peridicas en la tarea continua. 6. Cierre la ventana Task Properties haciendo clic en OK. 7. Vaya a la ventana Tag Monitor. 8. Modifique el valor del tag Task_22 a 25000 (si est usando un controlador FlexLogix, el valor ser 23000). Esto nos permitir cambiar los perodos de la tarea peridica a 25 ms.
Sesin prctica de Logix para programadores I LOT-SP004A-ES-E Pgina 44 de 163
9. Introduzca un 1 en la columna de valor para Periodic_to_22 y presione Enter. El valor regresar a cero. Con esto acaba de cambiar todos los perodos de las tareas peridicas a 25 ms (23 ms para un controlador FlexLogix). 10. Introduzca un 1 en la columna de valor para Uninhibit_Periodic y presione Enter. El valor regresar a cero. Usted acaba de activar todas las tareas peridicas. 11. Usted nota al observar la plantilla del controlador que el controlador entr en fallo.
12. Haga clic en el icono del controlador junto a la palabra Faulted. Aparecer un men desplegable. Seleccione Go To Faults.
13. Aparecer la ventana Controller Properties A1_program_task. El error es un fallo del temporizador de control (watchdog) para la MainTask (la tarea continua). Esto significa que la tarea continua no complet su ejecucin en menos de 500 ms. Esto sucedi porque las tareas peridicas estaban privando a la tarea continua de la ejecucin.
14. Haga clic en el botn Clear Majors. 15. Haga clic en OK para cerrar la ventana Controller Properties. 16. Tendremos que modificar los perodos de la tarea peridica a fin de no experimentar fallos del temporizador de control (watchdog). En la ventana Tag Monitor introduzca 27000 en la columna de valor para Task_22 y presione Enter. Esto cambia los perodos de tareas peridicas a 27 ms. 17. En la ventana Tag Monitor introduzca un 1 en la columna de valor para Periodic_to_22 y presione Enter. Con esto se hace efectivo el cambio en la tarea peridica. 18. Ponga el controlador en el modo Run. El valor en Periodic_to_22 cambiar a cero. Esta vez el controlador no entra en fallo. 19. Abra la ventana Properties para la MainTask. 20. Cuando aparezca la ventana Task Properties MainTask, haga clic en la ficha Monitor. 21. Haga clic en el botn Reset.
22. Usted observa que el tiempo de escn para la tara aument considerablemente. Anteriormente, cuando la tarea continua era la nica tarea en ejecucin, se ejecutaba en 24 a 28 ms. Esto se debe a que las tareas peridicas tienen una mayor prioridad que la tarea continua.
23. Cierre la ventana Task Properties haciendo clic en OK. 24. En el men Communication seleccione Go Offline.
25. En el men File, seleccione Close. Si el sistema le pide que guarde los cambios, seleccione No.
Resumen de la actividad 2
En esta sesin prctica demostramos el efecto que la ejecucin de la tarea peridica tendr en la ejecucin de la tarea continua. Es importante equilibrar las necesidades de las tareas peridicas con las de la tarea continua. Recuerde que el servicio de comunicaciones en el controlador ocurre durante la tarea continua (durante el segmento del tiempo de procesamiento interno del sistema). Por lo tanto, si usted priva de la ejecucin a la tarea continua, tambin privar a las comunicaciones en el controlador. Esto afectar los mensajes, las transferencias en bloques, las actualizaciones de HMI, RSLogix 5000, el controlador que establece conexiones, etc.
Sesin prctica 3: Configuracin de la base de datos de tags en un controlador Logix (40 minutos)
Acerca de esta sesin prctica
En esta sesin prctica, analizaremos y mostraremos cmo configurar la base de datos de tags usando las funciones User Defined Data Types y Data Scoping. En esta sesin prctica, usted: Aprender las ventajas de usar UDT Aprender como optimizar la configuracin de UDT Usar la funcin Data Scoping para facilitar y acelerar el desarrollo
Continuaremos modificando el programa de la sesin prctica 1. Ahora nos concentraremos en la configuracin de los datos en un controlador Logix. Siga los pasos siguientes para completar la sesin prctica 2.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S3.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S3.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
1. En el Controller Organizer, haga doble clic en Controller Tags. Esto abrir el Tag Editor.
2. Aparecer el Tag Editor. Usted nota que la base de datos de tags tiene el mismo aspecto que la del PLC tradicional.
Un tag contiene todos los datos relacionados a un aspecto especfico de su sistema. Esto mantiene juntos los datos relacionados y facilita su ubicacin, independientemente de su tipo de datos. Cada pieza individual de datos (miembro) obtiene un nombre descriptivo. Esto crea automticamente un nivel inicial de documentacin para su lgica. Usted puede usar los tipos de datos para crear mltiples tags con la misma configuracin de datos.
Por ejemplo, use un tipo de datos definido por el usuario para almacenar todos los parmetros de un tanque, inclusive valores de temperatura, presin, posicin de vlvula y valores preseleccionados. Luego cree un tag para cada tanque basado en ese tipo de datos. Use matrices para crear rpidamente un grupo de tags similares. Una matriz crea mltiples ocurrencias de un tipo de datos bajo un nombre de tag comn.
Las matrices permiten organizar un bloque de tags que usa el mismo tipo de datos y realiza una funcin similar. Usted organiza los datos en 1, 2 3 dimensiones segn lo que los datos representan.
Por ejemplo, use una matriz de 2 dimensiones para organizar los datos para una zona de tanques. Cada elemento de la matriz representa un tanque. La ubicacin del elemento dentro de la matriz representa la ubicacin geogrfica del tanque. Importante: Reduzca al mnimo el uso de matrices BOOL. Muchas instrucciones de matriz no funcionan en matrices BOOL. Esto hace ms difcil inicializar y restablecer una matriz de datos BOOL.
Aproveche los tags del controlador cubiertos.
Normalmente, use una matriz BOOL para los objetos a nivel de bit de una pantalla PanelView. De lo contrario, use los bits individuales de un tag DINT o una matriz de DINT.
Si desea mltiples tags con el mismo nombre, defina cada tag en el alcance del programa (tags de programa) para un diferente programa. Esto le permite usar tanto nombres lgicos como de tag en mltiples programas. Evite usar el mismo nombre para un tag de controlador y un tag de programa. Dentro de un programa, no es posible hacer referencia a un tag de controlador si un tag con el mismo nombre existe como tag de programa para dicho programa. Algunos tags deben ser tags del controlador cubiertos (tag de controlador). Si desea usar el tag: en ms de un programa en el proyecto en una instruccin Message (MSG) para producir o consumir datos entre controladores para comunicarse con un terminal PanelView Sesin prctica de Logix para programadores I Entonces asigne este alcance: controller scope (controller tags)
LOT-SP004A-ES-E
Pgina 51 de 163
Para aumentar la eficiencia de su lgica, minimice el uso de los tipos de datos SINT o INT. Siempre que sea posible, use el tipo de datos DINT para los datos enteros.
Un controlador Logix5000 generalmente compara o manipula los valores como valores de 32 bits (DINT o REAL). El controlador generalmente convierte un valor SINT o INT a un valor DINT o REAL antes de usar el valor. Si el destino es un tag SINT o INT, el controlador normalmente convierte el valor nuevamente a un valor SINT o INT. La conversin a o desde SINT o INT ocurre automticamente sin necesidad de programacin adicional. Pero requiere tiempo de ejecucin y memoria adicional. usar slo caracteres alfabticos (AZ o az), caracteres numricos (09) y subrayado (_) debe comenzar con un carcter alfabtico o de subrayado no ms de 40 caracteres no usar caracteres de subrayado consecutivamente ni como carcter final (_) se tratan indistintamente las maysculas y minsculas
Si bien se tratan indistintamente las maysculas y minsculas en los tags (A en mayscula es igual que a en minscula), es ms fcil leer una combinacin de letras maysculas y minsculas. Estos tags son ms fciles de leer: Tank_1 Tank1 Que estos tags: TANK_1 TANK1 Tank_1 Tank1
El software RSLogix 5000 muestra tags del mismo alcance en orden alfabtico. Para facilitar el monitoreo de tags relacionados, use caracteres de inicio similares para los tags que desea mantener juntos. Si comienza el nombre de cada tag para tanque con Tank, estos tags se mantienen juntos Nombre de tag Tank_North Tank_South De lo contrario, los tags pueden terminar separados. Nombre de tag North_Tank otros tags que comienzan con las letras o, p, q, etc. South_Tank
3. Haga clic con el botn izquierdo del mouse en el signo + junto a N7 en el editor de tags. Esto expandir la matriz N7 para mostrar todos los elementos. Usted observa que los datos estn definidos de N7[0] hasta N7[7]. Luego nuevamente de N7[20] hasta N7[27] y N7[40] hasta N7[47]. Estas reas son por cada uno de los 3 transportadores, una configuracin de tabla de datos PLC tradicional.
4. Tambin examine B3, F8 y T4. stos siguen el mismo formato. El transportador 1 comienza en [0], el transportador 2 comienza en [20] y el transportador 3 comienza en [40]. Esto se hizo para facilitar la bsqueda de los datos de un transportador en la base de datos de tags. Esto ayuda, pero usted est usando 4 tablas de datos para los transportadores y desperdiciando memoria. Esto se lograra mejor creando un UDT. 5. Para comenzar a crear un UDT, en el Controller Organizer, bajo la carpeta Data Types, haga clic en el signo + junto a User-Defined.
6. Notar que hay un UDT llamado Conveyor (ya se inici la creacin del UDT).
7. Haga doble clic en la palabra Conveyor. Esto abrir el editor de UDT para el tipo de datos del transportador. Como ve, el UDT es una combinacin de diferentes tipos de datos. Esto es una herramienta muy til durante la programacin.
Para su informacin: Pautas para los tipos de datos definidos por el usuario
Al crear tipos de datos definidos por el usuario, tenga en cuenta lo siguiente: Si incluye datos que representan dispositivos de E/S, debe usar lgica para copiar los datos al UDT. No puede asignar alias de E/S en un UDT. Si incluye una matriz en el UDT, limite la matriz a una sola dimensin. No se permite usar matrices de mltiples dimensiones en los UDT. Cuando cree el UDT, agrupe los datos similares. Esto crea un UDT ms compacto.
8. Al examinar el UDT, usted observa que los tipos de datos similares no estn agrupados. Los tipos de datos BOOL y REAL estn combinados. El tamao del UDT actualmente es 52 bytes. Esto puede reducirse agrupando los datos BOOL juntos. Para hacerlo, haga clic a la izquierda de Motor_Overload. Con esto seleccionar la fila completa.
9. Luego, haga clic en el botn Move Up. Esto mueve el tag Motor_Overload hacia arriba en el UDT. Repita esto con los otros tags BOOL hasta que todos estn el mismo grupo.
10. Haga clic en Apply. Observe ahora el tamao del UDT. Usted ha ahorrado 12 bytes. Cuando haya terminado de mover los tags BOOL, el UDT se ver como se indica a continuacin:
11. Ahora aada los 8 enteros N7 en el UDT, tendr que aadirlos manualmente. Recuerde la pauta 4 anterior (pgina 59). Cuando haya terminado, el UDT se ver similar a la figura siguiente. Recuerde hacer clic en Apply cuando haya terminado las adiciones. Ahora ha completado el UDT que define un transportador en el programa.
12. Haga clic en OK para cerrar la ventana de edicin de UDT. 13. En el men File, seleccione Close. El sistema le pedir que guarde los cambios hechos en el archivo, seleccione No.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S4.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto se ha seleccionado el programa Conveyor_Program_S1.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado. 4. En el Controller Organizer, haga doble clic en Controller Tags. Esto abrir el Tag Editor.
5. Al examinar el Tag Editor, usted ver un nuevo tag en la base de datos, Conveyor_1.
6. Haga clic en el signo + junto a Conveyor_1 para expandir el tag. Usted observa que el tag tiene el mismo formato que el UDT que acaba de crear. Esto se confirma examinando la columna Type.
7. En el Controller Organizer, expanda los 3 programas Conveyor en la tarea continua, haciendo clic en el signo + para cada programa.
8. Haga doble clic en la rutina C2_Start_Stop. Esto abrir la rutina para visualizacin y edicin.
9. Ahora aparece la rutina de lgica de escalera C2_Start_Stop. Usted observa que en este caso, el direccionamiento para Conveyor_2 todava es el mismo del PLC tradicional. Por ejemplo, en el rengln 0, el temporizador est direccionado como T4:20.
10. Haga doble clic en la rutina C1_Start_Stop. Esto abrir la rutina para visualizacin y edicin.
11. Ahora aparece el archivo de lgica de escalera C1_Start_Stop. Usted observa que el direccionamiento para Conveyor 1 utiliza el UDT. Como ve, el cdigo ahora est autodocumentado y el nombre del tag describe lo que es. No es necesario aadir una descripcin a la direccin, como se hace en los PLC tradicionales. Todava hay algunas direcciones de estilo antiguo en el cdigo; nos encargaremos de ellas posteriormente.
12. Ahora, actualicemos los otros dos programas de transportador para usar UDT. 13. Primero, necesitamos crear dos nuevos tags. En el men Window, seleccione Controller Tags Conveyor_Program(controller). Esto traer la ventana Tag Editor al primer plano.
14. Se activar la ventana Tag Editor. En el lado inferior izquierdo de la ventana Tag Editor hay w fichas. Haga clic en la ficha Edit Tags. Aqu crearemos dos nuevos tags, Conveyor_2 and Conveyor_3.
15. En el Tag Editor, en la parte inferior de la lista, notar que hay un espacio abierto para crear un nuevo tag. 16. En la columna Tag Name: escriba Conveyor_2 y en la columna Type, escriba Conveyor. Con esto se crea un tag llamado Conveyor_2 del tipo transportador.
17. Luego haga clic en la nueva fila vaca debajo de Conveyor_2 para introducir y crear el tag.
18. Ahora cree un tag para Conveyor_3. 19. Cuando haya terminado, la base de datos de tags aparecer de la siguiente manera:
20. Ahora, necesitamos actualizar el cdigo de lgica de escalera para usar estos nuevos tags. Comenzaremos con Conveyor_2. Slo modificaremos las rutinas Alarm_Status y Energy_Manag. Use las tablas siguientes y refirase a las rutinas Conveyor_1.
21. Comencemos con un ejemplo. En el Controller Organizer, haga doble clic en la rutina C2_Alarm_Status. IMPORTANTE, por ahora ignoraremos las direcciones B3 que tienen la palabra mapped en la descripcin. 22. En el rengln cero est la instruccin OTE. La descripcin es C2 Motor Overload. Si examina las figuras anteriores, ver que ste coincide con el segundo miembro en el UDT.
23. Para cambiar la direccin, haga doble clic en B3[28]. Con esto se abrir un cuadro desplegable para que pueda seleccionar un nuevo tag.
24. Haga clic en la flecha hacia abajo para abrir el explorador de tags. Desplcese por la lista hasta que vea Conveyor_2. Haga clic en el signo + para expandir el tag. Luego seleccione Conveyor_2.Motor_Overload.
25. Haga doble clic en Conveyor_2.Motor_Overload. Esto hace que Conveyor_2.Motor_Overload sea el nuevo tag para la instruccin OTE. Luego haga clic en cualquier lugar. El rengln ahora se ver de la siguiente manera. Nuevamente, observe el cdigo de autodocumentacin.
26. Ahora, contine y termine de actualizar esta rutina. Luego actualice la rutina Energy_Manag para el transportador 2. A continuacin repita los mismos pasos para el transportador 3. 27. Usted observa en la figura del paso 25 que el tag Conveyor_2.Motor_Overload tiene una descripcin. Con V12 y versiones anteriores, las descripciones introducidas en el editor UDT no se mostraban fuera del editor UDT.
Para su informacin: Opciones Pass Through y Append Description de UDT A partir de la versin 13 de RSLogix 5000, hay 2 nuevas selecciones bajo Workstation Options.
Si habilita Pass-Through Descriptions, entonces, cada vez que no proporcione una descripcin explcita para un tag:
La descripcin de miembro del tipo de dato definido se mostrar si el tag es un miembro, o La descripcin del tag de base se mostrar si el tag es un bit, elemento de matriz o miembro, o La descripcin del tipo de dato de base definido se mostrar.
Si selecciona esta casilla de verificacin,se habilitar la casilla de verificacin Append to Base Tag Descriptions. Seleccione la casilla de verificacin Append to Base Tag Descriptions si desea que la de descripcin del tag de base sea parte de la descripcin de paso. Aada cualquier descripcin adicional segn las reglas de descripcin de paso. Anteriormente a esta funcin, usted tena que cortar manualmente las descripciones del editor UDT y pegarlas manualmente en los tags en el Tag Editor. Esto aada muchas horas de programacin.
28. Veamos cmo funciona esta nueva funcin. En el Controller Organizer, bajo la carpeta Data Types, haga clic en el signo + junto a User-Defined.
30. Haga doble clic en la palabra Conveyor. Esto abrir el editor de UDT para el tipo de datos del transportador.
31. Aada las descripciones para los miembros de UDT. Cuando haya terminado, haga clic en Apply.
32. Tambin cambiaremos la descripcin de UDT. Cambie la descripcin para que coincida con la figura siguiente.
33. Haga clic en Apply y luego en OK para cerrar el editor UDT. 34. En el Controller Organizer, haga doble clic en la rutina C2_Alarm_Status. Notar que las descripciones introducidas ahora estn presentes en los tags. La descripcin es la descripcin de UDT (Conveyor Data) + la descripcin de miembro de UDT (Motor Overload Indication).
37. Bajo Applications, haga clic en Display. 38. La ventana aparecer de la siguiente manera.
39. Coloque la ventana WorkStation Options de manera que pueda verla y las instrucciones OTE en la rutina C2_Alarm_Status. 40. Haga clic en la casilla de verificacin junto a Append To Base Tag Descriptions para desactivar esta opcin. Haga clic en Apply.
41. Observar que la descripcin ha cambiado. Se elimin la descripcin UDT Conveyor Data.
42. Haga clic en la casilla de verificacin junto a Show Pass-Through Descriptions para desactivar esta opcin. Haga clic en Apply. 43. Observar que la descripcin cambi otra vez. No hay nada all. Es as como habran aparecido los renglones en la versin V12 y anteriores de RSLogix 5000.
44. Active nuevamente ambas opciones. Luego haga clic en Apply y luego en Ok. 45. Cuando haya terminado, haga clic en el icono Save.
Sesin prctica de Logix para programadores I LOT-SP004A-ES-E Pgina 72 de 163
Un controlador Logix le permite dividir su aplicacin en mltiples programas. No hay necesidad de administrar nombres de tags que crean conflicto entre programas. Esto facilita la reutilizacin de cdigos y nombres de tag en diferentes programas. Los datos al alcance del programa estn aislados de otros programas. Las rutinas no pueden acceder a los datos que estn al alcance de otro programa. Usted puede reutilizar en mltiples programas el nombre de un tag al alcance de un programa.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S5.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S5.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
2. Cuando se abre el Tag Editor notar que no estn muchos de los tags antiguos (N7, F8, T4). Estos tags ya no se necesitan despus de crear el UDT de transportador y modificar el cdigo. Los tags Conveyor_1, Conveyor_2 y Conveyor_3 tomaron sus lugares. Los archivos F9 y PD fueron cambiados a nombres de tag en lugar de numeracin de tabla de datos como en un PLC tradicional. El archivo T10 se elimin despus de mover el PID a la tarea peridica.
Ahora moveremos los tags Conveyor_1, Conveyor_2 y Conveyor_3 fuera del alcance del controlador al alcance del programa. 3. Haga doble clic en la columna Type. Con esto se clasificarn mejor los tags para la operacin de edicin que realizaremos.
4. Primero moveremos los tags Temp_Loop_PID, Control_Output y Process_Variable al alcance del programa Temperature_Loop. 5. Haga clic a la izquierda del tag Temp_Loop_PID. Con esto seleccionar la fila completa.
6. Luego presione sin soltar la tecla de maysculas y haga clic a la izquierda del tag Process_Variable. Con esto se seleccionarn los 3 tags.
8. En el Tag Editor se encuentra el selector desplegable Scope. Haga clic en la flecha hacia abajo. As mostrar todas las bases de datos de tags del programa y el controlador actual.
9. Seleccione PID_Loop.
Para su informacin
En el men desplegable, el (controlador) junto al nombre designa los tags al alcance del controlador. El controlador se llama Conveyor_Program. Por lo tanto Conveyor_Program (controlador) significa tags al alcance del controlador. Todos los otros nombres en la lista son nombres de programas en el controlador.
10. Con esto se abrir el editor de tags al alcance del programa para el PID_Loop del programa.
11. Actualmente no hay tags definidos a nivel de alcance del programa para PID_Loop. Ahora pegaremos los tags que cortamos en el paso 7. 12. Haga clic en el archivo Tag Name abierto para que aparezca el cursor.
15. Cambie nuevamente a los tags al alcance del controlador. La pantalla tendr el aspecto siguiente:
16. Ahora, corte/pegue el tag Conveyor_1 al alcance del programa de Conveyor_1. 17. Ahora, corte/pegue el tag Conveyor_2 al alcance del programa de Conveyor_2. 18. Ahora, corte/pegue el tag Conveyor_3 al alcance del programa de Conveyor_3. 19. Cuando haya terminado, el nico tag que est al alcance del controlador debe ser B3. ste se eliminar posteriormente.
20. Cuando haya terminado de mover los tags, haga clic en el icono Verify Controller 4 errores, pero eso est bien. Los errores tratan con el programa Simulator.
. Tendr
Anteriormente indicamos que los datos al alcance del programa estn aislados de otros programas. Las rutinas no pueden acceder a los datos que estn al alcance de otro programa. Sin embargo, usted puede reutilizar en mltiples programas el nombre de un tag al alcance de un programa. Para probar esto vayamos a los tags alcance del programa para los 3 transportadores y cambiemos los nombres de tags Conveyor_1, Conveyor_2 y Conveyor_3 a Conveyor. 21. Seleccione los tags al alcance del programa Conveyor_1.
23. Modifique los otros 2 tags, Conveyor_2 and Conveyor_3. 24. Cuando haya terminado de cambiar los nombres de los tags, haga clic en el icono Verify Controller . Tendr 4 errores, pero eso est bien. Los errores tratan con el programa Simulator. Usted no obtuvo ningn error asociado con tags duplicados. Eso se debe a que los tags al alcance del programa estn aislados uno de otro.
Para su informacin
La funcin Data Scoping para los tags facilita la reutilizacin de cdigos y nombres de tag en diferentes programas. En este caso usted puede crear un programa llamado Conveyor que usa tags al alcance del programa. Luego puede aadir este programa en el proyecto tantas veces como el nmero de segmentos de transportador que tenga, y nunca tendr que modificar el cdigo ni los tags.
25. En el men File, seleccione Close. 26. Cuando el sistema le pide que guarde los cambios, seleccione No.
Siga los pasos siguientes para completar esta sesin prctica avanzada .
2. Haga clic con el botn izquierdo del mouse en el programa llamado Z_A2_Int_Dint_CLX.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Z_A2_Int_Dint_CLX.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
2. La ruta de comunicacin al controlador se ha guardado con el proyecto. Cuando aparezca la ventana Download, seleccione Download.
3. El programa se descargar. El sistema le pedir que cambie el controlador al modo de marcha, seleccione Yes. Si no se le pidi que cambie el controlador al modo de marcha, use el interruptor de llave para colocar el controlador en el modo de marcha.
Actividad 1 (en lnea): Tipos de datos INT comparados con tipos de datos DINT
Para su informacin: Tipos de datos INT comparados con tipos de datos DINT Todos los controladores Logix utilizan un procesador RISC de 32 bits optimizado por operaciones de 32 bits. Debido a esto, los tipos de datos que no son de 32 bits requieren tiempo de procesamiento interno adicional para la ejecucin y memoria. Ningn tipo de datos de 32 bits es del tipo BOOL, SINT o INT. Por lo tanto, siempre que sea posible, use DINT cuando realice la programacin.
2. Haga doble clic en la MainRoutine. Esto abrir la rutina para visualizacin. 3. Ahora aparece la rutina de lgica de escalera MainRoutine. Esta rutina determina cmo se ejecutar el programa. Es posible llamar a 2 rutinas: Math_DINT y Math_INT. Las rutinas son idnticas, excepto que una se efecta con tipos de datos DINT y la otra con tipos de datos INT. Actualmente se est ejecutando el archivo Math_INT.
4. Haga clic con el botn derecho del mouse en la carpeta MainTask y seleccione Properties.
5. Cuando aparezca la ventana Task Properties MainTask, haga clic en la ficha Monitor.
6. Haga clic en el botn Reset. 7. Actualmente, el controlador est ejecutando la rutina Math_INT. El tiempo de escn es aproximadamente 14.5 ms. Recuerde que para esta rutina se usan los tipos de datos INT. 8. No cierre la ventana Task Properties. Traiga la ventana MainRoutine al primer plano.
9. Haga clic con el botn derecho del mouse en el tag Run_DINT en el rengln cero y seleccione Toggle Bit. Esto causar que el programa ejecute la rutina Math_DINT y deje de ejecutar Math_INT.
10. En el men Window, seleccione Task Properties MainTask. Esto traer la ventana Task Properties al primer plano. 11. Se activar la ventana Task Properties. Haga clic en el botn Reset. 12. El tiempo de escn ahora es aproximadamente 5 ms. Esto es aproximadamente 3 veces ms rpido. 13. Cierre la ventana Task Properties haciendo clic en OK. 14. En el men Communication seleccione Go Offline.
15. En el men File, seleccione Close. Si el sistema le pide que guarde los cambios, seleccione No.
Resumen de la actividad 1
En esta sesin prctica mostramos el efecto que tienen los datos que no son de 32 bits en el rendimiento del programa, comparado con el tipo de datos DINT. Es importante observar que usted ver esto con todos los tipos de datos que no son de 32 bits, no slo INT, los cuales se usaron en el programa. Por qu? Para ejecutar operaciones, el conveniente que el controlador use tipos de datos de 32 bits. Por lo tanto, el controlador convertir los tipos de datos que no son de 32 bits a 32 bits cuando se ejecute la instruccin. Esta conversin requiere tiempo. Por ejemplo, una instruccin Add con los dos orgenes y el destino iguales que INT requiere 3 conversiones. Es importante tambin notar que se utiliz memoria adicional. Cuando se compila el programa se asigna memoria adicional. El controlador necesita un registro interno para almacenar el tipo convertido. En el ejemplo de programa usado, esto no se observ porque slo tenamos una instruccin Add, por lo tanto slo tuvieron que crearse 3 registros internos, pero esto se sumar en programas que usan tipos de datos que no son de 32 bits.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S6.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S6.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
2. En el Controller Organizer, haga clic con el botn derecho del mouse en el programa Conveyor y seleccione Copy.
3. En el Controller Organizer, haga clic con el botn derecho del mouse la MainTask y seleccione Paste.
4. Con esto aadi una copia del cdigo del segmento de transportador original e increment el nombre del programa.
5. Repita el paso 3 ocho veces ms para aadir los ocho segmentos de transportador restantes.
7. Cuando haya terminado, haga clic en el icono Save. 8. En el men File, seleccione Close.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Look_up_a_bar_code.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Look_up_a_bar_code.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
Uso de la herramienta Ladder Partial Import/Export para hacer una exportacin a un archivo L5X
1. En el Controller Organizer, haga doble clic en la carpeta MainProgram para expandirla. Es aqu donde est ubicada la estacin de cdigo de barras. 2. Una vez que se expanda el MainProgram, se ver similar al siguiente.
4. En el men Edit, seleccione Select All. Con esto seleccionar todos los renglones en la rutina.
5. Haga clic con el botn derecho del mouse a la izquierda del rengln cero y seleccione Export Rung.
8. Se cre el archivo de lgica de escalera exportado (L5X). 9. En el men File, seleccione Close.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S6.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S6.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
Uso de la herramienta Ladder Partial Import/Export para hacer una importacin a un archivo L5X
1. En el Controller Organizer, haga doble clic en la carpeta del programa Conveyor para expandirla. Es aqu donde aadiremos el cdigo de estacin de cdigo de barras. 2. Una vez que se expanda Conveyor, se ver similar al siguiente.
3. Haga clic con el botn derecho del mouse en el programa Conveyor y seleccione New Routine.
5. Introduzca el nombre C_Bar_Code para la rutina. Cuando haya terminado, haga clic en OK.
8. En el Ladder Editor, haga clic con el botn derecho del mouse sobre el rengln 0 y seleccione Import Rung.
9. Aparecer la ventana Import Rung. Haga clic con el botn izquierdo del mouse en el archivo Look_up_bar_code.L5X. Luego haga clic en Import.
Para su informacin: La opcin Import Configuration La funcin Import Configuration tiene 2 fichas: Tags: Estos son los tags asociados con la lgica de escalera que se est importando. Usted puede cambiar cualquier nombre de tag antes de realizar la importacin. Usted tambin ser alertado si un nombre de tag ya existe en el proyecto.
Esto le permitir cambiar el nombre del tag si usted sabe que puede causar un problema. Data Types: Esto mostrar cualquier UDT que viene con la importacin. Mostrar si el UDT no existe y ser creado, o si existe y se usar el UDT existente. Esta ficha es informativa solamente.
11. Cambie el nombre de tag lane a line_number. Luego haga clic en el campo de tag siguiente a continuacin para aceptar el cambio.
Usted acaba de modificar un nombre de tag mientras est importando la lgica de escalera. 12. Haga clic en OK. 13. Comienza la importacin. Cuando haya concluida, usted habr completado el cdigo de lgica de escalera. Lodos los tags se crean dentro del agrupamiento correcto, en este caso Conveyor. Ver lo siguiente en el Ladder Editor:
14. Desplcese a la parte superior de la rutina C_Bar_Code y elimine el rengln cero vaco.
15. Ahora tendr que aadir un rengln en la rutina principal Conveyor para pasarlo a travs de JSR a la rutina C_Bar_Code. 16. Cuando haya terminado, haga clic en el icono Save. 17. En el men File, seleccione Close.
Subrutina almacenada en un bfer Los tres mtodos tienen ventajas y desventajas. Siga los pasos siguientes para completar esta sesin prctica avanzada .
2. Haga clic con el botn izquierdo del mouse en el programa llamado Z_A3_PM_CLX.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Z_A3_PM_CLX.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
2. La ruta de comunicacin al controlador se ha guardado con el proyecto. Cuando aparezca la ventana Download, seleccione Download.
3. El programa se descargar. El sistema le pedir que cambie el controlador al modo de marcha, seleccione Yes. Si no se le pidi que cambie el controlador al modo de marcha, use el interruptor de llave para colocar el controlador en el modo de marcha.
La MainRoutine se usa para determinar cules de las otras tres rutinas se llamarn. La rutina In_Line es lgica de escalera codificada mediante hardware La rutina indexada es indexada o direccionada indirectamente La rutina Buffered_Index utiliza una instruccin JSR para pasar datos hacia dentro o fuera de la rutina
Hay un lazo en el programa que hace que cada rutina se ejecute 100 veces. Si usted examina estas rutinas, asegrese de que la MainRoutine aparezca en la ventana antes de continuar. 3. Haga doble clic en la MainRoutine.
4. Primero examinaremos la duplicacin en lnea. En el rengln 1 introduzca un valor de uno en Run_Type. Para esto haga clic con el botn izquierdo del mouse en el valor debajo del tag Run_Type e introduzca el valor, y luego haga clic fuera de la instruccin.
Con esto habilitar el cdigo para duplicacin en lnea. Para su informacin: Duplicacin en lnea La manera ms simple de describir este mtodo es codificado mediante hardware. Todos el cdigo es de referencia directa. Ventajas:
La ms rpida ejecucin.
Fcil de mantener porque usted puede examinar cada ocurrencia y ver los valores de tag para dicha ocurrencia.
Desventajas:
Requiere que el cdigo sea duplicado y modificado mltiples veces. La generacin del cdigo puede acelerarse a travs de bsqueda y reemplazo y la edicin del archivo exportado.
5. Haga clic con el botn derecho del mouse en MainTask y seleccione Properties.
8. Haga clic en el botn Reset. 9. El tiempo de escn mximo visto es aproximadamente 6 ms. El ltimo tiempo de escn visto es aproximadamente 1.8 ms. Esto no est mal para 500 secciones de cdigo. 10. En el men Window, seleccione MainProgram MainRoutine.
12. Ahora examinaremos el cdigo indexado. En el rengln 1 introduzca un valor de dos en Run_Type. Para esto haga clic con el botn izquierdo del mouse en el valor debajo del tag Run_Type e introduzca el valor, y luego haga clic fuera de la instruccin.
Esto habilitar el cdigo para el ndice. Para su informacin: Subrutinas indexadas Este mtodo utiliza una sola copia de cdigo con referencias indexadas en una matriz. Ventajas:
Desventajas:
Puesto que todas las referencias de tag se calculan al momento de la ejecucin, este mtodo tendr la ejecucin ms lenta. El mantenimiento y la resolucin de problemas es difcil porque el cdigo no muestra ninguna ocurrencia. Esto puede solucionarse programando una rutina de depuracin y manteniendo el ndice constante.
14. Cuando aparezca la ventana Task Properties, haga clic en el botn Reset. 15. El tiempo de escn mximo visto es aproximadamente 20 ms. El ltimo tiempo de escn visto es aproximadamente 19.5 ms. Esto es aproximadamente 4 veces ms lento que el cdigo de duplicacin en lnea. 16. En el men Window, seleccione MainProgram MainRoutine.
18. Finalmente, examinaremos el cdigo indexado. En el rengln 1 introduzca un valor de tres en Run_Type. Para esto haga clic con el botn izquierdo del mouse en el valor debajo del tag Run_Type e introduzca el valor, y luego haga clic fuera de la instruccin.
Esto habilitar el cdigo para Buffer_Index. Para su informacin: Subrutinas almacenadas en un bfer Este mtodo utiliza una sola copia de cdigo con referencias directas a los datos almacenados en el bfer. Ventajas:
Una copia de cdigo permite un desarrollo rpido. Elimina la necesidad de calcular offsets al momento de ejecucin
Desventajas:
Debido a la copia de datos a los bferes, este mtodo tendr una ejecucin lenta. El mantenimiento y la resolucin de problemas es difcil porque el cdigo no muestra ninguna ocurrencia. Esto puede solucionarse programando una rutina de depuracin y manteniendo el ndice constante.
20. Cuando aparezca la ventana Task Properties, haga clic en el botn Reset. 21. El tiempo de escn mximo visto es aproximadamente 23 ms. El ltimo tiempo de escn visto es aproximadamente 20.5 ms. Esto es aproximadamente igual al mtodo de ndice. Es aproximadamente 4 veces ms lento que el cdigo de duplicacin en lnea y aproximadamente igual que el cdigo indexado. 22. Cierre la ventana Task Properties haciendo clic en OK. 23. En el men Communication seleccione Go Offline.
24. En el men File, seleccione Close. Si el sistema le pide que guarde los cambios, seleccione No.
Resumen de la actividad 1
En esta sesin prctica mostramos las ventajas y desventajas de las tres metodologas de programacin que pueden utilizarse con Logix. Duplicacin de cdigo en lnea Subrutina indexada Subrutina almacenada en un bfer
Sesin prctica de Logix para programadores I LOT-SP004A-ES-E Pgina 115 de 163
Cuando se comparan, generalmente la duplicacin de cdigo en lnea es la mejor opcin. Esto se debe a las herramientas fuera del lnea que pueden usarse para acelerar el desarrollo y el tiempo de ejecucin.
Lento
Rpido Pequeo
ncs e e d op mi T e
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S6.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S6.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
1. En la plantilla del controlador en RSLogix 5000, haga clic en el botn Controller Properties .
Actualmente, el proyecto est configurado para usar un controlador 1769-L20 CompactLogix. Para el trabajo que est haciendo actualmente, el cliente especific un controlador 1756-L62. Esto representa un cambio de plataforma. Anteriormente, esto significaba ms tiempo de ingeniera, pero con Logix ste no es el caso. 3. Haga clic en el botn Change Controller
5. Haga clic en la flecha hacia abajo para expandir la seleccin de controlador Type.
6. Al desplazarse por la lista puede seleccionar todos los controladores Logix. Desplcese por la lista hasta que vea 1756-L55 ControlLogix5555 Controller.
7. Haga clic en 1756-L55 ControlLogix5555 Controller para seleccionarlo como el controlador al cual desea cambiar.
9. Cuando haga clic en OK, aparecer la ventana Change Controller Type Warning.
Estas advertencias tienen sentido. Los mdulos de E/S usados en un controlador CompactLogix son diferentes a los de un controlador ControlLogix. En el caso de los programas que convertiremos, no tendremos problemas. No hemos definido ninguna E/S. 10. Haga clic en Yes para cambiar el programa.
11. La ventana Controller Properties ahora muestra que el tipo de controlador es un 1756-L55 ControlLogix. Tambin observar que el programa fue verificado y no tiene errores. Esto es todo lo que se necesita para cambiar un programa. Fue muy fcil.
13. Cuando hace la conversin, la advertencia es ms corta esta vez. Esto se debe a que las E/S para un controlador 1756-L62 y un 1765-L55 son iguales.
14. Seleccione Yes. 15. Cierre la ventana Controller Properties haciendo clic en OK. 16. En el men File, seleccione Close. 17. Cuando el sistema le pide que guarde los cambios, seleccione No.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S7.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S7.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
Para su informacin: Limitaciones de la asignacin de alias Hay 2 limitaciones que debe tener en cuando use asignacin de alias:
No puede usar asignar alias de E/S en un UDT No puede cambiar un alias en lnea
Para esta sesin prctica, los puntos de E/S estn definidos. Para el 1756-IB16D en la ranura 2: Punto 0 = Conveyor_Start_Push_Button Punto 1 = Conveyor_Stop_Push_Button Punto 2 = Entrance_PE Punto 3 = Exit_PE Punto 4 = Conveyor_EStop_Push_Button Punto 5 = Motor_Overload_Input
Slo hay un programa Conveyor en la tarea continua o en la tarea principal. Se han aadido 2 mdulos de E/S en la configuracin de E/S.
2. En la plantilla del controlador en RSLogix 5000, haga clic en el botn Controller Properties .
4. Cierre la ventana Controller Properties haciendo clic en Cancel. 5. Ahora, expanda el programa Conveyor haciendo clic en el signo + junto a la carpeta Conveyor.
6. Una vez que el programa Conveyor est expandido, haga doble clic en Program Tags para abrir el Tag Editor.
7. Cuando aparezca el Tag Editor, observar que est se ha abierto con Conveyor en el campo Scope. Si hubiera hecho clic en Controller Tags, en el campo Scope dira Controller.
8. Tambin notar que hay varios tags nuevos. stos originalmente estaban en el tag B3, el cual exista en el alcance del controlador. Se han movido por razones de agrupacin de datos y sus nombres se cambiaron para usar las convenciones de nombres de tags Logix.
9. Comencemos con el tag Conveyor_Start_Command. Puesto que es una salida, asignaremos el alias a una salida. Anteriormente dijimos que Punto 0 = Conveyor_Start_Command. 10. En el Tag Editor, haga clic en la columna Alias For junto a Conveyor_Start_Command. Nota: asegrese de que la ficha Edit Tags est seleccionada en la esquina inferior izquierda de la ventana de tags.
11. Haga clic en la flecha hacia abajo. Esto abrir el explorador de tags.
12. El explorador actualmente est establecido para explorar los tags al alcance del programa. Necesitamos cambiar a alcance del controlador, donde estn ubicados los mdulos de E/S. Para ello, en el Tag Browser haga clic en Controller Scoped Tags. El explorador de tags cambiar a tags al alcance del controlador.
13. El mdulo de salida est en la ranura 0 y deseamos punto de salida 0. Esto hara referencia a la direccin Local:0:O.Data.0. 14. Haga clic en el signo + para expandir Local:0:O.
17. Cuando hizo clic en el punto 0 se cerr el explorador y usted regres al editor de tags. 18. El Tag Editor ahora es similar al siguiente. La (C) junto a Local:0:O.Data.0 significa que el tag est al alcance del controlador.
19. La columna Alias For ahora contiene la direccin de Conveyor_Start_Command. Estos 2 tags ahora son iguales. 20. Ahora, en el Controller Organizer, haga doble clic en la rutina C_Start_Stop.
Observe que bajo el tag Conveyor_Start_Command est <Local:0:O.Data.0>. Esto significa que Conveyor_Start_Command es un Alias para Local:0:O.Data.0. Los dos tags son equivalentes. Esto se actualizar en todo el cdigo. 22. Ahora, asignemos alias a Conveyor_Start_Push_Button en el rengln 0. 23. Esta vez, haga doble clic en el tag Conveyor_Start_Push_Button. Seleccione Edit Conveyor_Start_Push_Button Properties.
25. Actualmente en Tag Type dice Base. Vamos a cambiarlo a Alias. Haga clic en el botn Alias.
27. Haga clic en la flecha hacia abajo para abrir el explorador de tags.
28. El explorador de tags actualmente est establecido para explorar los tags al alcance del programa. Seleccione Controller Scoped Tags. 29. Anteriormente indicamos que Punto 0 = Conveyor_Start_Push_Button. Esta tarjeta de entrada est en la ranura 2, por lo tanto vamos a asignar alias a Local:2:I.Data.0. Contine y haga esa seleccin.
30. Cuando haya terminado, la pantalla Tag Properties aparecer de la siguiente manera:
31. Haga clic en Apply y luego OK para cerrar la ventana Tag Properties.
32. Observe que bajo los tags Conveyor_Start_Push_Button est <Local:2:I.Data.0>. Esto significa que Conveyor_Start_Push_Button es un alias para Local:2:I.Data.0. Los dos tags son equivalentes. Esto se actualizar en todo el cdigo.
33. Contine y termine de asignar alias al resto de las entradas: Punto 1 = Conveyor_Stop_Push_Button Punto 2 = Entrance_PE Punto 3 = Exit_PE Punto 4 = Conveyor_EStop_Push_Button Punto 5 = Motor_Overload_Input
34. Cuando haya terminado de asignar alias para las 5 entradas restantes, haga clic en el icono Save .
Sesin prctica 9: Clculo de memoria del programa fuera de lnea (10 minutos)
Acerca de esta sesin prctica
En esta sesin prctica, mostraremos el uso de la herramienta de clculo de memoria del programa fuera del lnea incorporada en RSLogix 5000. En esta sesin prctica, usted: Abrir un archivo existente Ver las caractersticas de la herramienta de clculo de memoria del programa fuera del lnea Siga estos pasos para completar la sesin prctica 6.
2. Haga clic con el botn izquierdo del mouse en el programa llamado Conveyor_Program_S8.ACD. El nombre del programa se resaltar y aparecer en el campo File Name: Con esto ha seleccionado Conveyor_Program_S8.ACD.
3. Haga clic con el botn izquierdo del mouse en Open. Se abrir el archivo seleccionado.
Para su informacin: Opcin de memoria Memory Option est establecida en el tipo de controlador que usted seleccion para el proyecto. En nuestro ejemplo se ha seleccionado un controlador 1756-L63. Si usted desea saber si el programa cabr en un 1756-L55M13, todo lo que tiene que hacer es cambiar el tipo del controlador para el proyecto y luego regresar a la ficha Memory.
4. Haga clic en el botn Estimate. Observe que cambiaron los datos de uso de memoria.
Estimated I/O memory Estimated Data and Logix Memory Estimated Logix Memory (L55M16 solamente)
Para controlador L33, L34, L20, L30, L31 y L35E, datos mostrados:
Estimated Data and Logix Memory (estos controladores no tienen memoria de E/S)
Las barras verde, amarilla y roja son estticas. Son como una luz de paro: verde significa continuar, la memoria de usuario es aceptable; amarillo significa tomar precauciones, continuar con cuidado ya que queda poca memoria; y rojo significa considerar cambiarse a otro controlador con ms memoria. Esta herramienta tambin puede usarse en lnea para medir el uso de memoria durante la ejecucin del controlador. Durante el tiempo de ejecucin, el campo Max Used (marca de agua alta) normalmente ser mas alto que en el campo Used. Esto se debe a que la memoria del controlador se asigna y desasigna durante el tiempo de ejecucin en todas las reas. 5. Segn lo aprendido en la sesin prctica 4, cambie el tipo de controlador para este proyecto a 1756-L1. 6. Cuando haya terminado de cambiar el tipo de controlador, regrese a la ficha Memory.
Observe que ha usado aproximadamente un tercio de la memoria: 8. Haga doble clic en Controller Tags. Esto abrir el Tag Editor.
9. Cuando se abra Tag Edit, asegrese de que est en la ficha Edit Tags.
10. Cree un tag llamado Big_Array al alcance del controlador con un tamao de matriz de 60000.
12. Cuando la ventana Controller Properties regrese al primer plano, estar en la ficha Memory. Haga clic en el botn Estimate.
Usted ha calculado el uso de memoria negativo. Esto significa que usted excedi el lmite de memoria del controlador. 13. Haga clic en la flecha hacia abajo del cuadro de seleccin junto a Memory Options.
Esto selecciona toda la seleccin de memoria vlida para el controlador 1756-L1. 14. Seleccione el 1756-L1M1.
Ahora se muestra una nueva rea de memoria. Esta es el rea de memoria extendida. 15. Haga clic en el botn Estimate.
El controlador 1756-L1M1 tiene suficiente memoria para el proyecto. 17. Cierre la ventana Controller Properties haciendo clic en OK. 18. En el men File, seleccione Close. 19. Si el sistema le pide que guarde los cambios, seleccione No.
2. Haga doble clic en Program Tags en el programa Conveyor para abrir la base de datos de tags.
3. Cuando la base de datos de tags se abra, asegrese de que est en la ficha Monitor Tags. Haga clic en el signo + junto a Conveyor para expandir el UDT.
Observar que los datos se han introducido en el UDT del transportador. El objetivo es que usted pueda ver el funcionamiento del cdigo.
4. En el Controller Organizer, haga doble clic en la rutina C_Start_Stop. Esto mostrar la lgica de escalera de esta rutina.
5. Ahora, en la unidad de demostracin ubicada frente a usted hay un grupo de botones pulsadores discretos. En la sesin prctica anterior, cuando asign alias de las E/S, usted estaba apuntando aqu. Las definiciones de los botones pulsadores son: Conveyor_Start_Push_Button = DI0 Conveyor_Stop_Push_Button = DI1 Entrance_PE = DI2 Exit_PE = DI3 Conveyor_EStop_Push_Button = DI4 La definicin de la salida es: Conveyor_Start_Command = DO0 6. Ahora presione y mantenga presionado el botn pulsador DI0. En el cdigo de lgica de escalera en el rengln cero, usted ver subir al Conveyor_Start_Push_Button y ver que comienza a incrementar el Conveyor_Start_Push_Button_Timer. Despus de 2 segundos se activar DO0.
7. En el men Window, seleccione Tile Horizontal. Esto har que aparezca una pantalla dividida entre Ladder Editor y Tag Monitor.
8. En la ventana Monitor, desplcese hacia abajo hasta que vea el tag Conveyor.Motor_Speed_Scaled. ste sera el valor analgico que ira al variador del transportador. Actualmente est en un valor de 16384 50% de salida.
9. Ahora presione el botn pulsador DI1. ste es el Conveyor_Stop_Push_Button. Examine nuevamente el tag Conveyor.Motor_Speed_Scaled. No debera ser cero. Esto es debido a que el transportador est detenido.
10. En el Controller Organizer, haga doble clic en la rutina C_Energy_Manag. La ventana aparecer ahora de la siguiente manera.
11. Haga arrancar el transportador nuevamente presionando DI0 sin soltar durante 10 segundos. Para habilitar la administracin de energa, el transportador debe funcionar durante 10 segundos sin que se dispare la clula fotoelctrica de salida o entrada. Despus de 10 segundos, el valor en Conveyor.Motor_Speed_Scaled debe cambiar al 25% de salida o 8192.
12. Al examinar el cdigo usted observa que el temporizador no se est ejecutando y que el valor en Conveyor.Motor_Speed_Scaled no ha cambiado. Al fijarse en el rengln, usted nota que la primera condicin de entrada en el rengln est no activada e incorrecta. Debera ser Conveyor_Start_Command. Hagamos una edicin en lnea para solucionar este problema. 13. En la barra de herramientas, en la seccin Ladder, haga clic en el icono rengln ir al modo de edicin. Usted ver I junto al rengln. . Al hacer esto, el
15. Haga clic en la flecha hacia abajo para abrir el Tag Browser. En el Tag Browser busque el tag Conveyor_Start_Command.
16. Haga doble clic en el tag y luego en el rea blanca de la ventana. Con esto se cambi la direccin de la instruccin XIO.
Para su informacin: Botn Finalize All En la versin 13 de RSLogix 5000 hay una nueva funcin de edicin en lnea llamada Finalize All Edits. Para una sesin de edicin en lnea antes de la versin 13, usted tena que realizar 8 pasos:
Iniciar edicin Editar cdigo Aceptar ediciones Confirmar aceptacin Probar ediciones Confirmar prueba Ensamblar ediciones Confirmar ensamble
Ahora, con el botn Finalize All Edits, usted slo necesita 4 pasos:
Iniciar edicin Editar cdigo Finalizar todas las ediciones Confirmar finalizacin
19. Cuando el sistema le pida que finalice todas las ediciones, haga clic en Yes. 20. Ahora las I al lado del rengln desaparecieron y el temporizador comenz a incrementarse. Una vez efectuado, observe el Conveyor.Motor_Speed_Scaled, ha llegado a 8192. 21. Ahora presione ya sea DI2 o DI3, las entradas de clula fotoelctrica. Ver que el valor en Conveyor.Motor_Speed_Scaled regresa a 16384.
Para su informacin: Explorador lgico Una funcin nueva de la versin 13 de RSLogix 5000 es Browse Logic. La funcin Browse Logic est diseada para proporcionar una visualizacin de la tabla de contenido de los componentes lgicos clave. Ayuda a proporcionar a los usuarios la capacidad de ubicar fcilmente una seccin particular de cdigo con ayuda de la documentacin del programa. Qu encuentra Browse Logic en cada lenguaje? Lgica de escalera: Todos los renglones, comentarios de rengln, descripciones de tags (referencias destructivas solamente), instrucciones, descripciones de tags/operandos e informacin sobre tags mediante informacin sobre herramientas. Diagramas de bloques de funciones: Todas las hojas, todos los tags de bloque, cuadros de texto conectados/no conectados e informacin sobre tags mediante informacin sobre herramientas. Diagrama de funciones secuenciales: Todos los pasos, transiciones y tags de acciones, cuadros de texto conectados/no conectados e informacin sobre tags mediante informacin sobre herramientas. Texto estructurado: Todas las lneas, tags (referencias destructivas solamente) e informacin sobre tags mediante informacin sobre herramientas. Esta herramienta es para uso en lnea y fuera de lnea.
22. Para mostrar el uso de la herramienta Browse Logic usted la usar para encontrar el Easter Egg (huevo de pascua) en el programa. En el men Search seleccione Browse Logic.
sta es muy similar a lo que aparece debajo de la seccin Tasks del Controller Organizer. 24. Haga doble clic en la tarea peridica Simulation para expandirla. Contine expandiendo la carpeta y las rutinas debajo de sta. Cuando haya terminado, la ventana debe aparecer de la siguiente manera.
25. Ahora use la herramienta para encontrar el Easter Egg. Sugerencia: hay 2 maneras de hacerlo. Una es mucho ms fcil que la otra. A continuacin mostraremos ambas maneras, y comenzaremos por la ms difcil. 26. Comencemos expandiendo la MainTask, como lo hicimos para la Simulation Task.
Usted encontr el Easter Egg. Estaba en un comentario de rengln en la rutina Temperature_Loop. Si usted hace clic en Rung 0 y luego hace clic en el botn Go To, esto lo llevar a ese rengln, pero no haga esto todava. 28. La manera ms fcil de encontrar el Easter Egg es introducir Easter Egg en el campo Find: y luego hacer clic en el icono de buscar (Find) .
30. Ahora haga clic en el botn Go To. Luego haga clic en Close. 31. Esto lo llevar a ese rengln en el Ladder Editor.
Usted puede ver el gran potencial que tiene esta herramienta. Puede colocar palabras clave en diferentes lugares y usar la herramienta Browse Logix para navegar rpidamente a esas reas.
33. En el men File, seleccione Close. Si el sistema le pide que guarde los cambios, seleccione No.