Arquitectura interna

Introducción
CPU
Memoria del autómata
Memoria interna
Memoria de programa
Interfaces de E/S
Fuente de alimentación

Ciclo de funcionamiento

Modos de operación
Ciclo de funcionamiento
Tiempo de ejecución y control en tiempo real
Elementos de procesado rápido

Estructuras de programación

Introducción
Programación lineal
Programación estructurada

Programación del autómata

Introducción
Representar el sistema de control
Asignar direcciones
Lenguaje de programación

Ciclo de funcionamiento del autómata


Ciclo de funcionamiento del autómata

El funcionamiento del autómata es, salvo el proceso inicial que sigue a un reset, de tipo secuencial y cíclico, es decir, las operaciones tienen lugar una tras otra y se van repitiendo continuamente mientras el autómata esta bajo tensión como se puede observar en la secuencia de la figura.

(Pinchar en columna izquierda de la figura)


Proceso inicial

En el proceso inicial el autómata se dedica a chequear el hardware mediante unas rutinas ubicadas en el monitor ROM y sus cometidos son comprobar: 

-         El bus de conexión de las unidades de E/S.

-         El nivel de la batería.

-         La conexión de las memorias internas del sistema.

-         El módulo de memoria exterior conectado si existe. 

Si se encuentra algún error en este proceso se encenderá el LED de ERROR y se podrá parar el chequeo según la magnitud del fallo.

Comprobadas las conexiones, se inicializarán las variables internas, es decir, se ponen a cero las posiciones de la memoria interna, se borran todas las posiciones de memoria imagen de E/S y se borran todos los contadores y temporizadores.

Aquí termina el proceso inicial que emplea un tiempo inferior a un segundo. Tras éste, y si no aparecen errores, el autómata entra en el ciclo de operaciones.

Proceso común

En el proceso común se comprueba el reloj de guarda y se realizan los chequeos de conexiones y de memoria de programa protegiendo al sistema contra errores de hardware y de sintaxis en el programa de usuario. Este proceso no suele superar uno ó dos milisegundos.


Ejecución del programa de usuario

En el bloque de ejecución del programa de usuario se consultan y actualizan los estados de las entradas y las salidas y se elaboran las ordenes de mando a partir de ellos. El tiempo de ejecución de este bloque depende de los siguientes factores: 

   - Del tiempo de acceso a interfaces de E/S: Este factor depende de sí las interfaces están cableadas como locales ( a través del bus interno) o como remotas (conectadas a la CPU mediante el procesador de comunicaciones), y del número de entradas y salidas instaladas.

   - Del tiempo de escrutación del programa: Depende del tipo de instrucción a ejecutar, siendo mayor el de las instrucciones de tipo aritmético o de manipulación de datos, y de la CPU que se utiliza.

Servicio a periféricos externos

El último bloque es el de servicio a periféricos externos. Este bloque solo se atiende si hay algún intercambio con el exterior. Estos periféricos se comunican con el autómata, bien por un conector situado en la CPU, o bien  a través procesadores de comunicación específicos. El conector de la CPU se suele reservar para la unidad de programación. Una vez establecida la comunicación con los periféricos, la CPU dedica solamente 1 ó 2 milisegundos en atender los intercambios de datos, si no se ha terminado en este tiempo se cortará la comunicación hasta el siguiente ciclo.