Autómatas Programables
Estructura del autómata programable
03
Autómatas Programables
Estructura del autómata programable 1
03
Índice
OBJETIVOS ........................................................................................................ 3
INTRODUCCIÓN ................................................................................................. 4
3.1. Conceptos básicos .................................................................................... 5
3.1.1. El interruptor como bit (unidad elemental de información) .................. 5
3.1.2. El interruptor como parte de una instrucción u orden ........................... 6
3.2. Transición de la lógica cableada a la lógica programada ....................... 8
3.2.1. La lógica cableada ............................................................................... 8
3.2.2. Traducción de circuitos eléctricos en listas de instrucciones en castellano ........................................................................................ 9
3.2.3. La lógica programable ....................................................................... 13
3.3. Partes y funcionamiento de un autómata programable ........................ 16
3.3.1. Estructura externa ............................................................................. 16
3.3.2. Estructura interna .............................................................................. 18
RESUMEN ......................................................................................................... 29
Autómatas Programables
Estructura del autómata programable 3
03
Objetivos
Introducir conceptos como bit e instrucción.
Comprobar que todo circuito eléctrico cableado puede convertirse en una lista
de instrucciones, y por tanto, en un programa de autómata.
Descubrir las partes y funcionamiento de un autómata.
Formación Abierta
Estructura del autómata programable 4
Introducción
Tenemos la intención de presentar los autómatas programables de forma que la
introducción a los mismos resulte sencilla para aquellos que estén acostumbrados a
los automatismos eléctricos.
Las definiciones que debemos conocer irán apareciendo de forma gradual a medida
que se vayan requiriendo.
Hubiera sido muy sencillo esquematizar la estructura de un autómata, pero
pensamos que es más didáctico e interesante plantearnos los problemas a resolver
(una automatización por ejemplo), e intentar desglosar los procedimientos que
realizaríamos de hacerlo manualmente, y ver a partir de aquí, qué requisitos
debería cumplir un dispositivo que lo hiciera por nosotros.
Autómatas Programables
Estructura del autómata programable 5
03
3.1. Conceptos básicos
Cuando vemos un interruptor o un contacto auxiliar de un contactor, estamos
acostumbrados a pensar en el mismo como algo que permite o no el paso de la
corriente eléctrica, y en función de esto, activar o desactivar distintos elementos.
Figura 3.1. Circuito eléctrico. Activar, desactivar.
Al hablar de automatización industrial, y en concreto de autómatas programables,
necesitamos introducir nuevas concepciones, aunque en esencia sean lo mismo.
Presentamos dos nuevas formas de pensar en un interruptor:
La primera, como unidad elemental de información o “bit”, que permitirá
introducirnos en el mundo digital, el mundo de los autómatas al fin y al cabo.
La segunda, como algo que puede convertirse en parte de una instrucción u
orden, que nos ayudará a realizar la transición entre la lógica cableada (aquella
que hemos venido usando habitualmente) y la lógica programable.
3.1.1. El interruptor como bit (unidad elemental de información)
Parece obvio que un interruptor en condiciones normales sólo es capaz de estar en
dos posiciones: conectado o desconectado. En principio, sólo nos interesan las
acciones que pueda desencadenar su estado (p. ej. la conexión o desconexión de
un motor), no pensamos en la información que nos está proporcionando.
ON
OFF
Tabique
ON
OFF
Tabique
Si desestimamos posibles fallos en la instalación eléctrica (nadie es perfecto),
bastaría con mirar el interruptor del motor; en una posición, el motor estaría
conectado y en otra, desconectado.
Formación Abierta
Estructura del autómata programable 6
Cualquier cosa que solamente pueda tener dos estados
distintos, puede considerarse como una unidad
elemental de información o bit.
Podemos pensar en un interruptor como algo capaz de almacenar una información
de un bit, siendo sus dos estados posibles:
DESACTIVADO → ESTADO “0”.
ACTIVADO → ESTADO “1”.
Bit a “0” Bit a “1”
Para simplificar el asunto a la hora de escribir, diremos que el interruptor o bit, está
a “0” cuando no permite el paso de la corriente eléctrica, y a “1” cuando permite el
paso de la misma.
3.1.2. El interruptor como parte de una instrucción u orden
Que cualquier circuito de mando tenga un pulsador de marcha es algo que se da
por supuesto, y a nadie se le pasa por la cabeza preguntarle al cliente o jefe si
quiere que presionando el mismo, el proceso se ponga en funcionamiento.
S1
K1M
Nosotros lo expresaremos de varias formas con el ejemplo anterior de interruptor y
motor.
La primera:
Dándole al interruptor, debe ponerse en marcha el motor.
Autómatas Programables
Estructura del autómata programable 7
03
La segunda:
Cuando S1 esté activado, deberá activarse el motor.
La tercera:
Si S1 está a “1”, el motor deberá ponerse a “1”.
La última:
U E 124.1
= A 124.0
Todas quieren decir lo mismo, pero la última es la única que va a entender un
autómata.
Prestando atención a la última forma, veremos que hemos conseguido expresar la
puesta en marcha de un motor en dos instrucciones; la primera (U E 124.1), evalúa
si el interruptor está a “1” ó a “0”, y la segunda (= A 124.0) hace que el estado del
motor sea el mismo que el del interruptor.
Formación Abierta
Estructura del autómata programable 8
3.2. Transición de la lógica cableada a la lógica programada
Como quiera que la mayoría de nosotros provenimos de la automatización clásica,
nos será más sencillo en principio convertir un circuito eléctrico en un programa de
autómata. Por ello introducimos este apartado.
3.2.1. La lógica cableada
Cuando hablamos del circuito de mando de una instalación eléctrica, hablamos de
algo que consta generalmente de los siguientes elementos:
Sensores o captadores (un pulsador, un interruptor, final de carrera, Pt100,
etc.).
Actuadores (la bobina de un contactor, de una electroválvula).
Elementos auxiliares (relés auxiliares, temporizadores, contadores, etc.).
El cableado (la parte más importante del circuito).
Si queremos diseñar un circuito de mando cableado, estaremos realizando las
siguientes etapas:
1. El número de elementos distintos de los que disponemos para realizar el
circuito. Si tenemos que montar un circuito con un elevado número de
contactos auxiliares, siempre será más sencillo y práctico si contamos
además de contactores, con bloques de contactos auxiliares.
2. La forma en que hemos unido (cableado) los distintos elementos para
realizar la automatización que el cliente nos ha pedido.
3. Nuestra capacidad para realizar el circuito que cumpla con las
especificaciones pedidas, de la forma más simple.
K1M
S0
S1 K1M
Figura 3.2. Esquema marcha-paro.
Autómatas Programables
Estructura del autómata programable 9
03
Más adelante realizaremos el mismo símil con la lógica programable y el lenguaje
de los autómatas.
La parte que más nos interesa ahora, en ambos casos, y en concreto en el del
circuito eléctrico, es la segunda, esto es, la forma en que hemos cableado los
distintos elementos.
El cableado es lo que da sentido al circuito, es lo que hace que el automatismo
responda ante los sensores tal y como debe hacerlo. En definitiva es el cerebro del
circuito y el que manda en el mismo. Sin cableado sólo nos quedan un montón de
elementos sin sentido alguno.
3.2.2. Traducción de circuitos eléctricos en listas de instrucciones en castellano
El título de este apartado nos da el paso previo para llegar desde la lógica cableada
a la lógica programable.
Como ya dejamos entrever en el apartado anterior, los distintos elementos de un
circuito eléctrico (sensores, actuadores, etc.) junto con el cableado que las une,
tienen una traducción inmediata a una lista de instrucciones. Cada elemento
generará una instrucción distinta en función de dos cosas:
1. Como es obvio, del elemento que se trate (contacto normalmente abierto,
normalmente cerrado, contacto temporizado, si es un sensor o un actuador,
etc.).
2. De la localización de dicho elemento dentro del circuito, es decir, de su
relación con el resto de elementos (cableado).
Empezaremos comentando los dos circuitos más simples, que, a la postre, nos
presentarán las instrucciones más básicas de la lógica programable.
Ejemplo de traducción de circuito con dos contactos normalmente abiertos en serie
Este circuito es el que se utiliza en cualquier máquina cuyo accionamiento puede
ser peligroso, como por ejemplo una prensa.
Para que la prensa baje, el operario debe pulsar necesariamente dos pulsadores,
que están separados lo suficiente como para no poder hacerlo con una sola mano.
A continuación veremos el circuito y lo traduciremos a una lista de instrucciones que
se parecerá mucho a lo pedido por el cliente.
Formación Abierta
Estructura del autómata programable 10
K1A
S2
S1
Lista de instrucciones si está
activado s1 y está activado s2 activa
k1a
Figura 3.3. Dos contactos en serie.
Creo que fue Unamuno quien firmó la frase: “Que
inventen ellos”, refiriéndose a los extranjeros. Pues bien,
lo hicieron y por ello no encontraréis ningún autómata
que se programe en castellano o con abreviaciones
(mnemónicos) de nuestra querida lengua.
En la lista de instrucciones anterior, hemos remarcado en negrita la operación “Y”,
más conocida en el mundillo digital como “AND” (del inglés), y que es la que
veníamos buscando en este apartado. En alemán se escribe “UND”, y aunque
ahora no importe mucho, recordadlo más adelante.
La operación AND consulta si se cumplen simultáneamente dos o más condiciones.
En el ejemplo propuesto verifica si tanto S1 como S2 están activados, y en función
de si es cierto o falso, activa o no la bobina K1A.
Otra “cosita sin importancia” que aprovechamos para
presentaros es lo que se ha dado en llamar la TABLA DE
LA VERDAD, ahí es nada.
La tabla de la verdad de un circuito, muestra todos los
valores posibles de cada uno de sus captadores, y el
estado en que se encontrarán los actuadores en función
de éstos.
Autómatas Programables
Estructura del autómata programable 11
03
Para el circuito que nos ocupa sería la siguiente:
Captadores Actuadores
S1 S2 K1A
0 (Desactivado) 0 (Desactivado) 0 (Desactivado)
0 (Desactivado) 1 (Activado) 0 (Desactivado)
1 (Activado) 0 (Desactivado) 0 (Desactivado)
1 (Activado) 1 (Activado) 1 (Activado)
Figura 3.4. Tabla de verdad de una función AND.
En ella, podemos comprobar que K1A se activa (1) exclusivamente cuando también
lo están S1 y S2. La tabla de la verdad es un valioso instrumento para ciertos
circuitos, en concreto para aquellos en los que hay gran cantidad de captores del
tipo todo-nada.
Mediante la tabla de la verdad conseguiremos las conocidas ecuaciones lógicas, y
mediante la simplificación de éstas, podríamos llegar a circuitos más simples.
Bueno, sigamos con lo nuestro, vamos a definir dos conceptos:
Operación: a acción a realizar.
Operando: el elemento sobre el que se realizará la acción.
Si volvemos al circuito AND y la lista de instrucciones conseguida, veremos que
podemos dividir cada instrucción en operación y operando:
Instrucción Operación Operando
1 SI ESTÁ ACTIVADO S1
2 Y ESTÁ ACTIVADO S2
3 ACTIVA K1A
La forma de conectar el circuito nos indican la operación. Los elementos (contactos,
etc.) nos dan el operando.
Formación Abierta
Estructura del autómata programable 12
Ejemplo de traducción de circuito con dos contactos normalmente abiertos en paralelo
Queremos encender una bombilla desde dos puntos distintos, de forma que
activando cualquiera de los dos contactos lo consigamos. El esquema eléctrico será
el siguiente:
S2S1
L1
Lista de instrucciones si está
activado S1 o está activado S2 activa
L1
Figura 3.5. Dos contactos en paralelo.
En la lista de instrucciones anterior, hemos remarcado en negrita la operación “O”,
más conocida como “OR”.
La operación “OR” consulta si se cumple una de dos o más condiciones.
En el ejemplo se verifica si S1 o S2 están activadas, y si cualquiera de los dos lo
está, activa a L1.
Captadores Actuadores
S1 S2 L1
0 (Desactivado) 0 (Desactivado) 0 (Desactivado)
0 (Desactivado) 1 (Activado) 1 (Activado)
1 (Activado) 0 (Desactivado) 1 (Activado)
1 (Activado) 1 (Activado) 1 (Activado)
Figura 3.6. Tabla de verdad de la función OR.
Autómatas Programables
Estructura del autómata programable 13
03
3.2.3. La lógica programable
La lógica programable, según nos apunta su nombre, será la usada por las
“tecnologías programadas” que indicábamos en el tema anterior.
Cuando en apartados anteriores hablábamos de un circuito de mando utilizando
una tecnología cableada, comentábamos que el mismo constaba de los siguientes
elementos:
Sensores o captadores.
Actuadores.
Elementos auxiliares.
El cableado.
Usando una tecnología programada serán éstos:
Sensores o captadores.
Actuadores.
Autómata programable ( o dispositivo programable).
Al pasar de una a otra hemos sustituido los elementos
auxiliares y el cableado por el autómata programable.
Sensores y actuadores son comunes a ambas tecnologías, salvo que con las
tecnologías programadas será más sencillo e inmediato el uso de alguno de ellos.
Los elementos auxiliares utilizados en tecnologías cableadas como pueden ser los
relés auxiliares, temporizadores y contadores, estarán integrados dentro del
autómata.
El cableado o la forma en que hemos unido los diferentes elementos de una
tecnología cableada es como ya sabemos, lo que hace que el automatismo se
comporte como deseamos.
Vamos a definir un nuevo concepto:
Programa: lista de instrucciones
El programa en una tecnología programada será lo que haga que el automatismo
se comporte como deseemos.
Formación Abierta
Estructura del autómata programable 14
Sensores
Tecnología Cableada Tecnología Progamada
Actuadores
Temporizadores
Contadores
Relés auxiliares
Cableado
Sensores
Actuadores
Temporizadores
Contadores
Marcas
Programa (memoria)
Autómata programable
Las listas de instrucciones que generamos con los circuitos serie y paralelo serán
pues programas.
Si dispusiéramos de un autómata capaz de entender esas instrucciones en
castellano, esos dos circuitos quedarían tal y como sigue:
Circuito Serie
Borne de entradaS1 S2
1ENT 2ENT
SAL 1
Autómata
Borne de salida
Esquema eléctrico
L1
Si está activada ENT1
y está activada ENT2
activa SAL1
Circuito Paralelo
Borne de entradaS1 S2
1ENT 2ENT
SAL 1
Autómata
Borne de salida
Esquema eléctrico
L1
Si está activada ENT1
o está activada ENT2
activa SAL1
En los dibujos vemos que la conexión de sensores y actuadores al autómata es
idéntica para ambos casos, y que lo único que cambia es el programa o lista de
instrucciones incrustado en esa caja a la que hemos llamado memoria.
La memoria es una zona del autómata destinada a almacenar nuestro programa.
Esta capacidad de “memorizar” los programas hace que los autómatas sean tan
flexibles a la hora de modificar un automatismo, ya que, sin necesidad de tocar la
conexión de sensores y actuadores, podemos cambiar el funcionamiento del
mismo, sustituyendo el programa almacenado en la memoria por uno nuevo.
Autómatas Programables
Estructura del autómata programable 15
03
Se dice que una lógica es programable cuando para que
actúe, necesita la ejecución de instrucciones
almacenadas en una memoria”.
Una última aclaración: el autómata no puede saber si hemos pulsado S1 realmente,
pero sí puede comprobar si llega tensión a la entrada en la que lo hemos conectado
(en este caso al terminal de la Entrada 1 ENT 1). Si llega tensión a ENT 1 (ENT 1
ACTIVADA), será obviamente porque S1 está cerrado.
Por lo tanto, en las instrucciones del programa, el operando será la entrada o
salida a la que hayamos conectado el sensor o actuador respectivamente.
Ahora que hemos centrado ideas, estamos preparados para saber qué es lo que
necesitamos aprender para utilizar un autómata programable:
Cómo utilizar las entradas y salidas del autómata para conectar sensores y
actuadores respectivamente.
Cómo traducir las instrucciones que conocemos del castellano al lenguaje
del autómata. Aprendizaje del lenguaje del autómata.
Cómo realizar la instalación del autómata.
Y finalmente, cómo comunicarnos con el autómata para introducir en su
memoria el programa que deseamos.
La creación de un programa que cumpla con las especificaciones que nos piden,
será mejor o peor, más o menos sencillo de realizar, en función de:
El número de instrucciones distintas de las que disponemos para realizar el
programa, y de los elementos como temporizadores, contadores, marcas,
etc., que posee internamente el autómata.
La forma en que hemos colocado cada una de estas instrucciones, para
cumplir con lo que ha pedido el cliente.
Nuestra habilidad para realizar el programa más simple.
Formación Abierta
Estructura del autómata programable 16
3.3. Partes y funcionamiento de un autómata programable
Tenemos una primera aproximación de lo que es un autómata programable y para
que se utiliza. Ahora nos centraremos en ver sus partes (externas e internas) y su
funcionamiento.
3.3.1. Estructura externa
Todos los autómatas programables, poseen una de las siguientes estructuras
externas:
Compacta
En un solo bloque están todos los elementos. Los pequeños autómatas suelen
tener este tipo de estructura, ya que incorporan en la misma CPU los módulos de
entrada/salida digitales, fuente de alimentación e incluso conectores para
comunicaciones.
La utilización de estos dispositivos ha ido aumentando rápidamente, ya que en
algunos modelos se permite la incorporación de módulos de ampliación e incluso
señales analógicas.
Figura 3.7. Ejemplo de un autómata compacto.
Autómatas Programables
Estructura del autómata programable 17
03
Modular
Cada elemento que conforma el autómata programable está por separado: fuente
de alimentación, CPU, módulos de entradas y salidas digitales, etc. Esta disposición
de dispositivos permite una gran flexibilidad de configuración para las necesidades
del usuario.
Un sistema modular facilita el diagnóstico y mantenimiento, ya que si un dispositivo
falla puede ser rápidamente sustituido. En cambio, en un autómata compacto,
aunque sólo falle el módulo de entradas/salidas debe ser sustituido todo el
autómata.
Figura 3.8. Estructura modular de un autómata programable.
Exteriormente nos encontraremos con cajas que contienen una de estas
estructuras, las cuales poseen indicadores y conectores en función del modelo y
fabricante.
Para el caso de una estructura modular se dispone de la posibilidad de fijar los
distintos módulos en raíles normalizados, para que el conjunto sea compacto y
resistente.
Los micro-autómatas suelen venir sin caja, en formato kit, ya que su empleo no es
determinado y se suele incluir dentro de un conjunto más grande de control o dentro
de la misma maquinaria que se debe controlar.
Formación Abierta
Estructura del autómata programable 18
3.3.2. Estructura interna
Internamente el autómata programable contiene un “pequeño ordenador” que hace
ejecutar las órdenes que previamente hemos introducido en su memoria. Este
pequeño ordenador contiene esencialmente las diferentes partes que se muestran
a continuación:
Memoria.
C.P.U (Unidad Central de Proceso).
Unidades de I/O.
Buses.
CPU
Memoria
RAM
ROM
Dispositivo I/O
Entradas
Salida
Programadora
Etc.
Bus de Direcciones
Bus de Datos
Figura 3.9. Estructura interna por bloques de un autómata programable.
En los siguientes puntos vamos a ir presentando los distintos componentes tanto
internos como externos, la función de cada uno de ellos.
Memoria
Podemos definir memoria como un dispositivo capaz de almacenar información.
Esta información puede ser nuestro programa o datos que el mismo necesita.
También puede ser información transparente a nosotros, es decir, programas y
datos ya incluidos dentro del autómata, y usados por él, sin que nosotros seamos
conscientes de ello.
Co
rrie
nte
Co
rrie
nte
“0” Desactivado “1” Activado
Autómatas Programables
Estructura del autómata programable 19
03
Ya sabemos que un bit es la unidad fundamental de información, y en su momento,
lo comparamos con un interruptor, o con algo que pudiera tener dos estados
distintos estables.
Si utilizamos un elemento biestable (como por ejemplo un interruptor) como
dispositivo para almacenar información, sólo podremos guardar dos posibles
informaciones: si se encuentra a “1” o a “0”.
Un dispositivo que tan solo pueda almacenar una información de 1 bit nos da poco
juego, así que, en su día, se recurrió a juntar 8 biestables dentro de una misma caja
para poder almacenar 8 bits.
7 6 5 4 3 2 1 0
1 Byte = ( bit
Los 8 interruptores de la figura pueden formar 256 combinaciones diferentes según
el estado en el que se encuentre cada uno de ellos de forma individual. Para
comprobarlo tenemos dos métodos:
Armarnos de paciencia y realizar a mano todas las combinaciones.
O utilizar la fórmula 2ⁿ, dónde “n” es el número de bits que utilizamos. En
nuestro caso, para 8 bits, el número de combinaciones posibles es 28=256.
Según esto, podemos almacenar en nuestra caja 256 informaciones diferentes. En
la tabla siguiente vemos las primeras y últimas combinaciones:
bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
Combinación 1 0 0 0 0 0 0 0 0
Combinación 2 0 0 0 0 0 0 0 1
Combinación 255 1 1 1 1 1 1 1 0
Combinación 256 1 1 1 1 1 1 1 1
Si añadimos más cajas, colocándolas una debajo de otra, conseguiremos una
matriz de biestables. En la figura siguiente aparece una matriz con “n” cajas o con
la capacidad de almacenar “n” bytes de información.
Formación Abierta
Estructura del autómata programable 20
7 6 5 4 3 2 1 0
... ... ... ... ... ... ... ...
Byte 0
Byte 1
Byte 2
Byte n-1
Byte n
Hemos conseguido una matriz de biestables, agrupados de 8 en 8, en la que
podemos almacenar “n” bytes.
Una matriz de celdas parecida a ésta, es la que tienen los autómatas programables,
ordenadores y, en esencia, cualquier dispositivo lógico programable.
Como es obvio, no son interruptores, sino elementos semiconductores insertados
en una pastilla de silicio (la fotografía nos muestra una pastilla aumentada), y que
también tienen la característica de ser elementos biestables.
Una de la características más importantes de un autómata, y en general de
cualquier dispositivo programable (un ordenador, por ejemplo) es la cantidad de
memoria que posee. Revisaremos a continuación los términos usados para
describir la cantidad de memoria.
En el mundillo de la informática, seguro que hemos escuchado a alguien hablar de
que un fichero ocupa “tantos Kas”, o que tienen un disco duro de “no se cuantos
megas”. Pues bien, están hablando de múltiplos del byte:
1 kilobyte = 1Kbyte = 210 bytes = 1024 bytes.
1 megabyte = 1024 Kbytes = 220 bytes = 1.048.576 bytes.
¿Cuántas instrucciones pueden ocupar nuestro programa
si la memoria de nuestro autómata es capaz de
almacenar 16 K y cada instrucción ocupa 2 bytes?
Si la memoria es capaz de almacenar 16 K, podremos
hacer programas que ocupen como máximo 16 x 1024 =
16.384 bytes.
Como cada instrucción ocupa 2 bytes, el número máximo
de instrucciones que podrá tener el programa que
hagamos será 16.384/2 = 8.192 instrucciones.
Autómatas Programables
Estructura del autómata programable 21
03
Los dos tipos de memoria usados en los autómatas son la memoria RAM (de
Random Access Memory o memoria de acceso aleatorio), también conocida como
“memoria de lectura/escritura” y la ROM (Read-Only Memory o memoria de sólo
lectura).
A continuación lo explicamos más detenidamente:
Memoria ROM (READ ONLY MEMORY o memoria de sólo lectura).
La ROM es la memoria que no pierde sus datos cuando quitamos la
alimentación. Por esta razón, la ROM también se conoce como memoria no
volátil.
La ROM contiene programas e información esencial para el funcionamiento
del autómata, introducida por el fabricante. La información de la ROM es
permanente y no puede cambiarse por el usuario ni se pierde cuando
desconectamos el autómata.
Hay distintos tipos de memoria ROM, como la PROM, EPROM, EEPROM,
Flash EPROM. Veámoslas:
PROM (ROM programable):
La memoria PROM es una memoria ROM que puede ser programada
por el usuario. Por cada bit de la PROM hay algo parecido a un fusible.
La PROM se programa fundiendo estos fusibles. Si la información
grabada en la PROM resulta ser errónea, la podemos tirar
tranquilamente, puesto que estos fusibles se funden de forma
permanente. Por este motivo a la memoria PROM también se conoce
como OTP (One-Time Programmable, o programable sólo una vez).
EPROM (Erasable Progammable ROM o ROM programable y
borrable):
Esta memoria se inventó para permitir cambios en los contenidos de una
memoria PROM una vez que la habíamos “fundido”. Con los EPROM
podemos programar el chip de memoria y después borrarlo tantas veces
como queramos. El único problema es que el borrado puede tardar unos
20 minutos. Todas las memorias EPROM tienen una ventanita en el
chip, usada para permitir el paso de radiaciones ultravioletas (UV), que
son las que realizan las tareas de borrado. Por esta razón podemos
encontrar referencias a las mismas como UV-EPROM.
Figura 3.10. Memoria EPROM.
Formación Abierta
Estructura del autómata programable 22
EEPROM (Electrically Erasable Programmable ROM o ROM
programable y borrable eléctricamente)
La memoria EEPROM tienen grandes ventajas sobre su antecesora
EPROM, como el hecho de que su sistema de borrado es eléctrico e
instantáneo. Además, con las EEPROM podemos seleccionar qué byte
queremos borrar, en contraste con las UV-EPROM en las que se
borraba el contenido entero de la memoria.
Aun así, la principal ventaja de las memorias EEPROM, es el hecho de
que podemos programar y borrar sus contenidos desde la misma tarjeta
de sistema que la soporta, es decir, no necesita un dispositivo externo
para programarla o borrarla (un chollo vamos).
Para aprovechar esta característica completamente, el diseñador debe
incorporar en la tarjeta de sistema la circuitería necesaria.
Flash EPROM
Su nombre proviene de la rapidez con la que se realiza el proceso de
borrado. Como el sistema de borrado es eléctrico, también la
encontraremos como Flash EEPROM. La mayor diferencia con las
EEPROM puras es que las Flash EPROM se borran completamente.
Memoria RAM (Random Access Memory o memoria de acceso
aleatorio)
También conocida como memoria volátil, ya que al quitarle la
alimentación se pierde su contenido.
El autómata usa la RAM para almacenar temporalmente los programas
que esté ejecutando. Estos datos se pierden cuando apagamos el
autómata, a menos que contemos con una batería (batería tampón). Por
esta razón a la RAM se la conoce también como “memoria volátil”.
Hay tres tipos de RAM: SRAM, DRAM y NV-RAM. También las vemos:
SRAM (Static RAM o RAM estática):
Las celdillas en la SRAM están hechas con biestables flip-flops y no
necesitan refrescar su contenido para mantener los datos. El
principal problema que presentan es que, por sus características
constructivas, pueden almacenar a igual tamaño, menos
información que sus primas-hermanas DRAM.
Autómatas Programables
Estructura del autómata programable 23
03
DRAM (Dynamic RAM o RAM dinámica):
Estas memorias usan un condensador para almacenar cada bit. El
uso de condensadores supone un menor tamaño para almacenar la
misma información que con una SRAM, pero tiene el inconveniente
de que necesitan “refrescar” su contenido constantemente, por el
hecho de que el condensador pierde su carga (todos los
condensadores tienen una corriente de pérdida).
Otra desventaja con respecto a la SRAM, es que el “tiempo de
acceso” (el tiempo que se tarda en leer o escribir un dato en ellas),
es mayor.
Su principal ventaja: son mucho más baratas.
NV-RAM (Nonvolatile RAM o RAM no volátil):
Simplemente es una RAM que cuenta con una pequeña batería de
litio integrada en el mismo chip. Cuando desconectamos la
alimentación, la batería se encarga de mantener los datos.
¿Cuánto dura la batería? Unos diez años.
¿Cuál es su principal inconveniente? Son
astronómicamente caras.
Estructura de la memoria del autómata programable
La memoria de programa se estructura en diferentes áreas, que son:
Área de datos.
Área de programa.
Área de configuración del sistema.
El área de datos reúne los objetos vinculados a los datos de la configuración
software, o sea, aquí se almacenará información referente al número de
entradas y salidas manejables por el equipo, cantidad de palabras
direccionables para almacenado de datos, bits especiales, etc.
En el área de programa se almacenará el programa que nosotros
desarrollemos, lo que se denomina código ejecutable.
Formación Abierta
Estructura del autómata programable 24
El área de configuración del sistema es la encargada de almacenar los
datos de configuración y la estructura de nuestro programa o aplicación.
Aquí se almacena información tal como el número de entradas y salidas
conectadas al autómata, número de temporizadores y contadores
disponibles, registros, etc. También se almacenan datos referentes a como
queremos que se ejecute nuestro programa y si queremos que el autómata
nos avise de determinadas anomalías.
Figura 3.11. Asignación de memoria de un autómata.
C.P.U. (Unidad Central de Proceso)
Es el “cerebro” del sistema. Su misión es controlar el funcionamiento de las demás
unidades, así como procesar los datos de acuerdo al programa introducido en la
memoria
La C.P.U. se conecta a la memoria y a los dispositivos I/O mediante un conjunto de
cables a los que llamamos buses.
Los buses del autómata llevan información de un lugar a otro, de forma similar a la
que un autobús lleva gente de un sitio a otro.
Todos los dispositivos programables tienen tres tipos de buses: el bus de
direcciones, el bus de datos y el bus de control.
Autómatas Programables
Estructura del autómata programable 25
03
Para que un dispositivo (de memoria o I/O) sea reconocido por la C.P.U. del
autómata, debe tener una “dirección” asignada. Esta dirección debe ser única; no
puede haber dos dispositivos con la misma dirección. Tampoco puede haber un
dispositivo con las direcciones distintas (sería interesante que los cheques llegaran
a mi casa y las facturas a la de mi vecino, pero no me dejan).
La C.P.U. pone la dirección (en binario, con unos y ceros) en el bus de direcciones,
y un circuito decodificador se encarga de encontrar el dispositivo al que se dirige.
Entonces, la C.P.U. usa el bus de datos para recoger datos de ese dispositivo o
para enviárselos.
Funcionamiento de la C.P.U.
Un programa guardado en la memoria proporciona instrucciones a la C.P.U.
para realizar una acción. La acción puede ser simplemente sumas de
números o controlar un proceso industrial.
La función de la C.P.U. consiste en ir recogiendo (leyendo) estas
instrucciones una por una en la memoria e ir ejecutándolas.
Para realizar las acciones de lectura y ejecución de las instrucciones, todas
las C.P.U. cuentan con recursos como los siguientes:
Uno de los principales recursos de la C.P.U. es el número de registros
que tiene a su disposición. La C.P.U. usa los registros para almacenar
información temporalmente. Esta información pueden ser los datos que
han de procesarse, o la dirección de un valor que necesitamos recoger
de la memoria. Los registros de la C.P.U pueden ser de 8 bits, 16 bits o
incluso más dependiendo de la misma. En general, cuanto más y mayor
información puedan almacenar los registros, mejor será la C.P.U.
La C.P.U. también cuenta con lo que se reconoce como “ALU”
(arithmetic/logic unit O unidad aritmético lógica). La ALU es la encargada
de realizar las funciones aritméticas, como la suma y la resta, y las
funciones lógicas como AND, OR y NOT.
Todas las C.P.U. tienen un “contador de programa”. La función del
contador de programa es apuntar a la dirección de la siguiente
instrucción que debe ejecutarse. Cada vez que se ejecuta una
instrucción, el contador de programa se incrementa para apuntar hacia
la dirección de la siguiente instrucción que debe ser ejecutada. Esto es,
el contenido del contador de programa se deposita en el bus de
direcciones para encontrar y leer la instrucción siguiente.
Formación Abierta
Estructura del autómata programable 26
Por último, la C.P.U. cuenta con el “decodificador de instrucciones”. La
función del mismo es la de interpretar la instrucción en curso recogida
por la C.P.U. de la memoria. Esta instrucción se guarda
momentáneamente en un registro especial llamado registro de
instrucciones.
Podemos pensar en el decodificador de instrucciones como una especie de
diccionario en el que está almacenado el significado de cada instrucción, y
que le cuenta a la C.P.U. qué pasos debe seguir una vez haya recibido una
instrucción dada. Del mismo modo que un diccionario es mejor cuantas más
palabras define, la C.P.U será mejor cuanto mayor sea el juego de
instrucciones que puede comprender.
A continuación vemos un esquema de bloques del contenido interno de una
C.P.U. de aplicación general:
R.I Rcc
Unidad
de control
Contador de
Programa (PC)
Acumulador
Acumulador
Bus de Control
Bus de Direcciones
Bus de
Datos
Figura 3.12. Figura 3.12. CPU de aplicación general.
Unidades de entrada/salida
Su función es canalizar la transferencia de información entre el sistema
microcomputador y los dispositivos exteriores
Buses
Como ya hemos comentado, los buses unen los diferentes dispositivos del sistema
y pueden ser de tres tipos: bus de datos, bus de direcciones y bus de control.
Autómatas Programables
Estructura del autómata programable 27
03
Bus de Datos
Como su nombre indica el bus de datos contiene información referida
exclusivamente a datos.
Dado que el bus de datos se usa para llevar información de / hacia la
C.P.U., cuanto mayor sea el bus de datos, mejor será la C.P.U.
Si pensamos en el bus de datos como si fuera una autopista lo veremos
más claro. Cuantos más carriles tenga la autopista, más información podrá
circular entre la C.P.U. y los dispositivos externos. En el tema que nos
ocupa, un carril será un cable, que podrá tener tensión o no (“1” o “0”
respectivamente).
CPU CPU
Bus de Datos
8 cables
Figura 3.13. Ejemplo de bus.
En el dibujo, hemos unido la C.P.U. con la memoria mediante un bus de
datos con 8 cables. Si por cada cable podemos enviar un “1” o un “0”, este
bus permitirá que la C.P.U. envíe o recoja 8 bits o 1 byte de golpe.
Está claro que cuanto mayor sea el tamaño del bus de datos, es decir,
cuantas más líneas posea, más información podremos tratar en el mismo
tiempo, y más cara será la C.P.U. y el autómata.
Decimos que el bus de datos es bidireccional por el hecho de que los datos
fluyen desde “y” hacia la C.P.U.
Bus de direcciones
Como su nombre indica el bus de direcciones contiene información referida
exclusivamente a direcciones de memoria.
El bus de direcciones se usa para identificar los dispositivos y la memoria
conectados a la C.P.U., cuantas más líneas (cables) posea, mayor número
de dispositivos podremos direccionar. En otras palabras, el número de
líneas del bus de direcciones determina el número de lugares con los que
podrá comunicarse la C.P.U. El número de localizaciones será igual a 2ⁿ
donde “n” es el número de líneas (¿de qué nos suena esta formulilla?).
Formación Abierta
Estructura del autómata programable 28
Una C.P.U. con 16 líneas en el bus de direcciones,
puede proporcionarnos un total de 65.536 (216) o 64K de
memoria direccionable. Cada posición puede tener un
máximo de 1 byte de información.
El bus de direcciones es unidireccional, lo que significa que la C.P.U. lo usa
exclusivamente para colocar una dirección en el mismo y que el dispositivo
elegido se dé por aludido. Como el bus de direcciones se usa para identificar
los dispositivos y la memoria conectados a la C.P.U., cuantas más líneas
(cables) posea, mayor número de dispositivos podremos direccionar. En
otras palabras, el número de líneas del bus de direcciones determina el
número de lugares con los que podrá comunicarse la C.P.U. El número de
localizaciones será igual a 2n donde “n” es el número de líneas (¿de qué nos
suena esta formulilla?).
Bus de control
El bus de control contiene líneas que se usan para comunicarle al
dispositivo, si lo que quiere la C.P.U. es leer datos o escribirlos.
De los tres buses, el de datos y el de direcciones determinan las
prestaciones de la C.P.U.
Autómatas Programables
Estructura del autómata programable 29
03
Resumen
El bit es la unidad fundamental de información. Sólo puede proporcionarnos
dos posibles informaciones. “1” o “0”.
Los circuitos eléctricos pueden explicarse utilizando listas de instrucciones en
castellano.
Una instrucción consta de: operación y operando.
El autómata programable sustituye a la mayoría de los elementos auxiliares
(temporizadores, contadores, etc.), y al cableado de un circuito clásico.
La memoria es un dispositivo capaz de almacenar información.
El mapa de memoria muestra cómo se distribuyen las diferentes áreas de
memoria del autómata. En él, podemos encontrar las imágenes de proceso de
entradas y salidas, el sistema operativo y datos internos del autómata, y la
zona destinada al programa de usuario.
Los principales tipos de memoria son la RAM y la ROM.
1 Nibble = 4 bits.
1 Byte = 8 bits.
1 Palabra = 16 bits = 2 bytes.
1 Kilobyte = 210 bytes = 1024 bytes.
Podemos considerar que el autómata está compuesto por una unidad central
de proceso o C.P.U., la memoria, y los dispositivos de entrada/salida.
Los buses de un autómata son: el bus de direcciones, el bus de datos y el bus
de control.
Los recursos de la C.P.U. son los registros internos, la unidad aritmético lógica
o A.L.U., el contador de programa, el decodificador de instrucciones, etc.
Top Related