documentación didáctica sce para la solución de ... · mación de plc . objetivo didáctico: ......

30
Industry Sector, IA&DT Documentación de cursos SCE Página 1 de 30 Uso exclusivo para centros de formación e I+D Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200 Módulo TIA Portal 010-090 Iniciación a la programación en lenguajes de alto nivel Con S7-SCL y SIMATIC S7-1200 Documentación didáctica SCE para la solución de automatización homogénea Totally Integrated Automation (TIA) www.infoPLC.net

Upload: phungminh

Post on 29-Sep-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Industry Sector, IA&DT

Documentación de cursos SCE Página 1 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

Módulo TIA Portal 010-090

Iniciación a la programación en lenguajes de alto nivel Con S7-SCL y SIMATIC S7-1200

Documentación didáctica SCE

para la solución de automatización homogénea

Totally Integrated Automation (TIA)

Documentación didáctica SCE

para la solución de automatización homogénea

Totally Integrated Automation (TIA)

www.infoPLC.net

Industry Sector, IA&DT

Documentación de cursos SCE Página 2 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

Paquetes de Formación apropiados para esta documentación SIMATIC S7-1200 AC/DC/RELÉ 6er "TIA Portal"

Ref.: 6ES7214-1BE30-4AB3

SIMATIC S7-1200 DC/DC/DC 6er "TIA Portal"

Ref.: 6ES7214-1AE30-4AB3

SIMATIC S7-SW for Training STEP 7 BASIC V11 Upgrade (for S7-1200) 6er "TIA Portal"

Ref.: 6ES7822-0AA01-4YE0

Tenga en cuenta que estos paquetes de instructor pueden ser sustituidos por paquetes actualizados. Encontrará una relación de los paquetes SCE actualmente disponibles en la página:

www.siemens.com/sce/tp

Cursos avanzados Para los cursos avanzados regionales de Siemens SCE, póngase en contacto con el partner SCE de su región

www.siemens.com/sce/contact

Más información en torno a SCE www.siemens.com/sce

Nota sobre el uso

La documentación de cursos para la solución de automatización homogénea Totally Integrated Automation (TIA) ha sido elaborada para el programa "Siemens Automation Cooperates with Education (SCE)" exclusivamente con fines formativos para centros públicos de Investigación y Desarrollo. Siemens AG declina toda responsabilidad en lo que respecta a su contenido. No está permitido utilizar este documento más que para la iniciación a los productos o sistemas de Siemens. Es decir, está permitida su copia total o parcial y posterior entrega a los alumnos para que lo utilicen en el marco de su formación. La transmisión y reproducción de este documento y la comunicación de su contenido solo están permitidas dentro de centros de formación básica y avanzada para fines didácticos. Las excepciones requieren autorización expresa por el siguiente contacto de Siemens AG: Sr. Roland Scheuerer [email protected]. Todo incumplimiento quedará sujeto a la indemnización de los daños y perjuicios. Se reservan todos los derechos, incluidos los de traducción, especialmente para el caso de concesión de patentes o registro como modelo de utilidad. No está permitido su uso para cursillos destinados a clientes del sector Industria. No aprobamos el uso comercial de los documentos. Queremos expresar nuestro agradecimiento a la empresa Michael Dziallas Engineering y a todas las personas por el valioso apoyo prestado al elaborar este documento.

www.infoPLC.net

Industry Sector, IA&DT

Documentación de cursos SCE Página 3 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

PÁGINA:

1. Prólogo ....................................................................................................................................................... 4

2. Notas sobre el lenguaje de programación S7-SCL .................................................................................... 6

3. El entorno de desarrollo de S7-SCL .......................................................................................................... 7

4. Tarea de ejemplo: contenido del tanque .................................................................................................... 8

4.1 Descripción de la tarea ............................................................................................................................... 8

4.2 Lista de asignación/tabla de variables ....................................................................................................... 8

4.3 Estructura del programa ............................................................................................................................. 9

4.4 Interfaz del bloque cálculo_volumen_tanque [FC140] ............................................................................. 10

4.5 Nota para la solución ................................................................................................................................ 11

5. Programación del cálculo del contenido del tanque para SIMATIC S7-1200 en S7-SCL ....................... 12

5.1 Crear un proyecto y configurar el hardware ............................................................................................. 12

5.2 Crear programa ........................................................................................................................................ 15

5.3 Comprobar el programa ........................................................................................................................... 23

5.4 Ampliar el programa ................................................................................................................................. 26

www.infoPLC.net

Industry Sector, IA&DT

Documentación de cursos SCE Página 4 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

1. Prólogo

El contenido del módulo SCE_ES_010-090 está asociado a la unidad formativa "Fundamentos de la

programación de PLC" y constituye una guía de inicio rápido a la programación de SIMATIC S7-

1200 con el lenguaje de programación S7-SCL y con el TIA Portal.

Objetivo didáctico:

En este módulo, el lector conocerá las funciones básicas del entorno de desarrollo de S7-SCL. Además

se mostrarán las funciones de test para eliminar errores de programación lógicos.

Requisitos:

Para trabajar adecuadamente con este módulo se requieren los siguientes conocimientos:

Conocimientos del manejo de Windows

Fundamentos de la programación de PLC con STEP 7 Professional V11

(p. ej. módulos 010-010 a 010-040)

Conocimientos básicos sobre programación en lenguajes de alto nivel como, p. ej., Pascal.

Funciones adicionales

relacionadas con la progra-

mación de PLC Módulos 30

Fundamentos de la

programación de PLC Módulos 10, módulos 20

AS-Interface Módulos 50

Funciones de

seguridad Módulos 80

Accionamientos Módulos 100

Visualización de

procesos (HMI) Module 90

Tecnología de

sensores Módulos 110

Simulación de plantas

SIMIT Módulos 150

Otros lenguajes de

programación Módulos 40

PROFIBUS PROFINET Módulos 60 Módulos 70

www.infoPLC.net

Industry Sector, IA&DT

Documentación de cursos SCE Página 5 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

Hardware y software necesarios

1 PC Pentium 4, 1.7 GHz 1 (XP) – 2 (Vista) GB RAM, aprox. 2 GB de memoria de disco libre

Sistema operativo Windows XP Professional SP3 / Windows 7 Professional / Windows 7

Enterprise / Windows 7 Ultimate / Windows 2003 Server R2 / Windows Server 2008 Premium SP1,

Business SP1, Ultimate SP1

2 Software STEP 7 Professional V11 SP2 (Totally Integrated Automation (TIA) Portal V11)

3 Conexión Ethernet entre PC y CPU 1214C

4 PLC SIMATIC S7-1200 a partir del firmware V2.2, p. ej. CPU 1214C con módulo de señales

14DI/10DO.

Las entradas deben estar conectadas en un cuadro.

4 S7-1200 con CPU 1214C a partir del

firmware V2.2

1 PC

2 STEP 7 Professional V11 SP2 (TIA Portal)

3 Conexión Ethernet

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 6 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

2. Notas sobre el lenguaje de programación S7-SCL

S7-SCL (Structured Control Language) es un lenguaje de programación de alto nivel que se orienta a

PASCAL y posibilita una programación estructurada. El lenguaje se corresponde con el lenguaje de

programación SFC "Sequential Function Chart" definido en la norma DIN EN-61131-3 (IEC 61131-3).

Además de los elementos de lenguaje de alto nivel, S7-SCL también contiene elementos de lenguaje

característicos del PLC como, p. ej., entradas, salidas, tiempos, marcadores, llamadas de bloque, etc.

Es compatible con el concepto de bloques de STEP 7 y, por lo tanto, además de AWL, KOP y FUP

también permite programar bloques conforme a las normas. Es decir, S7-SCL completa y amplía el

software de programación STEP 7 con sus lenguajes de programación KOP, FUP y AWL.

No es necesario que usted mismo cree cada función, sino que puede recurrir a bloques prefabricados

como funciones de sistema o bloques de función de sistema disponibles en el sistema operativo del

módulo central.

Los bloques programados con S7-SCL pueden combinarse con bloques AWL, KOP y FUP. Esto

significa que un bloque programado con S7- SCL puede llamar a otro bloque programado en AWL,

KOP o FUP. Por consiguiente, los bloques S7-SCL también pueden llamarse desde programas AWL,

KOP y FUP.

Las funciones de test de S7-SCL permiten buscar errores de programación lógicos en una compilación

sin errores.

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 7 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

3. El entorno de desarrollo de S7-SCL

Existe un entorno de desarrollo para utilizar S7-SCL que está adaptado tanto a las propiedades

específicas de S7-SCL como a STEP 7. Dicho entorno de desarrollo se compone de un

editor/compilador y un depurador.

Editor/compilador

El editor de S7-SCL es un editor de textos que permite editar cualquier tipo de textos. La principal tarea

que se realiza con él consiste en crear y editar bloques para programas STEP 7. Durante la

introducción del texto se realiza una exhaustiva comprobación de la sintaxis, lo cual simplifica la

programación sin errores. Los errores de sintaxis se representan en diferentes colores.

El editor ofrece las siguientes posibilidades:

- Programar un bloque S7 en el lenguaje S7-SCL.

- Insertar cómodamente elementos de lenguaje y realizar llamadas de bloque mediante "arrastrar y

soltar".

- Comprobar la sintaxis directamente durante la programación.

- Ajustar el editor en función de las necesidades del usuario, p. ej. identificando los diferentes

elementos de lenguaje mediante colores acordes con la sintaxis.

- Comprobar el bloque ajustado por medio de la compilación.

- Mostrar todos los errores y advertencias que se producen al compilar.

- Localizar los puntos defectuosos en el bloque, opcionalmente con descripción del error y datos

acerca de la subsanación del error.

Depurador El depurador de S7-SCL ofrece la posibilidad de controlar un programa durante su ejecución en AS y,

por lo tanto, encontrar posibles errores lógicos.

Además, S7-SCL ofrece dos modos Test diferentes:

- Visualización paso a paso

- Visualización continua

La "Visualización paso a paso" depura la ejecución lógica del programa. Permite ejecutar el algoritmo

del programa instrucción por instrucción y observar en una ventana de resultados cómo se modifica el

contenido de las variables editado durante el proceso.

La "Visualización continua" permite comprobar un grupo de instrucciones dentro de un mismo bloque.

Durante el test, los valores de variables y parámetros se muestran en orden cronológico y, si es

posible, se actualizan de forma cíclica.

S7-SCL para S7-300/400

Editor/compilador Depurador

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 8 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

4. Tarea de ejemplo: contenido del tanque

4.1 Descripción de la tarea

Para nuestro primer programa programaremos el cálculo del volumen de un tanque.

El tanque tiene la forma de un cilindro vertical. El nivel de llenado del contenido se mide con un sensor

analógico. La tarea consiste en presentar el valor previamente normalizado del nivel de llenado en

metros.

El programa debe crearse en una función FC140 "cálculo_volumen_tanque". Los parámetros de

entrada son el diámetro y el nivel de llenado indicados en metros. El resultado es el contenido del

tanque indicado en litros.

4.2 Lista de asignación/tabla de variables

Como en la programación moderna no se programa con direcciones absolutas, sino con variables, aquí

deben determinarse primero las variables PLC globales.

Estas variables PLC globales son nombres descriptivos con comentarios para cada entrada y salida

que se utilice en el programa. Más adelante se puede acceder a las variables PLC globales a través de

este nombre durante la programación.

Estas variables globales se pueden utilizar en todos los bloques del programa.

Tabla de variables estándar

Nombre Tipo de datos Dirección Comentario

filling_level_tank1 REAL %MD40 en metros

diameter_tank1 REAL %MD44 en metros

volume_tank1 REAL %MD48 en litros

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 9 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

4.3 Estructura del programa

La ejecución del programa se describe en los llamados bloques. De manera estándar está disponible el

bloque de organización Main [OB1]. Este representa la interfaz del sistema operativo de la CPU y, a su

vez, este último lo abre automáticamente y lo ejecuta de forma cíclica.

A partir de este bloque de organización se pueden abrir también otros bloques, como por ejemplo la

función cálculo_volumen_tanque [FC140], para una programación estructurada.

El objetivo es dividir una tarea global en problemas parciales. Estos son más sencillos de resolver y es

más fácil comprobar su funcionalidad.

Estructura de la tarea de ejemplo "Contenido del tanque"

Bloque de organización Main [OB1] Bloque llamado cíclicamente por el sistema operativo. Aquí está la llamada de la función cálculo_volumen_ tanque [FC140]

Función: cálculo_volumen_tanque [FC140] En este ejemplo contiene el programa real. Se llama desde Main [OB1].

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 10 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

4.4 Interfaz del bloque cálculo_volumen_tanque [FC140]

Para poder escribir el programa, debe declararse la interfaz del bloque. Al declarar la interfaz, se

determinan las variables locales, conocidas solo en este bloque.

Las variables o parámetros de interfaz se dividen en dos grupos:

Parámetros de bloque que forman la interfaz del bloque para la llamada en el programa.

Tipo Denominación Función Disponible en

Parámetros de entrada Input Parámetros cuyos valores lee el bloque.

Funciones, bloques de función y algunos tipos de bloques de organización

Parámetros de salida Output/Return Parámetros cuyos valores escribe el bloque.

Funciones y bloques de función

Parámetros de entrada/salida

InOut

El bloque lee el valor de estos parámetros al efectuar la llamada y lo vuelve a escribir en ellos tras la ejecución.

Funciones y bloques de función

Datos locales que sirven para almacenar resultados intermedios.

Tipo Denominación Función Disponible en

Datos locales temporales

Temp

Variables que sirven para almacenar resultados intermedios temporales. Los datos temporales se conservan solo durante un ciclo.

Funciones, bloques de función y bloques de organización

Datos locales estáticos Static

Variables que sirven para almacenar resultados intermedios estáticos en el bloque de datos de instancia. Los datos estáticos se conservan hasta que se vuelven a escribir, también a lo largo de varios ciclos.

Bloques de función

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 11 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

En nuestro programa de ejemplo se han empleado los siguientes parámetros de interfaz para el bloque

"cálculo_volumen_tanque" [FC140].

Interfaz de la función FC140: cálculo_volumen_tanque

Tipo Nombre Tipo de datos Comentario

IN filling_level REAL en metros

IN diameter REAL en metros

OUT volume REAL en litros

La llamada de función en un bloque programado en FUP es la siguiente.

Llamada de función: representación en FUP

4.5 Nota para la solución

Para solucionar la tarea debe emplearse la fórmula para calcular el volumen de un cilindro vertical. El

resultado en litros se calcula utilizando el factor de conversión 1000.

h4

dV

2

=> 1000velfilling_le14159.34

2dvolume

iameter

FC140 cálculo_volumen_tanque

filling_level: REAL diameter: REAL

REAL :volume

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 12 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

5. Programación del cálculo del contenido del tanque para SIMATIC S7-1200 en S7-

SCL

Con los siguientes pasos se puede crear un proyecto para SIMATIC S7-1200 y programar la solución

para las tareas planteadas:

5.1 Crear un proyecto y configurar el hardware

1. La herramienta central es el "Totally Integrated Automation Portal", que se abre aquí haciendo

doble clic. ( TIA Portal V11)

2. Los programas para SIMATIC S7-1200 se administran en proyectos. Un proyecto de este tipo se

crea en la vista del portal ( Create new project (Crear proyecto) scl_startup (scl_inicio)

Create (Crear))

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 13 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

3. Ahora se proponen los "First steps (Primeros pasos)" de configuración. En primer lugar nos

interesa la opción "Configure a device (Configurar un dispositivo)". ( First steps (Primeros

pasos) Configure a device (Configurar un dispositivo))

4. A continuación, elegimos "Add new device (Agregar dispositivo)" con el Device name (Nombre

de dispositivo) "controller 001 (controlador 001)". Para ello, seleccionamos del catálogo

"CPU1214C AC/DC/Rly" con la referencia correspondiente. ( Add new device (Agregar

dispositivo) controller 001 (controlador 001) PLC SIMATIC S7-1200 CPU CPU1214

AC/DC/Rly 6ES7 214-1BE30-0XB0 V2.2 Add (Agregar))

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 14 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

5. El software cambia automáticamente a la vista del proyecto con la configuración de hardware

abierta en la vista de dispositivos. Para que el software acceda posteriormente a la CPU correcta,

debe configurarse "ETHERNET addresses (Dirección Ethernet)".

( Properties (Propiedades) General (General) ETHERNET addresses (Dirección Ethernet)

IP address (Dirección IP): 192.168.0.80 Subnet mask (Máscara de subred): 255.255.255.0)

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 15 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

5.2 Crear programa

1. Abra "Default tag table (Tabla de variables estándar)" e introduzca los "Operandos" con su

nombre y tipo de datos.

( controller 001 (controlador 001) [CPU1214 AC/DC/Rly] PLC tags (Variables PLC) Default

tag table (Tabla de variables estándar) Introducir operandos)

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 16 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

2. Para crear la función cálculo_volumen_tanque [FC140], seleccione en la navegación del proyecto

"controller 001 (controlador 001) [CPU1214 AC/DC/Rly]" y, a continuación, "Program blocks

(Bloques de programa)". A continuación, haga doble clic en "Add new block (Agregar nuevo

bloque)". Seleccione "Function (FC) (Función (FC))" e indique el nombre

"calculate_volume_tank (cálculo_volumen_tanque)". Cambie el lenguaje de programación en

"SCL". La numeración puede modificarse pasando del modo automático al manual. Introduzca el

número 140. Confirme las entradas con "OK (Aceptar)".

( controller 001 (controlador 001) [CPU1214 AC/DC/Rly] Program blocks (Bloques de

programa) Add new block (Agregar nuevo bloque) Function (FC) (Función (FC))

calculate_volume_tank (cálculo_volumen_tanque) SCL Manual (Manual) 140 OK

(Aceptar))

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 17 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

3. El bloque "cálculo_volumen_tanque [FC140]" se abre automáticamente. Introduzca ahora los

parámetros "Input (Entrada)" y "Output (Salida)" del bloque como se indica. Todas las

variables locales deben incluir un "comentario detallado" para facilitar su comprensión.

( ampliar la interfaz del bloque FC140 introducir los parámetros de interfaz)

Nota:

Resulta útil escribir las variables locales en minúsculas para que no se confundan con las variables

PLC.

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 18 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

4. Una vez se hayan declarado las variables locales, es posible empezar a crear el programa

mostrado aquí. A tal efecto, para elevar un número al cuadrado se emplea la función cuadrática

"SQR" integrada en SCL. El número que debe elevarse al cuadrado se indica entre paréntesis.

Para insertar la función, arrástrela mediante "arrastrar y soltar" hasta la ubicación en el programa.

( Instructions (Instrucciones) (¡menú derecho!) Basic instructions (Instrucciones básicas)

Math functions (Funciones matemáticas) SQR)

5. Complete el programa como se indica abajo.

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 19 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

6. El programa puede ahora guardarse y compilarse .

( Save project (Guardar proyecto) compilar )

7. Los errores de sintaxis producidos se detectan durante la compilación y se muestran en el menú

"Info (Información)/Compile (Compilación)". ( Info (Información) Compile (Compilación))

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 20 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

8. La función puede llamarse ahora en el "Main[OB1]". Antes de abrir el bloque "Main[OB1]"

haciendo doble clic, cambiaremos su lenguaje de programación a "FUP".

( Main[OB1] Switch programming language (Cambiar lenguaje de programación) FUP)

9. La función "calculate_volume_tank (cálculo_volumen_tanque) [FC140]" puede arrastrarse

mediante "arrastrar y soltar" al segmento 1 del bloque Main [OB1]. Los parámetros de interfaz de

la función "calculate_volume_tank (cálculo_volumen_tanque) [FC140]" deben conectarse con

variables PLC globales como se indica aquí. No olvide documentar los segmentos también en el

bloque Main [OB1]. ( Main[OB1] Program blocks (Bloques de programa)

calculate_volume_tank (cálculo_volumen_tanque) [FC140])

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 21 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

10. Con el botón vuelve a guardarse el proyecto.

( )

11. Para cargar los bloques de programa y la configuración de dispositivos en la CPU, marque

primero la carpeta "controller 001 (controlador 001) [CPU1214 AC/DC/Rly]" y haga clic en el

símbolo Download to device (Cargar en dispositivo). ( controller 001 (controlador 001)

[CPU1214 AC/DC/Rly] )

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 22 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

Nota:

Al realizar la carga, el proyecto vuelve a compilarse y examinarse automáticamente en busca de

errores.

12. Antes de realizar la carga, se muestra de nuevo una vista general para comprobar los pasos que

deben efectuarse. Ábrala con "Load (Cargar)". ( Load (Cargar) Finish (Finalizar))

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 23 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

5.3 Comprobar el programa

1. Haciendo clic con el ratón en el símbolo Monitoring ON/OFF (Activar/desactivar observación),

puede observar el estado de las variables de entrada y de salida en el bloque

"calculate_volume_tank (cálculo_volumen_tanque)" durante la comprobación del programa.

( )

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 24 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

2. Dado que no disponemos de un sensor analógico, y con ello tampoco del correspondiente valor de

proceso, debemos predefinir los valores "diameter_tank1" y "filling_level_tank1" con ayuda de

una tabla de observación. Cree una "New watch table (Nueva tabla de observación)" e

introduzca ambos valores. Active el "Modo de observación" para ver los valores actuales.

( controller 001 (controlador 001) Watch and force tables (Tablas de observación y forzado

permanente) New watch table (Nueva tabla de observación) diameter_tank1,

filling_level_tank1 )

3. Para predefinir los valores es necesario introducir un valor de forzado en la columna "Monitor

value (Valor de forzado)". Los valores se aplican en la CPU con el botón "Escribir valores de

forzado una sola vez e inmediatamente" . ( diameter_tank1 = 10.0 filling_level_tank1 =

7.0 )

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 25 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

4. Ahora es posible comprobar el programa en el OB1. ( )

5. En el editor de SCL pueden visualizarse los valores de las diferentes variables. Para ello, active el

"Modo de observación". ( )

Nota:

Si hace clic en el botón , se muestran los valores actuales de las variables programadas en esta

fila.

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 26 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

5.4 Ampliar el programa

El bloque "calculate_volume_tank (cálculo_volumen_tanque)" debe comprobar ahora si se han

introducido datos erróneos en los parámetros de entrada. Además se transfiere un valor adicional

"height_max" al bloque. Este indica la altura del tanque.

A continuación, el bloque debe evaluar si el nivel de llenado del tanque es menor que cero o mayor que

la altura indicada del tanque. También debe comprobarse si se ha especificado un diámetro menor que

cero.

En caso de que haya un error, es necesario suministrar un parámetro de salida booleano "er" TRUE y

el valor del parámetro"volume" debe ser -1.

Ampliación de la lista de asignación/tabla de variables:

Dirección Símbolo Tipo de datos Comentario

%A1.7 Bit de error BOOL Error, no se ha podido realizar el cálculo

Ampliación de la interfaz de la función FC140: cálculo_volumen_tanque

Tipo Símbolo Tipo de datos Comentario

IN heigth_max REAL en metros

OUT er REAL er = 1, error; volumen = -1

Llamada de función: representación en FUP

FC140 cálculo_volumen_tanque

filling_level: REAL heigth_max: REAL diameter: REAL

BOOL : er REAL:volume

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 27 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

1. Amplíe la tabla de variables del bloque como se ha indicado.

( controller 001 (controlador 001) [CPU1214 AC/DC/Rly] PLC tags (Variables PLC) Default

tag table (Tabla de variables estándar) Introducir operandos)

2. Amplíe los "parámetros de interfaz" del bloque como se ha indicado.

( controller 001 (controlador 001) [CPU1214 AC/DC/Rly] Program blocks (Bloques de

programa) calculate_volume_tank (cálculo_volumen_tanque) introducir parámetros)

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 28 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

3. Complete ahora el programa como se indica abajo y compruebe si existen errores de sintaxis

compilándolo. Guarde el programa y cárguelo en el controlador.

(Escribir programa )

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 29 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

4. Puesto que se han modificado los parámetros del bloque, es necesario actualizar la llamada en el

OB1. Abra el OB1 y desplácese hasta el lugar de la llamada del bloque. Abra el menú contextual

con el botón derecho del ratón y elija la opción "Update (Actualizar)".

( controller 001 (controlador 001) [CPU1214 AC/DC/Rly] Program blocks (Bloques de

programa) Main [OB1] botón derecho del ratón Update (Actualizar))

5. Ahora se muestran las interfaces antigua y nueva. Confirme con "OK (Aceptar)".

( OK (Aceptar))

www.infoPLC.net

Industry Sector IA&DT

Documentación de cursos SCE Página 30 de 30 Uso exclusivo para centros de formación e I+D

Módulo TIA Portal 010-090, edición 09/2012 © Siemens AG 2012. Todos los derechos reservados SCE_ES_010-090_R1209_Iniciación a la programación en lenguajes de alto nivel con S7-SCL y SIMATIC S7-1200

6. Complete los valores en el parámetro de entrada "heigth_max" y en el parámetro de salida "er"

como se indica abajo. Compile, guarde y cargue el programa en el controlador.

(Completar parámetros )

7. Compruebe las modificaciones en el "Modo de observación" del bloque

"cálculo_volumen_tanque".

( controller 001 (controlador 001) [CPU1214 AC/DC/Rly] Program blocks (Bloques de

programa) calculate_volume_tank (cálculo_volumen_tanque) )

Nota: Puede modificar el formato de visualización de los valores actuales haciendo clic con el botón

derecho del ratón en el valor y abriendo el menú contextual.

www.infoPLC.net