Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Principios de Programacin en STEP7
Principios de Programacin en STEP7
Automatizacin Industrial
ndice
TEMA Principios de Programacin en STEP7 1. Programas en la CPU 2. Edicin de Programas 2.1 IEC 1131-3 2.2 Instrucciones/Operandos/Mdulos 3. Estructura de Programas 4. Tipos de Mdulos 4.1 Mdulos de Sistema 4.2 Mdulos de Usuario 5. Tipos de Procesamiento 6. Tiempos de Ciclo y Respuesta 7. Proyectos STEP7
Programas en la CPU
En una CPU corren dos programas
Sistema operativo: Est contenido en cada CPU y organiza todas las funciones y procesos de la CPU no relacionados con una tarea de control especfica. Entre sus funciones estn: gestionar el arranque normal y completo del PLC/API actualizar la imagen del proceso de entradas y salidas llamar al programa de usuario detectar alarmas y llamar a los programas de atencin a las mismas reconocer y tratar los errores administrar las reas de memoria comunicar con unidades de programacin y otros sistemas de supervisin
Programa de usuario: Hay que crearlo y cargarlo la CPU. Contiene todas las funciones necesarias para la tarea de control de una aplicacin especfica. Entre las tareas del programa de usuario estn: definir las condiciones de arranque (completo normal) de la CPU tratar datos del proceso (funciones combinatorias, valores analgicos, ....) reaccionar a alarmas tratamiento de perturbaciones en el funcionamiento normal del programa
Ttulo
Informacin general Especificaciones y ensayos de los equipos
Contenidos
Definicin de trminos y glosario del PLC/API Caractersticas funcionales del PLC/API Prestaciones elctricas, mecnicas y funcionales Informacin a suministrar por el fabricante Ensayos y verificaciones Estructura del software de los PLC/API Lenguajes de programacin Elementos del lenguaje Especificaciones y anlisis del sistema Aplicacin y seleccin del PLC/API Seguridad y proteccin, instalacin y mantenimiento Modelos, bloques de comunicacin, mapeado en protocolos ISO
Parte 5
Comunicaciones
IEC 1131-3
FBD Function Block Diagram LD Ladder Diagram IL Instruction List ST Structured Text SFC Sequential Function Chart
STEP 7
FBD/FUP Function Block Diagram LAD/KOP Ladder Logic STL/AWL Statement List SCL Structured Control Language GRAPH7 CFC Continuous Function Chart HIGRAPH7
Programas de Usuario
Bloque en el Programa de Usuario
STEP 7 permite estructurar el programa. Esto aporta las siguientes ventajas: los programas se pueden dividir en bloques se pueden estandarizar secciones individuales del programa se simplifica la organizacin del programa las modificaciones del programa pueden realizarse ms fcilmente se simplifica el test del programa, ya que puede ejecutarse por partes se simplifica la puesta en servicio
Edicin de un Programa
Programa
conjunto de todas las instrucciones y convenciones para el tratamiento de las seales, por medio de las cuales se acta sobre la instalacin a controlar (proceso), de acuerdo con unas rdenes de control
Estructura
Tcnica modular Segmentos Comentarios
Representacin
FBD / FUP LAD / KOP STL / AWL
Instruccin
Instruccin
unidad ms pequea autnoma del programa y constituye una orden de trabajo para el procesador
Instruccin
002: A I 1.0
Operacin Operando
Parte operacional
Operando
Identificacin Parmetro
Operandos
OPERANDOS NEMONICO FUNCION
Imagen del proceso de entradas (PII) Imagen del proceso de salidas (PIQ) Para almacenar resultados binarios intermedios Para almacenar resultados digitales intermedios Funciones de tiempo (temporizadores) Funciones de cmputo (contadores) Para acceder directamente a la periferia Datos locales temporales Para estructurar el programa
Ejemplo de Programa
Esquema STL/AWL Elctrico
S1 S2 A I 0.0 AN I 0.1 = Q 4.5 I 0.0
FBD/FUP
LAD/KOP
&
Q 4.5
I 0.1
H1
OB1
OB1
OB1
Mezclador Descarga
Programa Lineal:
Todas la instrucciones estn contenidas en un mdulo (normalmente en el mdulo de organizacin, OB1)
. . . . . . .
ltima instruccin
Programacin Lineal
OB1: Ejemplo de de un simple mdulo lineal en FUP Segmento 1: motor marcha/paro OB1: ejemplo de un simple mdulo lineal en AWL Segmento 1: motor on/off A( O I 0.0 O Q 4.0 ) AN I 0.1 = Q 4.0 Segmento 2: Seguridad y seales de aviso A AN AN = I 0.2 I 0.3 I 0.4 Q 4.1
I 0.0 Q 4.0
>=1 &
Q 4.0 I 0.1
=
&
Q 4.1
=
Programacin Dividida
FC
>=1 & =
& >=1 =
Descarga
& = >=1
FC
Procesamiento del programa Instruccin que llaman otros mdulos Procesamiento del programa
Fin de mdulo
Programacin Estructurada I
Sistema Operativo
OB1
FC FB SFC SFB
FB FC
Otros
OBs
Programacin Estructurada II
OB1 >=1 & =
Descarga Motor
Mdulo 7
Mdulo 32
Mdulo R
. . . . .
Lamar al mdulo 32
Llamar al mdulo X
...
Retornar
Retornar
Mdulo 10
Retornar
FB 10 CINTA A CALL FC 50 FC 50
DB inst. 10
Tren
CALL FB 10
Sistema operativo
Accionamiento
DB inst. 2
OB Mdulo de Organizacin
FB
FC
SFB
FB
Bloques
FB
CPU 315
SFC
CPU 315-2DP Tamao
Leyenda:
Mdulo de datos de instancia
Funcin (FC) Mdulo de datos (DB) Funcin del sistema (SFC) Md. func. sistema (SFB)
Mdulos de Usuario
Tipo de Mdulo
Organizacin (OB) -
Caractersticas
Interfase de usuario entre el sistema operativo y el programa Prioridades establecidas de (1a 29) Informacin especial de inicio en la pila de datos locales Definen la estructura del programa de usuario Mdulos con memoria que puede programar el usuario Parametrizable / retentiva No parametrizable / retentiva No parametrizable / no retentiva
Funcin (FC)
- Rutina de programa para funciones frecuentes. - Un valor de retorno es transferido. (Los parmetros deben ser asignados por la llamada.) - No retentivo - Parametrizable - Estructurado, almacenamiento de datos locales (DB instan.) - Estructurado, almacenamiento de datos globales (vlido en todo el programa)
Ejecucin Cclica I
Sistema operativo Programa de usuario
Conectar
Ciclo
Programa principal
Ejecucin Cclica II
Sistema operativo Programa de usuario
Conectar Programa de usuario Programa principal Interrupcin Interrupcin Programa de alarma Tratamiento de errores
Ciclo Alarma
Error
OB 1
FB 1
DB inst. 1
FC 1
Sistema operativo
FB 2
DB inst. 2
FB 1
DB inst. 1
SFC 1
FC 1
DB 1
Mdulo llamado
(FB, FC, SFB, SFC)
Fin de mdulo
Tiempo de Ciclo I
El tiempo de ciclo es el tiempo que el S.O. necesita para: ejecutar el programa cclico partes del programa que interrumpen al cclico (ejecucin otros OBs) actividades del sistema (p.e. actualizacin de imgenes, ..) El tiempo de ciclo se vigila El tiempo de ciclo no es igual para cada ciclo
Tiempo de Ciclo II
La figura muestra la funcin del tiempo de vigilancia del ciclo en la ejecucin del programa en las CPUs
Funciones FCs
Son mdulos programables. Con parmetros absolutos o fromales Es un mdulo lgico sin memoria Las variables temporales de FCs se memorizan en la pila de datos locales Los datos locales se pierden tras la ejcucin de las FCs Para memorizar los datos, pueden utilizar mdulos de datos globales. A los datos locales de una FC no se le pueden asignar valores iniciles Como una FC no tiene memoria, se han de indicar siempre parmetros actuales Las FCs se pueden utilizar para: devolver un valor de funcin al mdulo invocante (p.e. Fun. Matemticas) ejecutar una funcin tecnolgica (p.e. Una combinacin binaria)
FC 10 FC 11 FC 12
SFBs:
SFCs:
Es un FB integrado en la CPU Forman parte del S.O. No se cargan como parte integrante del programa Al igual que los FBs, son mdulos con memoria Hay que crear los DBs de instancia y cargarlos en la CPU como parte intrgrante del programa. Las CPUs ofrecen SFBs: para la comunicacin va enlaces configurados para las funciones especiales Es una funcin programada integrada en la CPU Las SFC se pueden llamar desde el programa de usuario Forman parte del S.O. No se cargan como parte integrante del programa Al igual que las FCs, las SFCs son mdulos sin memoria Las CPUs ofrecen SFCs para un conjunto muy amplio de aplicaciones
CALL FB7, DB45 Start: = I 1.0 Stop: = I 1.1 Longitud := MW20 Ejecutar: = M2.1
Llamada al FB7 (a travs del mdulo de datos de instancia DB45) y asignacin de parmetros.
FBD/FUP
EN I 1.0 I 1.1 MW20
DB45
FB7 ENO
Llamada al FB7 (a travs del mdulo de datos de instancia DB45) y asignacin de parmetros.
M2.1
FB parmetro formal
LT
LT
LT
LT
LT A Ingrediente
Ingrediente B
Mdulo de salida
Q4.4
Q4.3
PII
Byte 0 Byte 1 Byte 2 . . . .
1
PIQ
Programa de usuario A( O I 2.0 O Q 4.3 ) AN I 2.7 AN I 0.5 AN I 0.3 = Q 4.4
Byte 0 Byte 1 Byte 2 . . . .
Tipo de Alarma
Alarma horaria
OBs de alarma
OB 10 a OB 17
Aplicacin
Calcula el flujo de un proceso de mezcla al final de un turno Controla un ventilador para que se pare 20 seg despus de parar un motor Muestrear el valor de una seal para el control de una planta Notificar que se ha alcanzado el valor mximo de un depsito
Alarma de retardo
OB 20 a OB 23
OB 30 a OB 38 OB 40 a OB 47
Arranque
comprobacin e inicializacin de valores condiciones de arranque
Procesamiento Cclico
procesamiento normal. OB1 Alarma del proceso Alarma cclica Alarma horaria Alarma de retardo Alarma por errores
Alarma de Proceso
gobierno por interrupciones
Alarma cclica
periodos de tiempo predeterminados importante en lazos regulacin
Tiempo de Ciclo
Definicin: El tiempo de ciclo es el tiempo que transcurre durante un ciclo de programa. Est constituido por: Tiempo de ejecucin del S.O. Tiempo de transferencia de las imgenes del proceso (PII, PIQ) Tiempo de ejecucin del programa Temporizadores Funciones integradas Carga por alarmas Carga por comunicacin (Profibus-DP, MPI) S.O. Programa de usuario
Tiempo de ciclo Interrupciones por alarmas
PII S.O.
PIQ PII
Tiempo de Respuesta
El tiempo de respuesta es el tiempo que transcurre entre el reconocimiento de una seal de entrada y el cambio de estado de la seal de la salida correspondiente. Depende de: Tiempo de ciclo Retardo en las entradas y salidas Tiempos de rotacin adicionales en la red Profibus Tiempo de reaccin Retardo de los mdulos de entrada
I 1.0 0
1 tiempo Ejecucin del programa A I 1.0 PIQ = Q 4.0
Q 4.0 0
PII S.O.
PII
Estructura de un Proyecto S7
Programas S7/M7 (no asignados a ningn HW) Programas de usuario con mdulos S7: OBs, FBs, FCs, DBs,....... Fuentes AWL para programas de usuario Estacin HW de un S7 - 400 CPU programable de un S7-400 Programas S7/M7 (asignados a HW) Programas de usuario (off-line) Fuentes AWL M7-FM programable
Mdulos de STEP7
Partes de un Mdulo
Tabla de Declaracin de Variables
Seccin de Cdigo