Você está na página 1de 6

ITESM Campus Monterrey Depto. de Ing.

Eléctrica

Laboratorio de Teleingeniería

Práctica 4: Tipos de Direccionamiento.


Objetivo:
Conocer las posibilidades de direccionamiento en los proyectos, así como su comportamiento y
utilidad.
Crear una tabla de símbolos para visualizar el direccionamiento simbólico.

Introducción:
Al realizar la programación en el administrador SIMATIC (ya sea por medio de STL, LAD, o FBD) se hace
referencias a entradas y salidas del sistema. Sin embargo, existen dos tipos de direccionamientos para
referenciar dichas señales: el direccionamiento absoluto y el direccionamiento simbólico.

Direccionamiento absoluto
Hasta ahora sólo se ha utilizado este tipo de direccionamiento para referirse a las direcciones del PLC.
Para las direcciones absolutas, se necesita especificar el tipo de dirección, así como el byte y bit a
utilizar. Por ejemplo, se pueden citar:

Dirección Tipo de dirección Byte Bit


I 1.0 Entrada (Input) 1 0
Q 2.1 Salida (Output) 2 1
M 100.0 Memoria 100 0

Tabla 1. Ejemplos de direcciones absolutas

La figura 1 muestra también un ejemplo de una dirección absoluta, pero visto desde un módulo de
entradas y salidas digitales. Los indicadores de la parte izquierda del módulo corresponden a las
entradas digitales, mientras que los indicadores de la parte derecha del módulo corresponden a las
salidas digitales.

Práctica 4: Tipos de Direccionamiento 1/6


Figura 1. Relación entre una dirección absoluta y un módulo.

En STEP 7 se pueden encontrar tres tipos de direccionamiento absoluto:


Direccionamiento inmediato.
Direccionamiento directo.
Direccionamiento indirecto de memoria.

Direccionamiento inmediato:
En este tipo de direccionamiento, el operando se codifica directamente en la operación. Es decir,
después de la operación que se debe trabajar, se incluye inmediatamente ya sea el valor o el operando
implícito.

Ejemplos de direccionamiento inmediato:


Instrucción Descripción
L+27 Carga el valor 27 en el Acumulador 1
L L#+5 Carga la constante de 32 bits 5 en el acumulador 1

Direccionamiento directo:
En este tipo de direccionamiento, la dirección del operando se codifica en la operación. Es decir, el
operando especifica la dirección del valor en donde la operación debe trabajarse. El operando consiste
en una característica de operando y un parámetro, y apunta directamente a la dirección del valor.

Ejemplos de direccionamiento directo:


Instrucción Descripción
A I0.0 Crea una relación entre la compuerta AND y la entrada
I0.0
L IB0 Carga el Byte de entrada IB0 en el acumulador 1

Práctica 4: Tipos de Direccionamiento 2/6


= Q4.0 Entrega el resultado de una operación lógica (RLO) de la
señal de salida 4.0

Direccionamiento indirecto de memoria:


La dirección del operando es dada indirectamente a través de un operando, el cual contiene la dirección.
Por ejemplo, el operando indica la dirección del valor, el cual va a realizar el proceso de la operación. El
operando consiste en una característica del operando, y de uno de los siguientes apuntadores
(pointers):
Una palabra (Word), que contiene el número de un temporizador (T), contador (C), bloque de datos
(DB), función (FC) o bloque de función (FB).
Una palabra doble (double-word), que contenga la dirección exacta de un valor dentro de la
memoria, especificando el operando.
El acceso del valor o del número indica al operando indirectamente a través del apuntador. La
palabra o la doble-palabra puede ser encontrada en las memorias de bit (M), un bloque de datos
(DB), un bloque de datos de instancia (IDB) o datos locales (L).

Ejemplos de direccionamiento indirecto de memoria:

Instrucción Descripción
A I[MD3] Crea una relación entre la compuerta AND y el bit de
entrada. La dirección exacta del bit se encuentra en la
palabra doble de la memoria 3 (MD3).
LIB [DID 4] Carga el byte de entrada en el Acumulador 1 (AKKU1).
La dirección exacta se encuentra en el bloque de
datos de instancia de doble palabra (DID 4).

Direccionamiento simbólico
Este tipo de direccionamiento es comúnmente útil para identificar con mayor facilidad las direcciones de
entradas y salidas del proceso, así como las variables internas en memoria. Hace posible asignar un
nombre simbólico a una dirección absoluta específica. Por ejemplo, se puede asignar el nombre “STOP”
a la entrada I 0.0, y asignar un tipo de dato BOOL. Durante la declaración de variables, no es posible
repetir el nombre simbólico para dos variables diferentes. En caso de asignar el mismo nombre a
variables diferentes (figura 2), o de asignar dos nombres diferentes a una misma variable (figura 3), la
tabla de símbolos arrojará un error.

Figura 2. Error de declaración: Nombre simbólico repetido

Práctica 4: Tipos de Direccionamiento 3/6


Figura 3. Error de declaración: Dirección repetida

Cada nombre simbólico puede registrarse sólo una vez en la tabla de símbolos. Es decir, si en la
tabla de símbolos se asigna la entrada “I 0.0” como “Start”, no se podrá utilizar el símbolo “Start” para
otra dirección, ya sea entrada, salida, o memoria.

La asignación se lleva a cabo en la tabla de símbolos. Esta herramienta se puede abrir desde el
administrador SIMATIC. Desde la pantalla principal del administrador, se debe seleccionar el apartado
“S7 Programm”, el cual se encuentra como una subdivisión del CPU del proyecto. En el área de trabajo,
con un click derecho del mouse se selecciona la opción “Insert New Object” y seleccionar “Symbol
Table”. La figura 4 muestra este procedimiento, así como el lugar de trabajo en donde se agrega este
elemento.
Una vez que se abrió la ventana, se procede a agregar las entradas y salidas que se desean
utilizar para realizar el direccionamiento simbólico. La figura 5 muestra de manera sencilla la forma de
introducir los datos para una entrada y una salida.

Figura 4. Acceso a la tabla de símbolos

Práctica 4: Tipos de Direccionamiento 4/6


Figura 5. Declaración de una entrada y una salida en la tabla de símbolos

En cuanto a los tipos de datos que se pueden incluir en la tabla de símbolos, la siguiente tabla menciona
y explica brevemente los más importantes:

Para más información, se puede consultar del menú principal “Help / Contents”, bajo el tema
“Programming Blocks” y “Defining Symbols”.

Tipo de dato Descripción


BOOL Estos datos son combinaciones de bits. El rango abarca
BYTE desde un bit (tipo BOOL) hasta 32 bits (DWORD).
WORD
DWORD
CHAR Este tipo de dato utiliza un carácter del código ASCII.
INT Este tipo de dato se utiliza para procesar valores
DINT numéricos (por ejemplo, para calcular expresiones
REAL aritméticas).
S5TIME Estos datos representan diferentes valores para el
TIME tiempo y la fecha en el entorno de STEP 7 (por ejemplo,
DATE para especificar la fecha, o para introducir el valor
TIME_OF_DAY predeterminado de un temporizador)

Tabla 2. Tipos de datos más comunes en Step 7

La herramienta de Symbol Editor adicionalmente cuenta con la función de


importar/exportar símbolos a través de archivos *.DIF los cuales pueden ser generados y
consultados en Excel.

Práctica 4: Tipos de Direccionamiento 5/6


Descripción del ejercicio.- Tabla de símbolos y control de cadena.
Primeramente, se realizará la tabla de símbolos correspondientes al modelo utilizado para el
laboratorio. Se deben agregar todas las variables existentes, para que el alumno pueda trabajar con el
tipo de direccionamiento de su elección. La opción para elegir la visualización de las variables se
encuentra en la ventana del OB: “View – Display with – Symbolic Representation”.

Después, se trabajará con el programa realizado en la práctica anterior. En esta práctica deberán de
programar de manera adecuada el control de la cadena únicamente con los sensores conveyor chain
sensor, light barrier register storage y el actuador conveyor chain. El registro deberá de contener las
cuatro piezas con los colores amarillo, azul, blanco y verde. Es necesario hacer un análisis dinámico el
funcionamiento de la cadena para obtener una secuencia de programación óptima.

Descripción de sensores:

Conveyor chain sensor es un sensor inductivo de proximidad el cual tiene un rango de medición de 1
mm, y un diámetro de 2 mm, se activa cuando detecta elementos metálicos en su cercanía.

Funcionamiento:
Las cuatro piezas deberán de estar en el registro antes de empezar la ejecución del programa.

La cadena sacara solamente una pieza del registro, y volverá a sacar otra pieza una vez que la pieza
anterior se haya acomodado en una de las mesas. La banda prendera solamente cuando la cadena
cambie su estado de encendido ha apagado y el sensor conveyor chain sensor se encuentre prendido
(la cadena dio media revolución para sacar una pieza y se detuvo esperando que la pieza se acomode en
una de las mesas).

El acomodo de las piezas en las diferentes mesas tendrá la siguiente prioridad:


1. Mesa 1
2. Mesa 2
3. Mesa 3
4. Mesa 4
1 es mayor prioridad, 4 es menor prioridad

Se tendrá que validar que las mesas no estén ocupadas. Si la mesa con prioridad 1 está ocupada, la pieza
tendrá que ir a la mesa de prioridad 2, si esta está ocupada tendrá que ir a la mesa de prioridad 3, si esta
está ocupada tendrá que ir a la mesa de prioridad 4. Si una o más de las mesas están descargadas y una
o más mesas están cargadas, la pieza que entre por el registro deberá de acomodarse en la mesa de
mayor prioridad.

El proceso de automatización deberá de ejecutarse cualquier cantidad de ocasiones. Deberá de probar


el correcto funcionamiento del ejercicio en el simulador del modelo. Solo lo podrá cargar al PLC real
cuando el Instructor lo permita, en caso contrario se penalizara la práctica con 20 puntos.

Práctica 4: Tipos de Direccionamiento 6/6