Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Programacion s7200
Programacion s7200
net
Automatización Industrial
Curso 2001-2001
Programación
1
NOCIONES BÁSICAS
Cargar programas en la CPU y en la PG/PC
El diodo luminoso (LED) en la parte frontal de la CPU indica el modo de operación actual.
Para poder cargar un programa en la memoria de la CPU es preciso cambiar a modo STOP.
SELECTOR
Si el selector se pone en STOP, se detendrá la ejecución del programa.
Si el selector se pone en RUN, se iniciará la ejecución del programa.
Si el selector se pone en TERM (terminal), no cambiará el modo de operación de la CPU.
Será posible cambiarlo utilizando el software de programación (STEP 7-Micro/WIN).
En modo RUN, la CPU lee las entradas, ejecuta el programa, escribe en las salidas, procesa las peticiones de
comunicación, actualiza los módulos inteligentes, ejecuta tareas auxiliares internas y gestiona las condiciones de
interrupción.
La CPU no soporta tiempos de ciclos fijos de ejecución en modo RUN.
Estas acciones (con excepción de las interrupciones de usuario) se gestionan conforme a su prioridad en el orden
en que van ocurriendo
Al principio de cada ciclo se leen los valores actuales de los bits de entrada. Dichos valores se escriben luego en la
imagen del proceso de las entradas.
Los bits de entrada que no tengan una entrada física correspondiente, pero que se encuentren en el mismo byte
que otras entradas físicas, se ponen a 0 en la imagen del proceso cada vez que se actualicen las entradas, a menos
que se hayan forzado.
Automatización Industrial Curso 2001-2001 Programación: SIMATIC S7-200
NOCIONES BÁSICAS
Entradas / Salidas Integradas y Adicionales
Las CPUs S7-200 (y STEP 7-Micro/WIN) poseemn los siguientes lenguajes de programación:
Contactos
Contactos
El contacto normalmente abierto se cierra (ON) si el bit es igual a 1
El contacto normalmente cerrado se cierra (ON) si el bit es igual a 0.
Ejemplo
Bobinas
Es un registro de 16 bits que contiene algunos bits a los que puede accederse en el
operando de operaciones lógicas de bits y de palabras. Solo nos serán de utilidad los 9
primeros bits, estando reservados el uso de los 7 últimos. A continuación pasaremos a
describir cada bit:
BIT 0 (ER): 0 indica que la siguiente línea se ejecuta como nueva consulta (inhibida).
En este estado la consulta se almacena directamente en RLO (ver 4.1).
BIT 1 (RLO): resultado lógico. Aquí se realizan las operaciones a nivel de bit (como
AND, OR, etc.).
BIT 2 (STA): bit de estado. Solo sirve en el test de programa.
BIT 3 (OR): se requiere para el proceso Y delante de O. Este bit indica que una
operación Y ha dado valor 1, en las restantes operaciones es 0.
Automatización Industrial Curso 2001-2001 Programación: SIMATIC S7-200
2. Programación en KOP
Registros
Palabra de estado
BIT 4 (OV): bit de desbordamiento. Se activa (1) por una operación aritmética o de
comparación de coma flotante tras producirse un error (desbordamiento, operación no
admisible, o relación incorrecta).
BIT 5 (OS): bit de desbordamiento memorizado. Se activa junto con OV e indica que
previamente se ha producido un error. Solo puede cambiar a cero con la instrucción SPS,
una operación de llamada a módulo, o porque se ha alcanzado el fin del módulo.
BITS 6 (A0) y 7 (A1): códigos de condición. Dan información sobre los resultados o bits
siguientes:
- resultado de una operación aritmética.
- resultado de una comparación.
- resultado de una operación digital.
- bits desplazados por una instrucción de desplazamiento o rotación.
BIT 8 (RB): resultado binario. Permite interpretar el resultado de una operación de palabras
como resultado binario e integrarlo en la cadena de combinaciones lógicas binarias.
Automatización Industrial Curso 2001-2001 Programación: SIMATIC S7-200
2. Programación en KOP
Registros
Registros 1 y 2 de direcciones
Son dos registros de 32 bits cada uno. Se emplean como punteros en
operaciones que utilizan un direccionamiento indirecto de registros.
Pila de paréntesis
Aquí se almacenan los bits RB, RLO y OR, además del código de función
que especifica que instrucción lógica ha abierto el paréntesis. Tiene un
tamaño de 8 bytes (máximo anidamiento).
TEMPORIZADORES (T)
CONTADORES (C)
Programación Lineal
Programación organizada en secciones
Programación Estructurada
Programación organizada
Programación Lineal Programación Estructurada
en secciones
Recip. A
Bomba
OB 1 OB 1 Recip. B OB 1
MezcKOPor
Salida
Salida
Todas las instrucciones Las instrucciones de las funciones Se escriben funciones reutilizables en
se encuentran en un individuales se encuentran en Bloques separados. El OB1 (u otros
solo Bloque Bloques separados. El OB1 se
Bloques) llaman a esos Bloques y les
(normalmente el Bloque encarga de llamar a esos Bloques
de Organización OB 1) uno tras otro. pasan los correspondientes datos.
Subrutinas
Las subrutinas se adecuan para funciones que se deban ejecutar varias veces.
Basta con escribirla sólo una vez y llamar a la subrutina desde el programa principal
cada vez que se necesite.
Beneficios:
Se reduce la longitud total del programa.
El tiempo de ciclo también se acorta, puesto que el código se ha retirado del
programa principal (donde se evalúa en cada ciclo, así se ejecute o no). La subrutina
se puede invocar de forma condicional, por lo que no se evalúa durante los ciclos en
los que no se llame a la misma.
Las subrutinas se pueden transportar fácilmente, permitiendo aislar una función y
copiarla a otros programas sin necesidad de efectuar cambios o con sólo pocas
modificaciones.
Rutinas de interrupción
Las rutinas de interrupción se pueden programar para gestionar eventos de
interrupción predefinidos.
No son invocadas por el programa principal, sino que el sistema operativo de
la CPU las llama cuando ocurre el correspondiente evento de interrupción.
Puesto que no es posible saber con anterioridad cuándo el sistema llamará a
una rutina de interrupción, no es deseable que ésta escriba en la memoria
que se pueda estar utilizando en otra parte del programa.
Con la tabla de variables locales se puede asegurar que las rutinas de
interrupción utilicen únicamente la memoria temporal, de manera que no
sobreescriban los datos de otra parte del programa.
Sistema Operativo
Ciclo Scan
OB = Bloque de Organización
SBR = Subrutina 0 - 63 Máximo 8 niveles de anidamiento
INT = Rutina de Interrupción 0 - 127
E 0.0 A 0.0
(S)
1
E 0.1 A 0.0
(R)
1