• No se han encontrado resultados

LIBRO METSIM

N/A
N/A
Protected

Academic year: 2021

Share "LIBRO METSIM"

Copied!
138
0
0

Texto completo

(1)

1

METSIM

EL SIMULADOR DE PROCESOS DE

METALURGIA EXTRACTIVA

RAFAEL G. ARDILA MONTERO

Universidad Industrial de Santander

(2)

2

Material escrito por Rafael G. Ardila Montero

Estudiante de Ing. Metalúrgica y ciencia de Materiales

Universidad Industrial de Santander UIS

Bucaramanga, Santander, Colombia.

Primera edición, Julio de 2009.

(3)

3

Notas del Autor

El presente material tiene como principal objetivo dar a conocer algunos conceptos introductorios a la simulación de procesos de metalurgia extractiva en el potente software de simulación conocido como METSIM.

Este material está dirigido a todos los estudiantes de Ingeniería Metalúrgica y carreras afines que encuentren interés en esta área.

Agradezco a Dios por darme la oportunidad de contribuir con este aporte a la ingeniería Metalúrgica, pretendiendo con esto despertar el gusto de muchos estudiantes por la simulación de procesos, a mis padres Rafael y esperanza porque todo lo que he conseguido en mi vida ha sido gracias a ellos, a el profesor Gustavo Neira por ser mi maestro en la rama de la metalurgia extractiva , al ingeniero Julio Sáenz por darme la oportunidad de conocer grandes procesos de la metalurgia y a quien le debo mucho por orientarme y motivarme en el estudio de la simulación , al profesor Julio Pedraza por apoyarme en el área y aquellas personas que han contribuido de una u otra forma en la escritura de este texto.

Rafael

Bucaramanga, Julio 2009

(4)

4 “Sólo puedo combatir por lo que amo,

Amar sólo lo que respeto

(5)

5 Introducción

En los últimos años el avance y el desarrollo de muchos procesos de producción se ha debido en gran parte a la implementación de herramientas computacionales basadas en el modelamiento de los distintos sistemas de producción, por ello hoy en día se hace necesario el estudio a fondo de cómo modelar y simular situaciones reales y mirar cómo se les puede obtener el máximo beneficio a estas herramientas. Es por eso que en la actualidad contamos en la ingeniería metalúrgica con software que nos proporcionan una gran ayuda para el análisis de procesos de producción de metales, ejemplo de ellos tenemos el MODSIM, aplicado para el análisis del beneficio de minerales, para la misma rama también existe el JKSimet, para la parte piro metalúrgica encontramos el PYROSIM, para la simulación de procesos Hidrometalurgicos encontramos una gran herramienta como lo es el HSC versión 6.0 que a diferencia de las versiones anteriores cuenta con un modulo de simulación.

Como podemos ver existen innumerables programas computacionales que nos ayudan en el modelamiento y simulación de procesos de metalurgia extractiva los cuales tienen como punto en común la facilidad para realizar balances de masa y energía, pero a su vez cuentan con una desventaja notable la cual evidentemente radica en que para simular una planta completa se debería contar para cada etapa del proceso con varios programas los cuales aumentarían los costos y se presentarían fluctuaciones en los resultados. Por esta razón John Bartlett crea el METSIM (Metallurgycal Simulator) el cual acopla en un solo programa los distintos módulos necesarios para modelar y simular una planta completa de extracción y producción de metales, con una versión para Windows muy amigable y fácil de implementar convirtiéndose en una herramienta poderosa con excelentes resultados.

Debido a que en muchos pensum de ingeniería metalúrgica no se dan los conceptos necesarios para lograr un modelo aceptable y por ende resultados producto de unas simulaciones confiables, este trabajo tiene también por objetivo presentar los conceptos de modelamiento, simulación y control de procesos de

(6)

6 una forma sencilla para que un estudiante en corto tiempo pueda realizar una simulación.

Este trabajo hace hincapié en simulación estática, conceptos de simulación dinámica serán cubiertos en próximas ediciones del mismo. Todos aquellos conceptos serán desarrollados y explicados en METSIM.

(7)

7 1. METSIM

1.2Instalacion

2. Explorando METSIM en Windows

3. Tipo de modelación en METSIM

3.1Calculos ejecutados por METSIM

4. Iconos Principales en METSIM

4.1 Iconos generales

4.2 Iconos de diseño del Flowsheet

4.3 iconos de simulación

4.4 Iconos de modelo

4.5 Iconos APL

5. Operaciones unitarias en METSIM

5.1 Datos Generales de todas las operaciones unitarias

5.2.1 Stream Mixer 5.2.2 Splitter Comp 5.2.3 Splitter Phase 6. Corrientes en METSIM 6.1 Descripción 6.2 Clasificación

6.3 Icono de corrientes y Paleta de Edición

6.4 Colores de las corrientes

6.5 Corrientes de Reciclo o Retornos METSIM (Iteraciones y convergencia)

(8)

8 8. Lenguaje APL

8.1 Símbolos de APL 8.2 El teclado APL

8.3 Operaciones APL Básicas 8.3.1 Aritmética-Orden de Ejecución

8.3.2 Funciones APL

8.3.3Índice de función

8.3.4 Función Rho ó Reshape

8.3.5 Función de Reducción

8.3.6 Funciones Mínimum and Floor y Máximum and Ceiling

8.3.7 Función de exponenciación y Potenciación

8.4 Mensajes de Error APL

9. Valores de Funciones APL en METSIM

9.1 Ayuda del Software adicional APLMET

10. Objetos Creados por el Usuario

10.1 Creación de Escalares 10.2 Creación de Vectores

10.3 Creación de Matrices

10.4 Creación de Funciones

10.5 Creación de líneas de texto

11. Control

11.1 Conceptos Básicos

(9)

9 11.3 Controladores Disponibles en METSIM

11.3.1 El controlador Feedback

11.3.2 El controlador Feedforward

11.3.3 Combinación del control Feedback con el Feedforward

11.4 Controladores adicionales en METSIM

11.4.1 El controlador Flowrate

11.4.2 El controlador de porcentaje 11.4.3 El Instrumento (Instrument)

12. Balance de Calor

13. Extrayendo Información de METSIM

13.1 Creación de Reportes

13.1.2 Generando Reportes

13.2 Intercambio Dinámico de Datos DDE

13.3 Configuración para la Importación de datos desde Excel

13.4 Configuración para la exportación de datos a Excel

13.5 Cómo utilizar los valores importados

13.5.1 Función APL para ingresar valores a las corrientes

13.6 pantalla de Resultados

14. Pasos para construir un modelo

15. Convergencia de un modelo

15.1Ventanas de Convergencia

(10)

10 1. METSIM

METSIM es un software de simulación útil para modelar complejas plantas de producción de metales vía extracción desde su mineral. Ejemplo de ello podemos simular plantas de beneficio de minerales, procesos metalúrgicos donde ocurren reacciones químicas y debido a la normatividad mundial de cuidado del medio ambiente, nos da la opción de simular procesos de recuperación y limpieza del entorno. Este software fue desarrollado por el Mr. John Bartlett y su licencia puede conseguirse por medio de la empresa PROWARE. METSIM trabaja con una llave USB tipo centinela la cual debe conectarse al PC para que METSIM pueda trabajar en su versión Full, si la llave no es conectada el usuario solo podrá trabajar con la versión demo la cual tiene capacidades limitadas.

Una de las novedades de este software y su diferencia con otros es el lenguaje en el cual fue desarrollado, el cual es conocido como APL (A Programming Language) lenguaje de alto nivel muy potente, el cual nos permite desarrollar bastas operaciones matemáticas con pequeñas líneas de código si lo comparamos con otros lenguajes como por ejemplo el lenguaje C o Visual Basic.

Como ya se mencionó este software es vendido por la empresa PROWARE en distintos módulos, dependiendo de las necesidades del usuario, los módulos básicos son el modulo de balances de masa y el modulo de balance de energía. La siguiente tabla nos muestra los módulos disponibles según nuestras necesidades:

Modulo Descripción

Dynamic Simulation Modulo para realizar Simulación dinámica.

Heap Leach Modulo para construir modelos que incluyan pilas de lixiviación. Operating Cost Modulo para realizar análisis de

costos de operación.

Particle size analysis Modulo para realizar análisis de tamaños de partículas.

(11)

11 Multicomponent Particle size

analysis

Modulo para realizar análisis de tamaños de partículas de sistemas multicomponentes. Solar / Weather Modulo para tener en cuenta

condiciones climáticas.

Gravity Separation Modulo para trabajar con modelos que incluyan separación por gravedad.

Una de las cosas a tener en cuenta es que para trabajar con METSIM hay que tener previos conocimientos de los distintos procesos de metalurgia extractiva.

En este trabajo solo se cubren las explicaciones pertenecientes a los módulos de balance de masa y energía, esperamos en posteriores publicaciones incluir los demás módulos.

METSIM presenta como punto fuerte una muy completa base de datos termodinámicos para los más comunes compuestos que se tratan en plantas metalúrgicas, además de ofrecernos la posibilidad de crear interfaces con otros programas como por ejemplo con Microsoft Excel. Algo que hay que tener en cuenta es que METSIM no predice reacciones químicas, no nos da información acerca de la cinética de los procesos ni tampoco de equilibrios termodinámicos establecidos.

Entonces como podemos ver básicamente este software es muy útil en la consecución de balances de masa y energía de sistemas bastante complejos, a lo largo de este trabajo veremos cómo hacerlos.

1.2 Instalación

Para Windows sencillamente debemos ejecutar el programa desde el archivo ejecutable del CD (.exe) e instalarlo en una carpeta en el disco C, si no lo instalamos ahí el programa no correrá. El mismo setup del programa nos dará las

(12)

12 indicaciones pausadas para ingresar el número de la licencia y otros datos requerido para la instalación.

La resolución de pantalla debe ser mínimo de 1024x768 pixeles para poder ser visto en pantalla.

2. Explorando METSIM en Windows

Para abrir el METSIM una que ha sido instalado sencillamente debemos hacer click en el icono que se muestra a continuacion:

Donde nos aparecerá el screen principal de METSIM, el cual observamos a continuacion (ver figura):

(13)

13 Como se puede apreciar en la figura 1 el screen principal de METSIM cuenta con una serie de Menús desplegables, unos iconos principales y una tabla de módulos de operaciones unitarias.

3. Tipo de modelación en METSIM

Los modelos que construimos en METSIM, se puede decir que son modelos de adquisición de datos, donde vamos a tener una serie de entradas y por ende unas salidas, a estas entradas y salidas se les conoce en el lenguaje de la ingeniería de procesos como “corrientes” y estas van a estar relacionadas mediante una unidad de operación u operación unitaria que puede o no ser reccionante la cual simula el equipo donde se lleva a cabo determinado proceso.

Al acoplamiento de distintas corrientes con distintas operaciones unitarias se le conoce como Flowsheet o diagrama de flujo del proceso. La siguiente grafica nos recrea de una mejor forma la estructura de un modelo realizado en METSIM:

Como podemos observar, la figura de arriba es un Flowsheet, en el cual podemos distinguir las entradas y las salidas, hay que tener presente que en la caso de la salida 1 para la unidad 1, se convierte en una entrada (2) para la unidad 2, también podemos apreciar que de la unidad 2 sale una corriente que es reingresada a la unidad 1, a este tipo de corrientes se les conoce como corrientes de reciclo.

Como se mencionó anteriormente las unidades de operación pueden o no ser reaccionantes, esto indica que pueden o no llevarse reacciones químicas dentro

Entrada 1 Entrada 2

Salida 1

Salida 2

Salida 3

Salida 4-Entrada de reciclo 3

(14)

14 de ellas, es en este punto donde entra la habilidad del modelador para distinguir cuando se lleva a cabo una etapa física o una química.

3.1 Cálculos ejecutados por METSIM

METSIM es un software que trabaja mediante una estrategia de cálculo basada en iteraciones secuenciales, las cuales son complementadas por el algoritmo de aceleración de convergencia de Wegstein para garantizar tiempos de convergencia relativamente pequeños, como es sabido cuando se trabaja mediante esta estrategia se debe establecer un margen de tolerancia la cual nos marca la exactitud de nuestros resultados. Este concepto de convergencia de Wegstein de iteraciones y tolerancia se explicara en detalle en la sección de “corrientes de reciclo”.

4. Iconos principales en METSIM

Cuando abrimos el Screen principal de METSIM nos encontramos con una serie de iconos (ver figura) los cuales cumplen con las funciones que se enlistan a

continuación:

Menús desplegables

Iconos Principales

(15)

15 4.1 Iconos Generales

New Model: nos permite salir del modelo actual para la construcción de un nuevo modelo, antes de ello el sistema nos preguntara si realmente queremos abandonar el trabajo actual.

Load Model: nos permite cargar un modelo existente que se encuentre contenido en alguna de las carpetas de nuestro PC.

Save Model: Permite Guardar el modelo, los archivos son guardados en formato.sfw.

Model Parameters: también es conocido como IPAR Menú; desde este icono podemos ingresarle al modelo datos específicos como las unidades con las que necesitamos trabajar, Titulo del modelo, descripción del modelo y la activación de distintos módulos como lo es por ejemplo la activación del modulo de balance de calor o de separación por gravedad, pero veamos un poco más en detalle el contenido del icono.

El icono en su interior contiene 6 pestañas las cuales son:

: Desde esta pestaña podemos ingresarle al modelo datos básicos como por ejemplo el titulo del modelo, propietario, y le nombre de la persona que realizo el trabajo.

: Desde esta pestaña podemos añadirle al modelo las condiciones climáticas y geográficas del sitio donde se está recreando alguna planta.

: Desde esta pestaña tenemos la opción de activar diversos módulos, dependiendo de la necesidad de nuestra simulación, por ejemplo si no es necesario realizar balance de calor para determinado modelo, pues sencillamente no lo debemos activar o lo podemos desactivar si esta activo. Hay que tener en cuenta que la funcionalidad de estos módulos depende de si en la compra del paquete de METSIM fue incluido.

(16)

16 : Tenemos la opción de cambiar las unidades con las cuales vamos a trabajar, METSIM trae una serie de unidades estándares, ejemplo de ello veamos las unidades con las que cuenta METSIM.

Unidades de Masa Estándares Unidades de Tiempo Estándares

: Ajuste de parámetros para simulación dinámica.

: En esta pestaña tenemos la opción de Editar los parámetros de convergencia para lograr resultados lo más cercano a la realidad posibles (en el caso de ser riguroso) o simplemente para tener excelentes aproximaciones.

Error Checking: Icono que permite observar si tenemos algún error en el modelo.

Print Flowsheet: Icono que nos da la opción de imprimir el diagrama de flujo del modelo.

4.2 Iconos de diseño del Flowsheet

Enlarge Draw Size: Nos da la opción de Cambiar el tamaño del Flowsheet en este caso podemos convertirlo en un tamaño menor.

Reducing Drawing Size: a diferencia del anterior con este icono podemos Ampliar el diagrama de flujo.

(17)

17 Center Flowsheet: Podemos centrar el Flowsheet para hacerlo visiblemente más agradable.

Box ítems to move: Podemos mover las cajas de ítems sobre las corrientes.

Zoom in: permite aumentar el tamaño del Flowsheet para observar mejor algunos detalles.

Zoom Out: permite disminuir el tamaño del Flowsheet.

Redraw Flowsheet: Rediseñar el Flowsheet.

Locate Stream: nos permite la ubicación de una corriente en especial, solo basta con escribir el número de la corriente y presionar ok, inmediatamente METSIM resaltará la corriente en color fucsia, si dicha corriente se conecta a otras a secciones (mirar secciones) METSIM nos mostrará una lista de las secciones donde se encuentra la corriente, donde debemos seleccionar la sección donde necesitamos ubicar la corriente.

Renumber unit operations: permite re-enumerar las operaciones unitarias.

Renumber streams: permite re-enumerar las corrientes.

Renumber controls: permite re-enumerar los controladores.

Delete Object: permite borrar cualquier elemento del Flowsheet.

Reverse unit operation: podemos cambiar el sentido de una operación unitaria. Es decir si tenemos la siguiente operación unitaria, podemos cambiar de orientación y dejarla como se observa a continuación:

(18)

18

Inicialmente Luego de aplicar el comando

Change object size: podemos cambiar el tamaño de cualquier objeto dentro del Flowsheet, haciendo click izquierdo aumentamos de tamaño el objeto y haciendo click derecho disminuimos de tamaño.

Move Object: permite mover cualquier objeto perteneciente al Flowsheet.

Move text: nos permite mover los labels o texto estático que aparecen en el Flowsheet.

Turn objects (on/off): permite activar o desactivar objetos del diagrama de Flowsheet.

Copy object data: nos permite copiar los datos de un objeto dentro del diagrama de flujo, al presionar este icono nos aparecerán las instrucciones de cómo hacerlo.

Assing values to streams: nos permite ingresar a la paleta de edición de las corrientes para ingresar datos.

Edit object data: este comando es uno de los más importantes y nos permite ingresar a cualquier objeto para cambiar y editar los datos. El autor de este tutorial ha dado el nombre de “chismoso” a este botón debido a las características que lo componen.

Select section: este comando nos permite seleccionar una sección en especial cuando trabajamos con un modelo que tiene distintas secciones.

(19)

19 Follow conecting arrows: Comando muy útil y nos sirve para interconectar corrientes entre secciones.

Previous-Next Sections: permite desplazarnos entre las secciones del modelo.

Weather data: permite el ingreso de datos meteorológicos.

Future site of mine data: icono para planificación de minas.

Ore tonnes and grade: este comando es útil para el ingreso de la mineralogía de un mineral.

Heap leach contours: permite la edición de los contornos de las pilas de lixiviación.

Tailing contours: permite la edición de los contornos de las colas.

4.3 iconos de simulación

Calcule one unit operation: permite correr o ejecutar la simulación de una sola operación unitaria.

Calculate current section: permite correr la simulación por secciones.

Stop execution: Permite detener la simulación en cualquier instante.

Calculate unit operation ranges: Permite correr la simulación por rangos.

Calculate all sections: Permite correr todas las secciones y operaciones unitarias.

(20)

20 4.4 Iconos de modelo

Elements: nos permite ver los números de los elementos que hacen parte de nuestro modelo.

Components: nos permite ver los números de los componentes que hacen parte de nuestro modelo.

Phases: nos permite ver los números de las fases que están presentes en nuestro modelo.

Streams: nos permite ver el número de las corrientes con su respectiva descripción.

Unit operations: nos permite ver el número, la descripción y la sección de las distintas operaciones unitarias presentes en nuestro modelo.

Instrumentation controls: nos permite ver el número y descripción de los controladores que hemos implementado en nuestro modelo.

Add text blocks: permite la inserción de cuadros de texto al Flowsheet.

Check Elemental balance: genera un reporte con el balance elemental.

Display value functions for St: nos muestra una lista con las funciones APL, para las corrientes.

Display sections spreadsheets: Nos muestra un reporte con las características de las corrientes por sección.

(21)

21 4.5 Iconos APL

APL Keyboard: nos mostrara la calculadora APL.

Math functions: nos muestra una lista con las funciones APL matemáticas.

Value Functions: nos muestra una lista con todos los significados de las funciones APL.

User created Objects: nos permite la creación de variables como por ejemplo, escalares, vectores, matrices y funciones.

Dinamic data Exchange: nos muestra las variables para DDE.

Lock model for security: nos da la opción de cuidar el modelo mediante la implementación de una contraseña.

METSIM Help: nos abre la ayuda de METSIM.

Reset: Reset del modelo.

5. Operaciones unitarias en METSIM

METSIM cuenta con un módulo de operaciones unitarias como se observa en la siguiente figura:

Donde vamos a tener una sección de operaciones unitarias generales , y secciones para los distintos ramos de la metalurgia extractiva como lo son:

(22)

22 Mina

Tratamiento primario de Mineral Conminución o reducción de tamaños Beneficio de Minerales Hidrometalurgia Pirometalurgia Tratamiento de Gases Varias combinaciones Modulo de control de procesos

En este trabajo no entraremos en detalle en la descripción de cada operación unitaria pero se hará un hará una explicación de las operaciones unitarias más utilizadas y de los detalles comunes de todas las operaciones unitarias.

Vale la pena resaltar que no se describen todos los equipos ya que eso depende del ingeniero que vaya a desarrollar un modelo específico, ya que este debe conocer de antemano muy bien los equipos de la planta.

5.1 Datos Generales de todas las operaciones unitarias

Como mencionamos anteriormente, todas las operaciones unitarias tienen una serie de pestañas en común, las cuales vamos a describir a continuacion:

La primera pestaña en aparecer es la que hace referencia al equipo como tal, en esta pestaña debemos agregar el nombre de la operación unitaria y establecer numéricamente (números establecidos por defecto) las corrientes de entrada y las corrientes de salida.

(23)

23 En esta pestaña que aparece en todas las operaciones unitarias debemos ingresar las correspondientes reaccione químicas (en el caso de haberlas) que se llevan a cabo dentro de la operación. Más adelante se mostrara en detalle cómo hacerlo.

Esta pestaña hace referencia al equilibrio de Fases, y encuentra su utilidad en la efectuación de transferencia de masa entre dos fases y/o componentes adicionalmente a las reacciones químicas. Este cálculo es efectuado luego de que se lleve a cabo la reacción química. Dichas ecuaciones de equilibrio pueden ser ingresadas mediante la implementación de:

Expresión APL para llamar la subrutina de cálculo

Donde:

EQT: Temperatura en °C EQP: Presión en Kpa

EQV: Variables

Hay que tener presente que esta es una opción que está en desarrollo, por lo tanto no es recomendable trabajar con ella, o si es necesario puede comunicarse con PROWARE, para recibir asistencia al respecto.

(24)

24 En esta pestaña debemos especificar tanto las Kilocalorías ingresadas al sistema y las Kilocalorías perdidas, la transferencia de calor puede ser específica da mediante una expresión APL, como se observa en la siguiente figura:

Hay que tener presente que QF es la cantidad de calor ingresada o perdida, que se ingresa como una fracción del calor total de entrada, QA es el calor ingresado como una cantidad fija en Kcal/Hora.

QX: Es el espacio disponible para ingresar la expresión APL, que define la transferencia de calor.

Algo muy importante a tener a consideración es que el calor ingresado se debe especificar como positivo y el perdido como negativo.

Esta opción nos proporciona estructuras de decisión para algunos controles del modelo, lo cual es muy útil para el cálculo de algunos parámetros de control. Estos controladores son útiles para la variación y control de caudales, el ingreso de datos y para la configuración del Flowsheet.

Esta opción nos permite ejecutar alguna sentencia o alguna función, también es útil para el ingreso de datos o salida de los mismos, esto se hace mediante la implementación de expresiones APL y de objetos creados por el usuario. Estas declaraciones pueden ser ejecutadas antes o después de la ejecución de la operación unitaria.

(25)

25 Es útil para el ingreso del número de trabajadores, descripción del trabajo y el tiempo de trabajo.

Es útil para la edición de algunos materiales empleados en la simulación.

Es útil para la edición de los reactivos empleados en la simulación.

Es útil para escribir notas importantes características de la operación unitaria.

Forma de ejecución de las operaciones unitarias y descripción de operaciones unitarias comunes en METSIM útiles para cualquier modelo

La filosofía básica de cálculo que emplea METSIM consiste en adaptar corrientes de alimentación a un modulo de operación unitaria y tener un mecanismo para manipular las entradas y salidas de acuerdo al modulo establecido.

La mayoría de los módulos de las operaciones unitarias “mezclan” las corrientes de alimentación, luego el mecanismo es aplicado en base a esta mezcla o combinación de las corrientes. Este mecanismo puede ser precedido por reacciones químicas o un cambio de fase y si el resultado requerido no es alcanzado entonces el mecanismo o la reacción química puede cambiarse o pueden aplicarse estrategias de control Feedback o Feedforward. Esto se hace posible debido a la estructura del programa en el cual se pueden especificar características químicas de las distintas especies que entran en el modelo y a las complejas y completas estrategias de control.

La secuencia de cálculo que emplea METSIM se realiza de acuerdo al siguiente procedimiento:

(26)

26 Se adicionan todas las corrientes de entrada y los caudales de los componentes.

Se calculan todas las reacciones.

Calculo de las Rutinas/Mecanismos de las operaciones unitarias.

Se separan las corrientes de salida de acuerdo a los parámetros de la operación unitaria.

Se guardan los datos que fueron ingresados y calculados en la operación unitaria.

Las operaciones unitarias básicas pueden distinguirse de acuerdo a la siguiente clasificación:

MIX: Esta unidad mezcla todas las corrientes de entrada simulando tanques, molinos, etc.

SPC: esta unidad permite que los componentes se separen como sucede por ejemplo en celdas de flotación, concentradores etc.

SPP: Esta unidad permite que se separen componentes como por ejemplo en un proceso de extracción por solventes

SLS: Esta unidad simula separadores solido líquido, filtros etc. SPS: permite separación de corrientes.

(27)

27 5.2.1 Stream Mixer

El modulo “Stream Mixer” es utilizado para combinar o mezclar varias corrientes de entrada en una sola corriente de salida. Los componentes de todas las corrientes de entrada son adheridos juntos y toda la combinación química se lleva a cabo antes de que se calcule la corriente de salida. Esta unidad también es capaz de realizar balances de energía (Heat balance). Algo que cabe resaltar es que no se necesitan ingresarle datos a la operación unitaria para que ella realice la operación de combinar o mezclar las corrientes, y si se requiere ingresar reacciones

químicas estas se deben ingresar a través del Reaction input data Screen.

5.2.2 Splitter Comp

El modulo “component Split” es utilizado para separar corrientes por componente. La totalidad de todas las corrientes de entrada son sumadas y todas las reacciones y cálculos de equilibrio son ejecutados antes de que se lleve a cabo la separación de los componentes en las corrientes de salida. Esta unidad es capaz

(28)

28 de realizar balances de energía. Un análisis de tamaño de partículas de componentes sólidos se asume igual para todas las corrientes de salida.

Los Parameters input data screen (parámetros de entrada del SPC) son usados para ingresar los concentrados sólidos por ejemplo para ingresarle a la corriente i su fracción en peso o en gramos por litro, como se observa en la grafica:

Las reacciones químicas se ingresan como en el ejemplo anterior. Hay una sección nombrada como

Esta sección es usada para múltiples componentes y recuperación de elementos en corrientes especificas de salida.

5.2.3 Splitter Phase

El modulo “Phase Splitter” es usado para separar una o más corrientes de entrada en dos o más corrientes de salida con distintas fases.

Los requerimientos para las corrientes de salida son especificados en Parameters input data screen donde aparecerá lo siguiente:

(29)

29 Básicamente esta tabla hace referencia a las distintas fases posibles en un modelo, donde SI hace referencia a sólidos inorgánicos SO sólidos orgánicos LI líquidos inorgánicos LO líquidos orgánicos M1 metal fundido M2 matte M3 escoria GC gases.

FF es un vector de 40 elementos. Donde OS1 es calculado por diferencia.

Los factores de separación o Split factors son la distribución de cada fase en cada una de las corrientes de salida, cada corriente puede contener una o más fases. En las casillas se debe especificar el porcentaje (/100) de la fase en la corriente. OS i: esto hace referencia a la corriente de salida de las 6 posibles que dispone el phase Splitter.

Ejemplo:

OS2: segunda corriente de salida del phase Splitter (en esta casilla en blanco se debe especificar el porcentaje (/100) de las fases en esa corriente.

(30)

30 Esta es la forma de establecer el porcentaje de separación entre las fases

relativas.

6. Corrientes en METSIM

6.1 Descripción

Como se mencionó anteriormente las corrientes son aquellas líneas que interconectan las distintas operación e unitarias, esto visto desde el punto de vista del Flowsheet, desde el punto de vista del modelo como tal , las corrientes representan flujos característicos los cuales contienen una o más fases con sus distintos elementos que conforman los compuestos de nuestro sistema .

Ellas son las que reflejan directamente los resultados calculados por METSIM, además de servir como fuente de ingreso de datos.

6.2 Clasificación

La clasificación de las corrientes es bastante sencilla, existen 3 tipos de corrientes las cuales se definen a continuacion:

Corrientes de Entrada o Inputs: son aquellas corrientes que ingresan a una operación unitaria.

Corrientes de salida u Outputs: son aquellas que abandonan la operación unitaria.

Corrientes de reciclo o Recycle Stream: son aquellas que abandonan una operación unitaria e ingresan a una operación unitaria anterior.

(31)

31 El icono para adicionar las corrientes los podemos encontrar en el modulo GEN, y su imagen es la siguiente:

Stream Icon

La paleta de edición de las corrientes es aquel pantallazo útil para el ingreso o visualización de datos, en pocas palabras podemos decir que es el “alma” de las corrientes. A continuacion se muestra la figura con sus respectivas descripciones:

En esta sección de la paleta de edición debemos ingresar los datos correspondientes a la descripción de la corriente, el número de la caja de texto (Ver apéndice A) y podemos observar que nos aparecen unos “botones” referentes a las fases presentes en la corriente, anteriormente se explica la nomenclatura empleada en METSIM para las fases.

(32)

32 6.4 Colores de las corrientes

Cuando añadimos corrientes al Flowsheet nos damos cuenta que adquieren un color rojo intenso, en el momento de especificar fases, las corrientes cambian de color, la siguiente tabla nos muestra el tipo de color y el tipo de fase:

Fase Color Acuosa Azul Sólidos Gris Molten Rojo Gaseosa Verde Slag Blanca

Caudales de las fases

Temperatura y presión de la corriente

Conversión de Caudal total de la corriente Composición de las

fases por componentes

Composición de las fases por elemento

(33)

33 Cuando hay diferentes fases en una corriente esta adoptara el color de la fase que se encuentre en mayor proporción.

6.5 Corrientes de Reciclo o Retornos METSIM (Iteraciones y convergencia)

Las corrientes de reciclo o retornos no son otra cosa que aquellas corrientes que llevan material de una operación unitaria establecida a una operación unitaria anterior, como se observa en la siguiente figura:

Aunque el tema de corrientes de reciclo o retornos hace parte de los cursos de química vistos en pregrado para la ingeniería metalúrgica, en este articulo se hará un breve repaso de que consisten y cuál es su significado exacto al momento de plantear estas en un Flowsheet diseñado en METSIM.

El hecho de que la secuencia mediante las cuales las operaciones unitarias son calculadas por METSIM, significa que es posible elegir arbitrariamente si una corriente particular es o no una corriente de reciclo o retorno. Una de las más notables habilidades que tiene METSIM es la facilidad con la cual se tratan las corrientes de reciclo, ya que no hay ninguna restricción hacia el usuario de minimizar el uso de estas corrientes o de ubicarlas en el diagrama de flujo de una

Corriente de Reciclo

Corrientes de Entrada

(34)

34 forma “inteligente” por decirlo de alguna forma, sin embargo el cálculo de estas corrientes son la causa más común de los problemas de convergencia.

Para ilustrar un poco la convergencia en METSIM hagamos la analogía con aquellos casos donde es necesario calcular las raíces de un polinomio mediante el método numérico conocido como Newton Rhapson.

Como bien se sabe para empezar a hallar las raíces es necesaria la suposición de un valor inicial y de ahí el método empieza a actuar mediante la implementación de la tangente en el punto escogido inicialmente, esto representado por la derivada de la función reemplazada en el punto, como se observa en la siguiente grafica:

Método de Newton Rhapson

Luego del establecimiento del valor Xn+1 se repite el procedimiento de la tangente y se observa que mediante la tangente de la función en el punto f (Xn+1) nos acercamos a la raíz del polinomio.

(35)

35 A la acción de generar valores y calcular la aproximación de la raíz se conoce con el nombre de “iteraciones” y a la efectividad del método de encontrar una raíz muy cercana con muy bajos porcentajes de error se le conoce como convergencia. Este método puede no tener convergencia como lo es por ejemplo de la función y = Exp (x), para el cual este método no es efectivo.

Luego de haber repasado este método, podemos decir que METSIM realiza sus cálculos a través de iteraciones por lo tanto también tenemos grados de convergencia, los cuales se ven seriamente afectados con la implementación de corrientes de reciclo.

Las corrientes de reciclo pueden dividirse en aquellas que reciclan material, para que dicho juegue un papel crucial en la operación unitaria en la cual es devuelta, y aquellas que reciclan material para que este entre al proceso de nuevo. Un ejemplo de esta ultima seria el reciclaje de material particulado, finos o polvos desde los precipitadores electrostáticos que limpian la chimenea de algún horno, dichas corrientes frecuentemente no causan problemas por las siguientes razones:

La proporción de material que está siendo reciclado es muy pequeño comparado con las entradas de flujo del proceso.

Su composición no es distinta al material de alimentación que entra a la operación unitaria.

Su presencia no es necesaria para el normal funcionamiento de la operación unitaria donde la corriente de reciclo es devuelta.

Los flujos de los componentes de estas corrientes son rápidamente devueltos por METSIM usando un método iterativo. METSIM utiliza el método de aceleradores de convergencia de Wegstein el cual permite obtener dichos valores de una forma más rápida.

Pero ilustremos de una mejor forma dicho acelerador de convergencia:

El procedimiento de aceleración de convergencia de wegstein es el algoritmo más usado para acelerar el método de aproximaciones sucesivas. Incluso es de gran importancia su implementación en problemas de sistemas de ecuaciones no

(36)

36 lineales. La base de este método es la propuesta clásica de de iteración de aproximaciones sucesivas a un valor mejorado, según la siguiente ecuación:

Donde:

Xi+1= Valor Mejorado a calcular con la formula de Wegstein.

Xi= Valor anterior

Xi+1= Valor encontrado por el método tradicional (Ej: Newton Rhapson)

q= Aceleración de convergencia

Donde al valor encontrado por cualquiera de los métodos de iteración tradicionales, se aplica esta fórmula y este hace convergir al valor deseado de una forma mucho más rápida.

De modo que la expresión anterior queda como:

Se corrige Xi+2 y continúa. De la primera ecuación se ve que es necesario

generar dos valores según el esquema tradicional, y conociendo q comenzar con esta propuesta. Para analizar el cálculo de q puede ser útil la siguiente figura, donde se aprecia la aproximación propuesta:

(37)

37 Teniendo idea que: Xi+1 = (aprox) X* (es decir la intersección de las

graficas)

Es la definición de q, según:

Ósea:

Y de igual modo:

(38)

38 Ahora como X* no se conoce se debe aproximar. Esto es:

Donde los indicados cocientes estas determinados en la figura inmediatamente anterior.

Luego:

De donde se obtiene la expresión del cálculo de q:

Ya con esta breve explicación, vemos cual es el método de aceleración de convergencia que emplea METSIM, para realizar los cálculos.

Ahora es posible aunque no es necesario ingresar la composición estimada y el caudal de la corriente de reciclo. Solo cuando se pone en marcha un proceso real con tal corriente, el flujo de la misma puede ser inicialmente cero.

Cuando desarrollamos Flowsheets para procesos Hidrometalurgicos frecuentemente se requiere el retorno de un componente el cual es generado en la parte final del Flowsheet para devolverlo a la primera operación unitaria del mismo, frecuentemente hay varias de estas corrientes y no importa como el orden de cálculo de las operaciones unitarias es modificado, inevitablemente varias de estas corrientes se convierten en corrientes de reciclo. Para estos

(39)

39 Flowsheets es posible que METSIM, sea incapaz de determinar los flujos en estado estacionario para las corrientes de reciclo sin ayuda considerable. Una cosa muy importante de esto es que cuanto más cerca este la operación unitaria de donde se genera la corriente de reciclo más probable es que METSIM converja a el resultado con el menor porcentaje de error. Pero si desafortunadamente no obtenemos el resultado esperado lo mejor es romper el ciclo de recirculación y calcular la cantidad del componente que debe eventualmente ser recirculado solo corriendo la simulación de la sección donde se genera la cantidad del componente a ser recirculado. La sección donde la corriente de reciclo es generada puede de esta forma ser calculada. Por ello aunque METSIM presente fortalezas ante estos problemas lo mejor es establecer un diseño en el cual se empleen la menor cantidad de corrientes de reciclo.

Los siguientes Tips deben seguirse cada vez que se utilicen corrientes de reciclo, incluso si la convergencia eventualmente es alcanzada, estos consejos pueden ayudar a acelerar los cálculos de un Flowsheet:

Cuando se emplean varias corrientes de reciclo a la misma operación unitaria estas deben ser mezcladas en una operación MIX (como por ejemplo en un Stream Mixer), la cual debe ser puesta después de las operaciones unitarias de donde emergen las corrientes de reciclo, ya que con esto garantizamos que solo una corriente de reciclo va a ingresar a la operación unitaria de interés.

Cuando modelamos un Flowsheet con una sustancial carga circulante de una utilidad, tal como un circuito de lavado de carbones por medios densos, incluya al modelo uno operación unitaria SUB con corrientes ajustadas y corrientes de desangre.

Si se tiene un diagrama de flujo con muchas ramas, las ramas mas cortas deben tratarse primero, antes de que el flujo principal continúe.

La operación unitaria RCY puede usarse, donde existen muchas corrientes de reciclo relativamente de pequeño trayecto.

(40)

40 Nunca ponga controladores Feedback sobre operaciones unitarias que contengan

corrientes de reciclo como corrientes de salida, John Bartlett está trabajando en un algoritmo para distinguir los casos en los cuales las corrientes de reciclo, puedan convergir primero, y luego aplicar el controlador.

(41)

41 7. Reacciones en METSIM

Esta sección describe las distintas formas en las cuales las reacciones químicas pueden ser descritas en METSIM. Las reacciones químicas son el corazón del modelo y la forma en la que ellas son descritas puede radicar el éxito o el fracaso de la simulación, ya que ellas nos predicen las cantidades de los componentes que se forman y el consumo de las materias primas alimentadas.

Estas deben ser especificadas en cada una de las operaciones unitarias en las que ocurran, y si una reacción se repite en distintas operaciones unitarias debe especificarse en cada una de ellas individualmente.

Cada operación unitaria cuenta con un “Screen” o pantallazo en las cuales se lleva a cabo la inserción de las reacciones químicas, ejemplo de este pantallazo se da a continuación:

(42)

42 Explicación detallada de esta ventana:

Menú Principal

+ React: Agregar un reactivo .

- React: Quitar un reactivo.

+ Prod: Agregar Producto.

+ Prod: Quitar Producto.

(43)

43 Balance: Balancear la Reacción.

User: Normalmente METSIM, puede balancear las reacciones, si no puede frecuentemente es debido a que dos reacciones están combinadas en una reacción. Esta opción le permite al usuario ingresar una reacción que no esté balanceada para lograr el balance.

Al activarlo aparecerá la siguiente tabla:

RX: Reacción química.

En la columna 1 se ingresan las moles a reaccionar. Moles negativas para reactivos y moles positiva para productos.

En la columna 2 se debe ingresar el número del componente.

(44)

44 Pantalla de edición de Reacciones

En esta pantalla aparecen las reacciones que estamos editando o creando.

Especies en sus estados

En esta zona aparecen tanto los elementos como componentes en sus estados y fases, y están disponibles para agregarlos a la pantalla.

Parámetros de Control de Reacciones

En esta sección se asignan los controles para el modelo, más adelante se explicara detalladamente el funcionamiento de esta parte.

(45)

45 Parámetros calculados por METSIM

El equilibrio de las reacciones puede basarse en las siguientes opciones de cálculo:

Reaction Extent, Enter PC.

Reaction Extent, Enter Expression

Residual Weight Fraction, Enter PC

Residual Weight Fraction, Enter Expression Mass Conversion - Enter PC

Mass Conversion- Enter Expression

Equilibrium, Enter KE

Equilibrium, KE, Enter Expression

Equilibrium, Enter TM

Equilibrium, TM, Enter Expression

(46)

46 Unit Op Group 11 Unit Op Group 12 Unit Op Group 13 Unit Op Group 14 Unit Op Group 15 Unit Op Group 16 Unit Op Group 17 Unit Op Group 18 Unit Op Group 19 Unit Op Group 20 Unit Op Group 21 Unit Op Group 22 Unit Op Group 23 Unit Op Group 24

(47)

47 Reaction Extent, Enter PC.

La fracción del primer componente en la reacción es usada para controlar el rendimiento de la misma. PC hace referencia la fracción del primer componente el cual va reaccionar siempre y cuando estén las cantidades adecuadas de los otros reactivos en la ecuación.

La reacción procederá hasta que el primer componente ha reaccionado mediante la fracción que se ha especificado (PC inicial que el usuario describe) de tal forma que si no existe la suficiente cantidad de uno de los otros componentes, la reacción procederá sólo en la medida en que se le permita.

Por ejemplo, si es necesario incorporar una eficiencia de oxígeno (es decir, una cierta fracción de oxígeno que no reaccionará) en un horno se puede implementar la siguiente técnica:

Para ilustrar el ejemplo, desde la base de datos se deben crear dos componentes que contengan oxigeno. La primera reacción en el horno sería la transferencia de una porción de oxigeno no reaccionante a un segundo componente inerte. Posteriormente se ingresaran reacciones de combustión para consumir el oxigeno reactivo remanente presente en el primer componente.

Al final se usara una reacción para reconvertir todo el oxigeno inerte a oxigeno reactivo. De esta manera, el componente inerte de oxígeno se utiliza como producto intermedio, el cual es usado internamente, pero no aparece en el balance porque este es reconvertido dentro del horno.

Esta técnica usa la característica de METSIM que ejecuta las reacciones químicas estrictamente en el orden en el que son descritas. Y los componentes generados después, incluso dentro de la misma operación unitaria, no pueden ser consumidos en las reacciones anteriores.

(48)

48 La primera reacción hace referencia a la conversión de oxigeno reactivo a oxigeno inerte, para ello vamos a limitar la reacción con un rendimiento del 10% es decir PC= 0.1

rO2 = i O2

(Conversión de Oxigeno reactivo en oxigeno inerte)

El segundo rendimiento de la reacción se limita al 90% es decir PC= 0.9.

2mFeS + 3rO2 = 2oFeO + 2gSO2

(Consumo del oxigeno reactivo remanente en la reacción de tostación) A la tercera reacción se le asigna un rendimiento del 100% es decir PC=1.0

RO2 + mCu2S = m Cu + gSO2

(Consumo de Oxigeno en la segunda reacción de tostación)

La reacción final también tiene un rendimiento del 100% limitada por el rO2

disponible, por lo tanto PC=1.0.

DO2 = rO2

(Conversión de Oxigeno inerte a Reactivo)

De aquí se observa que el 10% del oxigeno que entra al horno pasara sin reaccionar a través del horno.

Para ilustrar otro ejemplo imaginemos un horno eléctrico de refinación, para simular el efecto del soplo de nitrógeno para agitar (stirr) y favorecer la reacción de desulfuración a través de un tapón poroso en el fondo de un baño metálico fundido.

(49)

49 Aunque el nitrógeno no tiene efecto químico sobre el sulfuro de cobre (Cu2S) este

tiene su efecto favoreciendo la reacción de desulfuración .Del mismo modo, la agitación promueve una reacción entre el oxígeno disuelto en el cobre y el azufre.

xN2 + Cu2S + O2 = xN2 + Cu + SO2

yN2 + Cu2S + 2Cu2O =yN2 + 6Cu + SO2

El coeficiente X puede ser establecido para simular la relación de volumen de oxigeno atraído a el volumen de Nitrógeno soplado. El coeficiente Y puede ser especificado para simular la eficiencia de la agitación. La reacción es balanceada en el Screen de edición de las reacciones, ya que METSIM es incapaz de calcular estos coeficientes. Puesto que N2 es el primer componente la reacción se verá limitada por la cantidad de nitrógeno disponible.

Reaction Extent, Enter Expression

Permite al usuario usar cualquier expresión APL valida, para reemplazar el PC (que es una cantidad fija) como se explico anteriormente. Por lo tanto el rendimiento de la reacción estará controlado por dicha expresión APL.

Residual Weight Fraction, Enter PC

Esta opción hace referencia a la fracción en peso residual del primer componente en su fase. PC, Rendimiento o residual es la única variable que es requerida. De esta forma especificando cualquiera de ellos La reacción procederá hasta que el primer componente ha reaccionado hasta la fracción en peso que se ha especificado en una fase específica. Como en el primer caso la disponibilidad de cualquiera de los demás componentes pondrán fin a la reacción prematuramente. Esta opción sólo debe utilizarse para determinadas situaciones específicas. Por ejemplo, podría utilizarse en una autoclave, para especificar la molaridad del ácido restante al final de un proceso de lixiviación.

De esta forma los componentes lixiviados fácilmente reaccionaran completamente y el acido remanente reaccionará con uno de los comparativos componentes

(50)

50 inertes como por ejemplo la alúmina, hasta que se ha reducido a un nivel en el que ya no es lo suficientemente fuerte como para disolver la alúmina.

Residual Weight Fraction, Enter Expression

Esta opción permite al usuario utilizar cualquier expresión APL válida para reemplazar una cantidad fija la fracción residual en peso de esta forma será controlada por la expresión.

Mass Conversion - Enter PC

Esta opción se usa principalmente para la transferencia de un componente entre fases. el dato de cambio de fase es especificado como una cantidad másica en unidades de masa por unidad de tiempo (UNM, UNT) Estos datos se pueden ajustar mediante un controlador feedback y de esta forma alcanzar un resultado deseado.

Esta opción se debe usar al final de al final de la lista de reacción debido a que las reacciones posteriores alteraran las concentraciones de los componentes determinados por intermedio de las reacciones anteriores.

Mass Conversion- Enter Expression

Permite al usuario especificar la transferencia de masa de los componentes entre fases usando una expresión valida APL.

Esta opción se debe usar al final de al final de la lista de reacción debido a que las reacciones posteriores alteraran las concentraciones de los componentes determinados por intermedio de las reacciones anteriores.

Equilibrium, Enter KE (KE=EQUILIBRIUM CONSTANT)

Esta opción permite al usuario especificar la constante de equilibrio para una reacción. Por ejemplo la constante de equilibrio para la reacción 2CO2 = 2CO + O2,

(51)

51 Donde K es la constante de equilibrio y Px es la presión parcial (es decir la fracción molar) de la especie x en la fase gaseosa.

La forma de establecer la constante de equilibrio es de la siguiente forma:

Se debe establecer el logaritmo de la constante de equilibrio e introducirla en el siguiente espacio:

Donde en el primer espacio se debe ingresar el logaritmo de la constante de equilibrio.

Y en el segundo el logaritmo de la constante del equilibrio alcanzado.

Equilibrium, KE, Enter Expression

Permite al usuario especificar el equilibrio de la reacción usando una expresión valida APL. De tal forma que el rendimiento de la reacción estará controlado por esta expresión.

Equilibrium Enter TM

Especificando la temperatura a la cual ocurre la reacción la constante de equilibrio está relacionada con el cambio de la energía libre de la reacción mediante la siguiente ecuación:

(52)

52 Donde G es el cambio de energía libre de Gibbs, K es la constante de equilibrio, R es la constante de los gases y T es la temperatura termodinámica.

El paquete de datos termodinámicos de METSIM expresa la energía libre de Gibbs de cada componente como función de la temperatura. El cambio de la energía libre de Gibbs para la reacción es calculado como la diferencia entre la suma de las energía libres de Gibbs de los productos y la suma de las energía libres de los reactivos evaluadas a la temperatura a la cual ocurre la reacción.

Usando la temperatura especificada por el Usuario, METSIM puede calcular el cambio de energía libre para la reacción y por lo tanto la constante de equilibrio.

Equilibrium, TM, Enter Expression

Permite al usuario especificar el equilibrio de la reacción usando una expresión valida APL. De tal forma que el rendimiento de la reacción estará controlado por esta expresión.

Equilibrium, No Entry

Cuando se implementa la opción de balance de calor (Heat Balance), METSIM calcula la temperatura a la cual ocurre la reacción, con esta opción METSIM, creara un reporte de la temperatura que fue calculada y también las constantes de equilibrio alcanzadas.

(53)

53 En las opciones de equilibrio METSIM considera que todos los componentes sólidos inorgánicos forman una sencilla fase solida, de modo que la concentración de un componente con esa fase solida no reflejara su actividad termodinámica. Así el método es efectivamente limitado a mezclas de fluidos; y para sistemas gaseosos este seria por lo menos más efectivo para calcular el estado de equilibrio.

La aplicación más efectiva seria por lo menos para sistemas de soluciones

acuosas aunque los datos termodinámicos para estos sistemas son más limitados.

Unit Op Groups

Unit Op Groups son reacciones controladas vía operaciones unitarias específicas. Por ejemplo:

AUT – Autoclave see MWUAUT.sfw model

FRK – Kiln see MWFRK.sfw

Otras operaciones unitarias pueden ser:

PBR – Packed Bed Reactor

FBR – Fluid Bed Roaster

8. Lenguaje APL

Los códigos escritos en METSIM son desarrollados en lenguaje APL (A programming Language) el cual es un lenguaje de alto nivel, es decir con esta potente herramienta podemos ahorrar muchas líneas de código comparada con otros lenguajes tradicionales para desarrollar complejas operaciones matemáticas con matrices y vectores. Este modulo tiene como objetivo dar al ingeniero las

(54)

54 nociones básicas del lenguaje APL para que pueda implementar dichas herramientas en el modelado de distintos sistemas.

8.1 símbolos de APL

El leguaje APL emplea diversos símbolos para desarrollar operaciones Matemáticas, la siguiente tabla nos enseña los símbolos más comunes empleados por APL, con su respectivo nombre, su comando para ejecutarlo y su principal uso.

(55)
(56)

56 8.2 el teclado APL

En la parte superior del Screen de METSIM aparece el icono para activar el teclado APL ( ), el cual nos activara dicho teclado:

Donde se puede observar que los caracteres tradicionales del código ASCII, aparecen en la parte superior de las teclas alienadas con sus minúsculas en la parte inferior derecha, mientras que los caracteres propios del APL aparecen en color Rojo en la parte izquierda de las teclas. Las demás características de este teclado son enlistadas en la grafica. Los resultados aparecen en el espacio verde.

(57)

57 Además se pueden observar los botones de ejecución (Clear, Cut, Space…). La utilidad de este teclado se centra en que en el podemos desarrollar todas las operaciones matemáticas en lenguaje APL que deseemos, y obtendremos el resultado inmediatamente en el Screen que aparece de color verde.

8.3 Operaciones APL Básicas

8.3.1 Aritmética-Orden de Ejecución

A. Se pueden ingresar dos funciones aritméticas en la misma línea, por ejemplo:

Donde el sistema nos mostrará:

Para donde el orden de ejecución de la línea de arriba es:

Donde se puede apreciar que el orden de ejecución para APL es siempre de Derecha a izquierda. Cabe notar que las sub-operaciones si se llevan a cabo de izquierda a derecha, es decir para el ejemplo de arriba se realizo primero la resta de (4-2) cuyo resultado es 2 y no 2-4 que el resultado seria -2, y luego si se multiplica 2 x3 y obtenemos el resultado de 6.

(58)

58 Donde APL evalúa la anterior expresión de la siguiente forma:

En este ejemplo se puede observar mejor como APL realiza las operaciones. En ocasiones se pueden usar paréntesis para alterar el orden de ejecución, por ejemplo:

Donde se puede observar que las operaciones entre paréntesis se realizan primero.

B. Las funciones APL también pueden trabajar en largas listas de Números, como por ejemplo un escalar y un vector:

(59)

59 Ahora observemos el siguiente ejemplo:

Donde claramente se observa que esta operación no se puede realizar debido a que existe un error dimensional, para ello METSIM enviara un mensaje como el siguiente:

(60)

60 8.3.2 Funciones APL

Asignación de Valores

Para asignar un valor a una variable se emplea una flecha apuntando de derecha a izquierda  Por ejemplo para asignar un valor escalar de 15 a la variable “NUMBER” se realiza el siguiente procedimiento:

Similarmente, el resultado de una expresión puede ser asignado a una variable, para ello se debe realizar el siguiente procedimiento

Como se puede observar el resultado de la operación es (10/2=5 + 15 = 20), y al realizar esta operación aparecerá lo siguiente:

De esta forma asignamos el resultado de 20 a la variable RESULT, ahora para comprobar solo ingresamos el nombre RESULT donde debe aparecer el valor de 20.

(61)

61 Vale la pena decir que para que aparezca el resultado hay que oprimir el botón “Execute”. Un vector puede también ser asignado a una variable (los vectores en APL se ingresan con valores numéricos separados de espacios ej.: 1 2 3 4 vector de 4 elementos) por ejemplo:

Donde se aprecia que se está asignando el vector 5 6 9 11 a la variable VEC. Ya con la variable especificada se puede buscar cualquier elemento dentro del vector. Para ello vamos a realizar el ejemplo en el teclado APL:

1. Asignación del vector a la variable VEC

(62)

62 Por lo tanto se sabe que el vector VEC es de 4 elementos .Ahora queremos utilizar su segundo elemento “6” para multiplicarlo a la variable escalar del ejemplo

anterior “RESUL” de valor 20, cuyo resultado debe ser 120, desarrollemos este ejemplo en el teclado APL:

La forma de buscar el elemento del vector es anteponiendo el nombre del mismo y el numero del elemento en paréntesis cuadrados. También se pueden buscar varios elementos del vector de la siguiente forma:

Donde buscamos el 4 y el primer elemento del vector, donde obviamente la respuesta es:

(Nótese que el resultado es producido en el orden que sea especificado)

Ahora a partir de variables que ya han sido creadas se pueden especificar otras nuevas, como no lo muestra el siguiente ejemplo: Vamos a crear una variable vectorial llamada NEW que va a constar de los elementos 3 2 4 del vector VEC y a esto le vamos a sumar la variable escalar NUMBER (del ejemplo anterior)

(63)

63 Que es lo mismo que ingresar:

Que al observar los valores de la nueva variable tenemos:

Ahora si queremos combinar dos variables en una sola, estas deben ser separadas por una coma, por ejemplo:

Donde se observa que esta combinación es la adición del numero 15 al vector VEC y se asigna en el primer espacio del arreglo vectorial.

8.3.3Índice de función

El índice o “Iota” tiene básicamente dos funciones, la primera de ellas, es la llamada “index generator” o generador de índice para argumento escalar positivo entero dado “x” esta devuelve x consecutivos enteros empezando desde 1, por ejemplo:

Al aplicar la función iota al número 10 esta nos genera valores enteros positivos desde el 1 hasta el número que se especificó que en este caso es 10 (por analogía con otros lenguajes es como actúa un ciclo For), el resultado es el siguiente:

(64)

64 La segunda función es diádica está también es llamada “index of” esta función básicamente encuentra la posición de algunos elementos de un arreglo, la forma de programar esta función es:

Entonces con esta segunda utilidad de la función IOTA se pueden saber las ubicaciones de los números que especificamos, en este ejemplo queremos saber que ubicación tienen los números 7 5 3 del vector 3 4 7 3 8, para lo cual la respuesta es:

Donde se aprecia que la posición del número 7 es la tercera dentro del vector, y como el numero 5 no está dentro del vector nos asigna la sexta posición es decir nos dice que dicho elemento no está dentro del vector por eso lo saca de dimensión, y la posición del número 3 es la primera.

8.3.4 Función Rho ó Reshape

Al igual que la función iota la función Reshape tiene dos funciones, la primera de ellas es una función diádica que permite crear varios tipos de vectores, la segunda es una función monadica y nos muestra la dimensión o la forma de un vector. Por ejemplo:

(65)

65 Donde el objetivo acá es crear un vector con 7 elementos donde se deben repetir consecutivamente los elementos del vector dado, en este ejemplo también se asigna el resultado a la variable vectorial VEC. El resultado es el siguiente:

De la misma forma una matriz también se puede crear con la función Reshape: Por ejemplo vamos a crear una matriz

El cual me dice que cree una matriz de tres filas con siete columnas, y se aplica la función iota para generar los valores desde 1 hasta 6. El resultado es:

Y como también está sujeta a la función Reshape genera los valores de la matriz.

Ejercicio:

a. Crear Una matriz de 5 filas X 5 columnas y que genere valores enteros hasta 3 empezando de 1, luego asignar dicha matriz a la variable matricial GOT, y multiplicar esta matriz por el escalar 3. Emplear el teclado APL para solucionar el ejercicio.

b. Combinar esta matriz con el vector MAX credo por el usuario de 5 elementos

(66)

66 Consecutivos hasta 4. Usar el teclado APL. Asignar el resultado matricial a la variable BEN.

Solución: Primero vamos a generar la matriz de 5X5 utilizando la función Reshape y aplicamos la función iota para generar los valores de 1 hasta 3 consecutivos, como se observa a continuación:

Esto es calculado al presionar el botón Execute. Ahora asignamos la matriz generada a la variable matricial GOT.

(67)

67 Establecimiento del vector MAX de 5 elementos consecutivos hasta 4:

Combinación de la Matriz por el vector

Donde se observa que se combino este vector a la matriz en forma de vector matriz columna, al final de la matriz.

(68)

68 8.3.5 Función de Reducción

Usando la función de reducción, una función aritmética puede repetirse a través de una serie de valores. Por ejemplo:

Al expresar el símbolo de reducción / el de suma es lo mismo que tener:

Lo mismo puede utilizarse para un vector, utilicemos el vector VEC de los ejemplos anteriores: La forma de sumar sus elementos es:

Y el resultado es: VEC= 2 5 2 5 2 5 2. Esta operación es frecuentemente conocida como reducción bajo la suma.

(69)

69 Las funciones Mi y límite inferior son Tanto monadica como diádicas. A

continuación se explican ejemplos de cada una de ellas:

1. Mínimum es una función Diádica, por lo tanto puede encontrar el valor mínimo entre dos valores, esta también puede ser usada con variables, como por ejemplo:

Aplicando esta función a estos dos valores me encuentra el mínimo de los dos, que en este caso es:

2. Floor es una función Monadica y nos dará un valor por debajo del valor mínimo, por ejemplo:

En este ejemplo se asigna el valor de 3.84995 a la variable A, y luego se calcula el valor con Floor. Donde el resultado es:

Que es el valor mínimo entero por debajo del valor.

3. Máximum es una función Diádica opuesta a la función Mínimum, esta encontrara el valor máximo entre dos valores

Referencias

Documento similar

- 4 Salidas de Relevador NC/NO/COM Para Chapas, 4 Salidas de Relevador Auxiliares NC/NO/COM, 4 Entradas Auxiliares, Botón de Salida y Sensor Magnético por Puerta. - Para Botón

Nota: Cuando una unidad de expansión de E/S no tiene entradas ni salidas, como la unidad de 4 puntos de entrada o la unidad de 4 puntos de salida que se muestran en el diagrama

Sistemas con capacidad para estimar funciones no-lineales de varias entradas y varias salidas. usando datos de entrada y salida

 Diversas entradas/salidas: salida de forma de onda, salida de señal síncrona, entrada de activador externo..  Interfaces estándar: dispositivo USB, host

Como podemos observar en la figura 31, como podemos observar en este caso, ya empezamos a notar el exceso de los elementos que componen el grafismo televisivo, en este

PLATAFORMA HARDWARE SIMATIC (2/2).. BASTIDOR Y ELEMENTOS DE AUTÓMATA S7-300.. ELEMENTOS DE LA ESTACIÓN SIMATIC S7-300.. ENTRADAS – SALIDAS INTEGRADAS EN CPU 314 IFM. Entradas y

cambios entre las entradas y salidas pero a un costo de tener compuertas con gran numero de entradas. ❒ Estas requieren mayor superficie para ubicar

2 Módulo de entradas digitales Tensión de alimentación para sensores y datos de entradas digitales 3 Módulo de salidas digitales Salida para cargas eléctricas.. 4 Placa final