Visual Basic

41
Introducción. VISUAL BASIC Este lenguaje nace del BASIC (Beginner´s All-purpose Symbolic Instruction Code) que fue creado en su versión original en el Dartmouth College, con el propósito de servir a aquellas personas que estaban interesadas en iniciarse en algún lenguaje de programación. Luego de sufrir varias modificaciones, en el año 1978 se estableció el BASIC estándar. La sencillez del lenguaje ganó el desprecio de los programadores avanzados por considerarlo "un lenguaje para principiantes". Primero fue GW-BASIC, luego se transformó en QuickBASIC y actualmente se lo conoce como Visual Basic y la versión más reciente es la .NET, la que nosotros usaremos se incluye en el paquete Visual Studio 6 de Microsoft. Esta versión combina la sencillez del BASIC con un poderoso lenguaje de programación Visual que juntos permiten desarrollar robustos programas de 32 bits para Windows. Esta fusión de sencillez y la estética permitió ampliar mucho más el monopolio de Microsoft, ya que el lenguaje sólo es compatible con Windows, un sistema operativo de la misma empresa. Visual Basic ya no es más "un lenguaje para principiantes" sino que es una perfecta alternativa para los programadores de cualquier nivel que deseen desarrollar aplicaciones compatibles con Windows. En este informe explicaremos algunos términos y/o características de mismo con la finalidad de aprender mas sobre este Programa y manejarlo con facilidad 1. De los fundamentos de programación explique: 1. Es un lenguaje de programación que se ha diseñado para facilitar el desarrollo de aplicaciones en un entorno grafico (GUI-GRAPHICAL USER INTERFACE) Como Windows 98,

Transcript of Visual Basic

Page 1: Visual Basic

Introducción.

VISUAL BASIC

Este lenguaje nace del BASIC (Beginner´s All-purpose Symbolic Instruction Code) que fue creado en su versión original en el Dartmouth College, con el propósito de servir a aquellas personas que estaban interesadas en iniciarse en algún lenguaje de programación. Luego de sufrir varias modificaciones, en el año 1978 se estableció el BASIC estándar. La sencillez del lenguaje ganó el desprecio de los programadores avanzados por considerarlo "un lenguaje para principiantes".

Primero fue GW-BASIC, luego se transformó en QuickBASIC y actualmente se lo conoce como Visual Basic y la versión más reciente es la .NET, la que nosotros usaremos se incluye en el paquete Visual Studio 6 de Microsoft. Esta versión combina la sencillez del BASIC con un poderoso lenguaje de programación Visual que juntos permiten desarrollar robustos programas de 32 bits para Windows. Esta fusión de sencillez y la estética permitió ampliar mucho más el monopolio de Microsoft, ya que el lenguaje sólo es compatible con Windows, un sistema operativo de la misma empresa.

Visual Basic ya no es más "un lenguaje para principiantes" sino que es una perfecta alternativa para los programadores de cualquier nivel que deseen desarrollar aplicaciones compatibles con Windows.

En este informe explicaremos algunos términos y/o características de mismo con la finalidad de aprender mas sobre este Programa y manejarlo con facilidad

1. De los fundamentos de programación explique:

1. Es un lenguaje de programación que se ha diseñado para facilitar el desarrollo de aplicaciones en un entorno grafico (GUI-GRAPHICAL USER INTERFACE) Como Windows 98, Windows NT o superior.

2. ¿Qué es Visual Basic?

Diseñador de entorno de datos: Es posible generar, de manera automática, conectividad entre controles y datos mediante la acción de arrastrar y colocar sobre formularios o informes.

Los Objetos Actives son una nueva tecnología de acceso a datos mediante la acción de arrastrar y colocar sobre formularios o informes.

Asistente para formularios: Sirve para generar de manera automática formularios que administran registros de tablas o consultas pertenecientes a una base de datos, hoja de calculo u objeto (ADO-ACTIVE DATA OBJECT)

Page 2: Visual Basic

Asistente para barras de herramientas es factible incluir barras de herramientas es factible incluir barra de herramientas personalizada, donde el usuario selecciona los botones que desea visualizar durante la ejecución.

En las aplicaciones HTML: Se combinan instrucciones de Visual Basic con código HTML para controlar los eventos que se realizan con frecuencia en una pagina web.

La Ventana de Vista de datos proporciona acceso a la estructura de una base de datos. Desde esta también acceso al Diseñador de Consultas y diseñador de Base de datos para administrar y registros.

3. Características de Visual Basic.

Barra de titulo: muestra el nombre del proyecto y del formulario q se está diseñando actualmente

Barra de menús: agrupa los menús despegables que contienes todas las operaciones que pueden llevarse a cabo con Visual Basic 6.0.

Barra de herramientas estándar: contienen los botones que se utilizan con mayor frecuencia cuando se trabaja con un proyecto. Simplifica la elección de opciones de los menús Archivo, Edición, Ver y Ejecutar; además, en el área derecha presenta la ubicación (coordenadas) y el tamaño del objeto seleccionado

Ventana de formulario: es el área donde se diseña la interfaz gráfica, es decir, es donde se inserta electo gráficos, como botones, imágenes, casilla de verificación, cuadros de listas, etc.

Cuadro de herramientas: presenta todos los controles necesarios para diseñar una aplicación, como cuadros de texto, etiquetas, cuadros de listas, botones de comandos, etc.

Ventana de proyecto: muestra los elementos involucrados en el proyecto, como formularios, módulos, controles oxc, etc. Cada elemento puede seleccionarse en forma independiente para su edición.

Ventana de posición del formulario: muestra la ubicación que tendrá el formulario en la pantalla, cuando ejecute la aplicación. Esta ubicación puede cambiarse si se hace clic con el botón izquierdo del mouse.

La Ventana propiedades muestra todas las propiedades del control actualmente seleccionado, en este caso muestra las propiedades del Form1, luego podemos ver que abajo dice "Form1 Form", lo que está en negrita es el nombre del objeto, y lo que le sigue es el tipo de objeto, en este caso es un Formulario (Form)

Page 3: Visual Basic

4. Mencione y Explique las partes del entorno de Visual Basic.5. Mencione y Explique los botones de la barra de herramientas de Visual Basic.

TextBox

Mediante este control podremos realizar tanto la entrada como la salida de datos en nuestras aplicaciones.

No hace falta que indiquemos las coordenadas de la situación del formulario en pantalla, simplemente tendremos que marcar sobre el control de la caja de herramientas y dibujarlo con el tamaño que queramos en nuestro formulario

Label

Este control es también uno de los más utilizados, aunque su utilidad queda restringida a la visualización de datos en el mismo, no permitiendo la introducción de datos por parte del usuario.

CommandButton

Este control es el típico botón que aparece en todas las aplicaciones y que al hacer click sobre él nos permite realizar alguna operación concreta, normalmente Aceptar o Cancelar. Aunque según el código que le asociemos podremos realizar las operaciones que queramos.

OptionButton

Este control nos permite elegir una opción entre varias de las que se nos plantean. Cada opción será un control optionbutton diferente.

Bloquear los Controles

Page 4: Visual Basic

  

Cuando estén situados los controles en el formulario se pueden bloquear para que no puedan moverse de forma accidental.Para esto deberemos pulsar en la barra de herramientas:

Cuando actives este botón y mientras no desbloquees los controles utilizando la misma opción no se podrán mover ninguno de los controles del formulario activo.Sin embargo en si abres otro formulario que no tenga los controles bloqueados si se podrán mover. Si añades más controles a un formulario bloqueado estos quedan bloqueados automáticamente

 

Tiene la siguiente forma:

Un control Frame proporciona un agrupamiento identificable para controles. También puede utilizar un Frame para subdividir un formulario funcionalmente por ejemplo, para separar grupos de controles OptionButton.

CHECK BUTTON Y OPTION BUTTON (BOTONES DE ELECCION Y OPCION)

Se obtienen directamente de la caja de herramientas.

Page 5: Visual Basic

Dada la similitud de ambos controles, se comentan conjuntamente.

El control CheckBox, o casilla de verificación, permite elegir una opción (activada / desactivada, True/False) que el usuario puede establecer o anular haciendo click. Una X en una casilla de verificación indica que está seleccionada, activada, o con valor True. Cada casilla de verificación es independiente de las demás que puedan existir en el formulario, pudiendo tomar cada una de ellas el valor True o False, a voluntad del operador.

Un control OptionButton muestra una opción que se puede activar o desactivar, pero con dependencia del estado de otros controles OptionButton que existan en el formulario.

Generalmente, los controles OptionButton se utilizan en un grupo de opciones para mostrar opciones de las cuales el usuario sólo puede seleccionar una. Los controles OptionButton se agrupan dibujándolos dentro de un contenedor como un control Frame, un control PictureBox o un formulario. Para agrupar controles OptionButton en un Frame o PictureBox, dibuje en primer lugar el Frame o PictureBox y, a continuación, dibuje dentro los controles OptionButton. Todos los controles OptionButton que están dentro del mismo contenedor actúan como un solo grupo, e independientes de los controles OptionButton de otros grupos distintos.

Aunque puede parecer que los controles OptionButton y CheckBox funcionan de forma similar, hay una diferencia importante: Cuando un usuario selecciona un OptionButton, los otros controles del mismo grupo OptionButton dejan de estas disponibles automáticamente. Por contraste, se puede seleccionar cualquier número de controles CheckBox.

LIST BOX Y COMBO BOX

Estos dos controles, debido a su similitud, se estudian conjuntamente.

Se obtienen directamente de la caja de herramientas:

Page 6: Visual Basic

Un control ListBox muestra una lista de elementos en la que el usuario puede seleccionar uno o más. Si el número de elementos supera el número que puede mostrarse, se agregará automáticamente una barra de desplazamiento al control ListBox.

Un control ComboBox combina las características de un control TextBox y un control ListBox. Los usuarios pueden introducir información en la parte del cuadro de texto y seleccionar un elemento en la parte de cuadro de lista del control. En resumen, un ComboBox es la combinación de un ListBox, que se comporta como si de un ListBox se tratase, y de un TextBox, con comportamiento análogo a un TextBox sencillo, con la particularidad aquí de que el texto se le puede introducir por teclado, o elegir uno de los que figuran en la parte ListBox del Combo.

CONTROLES HScrollBar y VScrollBar

Son dos controles similares, para introducir un dato cuasi-analógico en una aplicación. Se toman directamente de la caja de herramientas, y tienen un aspecto parecido al de un control de volumen de un equipo de música. El HScrollBar está en posición horizontal, y el VScrollBar en posición vertical.

Mediante estos controles se pueden introducir datos variando la posición del cursor.

TIMER TEMPORIZADOR

Este objeto permite establecer temporizaciones. Presenta una novedad respecto a los controles estudiados hasta ahora. El control Timer solamente se ve durante el tiempo de diseño. En tiempo de ejecución, el control permanece invisible.

La temporización producida por el Timer es independiente de la velocidad de trabajo del ordenador. (Casi independiente. El timer no es un reloj exacto, pero se le parece)

Se toma directamente de la caja de herramientas, y tiene el aspecto siguiente:

Page 7: Visual Basic

SHAPE

Se toma directamente de la caja de herramientas:

 

Shape es un control gráfico que se muestra como un rectángulo, un cuadrado, una elipse, un círculo, un rectángulo redondeado o un cuadrado redondeado.

Utilice controles Shape en tiempo de diseño en lugar o además de invocar los métodos Circle y Line en tiempo de ejecución. Puede dibujar un control Shape en un contenedor, pero no puede actuar como contenedor. (Esto quiere decir que un control Shape nunca le servirá, por ejemplo, para albergar varios OptionButton y pretender que sean independientes de otros controles OptionButton que se encuentren fuera del control Shape.

Este control no tiene Procedimientos. En realidad, solamente sirve para mostrar un determinado gráfico, envolver gráficamente a otros controles, pero no tiene ninguna aplicación en cuanto a programa. Es un " adorno" para sus aplicaciones.

LINE

Se toma directamente de la caja de herramientas

Page 8: Visual Basic

Line, al igual que Shape, es un control gráfico que solamente sirve para poner una línea en un formulario. Del mismo modo, no tiene procedimientos, por lo que no sirve para aportar código al programa. Solo sirve para aportar una característica gráfica, es un adorno.

CONTROL GAUGE

Este control presenta una información numérica de forma gráfica, bien como un display lineal (típico por ejemplo en ecualizadores de audio), o como una aguja. No está normalmente en la caja de herramientas, por lo que hay que traerla desde los Controles Personalizados (Menú desplegable de Herramientas) Se denomina MicroHelp Gauge Control. El archivo que lo contiene se denomina GAUGE16.OCX, 16 bits

 

 

Mediante este control, podemos presentar una magnitud numérica de una forma cuasi-analógica. Podríamos decir que es un control similar al HScrollBar, que en vez de meter información a la aplicación, la presenta.

Este control puede servir, por ejemplo, para presentar el tanto por ciento de ejecución de una tarea, como elemento tranquilizante. Puede presentar el nivel de un depósito de agua, etc.

Presenta las dos formas siguientes:

En la figura puede verse un Gauge de aguja, uno de barra horizontal y otro de barra vertical. Para mejorar la presentación, el Gauge permite poner un gráfico como fondo, cambiar el color de la barra, color de fondo, etc.

Page 9: Visual Basic

El control Gauge crea medidores definidos por el usuario, que puede elegir entre los estilos lineales (relleno) o de aguja.

Nota para la distribución Cuando cree y distribuya aplicaciones con controles Gauge, tendrá que instalar el archivo apropiado en el subdirectorio SYSTEM de Windows del cliente. El Kit para instalación que incluye Visual Basic, le proporciona herramientas para escribir los programas que instalan las aplicaciones correctamente.

El CommonDialog es un control del que se libran muy pocas aplicaciones. Dada la importancia de este control, se le dedica un capitulo único en esta Guía del Estudiante.

CUADRO DE DIALOGO CommonDialog

Normalmente se encuentra en la caja de herramientas

 

Este control no se presenta en tiempo de diseño mas que con un simple icono:

 

El cuadro de diálogo, CommonDialog se utiliza para varias funciones:

Abrir Ficheros

Guardar Ficheros

Elegir colores

Seleccionar Impresora

Seleccionar Fuentes Mostrar el fichero de Ayuda

Page 10: Visual Basic

En realidad el cuadro de diálogo permite conocer datos con los cuales, y mediante el código adecuado, abriremos o guardaremos ficheros, elegiremos colores o seleccionaremos fuentes. Es decir, el CommonDialog NO realiza mas funciones que mostrar ficheros existentes, fuentes disponibles, colores, para que, mediante código, abramos esos ficheros o usemos una determinada fuente.

Dependiendo de la aplicación para la que vaya a usarse se deberá activar de distintas formas. Si el cuadro de diálogo se va a usar para seleccionar la impresora y para otras aplicaciones, es recomendable usar uno exclusivamente para seleccionar la impresora.

Esta última recomendación se debe a que, para el control de la impresora, el CommonDialog SI realiza las funciones de selección de impresora predeterminada. Esta diferencia operativa hace que si usamos el mismo CommonDialog para seleccionar impresora y abrir ficheros, por ejemplo, se "cuelgue" el CommonDialog.

5. Defina los siguientes términos.6. Eventos: es una acción como hacer clic, doble clic, presionar una tecla, mover el

puntero del mouse, etc. Que el usuario debe realizar para que un objeto ejecute una acción determinada cada control responde a diferentes eventos, algunos de ellos tienen características comunes. Los eventos pueden Visualizarse en la ventana de código.

Métodos: Son procedimientos definidos en Visual Basic para realizar operaciones especificas sobre los objetos (Controles o Formularios)

Controles: Son los objetos que conforman la interfaz grafica de un programa;

a través de ellos, un usuario interactúa con la aplicación. Sus características

pueden cambiarse por medio de la ventana propiedades

Proyecto:

Propiedades: Son los datos que hacen referencia a un objeto o formulario.Ejemplo : Color de fondo del formulario, Fuente de texto de un TextBox.

Objetos: Un objeto es una entidad que tiene asociado un conjunto de métodos, eventos y propiedades. Hay muchas clases de objetos, y por tanto, puede llegar a haber tantos métodos, eventos y propiedades distintas como objetos diferentes. Ejemplo : Una caja de texto (TextBox) en la cual podemos escribir cualquier línea es un objeto.

Clases: Una clase no es nada mas que un Objeto, este objeto, tiene propiedades, funciones y métodos. Para empezar ahora la creación de propiedades si se utiliza Property Let y Property Get; la diferencia es casi nada, inclusive podría decir que una clase en visual basic, es casi lo mismo que un control, pero ahora nace una

Page 11: Visual Basic

nueva pregunta, cuando utilizar un control y cuando utilizar una clase, bueno la opinión que voy a dar es desde mi perspectiva.

Módulo: Un proyecto Visual Basic no sólo está compuesto de Formularios, sino también de lo que se denominan módulos.Un módulo es un fichero Visual Basic donde escribimos parte del código de nuestro programa, y digo parte, porque puede haber código en el formulario también.

7. De los fundamentos de programación explique:

Módulos de Control:

Módulos de Formularios:

Módulos de Clases

Módulos Estándar

Editor de Códigos:

Variable: Dim: Al declarar una variable con esta palabra estamos diciendo que la variable sea local al ámbito en que se declara. Puede ser dentro de un procedimiento o dentro de un formulario, de esta forma no sería accesible desde los demás procedimientos o formularios.

Public: Las variables declaradas serán publicas y podrán estar accesibles desde todos los formularios de la aplicación. Para conseguirlo tendremos que declararlas en un módulo de código, no en la sección declarations de cualquier formulario de los que conste la aplicación. Para crear un módulo de código en el menú principal de Visual Basic marcamos en INSERT/MODULE y aparecerá junto a los demás formularios de la ventana de proyecto aunque con un icono distinto indicando que se trata de un módulo de código.

Static: Con esta forma de declarar variables conseguiremos que las variables locales no se creen y se destruyan al entrar y salir de los procedimientos donde fueron declaradas sino que se mantenga su valor durante todo el periodo de ejecución de la aplicación. De esta forma a entrar en algún procedimiento las variables recuerdan el valor que tenían cuando se salió de él.

 

TIPOS DE VARIABLES

TIPO COMENTARIO

BOOLEAN Sólo admite 2 valores TRUE o FALSE

BYTE admite valores entre 0 y 255

INTEGER admite valores entre -32768 y 32767

Page 12: Visual Basic

LONG admite valores entre -2.147.483.648 y 2.147.483.647

SINGLE admite valores decimales con precisión simple

DOUBLE admite valores decimales de doble precisión

CURRENCY válido para valores de tipo moneda

STRING cadenas de caracteres

DATE fechas, permite operar con ellas

 

Constante: Declaración de constantes que pueden ser usadas en cualquier punto en lugar de su valor, permitiendo cambiarlo cuando sea necesario, sin tener que cambiarlo en todos los sitios en que se utiliza. La expresión no puede utilizar llamadas a funciones, pues la constante se calcula en tiempo de compilación, no en tiempo de ejecución.

VISUAL BASIC

Visual Basic es un lenguaje de programación desarrollado por Alan Cooper para Microsoft. El lenguaje de programación es un dialecto de BASIC, con importantes agregados. Su primera versión fue presentada en 1991, con la intención de simplificar la programación utilizando un ambiente de desarrollo completamente gráfico que facilitara la creación de interfaces gráficas y, en cierta medida, también la programación misma. Desde el 2001 Microsoft ha propuesto abandonar el desarrollo basado en la API Win32 y pasar a trabajar sobre un framework o marco común de librerías independiente de la versión del sistema operativo, .NET Framework, a través de Visual Basic .NET (y otros lenguajes como C Sharp (C#) de fácil transición de código entre ellos).

Visual Basic (Visual Studio) constituye un IDE (entorno de desarrollo integrado o en inglés Integrated Development Enviroment) que ha sido empaquetado como un programa de

Page 13: Visual Basic

aplicación, es decir, consiste en un editor de código (programa donde se escribe el código fuente), un depurador (programa que corrige errores en el código fuente para que pueda ser bien compilado), un compilador (programa que traduce el código fuente a lenguaje de máquina), y un constructor de interfaz gráfica o GUI (es una forma de programar en la que no es necesario escribir el código para la parte gráfica del programa, sino que se puede hacer de forma visual).

COMPILADOR

El compilador de Visual Basic x.0 genera ejecutables que requieren una DLL para que funcionen, en algunos casos llamada MSVBVMxy.DLL (acrónimo de "MicroSoft Visual Basic Virtual Machine x.y", siendo x.y la versión) y en otros VBRUNXXX.DLL ("Visual Basic Runtime X.XX"), que provee todas las funciones implementadas en el lenguaje. Además existen un gran número de bibliotecas (DLL) que facilitan el acceso a muchas funciones del sistema operativo y la integración con otras aplicaciones. Actualmente la mayoria de estas bibliotecas y componentes adicionales para ejecutar los programas desarrollados en Visual Basic 6.0 vienen de serie en las versiones de Windows posteriores a XP.

En versiones anteriores era necesario instalar la librería en tiempo de ejecución (runtime) y las bibliotecas comunes se podian descargar del sitio web de (MSDN).

Su entorno de desarrollo es muy similar al de otros lenguajes e IDE's.

Se compone principalmente de su barra de herramientas y menús que se pueden personalizar con prácticamente la completa totalidad de los comandos del IDE a necesidad.

El espacio de trabajo donde se muestran todas las ventanas del proyecto, las vistas de código de modulos y objetos, y las vistas de diseño de formularios y componentes.

El Cuadro de herramientas (por defecto a la izquierda) contiene los controles con los que componen las ventanas de nuestra aplicación. Por defecto disponemos los controles básicos:

o (PictureBox) Caja de Imageno (Label) Etiquetao (TextBox) Caja de textoo (Frame) Marcoo (CommandButton) Botón de comandoo (CheckBox) Casilla de verificacióno (OptionButton) Botón de opcióno (ComboBox) Lista desplegableo (ListBox) Listao (HScrollBar) Barra de desplazamiento horizontalo (VScrollBar) Barra de desplazamiento verticalo (Timer) Temporizadoro (DriveListBox) Lista de unidades de disco

Page 14: Visual Basic

o (DirListBox) Lista de directorioso (FileListBox) Lista de archivoso (Shape) Figurao (Line) Líneao (Image) Imageno (Data) Conexión a origen de datoso (OLE) Contenedor de documentos embebidos compatibles con Object

Linking and Embedding

Se pueden agregar todo tipo de controles de terceros, una gran cantidad de ellos de serie con la instalación de Visual Basic 6.0, que vienen embebidos dentro de archivos de extensión *.OCX.

El panel lateral derecho contiene dos vistas principales: o El Explorador de Proyectos, que muestra todos los elementos que

componen nuestro proyecto o grupos de proyectos (formularios, interfaz de controles, módulos de código, modulos de clase, etc...)

o El Panel de propiedades, donde se muestran todos los atributos de los controles de nuestros formularios o la información de modulos clase y formularios entre otros muchos.

La Ventana de inmediato (por defecto en la parte inferior aunque puede no estar visible. Utilizar Ctrl+G mostrar la ventana). Esta ventana resulta una herramienta muy útil a la hora de depurar código o incluso de hacer pruebas rápidas ya que permite imprimir mensajes de texto desde nuestro código y ejecutar sentencias simples de código (solo sentencias que se puedan representar en una sola línea, no permite bloques) que puede ser desde código de nuestra propia aplicación, por ejemplo consultar el valor de una variable o llamar a un método declarado en el modulo que se esta depurando, así como ejecutar código al vuelo, esto viene a ser por ejemplo probar cosas como:

?2+2

Al ejecutarlo devolvería el resultado de la operación, pudiendo usar variables del código de la aplicación, o sentencias de código como:

Msgbox "Prueba de cuadro de mensaje de error.", vbCritical, "Titulo del mensaje"

A la hora de depurar errores es útil para consultar el error en cuestión:

?Err.Number

Versiones

Las versiones de Visual Basic para Windows son muy conocidas, pero existe una versión de Microsoft Visual Basic 1.0 para MS-DOS (ediciones Profesional y Estándar) menos

Page 15: Visual Basic

difundida y que data de 1992. Era un entorno que, aunque en modo texto, incluía un diseñador de formularios en el que se podían arrastrar y soltar distintos controles.

La última versión sólo para 16 bits, la 3.0,no incluía una detallada biblioteca de componentes para toda clase de usos. Durante la transición de Windows 3.11 a Windows 95, apareció la versión 4.0, que podía generar programas de 16 y 32 bits a partir de un mismo código fuente, a costa de un gran aumento en el tamaño de los archivos "runtime" necesarios. Además, se sustituyen los controles VBX por los nuevos OCX. Con la versión 5.0,estuvo a punto de implementar por primera vez la posibilidad de compilar a código nativo, obteniendo una mejora de rendimiento considerable. Tanto esta como la posterior 6.0 soportaban características propias de los lenguajes orientados a objetos, aunque careciendo de algunos ítems importantes como la herencia y la sobrecarga. La versión 6.0 continua utilizándose masivamente y es casi compatible prácticamente al 100% con las últimas versiones de Windows como Vista y Windows 7.

Las versiones actuales de Visual Basic se basan en la plataforma .NET, que se desligan de las anteriores versiones.

Cabe mencionar que aunque menos conocido, existió también una versión gratuita de Visual Basic 5.0 dedicada en su práctica a desarrollo de controles y componentes, su nombre en concreto era Microsoft Visual Basic 5.0 Control Creation Edition (Visual Basic 5 CCE). También hubo versiones orientadas al desarrollo de aplicaciones para dispositivos móviles basados en Windows CE y Pocket PC, conocido como eMbedded Visual Basic.

Ventajas

Es un lenguaje RAD. Posee una curva de aprendizaje muy rápida. Integra el diseño e implementación de formularios de Windows. Permite usar con suma facilidad la plataforma de los sistemas Windows dado que

tiene acceso prácticamente total a la API de Windows incluidas librerías actuales. El código en Visual Basic es fácilmente migrable a otros lenguajes. Es un lenguaje muy extendido por lo que resulta fácil encontrar información,

documentación y fuentes para los proyectos. Fácilmente extensible mediante librerías DLL y componentes ActiveX de otros

lenguajes. Posibilidad de añadir soporte para ejecución de scripts, VBScript o JScript, en las

aplicaciones mediante Microsoft Script Control. Acceso a la API multimedia de DirectX (versiones 7 y 8). También esta disponible,

de forma no oficial, un componente para trabajar con OpenGL 1.1: VBOpenGL type library

Existe una versión integrada en las aplicaciones de Office, versiones tanto Windows como Mac, que permite programar macros para extender y automatizar funcionalidades en documentos como por ejemplo una hoja de calculo de EXCEL o una base de datos ACCESS (VBA)

Page 16: Visual Basic

Es un entorno perfecto para realizar pequeños prototipos rápidos de ideas.

Inconvenientes

Sin soporte oficial de Microsoft desde el 4 de abril de 2008 (aunque existe mucha documentación disponible en el sitio de MSDN incluidas descargas de Service Packs, paquetes de dependencias mínimas y similares en el sitio web de Microsoft).

No es multiplataforma (Sin embargo se pueden usar emuladores e interpretes para correrlos en otras plataformas).

Por defecto permite la programación sin declaración de variables. (que puede ser sencillamente corregida escribiendo la frase Option Explicit en el encabezado de cada módulo de código, en cuyo caso será menester declarar todas las variables a utilizar, lo que a la postre genera código más estable y seguro).

No permite programación a bajo nivel ni incrustar secciones de código en ASM (aunque es posible ejecutar código ASM mediante pequeños hacks como este).

Sólo soporta librerías dinámicas (DLL) que usen la convención de llamadas _stdcall y componentes y librerías ActiveX.

Es un lenguaje basado en objetos pero no implementa por completo la filosofía de Orientación a Objetos (véase POO).

No permite la sobrecarga de operadores ni métodos. No permite nombres de espacio (véase namespace). No soporta el punteros a memoria salvo en algunas acciones concretas, como por

ejemplo pasar la dirección de memoria de una función como argumento (operador AddressOf).

No soporta tratamiento de procesos como parte del lenguaje. No incluye operadores de desplazamiento de bits como parte del lenguaje. No permite el manejo de memoria dinámica, punteros, etc. como parte del lenguaje. No soporta el tratamiento de excepciones. Su tratamiento de errores se basa en la

captura de mensajes y desvió del flujo de ejecución de la forma tradicional del BASIC (On Error Goto <etiqueta/numero línea>).

No controla todos los errores de conversión de tipos dado que en muchas ocasiones hace conversiones al vuelo (sobre todo al usar variables de tipo Variant).

Aunque existen opciones avanzadas en el compilador para desactivar los controladores de desbordamiento de enteros o las comprobaciones de límites en matrices entre otros (presumiblemente para optimizar y lograr algo de rendimiento) no es seguro del todo dado que hay más posibilidades de generar una excepción grave no controlada por el interprete (y por consiguiente el programador) o un memory leak haciendo el programa altamente inestable e impredecible.

No tiene instrucciones de preprocesamiento. El tratamiento de mensajes de Windows es básico e indirecto. La gran gama de controles incorporados son, sin embargo en algunos casos, muy

generales, lo que lleva a tener que reprogramar nuevos controles para una necesidad concreta de la aplicación. Esto cambia radicalmente en Visual Basic .NET donde es posible reprogramar y mejorar o reutilizar los controles existentes.

El depurador no es demasiado flexible ni cómodo en ciertas situaciones.

Page 17: Visual Basic

Los controles personalizados no mejoran la potencia de la API de Windows, y en determinados casos acudir a ésta será el único modo de conseguir el control personalizado deseado.

No soporta correctamente la programación multihilo haciendo muy inestable su ejecución inclusive desde el propio entorno de desarrollo.

Su fuerte dependencia de librerías y componentes ActiveX que requieren de privilegios de administrador para poder instalar las aplicaciones (existen opciones de terceras aplicaciones para generar ejecutables independientes que embeben las dependencias en el propio código del ejecutable, por ejemplo: Molebox o Thinstall/VMware Thinapp).

Entornos de desarrollo

Existe un único entorno de desarrollo para Visual Basic, desarrollado por Microsoft:

Microsoft Visual Basic x.0 para versiones desde la 1.0 hasta la 6.0, (con las diferencias entre las versiones desde la 1.0 (MS-DOS/Windows 3.1) hasta la 3.0 (16 bits, Windows 3.1/95) y las de la 4.0 (16/32 bits, Windows 3.1/95/NT) hasta la 6.0 (32 bits, Windows 9x/Me/NT/2000/XP/2003 server/Vista/2008 server/7)

Alternativas multiplataforma o externas a Windows

Existen múltiples alternativas dentro y fuera de Windows que intentan imitar a este lenguaje y su mecánica de desarrollo. El más conocido y popular es Gambas:

Gambas es un proyecto libre para implementar programación visual con Basic en GNU/Linux. Está derivado principalmente de Visual Basic, adaptándose a partir de su lenguaje y su entorno de desarrollo, para implementar su propia variante, parcialmente compatible con Visual Basic, aportando y enriqueciendo con las oportunidades que brinda GNU/Linux.

Otras opciones conocidas son Real Basic o PureBasic que permiten desarrollar bajo Windows, Linux, Mac OS e independientemente, PureBasic permite desarrollar también para Amiga OS. A diferencia de Gambas, estas son soluciones comerciales y no son libres.

Page 18: Visual Basic

SCADA:

SCADA, acrónimo de Supervisory Control and Data Acquisition (Supervisión, Control y Adquisición de Datos).

Definición [editar]

Es una aplicación de software especialmente diseñada para funcionar sobre ordenadores (computadores) en el control de producción, proporcionando comunicación con los dispositivos de campo (controladores autónomos) y controlando el proceso de forma automática desde la pantalla del ordenador. También provee de toda la información que se genera en el proceso productivo a diversos usuarios, tanto del mismo nivel como de otros

Page 19: Visual Basic

usuarios supervisores dentro de la empresa (supervisión, control calidad, control de producción, almacenamiento de datos, etc.).

La realimentación, también denominada retroalimentación o feedback es, en una organización, el proceso de compartir observaciones, preocupaciones y sugerencias, con la intención de recabar información, a nivel individual o colectivo, para mejorar o modificar diversos aspectos del funcionamiento de una organización. La realimentación tiene que ser bidireccional de modo que la mejora continua sea posible, en el escalafón jerárquico, de arriba para abajo y de abajo para arriba.

En teoría de la cibernética y de control, la realimentación es un proceso por el que una cierta proporción de la señal de salida de un sistema se redirige de nuevo a la entrada. Esto es de uso frecuente para controlar el comportamiento dinámico del sistema. Los ejemplos de la realimentación se pueden encontrar en la mayoría de los sistemas complejos, tales como ingeniería, arquitectura, economía, y biología. Arturo Rosenblueth, investigador mexicano y médico en cuyo seminaro de 1943 hizo una ponencia llamada “Behavior, Purpose and Teleology“ ("comportamiento, propósito y teleología"), de acuerdo con Norbert Wiener, fijó las bases para la nueva ciencia de la cibernética y propuso que el comportamiento controlado por la realimentación negativa, aplicada a un animal, al ser humano o a las máquinas era un principio determinante y directivo, en la naturaleza o en las creaciones humanas. Contenido [mostrar]

* 1 Lazo abierto y cerrado * 2 Visión general * 3 Tipos de realimentación o 3.1 Realimentación negativa o 3.2 Ejemplos o 3.3 Realimentación positiva o 3.4 Ejemplos * 4 Véase también

Lazo abierto y cerrado [editar]

Existen dos tipos de sistemas principalmente. Los no realimentados o de lazo abierto y los realimentados o de lazo cerrado. Los sistemas de control realimentados se llaman de lazo cerrado. El lazo cerrado funciona de tal manera que hace que el sistema se realimente, la salida vuelve al principio para que analice la diferencia y en una segunda opción ajuste mas, así hasta que el error es 0. Cualquier concepto básico que tenga como naturaleza una cantidad controlada como por ejemplo temperatura, velocidad, presión, caudal, fuerza, posición, y cuplas, etc. son parámetros de control de lazo cerrado. Los sistemas de lazo abierto no se comparan a la variable controlada con una entrada de referencia. Cada ajuste de entrada determina una posición de funcionamiento fijo en los elementos de control. Visión general [editar]

La realimentación es un mecanismo, un proceso cuya señal se mueve dentro de un sistema, y vuelve al principio de éste sistema ella misma como en un bucle. Este bucle se llama "bucle de realimentación". En un sistema de control, éste tiene entradas y salidas del

Page 20: Visual Basic

sistema; cuando parte de la señal de salida del sistema, vuelve de nuevo al sistema como parte de su entrada, a esto se le llama"realimentación" o retroalimentación.

La realimentación y la autorregulación están íntimamente relacionadas. La realimentación negativa, que es la más común, ayuda a mantener estabilidad en un sistema a pesar de los cambios externos. Se relaciona con la homeostasis. La realimentación positiva amplifica las posibilidades creativas (evolución, cambio de metas); es la condición necesaria para incrementar los cambios, la evolución, o el crecimiento. Da al sistema la capacidad de tener acceso a nuevos puntos del equilibrio.

Por ejemplo, en un organismo vivo, la más potente realimentación positiva, es la proporcionada por la autoexcitation rápida de elementos del sistemas endocrino y nervioso (particularmente, como respuesta a condiciones de estrés) y desempeña un papel dominante en la regulación de la morfogenesis, del crecimiento, y del desarrollo de los órganos. Todos estos procesos son con el fin de salir rápidamente del estado inicial. La homeostasis es especialmente visible en los sistemas nerviosos y endocrinos cuando se considera esto a un nivel orgánico. Tipos de realimentación [editar]

* realimentación negativa: la cual tiende a reducir la señal de salida o a reducir la actividad. * realimentación positiva: La cual tiende a aumentar la señal de salida, o actividad * realimentación bipolar: La cual puede aumentar o disminuir la señal o actividad de salida.

La realimentación bipolar está presente en muchos sistemas naturales y humanos. De hecho generalmente la realimentación es bipolar es decir, positivo y negativo según las condiciones medioambientales, que, por su diversidad, producen respuestas sinérgicas y antagónicas como respuesta adaptativa de cualquier sistema. Realimentación negativa [editar] Artículo principal: Realimentación negativa

Es la más utilizada en sistemas de control Se dice que un sistema está retroalimentado negativamente cuando tiende a estabilizarse, es decir cuando nos vamos acercando a la orden de consigna hasta llegar a ella. Ejemplos [editar]

* Un automóvil conducido por una persona en principio es un sistema realimentado negativamente; ya que si la velocidad excede la deseada, como por ejemplo en una bajada, se reduce la presión sobre el pedal, y si es inferior a ella, como por ejemplo en una subida, aumenta la presión, aumentando por lo tanto la velocidad del automóvil. * Un sistema de calefacción está realimentado negativamente, ya que si la temperatura excede la deseada la calefacción se apagará o bajará de potencia, mientras que si no la alcanza aumentará de fuerza o seguirá funcionando.

Realimentación positiva [editar] Artículo principal: Realimentación positiva

Es un mecanismo de realimentación por el cual una variación en la salida produce un efecto dentro del sistema, que refuerza esa tasa de cambio. Por lo general esto hace que el sistema

Page 21: Visual Basic

no llegue a un punto de equilibrio si no más bien a uno de saturación. Es un estimulo constante. Ejemplos [editar]

* En un sistema electrónico. Los dispositivos semiconductores conducen mejor la corriente cuanto mayor sea su temperatura. Si éstos se calientan en exceso, conducirán mejor, por lo que la corriente que los atraviese será mayor porque se seguirán calentando hasta su destrucción si no se evita con algún otro dispositivo que límite o impida el paso de corriente. * Si intercambiamos conectándose una caldera (calentador) a un sistema preparado para aire acondicionado (frío), cuando la temperatura suba, el sistema intentará bajarla (se activará) a fin de llegar a la temperatura de consigna, que es más baja, pero encenderá la caldera en lugar del aire acondicionado, por lo que la temperatura subirá aún más en vez de estabilizarse, lo que volverá a provocar que la caldera siga funcionando cada vez con más fuerza.

Comprende todas aquellas soluciones de aplicación para referirse a la captura de información de un proceso o planta, no necesariamente industrial, para que, con esta información, sea posible realizar una serie de análisis o estudios con los que se pueden obtener valiosos indicadores que permitan una retroalimentación sobre un operador o sobre el propio proceso, tales como:

Indicadores sin retroalimentación inherente (no afectan al proceso, sólo al operador): o Estado actual del proceso. Valores instantáneos;o Desviación o deriva del proceso. Evolución histórica y acumulada;

Indicadores con retroalimentación inherente (afectan al proceso, después al operador): o Generación de alarmas;o HMI Human Machine Interface (Interfaces hombre-máquina);o Toma de decisiones:

Mediante operatoria humana; Automática (mediante la utilización de sistemas basados en el

conocimiento o sistemas expertos).

Esquema de un sistema típico [editar]

Page 22: Visual Basic

Este esquema es un ejemplo de la aplicación del sistema SCADA en áreas industriales. Éstas áreas pueden ser:

Monitorizar procesos químicos, físicos o de transporte en sistemas de suministro de agua, para controlar la generación y distribución de energía eléctrica, de gas o en oleoductos y otros procesos de distribución.

Gestión de la producción (facilita la programación de la fabricación). Mantenimiento (proporciona magnitudes de interés tales para evaluar y determinar

modos de fallo, MTBF, índices de Fiabilidad, entre otros). Control de Calidad (proporciona de manera automatizada los datos necesarios para

calcular índices de estabilidad de la producción CP y CPk, tolerancias, índice de piezas NOK/OK, etc.

Administración (actualmente pueden enlazarse estos datos del SCADA con un servidor ERP (Enterprise Resource Planning o sistema de planificación de recursos empresariales), e integrarse como un módulo más).

Tratamiento histórico de información (mediante su incorporación en bases de datos).

Definiciones del Sistema [editar]

Supervisión: acto de observar el trabajo o tareas de otro (individuo o máquina) que puede no conocer el tema en profundidad, supervisar no significa el control sobre el otro, sino el guiarlo en un contexto de trabajo, profesional o personal, es decir con fines correctivos y/o de modificación.

Page 23: Visual Basic

Automática: ciencia tecnológica que busca la incorporación de elementos de ejecución autónoma que emulan el comportamiento humano o incluso superior.

Principales familias: autómatas, robots, controles de movimiento, adquisición de datos, visión artificial, etc.

PLC: Programmable Logic Controller, Controlador Lógico Programable.

PAC: Programmable Automation Controller, Controlador de Automatización Programable.

Un sistema SCADA incluye un hardware de señal de entrada y salida, controladores, interfaz hombre-máquina (HMI), redes, comunicaciones, base de datos y software.

El término SCADA usualmente se refiere a un sistema central que monitoriza y controla un sitio completo o una parte de un sitio que nos interesa controlar (el control puede ser sobre máquinas en general, depósitos, bombas, etc.) o finalmente un sistema que se extiende sobre una gran distancia (kilómetros / millas). La mayor parte del control del sitio es en realidad realizada automáticamente por una Unidad Terminal Remota (UTR), por un Controlador Lógico Programable (PLC) y más actualmente por un Controlador Automático Programable (PAC). Las funciones de control del servidor están casi siempre restringidas a reajustes básicos del sitio o capacidades de nivel de supervisión. Por ejemplo un PLC puede controlar el flujo de agua fría a través de un proceso, pero un sistema SCADA puede permitirle a un operador cambiar el punto de consigna (set point) de control para el flujo, y permitirá grabar y mostrar cualquier condición de alarma como la pérdida de un flujo o una alta temperatura. La realimentación del lazo de control es cerrada a través del RTU o el PLC; el sistema SCADA monitoriza el desempeño general de dicho lazo. El sistema SCADA también puede mostrar gráficas con históricos, tablas con alarmas y eventos, permisos y accesos de los usuarios...

Necesidades de la supervisión de procesos:

- Limitaciones de la visualización de los sistemas de adquisición y control.

- Control software. Cierre de lazo del control.

- Recoger, almacenar y visualizar la información.

Interfaz humano-máquina [editar]

Una interfaz Hombre - Máquina o HMI ("Human Machine Interface") es el aparato que presenta los datos a un operador (humano) y a través del cual éste controla el proceso.

Los sistemas HMI podemos pensarlos como una "ventana de un proceso". Esta ventana puede estar en dispositivos especiales como paneles de operador o en un ordenador. Los sistemas HMI en ordenadores se los conoce también como software HMI o de monitorización y control de supervisión. Las señales del proceso son conducidas al HMI

Page 24: Visual Basic

por medio de dispositivos como tarjetas de entrada/salida en el ordenador, PLC's (Controladores lógicos programables), PACs (Controlador de automatización programable ), RTU (Unidades remotas de I/O) o DRIVER's (Variadores de velocidad de motores). Todos estos dispositivos deben tener una comunicación que entienda el HMI.

La industria de HMI nació esencialmente de la necesidad de estandarizar la manera de monitorizar y de controlar múltiples sistemas remotos, PLCs y otros mecanismos de control. Aunque un PLC realiza automáticamente un control pre-programado sobre un proceso, normalmente se distribuyen a lo largo de toda la planta, haciendo difícil recoger los datos de manera manual, los sistemas SCADA lo hacen de manera automática. Históricamente los PLC no tienen una manera estándar de presentar la información al operador. La obtención de los datos por el sistema SCADA parte desde el PLC o desde otros controladores y se realiza por medio de algún tipo de red, posteriormente esta información es combinada y formateada. Un HMI puede tener también vínculos con una base de datos para proporcionar las tendencias, los datos de diagnóstico y manejo de la información así como un cronograma de procedimientos de mantenimiento, información logística, esquemas detallados para un sensor o máquina en particular, incluso sistemas expertos con guía de resolución de problemas. Desde cerca de 1998, virtualmente todos los productores principales de PLC ofrecen integración con sistemas HMI/SCADA, muchos de ellos usan protocolos de comunicaciones abiertos y no propietarios. Numerosos paquetes de HMI/SCADA de terceros ofrecen compatibilidad incorporada con la mayoría de PLCs, incluyendo la entrada al mercado de ingenieros mecánicos, eléctricos y técnicos para configurar estas interfaces por sí mismos, sin la necesidad de un programa hecho a medida escrito por un desarrollador de software.

SCADA es popular debido a esta compatibilidad y seguridad. Ésta se usa desde aplicaciones pequeñas, como controladores de temperatura en un espacio, hasta aplicaciones muy grandes como el control de plantas nucleares.

Soluciones de Hardware [editar]

La solución de SCADA a menudo tiene componentes de sistemas de control distribuido, DCS (Distribuited Control System). El uso de RTUs o PLCs o últimamente PACs sin involucrar computadoras maestras está aumentando, los cuales son autónomos ejecutando procesos de lógica simple. Frecuentemente se usa un lenguaje de programación funcional para crear programas que corran en estos RTUs y PLCs, siempre siguiendo los estándares de la norma IEC 61131-3. La complejidad y la naturaleza de este tipo de programación hace que los programadores necesiten cierta especialización y conocimiento sobre los actuadores que van a programar. Aunque la programación de estos elementos es ligeramente distinta a la programación tradicional, también se usan lenguajes que establecen procedimientos, como pueden ser FORTRAN, C o Ada95. Esto les permite a los ingenieros de sistemas SCADA implementar programas para ser ejecutados en RTUs o un PLCs.

Componentes del sistema [editar]

Page 25: Visual Basic

Los tres componentes de un sistema SCADA son:

1. Múltiples Unidades de Terminal Remota (también conocida como UTR, RTU o Estaciones Externas).

2. Estación Maestra y Computador con HMI.3. Infraestructura de Comunicación.

Unidad de Terminal Remota (UTR) [editar]

La UTR se conecta al equipo físicamente y lee los datos de estado como los estados abierto/cerrado desde una válvula o un interruptor, lee las medidas como presión, flujo, voltaje o corriente. Por el equipo el UTR puede enviar señales que pueden controlarlo: abrirlo, cerrarlo, intercambiar la válvula o configurar la velocidad de la bomba, ponerla en marcha, pararla.

La UTR puede leer el estado de los datos digitales o medidas de datos analógicos y envía comandos digitales de salida o puntos de ajuste analógicos.

Una de las partes más importantes de la implementación de SCADA son las alarmas. Una alarma es un punto de estado digital que tiene cada valor NORMAL o ALARMA. La alarma se puede crear en cada paso que los requerimientos lo necesiten. Un ejemplo de un alarma es la luz de "tanque de combustible vacío"del automóvil. El operador de SCADA pone atención a la parte del sistema que lo requiera, por la alarma. Pueden enviarse por correo electrónico o mensajes de texto con la activación de una alarma, alertando al administrador o incluso al operador de SCADA.

Estación Maestra [editar]

El termino "Estación Maestra" se refiere a los servidores y al software responsable para comunicarse con el equipo del campo (UTRs, PLCs, etc) en estos se encuentra el software HMI corriendo para las estaciones de trabajo en el cuarto de control, o en cualquier otro lado. En un sistema SCADA pequeño, la estación maestra puede estar en un solo computador, A gran escala, en los sistemas SCADA la estación maestra puede incluir muchos servidores, aplicaciones de software distribuido, y sitios de recuperación de desastres.

El sistema SCADA usualmente presenta la información al personal operativo de manera gráfica, en forma de un diagrama de representación. Esto significa que el operador puede ver un esquema que representa la planta que está siendo controlada. Por ejemplo un dibujo de una bomba conectada a la tubería puede mostrar al operador cuanto fluido está siendo bombeado desde la bomba a través de la tubería en un momento dado o bien el nivel de líquido de un tanque o si la válvula está abierta o cerrada. Los diagramas de representación puede consistir en gráficos de líneas y símbolos esquemáticos para representar los elementos del proceso, o pueden consistir en fotografías digitales de los equipos sobre los cuales se animan las secuencias.

Page 26: Visual Basic

Los bloques software de un SCADA (módulos), permiten actividades de adquisición, supervisión y control.

Características [editar]

Configuración: permite definir el entorno de trabajo del SCADA, adaptándolo a la aplicación particular que se desea desarrollar.

Interfaz gráfica del operador: proporciona al operador las funciones de control y supervisión de la planta. El proceso se representa mediante sinópticos gráficos almacenados en el ordenador de proceso y generados desde el editor incorporado en el SCADA o importados desde otra aplicación durante la configuración del paquete.

Módulo de proceso: ejecuta las acciones de mando preprogramadas a partir de los valores actuales de variables leídas.

Gestión y archivo de datos: almacenamiento y procesado ordenado de datos, de forma que otra aplicación o dispositivo pueda tener acceso a ellos.

Comunicaciones: transferencia de información entre la planta y la arquitectura hardware que soporta el SCADA, y también entre ésta y el resto de elementos informáticos de gestión.

El paquete HMI para el sistema SCADA típicamente incluye un programa de dibujo con el cual los operadores o el personal de mantenimiento del sistema pueden cambiar la apariencia de la interfaz. Estas representaciones pueden ser tan simples como unas luces de tráfico en pantalla, las cuales representan el estado actual de un campo en el tráfico actual, o tan complejas como una pantalla de multiproyector representando posiciones de todos los elevadores en un rascacielos o todos los trenes de una vía férrea. Plataformas abiertas como GNU/Linux que no eran ampliamente usados inicialmente, se usan debido al ambiente de desarrollo altamente dinámico y porque un cliente que tiene la capacidad de acomodarse en el campo del hardware y mecanismos a ser controlados que usualmente se venden UNIX o con licencias OpenVMS. Hoy todos los grandes sistemas son usados en los servidores de la estación maestra así como en las estaciones de trabajo HMI.

Filosofía Operacional [editar]

En vez de confiar en la intervención del operador o en la automatización de la estación maestra los RTU pueden ahora ser requeridos para operar ellos mismos, realizando su propio control sobre todo por temas de seguridad. El software de la estación maestra requiere hacer más análisis de datos antes de ser presentados a los operadores, incluyendo análisis históricos y análisis asociados con los requerimientos de la industria particular. Los requerimientos de seguridad están siendo aplicados en los sistemas como un todo e incluso el software de la estación maestra debe implementar los estándares más fuertes de seguridad en ciertos mercados.

Para algunas instalaciones, los costos que pueden derivar de los fallos de un sistema de control es extremadamente alto, es posible incluso haya riesgo de herir las personas. El hardware del sistema SCADA es generalmente lo suficientemente robusto para resistir condiciones de temperatura, humedad, vibración y voltajes extremos pero en estas instalaciones es común aumentar la fiabilidad mediante hardware redundante y varios

Page 27: Visual Basic

canales de comunicación. Una parte que falla puede ser fácilmente identificada y su funcionalidad puede ser automáticamente desarrollada por un hardware de backup. Una parte que falle puede ser reemplazada sin interrumpir el proceso. La confianza en cada sistema puede ser calculado estadísticamente y este estado es el significado de tiempo medio entre fallos, el cual es una variable que acumula tiempos entre fallas. El resultado calculado significa que el tiempo medio entre fallos de sistemas de alta fiabilidad puede ser de siglos.

Infraestructura y Métodos de Comunicación [editar]

Los sistemas SCADA tienen tradicionalmente una combinación de radios y señales directas seriales o conexiones de módem para conocer los requerimientos de comunicaciones, incluso Ethernet e IP sobre SONET (fibra óptica) es también frecuentemente usada en sitios muy grandes como ferrocarriles y estaciones de energía eléctrica. Es más, los métodos de conexión entre sistemas puede incluso que sea a través de comunicación wireless (por ejemplo si queremos enviar la señal a una PDA, a un teléfono móvil,...) y así no tener que emplear cables.

Para que la instalación de un SCADA sea perfectamente aprovechada, debe de cumplir varios objetivos:

1. Deben ser sistemas de arquitectura abierta (capaces de adaptarse según las necesidades de la empresa).

2. Deben comunicarse con facilidad al usuario con el equipo de planta y resto de la empresa (redes locales y de gestión).

3. Deben ser programas sencillos de instalar, sin excesivas exigencias de hardware. También tienen que ser de utilización fácil.

Aplicaciones SCADA [editar]

Para desarrollar un sistema SCADA es necesario un IDE en el cual diseñar, entre otras cosas:

el aspecto que va a tener el SCADA las funciones y eventos que debe ejecutar cuando se interactúa con su interfaz HMI las operaciones y cálculos que debe realizar con los datos adquiridos

Así pues, una de las soluciones en el control SCADA es utilizar la aplicación creada junto con un programa para monitorizar, controlar y automatizar señales analógicas y digitales, capturadas a través de tarjetas de adquisición de datos. Uno de los programas más utilizados para este fin es el LabView (National Instruments).

pvBrowser - Aplicación "GPL" para monitorización SCADA con interfaz web. FreeSCADA - Aplicación "Open source" para proyectos SCADA Likindoy Profesional free GPL Scada system - Centrologic FAST/TOOLS - Yokogawa FAST/TOOLS SCADA

Page 28: Visual Basic

Acimut Scada Monitoriza - Creación de proyectos SCADA funcionales mediante "pinchar y arrastrar"

Scada Argos - Proyecto de SCADA para linux

Ejemplo práctico de un sistema SCADA para principiantes en el tema [editar]

Un SCADA sirve para supervisar y su principal objetivo es mesurar con la finalidad de corregir.

Tenemos un proceso químico, que puede ser desde una fábrica de gelatina, a una de antibióticos... que queremos supervisar. Lo que pondremos en la planta de producción serán PLC, PC, HMI... es decir un sistema operativo. Los datos obtenidos por estos hardwares industriales son transportados a través de un bus o varios buses a un servidor (server), que es el supervisor, el que controla, mediante el mencionado SCADA. Este envío de datos se puede hacer a través de ethernet, por ejemplo.

El servidor, a su tiempo, manda los datos a una base de datos con la finalidad de almacenar la información (para trabajar con ella, crear históricos de errores o alarmas...). Esta base de datos puede estar integrada dentro del disco duro del propio servidor. También es posible que el servidor mande la información a otro PC, PDA, Telf, internet.... es decir, transmita la información a otros sistemas operativos, en los cuales los clientes, accionistas, jefes, supervisores... pueden acceder a la información.

Page 29: Visual Basic

Hidrotratamiento

De Wikipedia, la enciclopedia libreSaltar a navegación, búsqueda

El término hidrotratamiento es utilizado en la industria petroquímica y otras para distintos tratamientos con el hidrógeno, H2. Es un término que a veces induce a confusión, pues parece indicar un tratamiento con agua (hidrotratamiento) cuando en realidad es con hidrógeno (hidrógenotratamiento).

Se trata normalmente de reacciones de hidrogenación utilizando hidrógeno gaseoso sobre mezclas de sustancias, generalmente complejas. Al tratarse de reacciones industriales es habitual el uso de catalizadores, alta temperatura o calor, o combinaciones de los mismos.

Hidrotratamiento en la industria petroquímica [editar]

Un ejemplo en la industria petroquímica es el hidrotratamiento de naftas. En él se tratan estas fracciones del petróleo con hidrógeno gaseoso, usando catalizadores, alta temperatura y presión. Se producen distintos tipos de reacciones químicas:

Las olefinas (alquenos en la nomenclatura química IUPAC recomendada) adicionan una molécula de hidrógeno en cada doble enlace carbono-carbono, convirtiéndose en parafinas (alcanos en la nomenclatura IUPAC recomendada). Esta reacción se denomina de saturación, significando con ello que la molécula de alqueno ha adquirido la máxima cantidad posible de átomos de hidrógeno.

Los hidrocarburos aromáticos también adicionan moléculas de hidrógeno y se transforman en hidrocarburos nafténicos o en la nomenclatura IUPAC recomendada, cicloalcanos.

Los hidrocarburos oxigenados reemplazan sus átomos de oxígeno por átomos de hidrógeno, y los átomos de oxígeno que salen se combinan con moléculas de hidrógeno formando agua.

Los hidrocarburos nitrogenados reemplazan sus átomos de nitrógeno por átomos de hidrógeno, y los átomos de nitrógeno que salen se combinan con moléculas de hidrógeno formando amoníaco.

Finalmente los hidrocarburos que contienen azufre reemplazan sus átomos de azufre por átomos de hidrógeno, y los átomos de azufre que salen se combinan con moléculas de hidrógeno formando sulfuro de hidrógeno.

Luego se separan los hidrocarburos del resto de las sustancias y se someten a otros tratamientos hasta conseguir las características deseadas.

Así se consigue modificar las características de los distintas fracciones del petróleo para obtener productos finales que se ajusten a las especificaciones comerciales requeridas, ya

Page 30: Visual Basic

sea para su uso como combustible, que es el más común, o para cualquier otro. También son importantes las normas legales, como por ejemplo las que regulan el contenido de azufre, elaboradas a fin de minimizar daños en el medio ambiente como los debidos a la lluvia ácida, provocada entre otras causas por la combustión de productos que contienen azufre.