Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

TRABAJO DE INVESTIGACION GRUPAL

vamos a ver

Integrantes: Zevallos Carlos Gustavo Palacio Torres Gian Marco 1. Implementación de modelo producto – consumidor en PLC Micrologix 1500 En la implementación de modelo producto en PLC se utiliza la aplicación de Software SCADA (Supervisión, Control y Adquisición de Datos). Diseñada para operar sobre operadores en el control de producción, proporcionando comunicación con los dispositivos de campo (Controladores autónomos) y controlando el proceso de forma automática desde la pantalla del ordenador. Uno de los desarrollos de SCADA es: ESTACION MAESTRA Estación maestra se refiere a los servidores y ala software responsables para comunicarse con el equipo del campo (UTR, PLC, etc) en estos se encuentra el software HMI corriendo para las estaciones de trabajo en el cuarto de control, o en cualquier otro lado. En este sistema SCADA la estación maestra puede estar en un solo computador, sin embargo en grandes escalas, los sistemas SCADA puedes tener estaciones maestras con varios servidores incluidos. En la siguiente práctica vamos a ver como configurar tags consumidos y tags producidos de micrologix 5000 ya que es similar al micorlogix 1500. Estos tags tienen como objetivo el intercambio de datos entre dos Logix5000 y pueden configurarse siempre que se dé una de las siguientes condiciones. Logix5000 – Tags consumidos y producidos En la siguiente práctica vamos a ver como configurar tags consumidos y tags producidos, estos tags tienen como objetivo el intercambio de datos entre dos Logix5000 y pueden configurarse siempre que se dé una de las siguientes condiciones. El ejemplo de hoy lo vamos a basar en el intercambio de datos en un mismo BackPlane, pero primero la definición de tag producido, según el manual, es el Tag puesto a disposición por el controlador para ser usado por otros controladores. Varios controladores pueden consumir (recibir) los datos simultáneamente. Un tag producido envía sus datos hacia uno o varios tags consumidos (consumidores) sin usar la lógica. Tag Consumido,es el Tag que recibe los datos de un tag producido. El tipo de datos del tag consumido debe coincidir con el tipo de datos (incluidas las dimensiones de las matrices) del tag producido. La práctica la vamos a basar en SoftLogix, para ello lo primero es configurar nuestro Rack, insertamos dos Controladores Softlogix en el Slot2 y 3 consecutivamente. Una vez configurado el Hardware, iniciamos nuestro RsLogix5000 y creamos dos proyectos nuevos, una para cada uno de los controladorores, configuramos el mismo hardware, ya que ambos estas en el mismo Backplane. Una realizado los primeros pasos, tal y como decia la definición para crear un tag ya sea producido, consumido debe ser de ambito global, es decir, tenemos que crearlos en Controller Tags, ahora vamos a crear el siguiente tag que vamos a producir en el controlador SoftLogixSlot2 y el consumidor SoftLogixSlot3 recibirá, hay que tener en cuenta que no se puede definir cualquier tipo de datos, según el manual: Ya hemos creado el Tag producido en el programa del Controlador SoftlogixSlot2, ahora nos pasamos al otro proyecto para configurar el Tag Consumido. Creamos un nuevo tag, especificamos que es del tipo consumido y pulsamos connection, se nos abre una ventana donde tenemos que definir nuestro productor y muy importante el campo Remote Data, tiene que ser el mismo nombre que usamos al crear el Tag Productor. El ejemplo seria el siguiente, el valor que tengamos en nuestra variable SoftlogixSlot2Producida, será recibido en el Tag SoftlogixSlot3Consumida De la misma forma que hemos creado estos dos tags, hacemos lo mismo pero ahora el tag producido será del controlador SoftlogixSlot3 y lo recibirá el controlador SoflogixSlot2, y nos quedaría tal y como se observa. Tal y como decía la definición al comienzo, no hace falta hacer ninguna lógica en el programa, con lo cual podemos proceder a cargar dichas configuraciones en ambos controladores. Una vez cargada la configuración, podemos ponernos online y comprobar el funcionamiento Si queremos hacer la misma práctica pero en una Red Ethernet/IP, el procedimiento para definir las variables es exactamente el mismo, pero a la hora de configurar el tag consumido, como hemos visto nos pide quien es el productor, es aqui donde hay que configurar el enlace en la red Ethernet. 2. FABRICANTES DE PLCs, marcas y modelos ALLEN – BRADLEY Sistemas de control de altas prestaciones Ofrecen arquitecturas modulares y un rango de opciones de E/S y red. Estas poderosas soluciones de control ofrecen capacidades de primer nivel para todas las disciplinas, tales como procesos, seguridad y movimiento. Diseñados para aplicaciones de control distribuidas o de supervisión, los controladores lógicos programables (PLC) de gran tamaño proporcionan confiabilidad y rendimiento excepcionales. Modelos: Controladores de entorno extremo 1756 ControlLogix, E/S ControlLogix 1756, Controladores PLC-5 1785, Controladores de seguridad GuardPLC 1800 1753 Sistemas de control Micro y Nano PLC micros y nanos proporcionan soluciones económicas a las necesidades básicas de control de sus máquinas simples que van del reemplazo de relés a la temporización y la lógica de control simples. Empaquetado compacto, E/S y comunicación integradas y facilidad de uso hacen de estos controladores una opción ideal para aplicaciones tales como automatización de transportadores, sistemas de seguridad e iluminación de edificios y estacionamientos. Modelos: Sistemas de control Micro800, Sistemas de control MicroLogix, Sistema de control Pico Sistemas de control pequeños Como solución perfecta para sus aplicaciones de rango medio, nuestros controladores pequeños ofrecen las características y la flexibilidad que necesita sin el tiempo de procesamiento interno de sistemas de mayor tamaño. Elija entre controladores estándar y con certificación de seguridad en diseños basados en chasis, compactos y modulares. Las aplicaciones típicas incluyen la automatización compleja del control de máquinas, del procesamiento de lotes y de la construcción. Modelos: Sistemas de control CompactLogix, SLC 500, Controladores SmartGuard 600 con seguridad 1752 SIEMENS Los PLCs son agrupados en las siguientes familias, todas con apellido SIMATIC: S7-200: Aplicaciones pequeñas S7-300: Aplicaciones medianas S7-400: Aplicaciones grandes o complejas C-7: Sistema inegrado de HMI con S7-300 OMRON Suelen estar condicionadas por el número de terminales entrada/salida que posea el autómata. Según esto, los autómatas se pueden clasificar en: Grandes: Con más de 512 terminales de E/S Medianos: Hasta 512 terminales de E/S Pequeños: Hast 128 terminales de E/S SCHNEIDER Logic Controller - Modicon M221: Para arquitecturas hardwired Twido: Controladores programables para aplicaciones estándar de 10 a 100 E/S Modicon Quantum: PLC para control de procesos Modicon Premium: PLC para procesos de manufactura Modicon M340: PLC de gama intermedia 3. ORGANIZACIÓN DEL CPU EN GENERAL (pc) Topología de computador de bus único Von Neumman CPU: CPU: Esta arquitectura está centrada en la unidad de procesamiento, que ejecuta programas almacenados en la memoria principal (concepto de programa almacenado), por medio de los cuales: extrae, modifica y almacena datos de memoria. Registros: Pequeña memoria de alta velocidad integrada dentro de la CPU, que permite almacenar resultados intermedios, información de control y estado en dicho proceso. Dentro de los registros más emblemáticos presentes en prácticamente todas las organizaciones de procesadores se encuentran: PC (Program Counter): Almacena la información de la posición de memoria de la instrucción a ejecutar por la CPU, su modificación a lo largo del tiempo está relacionado con el flujo lógico de ejecución de un programa. IR (Instruction Register): Almacena la información de la codificación en lenguaje de maquina (nivel 2) de la instrucción en curso. Corresponde al contenido de la posición de memoria direccionada por el registro PC al comienzo de la ejecución de una nueva instrucción. STATUS: Este registro almacena las celdas de estados de la CPU (o flags) después de haber ejecutado cierta instrucción. Esta información es indispensable para implementar instrucciones de control de flujo (branch) al nivel de lenguaje de máquina. ACUMULADORES: Registros temporales disponibles para programadores de nivel 2 (lenguaje de máquina) para almacenar variables intermedias en un proceso. Estos pueden ser de propósito general o exclusivamente de datos o direcciones, estos últimos para acceder a argumentos en memoria principal. El tamaño de estos registros (número de bits) y el número de éstos depende del diseño arquitectónico de la CPU. SP: Almacena la dirección de memoria del comienzo de un pila (stack), para almacenar variables locales de los procedimientos. Este espacio memoria temporal se maneja con este registro. La Unidad de Control es, en definitiva, una máquina secuencial que realiza el “ciclo de instrucción”: conjunto de acciones ordenado y secuencial que interconectan adecuadamente los distintos elementos en el tiempo, para lograr el objetivo de ejecutar la instrucción realizando la operación indicada sobre los operandos correspondientes y almacenando el resultado en el lugar indicado. Esta máquina secuencial funciona sincronizada por un reloj, el cual también es utilizado para sincronizar todas las actividades de los otros elementos del sistema (memoria y entrada/salida). En las primeras computadoras el reloj era el mismo para todos los elementos. Últimamente se utilizan relojes independientes (aunque vinculados) para cada sub-sistema. En muchos diseños se utilizan más de un reloj para la CPU, con la misma frecuencia, pero desfasados (0º, 90º, 180º y 270º, por ejemplo) a los efectos de ser utilizados para sincronizar distintas partes del circuito compensando los diferentes retardos de propagación de las señales en los circuitos internos de la CPU. Paginación de memoria En sistemas operativos de computadoras, los sistemas de paginación de memoria dividen los programas en pequeñas partes o páginas. Del mismo modo, la memoria es dividida en trozos del mismo tamaño que las páginas llamados marcos de página. De esta forma, la cantidad de memoria desperdiciada por un proceso es el final de su última página, lo que minimiza la fragmentación interna y evita la externa. En un momento cualquiera, la memoria se encuentra ocupada con páginas de diferentes procesos, mientras que algunos marcos están disponibles para su uso. El sistema operativo mantiene una lista de estos últimos marcos, y una tabla por cada proceso, donde consta en qué marco se encuentra cada página del proceso. De esta forma, las páginas de un proceso pueden no estar contiguamente ubicadas en memoria, y pueden intercalarse con las páginas de otros procesos. En la tabla de páginas de un proceso, se encuentra la ubicación del marco que contiene a cada una de sus páginas. Las direcciones lógicas ahora se forman como un número de página y de un desplazamiento dentro de esa página (conocido comúnmente como offset). El número de página es usado como un índice dentro de la tabla de páginas, y una vez obtenida la dirección del marco de memoria, se utiliza el desplazamiento para componer la dirección real o dirección física. Este proceso se realiza en una parte del computador específicamente diseñada para esta tarea, es decir, es un proceso hardware y no software. De esta forma, cuando un proceso es cargado en memoria, se cargan todas sus páginas en marcos libres y se completa su tabla de páginas. LENGUAJE ENSAMBLADOR DEL MICROPROCESADOR Conjunto de Instrucciones (Microprocesadores 8086/8088) Instrucciones Aritméticas. Estas instrucciones son las que realiza directamente el 8086/8088 a. Grupo de adición: ADD suma ADC suma con acarreo AAA ajuste ASCII para la suma DAA ajuste decimal para la suma b. Grupo de sustracción: SUB resta SBB resta con acarreo negativo AAS ajuste ASCII para la resta DAS ajuste decimal para la resta c. Grupo de multiplicación: MUL multiplicación IMUL multiplicación entera AAM ajuste ASCII para la multiplicación d. Grupo de división: DIV división IDIV división entera AAD ajuste ASCII para la división e. Conversiones: CBW pasar octeto a palabra CWD pasar palabra a doble palabra NEG negación f. Tratamiento de cadenas: Permiten el movimiento, comparación o búsqueda rápida en bloques de datos: MOVC transferir carácter de una cadena MOVW transferir palabra de una cadena CMPC comparar carácter de una cadena CMPW comparar palabra de una cadena SCAC buscar carácter de una cadena SCAW buscar palabra de una cadena LODC cargar carácter de una cadena LODW cargar palabra de una cadena STOC guardar carácter de una cadena STOW guardar palabra de una cadena REP repetir CLD poner a 0 el indicador de dirección STD poner a 1 el indicador de dirección Instrucciones de Pila. Una de las funciones de la pila del sistema es la de salvaguardar (conservar) datos (la otra es la de salvaguardar las direcciones de retorno de las llamadas a subrutinas): PUSH introducir POP extraer PUSHF introducir indicadores POPF extraer indicadores Instrucciones de Control del microprocesador. Hay varias instrucciones para el control de la CPU, ya sea a ella sola, o en conjunción con otros procesadores: NOP no operación HLT parada WAIT espera LOCK bloquea ESC escape Direccionamiento Inmediato El operando fuente aparece en la instrucción. Un ejemplo, es el que mueve un valor constante a un registro interno. MOV AX, 568 Direccionamiento a Registro Indica que el operando a ser usado está contenido en uno de los registros internos de propósito general del CPU. En el caso de los registros AX, BX, CX o DX los registros pueden ser de 8 a 16 bits Ejemplos: MOV AX, BX ; AX ¬ BX MOV AL, BL ; AL ¬ BL Direccionamiento Directo Especifica en la instrucción la localidad de memoria que contiene al operando. En este tipo de direccionamiento, se forma una dirección de 20 bits. Ejemplo: MOV CX, COUNT Direccionamiento de Registro Indirecto Con el modo de direccionamiento de registro índice, la dirección offset de 16 bits está contenida en un registro base o registro índice. Esto es, la dirección reside en el registro BX, BP, SI o DI. Ejemplo: MOV AX, [SI] Direccionamiento de Registro Indirecto con Desplazamiento Este tipo de direccionamiento incluye a los dos modos de direccionamiento anteriores. La dirección offset de 16 bits se calcula sumando el valor de 16 bits especificado en un registro interno y una constante. Por ejemplo, si usamos el registro interno DI y el valor constante (desplazamiento), donde COUNT ha sido previamente definido, el nemotécnico para esta construcción es: MOV AX, COUNT [DI] Direccionamiento de Registro Indirecto con un Registro Base y un Registro Índice Este modo de direccionamiento usa la suma de dos registros internos para obtener la dirección offset de 16 bits a usarse en el cálculo de la dirección de 20 bits. Ejemplos: MOV [BP] [DI], AX; el offset es BP + DI MOV AX, [BX] [SI]; el offset es BX + SI Direccionamiento de Registro Índice Indirecto con un Registro Base, un Registro Índice y un Registro Constante Este es el modo de direccionamiento más complejo. Es idéntico al modo de direccionamiento anterior, excepto que se suma una constante. Ejemplo: Suponga que tenemos los siguientes valores en los registros: DI = 0367H BX = 7890H COUNT = 0012H 7C09H Ejemplo en debug: Para crear al instante un programa en ensamblador con debugger se utiliza el comando “A” (Assemble), este comando permite introducir código en forma de nemónicos y su sintaxis es “A[dirección]”, donde dirección es la ubicación de memoria a partir de la cual se empezara a ensamblar, sino se especifica la dirección inicial a partir de la cual se debe ensamblar, ensambla a partir de la localidad especificada por CS: IP. Ejecutado el comando “A”, debug preguntará en forma sucesiva y secuencial por la siguiente instrucción a ensamblar, cada instrucción se ensambla en el momento de ser digitada y cada byte generado se almacena en la memoria en la dirección inicial y en secuencia sucesiva. Digite “A [enter]”, como resultado se obtiene: -A 17A3:0100 ebug se encuentra listo para aceptar las instrucciones: mov ah, 8 [enter] add ah, 3 [enter] sub ah, 4 [enter] int 20 [enter] [enter] Las localidades de memoria o segmento pueden ser distinto en cada PC. Para ejecutar el programa anterior se usa el comando “G [dirección]”, que ejecuta instrucciones a partir de una dirección. Se observa que nuestro programa comienza en el segmento 17A3:0100 y termina en el segmento 17A3:0108, si se desea ejecutar todas las instrucciones a partir de CS: IP (17A3:0100) hasta la instrucción en 17A3:0108, se digita “g108”, como resultado se obtiene: Debug despliega los registros con los resultado intermedios, se observa comparando el estado inicial y final de los registros con respecto a AX en su parte alta, es decir, AH que tiene un valor inicial AX=0000, pasando por AX=0800, sumando 3, AX=0B00 y restando 4, AX=0700 que es el resultado final de este programa. Debug ejecuta la interrupción 20 “int 20” termina el programa y regresa el control al DOS. BIBLIOGRAFIA https://www.fing.edu.uy/tecnoinf/mvd/cursos/arqcomp/material/2014/teo/arq-teo07.pdf http://www.ittux.edu.mx/sites/default/files/MICROCOMPUTADORAS_AL_DETALLE.pdf Paginas web de fabricantes de PLC https://www.google.com.pe/?gfe_rd=cr&ei=XWUUVvjtFc-w8weksbiwCQ&gws_rd=ssl#q=C%C3%B3mo+se+configuran+los+PLC+consumidor%3F http://repository.upb.edu.co:8080/jspui/bitstream/123456789/1373/1/digital_19890.pdf