Subido por brenda rodriguez

Unidad corregida 4 (1)

Anuncio
Componentes de un PLC
CPU
La Unidad Central de Procesos es el auténtico cerebro del sistema. Se encarga de
recibir las ordenes, del operario por medio de la consola de programación y el modulo
de entradas. Posteriormente las procesa para enviar respuestas al módulo de salidas.
En su memoria se encuentra residente el programa destinado a controlar el proceso.
La CPU es el corazón del autómata programable. Es la encargada de ejecutar el
programa de usuario mediante el programa del sistema (es decir, el programa de
usuario es interpretado por el programa del sistema).
FUNCIONES
•
•
•
•
•
•
Vigilar que el tiempo de ejecución del programa de usuario no excede un
determinado tiempo máximo (tiempo de ciclo máximo).
A esta función se le suele denominar Watchdog (perro guardián).
Ejecutar el programa de usuario.
Crear una imagen de las entradas, ya que el programa de usuario no debe
acceder directamente a dichas entradas.
Renovar el estado de las salidas en función de la imagen de las mismas
obtenida al final del ciclo de ejecución del programa de usuario.
Chequeo del sistema.
Memoria del Autómata
Dentro de la CPU vamos a disponer de un área de memoria, la cual emplearemos
para diversas funciones:
• Memoria del programa de usuario: aquí introduciremos el programa que el
autómata va a ejecutar cíclicamente.
• Memoria de la tabla de datos: se suele subdividir en zonas según el tipo de datos
(como marcas de memoria, temporizadores, contadores, etc.).
• Memoria del sistema: aquí se encuentra el programa en código máquina que
monitorea el sistema (programa del sistema o firmware). Este programa es ejecutado
directamente por el microprocesador/microcontrolador que posea el autómata.
• Memoria de almacenamiento: se trata de memoria externa que empleamos para
almacenar el programa de usuario, y en ciertos casos parte de la memoria de la tabla
de datos. Suele ser de uno de los siguientes tipos: EPROM, EEPROM, o FLASH.
Interfases de E/S
Sección de entradas: se trata de líneas de entrada, las cuales pueden ser de tipo
digital o analógico. En ambos casos tenemos unos rangos de tensión característicos,
los cuales se encuentran en las hojas de características del fabricante. A estas líneas
conectaremos los sensores.
Sección de salidas: son una serie de líneas de salida, que también pueden ser de
carácter digital o analógico. A estas líneas conectaremos los actuadores.
Tanto las entradas como las salidas están aisladas de la CPU según el tipo de
autómata que utilicemos. Normalmente se suelen emplear opto acopladores en las
entradas y relevadores/optaoa copladores en las salidas.
Instrucciones básicas
•
•
•
•
•
•
•
Instrucciones de transferencia
Instrucciones de bifurcación
Instrucciones aritméticas y lógicas
Instrucciones de comparación y de bit
Instrucciones de desplazamiento
Instrucciones de entrada/salida
Instrucciones de control
Instrucciones Básicas
1. Instrucciones de Transferencia
Estas instrucciones son fundamentales para mover datos entre registros y memoria.
•
MOV: Mueve datos de un lugar a otro.
•
PUSH: Coloca datos en la pila.
•
POP: Extrae datos de la pila.
2. Instrucciones Aritméticas y Lógicas
Estas instrucciones realizan operaciones matemáticas y lógicas básicas.
•
ADD: Suma dos operandos.
•
SUB: Resta dos operandos.
•
AND, OR, XOR: Realizan operaciones lógicas bit a bit.
•
INC, DEC: Incrementan o decrementan un valor en 1.
3. Instrucciones de Comparación y de Bit
Estas instrucciones comparan valores y manipulan bits individuales.
•
CMP: Compara dos valores.
•
TEST: Realiza una operación AND lógica y establece los flags sin almacenar el
resultado.
Instrucciones Intermedias
4. Instrucciones de Bifurcación
Controlan el flujo del programa, permitiendo saltos condicionales y no condicionales.
•
JMP: Salto incondicional a una dirección.
•
JE/JZ, JNE/JNZ: Saltos condicionales basados en el resultado de una
comparación.
•
CALL, RET: Llaman y retornan de subrutinas.
5. Instrucciones de Desplazamiento
Estas instrucciones realizan desplazamientos de bits dentro de un registro.
•
SHL, SHR: Desplazamientos lógicos a la izquierda y a la derecha.
•
SAL, SAR: Desplazamientos aritméticos a la izquierda y a la derecha.
•
ROL, ROR: Rotaciones de bits.
Instrucciones Complejas
6. Instrucciones de Entrada/Salida
Estas instrucciones interactúan con dispositivos periféricos, lo que puede ser más
complejo debido a la necesidad de gestionar hardware específico.
•
IN: Lee datos de un puerto.
•
OUT: Escribe datos a un puerto.
7. Instrucciones de Control
Instrucciones que afectan el estado del procesador y la ejecución del programa.
•
HLT: Detiene la ejecución del procesador.
•
NOP: No realiza ninguna operación, pero consume un ciclo de reloj.
•
STI, CLI: Habilitan y deshabilitan interrupciones.
Análisis y Clasificación
Básicas:
1. Instrucciones de Transferencia: Son fundamentales y sencillas en su uso.
2. Instrucciones Aritméticas y Lógicas: Realizan operaciones matemáticas y
lógicas simples.
3. Instrucciones de Comparación y de Bit: Comparan valores y manipulan bits
de manera directa.
Intermedias:
1. Instrucciones de Bifurcación: Controlan el flujo del programa con saltos
condicionales y no condicionales.
2. Instrucciones de Desplazamiento: Manipulan bits de manera más
específica, pero siguen siendo conceptualmente directas.
Complejas:
1. Instrucciones de Entrada/Salida: Interactúan con hardware externo, lo que
puede implicar más complejidad.
2. Instrucciones de Control: Afectan el estado del procesador y la ejecución del
programa, lo que puede ser más avanzado en términos de comprensión y uso.
Como identificar una instrucción
Las instrucciones se pueden clasificar según:
– El juego de instrucciones: operaciones posibles y determinación de la siguiente
instrucción a ejecutar
– El modo de direccionamiento: ubicación de operandos
– Formato de las instrucciones: codificación en binario
Estructura de un programa en ensamblador
Completar una oración en ensamblador
Conceptos
Lenguaje máquina
•
Realiza un conjunto de operaciones predeterminadas llamadas
microoperaciones.
Ensamblador básico
•
Su tarea consiste en ofrecer nombres simbólicos a las distintas instrucciones
y parámetros.
Direccionamiento directo
•
También recibe el nombre de direccionamiento absoluto.
Asignación
•
Proceso de mover el contenido de memoria a registro, o viceversa.
Direccionamiento indirecto
•
Se basa a partir de una dirección genérica, generalmente el inicio del
programa.
Registros
•
Memoria principal de la computadora.
Macro ensamblador
•
Las instrucciones son equivalentes a funciones en un lenguaje de alto nivel.
Secuencia básica de ejecución de una instrucción
1.Analiza la memoria
2.Implementa la instrucción
3.Ejecuta la instrucción
4.Actualiza el contador
Juego de instrucciones debe ser
•
•
Capaz de realizar una tarea computable en tiempo finito
Eficaz (alta velocidad de cálculo)
Codigo maquina
Una de las principales ventajas del uso del ensamblador
Direccionamiento
Es la forma en cómo se accede a la memoria.
Recordar que un programa no puede ejecutarse sino se encuentra en memoria
principal
Opciones para la operación designación
•
•
•
Analiza las mnemotécnicas
Compara la instrucción
Comprueba la operación
Descargar