Sie sind auf Seite 1von 16

UNIVERSIDAD TCNICA FEDERICO SANTA MARA

DEPARTAMENTO DE ELECTRNICA

Alternativas de Solucin de Proyecto de


Titulacin
Simulacin y Diagrama 3D de Control y
Supervisin de un Sistema
Diesel-Generador-Motor-Hlice

Presentado por:
ROL USM:
Profesor gua:
Fecha:

Michael Silva Muoz


2621003-8
Sr. Alejandro Surez Sotomayor
23/05/2011

Proyecto de Titulacin

INTRODUCCIN
En el presente documento se darn a conocer las alternativas de solucin consideradas
para llevar a cabo el Proyecto Simulacin y Diagrama 3D de Control y Supervisin de un
Sistema Diesel-Generador-Motor-Hlice, concentrndose en cmo se lograr supervisar la
simulacin del sistema mediante una interfaz hombre mquina (HMI). Dicha simulacin se
considerar entonces, como disponible en una aplicacin Matlab, radicando el problema en cmo
ingresar/exportar datos a este esquema desde/hacia otra aplicacin que implemente la HMI, como
se muestra en el diagrama de la Figura 1.

Sistema en
Matlab

HMI

PC

Usuario
Figura 1.

Diagrama de Flujo de Datos Matlab HMI - Usuario

ALTERNATIVAS DE SOLUCIN
Se revisarn tres aplicaciones que permiten confeccionar una HMI, y que tienen la
propiedad de poder intercambiar datos con Matlab: LabView mediante Simulation Interface
Toolkit, Fix Dmacs mediante conexin DDE y LabView mediante conexin DDE. Como no
existe una fuente de informacin que compare explcitamente las alternativas, se desarrollar en
la exposicin de cada una de ellas, un resumen de las caractersticas principales de la aplicacin,
el procedimiento base detallado que se necesitara para poder realizar la conexin entre Matlab y
la HMI (Con el fin de poder analizar con mayor autoridad cada alternativa), y las conclusiones
respecto de las ventajas y desventajas que ofrece cada una de las opciones.

Proyecto de Titulacin

ALTERNATIVA N1: LABVIEW MEDIANTE SIMULATION INTERFACE TOOLKIT


LabView es una herramienta diseada especialmente para monitorizar, controlar,
automatizar y realizar clculos complejos de seales analgicas y digitales capturadas a travs de
tarjetas de adquisicin de datos, puertos serie y GPIBs (Buses de Intercambio de Propsito
General).
Es un lenguaje de programacin de propsito general, como es el Lenguaje C o Basic,
pero con la caracterstica que es totalmente grfico, facilitando de esta manera el entendimiento y
manejo de dicho lenguaje para el diseador y programador de aplicaciones tipo SCADA
(Supervisory Control And Data Adquisition).
Incluye libreras para la adquisicin, anlisis, presentacin y almacenamiento de datos,
GPIB y puertos serie, adems de otras prestaciones, como la conectividad con otros programas,
por ejemplo de clculo, y en especial Matlab, que es la aplicacin que se le dara en este
proyecto.
Est basado en la programacin modular, lo que permite crear tareas muy complicadas a
partir de mdulos o sub-mdulos mucho ms sencillos. Adems estos mdulos pueden ser usados
en otras tareas, con lo cual permite una programacin ms rpida y provechosa [1].

Conexin Simulink a LabView mediante Simulation Interface Toolkit [2]


La herramienta Simulation Interface Toolkit (SIT) de LabView, permite construir una
interfaz de usuario para un modelo realizado en Simulink. Esto lo lleva a cabo al generar
automticamente un cdigo LabView, lo cual se logra configurando primero el modelo Simulink
para realizar la comunicacin, y luego creando en LabView un host VI (Instrumento Virtual) que
automticamente llama, corre e interacta con dicho modelo.
Para configurar el modelo en Simulink se deben seguir los siguientes pasos:
1. Guardar los archivos Simulink (.mdl) y LabView (.VI). (Ej. sinewave.mdl y Sine
Wave.VI).
2. Abrir Matlab y verificar que la ventana de comandos muestra el siguiente mensaje:
STARTING THE SIT SERVER ON PORT 6011
SIT SERVER STARTED
2

Proyecto de Titulacin

Simulation Interface Toolkit automticamente instalar el SIT Server, por lo que si


este mensaje no se ve, la Toolkit no ha sido correctamente instalada.
3. Abrir Simulink desde la ventana de comandos de Matlab.
4. Seleccionar File >> Open y abrir el archivo .mdl (Siguiendo el ejemplo, abrir el
archivo sinewave.mdl).
El modelo de la simulacin debera parecerse al siguiente diagrama:

Figura 2. Ejemplo de diagrama Simulink para simulacin


5. En la figura 2, se ha incorporado un bloque llamado SignalProbe. Este bloque debe ser
puesto en la capa superior del diagrama de simulacin, para que pueda ser encontrado
por la librera NI SIT Blocks de LabView.
6. Configurar los parmetros de simulacin seleccionando Simulation >> Simulation
Parameters. En la ayuda LabView Simulation Interface Toolkit Help puede
encontrarse la forma de cambiar estos parmetros desde la HMI.
7. Guardar el modelo Simulink.

Al completar los pasos de configuracin del modelo Simulink, se est en condiciones de


crear la interface en LabView, manteniendo toda la potencia operacional que otorga Matlab para
la simulacin. Para ello se debe seguir el siguiente procedimiento:

Proyecto de Titulacin

1. Abrir LabView y crear un nuevo VI (Instrumento Virtual).


2. Poner en el Panel Frontal (HMI de LabView) los controles necesarios para la simulacin
(En el ejemplo, podra ser dos perillas para establecer la amplitud y frecuencia de una
onda sinusoidal de la simulacin).
3. Poner los Waveform Chart (Grficos en LabView) para observar las seales que se
quieren analizar en la simulacin. Para el caso de la onda sinusoidal, el eje Y podra
representar la amplitud de la onda, y X tiempo, con lo que se tendra un Panel Frontal
como el de la Figura 3:

Figura 3.

Ejemplo de HMI en LabView para la simulacin de una onda sinusoidal

4. Se pueden crear asignaciones entre el VI y el modelo Simulink,. Para ello, se debe


seleccionar desde el VI, Tools >>SIT Connection Manager.
5. En la categora Model and Host, seleccionar Simulation Environment bajo Host
Execution. El Host Execution es la mquina en la cual el servidor SIT est corriendo. Para
seleccionar Real Time Target o Driver VI en el Local Host, primero se debe convertir el
modelo Simulink a DLL, antes de crear las asignaciones.

Proyecto de Titulacin

6. En Current Model, seleccionar Browse y luego el archivo .mdl en el cual est la


simulacin. (Ej. sinewave.mdl).
7. En Project Directory, seleccionar Browse u luego la carpeta en la cual se desea contener
el proyecto (VI). Idealmente, esta debera ser la misma carpeta en la cual el modelo est
localizado.
8. En Category List, seleccionar Mappings para mostrar la hoja de asignaciones. La tabla de
asignaciones actuales muestra los controles e indicadores que se han creado antes en el
Panel Frontal. Esta hoja se utilizar para mapear los tems del Panel Frontal al modelo
Simulink, como se observa en la Figura 4.

Figura 4. Tabla de Asignaciones de tems de Panel Frontal a modelo Simulink


9. Seleccionar el Control que se desea mapear, desde la tabla Current Mappings, y hacer
click en el botn Change Mappings. Esto abrir el cuadro de dilogo Specify Parameters,
donde se podr configurar dicho control (Ej: Abrir el cuadro de dilogo del control de
Frecuencia para la Seal sinusoidal).
10. En el cuadro de dilogo del control, seleccionar el Control a configurar seleccionando
archivo.mdl >> archivo.VI, y presionar OK (Ej. sinewave.mdl >> Sine Wave
>>Frecuency).

Proyecto de Titulacin

11. Repetir los pasos 9 y 10 para mapear todos los controles e indicadores que se desea
comunicar entre Simulink y LabView.
12. Presionar el botn OK para cerrar el cuadro de dilogo SIT Connection Manager y
generar el cdigo de diagrama de bloques para el VI. Los controles que permiten manejar
la simulacin (Model Controls) aparecen automticamente en el panel frontal como se
observa en la Figura 5.

Figura 5. Panel Frontal de LabView que incorpora controles para simulacin en


Simulink
13. Al observar el diagrama de bloques, se observa que el SIT gener un cdigo LabView. En
este cdigo no se debe cambiar ningn elemento que tenga etiqueta verde.

Proyecto de Titulacin

Al completar la configuracin de la HMI en LabView, la simulacin se encuentra lista para ser


comandada desde el Panel Frontal. De acuerdo al ejemplo que se ha desarrollado, los controles de
Frecuencia y Amplitud pueden ser usados para cambiar la seal sinusoidal de salida.
El procedimiento aqu descrito no requiere MathWorks Real Time Workshop (RTW). Este VI
usa Simulink para correr la simulacin. Tambin podra utilizarse SIT junto con RTW para
construir el modelo en una aplicacin dll, donde la simulacin corre por si sola. En este caso, se
necesitara Simulink y RTW para construir el modelo en un archivo dll, y configurar la interfaz
de usuario. Para aplicaciones prototipo, se puede correr el modelo dll in LabView Real Time para
obtener entradas y salidas en tiempo real.
Ventajas y Desventajas de la alternativa
De acuerdo a lo antes expuesto, la alternativa de disear la HMI mediante SIT de LabView
presenta las siguientes caractersticas:
-

Como LabView y Matlab pueden funcionar en ambiente Windows, el proyecto podra


realizarse en ambiente Windows, el cual es muy amigable al usuario.

La configuracin de la HMI es simple. No se necesita ser experto en programacin, sino


que slo seguir el procedimiento antes expuesto.

Existe bastante informacin en la WEB respecto de cmo se utiliza SIT para comunicar
LabView con Matlab.

Esta alternativa est sujeta a la disponibilidad que se tenga de LabView y en especial de


su aplicacin Simulation Interface Toolkit, puesto que ya se dispone de Simulink de
Matlab.

Proyecto de Titulacin

ALTERNATIVA N2: FIX DMACS MEDIANTE CONEXIN DDE

Proficy HMI/SCADA - Fix es una poderosa solucin HMI/SCADA diseada por


Intellution, basada en una arquitectura Cliente/Servidor, que provee visualizacin de los
procesos, adquisicin de datos y control y supervisin de procesos de manufactura y produccin.
Fix ofrece un motor SCADA robusto, con varias opciones de conectividad, arquitectura abierta,
altamente escalable y con modelo de red distribuida. Es usado en una amplia gama de
aplicaciones en diversas industrias, y puede ser utilizado para aplicaciones simples como una
tpica HMI que captura y muestra datos, hasta complejas aplicaciones SCADA como el manejo
de lotes de produccin, alarmas y control en tiempo real [1].

Conexin DDE entre Matlab y FIX DMACS [3]


La conexin entre Matlab y Fix DMACS aqu expuesta se realiza mediante conexin
DDE. La conexin DDE (Dynamic Data Exchange) es un mtodo de comunicacin que usa
memoria compartida para intercambiar datos entre aplicaciones en ambiente Windows, que
permite el intercambio de datos en tiempo real. Los programas que tienen la posibilidad de
trabajar con esta conexin son muy verstiles al momento de necesitar algn componente de otro
software, como lo son Fix y Matlab en el caso de este proyecto, ya que se pueden utilizar la
potencia matemtica de Matlab en conjunto con la potencia de interfaz con el usuario de FIX.
La idea es poder manejar la simulacin en Matlab desde una HMI FIX, de modo que Fix
enva comandos a Matlab va DDE, este los procesa y los enva de nuevo a Fix con DDE, para
que este los despliegue en forma amigable al usuario. Este procedimiento se realiza en forma
cclica y contina durante todo el proceso de simulacin, o al menos hasta que se defina una
interrupcin deseada en el algoritmo.
Los programas que soportan el DDE utilizan la sintaxis ATI, que se refiere a Application
Topic Item. El ATI es un formato estndar de identificacin de la informacin DDE y la
descripcin de la sintaxis es:
=Application|Topic!Item.
La Application es el nombre de la aplicacin DDE donde se encuentran los datos, el cual
en muchas aplicaciones corresponde al nombre del programa. Topic es el nombre del grupo de
datos a leer, y generalmente corresponde al nombre del archivo. El Item representa la
estructura de los datos a transferir, y su nombre depende de la aplicacin. En el caso de Matlab el
formato ATI podra ser:
8

Proyecto de Titulacin

=MATLAB|ENGINE!Z
En el siguiente ejemplo se muestra la programacin realizada para la comunicacin DDE
entre FIX y Matlab, con el objetivo de incorporar un Bloque de Control Difuso (Disponible en
Matlab pero no en FIX) para el control de temperatura. La programacin en FIX se realiza con el
Lenguaje de Comandos, el cual es una herramienta para automatizar operaciones a travs de una
serie de instrucciones, como se muestra en la Figura 6:

Figura 6. Programacin en FIX para comunicacin DDE con Matlab

El cdigo muestra la declaracin de la variable #RETRIEVE como una cadena de caracteres y


#RESULTADO como una variable numrica. La variable #RETRIEVE se utiliza debido a que
FIX recibe los datos en forma de cadena de caracteres. La instruccin GETVAL carga en la
variable #RETRIEVE el dato enviado por Matlab llamado Z. En STRTONUM se convierte la
cadena de caracteres en un valor numrico. Finalmente con SETVAL se coloca el valor numrico
en #RESULTADO en el punto de la base de datos que en el ejemplo est definido con
FIX:DATO_RECIBIDO_DE_MATLAB.F_CV. Con el GOTO se vuelve a ejecutar de nuevo la
peticin de datos.
La Figura 7 muestra la programacin en Matlab para generar el enlace:

Proyecto de Titulacin

%Inicializacin de Variables
b=0;
%Se cargan todas las variables del Controlador Difuso
a=readfis(temperarura);
while~=100
%Inicializa el canal para la conversacin con FIX
chan=ddeinit(dmdde,data);
%Solicita el dato a FIX
data=ddereq(chan,fix.DATO_ENVIADO_A-MATLAB.f_cv);
b=data;
%Retardo para cargar dato en memoria
pause(.1)
%Finaliza conversacin
rc=ddeterm(chan);
%Evaluacin del Control Difuso
Z=exp(b);
end
Figura 7.

Cdigo Matlab para establecer comunicacin DDE con FIX

La programacin en Matlab se realiza en este caso en un archivo de instrucciones con


extensin *.m, el cual se encarga de establecer la comunicacin DDE y ejecuta la funcin que
implementa el controlador difuso (Se supone esta funcin ha sido previamente diseada). El
cdigo consta de una parte de inicializacin de variables, una para cargar las variables de
controlador difuso con la instruccin readfis, y luego de un ciclo continuo que realiza la
peticin de los datos a FIX. El formato ATI para FIX es: La Application es dmdde, el
Topic es data y el Item es el nombre en la base de datos de FIX.
Una vez realizadas las programaciones en Matlab y FIX, se est en condiciones de ejecutar
la aplicacin que implementa el controlador difuso, relacionando en tiempo real las
potencialidades de cada software. En este caso, FIX utiliza las herramientas matemticas en el
desarrollo de un controlador difuso dado por Fuzzy Logic ToolBox, mientras que Matlab
aprovecha la capacidad de adquisicin y manejo de datos que ofrece un programa SCADA.

10

Proyecto de Titulacin

Ventajas y Desventajas de la alternativa


De acuerdo a lo antes expuesto, la alternativa de disear la HMI mediante Fix Dmacs
presenta las siguientes caractersticas:
-

Como Fix Dmacs y Matlab pueden funcionar en ambiente Windows, el proyecto podra
realizarse en este ambiente que es muy amigable al usuario.

Los cdigos que permiten comunicar la HMI con Matlab requieren de conocimientos de
de ambos lenguajes de programacin (Fix y Matlab), lo que podra ralentizar su
implementacin.

La informacin que existe en la WEB respecto de cmo realizar una conexin DDE entre
Matlab y Fix es reducida o difcil de encontrar.

Esta alternativa est sujeta a la disponibilidad que se tenga de Fix Dmacs, puesto que ya
se dispone de Matlab.

11

Proyecto de Titulacin

ALTERNATIVA N3: LABVIEW MEDIANTE CONEXIN DDE

Las caractersticas principales del ambiente LabView han sido descritas en la Alternativa
N: LabView mediante Simulation Interface Toolkit. A continuacin se ver cmo se realiza la
conexin entre LabView y Matlab mediante conexin DDE
Conexin Matlab a LabView mediante conexin DDE [4]
En esta aplicacin LabView ser la interfaz de comunicacin con el usuario HMI y capturar
los datos desde Matlab de manera anloga a como lo hara para un sistema real mediante una
tarjeta de adquisicin, mientras que Matlab, simular a la planta (Conexin Diesel-GeneradorMotor-Hlice), junto con su controlador, la instrumentacin y la tarjeta de adquisicin de datos.
Como se vio en la alternativa anterior, Windows proporciona la herramienta DDE
(Intercambio Dinmico de Datos), el cual se trata de un protocolo de comunicacin entre
aplicaciones que permite establecer un dilogo entre ellas, que puede constar de datos o incluso
comandos para su ejecucin. Dicho protocolo organiza a las aplicaciones en dos grupos: la
aplicacin cliente ser la encargada de realizar una determinada peticin (la ejecucin de algn
comando o el traspaso de algn tipo de datos), mientras que la otra aplicacin actuar como
servidor, recibiendo las peticiones del cliente y actuando en consecuencia. Las dos aplicaciones
utilizadas, LabView y Matlab aceptan este protocolo.
Una opcin es escoger LabView para actuar como cliente y a Matlab como servidor, con la
consideracin de que la funcin de este ltimo ser aceptar las peticiones del usuario a travs de
la HMI, para proporcionar los que se obtengan de la simulacin. Con esto, segn [4], se evita
todo tipo de programacin especial en Matlab. En cuanto a la programacin en LabView, se
muestra como ejemplo (Ver figura 8) el cdigo empleado para requerir a Matlab la estimacin de
un sistema a partir de unos datos previamente grabados en un fichero de disco con formato
ASCII.

12

Proyecto de Titulacin

Figura 8. Diagrama LabView para requerir servicios de Matlab


En primer lugar es necesario abrir un canal de comunicaciones para advertir a Windows que
se va a emplear DDE. Para la apertura se indica a Windows el nombre y tpico del servicio que
se va a solicitar (stos dependen del programa servidor y se obtienen de los manuales del
software. En este caso son Matlab y Engine). A cambio, Windows proporciona un handle o
nmero de canal (De forma que varias aplicaciones puedan usar distintos servicios a la vez) que
deber ser empleado en todas las comunicaciones posteriores.
Una vez abierto el canal ya se pueden enviar comandos para ser ejecutados (funcin EXEC),
o peticiones de transferencia de datos (funcin REQST). Ambas funciones aceptan como entrada
un literal que contendr el comando a ser ejecutado (Tal como lo escribira un usuario en la
ventana de Matlab) o bien, en el caso de una peticin de transferencia de datos, el nombre del
dato que se desea recibir. Un caso especial es el dato matriz EnsgStringResult, de tipo string, que
contiene la salida por pantalla que ha producido el ltimo comando ejecutado va DDE.
Finalmente, es necesario cerrar el canal para liberar memoria y no dejar saturado el sistema.
Ventajas y Desventajas de la alternativa
De acuerdo a lo antes expuesto, la alternativa de disear la HMI mediante LabView con
conexin DDE a Matlab presenta las siguientes caractersticas:

13

Proyecto de Titulacin

Como LabView y Matlab pueden funcionar en ambiente Windows, el proyecto podra


realizarse en este ambiente que es muy amigable al usuario.

La configuracin de la comunicacin se realiza mediante programacin grfica en


LabView, pero adems se requiere conocer los comandos para iniciar la conexin DDE,
lo que podra ralentizar si implementacin.

Existe informacin suficiente en la WEB respecto de cmo utilizar las mdulos DDE de
LabView y de Matlab por separado, pero reducida en cuanto a la conexin especfica
entre ambos software.

Esta alternativa est sujeta a la disponibilidad que se tenga de LabView, puesto que ya se
dispone de Matlab.

CONCLUSIONES
Se han presentado tres alternativas de solucin que permiten establecer una comunicacin
entre un sistema modelado en Matlab y una aplicacin que implemente una HMI, revisando sus
caractersticas principales, sus procedimientos bsicos para establecer la conexin, y en base a
ellos determinar las ventajas y desventajas de cada opcin. Con la informacin presentada en este
documento, el paso prximo en el avance de este proyecto, consiste en evaluar cual alternativa es
la que conviene desarrollar, determinando que cualidades o defectos son ms o menos relevantes
al momento de tomar la decisin, y que calificacin logra cada alternativa en cada uno de dichos
tpicos.

14

Proyecto de Titulacin

REFERENCIAS
[1] Henry Mendiburu Daz, Sistemas Scada, enlace http://www.galeon.com/hamd/pdf/scada.pdf
[2] Pgina Web de National Instruments Developer Zone, enlace
http://zone.ni.com/devzone/cda/tut/p/id/3057
[3] Panayotis S. Tremante M., Mercedes Torres R., Jos Alonso S., Conexin DDE entre Matlab
y Fix Dmacs (Software de supervisin, control y adquisicin de datos SCADA) para un
controlador difuso, Departamento de Electrnica y Control, Escuela de Ingeniera Elctrica,
Universidad Central de Venezuela.
[4] Antonio Manuel Lzaro, Contribucin a la Caracterizacin Automtica de Funciones de
Transferencia en Presencia de Ruido. Conversin Continua-Continua, Departament d'Enginyeria
Electrnica, Universitat Politcnica de Catalunya

15

Das könnte Ihnen auch gefallen