diseño e implementación de un sistema electrónico de monitoreo y

Anuncio
Universidad de Pamplona, una Universidad para una Sociedad Inteligente e Interconectada
Universidad de Pamplona - Ciudad Universitaria - Pamplona (Norte de Santander - Colombia)
Tels: (7) 5685303 - 5685304 - 5685305 Fax: 5682750 - www.unipamplona.edu.co
UNIVERSIDAD DE PAMPLONA
FACULTAD DE INGENIERÍAS Y ARQUITECTURA
DEPARTAMENTO DE INGENIERÍAS ELÉCTRICA ELECTRÓNICA SISTEMAS Y
TELECOMUNICACIONES
PROGRAMA DE INGENIERÍA ELECTRÓNICA
TRABAJO DE GRADO PRESENTADO PARA OPTAR POR EL TÍTULO DE
INGENIERO EN ELECTRÓNICA
TEMA
DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA ELECTRÓNICO DE
MONITOREO Y MANDO VÍA WEB, A TRAVÉS DE INTERNET
AUTOR: WILSON ANTONIO GAN CUBA
DIRECTOR DEL TRABAJO: MSc. ANTONIO GAN ACOSTA
CODIRECTOR: Ing. FABIÁN RENÉ SÁNCHEZ BLANCO
PAMPLONA N. S. COLOMBIA
SEPTIEMBRE 2006
2
3
Pensamiento
"No es porque las cosas son difíciles que no nos
atrevemos; es porque no nos atrevemos que son
difíciles"
Séneca
4
Dedicatoria
Dedico este proyecto ante todo a mi familia que me ha dado apoyo desde que nací y ha
estado a mi lado en cada logro en cada paso de avance.
A mis amigos quienes también son parte de mi familia y sin los cuales seria imposible
levantarse cada día y seguir en los bellos pero también en los malos momentos.
A mis padres que siempre han estado cerca cuando los necesito, siguiendo mis pasos,
guiando mis logros humanos y académicos.
A mi madre Onelia de los Ángeles Cuba Guerra quien siempre se ha preocupado por mi
instrucción académica y a quien debo gran parte de mis logros estudiantiles.
A mi abuela querida Ana María Acosta Pérez que se ha desvelado para apoyarme
incondicionalmente desde que nací y a quien admiro y quiero con todas mis fuerzas.
A mi hermana Ana del Carmen Gan Cuba quien me quiere como su hermano favorito.
A mi novia Elizabeth Parra Bautista que con su amor me ha hecho superar los momentos de
cansancio y me da siempre nuevos ánimos para continuar.
A mi querida patria Cuba “La perla de las antillas” que llevo en el corazón. Madre de
grandes personalidades y gente sencilla y culta.
A esta grandiosa tierra colombiana cuna de soñadores y luchadores que viajan por el mundo
llevando consigo lo mejor del país, esa alegría y amor por la vida.
5
Agradecimientos
Quedo agradecido a todos los que influyeron de una forma una otra a mi instrucción como
estudiante y ser humano.
Agradecido a mi director, mis asesores y a mi codirector Fabián René Sánchez Blanco quien
ha sido de ayuda esencial en el desarrollo de la parte de sistemas.
Agradezco su dulzura a la maestra Rosita del preescolar, a la maestra Lolita de primero y
segundo grados y a la maestra Isabel Escobar de tercero y cuarto grados.
Gracias a los profesores de secundaria, enseñanza en la que a pesar de la crisis fui tan feliz,
cosa que también agradezco en especial a mis compañeros de 9no 20, como Yaritza, Lídice
Delgado y otros.
Muchas gracias a los que fueron mis amigos de la vocacional, Máximo Gómez Báez, a José
Luis Estrada Caballero, a Dianellis Vidal Lorente, a Denise Cómas Isaac. Agradecimientos
a la profesora Idania Bacallao quien me escuchó con madurez y a la que admiro.
Mis más sinceros respetos para mi gran amigo Omar Batista Núñez, quien me enseño que la
sencillez es independiente del estatus social.
Agradecido también a mis compañeros de estudios con quienes compartí buenos momentos
y otros tantos de escasez y dificultades de toda clase, tanto en la parte académica como
personal. Compañeros como José Carlos Vilela Díaz, Michel de la Fe Arrascaeta, Yorisley
Amador Calderín.
Gracias a Nicolás Figueroa Cuello por su apoyo y por darle a nuestra amistad una
dimensión internacional.
Agradecido a tantos que he olvidado y a tantos por venir que influyen de manera decisiva en
mi vida y en el bien de la humanidad.
Mi eterna gratitud a Colombia que me permitió forjarme como profesional.
Agradecido a Ucrania la tierra donde obtuve mis primeros respiros de vida.
6
Resumen
Debido a la necesidad de control de procesos, que es creciente en el mundo moderno y que
requiere no sólo de circuitos que se autogobiernen de manera que gran parte sea realizado
con independencia de la presencia física de personal humano y cómo además también es
necesario que en ciertas operaciones esté presente el hombre, por lo que si tiene que estar en
un lugar específico se subutiliza potencial intelectual.
Surge entonces este proyecto para permitir una supervisión y mando a distancia, en realidad
la mayor distancia posible que se extiende al mundo entero y que es provista por el alcance
de Internet, además de ser una vía relativamente barata.
Es mostrado un diagrama en bloques general enfocado a la realización de cuatro partes o
áreas principales:
1. Diseño del sistema electrónico tanto de muestreo electrónico de magnitudes
eléctricas así como la recepción y ejecución de un mando generado de forma manual
por el usuario vía Web.
2. Diseño del sistema informático que permita el manejo vía Web a través de Internet.
Para ello se desarrolla una aplicación con la reciente Plataforma .NET y más
específicamente el paquete de Visual Studio 2005, provisto por Microsoft. Esta se comunica
con un microcontrolador lo que proporciona finalmente que los datos obtenidos en este caso
de un equipo de soldadura por arco eléctrico para electrodos revestidos, sean analizados por
el operario o ingeniero y se pueda ejecutar una acción en tiempo real sobre el proceso.
3. Configuración del MODEM MT820 para permitir la comunicación correcta entre la
intranet e Internet.
4. Finalmente se realiza el análisis económico y financiero del proyecto que demuestra
la viabilidad de este.
El trabajo está compuesto por una totalidad de 191 páginas y 7 capítulos.
7
Abstract
Due to necessity of processes control, that is increasing in the modern world and which they
require not only of circuits that are autogobiernen so that all great part is made
independently of the physical presence of human and how in addition also it is necessary
that in certain operations the present of the man, reason why if it must be in a specific place
it subuses intellectual potential.
Then east arises project to allow a remote supervision, in fact the greater possible distance
that it extends to the entire world and that is provided by the reach of Internet, in addition to
being a cheap route.
A general diagram in blocks is shown focused the accomplishment of four parts or main
areas:
1. Design of the electronic system as much of electronic sampling of electrical
magnitudes as well as the reception and execution of a generated control of manual
form by the user by Web.
2. Design of the computer science system that allows the handling by Web through
Internet.
The Visual Studio 2005 package has been developed an application with recent Platform
.NET more specifically and, provided by Microsoft. This communicates with a
microcontroller which provides finally that the data collected in this case of an equipment of
electrical arc welding for coated electrodes, are analyzed by the worker or engineer and
finally an action in real time can be taken on the process.
3. Configuration of MODEM MT820 to allow the correct communication between the
Intranet and Internet.
4. Finally the economic and financial analysis of the project is made that demonstrates
the viability of this.
The work is made up of a totality of 191 pages and 7 chapters.
8
Índice General
INTRODUCCION
14
JUSTIFICACION
16
Marco histórico
Objeto
Necesidades y problemas
Criterios de viabilidad
16
16
17
18
DELIMITACION
19
Objetivo general
Objetivos específicos
Acotaciones
19
19
19
Marco teórico
CAPÍTULO I. ESTUDIO DE UN SISTEMA ELECTRÓNICO DE
MONITOREO Y MANDO A DISTANCIA
Análisis de sistemas en tiempo real
20
22
DISEÑO DEL DIAGRAMA EN BLOQUES GENERAL DEL SISTEMA DE
MONITOREO Y MANDO VÍA WEB, A TRAVÉS DE INTERNET
24
CAPÍTULO II. DISEÑO DEL SISTEMA DE MUESTREO ELECTRÓNICO
DE MAGNITUDES ELÉCTRICAS
26
Estudio del procedimiento de cálculo del valor medio y el valor eficaz
27
Análisis del procedimiento de muestreo
30
Selección de fórmulas para medición de AC y cálculo del valor final
31
Cálculo de elementos del circuito de muestreo electrónico de corriente
33
ESTUDIO Y CÁLCULOS PARA CONVERSOR A/D UTILIZADO EN EL
MICROCONTROLADOR PIC
36
Descripción del conversor A/D de aproximaciones sucesivas
9
37
CAPÍTULO III. ESTUDIO DE UN SISTEMA DE COMUNICACIÓN POR
PUERTO SERIAL
40
Resumen general sobre el puerto serial y la transmisión serie
Análisis
histórico
Receiver/Transmitter)
del
UART
(Universal
41
Asynchronous
43
Estudio del estándar RS-232C
44
Estudio de los convertidores de nivel RS-232
48
Descripción del modo de Acceso al puerto serial mediante Visual Basic 49
Estudio del Evento Data Receive
51
Descripción del protocolo utilizado para comunicación entre PC y
PIC16f877A
52
CAPÍTULO IV. CONCEPCIÓN DE LA ETAPA PC ESTACIÓN CENTRAL
53
Estudio sobre páginas HTML (estáticas) y páginas dinámicas
55
Estudio sobre los Lenguajes de lado servidor
57
Estudio del Control WebChart
60
Descripción de las propiedades del control WebChart
62
Estudio del SQL SERVER Database
64
Descripción de las tablas utilizadas
69
DISEÑO DEL SOFTWARE DE ESCRITORIO
70
DISEÑO DEL SOFTWARE EN VISUAL WEB DEVELOPER
75
DISEÑO DEL SISTEMA DE MONITOREO POR WEBCAM
81
Diseño de la Interfaz Web para Webcam
10
85
Combinación de JavaScript y HTML
86
DESCRIPCIÓN DE LA INTERFAZ WEB
91
CAPÍTULO V. DISEÑO DE LA PROGRAMACIÓN EN EL PIC16F877A
93
CAPÍTULO VI. ESTUDIO DEL CANAL DE ACCESO A INTERNET
MEDIANTE ADSL
102
Descripción de la tecnología ADSL
103
CONFIGURACIÓN DEL MÓDEM MT820
106
Descripción de la configuración NetWork Address Translation (NAT) 108
DESCRIPCIÓN DE LA ETAPA DE MANDO ELECTRÓNICO
113
CAPÍTULO VII. ANÁLISIS ECONÓMICO Y FINANCIERO
114
Cálculo financiero
116
FUENTES DE FINANCIACIÓN
123
MARCO LEGAL
124
ANÁLISIS DE PROTECCIÓN E HIGIENE DEL TRABAJO
125
INFLUENCIA AMBIENTAL DEL TRABAJO
126
ARTÍCULO CIENTÍFICO SOMETIDO A PUBLICACIÓN
127
RESULTADOS
134
CONCLUSIONES
135
OBSERVACIONES Y RECOMENDACIONES
136
BIBLIOGRAFÍA
137
ANÁLISIS BIBLIOGRÁFICO
141
11
GLOSARIO DE TÉRMINOS NO CONVENCIONALES
143
ABREVIATURAS UTILIZADAS
144
SÍMBOLOS UTILIZADOS
146
RESEÑAS BIOGRÁFICAS DE DIRECTOR, CODIRECTOR Y ASESORES
148
ANEXOS
154
12
Índice de Anexos
Anexo1. The UART (8250 and Compatibles)
154
Anexo2. Funciones de los pines del puerto serial (Inglés)
156
Anexo3. PIC16f877 ADCON0 REGISTER
157
Anexo4. PIC16f877 ADCON1 REGISTER
158
Anexo5. Estudio del proceso de soldadura
159
13
Introducción
Las oportunidades y la polémica que ha creado Internet no tienen precedente.
Esta que en sus principios era un simple proyecto militar de los Estados
Unidos, a alcanzado dimensiones inimaginables, revolucionando no solo la
capacidad de comunicarse, añadiendo información en tiempo real a cualquier
clase de ciencia o tecnología, teniendo como protagonista el movimiento de
“La Web”, que ha sido descrito como “la revolución industrial de la
información”
La World Wide Web realmente nació en 1991, pero el punto de partida para la
Web sucedió en 1993 con la aparición primer navegador. Desde entonces, el
uso de Internet se ha disparado. Pasaron muchos años antes de que el número
de usuarios de Internet llegara a nueve millones en 1993. Actualmente se
estima que 1000 millones se encuentran rondando la macrored que influye
directa o indirectamente y de manera decisiva en la vida humana.
En el caso de Colombia se observa en los últimos años un auge de la tendencia
de conexión a Internet que equivale al fin al uso de las Web, cosa que a pesar
de ser un país subdesarrollado se puede aprovechar para crear sistemas de
monitoreo y mando a distancia que abaraten costos de transporte e
importación de aparatos sofisticados con mando a distancia, teniendo la
posibilidad de diseñarlos propiamente dentro del país.
Además del aumento del uso de Internet en Colombia y la disminución de
costos de uso de dicha red el proyecto fue impulsado por la propuesta del
empresario Eduardo Navarro Nieto gerente de la empresa MONTAJES
EDUNAV, que sostiene en la actualidad, de recibir equipos de soldadura, de
cualquier tipo que cumplan con las necesidades técnicas de operación y que
sean producidos en Colombia y a bajo costo, mostró especial interés en
desarrollar equipos novedosos que puedan ser monitoreados y manipulados a
distancia, debido a que gastos de pago presenciales de personal especializado
son injustificables, por lo que es viable su intervención a distancia, además de
que se podría obtener un sistema final que manipulara el equipo de soldadura
totalmente a distancia aislando al ser humano de este y de los riesgos que tiene
implícito el proceso de soldadura, con lo que surge este trabajo de grado y el
del colega Alberto Nicolás Figueroa Cuello.
14
De esta manera se ha conseguido desarrollar una interfaz Web, utilizando los
microcontroladores PIC16f877A, con programación mediante ensamblador así
como la programación de alto nivel provista por la plataforma .NET de
reciente aparición a través del paquete de trabajo Visual Studio 2005, para ello
se ha creado un programa de escritorio local que es capaz de adquirir los datos
provenientes del microcontrolador a través de transmisión serial, puesto que el
programa desarrollado para la Web no tiene esta capacidad directamente.
En ambos casos, tanto para el programa de escritorio como para el de la Web
se utiliza el lenguaje de programación, Visual Basic 2005 que es el que se
conocía de antemano pues se recibió una introducción a este en diferentes
proyectos realizados en materias en la Universidad de Pamplona.
Para desarrollar la página Web se utilizan además los WebForms, provistos
por la plataforma .NET y que le dan al proyecto una gran potencialidad pues
permite desarrollar trabajos, que anteriormente requerirían tal vez muchos
años de estudio y que permiten realizar, trabajos para proyectos electrónicos
investigativos de alta calidad.
Debido a las ventajas descritas y a que el software utilizado se puede
descargar de manera gratuita a través de la página de Microsoft se escogió este
como el más indicado para el proyecto.
El compromiso general es realizar el diseño e implementación de un sistema
de monitoreo y mando vía Web a través de Internet. Es planteada la necesidad
de continuar desarrollando el sistema para que incluya más variables de
monitoreo y mando, así como realizar su montaje para cumplir con las
peticiones de empresario Eduardo Navarro Nieto y que se pueda legalizar el
contrato con la empresa MONTAJES EDUNAV.
15
Justificación
Marco histórico
Colombia es un país tercer mundista, consumidor o asimilador de tecnologías del mundo
desarrollado, el cual tiende a comercializar y ofertar sus productos a precios muy elevados
lo cual se agrava por los costos de importación, entre otros aranceles aduaneros y
transporte. Por tal motivo, las ofertas existentes en el mercado nacional de equipos de
soldadura por arco eléctrico para electrodos revestidos, no satisfacen las necesidades de sus
beneficiarios.
Además resulta de gran interés en la vida cotidiana como en la industria el tele manejo vía
Web a través de Internet para labores o procesos tales como:
•
•
•
•
Domótica
Biomedicina
Equipamiento eléctrico o electrónico en general.
Vigilancia de alarmas, estudio de tendencias de variables.
Dicho tele manejo en la actualidad ha sido implementado en varios equipos, como routers,
pero carentes de flexibilidad (para otros usos distintos a los que fueron concebidos) o bajo
costo.
Objeto
El objeto general de nuestro trabajo de grado es un Equipo de Soldadura por Arco Eléctrico
para Electrodos Revestidos. Estando bajo la responsabilidad las siguientes partes:
1. El sistema de muestreo electrónico de magnitudes eléctricas, para satisfacer las
necesidades de monitoreo así como mando digital.
2. Sistema de comunicación por puerto serial con el computador y envío de dichos
datos a Internet.
3. La interfaz Web para visualización y control de magnitudes eléctricas a través de
Internet.
4. Sistema de mando electrónico y detección de hardware mediante el uso de la
interfaz Web a través de Internet.
“Las demás partes o subsistemas del equipo de soldadura por arco eléctrico para electrodos
revestidos no son objeto de este trabajo”.
16
Necesidades y problemas
En el mercado colombiano los equipos de soldadura por arco eléctrico en ofertas presentan
los siguientes inconvenientes:
•
Los de buen desenvolvimiento tecnológico son extremadamente caros estando
su costos hasta el orden de los 30 millones de pesos ($ 30.000.000) y más,
influyendo en esto los aranceles e impuestos que han de cobrarse por la
importación, siendo las firmas, empresas o industrias más comerciales,
populares, reconocidas y eficientes: Lincoln y Miller.
•
Los equipos que son vendidos en el mercado nacional a precios más baratos o
económicos, no satisfacen las necesidades de los trabajos en pequeñas medianas
y grandes empresas, ni los requerimientos y normas técnicas, debido a las
características deficientes en la calidad de la soldadura que producen, e
incomodidad para los operarios.
•
Los equipos existentes en el mercado nacional e internacional, no cuentan con
sistemas de supervisión y control de variables a distancia a través de Internet.
•
Existe la propuesta o solicitud del empresario Eduardo Navarro Nieto
propietario de la empresa MONTAJES EDUNAV, NIT: 91218571-2, TEL:(7)
6373178; radicada en la ciudad de Bucaramanga, en colaboración con el
personal técnico de La Universidad de Pamplona.
•
Existe la necesidad de realizar un proyecto para poder hacer convenios y
contratos donde se delimiten las responsabilidades económicas y fiscales para la
fabricación conjunta con la empresa MONTAJES EDUNAV de los equipos de
soldadura por arco eléctrico para electrodo revestidos.
•
Necesidad de optimizar y facilitar las operaciones, así como la toma de
decisiones, tanto gerenciales como operativas.
•
Gastos de pago presenciales de personal especializado injustificables, por lo
que es viable su intervención a distancia. Labor que puede no sólo ser para el
manejo del proceso sino para el diagnóstico de fallas y roturas o simple
inspección preventiva
17
Criterios de viabilidad
Se dispone de los recursos económicos, tecnológicos y materiales necesarios para el
montaje del proyecto lo cual se argumenta en el análisis económico.
Acceso a Internet, provisto por Telecom.
Software gratuito para el mantenimiento y mejora de la aplicación (Visual Studio 2005)
Software gratuito MPLAB provisto por Microchip para la programación y mejora del
módulo del PIC.
Osciloscopio y demás medios de medición necesarios para el montaje y mantenimiento.
Dispositivos eléctricos y electrónicos necesarios para el montaje.
Interés de mantener el contrato de la empresa Montajes EDUNAV.
18
Delimitación
Objetivo general
Realizar el diseño e implementación del sistema monitoreo y mando electrónico de un
equipo de soldadura por arco eléctrico para electrodos revestidos vía Web, a través de
Internet.
Objetivos específicos
1. Estudio del software Visual Web Developer 2005.
2. Estudio del manejo de bases de datos (SQL Server Express 2005)
3. Estudio del software Visual Basic 2005
4.
Diseñar e implementar el sistema de medición electrónica de magnitudes
eléctricas, para visualización vía Web a través de Internet.
5. Diseñar e implementar el sistema de comunicación vía Web a través de Internet con
el circuito de disparo y mando digital del controlador de corriente.
6. Elaborar manuales y/o tutoriales, para utilizarse en posteriores trabajos de grado y
como material de apoyo en las asignaturas relacionadas con el tema.
Acotaciones
La interfaz del sistema de disparo y mando para el controlador de potencia se crea bajo la
acción de un circuito digital a base de Microcontroladores, pero es responsabilidad y
contenido del autor Alberto Nicolás Figueroa Cuello
Este trabajo no persigue conformar un sistema completamente terminado que maneje todas
las posibles variables necesarias, sino hacer una primera versión para que sea completada y
perfeccionada en trabajos posteriores y que en este caso permita el envío de un dato desde
un sistema electrónico y su transporte a una página Web servida a Internet, así como su
procesamiento y retorno de una respuesta al punto de origen, lo cual puede ser aplicado a
múltiples sistemas, como domótica o clonación de sistemas electrónicos.
Sobre el objeto general, equipo de soldadura por arco eléctrico para electrodos revestidos, se
realizan dos trabajos de grado de los autores, Wilson Antonio Gan Cuba y Alberto Nicolás
Figueroa Cuello, los cuales trabajarán juntos, compartiendo conocimientos y algunos
resultados comunes, pero elaborando de forma individual, los objetivos específicos
correspondientes
19
Marco teórico
Capítulo I
Estudio de un sistema electrónico de monitoreo y
mando a distancia
Es un sistema basado en computadores y dispositivos electrónicos, que permite supervisar y
manejar a distancia una instalación de cualquier tipo.
Es conocido el significativo auge de sistemas como este, debido al incontrolable avance de
las telecomunicaciones que hacen de el una base inseparable de la industria y de cualquier
proceso donde exista la presencia de la electrónica.
La variable a medir puede constituirlo un fenómeno físico, que puede ser muy variado
como presión, temperatura, flujo, potencia, intensidad de corriente, voltaje, ph, densidad.
Para tomar la muestra se utilizan los sensores o transductores, capaces de traducir la señal
física en una eléctrica analógica (de naturaleza continua), entendible por el circuito
electrónico a utilizar.
La señal obtenida generalmente es: voltaje, corriente, resistencia o capacitancia.
Luego la información debe ser procesada, para ser entendida por el computador lo cual es
obra de los acondicionadores de señal, que además proveen al circuito de aislamiento
eléctrico y filtraje para eliminación de ruidos y señales indeseables o protección al sistema
de picos transitorios de gran magnitud que pueden ser desencadenantes de la
descomposición de este.
En un siguiente paso se debe digitalizar la señal mediante un circuito o bloque de
conversión analógico/digital. Los datos deben ser enviados al computador a través de sus
puertos de entrada, de los cuales es comúnmente utilizado por la disminución de pines de
transmisión y rapidez que provee “El puerto serial”.
El Computador almacena y procesa esta información para la toma instantánea o posterior
de decisiones a la vez que la muestra al usuario u operario en tiempo real. Es entonces que
este último analiza los datos obtenidos y tiene la posibilidad de actuar sobre el proceso con
el simple mandato de un click, lo cual desemboca el retorno de una señal eléctrica digital
que es procesada por un bloque receptor y que finalmente ejecuta una acción sobre el
sistema regulando su funcionamiento. Lo cual puede ser mediante activación o
desactivación de un dispositivo dado: bobina de un relé, setpoint de un controlador.
Es importante evaluar si un sistema de este tipo es necesario, puesto que en determinados
procesos es más sencillo dejar todo a manos del automatismo o simplemente la acción
manual presencial es suficiente.
20
Criterios de selección de un sistema electrónico de monitoreo y mando a
distancia:
a) Que el proceso esté geográficamente distribuido. Esta condición no es limitativa, ya que
puede instalarse un sistema para la supervisión y manejo de un proceso concentrado en una
localidad.
b) Que la información del proceso se necesite en el momento en que los cambios se
producen en el mismo, en tiempo real.
c) Que se necesite optimizar y facilitar las operaciones, así como la toma de decisiones,
tanto gerenciales como operativas.
d) Que la complejidad y velocidad del proceso permitan que la mayoría de las acciones
sean iniciadas por un operador. (Aunque esto es relativo porque puede surgir la necesidad
de la intervención humana a distancia en algún momento crítico del proceso)
e) Que se requiera de personal altamente especializado, cuyos gastos de pago presenciales
sean injustificables y sea viable su intervención a distancia. Labor que puede no sólo ser
para el manejo del proceso sino para el diagnóstico de fallas o simple inspección
preventiva.
Funciones básicas realizadas el sistema:
a) Almacenar y mostrar información, en forma continua y confiable, correspondiente a la
señalización, estados de dispositivos, alarmas, mediciones.
b) Ejecutar acciones iniciadas por el operador, como encendido y apagado de dispositivos
remotos, apertura y cierre de válvulas, incluso control exacto de sus variables como fijar la
corriente en un valor determinado.
c) Alertar al operador de cambios detectados, tanto aquellos que no se consideren normales
como cambios que se produzcan en la operación diaria. Estos cambios son almacenados en
el sistema para su posterior análisis.
d) Aplicaciones en general, basadas en la información obtenida por el sistema, tales como:
reportes, gráficos de tendencia, historia de variables, cálculos, predicciones, detección de
fugas, detección de fallas en general
Estos sistemas son una opción óptima en cualquier clase de tele manejo actual, puesto que
unido a las facilidades que otorga Internet de acortar distancias, su costo se reduce y los
procesos o dispositivos de cualquier índole pueden dar un aporte más seguro y
personalizado en tiempo real.
21
Como se menciona, una de las cualidades primordiales del sistema propuesto es que el
monitoreo y mando se pueden realizar en el momento en que se producen los hechos, o sea
en tiempo real, por lo que se procede a continuación a un análisis de sistemas de este tipo.
Análisis de sistemas en tiempo real
El estudio de los sistemas de tiempo real es la forma de organizar el desarrollo de sistemas
compuestos por una combinación de hardware y software, para lograr sistemas robustos y
confiables, con un óptimo aprovechamiento de los recursos, como los tiempos desocupados
del procesador en un computador.
El tiempo que media entre la presentación de un conjunto de entradas a un sistema y la
aparición de todas las salidas asociadas se llama tiempo de respuesta del sistema.
Un sistema se encuentra fallando si no puede satisfacer uno o más de los requisitos
presentados en la especificación del sistema.
Un sistema de tiempo real puede definirse, entonces, como el que debe satisfacer
restricciones explícitas en el tiempo de respuesta o someterse a dañinas consecuencias, que
pueden desembocar en la falla. Por lo tanto, este tipo de sistema responde a un estímulo
externo dentro de un tiempo especificado. Su eficiencia depende de la exactitud de los
resultados de cómputo, pero además del momento en que los entrega. La capacidad de
predicción es su característica principal. A diferencia de los sistemas tradicionales, que
desarrollan la tendencia a distribuir en forma equitativa los recursos disponibles entre las
diferentes tareas a ejecutar, los sistemas de tiempo real tienen especial propósito de
asegurar la distribución de recursos de tal forma que se cumplan los requerimientos de
tiempo.
Los sistemas de tiempo real pueden dividirse en dos tipos diferentes, en función de su
severidad en el tratamiento de los errores que puedan presentarse:
Sistemas de tiempo real de tipo Soft: los cuales pueden tolerar un exceso en el tiempo de
respuesta, con una penalización por el incumplimiento del plazo.
Sistemas de tiempo real Hard: la respuesta fuera de término no tiene valor alguno, y
produce la falla del sistema.
Sistemas multitarea
Las aplicaciones de tiempo real deben interaccionar, generalmente, con dispositivos
externos tales como sensores y actuadores, como también con el monitor, teclado y disco
duro, lo que está sucediendo todo simultáneamente. Por lo que se debe proveer una
respuesta adecuada, a través de sus salidas, a cada una de las entradas, todas al mismo
tiempo.
La aplicación entonces debe estructurarse para cumplir con dichos requerimientos. Existen
unas pocas alternativas encabezadas por dos estructuras básicas: el gran loop o la
multitarea.
22
El gran loop maneja todos los eventos secuencialmente, en un orden predeterminado,
dentro de una tarea única que se repite de manera cíclica. Es una forma simple y lógica de
estructurar una aplicación, pero puede complicarse su diseño cuando el número de eventos
a manejar es muy elevado. Para ello, el programa de aplicación debe encargarse de recorrer
las múltiples tareas, lo que da como resultado programas complicados y difíciles de
mantener.
En la multitarea el sistema operativo se encarga de todo. Cada tarea dispone de un cierto
tiempo de acceso a los recursos, administrado por el sistema operativo. En este tipo de
sistemas, el programador escribe las tareas a realizar en programas diferentes, más simples.
El sistema operativo es el encargado de hacer que todos estos programas se ejecuten en un
único microprocesador. Pero se debe ser cuidadoso porque, aún en estas condiciones sigue
siendo uno o pocos procesadores y al asignar un número de tareas muy grande al mismo
tiempo, se corre el riesgo de sobrecarga para el sistema.
Tipos de multitarea
Nula: El sistema operativo carece de multitarea, pero puede lograrse a veces algo parecido
a una multitarea implementándola en espacio de usuario, a través de artificios como los
TSR de MS-DOS (Terminate and Stay Resident o lo que es igual Terminar y permanecer
residente). Estos programas pueden dejarse residentes en memoria, hasta que sean
explícitamente cerrados o si se corta el fluído eléctrico, luego reutilizarlos activándolos con
una combinación de teclas. Pero esto ocasiona mucha inestabilidad en el sistema y otros
programas pueden no cargarse o funcionar correctamente.
Cooperativa: Los procesos de usuario son quienes ceden la CPU al sistema operativo a
intervalos regulares. Muy problemática, debido a que si el proceso de usuario se congela y
no cede la CPU al sistema operativo, todo el sistema estará entonces colgado, lo que
provoca latencias muy irregulares y/o extendidas, cosa que daña realmente el esquema de
sistemas operativos de tiempo real.
Preferente: El sistema operativo es el encargado de administrar el/los procesador/es,
repartiendo el tiempo de uso de este entre los procesos que estén esperando para utilizarlo.
Cada proceso utiliza el procesador durante cortos períodos de tiempo, pero finalmente es
prácticamente imperceptible y el sistema se comporta como si estuviera en tiempo real.
Este es el utilizado por Windows XP, sistema sobre el que se trabaja en este proyecto.
Real: Esto sólo es relativamente posible en sistemas multiprocesador. De manera que
varios procesos se ejecutan realmente al mismo tiempo, en distintos microprocesadores.
Esto es complicado de lograr porque en un sistema operativo generalmente se requieren
incluso más de dos procesos al mismo tiempo y resulta un tanto costoso y difícil de
implementar, el uso de un microprocesador para cada tarea, motivo por el cual suele ser
también preferente.
23
Diseño del diagrama en bloques general del
sistema de monitoreo y mando vía Web, a través
de Internet.
Estructura del diagrama en bloques
Figura 1. Diagrama en bloques del sistema propuesto.
Descripción del diagrama en bloques
Se cuenta con un controlador electrónico de corriente de un equipo de soldadura por arco
eléctrico para electrodos revestidos (Ver anexo 5). El cual fue desarrollado en otro proyecto
diferente del que se presenta en este trabajo de grado. De esta manera, se le envía
información al controlador electrónico referente a la acción deseada mediante el bloque
final de mando electrónico, (Ver figura 1).
Se realiza el muestreo electrónico de magnitudes eléctricas mediante un sensor o
transductor en este caso de la intensidad de la corriente, con un transformador de corriente.
Es acondicionada la información obtenida, entre lo que incluye la digitalización y
24
transportada a un computador utilizando transmisión asíncrona UART, mediante el
protocolo RS232.
En el computador existe un software local, también llamado software de escritorio. Su
objetivo es ser el encargado de adquirir los datos que llegan al puerto serie para
almacenarlos en una base de datos.
Para completar la cadena, en este computador ESTACION CENTRAL, se cuenta con un
servidor de páginas Web, el cual tiene como función servir una Web dinámica para que
usuarios remotos la puedan visualizar y manejar a través de Internet, encontrándose estos
en otro(s) computador(es) llamado(s) PC cliente(s). Otro papel importante del servidor será
ejecutar el código de LADO SERVIDOR con el que se construye la Web dinámica, en este
caso ASP.NET, para que pueda ser visto por el usuario del PC cliente en forma de código
HTML.
Adicionalmente para visualizar automáticamente las imágenes muestreadas de una
Webcam que sirve como referencia visual del proceso, se incluye un código desarrollado en
javaScript, cuya ejecución es del Lado Cliente, es decir que es el propio navegador quien lo
ejecuta y convierte en información visual de la página.
Para que la estación central quede conectada a Internet, se debe configurar un enrutador
(router). En este caso el módem /router ADSL, MT820 de Telecom.
Finalmente la variable proveniente del Transductor quedará plasmada de forma automática
en la página Web, creada y servida a Internet, la cual tomará su información de la base de
datos anteriormente mencionada.
Pero para cerrar el lazo de mando un operario debe analizar el proceso y ejecutar la acción
correcta, para ello debe retornar un dato a través de toda la vía de comunicación
anteriormente descrita, desde la estación central y hasta el bloque de mando electrónico.
En este caso se van variando diferentes caracteres existentes en una tabla creada solamente
para este hecho en la base de datos que están siendo constantemente supervisados por el
programa de escritorio el cual al detectar el cambio ejecutará la acción correspondiente, que
puede resultar en una orden de aumento/disminución de la corriente o encendido/apagado
del equipo o dispositivo eléctrico/ electrónico, etc.
25
Capítulo II
Diseño del sistema de muestreo electrónico de
magnitudes eléctricas
Estructura del diagrama en bloques para muestreo de AC utilizando
transformador de corriente. (Ver figura 2)
Figura 2. Diagrama en bloques de la etapa de muestreo electrónico de
magnitudes eléctricas.
Estudio sobre transformadores de corriente
Los transformadores de corriente se utilizan para tomar muestras de corriente de la línea y
reducirla a un nivel seguro y medible, para las gamas normalizadas de instrumentos,
aparatos de medida, u otros dispositivos de medida y control.
Una bobina arrollada en un núcleo de material magnético de sección transversal constante y
en forma de lazo cerrado, produce una corriente inducida en la bobina que es directamente
proporcional a la razón de cambio de la corriente I que pasa a través del lazo.
26
Los valores nominales de los transformadores de corriente son relaciones de corriente del
primario a secundario cuyas valores típicos pueden ser 200 / 5 ,600 / 5, 800 / 5, 1000 / 5.
Los valores nominales del secundario de los transformadores de corriente son de 5A y 1A.
Este tipo de transformador tiene una amplia gama de usos por lo que se utilizan para medir
corrientes de diferentes niveles en líneas de transmisión de alta potencia y subestaciones o
para medir la corriente de un equipo de soldadura.
Estudio del procedimiento de cálculo del valor medio y el
valor eficaz
Valor medio
El valor medio puede calcularse para una serie de valores discretos o para una función
variable continua.
Para una colección de N valores { X 1 , X 2 ,...., X n } viene dado por la fórmula:
Ecuación 1
Para una función variable continua f(t) definida sobre el intervalo T1 ≤ t ≤ T2 el medio
viene dado por la expresión:
Ecuación 2
Valor medio de un voltaje variable
Al ser el voltaje (o la intensidad de la corriente) variable una función continua V(t) se
puede calcular su valor medio (Vmed) para un intervalo de tiempo t1 ≤ t ≤ t2 mediante la
aplicación de la fórmula anterior:
Ecuación 3
O lo que es igual:
Ecuación 4
27
Donde:
T
y es el período de la señal.
En el caso de la rectificación de onda completa como la de la corriente alterna sinusoidal
con una amplitud máxima o de pico Vp, y período T= π , el valor medio es (ver figura 3):
Ecuación 5
Vmed =
2
π
Vp
Figura 3. Gráfico del valor medio para la rectificación de onda completa
Valor eficaz
Se llama valor eficaz o rms (del inglés root mean square) de una corriente alterna, al valor
que tendría una corriente continua que produjera la misma potencia que dicha corriente
alterna, al aplicarla sobre una misma resistencia.
Este puede calcularse para una serie de valores discretos o para una función variable
continua. El nombre proviene del hecho de que es la raíz cuadrada del valor medio de los
cuadrados de los valores (ver figura 4).
El valor rms para una colección de N valores { X 1 , X 2 ,...., X n }es:
Ecuación 6
28
Una función variable continua f(t) definida sobre el intervalo T1 ≤ t ≤ T2 el rms viene dado
por la expresión:
Ecuación 7
Al ser la voltaje una función continua V(t) se puede calcular su valor eficaz Vef para un
intervalo de tiempo t1 ≤ t ≤ t2 :
Ecuación 8
En el caso de la rectificación de onda completa como la de una corriente alterna sinusoidal
con una amplitud máxima o de pico
Vp, y período T= π , el valor eficaz Vef
Ecuación 9
La potencia eficaz resultará ser:
Pef = Vef * I ef =
Vp * I p
2 2
=
Vp * I p
Ecuación 10
2
Que es la mitad de la potencia máxima (o potencia de pico)
29
es:
Figura 4. Gráfico del valor rms
Análisis del procedimiento de muestreo
Se desea medir la corriente que circula por el equipo de soldadura en un momento
determinado, para ello se utiliza primeramente un transformador de corriente con un valor
de transformación de 200/5 A, en cuyo secundario se coloca un puente rectificador de onda
completa y una carga de baja resistencia. El objetivo será tomar muestras de voltaje de
dicha carga con el conversor analógico-digital del PIC. Estas muestras variarán su valor de
voltaje en dependencia de la corriente que circule por el primario (devanado secundario del
equipo de soldadura). Finalmente se halla el valor de la corriente real, utilizando la relación
de transformación del transformador de corriente y aplicando la ley de ohm.
Se incorpora entre la carga y el bloque conversor A/D un seguidor de voltaje con el
objetivo de acoplar impedancias y lograr la resistencia infinita deseada para un instrumento
que toma muestras de voltaje.
Esto se logra con un amplificador operacional conectado como tal, lo que se observa en la
figura 5.
Ecuación 11
Figura. 5 Configuración de un amplificador operacional como Seguidor de Voltaje.
30
Y se procede a la conversión A/D mediante la detección de cruce por cero.
Descripción del método de conversión A/D mediante detección de
cruce por cero
A la salida del seguidor de voltaje se conecta la etapa conversora, para ello se tiene un
detector de cruce por cero y un microcontrolador PIC16f877A como se muestra en la figura
6.
Figura 6. Etapa conversora mediante detección de cruce por cero.
Al detectar el cruce por cero ocurre un flanco de bajada en el pin RB0 que provoca una
interrupción en el PIC, y comienza la conversión A/D, que finaliza cuando se detecta el
próximo cruce por cero. Cada valor obtenido es enviado al computador para ser procesado
y convertido en el valor final, que es mostrado a través de la interfaz Web en forma digital
y gráfica.
Selección de fórmulas para medición de AC y cálculo del
valor final
Como el control de corriente en el equipo de soldadura es por fase, la señal sinusoidal
puede tener valores de 0 voltios en gran parte del período como se ilustra en la figura.
31
Para una medición de AC, hay que rectificar el semiciclo negativo para no dañar el
dispositivo digital que toma las muestras, quedando como se observa en la figura 7
Figura 7. Señal rectificada de AC.
Donde el área sombreada es la parte de la onda que conserva valores mayores que cero y
la línea azul es la parte del semiciclo negativo que ha sido rectificada.
Se sabe que por definición la raíz media cuadrática o valor eficaz para una colección de N
valores { X 1 , X 2 ,...., X n } es:
De esta manera para obtener la medición de la señal de entrada se toman muestras durante
el período de la señal y aplicando la fórmula de definición del valor rms se calcula la
corriente rms equivalente (Ipic) que debe ser transformada en el valor real (Ireal) aplicando
la relación de transformación obtenida del transformador de corriente:
Relación de transformación
Î
200
= 40
5
Quedando:
40= Ireal Î Ireal= 40*Ipic
Ecuación 12
Ipic
La Ipic se calcula a partir del Voltaje medido a través del muestreo en el resistor RL:
Ipic=
Vpic
RL
Ecuación 13
32
Donde:
Vpic Î es el valor rms equivalente medido por el microcontrolador.
Ipic Î es el valor rms calculado en el programa de escritorio.
Ireal Î es el valor de corriente real en el equipo de soldadura.
Es función de la etapa del sistema de muestreo electrónico de magnitudes eléctricas, la
toma de muestras proporcionales a la señal de entrada, en la carga RL pero los cálculos
matemáticos del valor eficaz (rms) y así como la aplicación de la relación de
transformación para la obtención de la Ireal cuyo valor es el objetivo de la medición, son
calculados en el computador mediante el sub-bloque llamado “software de escritorio” para
que el valor sea finalmente mostrado en el sitio Web.
Cálculo de elementos del circuito de muestreo electrónico de
corriente
Cálculo de RL
Teniendo en cuenta que la relación de transformación del transformador de corriente
utilizado es 200A Î5A y el máximo voltaje soportado por el microcontrolador PIC es de
5V se calcula la resistencia RL aplicando la ley de ohm donde
5
Vmed
Î RL = = 1Ω
Ecuación 14
RL =
5
I RL
Y la potencia que debe ser capaz de disipar la carga RL es P = 5 * 5 2 = 125W
Cálculo de Roa
Como referencia del datasheet la corriente de funcionamiento del led del 4n25 es Id=10mA
y la caída de voltaje del led típica es de Vd=1.15 V, voltaje rms de línea es 127 V y por
tanto:
Vp =127*
2=
179,6V
Ecuación 15
Vmed =179,6/2=89,8V
Y mediante un divisor de voltaje:
Roa = Vmed − Vd = 89,8 − 1,15 =8865 Ω
0,01
Id
Donde:
Roa
Vd
Id
Vp
Ecuación 16
Es el resistor conectado al led del 4n25
Es el voltaje del led del 4n25
Es la corriente del led del 4n25
Voltaje pico de línea
33
Vmed
Voltaje medio rectificado
Además:
Ecuación 17
Pmed = 89,8* 0,01 = 898 mW
Donde Pmed es la potencia media en el resistor Roa
Selección del resistor Roa
Se escoge el valor comercial 8,2K Ω , cercano al valor obtenido, para que la potencia
disipada no queme el led del optoacoplador y se calcula el valor de corriente que circulará
por el mencionado led en este caso.
Id = Vmed − Vd = 89,8 − 1,15 ≈ 10mA
Roa
Ecuación 18
8200
Con lo cual se obtiene un valor aproximado a 10mA que es la corriente de trabajo del diodo
led del optoacoplador. Se debe tener presente escoger un resistor que sea capaz de disipar
una potencia preferiblemente mayor a 898mW ≈ 1W como se obtuvo anteriormente.
Selección de los diodos para rectificación
Se necesita un puente de diodos que soporten como mínimo 5A y un voltaje rms de 5V
En el mercado de la ciudad se encuentra disponible el puente de diodos, KBPC1008 que
soporta una corriente máxima rectificada de 10 A y un voltaje máximo rms de 560V lo cual
supera las expectativas del diseño y por tanto es viable su utilización teniendo en cuenta su
bajo costo.
34
Circuito de la etapa de muestreo electrónico de magnitudes
eléctricas (Figura 8):
Figura 8. Esquema del Circuito de la etapa de muestreo electrónico de
magnitudes eléctricas
35
Estudio y cálculos para conversor A/D utilizado
en el microcontrolador PIC
Características y cálculos para conversor A/D
Resolución: Es la mínima variación de la señal de entrada que provoca valores de salida
distintos. Depende del valor máximo que es capaz de convertir el dispositivo y del número
de bits que tenga el valor convertido. Se calcula como:
R = Vmax / 2
n bits
Ecuación 19
Cálculo de la resolución en el conversor del PIC
Como la resolución del conversor será de 8 bits se calcula:
Resolución = valor analógico / (2^8)-1
Resolución = 5 V / 255
Resolución = 0.0196v/bit o 19.6mv/bit.
Lo cual significa que por cada 19.6 milivolts que aumente el nivel de tensión entre las
entradas nomencladas como "Vref+" y "Vref-" (en este caso Vref+ = +5V y Vref- = 0V),
éste aumentará en una unidad en número binario a su salida.
Entrada - Salida
0 V – 00000000
0.02 V - 00000001
0.04 V - 00000010
1 V - 00110011
5 V – 11111111
Tiempo de conversión: Es el intervalo de tiempo que transcurre para que el conversor
calcule el valor digital correspondiente al valor analógico presente en su entrada. Varía
dependiendo del tipo de conversor. Es inevitable.
Cálculo de la velocidad de conversión en el PIC
Se designa como TAD el tiempo que dura la conversión de cada bit, que en los PIC16f87X
nunca debe ser menor de 1,6 us.
Frecuencia de oscilación = Fx/32, CAD sin interrupción.
36
Ecuación 20
En este caso:
Frecuencia de conversión = Fosc/32 = 4 MHz/32 = 0,125 MHz
Y por tanto
TAD = 32 * Tosc = 8 us
Ecuación 21
Y como son 8 bits de resolución el tiempo final será
10 * TAD = 80 us
Ecuación 22
Linealidad: Un conversor A/D ideal tiene un comportamiento lineal, pero los componentes
electrónicos presentan ligeras desviaciones. Es inevitable.
Descripción del conversor A/D de aproximaciones sucesivas
El conversor A/D de aproximaciones sucesivas es el utilizado para los microcontroladores
PIC16f877A. Es normal asociar su funcionamiento a un circuito de SAMPLE & HOLD
(muestreo y retención).
Un circuito de muestreo y retención toma una muestra de la señal de entrada, pasándola a
su salida sin modificarla en absoluto y, en virtud de una señal de control, la mantiene
constante. Suelen designarse con las iniciales S/H (Sample/Hold).
En la figura 9 se muestra una representación de este tipo de muestreo.
Figura 9. Ejemplo de Sample and Hold (Muestreo y retención)
Características de los circuitos S/H que determinan su efectividad:
Tiempo de apertura: Es el tiempo que transcurre desde que la señal de control se activa
hasta que realmente se bloquea la señal de salida. Es inevitable, aunque puede llegar a ser
muy pequeño según el tipo de dispositivo utilizado para implementar el conmutador.
Tiempo de adquisición: Es el tiempo que transcurre desde que se libera la señal de control
hasta que la señal de salida del circuito es igual a la señal de entrada. En el modelo de la
figura este tiempo es debido a la carga del condensador y también depende del tipo de
dispositivos utilizados.
37
En un conversor A/D de aproximaciones sucesivas un circuito S/H garantiza que el nivel de
voltaje en la entrada se mantenga constante hasta que finaliza la conversión lo que ayuda a
contrarrestar la demora del tiempo de conversión.
Figura 10. Conversor A/D de aproximaciones sucesivas.
Este conversor es uno de los más utilizados en los circuitos integrados programables
conocidos como microcontroladores. Debe su nombre a un circuito secuencial que forma
parte de su construcción, conocido como Registro de Aproximaciones Sucesivas (SAR)
(ver figura 10). El SAR prueba consecutivamente cada bit, comenzando por el MSB. Si al
activar un bit cualquiera, la tensión generada por el DAC sobrepasa la tensión de entrada,
entonces ese bit se fija a cero; en caso contrario si el voltaje generado está por debajo del
voltaje de entrada el bit se deja en 1 para que forme parte del resultado final y se continúa
probando los bits siguientes, dejando en uno los bit que han pasado la prueba de
comparación. La comparación antes mencionada es desarrollada utilizando precisamente un
amplificador operacional en configuración de comparador como se muestra en la figura 11.
38
Figura 11. El ciclo del CAD de aproximaciones sucesivas, para una conversión de n =
4 bits.
39
Capítulo III
Estudio de un sistema de comunicación por
puerto serial
Descripción de la etapa de comunicación con PC
Figura 12. Modelo de comunicación serie entre el PIC16f877A y el PC
La comunicación entre el PC y el PIC se realiza utilizando transmisión y recepción serial a
través del protocolo RS232 utilizando el chip UART, se conecta el microcontrolador con el
PC utilizando la configuración “null modems” (ver figura 12) para ello se procede al
estudio y descripción de cada sub tema en esta sección.
Sub temas sometidos a estudio:
1. Resumen general sobre el puerto serial y la transmisión serie.
2. Análisis histórico del UART (Universal Asynchronous Receiver/Transmitter)
3. Estudio del estándar RS-232C
40
4.
5.
6.
7.
Descripción del protocolo utilizado para comunicación entre PC y PIC
Estudio de los convertidores de nivel RS-232
Descripción del modo de Acceso al puerto serial mediante Visual Basic
Descripción del protocolo utilizado para comunicación entre PC y PIC
Con el desarrollo de los puntos anteriormente resumidos, se cuenta con la vía y
elementos suficientes y necesarios para establecer la comunicación entre el
microcontrolador PIC 16f877A y el computador.
Resumen general sobre el puerto serial y la transmisión serie
El puerto serie precisamente "serializa" los datos. Esto quiere decir que toma un byte de
datos y transmite los 8 bits del byte uno a la vez. Lo que significa una ventaja pues
necesita únicamente 1 sola vía para transmitir los 8 bits (mientras que un puerto paralelo
necesita 8). La desventaja es que dura 8 veces más para transmitir el dato que si se tuviera 8
vías (ver figura 13).
Figura 13. Imagen de dos puertos serie.
Los puertos serie son mucho más difíciles de configurar y trabajar que el puerto paralelo.
En la mayoría de los casos se necesita que los datos de cualquier dispositivo que sea
conectado al puerto serial, sean convertidos a paralelos nuevamente para su análisis cosa
que hace el chip UART. Pero existen muchas ventajas al utilizar el puerto serial y no el
paralelo.
Descripción de las ventajas de utilización del puerto serie
1. Los cables para el puerto serial pueden ser más largos que para el paralelo. El puerto
serial transmite un “1” lógico como voltajes desde -3 a -25 y un “0” lógico como
voltajes de +3 a +25 donde el puerto paralelo transmite un “0” como 0 voltios y un
“1” como 5 voltios. Además el puerto serial puede tener una máxima oscilación de
50 volts y el paralelo puede tener una máxima oscilación de 5 volts.
2. No se necesita tanto alambrado como para el puerto paralelo. Lo que puede ser
beneficioso al necesitar instalar un dispositivo lejos del PC, en cuanto a costo,
instalación, o detección de fallas.
3. Muchos microcontroladores tienen SCI (Serial Communications Interfaces) para el
intercambio de información con otros medios o dispositivos. La comunicación serial
reduce la cantidad de pines en uso. Solamente dos pines son de uso general,
41
transmiten los datos (TXD) y reciben los datos (RXD) comparado por lo menos con
8 pines si se utiliza un método paralelo.
Los equipos de comunicaciones serie se pueden dividir entre simplex, half-duplex y fullduplex. Una comunicación serie simplex envía información en una sola dirección. Halfduplex significa que los datos pueden ser enviados en ambas direcciones entre dos sistemas,
pero en una sola dirección al mismo tiempo. En una transmisión full-duplex cada sistema
puede enviar y recibir datos al mismo tiempo.
Hay dos tipos de comunicaciones series: síncronas o asíncronas. En una transmisión
síncrona los datos son enviados en bloques, el transmisor y el receptor son sincronizados
por uno o más caracteres especiales llamados caracteres sync o de sincronía.
El puerto serie del PC es un dispositivo asíncrono. En una transmisión asíncrona, un bit
identifica su bit de comienzo y 1 o 2 bits identifican su final, no es necesario ningún
caracter de sincronismo. Los bits de datos son enviados al receptor después del bit de start.
El bit menos significativo es transmitido primero. Un caracter de datos suele consistir en 7
u 8 bits. Dependiendo de la configuración de la transmisión un bit de paridad es enviado
después de cada bit de datos para corregir errores en los caracteres de datos. Finalmente 1 o
2 bits de stop son enviados.
Resumen sobre la velocidad de los datos
La velocidad a la que se envían datos seriales, se denomina velocidad binaria de
transferencia de información, la cual es expresada en unidades de símbolos por segundo.
Una conexión RS-232 con velocidad de 19200 baudios tiene la capacidad de enviar 19200
símbolos de datos en 1 segundo.
Si se pueden enviar como máximo 19200 símbolos en un segundo, el inverso de 19200 dará
como resultado el período de un símbolo (ecuación 4).
Ecuación 23
Si un receptor y un transmisor se conectan a 19200 baudios, el transmisor enviará bits de
datos cada 52us, y el receptor tomará lectura de los bits de datos cada 52us.
Resumen sobre la Paridad
Es un mecanismo de comprobación de errores que precedió a los protocolos de corrección
de errores utilizados en la actualidad. Si está presente un parámetro “ninguno” significa que
no se utiliza esta comprobación de errores, otros valores son par o impar, en cuyo caso se
añade un bit a cada byte que se transmite.
42
El valor de este bit se calcula para que el número de bits de nivel “1” en el byte, sea par o
impar, dependiendo del parámetro seleccionado.
Por tanto, si un byte tiene un valor de 00101101 y se está utilizando paridad impar, el bit
extra será un “1”, porque hay cuatro unos en el bit original y el número total de unos tiene
que ser cinco “impar”. Si el receptor detecta un número par de unos supone que el byte se
ha deteriorado durante la transmisión. Si se detectan cinco unos se supone entonces que el
byte es correcto.
Análisis histórico del UART (Universal Asynchronous
Receiver/Transmitter)
El puerto serial depende de un chip especial como controlador, el UART (Universal
Asynchronous Receiver/Transmitter) (ver figura 14). El UART (Ver anexo 1) toma la
salida paralela del bus del sistema de la computadora y lo transforma en forma serial, para
transmitirse a través del puerto serie. De igual manera realiza el proceso inverso de
convertir en paralelos los datos seriales obtenidos del exterior. Con la finalidad de que
funcione más rápido, la mayoría de los chips UART tienen un buffer integrado que varía de
16B a 16kB de capacidad, el cual permite almacenar datos que vienen del bus del sistema,
mientras procesa los datos de salida (por el puerto serie).
Figura 14. UART
El UART es programable de manera que pueden configurarse las condiciones de
transmisión (velocidad, paridad, longitud y bits de parada). En los primeros PCs, eran
circuitos integrados 8250 de National Semiconductor, pero han ido evolucionando junto
con el PC. Los más significativos se señalan a continuación:
NS 8250. La UART del IBM PC; este circuito tenía un pequeño "bug" que fue corregido
mediante las modificaciones en las rutinas BIOS. Fue sustituido por el 8250-B.
NS 8250A. Este chip corregía los problemas de los predecesores, sin embargo no podía ser
utilizado en los modelos XT. Este chip no funcionaba a más de 9600 bps.
43
NS 8250B. Fue el último de la serie de los 8250, retomó el antiguo bug, de forma que
pudiera funcionar correctamente con las BIOS de los XT. Todos los de esta serie tenían un
acceso muy lento, lo que obligaba a incluir estados de espera en el procesador. Tampoco
funcionaba por encima de 9600 bps.
NS 16450. Elegido para trabajar con los procesadores i286 de clase AT. Funcionaba bien
a 9600 bps, e inauguró la época de módems de alta velocidad. No funcionaba
correctamente en los sistemas XT, debiendo ser sustituido por el 16550.
NS 16550. Fue el primer chip de su clase dotado con búferes FIFO para transmisión y
recepción de 16 bytes, que le hacen especialmente indicado para comunicaciones rápidas.
Era más rápido que el 16450, operando por encima de los 9600 bps, pero aun conservaba
algunos problemas, especialmente en los búferes, por lo que también fue sustituido.
NS 16550A. Rápida y fiable UARTs; adecuado para operar con MODEMs de alta
velocidad, puede operar a 115 Kbps. Su lógica es compatible pin a pin con el 16450, al que
puede sustituir. Además puede utilizar canales DMA.
En la actualidad se han introducido versiones mejoradas compatibles con el 16550A,
alcanzando velocidades de hasta 460Kbps.
Estudio del estándar RS-232C
El puerto serie del PC es compatible con el estándar RS-232 (actualmente RS-232C). Este
estándar fue diseñado en los 60s para comunicar un equipo terminal de datos o DTE (Data
Terminal Equipment, el PC en este caso) y un equipo de comunicación de datos o DCE
(Data Communication Equipment, habitualmente un MODEM).
La comunicación RS-232 es asincrónica. Por lo que la señal del reloj no se envía con los
datos. Cada palabra se sincroniza utilizando un bit de Start y uno de Stop, y el reloj interno
de cada lado.
Figura 15. Forma de onda de la comunicación RS-232 asíncrona.
En el diagrama de la figura 15 muestra la forma de onda del UART al usar el 8N1. 8N1
significa 8 bits de datos, ninguno de paridad y 1 bit de Stop. Una transmisión comienza con
un bit de Start en 0. Entonces cada bit de datos es enviado, uno a la vez. El LSB (bit menos
significativo) se envía primero. Finalmente se envía un bit de parada con estado lógico “1”.
44
Se muestra además que después del bit de Stop le sigue un bit de nivel lógico bajo, lo que
informa al sistema que luego viene otra cadena de datos. Si hubiera terminado el envío de
información, luego del bit de Stop permanecería el nivel alto.
Como los bit de datos están enmarcados entren un bit de Start y uno de Stop, si cuando
corresponde el bit de Stop se recibe un nivel lógico “0” ocurre un error de framing, cosa
que es frecuente cuando emisor y receptor están trabajando a distintas velocidades.
El diagrama de la figura 15 sólo es válido para la señal inmediata al UART. La lógica RS232 utiliza niveles de voltaje entre +3 y +25 para definir un “0” y niveles entre -3 y -25
para definir un “1” lógico, cualquier voltaje entre +3 y -3 estará indefinido.
Figura 16. Forma de onda RS-232, marca y espacio.
La forma de onda mostrada en la figura 16 es la realmente aplicada a una línea serial RS232 en la cual una “Marca” determina un nivel lógico “1” y un “Espacio” determina un
nivel “0”.
El estándar especifica 25 pines de señal, y que el conector de DTE debe ser macho y el
conector de DCE hembra. Los conectores más usados son el DB-25 macho, pero muchos de
los 25 pines no son necesarios. Por esta razón en la actualidad se utilizan los DB-9 macho.
Configuración de pines del puerto serial
En general el protocolo RS232 y en especial los conectores DB9 del puerto serie cuentan
con los pines que se muestran y describen a continuación (ver tabla 1)(ver anexo 2).
45
Tabla 1. Pines del puerto serial.
Carrier Detect (Portador detector)- Determina si el MODEM está conectado a una línea
telefónica en funcionamiento.
Receive Data (Receptor)- El computador recibe la información enviada por el MODEM.
Transmit Data (Transmisor)- La computadora envía información al MODEM.
Data Terminal Ready – El computador indica al MODEM que está listo para la
comunicación.
Signal Ground (Tierra)- Pin de tierra.
Data Set Ready - El MODEM indica al computador que esta listo para la comunicación.
Request To Send (Solicitar para envío)- El computador le solicita al MODEM si esta listo
para recibir información.
Clear To Send - El MODEM indica al computador que ya le puede enviar información.
Ring Indicator - Una vez que una llamada ha tomado lugar el computador reconoce por
esta señal (enviada por el MODEM) que una llamada es detectada.
Diferentes tipos de configuraciones se utilizan para la conexión de estos pines dependiendo
del uso que se le den, en este caso se explican dos:
1. Configuración Null Modems
2. Configuración lazo cerrado
46
Configuración “Null Modems” (Sin Módem)
Es comúnmente utilizada para el intercambio de datos entre dos computadores o un
microprocesador y el computador (ver figura 17).
Figura 17. Configuración Null modems.
Este método requiere solamente 3 alambres (TD, RD y SG). La teoría de operación es
razonablemente fácil. La idea es hacer creer al computador que se esta comunicando con un
módem. Cualquier dato transmitido del primer computador se debe recibir por el segundo
computador o microcontrolador. TD está conectado así con el RD. El segundo dispositivo
debe tener la misma disposición, RD conectado con TD. La tierra de la señal (SG) se debe
también conectase pin a pin siendo comunes en ambos computadores o computador y
microcontrolador.
Como del Terminal DTR (Data Terminal Ready), el Terminal DSR (Data Set Ready ) y el
terminal CD (Carrier Detect) están unidos, cuando el Terminal DTR envía el dato de aviso
de que esta listo para enviar, el DSR y el CD lo reciben inmediatamente como si un
MODEM hubiera confirmado que también está listo para recibir los datos.
Ahora la preocupación debe centrarse en los pines RTS (Request to Send) y CTS (Clear To
Send). Como ambos computadores se comunican con la misma velocidad, estos también se
cortocircuitan para simular la respuesta de un MODEM al RTS. Cuando el computador
desea enviar datos, afirma a si mismo, dicha petición y entonces envía.
Notar que el indicador RI (Ring Indicator) no está conectado. Esta línea se utiliza
solamente para informar a la computadora que hay una señal de sonido en la línea
telefónica. Pues como no se utiliza realmente un módem conectado con la línea telefónica
esto se deja desconectado.
Configuración “LoopBack Plug” (Lazo cerrado)
Es conveniente para probar un programa utilizando el mismo computador en el que se esté
desarrollando, lo que significa que se envía y se recibe información al mismo tiempo.
47
Figura 18. Configuración Lazo cerrado
Como se puede observar en la figura 18, se vuelve a simular el módem, pero en este caso
sólo se utiliza un dispositivo por lo que se unen los pines TD y RD.
Estudio de los convertidores de nivel RS-232
Casi todos los dispositivos digitales que se utilizan requieren los niveles de la lógica de
TTL o Cmos. Por lo tanto el primer paso a conectar un dispositivo con el puerto RS-232 es
transformar los niveles RS-232 nuevamente a valores entre 0 y 5 voltios. Para lograrlo se
utilizan los convertidores de nivel RS-232.
Figura 19. Transmisor/ Receptor MAX 232
El convertidor más común es el max232 el cual convierte a voltajes de +10 y -10 con una
sola fuente de 5 volts (ver figura 19). Además en un sólo dispositivo integra dos
transmisores y dos receptores. En la figura se muestra el modo de conexión de este
dispositivo con un microcontrolador PIC16f877A y la configuración Null MODEM con el
computador (ver figura 20).
48
Figura 20. Modo de conexión del MAX232
Descripción del modo de Acceso al puerto serial mediante
Visual Basic
En ese mundo tan extenso de la plataforma .NET y más específicamente de Visual
Basic.NET existen varias formas de interactuar con el puerto serie del computador.
Una primera idea podría ser simplemente agregar un control que viene integrado al
programa y que se llama SerialPort. Agregado este al proyecto podemos configurarlo
mediante sus propiedades estáticas que pueden ser manejadas en la interfaz gráfica o
simplemente mediante código.
Acto seguido se explica otra manera que utiliza al igual que el control SerialPort, el espacio
de nombres IO.Ports.SerialPort, pero que a diferencia del control antedicho, en este caso
todo se hace mediante código.
Lo primero es declarar una variable de eventos que será del tipo IO.Ports.SerialPort, lo que
a la larga es casi lo mismo que crear el control SerialPort.
Dim WithEvents serialPort As New IO.Ports.SerialPort
49
Para poder configurarlo deberá estar cerrado previamente el puerto lo que se determina a
continuación y si está abierto entonces se debe cerrar.
If serialPort.IsOpen Then
serialPort.Close()
End If
Para detectar cualquier error en este manejo tan vulnerable se emplea la estructura Try,
Catch, EndTry.
Entonces se debe obtener un puerto serial activo, en este caso se utiliza el 1 que está
presente en todos los computadores que tengan al menos un puerto serial y que se llama
COM1
Será necesario configurar la velocidad de transmisión en baudios en este caso fijada a
19200 baudios lo cual garantiza el mejor compromiso entre máxima velocidad y mínima
tasa de errores.
La paridad ha sido puesta a “Ninguna” lo cual significa que este tipo de detección de
errores está desactivado en vistas de que no es necesario pues no será una aplicación que
necesite excesivo nivel de exactitud.
El bit de Stop será uno y de igual modo debe ser configurado en el dispositivo con el que se
realizará la comunicación.
Try
With serialPort
.PortName = My.Computer.Ports.SerialPortNames(1)
.BaudRate = 19200
.Parity = IO.Ports.Parity.None
.DataBits = 8
.StopBits = IO.Ports.StopBits.One
End With
Luego de ser configurado correctamente, el puerto puede ser abierto, para quedar listo para
el uso.
serialPort.Open()
Si durante la configuración o la conexión al puerto ocurre una excepción, esta será
mostrada en pantalla.
Catch ex As Exception
MsgBox(ex.ToString)
End Try
50
Estudio del Evento Data Receive
Este evento no está asociado a ningún control de la interfaz gráfica sino que responde a la
llegada de información a través del puerto serial. Es muy útil puesto que está a la escucha
constantemente después de ser abierto el mencionado puerto, y a la llegada de los datos se
ejecuta automáticamente, dando la posibilidad al programador de incluir dentro de la
estructura Sub, EndSub cualquier rutina de manejo de datos, como puede ser almacenarlos
en una variable o base de datos.
Private Sub DataReceived( ByVal sender As Object, ByVal e As_
System.IO.Ports.SerialDataReceivedEventArgs) Handles serialPort.DataReceived
Mediante la propiedad ReadExisting se puede capturar cualquier dato entrante y convertir
los bytes a String.
serialPort.ReadExisting
Existen otras opciones, en dependencia de la clase de datos que se deseen obtener. Un
segundo ejemplo plantea la conversión de los bytes recibidos en un dato de tipo entero.
serialPort.ReadByte
En cualquier acción de programación en la que se desee mantener al programa realizando
una operación determinada sin bloquear la interfaz de usuario mientras esta se realiza, se
deben utilizar los “hilos de programación”, cosa que es posible gracias a la propiedad del
entorno windows de desarrollar la multitarea, cosa que se trató en el capítulo 1.
Para esto en la plataforma.NET se pueden utilizar diferentes formas de programación, una
de ellas es invocar un Delegado, abajo se muestra su sintaxis.
Sub
Dim WriteInvoke As New WriteDataDelegate(AddressOf WriteData)
Invoke(WriteInvoke)
End Sub
Public Delegate Sub WriteDataDelegate()
Private Sub WriteData()
If BUFERIN = "A" Then
MsgBox("HOLA")
End Sub
51
Logrado esto se puede realizar cualquier operación al unísono con otras tareas en la interfaz
gráfica o el proyecto en general, como utilizar una sentencia If y luego si se cumple
entonces un mensaje de texto como en el ejemplo anterior.
Modo de enviar datos por el Puerto serial
Para el envío de información por el puerto serial, basta con escribir:
serialPort.Write( )
El argumento puede ser un número estático, un valor String.
Descripción del protocolo utilizado para comunicación entre
PC y PIC16f877A
Tabla 2. Protocolo de comunicación entre el PIC16f877A y el PC
Como se muestra en la tabla 2 el protocolo es desarrollado mediante el envío de código
ASCII, para ello por ejemplo si de desea detectar la existencia y funcionamiento del
hardware, el PC envía un carácter “T” al microcontrolador, este último lo recibe y envía
una “R” de respuesta lo que significará “Hardware detectado”.
En el último caso el PC envía la petición de toma de muestras para la medición entonces se
activa el bloque de muestreo electrónico de magnitudes eléctricas y se envían los datos
obtenidos al PC seguidos de una “M” para finalizar la recepción de muestras.
52
Capítulo IV
Concepción de la etapa PC Estación Central
Figura 21. Diagrama de la etapa PC estación central.
En la figura 21 se muestra la etapa PC estación central donde se ha alojado el sitio Web
para monitoreo y mando electrónico. A través del uso de los intermediarios software de
escritorio y base de datos que proveen la ruta para la adquisición del dato de mando sobre
el microcontrolador así como su retorno a la Web, entre otras funciones que se describen
más adelante.
En esta etapa se realiza un estudio general sobre Internet y sus estándares y seguidamente
se estudia de manera general el lenguaje html que se utiliza para enmarcar el contenido de
las páginas Web, a lo que sigue el estudio de lenguajes de lado servidor que se utilizan
ampliamente en el proyecto, la importancia del estudio del html es que el código de lado
servidor es mostrado en el lado cliente en forma de html. También se realiza un estudio
sobre el control Webchart con el que se grafican los datos de corriente, obtenidos de la base
de datos y que son procesados con anterioridad por el software de escritorio. Los títulos
principales se resumen a continuación:
1. Estudio general sobre Internet
53
2.
3.
4.
5.
6.
7.
8.
9.
Estudio sobre páginas HTML (estáticas) y páginas dinámicas
Estudio sobre los Lenguajes de lado servidor
Estudio del Control WebChart
Estudio del SQL SERVER Database
Diseño del software de Escritorio
Diseño del software en Visual Web Developer
Diseño del sistema de monitoreo por Webcam
Descripción de la interfaz Web
Estudio general sobre Internet
Red es la interconexión entre dos o más computadores de manera tal que puedan compartir
recursos.
Internet es llamada la red de redes porque representa una interconexión de redes mundial,
es decir que no sólo se trata de una red, sino que esta es la vía de interconexión entre toda
clase de subredes existentes en el planeta.
El Ministerio de Defensa de Estados Unidos, en la década de los 60, estableció una red
interestatal, de tal forma que toda la defensa del país dependiera de la misma red y
compartiera los recursos de ésta. Así nació ARPANet (Advanced Projects Agency Net) con
tres requisitos fundamentales:
1. Debía estar protegida en caso de que un desastre natural o una guerra, especialmente
frente a un ataque nuclear al país, de modo no debilitase a la totalidad de la red,
aunque una parte estuviera dañada.
2. Esta debía permitir la incorporación de nuevos elementos con facilidad.
3. Y además debería utilizar un protocolo, que pudiera ser entendido por cualquier
ordenador, independientemente del sistema empleado.
Actualmente se cumplen estos 3 preceptos principales, e Internet no se encuentra ubicada
en un lugar específico, Internet somos todos los que conectamos una subred, un servidor, o
hacemos algún aporte a esta gran red que luego de la imprenta ha sido causante de una
revolución científica, por el flujo de información que por ella circula, donde la única
barrera que se tiene para estar interactuando con el mundo en tiempo real, es la de los
idiomas, bien sean los humanos o los informáticos. En un esfuerzo por estandarizar estos
últimos se crearon los protocolos de Internet.
Descripción sobre el control de los estándares en Internet (RFC)
Los muchos protocolos de Internet existentes en la actualidad son controlados mediante el
mecanismo conocido como RFC ("Request For Comments"). Si los investigadores diseñan
e implementan nuevos protocolos, estos se ponen en conocimiento de la comunidad de
Internet en la forma de un RFC. El RFC es descrito por el IAB ("Internet Architecture
Board"). La mayor fuente de RFCs es el IETF ("Internet Engineering Task Force") que es
una organización subsidiaria del IAB. Sin embargo, cualquiera puede enviar un informe
propuesto como RFC al editor de los RFC.
54
En resumen las RFC son notas técnicas y organizativas donde se describen los estándares o
recomendaciones de Internet.
En el caso de la informática, están hechos para hacer compatibles los programas entre sí y
que se pueda usar diferente software para la misma función, definiendo protocolos y
lenguajes, que garantizan la interoperabilidad entre sistemas si ambos cumplen el mismo
RFC.
En dicho caso se puede poner como ejemplo la versión actual de HTTP que es la 1.1 y su
especificación está en el documento RFC-2616 mediante el cual entre otras cosas se
delimita la forma en que se envían peticiones de acceder a una página Web, y la respuesta
de esa Web con la información final en pantalla.
Gracias a las RFC se ha logrado además que a pesar de existir infinidad de sistemas
operativos, estos puedan interactuar entre sí. Aunque cabe destacar que las RFC son sólo
recomendaciones y no son de obligatorio cumplimiento.
Estudio sobre páginas HTML (estáticas) y páginas dinámicas
El HTML (acrónimo de HyperText Markup Language) no es lenguaje de programación en
si, sino de descripción de ficheros, puesto que no ejecuta un set de instrucciones, más
exactamente es un código capaz de organizar los datos presentes en una página Web así
como darles formato, como puede ser la ubicación de imágenes y letras o como su tamaño
y color, como también será útil para introducir hipertextos, pero todo esto se ve limitado
porque al quedar la página diseñada, sus datos siempre se mostrarán de una manera
prefijada y en ningún caso con algo de automatismo, como lo puede ser mostrar datos de
una base de datos que está en constante cambio.
El HTML fue desarrollado originalmente por Tim Berners-Lee mientras estaba en el
CERN, y fue popularizado por el navegador Mosaic desarrollado en el NCSA. [1]
Ya existían múltiples estándares informales del HTML cuando se necesitó crear uno oficial,
por lo que se decidió migrar a una versión común que fue llamada HTML+ y a cuyo primer
producto estándar se le tituló HTML 2.0 que era demasiado complejo y carecía de
aplicación práctica con la tecnología existente de entonces. Este proceso culminó con la
versión 4 y última, la cual constituye la más reciente del mencionado lenguaje y que ha sido
aprobada por el World Wide Web Consortium (W3C). Una versión más actual del HTML
pudiera pensarse como el XHTML, cuyo objetivo principal es avanzar en el proyecto del
W3C de lograr una Web semántica, donde la información, y la forma de presentarla estén
claramente separadas, es decir, que existan metadatos que describan el contenido, el
significado y la relación de los datos, pudiendo realizar operaciones automatizadas sobre
las Webs, cosa que puede influir por ejemplo en la calidad de las búsquedas por Internet.
No obstante son recomendadas por el W3C la versión 4.0 de HTML tanto como XHTML.
55
Resumen sobre las Etiquetas HTML
Para sus propósitos el HTML se vale un una serie de directivas o tags. Los tags son una
serie de etiquetas que enmarcan la información a mostrar, definiendo las características de
lo que se quiere mostrar, como forma, tamaño o color, aunque estas en si no se muestran.
La etiqueta principal de un documento HTML es precisamente:
<HTML>
Esta informa al navegador que lo que sigue es este tipo de lenguaje, la cual debe ir
precedida de su etiqueta de cierre como en todos los tags HTML, de la siguiente manera:
</HTML>
El código HTML además siempre incluye otras etiquetas:
<HTML>
<HEAD>
<TITLE> El Título aquí </TITLE>
</HEAD>
<BODY>
...
</BODY>
</HTML>
El HEAD es el encabezamiento de la página y su código no se expresa visualmente en el
navegador o página Web. Dentro de este encontramos de manera común el título de la
página que se muestra en la parte superior de dicho navegador. Le sigue el BODY donde si
se insertará todo el código final a mostrar.
El HTML puede ser escrito en cualquier editor de texto como el Notepad o Wordpad, sólo
con guardar el archivo con extensión htm o html, el resultado final será visible por medio
de un navegador en forma de página Web. Existen editores más sofisticados que permiten
ver código y diseño al mismo tiempo, como un sinnúmero de utilidades que incluso
generan código para acciones específicas y ayudan a lograr una edición de mayor calidad y
facilidad, entre estos se pueden citar al FrontPage o Dreamweaver, aunque como se dijo
anteriormente, para este tipo de lenguaje descriptivo es suficiente contar con un editor de
texto.
56
Resumen sobre la deficiencia del HTML
Debido a su naturaleza de lenguaje descriptivo, resulta insuficiente en muchos casos por lo
que ha sido necesario utilizar otros lenguajes más versátiles, que además de útiles, también
resultan más visiblemente complejos de aprender, pero que pueden responder a los
llamados del navegador con tareas automatizadas y de alguna manera inteligentes,
imprescindibles en algunos casos como lo son la actualización de una tienda virtual o como
este caso, de los datos constantemente cambiantes de una base de datos. Estos lenguajes
con tal capacidad son los protagonistas del concepto de páginas dinámicas.
Estudio sobre los Lenguajes de lado servidor
Se ha mencionado antes que los navegadores son capaces de interpretar el código HTML
presentes en las páginas Web y convertirlas en información visual de un formato dado, lo
cual puede ser el resultado de una petición al servidor de la página mediante el URL o un
hipervínculo, pero en ocasiones y aunque esto se realiza de manera transparente para el
usuario, no pedimos al servidor código HTML en si sino un lenguaje de otro tipo que no
puede ser leído directamente por el navegador, sino por el servidor (e incluso no por
cualquiera) el cual devuelve la información final en código HTML para ser mostrada al
usuario, el resultado final será el mismo.
Esto es posible gracias a los “Lenguajes de lado servidor” comprendido únicamente por
dichos servidores y dota a la aplicación de utilidades nuevas puesto que pueden ser
recreadas a partir de datos residentes en una base de datos, así como también el usuario
adquiere un poder único de interacción con la página pudiendo este también modificarla en
tiempo real.
Tanto lenguajes de lado servidor o cliente son utilizados indistintamente o al unísono
puesto que cada uno tiene su ingrediente especial en situaciones especificas, aunque cabe
mencionar que lenguajes de lado servidor permiten crear aplicaciones mas robustas y
personalizadas.
Los lenguajes de lado cliente son independientes del servidor, por lo que permiten que la
página pueda ser albergada en cualquier sitio. En tanto un lenguaje de lado servidor es
independiente del cliente por lo que es considerablemente menos rígido respecto al cambio
de un navegador a otro o respecto a las versiones del mismo. Además, los scripts son
almacenados en el servidor quien los ejecuta y traduce a HTML por lo que permanecen
ocultos para el cliente. Esto último representa una forma de proteger el trabajo realizado
por los programadores, así como añadir seguridad a las Web, debido a que el código real no
es mostrado, también en el caso de las que interactúan con un servidor de correo electrónico
u otro que requiera autenticación mediante password donde, el acceso no estará
simplemente limitado a incluir la dirección o URL en el navegador.
La desventaja principal de los lenguajes de lado servidor es que se necesitará un servidor
capaz de interpretar las instrucciones de dichos lenguajes.
57
Entre los citados lenguajes de lado servidor se pueden destacar como los más ampliamente
utilizados para el desarrollo de páginas dinámicas al ASP, PHP y PERL y ASP.NET.
El ASP (Active Server Pages) es un lenguaje derivado del Visual Basic desarrollado por
Microsoft. Su empleo se restringe a plataformas funcionando bajo sistema Windows NT.
El PHP es considerado como el lenguaje análogo al ASP (de versión libre) utilizado en
plataformas Unix y Linux.
Estos dos lenguajes son útiles para la explotación de bases de datos y su aprendizaje resulta
accesible para una persona común que tenga algo de conocimientos de programación.
Por otra parte, el PERL es un lenguaje más rápido y potente que requiere un aprendizaje
más largo.
Desde 2002, el ASP clásico está siendo cambiado por ASP.NET, que, entre otras cosas,
reemplaza los lenguajes interpretados como VBScript o JScript por lenguajes compilados a
código intermedio (llamado MSIL o Microsoft Intermediate Language) como Visual Basic,
C#, o cualquier otro lenguaje que soporte la plataforma .NET. El código MSIL se compila
con posterioridad a código nativo. [2]
Los formularios Web Forms ASP.NET agregan un modelo de diseño y una interacción
enriquecida mediante programación que es similar a formularios de Visual Basic. Los
controles de servidor de ASP.NET proporcionan propiedades y eventos adicionales que no
están disponibles en controles HTML. [3]
La programación mediante Webforms se realiza a través del software Visual Web
Developer que se describe a continuación.
Descripción del Visual Web Developer
Esta herramienta de reciente aparición e incluida en el paquete de Visual Studio 2005 de
Microsoft, conjuga las utilidades de la programación de lenguajes compilados como el
Visual Basic, con el diseño de páginas Web. Integrando la utilidad del ASP.NET en una
interfaz gráfica de uso relativamente sencillas y alta utilidad mediante el empleo de los
webforms, que son controles que se incluyen en el sitio Web con solo arrastrarlos y que
pueden ser posteriormente programados en el ya mencionado Visual Basic, C# o J#, lo cual
hace que la potencialidad de estos lenguajes pueda ser utilizada de manera cotidiana en las
páginas, conservando su forma original de programación y facilitando actividades como el
manejo de bases de datos.
Su interfaz gráfica inicial es mostrada en la figura 22, donde se aprecian los webforms en
su lado izquierdo y en el centro el código HTML finalmente visible por el usuario así como
un botón que permitirá alternar entre código y diseño.
58
El código de programación de los webforms será escogido al inicio al crear el sitio Web en
blanco. En este proyecto específicamente se utiliza el Visual Basic (ver figura 23).
Figura 22. Interfaz gráfica inicial de Visual Web Developer 2005.
Figura 23. Ventana para crear nuevo sitio en Visual Web Developer 2005.
59
Estudio del Control WebChart
Para conseguir el objetivo de plasmar mediante un gráfico, la información del estado de la
corriente proveniente del equipo de soldadura a supervisar se utiliza un webform llamado
WebChart que aunque no esta incluido en el Visual Web Developer, se puede obtener de
manera gratuita de la página de un trabajador de Microsoft desde la siguiente dirección
http://www.carlosag.net, lo que demuestra la flexibilidad de este programa que puede ser
ampliado con webforms adicionales a los de fábrica.
El control se puede mostrar inicialmente de la siguiente manera (figura 24):
Figura 24. Control WebChart.
Pero esta vista puede ser variada a través de la interfaz gráfica de VWD mediante las tareas
del control que presenta varios tipos de auto-formatos como se muestra en la figura 25.
Figura 25. Tareas del Control WebChart (auto formato).
60
Sabiendo eso, lo primero ha hacer es agregar el espacio de nombres WebChart.dll al sitio.
Para ello se hace click derecho dentro del cuadro de herramientas y se escoge: “Elegir
elementos” como se muestra en la figura 26.
Figura 26. Interfaz para agregar elemento nuevo.
En el cuadro se aprecia el botón examinar donde se busca la ubicación del WebChart.dll en
el disco duro y finalmente queda agregado en el cuadro de herramientas listo para ser
utilizado como los controles originales del VWD (ver figura 27).
Figura 27. WebChart control en el cuadro de herramientas.
61
Descripción de las propiedades del control WebChart
Para acceder a las propiedades del control se tienen dos opciones, las cuales son similares al
Visual Basic:
1. Marcar con un click el Web Form (Windows Form en VB) y en la ventana llamada
precisamente propiedades, se pueden modificar a conveniencia, sólo que de esta
manera, como ya es clásico, se sabe que dichas propiedades quedarán
predeterminadas y por tanto sin posibilidad de modificación en tiempo de ejecución.
2. Esto último se hace mediante código como también es acostumbrado en VB. Al
campo de edición de código se puede acceder haciendo doble click sobre el control
o simplemente yendo a la ventana llamada “Explorador de Soluciones” en la cual si
no le se le han cambiado el nombre, existirá un archivo llamado Default.aspx que
se puede desplegar y que contiene en su interior otro archivo llamado
Default.aspx.vb cuyas últimas 2 letras indican que es el espacio destinado a incluir
el código en Visual Basic. Esto se muestra en la figura 28.
Figura 28. Interfaz del explorador de soluciones.
Para el manejo de código lo primero debe ser incluir el espacio de nombres WebChart.dll
que aunque esta añadido a la aplicación visual, no así al código fuente. Este paso puede
omitirse pero al hacerlo se evitan repeticiones que serían, en su defecto, totalmente
necesarias de la palabra “Webchart” que indicará que las propiedades que se están
modificando son las de dicho control o espacio de nombres.
Para ello se escribe en el encabezamiento del archivo Default.aspx.vb lo siguiente:
Imports WebChart
62
Luego en el evento que se desea cargar el gráfico que puede ser el “Page_Load” se declara lo
siguiente:
Primero el tipo de gráfico a construir. Existen varias opciones como gráfico de columnas,
tipo torta, de línea. En este caso fue elegido el de línea:
Dim Chart As LineChart = New LineChart
Lo que se hace es declarar una variable en este caso llamada “Chart” con la que se trabaja
en lo adelante para modificar o actuar sobre cualquier propiedad del gráfico de líneas.
El formato del gráfico como colores y leyenda pueden ser declarados como sigue:
Chart.Fill.Color = Color.FromArgb(200)
Primero se rellena de color de fondo al gráfico mediante el argumento que se le pasa al
Color.FromArgb ( ) que puede contener un valor entero desde 0 a 255, significando un
valor específico en el código ARGB de 32 bits.
Un color ARGB de 32 bits se diferencia del clásico RGB en que precisamente dispone de
un componente Alpha adicional. Los 8 bits inferiores constituyen el componente azul,
luego el verde, los 8 siguientes el rojo, y finalmente los 8 bits más significativos
representan el valor alpha. 255 que es el componente totalmente activado y 0 totalmente
desactivado.
El componente alpha se añade para hacer el valor del color transparente (alpha = 0) u
opaco (alpha = 255). Con esto se logra aumentar el número de niveles de intensidad de la
imagen sin aumentar el número de colores utilizados, lográndose un medio tono, y un
mayor contraste en detrimento de la resolución.
También existen otras formas de representar el color de fondo en el Color.FromArgb ( )
pues se puede utilizar por ejemplo el código RGB tradicional escribiendo tres números
enteros desde 0 a 255, separados por “,” que sean la combinación de colores Rojo, Verde,
Azul.
Se puede además incluir otros colores predeterminados contenidos en el espacio de
nombres System.Drawing.Color.
En el siguiente caso se le da color a la línea del gráfico y más abajo se especifica su ancho.
Chart.Line.Color = Color.SteelBlue
Chart.Line.Width = 5
Y se agrega el nombre de la Leyenda al gráfico.
63
Chart.Legend = "WebChart information"
Luego de configurar estas propiedades es necesario pasarle los valores al control que crea
una imagen con la configuración fijada y los datos obtenidos, ya sean estáticos, variables o
simplemente provenientes de una base de datos, lo cual es finalmente mostrado como figura
de gráfico en nuestro sitio Web.
Esto se hace creando los puntos uno a uno, que son llamados ChartPoints.
Para ello se escribe:
Chart.Data.Add (New ChartPoint( Var1, Var2 ))
Donde:
•
Var1 son valores estáticos o variables de tipo String que pueden ser por ejemplo:
tiempo (en meses o segundos), que representan el eje de las X.
•
Var2 son valores estáticos o variables de tipo entero que representan el eje Y
Para que estos puntos queden adicionados al gráfico, no basta con crear los ChartPoints, se
deben agregar además al gráfico específico al que pertenecerán utilizando el nombre que se
le haya colocado a dicho gráfico en la ventana de Propiedades.
NombreGráfico.Charts.Add (Chart)
Finalmente se crea (o redibuja el gráfico, en caso de existir uno anterior) y está listo para
ser mostrado en el sitio.
NombreGráfico.RedrawChart ( )
Estudio del SQL SERVER Database
Una de las poderosas herramientas incluidas en el paquete de Visual Studio 2005 es el
motor de bases de datos SQL SERVER 2005, cuya eficacia ha sido probada en versiones
anteriores y que permite acceder a crear bases de datos, tablas, vistas, configurar las
variables que serán incluidas en las tablas así como agregarles valores manualmente a
través de la interfaz gráfica que provee el paquete de VS 2005.
Para poder utilizar una base de datos se puede emplear una existente o agregar una nueva
base de datos. Para agregar un nueva al sitio recién creado, hay que ubicarse en el
“Explorador de soluciones”, en la carpeta que existe de manera predeterminada en el sitio,
con nombre “App_Data”, hacer click derecho y click donde está escrito “Agregar nuevo
elemento”, el cual será una base de datos con el nombre que se escoja para ella y de
extensión .mdf por ser de SQL SERVER, la cual estará totalmente disponible para ser
usada por esta aplicación o cualquiera en el paquete Visual Studio 2005 (ver figura 29).
64
Figura 29 Interfaz visual para agregar nueva base de datos.
Podemos ahora a través del Explorador de servidores manipular la base de datos Añadiendo
tablas o vistas y datos a estas, así como estableciendo los tipos de variables o propiedades
como determinar la clave principal o añadir o eliminar campos y/o registros (ver figura 30).
Figura 30. Interfaz visual para agregar nueva tabla a la base de datos.
65
Para mostrar la información proveniente de la base de datos que será adquirida por el
control WebChart, se debe trabajar directamente desarrollando el lenguaje Visual Basic lo
que se muestra en lo que sigue.
Para ello el primer paso es agregar al encabezamiento del archivo el espacio de nombres
requerido para manejar los datos.
Imports System.Data
Imports System.Data.SqlClient
Un objeto SqlConnection representa una sesión de conexión con un origen de datos de SQL
Server y por tanto se declara una variable del tipo SqlConnection con la cadena de
conexión que se pasa dentro de su argumento y que tiene incluido el servidor y la base de
datos específica a la que queremos acceder.
Dim cone As New_
SqlConnection("Data Source=.\SQLEXPRESS; AttachDbFilename=…
Luego con la clase SqlCommand se define la petición de la tabla específica de la base de
datos y se establece la conexión para adquirir los datos requeridos.
Dim cmd As New SqlCommand
cmd.CommandText = "SELECT * FROM LaTabla"
cmd.Connection = cone
cone.Open()
El comando SELECT * FROM LaTabla indica que serán tomados todos los campos de la
tabla llamada “LaTabla” residente en la base de datos. Donde el parámetro “todos” es
precisamente delimitado por el asterisco (*).
Empleando la clase SqlDataReader se pueden leer los datos obtenidos de la tabla en un sólo
sentido sin posibilidad de retorno y sin forma de modificar dichos datos puesto que es de
sólo lectura.
Para crear un SqlDataReader, se llama al método ExecuteReader del objeto SqlCommand
de la siguiente manera:
Dim Varlectura As SqlDataReader
Varlectura = cmd.ExecuteReader
Entonces mediante la propiedad HasRows se indica si aún quedan registros por leer y con
el método Read se avanza al próximo registro.
If Varlectura.HasRows Then
While Varlectura.Read
66
Finalmente los datos que se vayan tomando de la tabla en cuestión se pueden ir
almacenando en variables para posteriormente ir agregándolas paso a paso (o mediante una
variable de array) como se muestra.
Dim Var1 As String
Dim Var2 As Integer
Var1 = Varlectura("nombre")
Var2 = Varlectura("id")
Donde id y nombre pueden ser los campos de la tabla llamada LaTabla.
Por último se cierra la conexión.
cone.Close()
Pero de manera distinta al manejo de bases de datos utilizando los objetos SqlCommand o
SqlDataReader, se puede lograr el mismo resultado a través de la clase DataSet.
Un DataSet contiene en memoria de los datos provenientes de la base de datos, los cuales
son almacenados en un DataTable, por tanto un DataSet es un contenedor de DataTables,
que es una estructura similar a la de una tabla en una base de datos, se pueden eliminar,
agregar, editar registros o campos, además se pueden hacer consultas etc., la diferencia con
un DataReader es que es más pesado para el sistema, porque los datos permanecen en
memoria. Además un DataReader es solamente un "vistazo" de los datos, únicamente hacia
adelante y los datos solo se pueden leer, no se pueden editar o borrar, sin embargo es
mucho más rápido que un DataSet y es el ideal para utilizar cuando se quieren llenar
controles list-bound como DropDwonList, ListBox, DataGrid que sólo serán de consulta.
Por eso como en todo sistema o proceso no se trata de que un método sea mejor que otro
sino de encontrar el adecuado para cada aplicación.
Para llenar y trabajar con un DataSet debemos hacer lo siguiente:
Primeramente y de igual forma establecer la cadena de conexión, en este caso para
SqlServer, establecer la cadena de conexión.
Dim cone As New SqlConnection("Data Source=.\SQLEXPRESS;…
Abrir la conexión con la base de datos.
cone.Open()
Entonces declara una variable que tendrá la cadena de consulta aunque este paso no es
requerido para el funcionamiento, pero si facilita la organización de la programación y
declaramos dos variables más, una del tipo DataSet y otra SqlDataAdapter.
Dim S As String = ""
67
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
S = "SELECT * FROM commandos WHERE Id=1"
Obtener los datos del la base de datos original para rellenar el Dataset y le pasamos al
SqlDataAdapter la cadena de consulta y la cadena de conexión.
Ada = New SqlDataAdapter(S, cone)
Ahora rellenamos el Dataset con los datos provistos por el comando SELECT, provenientes
de la base de datos.
Ada.Fill(Ds, "LaTabla")
Si el Dataset en la tabla de nombre"LaTabla" no esta vacío hacer…
If Ds.Tables("LaTabla").Rows.Count > 0 Then
Dim F As DataRow
Para cada fila (registro) hacer…
For Each F In Ds.Tables("LaTabla").Rows
Si el campo nombre = "A" ejecutar las acciones dentro de la sentencia For (En este caso
cambiar A por B)
If F("Nombre") = "A" Then
F("Nombre") = "B"
End If
Next
End If
Se utiliza el objeto SqlCommandBuilder para generar los comandos InsertCommand‚
UpdateCommand y DeleteCommand, de esta manera funcionará correctamente el
DataAdapter y en su caso el comando Update.
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
Actualizar la base de datos original.
Ada.Update(Ds.Tables("LaTabla"))
68
Comunicar al Dataset que ahora está sin cambios, es decir igual a la base de datos
original.
Ds.Tables("LaTabla").AcceptChanges()
Borrar los registros del Dataset.
Ds.Tables("LaTabla").Rows.Clear()
Descripción de las tablas utilizadas
Figura 31. Tablas utilizadas en el la base de datos del proyecto
En la figura 31 se muestran las dos tablas utilizadas, en el primer caso la tabla de comandos
sirve de puente para la comunicación entre la base de datos y el software de escritorio
mediante caracteres que más adelante son enviados al microcontrolador PIC e igualmente
se reciben de este último para ser mostrados en la página Web. Esta tabla cuenta con dos
campos el primero referente a la acción deseada por el programa de escritorio o el
desarrollado en Visual Web Developer y por lo tanto maneja variables de un solo carácter
Char(1), el segundo campo muestra si la acción fue ejecutada o no para que no se vuelva a
repetir, en este caso se pueden almacenar datos de tipo verdadero o falso.
Además en el caso de la tabla medida, es utilizada para almacenar los datos que han sido
capturados y procesados por el puerto serie, y que son tomados por la Web mediante el
control webchart para ser mostrados en dicha interfaz de usuario final. Se muestra como
tiene dos campos, el primero se llama corriente y es capaz de almacenar variables de tipo
real de la medición de corriente obtenida, el segundo campo se refiere a la fecha y por tanto
es de tipo datetime lo que significa que a través de esta variable se puede saber la fecha
exacta en que se almacena un dato.
Diseño del software de Escritorio
69
Funciones del software de escritorio:
1. Este es intermediario entre la Web y el microcontrolador pues se encarga de tomar
los datos de la base de datos así como modificarlos e insertar otros que resultan en
una completa comunicación entre el sitio Web y el circuito electrónico final.
2. Es el encargado de procesar los valores muestreados por la etapa de muestreo
electrónico de magnitudes eléctricas y transformarlos mediante las fórmulas
anteriormente descritas en el valor de corriente real que circula por el equipo de
soldadura.
Programación del software de escritorio
Imports System.Math
Imports System.Data
Imports System.Data.SqlClient
Public Class Form1
Dim WithEvents serialPort As New IO.Ports.SerialPort
Public Matriz_medir(0) As Integer
Public Flag_medir As Boolean = False
Public pointer_medir As Integer = 0
Public Delegate Sub WriteDataDelegate()
Dim cone As New SqlConnection
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
cone.ConnectionString = "Data
Source=.\SQLEXPRESS;AttachDbFilename=C:\Proyecto\conexionserial\Proyecto.
mdf;Integrated Security=True;Connect Timeout=30; User instance=True"
cone.Open()
If serialPort.IsOpen Then
serialPort.Close()
End If
Try
With serialPort
.PortName = My.Computer.Ports.SerialPortNames(0)
.BaudRate = 19200
.Parity = IO.Ports.Parity.None
.DataBits = 8
.StopBits = IO.Ports.StopBits.One
End With
serialPort.Open()
70
Labelconectar.Text =
My.Computer.Ports.SerialPortNames(0).ToString & " connected."
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Private Sub DataReceived( _
ByVal sender As Object, _
ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) _
Handles serialPort.DataReceived
If (Flag_medir = False) And (serialPort.ReadByte = 82) Then
Dim WriteInvoke As New WriteDataDelegate(AddressOf WriteDataR)
Invoke(WriteInvoke)
ElseIf (Flag_medir = True) Then
While serialPort.BytesToRead > 0
Matriz_medir(pointer_medir) = serialPort.ReadByte
pointer_medir = pointer_medir + 1
ReDim Preserve Matriz_medir(pointer_medir)
If Matriz_medir(pointer_medir - 1).ToString = "M" Then
Exit While
End If
End While
pointer_medir = 0
Dim WriteInvoke As New WriteDataDelegate(AddressOf WriteDataM)
Invoke(WriteInvoke)
End If
End Sub
Private Sub WriteDataR()
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
S = "SELECT * FROM commandos WHERE hecho=0"
Ada = New SqlDataAdapter(S, cone)
Ada.Fill(Ds, "Xgan")
If Ds.Tables("Xgan").Rows.Count > 0 Then
Dim F As DataRow
For Each F In Ds.Tables("Xgan").Rows
71
If F("accion") = "T" Then
F("hecho") = 1
End If
Next
End If
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
Ada.Update(Ds.Tables("Xgan"))
Ds.Tables("Xgan").AcceptChanges()
Ds.Tables("Xgan").Rows.Clear()
nuevafila()
End Sub
Private Sub WriteDataM()
Flag_medir = False
Dim medicion As Double = 0
For i As Integer = 0 To (Matriz_medir.Length - 3)
medicion = medicion + ((Matriz_medir(i) * 0.0196)) ^ 2
Next
medicion = Sqrt (medicion / (Matriz_medir.Length - 2))
TextBox1.Text = medicion
Dim Ipic As Double = 0
Dim Ireal As Double = 0
Ipic=medición/1
Ireal=40*Ipic
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
S = "SELECT * FROM medida "
Ada = New SqlDataAdapter(S, cone)
Ada.Fill(Ds, "Xgan")
'Obtiene la fecha actual
Dim Now As DateTime = DateTime.Now
Dim F As DataRow
F = Ds.Tables("Xgan").NewRow()
'Definimos los valores de los campos.
F("corriente") = Ireal
F("fecha") = Now
'Añadimos la nueva fila a la colección.
Ds.Tables("Xgan").Rows.Add(F)
72
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
Ada.Update(Ds.Tables("Xgan"))
Ds.Tables("Xgan").AcceptChanges()
Ds.Tables("Xgan").Rows.Clear()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
S = "SELECT * FROM commandos WHERE hecho=0"
Ada = New SqlDataAdapter(S, cone)
Ada.Fill(Ds, "Xgan")
If Ds.Tables("Xgan").Rows.Count > 0 Then
Dim F As DataRow
For Each F In Ds.Tables("Xgan").Rows
Try
If (F("accion") = "E") Then
F("hecho") = 1
serialPort.Write("E")
End If
If (F("accion") = "B") Then
F("hecho") = 1
serialPort.Write("B")
End If
If (F("accion") = "A") Then
F("hecho") = 1
serialPort.Write("A")
End If
If (F("accion") = "D") Then
F("hecho") = 1
serialPort.Write("D")
End If
If (F("accion") = "M") Then
F("hecho") = 1
Flag_medir = True
serialPort.Write("M")
End If
73
If F("accion") = "T" Then
serialPort.Write("T")
End If
Catch ex As Exception
MsgBox(ex.ToString)
End Try
Next
End If
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
Ada.Update(Ds.Tables("Xgan"))
Ds.Tables("Xgan").AcceptChanges()
Ds.Tables("Xgan").Rows.Clear()
End Sub
Private Sub nuevafila()
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
S = "SELECT * FROM commandos"
Ada = New SqlDataAdapter(S, cone)
Ada.Fill(Ds, "Xgan2")
If Ds.Tables("Xgan2").Rows.Count > 0 Then
Dim F As DataRow
F = Ds.Tables("Xgan2").NewRow()
F("accion") = "R"
F("hecho") = 0
Ds.Tables("Xgan2").Rows.Add(F)
End If
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
Ada.Update(Ds.Tables("Xgan2"))
Ds.Tables("Xgan2").AcceptChanges()
Ds.Tables("Xgan2").Rows.Clear()
End Sub
End Class
74
Diseño del software en Visual Web Developer
Funciones del software en Visual Web Developer:
1. Proporcionar la interfaz gráfica de usuario para el monitoreo de variables en el
equipo de soldadura.
2. Proporcionar la interfaz gráfica de usuario para ejecutar el mando manual sobre el
equipo de soldadura.
3. Permitir el estudio de variables, alarmas, análisis de tendencia al analizar los datos
almacenados.
4. Permitir la interacción en tiempo real con el equipo de soldadura.
Programación del software en Visual Web Developer
Imports
Imports
Imports
Imports
System.Drawing
System.Data
System.Data.SqlClient
System.Globalization
Partial Class _Default
Inherits System.Web.UI.Page
Public cone As New sqlConnection
Protected Sub Page_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Load
ChartControl1.RedrawChart()
If Page.IsPostBack = False Then
Button6.Enabled = True
Application("CC") = "Data
Source=.\SQLEXPRESS;AttachDbFilename=C:\Proyecto\conexionserialiser\Proye
cto.mdf;Integrated Security=True;Connect Timeout=30; User instance=True"
inicio()
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO
commandos(accion,hecho) VALUES('T',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
Timer1.Visible = True
End If
End Sub
75
Private Sub inicio()
Dim Chart As LineChart = New LineChart
Chart.Fill.Color = Color.FromArgb(255, Color.SteelBlue)
Chart.Line.Color = Color.Red
Chart.Line.Width = 5
Chart.Legend = "WebChart information"
cone.ConnectionString = Application("CC")
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
'Obtiene la fecha actual
Dim Now As DateTime = DateTime.Now
Dim instante As String = Now.Hour.ToString
Dim instantedia As String = Now.Day.ToString
'Obtiene el mes de la fecha actual
Dim dateMonthtemp As String = Now.Month.ToString
S = "SELECT * FROM medida WHERE Day(fecha)=" & instantedia
'Obtener los datos de la base de datos original para
'rellenar el Dataset.
Ada = New SqlDataAdapter(S, cone)
'Ahora rellenamos el Dataset con los datos provistos por
'el comando SELECT, provenientes de la base de datos.
Ada.Fill(Ds, "Xgancuba")
'Si el Dataset en la tabla "X" no esta vacio hacer.
If Ds.Tables("Xgancuba").Rows.Count > 0 Then
Dim F As DataRow
Dim dr2 As String
Dim dr3 As Integer
'Para cada fila (registro) hacer.
For Each F In Ds.Tables("Xgancuba").Rows
'si el mes contenido en la base de datos es igual al actual mostrarlo
'en la tabla
If F("fecha").month.ToString() = dateMonthtemp Then
'Mostrar día y mes separados por /
dr2 = F("fecha").hour.ToString()
'Mostrar valor de corriente
dr3 = F("corriente")
Chart.Data.Add(New ChartPoint(dr2, dr3))
ChartControl1.Charts.Add(Chart)
End If
If F("fecha").hour.ToString = instante Then
Dim MiCultura As CultureInfo = CultureInfo.CurrentCulture
76
Dim MiFormato As NumberFormatInfo = New
CultureInfo(CultureInfo.CurrentCulture.ToString(), False).NumberFormat
MiFormato.NumberDecimalSeparator = "."
MiFormato.NumberDecimalDigits = 2
Label2.Text = CSng(F("corriente")).ToString("N", MiFormato) + " V"
End If
Next
ChartControl1.RedrawChart()
End If
'Definimos anteriormente sólo la propiedad SelectCommand y utilizamos
' el objeto SqlCommandBuilder para generar InsertCommand‚ UpdateCommand
' y DeleteCommand, de esta manera funcionará correctamente el dataAdapter
' y en su caso el Update.
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
'Actualizar la base de datos original.
Ada.Update(Ds.Tables("Xgancuba"))
el Dataset ahora está sin cambios, es decir
'igual a la base de datos original.
Ds.Tables("Xgancuba").AcceptChanges()
'Borrar los registros del Dataset.
Ds.Tables("Xgancuba").Rows.Clear()
cone.Close()
End Sub
Protected Sub Calendar1_SelectionChanged(ByVal sender As Object,
ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
cone.ConnectionString = Application("CC")
Dim Now As DateTime = DateTime.Now
Dim tempMes As String = Calendar1.SelectedDate.Month.ToString
Dim tempDia As String = Calendar1.SelectedDate.Day.ToString
Dim tempHora As String = Now.Hour.ToString
Dim Chart As LineChart = New LineChart
Chart.Fill.Color = Color.FromArgb(200, Color.SteelBlue)
Chart.Line.Color = Color.SteelBlue
Chart.Line.Width = 5
'cadena de conexion para sqlserver.
'abrir la conexion con la base de datos.
cone.Open()
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
77
S = "SELECT * FROM medida WHERE Month(fecha)=" & tempMes
'Obtener los datos del la base de datos original para
'rellenar el Dataset.
Ada = New SqlDataAdapter(S, cone)
'Ahora rellenamos el Dataset con los datos provistos por
'el comando SELECT, provenientes de la base de datos.
Ada.Fill(Ds, "Xgancuba")
'Si el Dataset en la tabla "X" no esta vacio hacer.
If Ds.Tables("Xgancuba").Rows.Count > 0 Then
Dim F As DataRow
Dim dr2 As String
Dim dr3 As Integer
Dim cont As Boolean = False
'Para cada fila (registro) hacer.
For Each F In Ds.Tables("Xgancuba").Rows
If (F("fecha").day.ToString() = tempDia) And
(F("fecha").Month.ToString() = tempMes) Then
cont = True
dr2 = F("fecha").hour.ToString()
dr3 = F("corriente")
Chart.Data.Add(New ChartPoint(dr2, dr3))
ChartControl1.Charts.Add(Chart)
ChartControl1.RedrawChart()
End If
Next
If cont = False Then
For n As Integer = 1 To 10
dr2 = n.ToString
dr3 = 0
Chart.Data.Add(New ChartPoint(dr2, dr3))
ChartControl1.Charts.Add(Chart)
ChartControl1.RedrawChart()
Next
End If
End If
78
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
'Actualizar la base de datos original.
Ada.Update(Ds.Tables("Xgancuba"))
'Decirle al Dataset que ahora está sin cambios, es decir
'igual a la base de datos original.
Ds.Tables("Xgancuba").AcceptChanges()
'Borrar los registros del Dataset.
Ds.Tables("Xgancuba").Rows.Clear()
cone.Close()
End Sub
Protected Sub Button5_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button5.Click
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO commandos(accion,hecho)
VALUES('E',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
End Sub
Protected Sub Button4_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button4.Click
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO commandos(accion,hecho)
VALUES('B',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
End Sub
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button1.Click
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO commandos(accion,hecho)
VALUES('A',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
End Sub
79
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button2.Click
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO commandos(accion,hecho)
VALUES('D',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
End Sub
Protected Sub Button3_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button3.Click
Timer2.Visible = True
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO commandos(accion,hecho)
VALUES('M',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
End Sub
Protected Sub Timer1_Elapsed(ByVal sender As Object, ByVal e As
MarkItUp.WebControls.TimerElapsedEventArgs) Handles Timer1.Elapsed
Timer1.Visible = False
'cadena de conexion para sqlserver.
'abrir la conexion con la base de datos.
cone.ConnectionString = Application("CC")
cone.Open()
Dim S As String = ""
Dim Ds As New DataSet
Dim Ada As SqlDataAdapter
S = "SELECT * FROM commandos WHERE hecho=0"
Ada = New SqlDataAdapter(S, cone)
Ada.Fill(Ds, "Xgancuba")
If Ds.Tables("Xgancuba").Rows.Count > 0 Then
Dim F As DataRow
For Each F In Ds.Tables("Xgancuba").Rows
If (F("accion") = "R") Then
F("hecho") = 1
Button6.Enabled = False
Label3.Text = "Hardware detectado"
Button6.BackColor = Color.Green
80
End If
If F("accion") = "T" Then
F("hecho") = 1
Label3.Text = "Hardware desconectado"
End If
Next
End If
Dim builder As SqlCommandBuilder = New SqlCommandBuilder(Ada)
Ada.Update(Ds.Tables("Xgancuba"))
Ds.Tables("Xgancuba").AcceptChanges()
Ds.Tables("Xgancuba").Rows.Clear()
cone.Close()
End Sub
Protected Sub Button6_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Button6.Click
cone.ConnectionString = Application("CC")
cone.Open()
Dim comando As New SqlCommand
comando = New SqlCommand(" INSERT INTO commandos(accion,hecho)
VALUES('T',0) ", cone)
comando.ExecuteNonQuery()
cone.Close()
Timer1.Visible = True
End Sub
Protected Sub Timer2_Elapsed(ByVal sender As Object, ByVal e As
MarkItUp.WebControls.TimerElapsedEventArgs) Handles Timer2.Elapsed
Timer2.Visible = False
inicio()
End Sub
End Class
Diseño del sistema de monitoreo por Webcam
En proceso de cualquier tipo, incluyendo los industriales, se puede desarrollar un monitoreo
basado en la toma de muestras de variables que pueden ser analizadas, ya sea por un
ordenador como por personal humano.
Complejas fórmulas o ecuaciones matemáticas pueden desembocar finalmente, en una
valoración exacta y correcta del estado presente.
81
Pero es frecuente que provea una mayor efectividad el análisis visual, donde a través de
imágenes se puede obtener una representación y valoración más efectiva y rápida del
mencionado proceso. Lo cual es conocido como visualización.
Existe una frase popular referente al uso de la
visualización: "Una imagen vale más que mil
palabras". A través de estudios científicos se ha
comprobado que alrededor del 50% de las
neuronas está dedicado a la visión, así como que
el 80% de nuestras sensaciones son visuales,
además, la densidad de información por unidad
de área es notablemente mayor a la de un texto
(ver figura 32). La visualización nos permite ver
lo que no es posible ver a través de
representaciones puramente esquemáticas o
matemáticas. Se puede reconocer patrones de
comportamiento de los datos, ver en una sola imagen o en una secuencia de imágenes una
gran cantidad de información y nos facilita la comprensión de algunos conceptos, sobre
todo de tipo abstracto con tan sólo inspección visual.
Es importante notar que mediante imágenes se pueden adquirir datos en varias
dimensiones. Por ejemplo en un plano se cuenta con dos dimensiones de la imagen
pudiendo representarse por dos variables: ancho y alto, pero si se agrega otro plano, la
imagen se verá en 3D, incluyendo los colores se tendrá otra variable y desarrollando
animaciones, se incluye el movimiento o 5ta variable.
Otra gran ventaja y que de hecho es utilizada por los artistas plásticos, es la independencia
del lenguaje y es conocido que se puede realizar cualquier explicación mediante palabras
sin lograr efectividad, pero también se puede mostrar una secuencia de imágenes como un
vídeo sin mencionar una palabra y entender la totalidad de la información que se haya
deseado transmitir.
Es de conocimiento público que a través de chats, actualmente se puede establecer una
vídeo conferencia en tiempo real y que además ya existen en el mercado las llamadas
cámaras IP que se manejan vía Web. Como el objetivo del proyecto es crear una aplicación
que tenga interfaz de usuario final de tipo web, los esfuerzos a continuación están
enfocados a lograr el mismo resultado utilizando programación en Visual Basic .NET y
javaScript.
La idea es ir guardando imágenes en el disco duro que van siendo recopiladas por el sitio
Web. La información aunque no es continua, sino a base de muestras de imágenes, se va
mostrando al usuario final cada cierto tiempo, lo que da sensación de animación.
Para facilitar el trabajo se ha utilizado una dll o espacio de nombres que ha sido pensada
para el manejo de una webcam genérica, sólo será necesario conocer sus propiedades, así
como sus métodos o eventos y se podrá desarrollar una aplicación robusta.
82
Como primera tarea deberá añadirse la DLL llamada WebCam.dll a la aplicación, que será
en este caso desarrollada totalmente en entorno de trabajo de VB, procediendo de la misma
forma que al añadir la DLL WebChart.dll, debido a que tampoco forma parte del entorno
original de trabajo de Visual Studio sino que ha sido desarrollada por un señor llamado
Almustafa. Queda finalmente añadida a nuestra aplicación como se muestra en la figura 33.
Figura 33. Añadir control WebCam.
Para trabajar con el control o DLL como se ha dicho anteriormente se puede hacer a través
de las propiedades que provee la interfaz gráfica o modificándolas directamente a través de
código de programación.
Para que el control quede habilitado sólo para posteriores modificaciones mediante código
se deberá fijar la propiedad enabled a true.
WebCam1.Enabled = True
Para conseguir obtener imágenes de unas dimensiones determinadas lo que será muy
importante tener claro en dependencia del ancho de banda de Internet con el que se cuente,
se deberá ajustar la propiedad Size, como se muestra en la figura 34.
Figura 34. Dimensiones de la imagen.
83
El control WebCam cuenta con un evento interesante y de gran utilidad, que permite que
una operación sea desarrollada cada vez que cambie la imagen obtenida, lo que es muy útil
en este caso, pues en vez de utilizar el evento del timer que almacenaría imágenes
invariables y redundantes en algunos instantes, ocupando injustificadamente tiempo de
transmisión y ancho de banda, en este caso se obtiene sólo información variable. Se puede
acceder al evento dando doble click encima del control WebCam, mostrado en la interfaz
gráfica.
Private Sub WebCam1_CambioImagen() Handles WebCam1.CambioImagen
End Sub
El proceso de captura se consigue mediante la propiedad imagen del control WebCam que a
efectos da el mismo resultado que la tecla “Imrpan”(imprimir pantalla) de un teclado
convencional.
Acto seguido se almacena en una variable de tipo Image y utilizando el método SAVE. A
este último se le debe pasar como parámetro esencial, la ruta donde se desea guardar la
imagen.
Dim img As Image
img = Me.WebCam1.Imagen
img.Save("F: /imagenes/webcam.png")
Para mostrar las imágenes optenidas se debe configurar su fuente manualmente a través de
la interfaz de usuario y en modo de depuración (ver figura 35).
Figura 35. Obtención de la Fuente de imagen.
Y entonces se visualiza la imagen de la fuente deseada (figura 36):
84
Figura 36. Imagen de la fuente seleccionada.
Diseño de la Interfaz Web para Webcam
La forma en que se muestran secuencialmente las imágenes, es recargándolas cada cierto
tiempo, pero esto generalmente tiene un problema y es que para mostrar otra imagen se
necesita recargar toda la web lo que finalmente se traduce en volver a pedir al servidor
todos los elementos incluidos en ella, cosa que supone un inprescindible gasto de tiempo,
que elimina la sensación de animación, sobre todo si se dispone de un limitado ancho de
banda, para resolver esta falencia, se ha utilizado JavaScript, con el cual se logra la recarga
exclusiva de las imágenes de interés.
El JavaScript es lenguaje de lado cliente por lo que es interpretado totalmente por el
navegador. De ahí su denominación de lenguaje interpretado.
El JavaScript incluye dos características principales:
1. Es un lenguaje basado en objetos
2. Es además un lenguaje orientado a eventos
Por lo que la programación en JavaScript se concentra en describir objetos (con sus
variables de instancia y métodos de "clase") y escribir funciones que respondan a
movimientos del ratón, pulsación de teclas, apertura y cerrado de ventanas o carga de una
página, entre otros eventos.
La forma correcta de introducir la programación JavaScript en la Web es entre una etiqueta
de script de apertura y de cierre, dentro del código HTML, ya sea en el encabezamiento o
cuerpo de este, entonces se puede incluir el código de programación en la misma Web o
llamarlo desde su ubicación en forma de ficheros externos de código generalmente de
extensión js (ver figura 37).
Si el código está en la misma Web:
<script language ="javaScript" type="text/javascript">
Aquí el código
85
</script>
Si el código está en un archivo externo:
<script src="RUTA/ NOMBRE.js" language="JavaScript" type="text/javascript">
</script>
Figura 37. Forma correcta de introducir Scripts de JavaScript.
Combinación de JavaScript y HTML
El programa de captura de imágenes ha sido desarrollado en visual Basic pero el de muestra
de imágenes en la Web está escrito en javaScript que se incrusta e forma de Scripts en una
página con código HTML.
Se presenta a modo de ejemplo, la llamada a una función de JavaScript mediante HTML al
cargar la página, con lo que se da comienzo a la ejecución del lenguaje JavaScript, pero ya
se ha mencionado que este último es un lenguaje orientado a eventos por lo que se podrá
dar comienzo de diversas maneras como puede ser un botón creado con HTML, mediante
un click o la tecla ENTER.
< body onload="recopilar();" >
La propiedad onload se refiere al momento de carga de la página.
En el mismo instante de la carga de la Web se incrusta por defecto una imagen que estará
estática a modo de presentación hasta que empiece la secuencia de imágenes. Esto es
realizado también mediante código HTML.
86
< img alt="webcam" src="imagenes/webcam 0.png" style="width: 295px; height:
237px"/>
Se aprecia la ruta determinada por el parámetro SRC y el ancho y alto de visualización de
las imágenes con width y height.
La función recopilar se declara con function recopilar ( ), esta no tiene valores de entrada
excepto las variables globales lo que queda claro puesto que no tiene argumento dentro del
paréntesis. Dentro de las llaves de apertura y de cierre va el código a ejecutar por la
función.
function recopilar(){
}
Para trabajar con imágenes se debe crear un objeto del tipo IMAGE () y entonces se pueden
utilizar sus propiedades como adquirir la imagen de una ruta específica.
Imagenes = new Image();
imagenes.src="imagenes/webcam.png";
Para mostra la imagen en la página se escribe así:
document.images[0].src=imagenes.src;
Con lo cual se toma la imagen 0 es decir la primera de la página Web (images[0]) y se
muestra adquiriéndola de su ruta anteriormente determinada (imagenes.src) (ver figura 38).
Figura 38. Imagen de la webcam en el sitio web.
87
Pero el proceso terminaría en este paso si no se se automatiza la repetición del código para
que vaya sobreescrimiendo la imagen anterior cada vez. Para ello se utiliza la función
setTimeout que se ejecuta una vez pasado el tiempo configurado en su argumento y la cual
llamará a la función deseada que también se le pasa como parámetro en su argumento.
setTimeout( "recopilar()", 200 );
Si la cámara deja de emitir no se mostrarán más imágenes en la aplición web, en cuyo caso
se detecta la ausencia de visualización mediante la función onerror, se informa mediante
una ventana o alert y se incrusta una imagen estática que muestre dicho estado. Además se
puede dar información adicional del estado, en la ventana de abajo del navegador llamada
windows status (ver figura 39).
imagenes.onerror = function(){
alert("La camara esta apagada");
document.images[0].src=imagenes.src;
window.status = "Lo siento ... la camara esta apagada. Por favor, verifique mas tarde";
}
Figura 39. Aviso de ausencia de fuente.
Hasta aquí se ha visto la forma de tomar imágenes desde una webcam y luego mostrarlas en
una Web mediante lenguaje interpretado JavaScript, pero en la práctica es algo más
88
complejo puesto que serán dos aplicaciones funcionando al mismo tiempo, pero como un
ente independiente cada una.
Para que la imagen tomada vaya cambiando existen dos opciones, la primera es que la
imagen sea sobrescrita por el programa desarrollado en visual Basic, y a la misma vez
mostrada en la Web, pero esto puede ser muy inestable y resultar en una falla pues estarán
dos programas independientes actuando sobre el mismo objeto en el mismo instante. Esto
se ha resuelto desarrollando una rutina en Visual Basic que no sobrescriba la imagen creada
hasta que se reinicie la aplicación, por tanto lo que hace es ir aumentando un número entero
que comienza en “0”, cuyo valor se convierte a String y se incluye en el nombre de la
imagen, lo que hace que cada imagen tenga un nombre diferente y aunque convertido a
cadena, de manera consecutiva.
Dim varimentero As Integer = 0
Dim varimcadena As String = “ ”
varimcadena = Str(varimentero)
img.Save("F:/imagenes/webcam" + varimcadena + ".png")
varimentero = varimentero +1
Los nombres entonces van quedando en la siguiente secuencia: webcam 0, webcam 1,
webcam 2, webcam 3 ... y así sucesivamente. Esto se muestra en la siguiente figura 40.
Figura 40. Secuencia de nombres.
89
Ahora bien, se debe desarrollar la consecuente rutina en JavaScript.
Primero se declara la variable llamada “imagenes”, pero ya no estática sino que en este caso
será un arreglo o matriz, por lo tanto la letra “i” que es su argumento de cambio deberá ir
aumentando, pero sólo si aun la cámara está encendida, en caso contrario se mostrará el
valor prefijado de “i”, que muestre la imagen de cámara apagada.
imagenes= new Array();
var i=
0;
imagenes[i]=new Image(); imagenes[i].src="imagenes/webcam"+" "+String(i)+".png";
i++;
Surge entonces una nueva necesidad, si ambas aplicaciones son reiniciadas, la escrita en
Visual Basic y la de JavaScript, las imágenes de igual nombre en el disco duro se
reescribirán y deberían mostrarse en la página web las nuevas, pero esto no sucede debido a
que se muestran las anteriores, que están almacenadas en los archivos temporales de
internet. La solución a este problema es sencilla, borrar las imágenes contenidas en la
carpeta de archivos temporales y todo queda solucionado.
Esto se hace utilizando la clase DirectoryInfo, contenida en el espacio de nombres
System.IO, además al hacerlo no sólo se afecta a las imágenes sino a otros archivos que
pueden estar en uso, lo que puede generar una excepción que se traduce en una falla, para
ello se vuelve a utilizar la estructura Try, Catch, End Try, cuyo algoritmo está direccionado
a evadir la excepción, dejando intactos los archivos en uso y continuando el borrado de los
demás.
Try
La clase DirectoryInfo expone métodos de instancia para crear, mover y enumerar archivos
en directorios y subdirectorios se utiliza para operaciones típicas como copiar, mover,
cambiar de nombre, crear y eliminar directorios.
Dim dirTemp As New DirectoryInfo("C:\...\Archivos temporales de Internet")
Comprobar si el directorio existe.
If dirTemp.Exists = True Then
El método DirectoryInfo.Delete elimina una instancia de DirectoryInfo
especificando si se van a eliminar los subdirectorios y los archivos (True o False) se asigna
al directorio de archivos temporales.
dirTemp.Delete(True)
End If
90
Capturar excepciones.
Catch pollo As Exception
Pasar por alto la excepción si la causa es no poder borrar archivos por estar en uso
(excepción System.IO.IOException o System.UnauthorizedAccessException).
Dim sTipo1, sTipo2 As String
sTipo1 = "System.IO.IOException"
sTipo2 = "System.UnauthorizedAccessException"
If Not pollo.GetType.ToString = sTipo1 And Not pollo.GetType.ToString = sTipo2
Then
MessageBox.Show(pollo.Message, "Aviso del programa",
MessageBoxButtons.OK)
Application.Exit()
End If
End Try
Descripción de la interfaz Web
Figura 41. Imagen de la interfaz Web final de usuario.
91
En la figura 41 que es la página Web que se muestra al usuario del sistema, se pueden
apreciar 5 botones una figura en forma de gráfico, otra figura en forma de calendario, una
imagen de una webcam y un número encerrado en un cuadro blanco.
El botón llamado encender/apagar toma la misma acción que sugiere el nombre sobre el
equipo de soldadura, ejecutando de manera alterna la acción correspondiente de encendido
o apagado.
El botón detectar hardware se mostrará en color gris y habilitado en el caso de que no este
conectado al computador el equipo de soldadura por lo que se podrá comprobar una y otra
vez hasta que este último sea detectado. E la figura el botón está deshabilitado y en verde,
además se muestra un letrero que anuncia que el dispositivo físico esta correctamente
conectado y en estado de funcionamiento.
Debajo del letrero “Manejo de corriente” se muestran dos botones que se encargan de
controlar la corriente que circula por el equipo de soldadura por arco eléctrico, de forma
manual.
Con el botón medir se activa la etapa de muestreo electrónico de magnitudes eléctricas y
finalmente el dato es mostrado en la página Web. El valor de corriente producto de la
medición se muestra en el cuadro en blanco y todas las mediciones del día son mostrados
en el gráfico a través del control WebChart. Adicionalmente todos los valores tomados
hasta el día en curso se pueden visualizar en el control webChart y agrupados por día, año y
hora, obteniéndolos de la base de datos a través del control calendario.
A través de la imagen de la webcam se accede a la visualización de imágenes vía Web en
tiempo real que fue descrita anteriormente.
92
Capítulo V
Diseño de la Programación en el PIC16F877A
La programación del microcontrolador PIC, se centra en dos tareas esenciales:
1. Configuración y manejo del conversor A/D para tomar las muestras de corriente
provenientes del equipo del soldadura y más exactamente del transformador de
corriente.
2. Configuración y manejo de la transmisión a través del módulo SCI del PIC.
Los parámetros para la transmisión serial deben estar en concordancia con los del
programa desarrollado en Visual Basic, aun más cuando se sabe que la transmisión se
desarrolla sin envío de la señal del reloj, lo que pudiera generar severos errores por ejemplo
si no se utiliza aquí la misma velocidad que en VB. Como por ejemplo la configuración de
velocidad a 19200 baudios (En el anexo se puede observar por que se escogió la velocidad
19200 baudios), también la comunicación asíncrona y la utilización de sólo 8 bit de datos.
En el conversor A/D para cambiar la configuración de la velocidad de conversión, el
número de canales, resolución de conversión, pin de entrada del dato analógico o inicio de
conversión se deben manipular los registros ADCON0 y ADCON1. (Ver anexos 3 y 4)
93
Descripción del diagrama de flujo general de la programación en el
PIC16F877A
94
Descripción del programa principal en PIC16F877A
#INCLUDE
"P16F877A.INC"
; DECLARACION DE LIBRERIA
DECLARACION DE VARIABLES
CBLOCK
.32
DATA_UART_RX, VAR_ON_OFF, VAR_B_D, VAR_MEDIR
ENDC
;*******************************************************************************
;
ORIGEN DEL PROGRAMA EN LA MEMORIA DE PROGRAMA
;*******************************************************************************
ORG .0
GOTO
INICIO
;*******************************************************************************
;
SUBRUTINAS DE INTERRUPCIONES
;*******************************************************************************
ORG .4
PUSH
BCF
MOVWF
SWAPF
MOVWF
INTCON,GIE
TEMP_W
STATUS,W
TEMP_STATUS
;*******************************************************************************
;
SELECCION DE INTERRUPCION (RX UART)
;*******************************************************************************
BTFSS PIR1,RCIF
;BANDERA DE RX UART
GOTO MIRE_RB0
;BUSCAR INTERRUPCION POR RB0
MOVF RCREG,W
MOVWF
DATA_UART_RX
MOVLW
"E"
XORWF
DATA_UART_RX,W
BTFSC STATUS,Z
GOTO ENCENDER_APAGAR
;COMPROBAR SI LLEGÓ “E”
MOVLW
"A"
XORWF
DATA_UART_RX,W
BTFSC STATUS,Z
GOTO AUMENTAR
;COMPROBAR SI LLEGÓ “A”
MOVLW
"D"
XORWF
DATA_UART_RX,W
BTFSC STATUS,Z
GOTO DISMINUIR
;COMPROBAR SI LLEGÓ “D”
95
MOVLW
"M"
XORWF
DATA_UART_RX,W
BTFSC STATUS,Z
GOTO MEDIR
;COMPROBAR SI LLEGÓ “M”
MOVLW
"T"
XORWF
DATA_UART_RX,W
BTFSC STATUS,Z
GOTO DETECTAR_HARDWARE
GOTO POP
;COMPROBAR SI LLEGÓ “T”
MIRE_RB0
BTFSS INTCON,INTF
;BANDERA DE RB0
GOTO POP
BTFSC VAR_MEDIR,0
;SI VAR_MEDIR=1 Î MEDIR EN MAIN_PROGRAM
GOTO POP
MOVLW
"M"
CALL SEND_DATA_UART
BCF VAR_MEDIR,0
BCF INTCON,INTE
GOTO POP
;*******************************************************************************
;
SALIDA DE SUBRUTINAS DE INTERRUPCIÓN
;*******************************************************************************
POP
CALL CONF_RX_UART
MOVF PORTB,W
SWAPF
MOVWF
SWAPF
SWAPF
;ACTIVAR CON MODULO UART
TEMP_STATUS,W
STATUS
TEMP_W,F
TEMP_W,W
BCF
INTCON,INTF
BSF
INTCON,GIE
;ACTIVAR CON INTERRUPCION DE RB0
;ACTIVAR CON CUALQUIER INTERRUPCION
RETFIE
;*******************************************************************************
;*******************************************************************************
ENCENDER_APAGAR BTFSS
VAR_ON_OFF,0
GOTO
$+2
GOTO
$+6
MOVLW
B'010'
MOVWF
PORTD
CALL
INTERRUPCION_RB7
BSF
VAR_ON_OFF,0
GOTO
POP
96
MOVLW
MOVWF
CALL
BCF
GOTO
B'001'
PORTD
INTERRUPCION_RB7
VAR_ON_OFF,0
POP
AUMENTAR MOVLW
B'101'
MOVWF
PORTD
CALL
INTERRUPCION_RB7
GOTO
POP
DISMINUIR MOVLW
B'110'
MOVWF
PORTD
CALL
INTERRUPCION_RB7
GOTO
POP
MEDIR
BSF VAR_MEDIR,0
BSF
INTCON,INTE
GOTO
POP
DETECTAR_HARDWARE MOVLW
"R"
CALL
SEND_DATA_UART
GOTO
POP
INTERRUPCION_RB7 BCF PORTC,0
MOVLW
.20
CALL
PAUSA_100MS
BSF
PORTC,0
RETURN
;*******************************************************************************
;
CONFIGURACION DE PUERTOS
;*******************************************************************************
INICIO BSF STATUS,RP0 ;BANCO 1
BCF STATUS,RP1
MOVLW
B'00000000'
MOVWF
PORTA
MOVLW
B'00000000'
MOVWF
PORTB
MOVLW
B'00000000'
MOVWF
PORTC
MOVLW
B'00000000'
MOVWF
PORTD
MOVLW
B'00000000'
MOVWF
PORTE
MOVLW
B'00000110' ;PORTA AND PORTE AS I/O DIGITAL
MOVWF
ADCON1
MOVLW
B'00000000' ;ENABLE PULL UP, INT RB0 FLANCO DE BAJADA
97
MOVWF
OPTION_REG
MOVLW
B'00000000' ;DESACTIVO TODAS LAS INT
MOVWF
INTCON
MOVLW
B'00000000' ;DESACTIVO TODAS LAS INT DE PERIFERICOS
MOVWF
PIR1
MOVLW
B'00000000' ;DESACTIVO TODAS LAS INT DE PERIFERICOS
MOVWF
PIR2
BCF STATUS,RP0 ;BANCO 0
;- - - - - - - - I N I C I A L I Z A C I O N ------------------------------------------------------------------CALL
CALL
BSF
INIT_UART
INIT_CAD
INTCON,GIE
;ACTIVAR CON CUALQUIER INT
;- - - - - - - - CONDICIONES INICIALES DEL MAIN_PROGRAM - - - - - - - - -- - - - - - - - - - - BSF PORTC,0
BSF VAR_ON_OFF,0
;VARIABLE DE ON_OFF
BSF VAR_B_D,0
;VARIABLE DE BLOQUEO DESBLOQUEO
BCF VAR_MEDIR,0
;VARIABLE DE MEDIDA
;*******************************************************************************
;
INICIO DE INSTRUCCIONES DEL MAIN_PROGRAM
;*******************************************************************************
MAIN_PROGRAM
BTFSS
GOTO
CALL
MOVF
CALL
GOTO
VAR_MEDIR,0
MAIN_PROGRAM
CAD_CH0
CAD_HIGH,W
SEND_DATA_UART
MAIN_PROGRAM
END
Configuración e inicialización de datos interfaz SCI
INIT_UART BSF STATUS,RP0
;BANCO 1
BCF STATUS,RP1
BSF RX_UART
;RX UART
BSF TX_UART
;TX UART
BCF STATUS,RP0
;BANCO 0
CALL CONF_RX_UART
RETURN
Configuración de recepción.
CONF_RX_UART
98
BSF STATUS,RP0
;CONFIGURACION DE RX ASYNCRONA
MOVLW .12
;19200 BAUDIOS ALTA VELOCIDAD BRGH=1
MOVWF TXREG
; CARGO EN (SPBRG)
BSF
TXSTA,BRGH
;(TXSTA)ALTA VELOCIDAD BRGH=1
BCF
TXSTA,SYNC
;(TXSTA)SELECCIONO MODO ASYNCRO
BSF
INTCON,PEIE
;HABILITO TODAS LAS INT DE PERIFERICOS
BSF
PIE1,RCIE
;(PIE1)ACTIVO INTERUPCION DE RX POR
PUERTO SERIAL USART ASYNCRONO
BCF
STATUS,RP0
;BANCO 0
BTFSC
RCSTA,FERR
;MIRO SI OCURRIO ERROR EN LA
TRANSMISION PC TO MASTER
BCF
RCSTA,CREN
;RESETEA BANDERAS DE ERRORES
BTFSC
RCSTA,OERR
;MIRO SI OCURRIO ERROR EN LA
TRANSMISION PC TO MASTER
BCF
BSF
BCF
BCF
BCF
BCF
BCF
SERIAL
RCSTA,CREN
RCSTA,SPEN
RCSTA,ADDEN
RCSTA,FERR
RCSTA,OERR
RCSTA,RX9
PIR1, RCIF
BSF
RCSTA,CREN
RETURN
;RESETEA BANDERAS DE ERRORES
;HABILITO PUERTO SERIAL
;DESHABILITO DIRECCIONAMIENTO
;DESACTIVO RX DEL 9 BIT
; DESACTIVO BANDERA DE TX POR PUERTO
;HABILITO RECEPCION
Configuración de transmisión asíncrona.
CONF_TX_UART
BSF
STATUS,RP0
;CONFIGURACIÓN DE TX ASYNCRONA
MOVLW .12
;19200 BAUDIOS ALTA VELOCIDAD BRGH=1
MOVWF SPBRG
;CARGO EN (SPBRG)
BSF
TXSTA,BRGH ;(TXSTA)ALTA VELOCIDAD BRGH=1
BCF
TXSTA,SYNC ;(TXSTA)SELECCIONO MODO ASYNCRONO
BCF
PIE1, TXIE
; DESACTIVO INTERUPCION DE TX POR PUERTO
SERIAL USART ASYNCRONO
BCF
BSF
BCF
SERIAL
STATUS,RP0
RCSTA,SPEN
PIR1, TXIF
;BANCO 0
;HABILITO PUERTO SERIAL
;DESACTIVO BANDERA DE TX POR PUERTO
99
BSF
STATUS,RP0
BCF
TXSTA,TX9
BSF
TXSTA,TXEN
BCF TXSTA,TX9D
RETURN
;BANCO 1
;DESACTIVO ENVIO DE 9 BIT
; HABILITO LA TX SERIAL USART, TXIF =1
;CARGO DATO DE 9 BIT SI DESEO (SI TX9 =1)
Envío de datos.
SEND_DATA_UART
MOVWF
DATA_UART
CALL
CONF_TX_UART ;CONFIGURACION DE UART
BSF
STATUS,RP0
;BANCO 1
BTFSS
TXSTA,TRMT
;(TXSTA)MIRO SI ESTA DESOCUPADO EL
BUFFER DE TX SERIAL (1-->DESOC)
GOTO
$-1
BCF
STATUS,RP0
MOVF
DATA_UART,W
MOVWF TXREG
RETURN
;BANCO 0
;DATO A SER ENVIADO
;INICIA LA TX SERIAL USART
Configuración e inicialización del conversor A/D
;................. SINTAXIS DE CONVERSOR A/D………….
;ESTE CODIGO CONVIERTE POR CH0=RA0 DEL CONVERSOR Y ENVIA EL
RESULTADO DE 10 BIT AL PC (CAD_HIGH, CAD_LOW)
;
CALL
CAD_CH0
;
MOVF
CAD_HIGH,W
;
CALL
SEND_DATA_UART
;---------------------------------------------------------------------------------------------------------; BIT'S DE CONTROL DEL MODULO CONVERSOR A/D PARA 1 ENTRADA
ANALOGICA
;#DEFINE
AN0
PORTA,0
;BIT 0 DE PORTA
(INPUT)
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ----INIT_CAD
BSF
BCF
MOVLW
ADRESL =0
MOVWF
STATUS,RP0
STATUS,RP1
B'00000010'
ADCON1
;BANCO 1
;JUSTIFICACION A LA IZQUIERDA :6 BIT LSB OF
;CONVERSOR DE 10 (8) BIT,ACTIVO CANAL 0
100
BSF
BCF
AN0
STATUS,RP0
;BANCO 0
CAD_CH0
MOVLW B'10000001'
;CONFIGURACIÓN DE ADCON0, HABILITO
CONVERSION
MOVWF ADCON0
;FREC DE CONV=FCRIS/32, SELEC CHANEL0 =
RA0
CALL
SUB_CONVER_AD
MOVWF CAD_HIGH
RETURN
SUB_CONVER_AD
BCF
PIR1,ADIF
;DEBE ESTAR EN CERO AL INICIAR LA
CONVERSIÓN
NOP
;PAUSA PARA TOMAR LA MUESTRA
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
BSF
ADCON0,GO_DONE
;EMPIEZA LA CONVERSIÓN
BTFSC ADCON0,GO_DONE
;MIRO ADIF SI SALTA SE COMPLETÓ LA
;CONVERSIÓN TAMBIEN PUEDE MIRAR
;EL BIT GO/DONE
GOTO
$-1
MOVF
ADRESH,W
;CARGO EL BYTE MAS SIGNIFICATICO
EN DATOH
RETURN
101
Capítulo VI
Estudio del canal de acceso a Internet mediante
ADSL
Resumen del modo de transferencia asíncrono
El protocolo ATM o Modo de Transferencia Asíncrono, surge para aprovechar al máximo
la capacidad de los sistemas de transmisión, de forma que la información no sea
transmitida y conmutada a través de canales asignados permanentemente, sino en forma de
cortos paquetes (celdas ATM) de longitud constante y que pueden ser enrutadas
individualmente mediante el uso de los canales virtuales y trayectos virtuales.
Así diferentes flujos de información, de características distintas en cuanto a velocidad y
formato, son agrupados en el denominado Módulo ATM y transportados mediante grandes
enlaces de transmisión a velocidades de 155 o 600 Mbit/s como se muestra en la figura 42.
Figura 42. Vista del Módulo ATM.
Resumen sobre las tecnologías de acceso a la red
La necesidad de ancho de banda ha hecho nacer varias tecnologías de acceso de banda
ancha: DSL (Línea de Abonado Digital) en todas sus formas simétricas y asimétricas, u
otras tantas, guiadas por cable coaxial, fibra óptica, radio enlaces. A pesar de las enormes
diferencias entre estas tecnologías, todas ellas se caracterizan por que todas pueden
102
compartir el mismo protocolo subyacente: ATM, cuya principal ventaja está en la
escalabilidad y en la disponibilidad.
De acuerdo al medio de soporte, se acostumbra a clasificar las redes de acceso en cuatro
grupos principales par trenzado, fibra/coaxial, inalámbrico, y todo fibra (ver figura 43).
Figura 43. Tipos de redes de acuerdo al medio de soporte.
Las tecnologías xDSL en la red de acceso
La tecnología xDSL, surge por la necesidad de aumentar la capacidad de transmisión del
par de cobre. Hace referencia a toda la familia DSL las cuales utilizan técnicas de
modulación modernas ayudadas por los avances en el procesamiento digital de señales para
lograr transmitir a altas velocidades sobre el lazo de abonado local.
Descripción de la tecnología ADSL
El ADSL es una técnica para la transmisión de datos a gran velocidad sobre el par de cobre.
ADSL es un acrónimo de Asymmetric Digital Subscriber Line o traducido Línea de
Abonado Digital Asimétrica, la asimetría esta dada porque las velocidades de subida y
descarga son distintas.
Esta, a diferencia de los modems de banda vocal que sólo transmiten en la banda de
frecuencias usadas en telefonía (300 Hz a 3400 Hz), transmite en un margen de frecuencias
que va desde los 24 KHz hasta los 1104 KHz, esto hace que el ADSL pueda coexistir en un
mismo lazo de abonado con el servicio telefónico, pues no se solapan sus intervalos de
frecuencia.
Al tratarse de una modulación asimétrica, el módem ADSL situado en el extremo del
usuario es distinto del ubicado al otro lado del lazo, en la central local. En la figura 44 se
observa que en los módems situados en el domicilio del usuario (ATU-R o ADSL Terminal
Unit-Remote) y en la central (ATU-C o ADSL Terminal Unit-Central), delante de cada uno
de ellos se ha de colocar un "splitter". El cual está compuesto por dos filtros: uno paso alto
103
y otro paso bajo, para separar las señales de baja frecuencia (telefonía) de las de alta
frecuencia (ADSL).
Figura 44. Modems ATU-R y ATU-C
DMT (Discrete MultiTone, Modulación multitono discreto consiste en el empleo de
múltiples portadoras y no sólo una, como sucede en los módems de banda vocal.
En una vía de transmisión de cobre la atenuación por unidad de longitud aumenta a medida
que se incrementa la frecuencia de las señales transmitidas, y cuanto mayor es la longitud
de la línea, mayor es la atenuación que sufren las señales transmitidas.
Esto es la base de que la velocidad máxima que se puede lograr mediante los módems
ADSL varíe en función de la longitud de la línea de abonado. El ruido externo provoca la
reducción de la relación Señal/Ruido de cada una de las subportadoras, y esa disminución
provoca una reducción del caudal de datos que modula a cada subportadora, lo que también
implica una reducción del caudal total que se puede transmitir a través del enlace entre el
ATU-R y el ATU-C.
A la distancia de 2.6 Km de la central, en presencia de muy altos niveles de ruido, se
obtiene una velocidad de 2 Mbps en sentido descendente y 0,9 Mbps en sentido ascendente.
Debido al análisis planteado y tomando en cuentas la longitud media de la línea telefónica
en zonas urbanas, la mayor parte de los usuarios podrán obtener a través de ADSL una
velocidad de 2Mbps lo que puede satisfacer las necesidades de cualquier internauta,
teletrabajador así como de muchas empresas pequeñas y medianas.
104
Resumen de las ventajas del ADSL
1. Permite el intercambio de información en formato digital a gran velocidad
(ancho de banda) entre un usuario y la central a la que se conecta utilizando
solamente un par de cobre.
2. Este ancho de banda está disponible de forma permanente.
3. Se aprovecha una vía de comunicación por lo que los tiempos de implantación
tanto como los costos disminuyen de manera óptima.
Multiplexor de acceso DSL
El DSLAM (Multiplexor de Acceso DSL) es un equipo ubicado en la central que agrupa
gran número de tarjetas, estas tarjetas están compuestas por varios módems ATU-C, y que
además concentra el tráfico de todos los enlaces ADSL hacia la red WAN (ver figura 45).
Figura 45. Multiplexor de Acceso DSL (DSLAM)
La integración de varios ATU-Cs en el DSLAM es un factor fundamental que ha hecho
posible el despliegue masivo del ADSL ya que facilita la instalación de todo el sistema.
Encapsulado de datos
Existen varias opciones para lograr tal propósito. Una opción aceptable es el encapsulado
de IP sobre ATM según la RFC 1483 del IETF, con la modalidad de "routing". La
información útil para el usuario contenida en el paquete IP, lleva varias cabeceras. Estas
cabeceras, que son necesarias para que la información llegue a su destino, pero que no
proporcionan información al usuario, este hecho explica que el caudal recibido por el
usuario sea inferior a la velocidad a la que la información se transmite realmente.
105
Configuración del módem MT820
Para tener acceso a la configuración, se debe abrir el navegador e introducir el IP de LAN
del MT820 que es por defecto el “192.168.1.1” e introducir el usuario y password que son
ambos por defecto: admin. (Ver figura 46).
Figura 46. Configuración del MODEM MT820 vía Web.
La figura 47 se muestra la llamada system view, o vista del sistema, la cual es para
información y donde se puede observar por ejemplo, el modelo, la versión del módem y
algo más importante, la velocidad de subida y de descarga, en el caso de la figura la
velocidad de subida (Upstream) es igual a 160Kbps y la de descarga (DownStream) es igual
a 320 Kbps.
Figura 47. Vista del sistema.
106
A la derecha de la figura se observa una serie de carpetas, donde están organizados los
parámetros más importantes de manejo y configuración del módem ADSL.
Existen una serie de parámetros fijados de manera predeterminada, como es el de la figura
48 donde se muestra el IP que posee el módem ya sea si se utiliza a través de su interfaz de
ethernet o LAN o si se utiliza a través del puerto USB. Parámetros como este se pueden
dejar como están.
Figura 48. Configuración LAN
Los DNS (domain name system), son dados por el proveedor de internet y se configuran de
tal modo, en este caso como se muestra en la figura 49.
Figura 49. Configuración de los DNS
107
Descripción de la configuración NetWork Address
Translation (NAT)
La forma de conexión que provee Telecom, por el valor de 75 000 pesos es la que se utiliza,
por este precio el número IP que posee el MODEM es variable y aunque es un IP valido en
Internet (definido por el RFC 1918), cambia cada vez que se apaga y enciende nuevamente
dicho MODEM. En este caso además el IP que posee el computador que se utiliza como
estación central es no válido en Internet por lo que solo estará presente en la red local que
se posee.
Para corregir este problema e impulsado por el crecimiento exponencial de Internet, y
debido a que actualmente se utiliza direccionamiento IPv4, el cual ocupa 32 bits para la
asignación de direcciones, dando un máximo de 4.294.967.296 direcciones únicas (2
elevado a 32), y así llegado un momento los dispositivos conectados eran más que el
número de IPs disponibles, por lo que se diseñó NAT, el cual permite a cualquier
dispositivo, como un router, actuar como traductor de direcciones.
NAT es muy utilizado en empresas y redes caseras, ya que basta tener una sola dirección IP
pública para poder conectar una multitud de dispositivos.
Una pasarela NAT cambia la dirección origen en cada paquete de salida y, dependiendo del
método, también el puerto origen para que sea único. Estas traducciones de dirección se
almacenan en una tabla, para recordar que dirección y puerto le corresponde a cada
dispositivo cliente y así saber donde deben regresar los paquetes de respuesta. Si un
paquete que intenta ingresar a la red interna no existe en la tabla de traducciones, entonces
es descartado.
Utilizando NAT en el proyecto se consigue que el MODEM redirecciones las peticiones
exteriores al puerto 80, es decir a la página Web que se tiene servida a Internet, al
computador central con ip del tipo 192.168.1.3 y de esta forma a pesar de encontrarse en
una red de tipo LAN o privada, también puede interactuar con Internet. Esto se ha
configurado en el MODEM MT820 como se muestra en la figura 50.
108
Figura 50. Tabla de configuración NAT
Para hacerlo se añadió una regla que redirecciona información entrante y saliente hacia la
WAN y desde el IP de la LAN 192.168.1.3 y el puerto 80 predeterminado para el protocolo
HTTP como se ha dicho anteriormente, aunque como se sabe existen 65535 posibilidades
de puertos (ver figura 51).
Figura 51. Regla de NAT.
109
Acto seguido se deben configurar las reglas de filtro IP que normalmente son parte del
Firewall y que están en modo HIGH por defecto para implementar máxima seguridad a la
red interna pero que de igual manera bloqueará el puerto 80, cosa que en este caso es
indeseable y por tanto debe cambiarse (ver figura 52).
En el filtro IP se deben proporcionar datos tales como:
1. La identificación de regla que se crea (Rule ID).
2. Dirección de apertura de la regla (outgoing).
3. La acción de la regla que para desbloquear se fija en Accept.
4. Interface de entrada, se cuenta con una sola tarjeta de red y por tanto se fija a eth-0
que significa Tarjeta de red (Ethernet-0).
5. Nivel de seguridad en Low, bajo puesto que es una regla accept o permitir.
6. Desactivar para esta regla, de la lista negra de protocolos o puertos bloqueados.
7. El protocolo a utilizar, igual a TCP.
8. El puerto a desbloquear, el 80 predeterminado para http.
110
Figura 52. Filtro IP
Con el último paso, el MODEM queda listo para su utilidad en este proyecto permitiendo
que la página Web deseada sea vista por usuarios en Internet.
Si se quiere añadir seguridad al MODEM, se pueden manejar las ACL (access control list),
con lo que se puede definir desde que IP e interfaz ya sea, la red privada LAN o Internet
WAN se puede acceder a este. En la figura 53 se configuró el acceso sólo desde el
computador central que utilizará sus servicios.
Figura 53. Listas de control de acceso.
111
Finalmente para que los cambios tengan efecto se deben guardar los cambios como se
muestra en la figura 54.
Figura 54. Vista de la ventana Guardar cambios.
112
Descripción de la etapa de mando electrónico
Para ejecutar el mando electrónico sobre el circuito de potencia realizado en el proyecto
del Ingeniero Alberto Nicolás Figueroa Cuello se utiliza un protocolo paralelo como se
muestra en la figura 55, para ello se provoca una interrupción en el microcontrolador de la
etapa de potencia y se señaliza la acción deseada que es previamente ejecutada a través de
la interfaz Web a través de Internet.
Figura 55. Modo de conexión para lograr el mando electrónico sobre la etapa de
potencia del Ing. Alberto Nicolás Figueroa Cuello
Entonces en el caso de desear encender el equipo de soldadura, el circuito de la etapa de
potencia recibirá una interrupción y seguidamente los tres bits 001 como se muestra en la
tabla 3.
La forma de programación ha sido ampliamente tratada en la sección llamada: “Diseño de
la Programación en el PIC16f877A”
Tabla 3. Protocolo utilizado para el mando sobre la etapa de potencia del Ing. Alberto
Nicolás Figueroa Cuello.
113
Capítulo VII
Análisis económico y financiero
Resumen de un Modelo de Rentabilidad Financiera
Un Modelo de Rentabilidad Financiera (MRF) es una proyección de inversiones, gastos,
ingresos y parámetros financieros, organizada en una hoja electrónica (Como EXCEL) para
una empresa o proyecto.
Los MRF se usan para pronosticar niveles de rentabilidad financiera y otros parámetros
financieros de interés, cómo de que forma la rentabilidad se ve afectada por cambios en
volumen, precios y costos, lo que se conoce como análisis de sensibilidad.
Los parámetros de rentabilidad financiera más usados son la Tasa Interna de Retorno (TIR)
y el Valor Presente Neto (VPN).
Utilizando el TIR se puede conocer si la inversión en un negocio dado va a suministrar un
mayor retorno que si dejan los fondos sin utilizar, o para comparar el retorno de dos o más
alternativas de inversión.
La TIR debe ser mayor que el costo de oportunidad del capital más un factor de riesgo.
El costo de oportunidad del capital es la tasa promedio de interés que se puede obtener del
ahorro. Por ejemplo, la cantidad promedio de interés pagada por entidades financieras como
bancos.
El Valor Presente Neto es la utilidad (si es positivo) o pérdida (si es negativo) a pesos de
hoy, que proviene por invertir en el proyecto y no invertir al interés de oportunidad.
Descripción sobre las tasas de interés
La elevación o disminución de las tasas de interés es manejado por el Banco Central en
cada país como una medida para contener, evitar una crisis, o impulsar el crecimiento
económico. Estas tasas es el precio del dinero, un costo que una empresa, banco, o un
ciudadano tiene que pagar por pedir dinero prestado o en el caso de los bancos también
recibir un depósito de las empresas, personas u otros bancos.
Las tasas de interés se clasifican en activas y pasivas. Las primeras son las que los bancos
cobran por prestar dinero y las pasivas, las que los bancos pagan por recibir un depósito.
Si las tasas de interés suben, los préstamos se hacen más caros, y si baja, los préstamos, se
abaratan.
114
En el primer caso a las empresas y personas se les hace más costoso el financiamiento para
desarrollar sus actividades; a las empresas se les eleva el costo de las inversiones, compra
de equipos, construcción de nuevas plantas, y a las personas se les encarece la compra de
una vivienda, u otro artículo de la vida cotidiana. Debido a ello las entidades productivas
producen menos, las inversiones comienzan a disminuir y aumentan los despidos de
trabajadores, lo que hace que las personas consuman menos y se les dificulta adquirir otros
bienes.
Ahora, en el caso de que las tasas de interés bajen sucede lo contrario.
El crecimiento se hace fuerte y la demanda amenaza con superar la oferta de bienes y
servicios, obligando a una subida de precios, conocida como inflación, el Banco Central
decide la subida de la tasa de interés, para frenar el crecimiento de la economía y alejar la
crisis inflacionaria.
Pero si la economía deja de crecer de forma significativa; esto obliga al Banco Central del
país a bajar la tasa de interés, abaratar el crédito y que entonces las empresas aumenten su
producción y las personas consuman más, por lo que se convierte en un proceso cíclico
donde el Banco Central es un importante elemento regulador de la economía de un país.
Estudio sobre la tasa interna de retorno
La Tasa Interna de Retorno, se calcula (y define) de manera tal que el valor presente neto
sea igual a cero.
VPN = 0 = Σi=1...n BNi / (1+TIR)I
Ecuación 24
Donde:
VPN: Valor presente Neto
BNi: Beneficio Neto del Año i = ingresos(i) – egresos(i) [Donde los ingresos deben superar
los egresos]
TIR: Tasa interna de retorno
Cuando la TIR es mayor que la tasa de interés (tasa de oportunidad de mercado), el
rendimiento que obtendría el inversionista realizando la inversión es mayor que el que
obtendría en la mejor inversión alternativa, por lo tanto, conviene realizar la inversión.
Si la TIR es menor que la tasa de interés, el proyecto debe rechazarse.
Cuando la TIR es igual a la tasa de interés, el inversionista es indiferente entre realizar la
inversión o no.
TIR > i => realizar el proyecto
115
TIR < i => no realizar el proyecto
TIR = i => el inversionista es indiferente entre realizar el proyecto o no.
La tasa de descuento con la que se compara la TIR puede ser:
1. La tasa de interés de los préstamos, en caso de que la inversión se financie con
préstamos.
2. La tasa de retorno de las inversiones alternativas, en el caso de que la inversión se
financie con capital propio y haya restricciones de capital.
3. Una combinación de la tasa de interés de los préstamos y la tasa de rentabilidad de
las inversiones alternativas.
La TIR representa la tasa de interés más alta que un inversionista podría pagar sin perder
dinero, si todos los fondos para el financiamiento de la inversión se tomaran prestados y el
préstamo (principal e interés) se pagara con las entradas en efectivo de la inversión a
medida que se fuesen produciendo. [Bierman y Smidt]
Cálculo financiero
COSTOS DE MATERIA PRIMA
NO.
INSUMO
# DE
UNIDADES
1
2
3
4
ALAMBRE
6 METROS
PIC16F877
1
OSCILADOR
1
PLACA DE
1
CIRCUITO IMPRESO
5
ACIDO
1 PAQUETE
6
ACETATO
1 LAMINA
7
IMPRESION
1
8
MAX232
1
9
CAPACITORES
5
10
RESISTORES
10
11
LED
2
12
TRANSFORMADOR 1
DE CORRIENTE
13
CARCASA
1
14
ESTAÑO
10 cm
EMPRESA: ELECTRO LUZ
Tabla 4. Costos de materia prima
116
PRECIO POR
UNIDAD EN
PESOS
1 000
19 000
1 000
2 000
PRECIO
TOTAL EN
PESOS
6 000
19 000
1 000
2 000
1 000
1 000
200
7 000
200
50
300
40 000
1 000
1000
200
7 000
1 000
500
600
40 000
5 000
150
5 000
150
GASTOS DE OPERACIÓN Y DISEÑO
NO.
SERVICIO
EMPRESA
1
INTERNET
TELECOM
TELECOM
S.A ESP
BANDA
ANCHA
2
ELECTRICIDAD CENTRALES
ELECTRICAS
DEL N.S S.A
ESP
Tabla 5. Gastos de operación y diseño.
PRECIO EN
PESOS
75 000 MES
PRECIO TOTAL
EN PESOS
75 000 MES
21 200 MES
21 200 MES
INVERSIONES
EMPRESA ELECTRO LUZ
NO.
INVERSION
# DE
PRECIO
UNIDADES
POR
UNIDAD
EN PESOS
1
MULTIMETRO
1
40 000
2
DESTORNILLADORES 1 CAJA
5 000
3
CAUTIN
1
13 000
4
BISTURI
1
3 000
5
PINZA
1
5 000
6
PINZA DE CORTE
1
5 000
7
PROTOBOARD
1
15 000
EMPRESA COMPU HOME PLAZA
8
PC
1
1 500 000
9
LICENCIA WIN XP
1
200 000
10
MESA DE PC
1
100 000
Tabla 6. Inversiones
PRECIO
TOTAL EN
PESOS
40 000
5 000
13 000
3 000
5 000
5 000
15 000
1 500 000
200 000
100 000
INSUMOS GRATUITOS ( software)
NO.
1
2
INSUMO
VISUAL
STUDIO 2005
MPLAB 7.41
# DE
UNIDADES
1
MICROSOFT
PRECIO TOTAL
EN PESOS
0.0
1
MICROCHIP
0.0
Tabla 7. Insumos gratuitos.
117
EMPRESA
PROYECCIONES
Variables Macroeconómicas
Inflación
Ventas, Costos y Gastos
Precio Por Producto
Precio Producto
Unidades Vendidas por Producto
Ventas Producto 1
Total Ventas
Precio Promedio
Ventas
Ventas
Rebajas en Ventas
Rebaja
Pronto pago
Costos Unitarios Materia Prima
Costo Materia Prima Producto 1
Costos Unitarios Mano de Obra
Costo Mano de Obra Producto 1
Costos Variables Unitarios
Materia Prima (Costo Promedio)
Mano de Obra (Costo Promedio)
Materia Prima y M.O.
Otros Costos de Fabricación
Otros Costos de Fabricación
Costos Producción Inventariables
Materia Prima
Mano de Obra
Un.
2006
2007
2008
2009
2010
%
6,00%
6,00%
6,00%
6,00%
6,00%
$ / unid.
800.000
840.000
882.000
926.100
972.405
unid.
100
105
110
116
122
$
unid.
$
800.000,0
100
80.000.000,0
840.000,0
105
88.200.000,0
882.000,0
110
97.240.500,0
% ventas
$
5,0%
4.000.000
5,0%
4.410.000
5,0%
4.862.025
5,0%
5.360.383
5,0%
5.909.822
$ / unid.
382.200
401.310
421.376
442.444
464.566
$ / unid.
13.600
14.280
14.994
15.744
16.531
$ / unid.
$ / unid.
$ / unid.
382.200,0
13.600,0
395.800,0
401.310,0
14.280,0
415.590,0
421.375,5
14.994,0
436.369,5
442.444,3
15.743,7
458.188,0
464.566,5
16.530,9
481.097,4
$
0
0
0
0
0
$
$
38.220.000
1.360.000
42.137.550
1.499.400
46.456.649
1.653.089
51.218.455
1.822.530
56.468.347
2.009.339
118
926.100,0
972.405,0
116
122
107.207.651,3 118.196.435,5
Materia Prima y M.O.
Depreciación
$
$
39.580.000
189.316
43.636.950
200.675
48.109.737
212.715
53.040.985
225.478
58.477.686
239.007
Agotamiento
Total
Margen Bruto
$
$
$
0
39.769.316
50,29%
0
43.837.625
50,30%
0
48.322.453
50,31%
0
53.266.464
50,31%
0
58.716.694
50,32%
Gastos Operacionales
Gastos de Ventas
Gastos Administación
Total Gastos
$
$
$
50.000
0
50.000
52.500
0
52.500
55.125
0
55.125
57.881
0
57.881
60.775
0
60.775
días
$
%
30
6.666.667
15%
30
7.350.000
15%
30
8.103.375
15%
30
8.933.971
15%
30
9.849.703
15%
días costo
$
días
$
días compras
$
$
1
110.470
1
110.470
15
1.592.500
1.813.441
1
121.771
1
121.771
15
1.755.731
1.999.274
1
134.229
1
134.229
15
1.935.694
2.204.152
1
147.962
1
147.962
15
2.134.102
2.430.027
1
163.102
1
163.102
15
2.352.848
2.679.052
$
0
0
0
0
0
$
0
0
0
0
0
días
$
$
$
15
1.649.167
0
0
8
969.710
0
0
8
1.069.105
0
0
8
1.178.689
0
0
8
1.299.504
0
0
Capital de Trabajo
Cuentas por cobrar
Rotación Cartera Clientes
Cartera Clientes
Provisión Cuentas por Cobrar
Inventarios
Invent. Prod. Final Rotación
Invent. Prod. Final
Invent. Prod. en Proceso Rotación
Invent. Prod. Proceso
Invent. Materia Prima Rotación
Invent. Materia Prima
Total Inventario
Anticipos y Otras Cuentas por Cobar
Anticipos y Otras Cuentas por Cobar
Gastos Anticipados
Gastos Anticipados
Cuentas por Pagar
Cuentas por Pagar Proveedores
Cuentas por Pagar Proveedores
Acreedores Varios
Acreedores Varios (Var.)
119
Otros Pasivos
$
0
0
0
0
0
Inversiones (Inicio Período)
Equipo
Muebles y Enseres
Equipo de Transporte
Equipos de Oficina
Total Inversiones
$
$
$
$
$
1.586.000
100.000
0
0
1.686.000
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
$
0
0
0
0
0
Renta
Renta Presuntiva sobre patrimonio Liquido
Renta Presuntiva
%
%
6,00%
38,50%
6,00%
38,50%
6,00%
38,50%
6,00%
38,50%
6,00%
38,50%
Estructura de Capital
Capital Socios
Capital Adicional Socios
Obligaciones de Montajes EDUNAV
Obligaciones Financieras
$
$
$
$
0
0
40.000.000
0
0
0
40.000.000
0
0
0
40.000.000
0
0
0
40.000.000
0
0
0
40.000.000
0
Otros Activos
Valor Ajustado
Impuestos
Dividendos
Utilidades Repartibles
Dividendos
$
%
Dividendos
TIR (Tasa Interna de Retorno)
$
-
21.698.334
50%
35.383.513
50%
49.762.152
50%
65.401.778
50%
-
10.849.167
12.267.173
57,45%
13.322.906
14.481.266
50%
Tabla 8. Proyecciones.
120
Obtenida la TIR = 57,45% anual que es superior a la tasa de oportunidad de mercado que es
aproximadamente de un 18% anual.
TRC =
TRC =
TRC =
TIR
⎛ 1 ⎞
1− ⎜
⎟
⎝ 1 + TIR ⎠
Donde: TRC ; Tasa de recuperación contable. Ecuación 25
n
0.5745
1
⎞
⎛
1− ⎜
⎟
⎝ 1 + 0.5745 ⎠
5
0.5745
5
1 − (0.6351)
TRC = 0.64 => 64 % anual, por lo que anualmente se recupera el 64 % de la inversión.
PRI =
1
TRC
PRI =
1
0.64
Ecuación 26
PRI = 1,55 un año, 5 meses y 5 días.
121
RESULTADOS DEL ANALISIS
Flujo de Caja y Rentabilidad
Flujo de Operación
Flujo de Inversión
Flujo de Financiación
Flujo de caja para evaluación
Tasa de descuento Utilizada
Flujo de caja descontado
-40.000.000
-40.000.000
-40.000.000
36.370.000
-8.516.941
0
27.853.059
14%
24.432.508
26.517.040
-1.548.623
-10.849.167
24.968.417
14%
19.212.386
28.854.713
-858.858
-12.267.173
27.995.855
13%
19.063.630
32.067.691
-946.888
-13.322.906
31.120.803
4%
20.376.487
Criterios de Decisión
Tasa mínima de rendimiento a la que aspira
TIR (Tasa Interna de Retorno)
VAN (Valor actual neto)
PRI (Periodo de recuperación de la inversión)
Nivel de endeudamiento inicial del negocio,
teniendo en cuenta los recursos del Montajes
EDUNAV.
18%
57,45%
34.627.121
1,55
100,00%
Tabla 9. Resultados del análisis.
De acuerdo al análisis el proyecto es viable, tomando como base que la TIR supera la tasa de oportunidad de mercado por lo que la
inversión es recuperada en un corto plazo ( 1 año, 5 meses y 5 días) lo cual son resultados altamente satisfactorios dado que el dicho
análisis fue realizado tomando como base un período de 5 años.
122
Fuentes de financiación
Corresponde al empresario Eduardo Navarro Nieto en representación de la empresa
MONTAJES EDUNAV y a Antonio Gan Acosta en representación de la Universidad de
Pamplona, en base a los resultados presentados, decidir si se realiza el proyecto y las
condiciones de participación de cada uno.
Convenios y contratos
123
Marco Legal
El software utilizado en el proyecto es el paquete de Visual Studio 2005 Express y más
específicamente el Visual Web Developer Express 2005 y el Visual Basic Express 2005,
ambos se pueden descargar de forma gratuita del sitio de Microsoft.
La numerosa comunidad de desarrolladores, ya sean profesionales o simples aficionados, que
se ha reunido alrededor de Visual Studio 2005 Express -unos 5 millones de descargas en 5
meses- han decidido a Microsoft a perpetuar la gratuidad de este entorno de programación,
que hasta la fecha se encontraba limitada a 1 año.
Visual Studio 2005 Express consiste en una versión "lite" o ligera de las herramientas de
programación de Microsoft, que incluye Visual Web Developer, Visual Basic, Visual C#,
Visual C++, Visual J# y SQL Server Express, orientándose hacia el programador aficionado u
ocasional y a los pequeños negocios. [4]
El Windows que se utilizó fue la versión de 64 bits de prueba por 180 días, que se encuentra
en descarga gratuita en la página de Microsoft.
También se empleó el MPLAB 7.41 para la programación del microcontrolador, que se
obtiene en descarga gratuita desde el sitio de microchip.
Los componentes electrónicos, el computador y accesorios utilizados fueron adquiridos en los
centros de ventas de la ciudad de Pamplona, Colombia.
La utilización de servidores Web hacia Internet es totalmente legal si este no incluye software
pirata que infrinja la ley de protección al software propietario. En este caso se utiliza Internet
Information Server incluido en la instalación de Windows XP.
Por lo anteriormente expuesto se puede decir que el trabajo se realizó en un marco total de
legalidad.
124
Análisis de Protección e Higiene del trabajo
1. El módulo electrónico del sistema ha sido empaquetado dentro de una carcaza que
aporta acabado estético y seguridad de manejo para los operarios.
2. En el diseño de la aplicación de escritorio y el sitio Web, se utilizó la explicación del
las líneas de código mediante “Comentarios” para facilitar futuras mejoras y
ampliaciones de la programación.
3. Mediante el proyecto se consigue aislar al ser humano del proceso de soldadura
contribuyendo a la protección de este de los gases tóxicos que se generan y de posibles
quemaduras así como la protección del sentido de la vista.
4. La vida humana también se protege puesto que con el sistema de monitoreo y mando a
distancia, se aísla totalmente al operario o supervisor de las altas tensiones.
5. Si se utilizan monitores CRT para la supervisión u operación a distancia se debe tener
un protector de pantalla para proteger el sentido de la vista.
125
Influencia ambiental del trabajo
1. El sistema no produce desechos que puedan afectar la naturaleza, como emisión de
gases tóxicos o contaminación de aguas o emisión de ondas electromagnéticas.
2. Tampoco genera radiaciones que puedan ser peligrosas al entrar en contacto un ser
humano con este.
3. Al crear el circuito impreso requerido se tuvo cuidado de no generar recortes
innecesarios y disminuir al máximo su dimensión.
4. El sistema influye beneficiosamente pues se puede disminuir el consumo de
combustible para transportar personal calificado al área del proceso, adicionalmente
se reduce la utilización de papel al almacenar los resultados de las mediciones en una
base de datos virtual.
5. La toma de decisiones pueden realizarse en tiempo real y por personal altamente
especializado con lo que se genera un mejor funcionamiento así como una respuesta
rápida a posibles fallas o acciones supervisión preventiva.
126
Artículo científico sometido a publicación
SYSTEM OF DATA COMMUNICATION WITH INTERFACE WEB
THROUGH INTERNET
SISTEMA DE COMUNICACIÓN DE DATOS CON INTERFAZ WEB VIA
INTERNET
Ing. Wilson Antonio Gan Cuba MSc. Antonio
Gan Acosta. Ing. Alberto Nicolás Figueroa
Cuello
Universidad de Pamplona
Ciudadela Universitaria. Pamplona, Norte de Santander, Colombia.
Tel: 57-7-5685303, Fax: 57-7-5685303 Ext. 156
[email protected]
[email protected]
Abstract: We developed to a practical application to connect the utility of
computer science with the microcontrollers PIC to send and to return any
class of data in communication with a sensor or an electronic equipment
generic with which the user of the Web will be able to interact from the
comfort and facility of his house or office to develop to works of high
class of utility and complexity.
Resumen: Se muestra una aplicación práctica para acoplar la utilidad de la
informática con la de los microcontroladores PIC para enviar y retornar
cualquier clase de datos en comunicación con un sensor o un equipo
electrónico genérico final con el que el usuario de la Web podrá interactuar
desde la comodidad y facilidad de su casa u oficina para desarrollar
trabajos de alta utilidad y complejidad.
Keywords: web,
communication.
PIC,
visual
studio,
database,
visual
basic,
con interfaz Web debido a la facilidad no
sólo en cuanto a acceso sino de
configuración y manipulación, con el
entorno gráfico que estas proporcionan,
1. INTRODUCCIÓN
Si bien es sabido que actualmente muchos
aparatos electrónicos están siendo creados
127
entonces quedan listos para ser enviados a
su PC destino.
además de su muy beneficioso conocido
tele-manejo, son sólo usadas en equipos
aislados de empresas y aplicaciones
específicas como routers y PLCs, carentes
de flexibilidad (para otros usos distintos a
los que fueron concebidos) o bajo costo.
En la figura 1 se muestra el esquema en
bloques general del sistema.
Para desarrollar una aplicación práctica y
flexible para la industria utilizamos las
bondades del Visual Studio 2005 y su
plataforma .NET, así como un dispositivo
electrónico programable como los
microcontroladores PIC. Esta nueva forma
de interactuar con los PIC mediante una
INTERFAZ WEB VIA INTERNET
permite de manera muy útil y con sencilla
interfaz de usuario, monitorear y
manipular equipos electrónicos.
Se desarrolla una aplicación en Visual
Web Developer que se comunica con otra
aplicación de escritorio programada en
Visual Basic a través de una base de datos,
el programa de escritorio toma los datos
obtenidos de un PIC a mediante el
protocolo RS232 por el puerto serial del
computador y los almacena en la base de
datos de la cual el programa en VWD los
toma para mostrarlos finalmente al usuario
a través de un servidor Web instalado y
configurado en el PC estación central.
Fig.1 Esquema en bloques general del
sistema.
2. Concepto de páginas HTML
(estáticas) y dinámicas.
El HTML no es lenguaje de programación
sino que se trata de un lenguaje descriptivo
para dar formato al texto y las imágenes
que se desean visualizar en el navegador
por lo que a partir de este se introducen
enlaces, tamaños de letra, colores o dar
tamaño a las imágenes, pero no permite
realizar un simple cálculo matemático o
crear una página a partir de una base de
datos, como tampoco rellenar dicha base
de datos. Por lo que aunque muy útil para
mostrar información en Internet, es
limitado al necesitar interactuar con la
página Web y lograr la ejecución de
procesos automáticos.
En sentido inverso, desde la página Web
se da una orden a través de un botón el
cual almacena datos booleanos en una
base de datos, que es consultada
constantemente por la aplicación de
escritorio antedicha y que en este caso
envía el dato al PIC que es el encargado de
ejecutar una orden en el dispositivo del
proceso tecnológico final.
Destacamos que los datos que el PIC envía
hacia el puerto serial de la PC, son
tomados por un sensor, luego son
digitalizados con el CAD del PIC y
Por esto se han empleado otros lenguajes
más amplios y complejos pero que
proporcionan impensable utilidad puesto
128
manejo de bases de datos así como la
creación de sitios solo para miembros
VWD es una herramienta de valor
incalculable.
que la Web puede construirse casi
completamente a partir de datos ajenos al
código HTML de la página en si y que
permiten
una
total
o
parcial
automatización de nuestras aplicaciones
Web.
Primeramente se crea un nuevo sitio Web
de ASP.NET y en lenguaje se elige el
Visual Basic.
Estos lenguajes capaces de recrear a partir
de ciertos "scripts" páginas automatizadas,
son los protagonistas de este concepto de
páginas dinámicas, entre los que se puede
citar al PHP o al que se utiliza en esta
aplicación, el ASP o más concretamente el
nuevo ASP.NET. Los cuales son
interpretados directamente por el servidor
por lo que son llamados: “Lenguajes de
lado servidor”.
Un lenguaje de lado cliente es totalmente
independiente del servidor, lo cual permite
que la página pueda ser albergada en
cualquier sitio. Sin embargo un lenguaje
de lado servidor es independiente del
cliente por lo que es mucho menos rígido
respecto al cambio de un navegador a otro
o respecto a las versiones del mismo y
además como los scripts se ejecutan en el
servidor sin mostrarse nunca de manera
real al cliente, son de mayor seguridad.
3. Utilizando el Visual
Developer (VWD).
Fig. 2 Visual Web Developer
4. Control WebChart ASP.NET
Utilizando la programación en Visual
Basic y el control ASP.Net llamado
WebChart.dll que se obtiene en descarga
gratuita de la página www.carlosag.net
graficamos los datos los datos obtenidos
del sensor inicial.
Web
El Visual Web Developer es una
herramienta de extremada utilidad y
facilidad desarrollada por Microsoft, que
integra la novedosa programación de
ASP.NET. Con controles que responden a
eventos.
Para crear una Web de Mayor calidad en
cuanto a diseño y belleza, es más fácil para
el programador común utilizar otro
software
como
Macromedia
Dreamweaver, pero si se persigue una
aplicación que permita crear con mayor
facilidad y eficiencia diseños para en el
Fig. 3 Control ASP.NET WebChart
129
acceder
,
manejar
y
configurar
directamente a través del propio Visual
Studio 2005.
Para poder usar este control se debe añadir
al cuadro de herramientas luego lo
arrastramos a la Web y accediendo a la
ventana de escritura de código de Visual
Basic se podrá trabajar sobre él.
Habiendo creado primeramente la base de
datos a utilizar así como una tabla de
manera manual o mediante código,
utilizando el comando SQL “SELECT” se
obtiene la información de la base de datos
de un registro a la vez, para adicionarlos al
control WebChart que mencionamos
anteriormente.
Este control cuenta con una ayuda que se
puede descargar de manera gratuita de la
página del autor.
Entre lo más importante a tener en cuenta
está el tipo de gráfico a usar que entre los
más comunes tenemos el de líneas,
LineChart o el de columnas, ColumChart.
Esta base de datos en la tabla específica
que estará asignada a esta aplicación, es
llenada
previamente
con
datos
provenientes del programa de escritorio
desarrollado en VB y que es el mediador
entre el dispositivo electrónico y la
aplicación Web. Para este propósito se
escribe el comando SQL “INSERT”.
Este gráfico lo se crea punto a punto y
luego la utilidad del control ASP.NET crea
una imagen, que muestra el resultado final.
Esto se aprecia en el siguiente código:
Chart.Data.Add(New
ChartPoint(VarChar, VarNum))
6. Programa en Visual Basic
Ya se ha hablado que el programa de
escritorio será el enlace entre el PIC y la
Web.
NombreGrafico.Charts.Add(Cha
rt)
De esta manera se van creando los puntos
del gráfico, VarChar serán los valores del
eje de las abcisas que son valores de tipo
String o cadena, es decir de tipo alfabético
y VarNum son los valores de las
ordenadas de tipo numérico obtenidos.
Para adquirir la información proveniente
del dispositivo electrónico se adiciona al
programa el control llamado: “serialport” .
Finalmente con el código
NombreGrafico.RedrawChart()
se genera la imagen de una gráfica con los
datos incluidos anteriormente.
5. Base de datos
Infinidad de databases existen en la
actualidad, en este caso se utiliza el SQL
Express que está incluido al paquete de
Visual Studio 2005 y al que se puede
130
síncrona los datos son enviados en
bloques, el transmisor y el receptor son
sincronizados por uno o más caracteres
especiales
llamados
caracteres
de
sincronismo.
Fig. 4 Control SerialPort en entorno
Visual Basic
Al recibir datos se ejecuta el evento
serialport_DataReceived, dentro de este evento se
incluye la variable que almacenará los datos para
ser enviados a la base de datos y graficado por el
control WebChart.
El puerto serie del PC es un dispositivo
asíncrono. En una transmisión asíncrona,
un bit identifica su bit de comienzo y 1 o 2
bits identifican su final, no es necesario
ningún caracter de sincronismo. Primero
se envía el bit se start. Un caracter de
datos puede contener en 7 o 8 bits.
Dependiendo de la configuración de la
transmisión un bit de paridad es enviado
después de cada bit de datos para corregir
errores en los caracteres de datos.
Finalmente 1 o 2 bits de stop son
enviados.
7. El Microcontrolador
Un microcontrolador incluye en su interior
las tres unidades funcionales de un PC:
CPU, Memoria y Unidades de E/S.
Estándar RS-232C
El puerto serie del PC es compatible con el
estándar RS-232C.
Fig. 5 Microcontrolador
El estándar especifica 25 pines de señal, y
que el conector de DTE debe ser macho y
el conector de DCE hembra. Los
conectores mas usados son el DB-25
macho, pero muchos de los 25 pines no
son necesarios. Debido a esto en muchos
PC modernos se utilizan los DB-9 macho.
Los voltajes para un nivel lógico alto están
entre -3V y -15V. Un nivel lógico bajo
tendrá un voltaje entre +3V y +15V. Los
voltajes más usados son +12V y -12V.
De ahí su importancia pues es un
computador en un solo dispositivo
electrónico.
Comunicación puerto serial
Serial quiere decir que toma un byte de
datos y transmite los 8 bits del byte uno a
la vez, por una única vía.
Los equipos de comunicaciones serie se
pueden dividir entre simplex, half-duplex
y full-duplex. Una comunicación serie
simplex envía información en una sola
dirección. Half-duplex envía datos de ida y
regreso entre dos sistemas, pero en una
sola dirección al mismo tiempo. Si es fullduplex cada sistema puede enviar y recibir
datos al mismo tiempo.
Para la medición analógica se utiliza un
sensor de corriente u otro y luego se
digitalizan
con
el
CAD
del
microcontrolador
PIC
que
son
transmitidos al puerto serial del
computador mediante el protocolo RS232
en modo UART.
Hay dos tipos de comunicaciones:
síncronas o asíncronas. En una transmisión
131
Para acoplar los voltajes TTL a RS232
empleamos el dispositivo MAX232 que
media entre el microcontrolador y el PC.
10. Servidor en Internet (Network
Address Translation)
Debido al crecimiento de Internet y a la
limitación del direccionamiento con IPV4
que ocupa 32 bits, con un máximo de
4.294.967.296 direcciones que en la
actualidad son insuficientes y a las
dificultades
de
implementar el
direccionamiento IPV6 surge el Network
Address Translation (NAT) para que IPs
privadas, no válidas en Internet puedan ser
vistas en dicha red aplicando un
redireccionamiento de IP y de puertos.
8. Manipular el microcontrolador
Hasta ahora se ha hablado de la forma de
monitoreo de datos a través de la Web, se
desea además accionar el circuito eléctrico
manejado por el microcontrolador
mediante Internet.
En este caso utilizando por ejemplo un
botón en la página se puede almacenar un
dato en la database que está siendo
testeada constantemente por la aplicación
de escritorio la cual en este caso se
encarga de enviar la acción captada que
puede ser booleana es decir True or False
(o encendido/apagado) mediante el
comando: “SerialPort.WriteLine”
así finalmente el microcontrolador recibe
la
orden
y
ejecuta
la
acción
correspondiente.
Se utiliza para este fin un router con la
capacidad de hacer NAT que en la práctica
consiste en una tabla de traducciones en
donde se especifica el reemplazo de las IP
privadas con una única dirección IP
pública. Así se evita los conflictos de
direcciones entre las distintas redes y
conseguimos que nuestros clientes puedan
utilizar nuestra aplicación Web en Internet
a través de cualquier navegador
compatible como Internet Explorer o
Mozilla Firefox.
9. Webcam en la página
Para procesos que necesitan una
supervisión visual antes de realizar una
acción sobre el proceso o dispositivo, se
incluye una imagen proveniente de una
cámara Web en tiempo real, para ello se
utiliza el control llamado: “WebCAM.dll”
que agregado a una aplicación de Visual
Basic permite obtener imágenes de
cualquier cámara USB.
11. Conclusiones
Con la utilización de los controles
ASP.NET como el WebChart.dll, tareas
anteriormente casi impensables, le agregan
a la aplicación utilidad de valor científico
y práctico, escribiendo escasas líneas de
código, lo que tiene especial importancia
para ingenieros electricistas y electrónicos
que no se especializan en el área de la
informática.
Cada cierto tiempo (mientras menos
mejor) se toma una muestra de la imagen
captada por el control a través de la
webcam y se guarda en una ubicación del
disco duro o un servidor FTP, que se
sobrescribe constantemente desde donde
es accedida por la página Web que se está
desarrollando y que se recarga a cada
momento dando una sensación de
continuidad.
La utilización de la Webcam en la página
es una herramienta novedosa que permite
añadir otro importante sentido a la
supervisión, y mediante la valoración
visual se pueden tomar decisiones más
precisas.
132
“SQLCommand” Disponible en:
http://sqlcommand.sourceforge.net
Haciendo NAT no sólo se disminuyen los
costos de obtener adicionales IPs públicas,
sino que se agrega una protección nueva al
servidor Web, puesto que no se encuentra
ubicado precisamente en la IP que se
muestra en Internet sino redireccionado a
esta.
“Curso Desarrollo web con Visual Studio
2005” Disponible en:
http://www.desarrollaconmsdn.com/msdn/
Cursos/Curso_Desarrollo_web_con_Visua
l_Studio_2005/index.html
Referencias
WILSON ANTONIO GAN CUBA
Ingeniero Electrónico., Universidad
Pamplona.
[email protected]
Mridula Parihar et al.
“ASP.NET Bible” Published by Hungry
Minds, Inc. 909 Third Avenue New York,
NY 10022
www.hungryminds.com
de
ANTONIO GAN ACOSTA.
Ingeniero Electricista.
M.Sc. en Ciencias de Ingenierías.
[email protected]
Dobson, Rick
“Beginning SQL Server 2005 Express
Database Applications with Visual Basic
Express and Visual Web Developer
Express From Novice to Professional”
ISBN (pbk): 1-59059-523-8, Printed and
bound in the United States of America 9 8
7654321
ALBERTO NICOLÁS
FIGUEROA CUELLO
Ingeniero Electrónico., Universidad
Pamplona.
[email protected]
Fenyö Alexandre, Le Guern Frédéric,
Tardieu Samuel
“Conecte su red local a Internet”
Ediciones: Gestión 2000, S.A., Barcelona,
1997
“Estándar de comunicaciones RS-232C
(O Cómo funciona un puerto serie...)”
Disponible en:
http://www.euskalnet.net/shizuka/rs232.ht
m
“Interfacing the Serial / RS232 Port”
Disponible
en:
http://www.beyondlogic.org/serial/serial.h
tm
“Curso VWD y ASP.NET 2” Disponible
en: www.videotutoriales.com
133
de
Resultados
Se obtuvieron conocimientos respecto al manejo de bases de datos.
Se obtuvieron conocimientos sobre la programación en Visual Basic 2005.
Se incrementaron los conocimientos sobre el diseño de páginas Web y especialmente en el
manejo del software Visual Web Developer 2005, así como su programación con Visual
Basic 2005.
Se profundizaron los conocimientos sobre programación con microcontroladores PIC,
logrando un sistema para el que no fueron especialmente concebidos como lo es el manejo
a distancia vía Web.
Para el aprendizaje de la programación además del apoyo del codirector, se experimentó la
modalidad de clases virtuales a través de los videotutoriales descargados de la página
www.videotutoriales.com obteniendo gran parte del conocimiento sobre el manejo de
Visual Web Developer.
Basado en el contenido del trabajo fue aprobada la publicación de un artículo para la revista
de Tecnologías de Avanzada, cuyo texto está en su totalidad incluido en el escrito del
proyecto.
Solicitud de exposición de una ponencia el Congreso CIETA 2006.
Se obtuvo la primera aproximación de un sistema de monitoreo y manejo vía Web a través
de Internet, con el que se podrán desarrollar posteriores y mas complejos trabajos en el
manejo de equipos electrónicos a través de la macrored.
1. Sistema de sensado electrónico de variables eléctricas, así como su envío y
almacenamiento para ser mostrados gráficamente en una página Web, de manera que los
datos pueden ser agrupados por día mes o año de su adquisición para un análisis más
personalizado y óptimo.
2. Sistema de comunicación entre una aplicación Web y un programa de escritorio
utilizando como intermediario una base de datos.
3. Sistema de detección de hardware a vía Web a través de Internet, para comprobar el
estado de encendido o de funcionalidad del aparato eléctrico final.
4. Sistema para la comunicación con el circuito de disparo, control y mando electrónico
vía Web a través de Internet.
5. Sistema ON/OFF para el apagado/encendido o señalización simple de circuitos
eléctricos/electrónicos a distancia, vía Web a través de Internet.
Basado en el proyecto se mejoró la confiabilidad de la empresa CONEXWISP proveedora
de Internet inalámbrico en la ciudad de Pamplona, Colombia.
Se impartieron clases de diseño de Web-blog a profesores y estudiantes de la Facultad de
Ingenierías y Arquitectura.
Conclusiones
Se cumplieron los objetivos planteados al diseñar e implementar el sistema de monitoreo y
mando vía Web a través de Internet, ampliamente tratado a través de todo el proyecto.
Con la utilización de los controles ASP.NET como el WebChart.dll, tareas anteriormente
casi impensables, le agregan a la aplicación utilidad de valor científico y práctico, lo que
tiene especial importancia para ingenieros electricistas y electrónicos que no se especializan
en el área de la informática.
La modalidad de manejo vía Web, tratada a través del proyecto, le adiciona a este una
cualidad indiscutible en cuanto a utilidad y flexibilidad porque el protocolo http es común a
la mayor parte de sistemas operativos actuales, así pues aunque la aplicación de escritorio
deberá correr sobre Windows, el usuario final podrá acceder a través de cualquier
navegador instalado por ejemplo en Linux o Mackintosh.
El proyecto es rentable, lo que ha sido soportado mediante el análisis económico y
financiero.
Los tiempos de respuesta entre el mando vía Web y la ejecución en el dispositivo
electrónico dependen de la velocidad de Internet utilizada, pero no se requieren grandes
velocidades para conseguir un manejo óptimo aproximado al tiempo real. Además si se
quieren lograr respuestas más rápidas utilizando la misma velocidad de Internet se puede
proceder a desarrollar ventanas aparte solamente con botones específicos, con lo que se
alcanza una recarga más rápida y por consiguiente su respectiva acción en el dispositivo
electrónico final.
Con la configuración NAT no sólo se disminuyen los costos de obtener adicionales IPs
públicas, sino que se agrega una protección nueva al servidor Web, puesto que no se
encuentra ubicado precisamente en la IP que se muestra en Internet sino redireccionado a
esta.
El sistema que en este caso ha sido concebido para interactuar con el circuito electrónico de
disparo y mando digital del controlador de corriente de un equipo de soldadura por arco
eléctrico para electrodos revestidos, es flexible para ser adaptado a cualquier otra clase de
dispositivos eléctricos o electrónicos que manejen microcontroladores, lo que resuelve las
necesidades de adaptabilidad planteadas al inicio del proyecto.
135
Observaciones y Recomendaciones
El sistema presentado no pretende ser una aplicación final, se propone ampliarlo en futuros
trabajos de grado para lograr un sistema altamente eficaz en la obtención y manejo de datos
en una Web a través de Internet.
Aunque las altas velocidades de Internet, se hacen cada vez más accesibles al usuario
común, si aplicaciones nuevas que trabajen utilizando el método planteado de transmisión
de imágenes vía Web, no requieren alta calidad de visión, se recomienda el estudio y
aplicación de algoritmos de programación y matemáticos que permitan la compresión de
imágenes para poder utilizar el sistema en una red de cualquier velocidad.
Se recomienda, al menos, introducir el tema en clases, debido a la importancia que ha sido
tratada durante todo el proyecto, de que en la actualidad existe una gran tendencia del
manejo de dispositivos electrónico por Internet que en un futuro cercano permitirá por
ejemplo a médicos especializados estar al alcance y de Manera menos costosa al paciente
común debido a la habilidad de estos sistemas de acortar distancias y esfuerzos.
Desarrollar otros proyectos enfocados al manejo electrónico vía Web a través de Internet
pero a manera de sistemas embebidos, permitiendo en este caso prescindir totalmente del
PC.
Se recomienda trabajar sobre la interfaz de restricciones de acceso de usuario al sitio de
monitoreo y mando.
136
Bibliografía
[1] http://html.conclase.net/w3c/html401-es/intro/intro.html
[2]. http://es.wikipedia.org/wiki/ASP.NET
[3] http://support.microsoft.com/?scid=kb;es;302342
[4]http://www.noticias.com/articulo/22-04-2006/guillem-alsina/visual-studio-2005-expressgratis-siempre-556l.html
“Proyectos y tutoriales múltiples sobre tecnología .NET”
http://www.elguille.info/
“Estándar de comunicaciones RS-232C (O Cómo funciona un puerto serie...)” Disponible
en: http://www.euskalnet.net/shizuka/rs232.htm
“Interfacing the Serial / RS232 Port” Disponible en:
http://www.beyondlogic.org/serial/serial.htm
“Curso VWD y ASP.NET 2” Disponible en: www.videotutoriales.com
“SQLCommand” Disponible en: http://sqlcommand.sourceforge.net
“Curso Desarrollo Web con Visual Studio 2005” Disponible en:
http://www.desarrollaconmsdn.com/msdn/Cursos/Curso_Desarrollo_web_con_Visual_Stud
io_2005/index.html
“Recursos de código abierto para programación con pic”
http://www.gnupic.org/
“Portal de discusión sobre los PIC”
http://www.embeddedrelated.com/groups/piclist/1.php
Antonio Gan Acosta
“Metodología para trabajos de grado” marzo de 2006
Vicente Fernández.
"Apuntes de la asignatura" . Tomos I y II, servicio de reprografía de la EUITIZ (lista de
electrónicos).
A. Lloris, A. Prieto.
“Diseño lógico”. Ed. Mc Graw–Hill. (1996).
Daniel D. Gajski.
"Principios de diseño digital". Ed. Prentice–Hall. (1997).
137
M. Morris Mano y Charles R: Kime.
"Fundamentos de diseño lógico y computadoras". Ed. Prentice–Hall. (1998).
H. Taub.
"Circuitos digitales y Microprocesadores". Ed. MacGraw–Hill. (1982).
E. Mandado.
"Sistemas electrónicos digitales". Ed. Marcombo. (1998).
Thomas L. Floyd.
"Fundamentos de sistemas digitales". 7ª edición. Ed. Prentice–Hall. (2000).
John F. Wakerly.
"Diseño digital. Principios y prácticas". 3ª edición. Ed. Prentice–Hall. (2001).
J.P. Hayes.
"Introducción al diseño lógico digital". Ed. Addison–Wesley. (1996).
Ronald J. Tocci.
"Sistemas digitales". Ed. Prentice–Hall. (1995)
P. de Miguel Anasagasti.
"Fundamentos de los computadores". Ed. Paraninfo. (1999).
F. Hill & G. Peterson.
"Teoría de la conmutación y diseño lógico". Ed. Limusa. (1978).
C. Baena, M.J. Bellido, A.J. Molina, P. Parra y M. Valencia.
"Problemas de circuitos y sistemas digitales". Ed. MacGraw–Hill. (1997).
J. Velasco. J. Otero.
"Problemas de sistemas electrónicos digitales". Ed. Paraninfo. (1995).
F. Ojeda Cherta.
"Problemas de electrónica digital". Ed. Paraninfo. (1994).
Mark N. Horenstein.
Microelectrónica: Circuitos y Dispositivos. (2ª edición). Prentice Hall. México 1997
J. Millman y A. Grabel.
Microelectrónica. (6º ed.). Hispano Europea. 1993 D. L. Schilling y C. Belove. Circuitos
Electrónicos. Discretos e integrados. (3º edición)
McGraw-Hill
A. P. Malvino. Principios de Electrónica. (4º edición). McGraw-Hill Allan R. Hambley.
Electrónica (2º edición). Prentice may. 2001
138
Franco, S.
“Operational amplifiers and analog integrated circuits.” (20 Edición) Editorial: McGrawHill, 1998.
Norbert R. Malik.
“Circuitos electrónicos: análisis, simulación y diseño.” Editorial: Prentice Hall, 1996.
Daniel W.Hart.
"Electrónica de Potencia". Prentice Hall. 2001.
Mohan, Undeland, Robbins.
"Power Electronics: Converters, Applications and Design". J. Wiley, 1989.
Rashid.
"Power electronics: Circuits, Devices and Applications". Prentice-Hall, 1993.
Gualda, Martínez S., Martínez P.M.
"Electrónica industrial: Técnicas de potencia". Marcombo, 1992.
Pressman.
"Switching power supply design". Mc Graw-Hill, 1991
Fernando Valdés / Ramon Pallàs
“Microcontroladores: fundamentos y aplicaciones con pic” Novedad octubre 2006
Editorial: MARCOMBO, S.A. ISBN: 8426714145 Páginas: 350 Edición: 1ª EAN:
9788426714145
Mridula Parihar et al.
“ASP.NET Bible” Published by Hungry Minds, Inc. 909 Third Avenue New York, NY
10022 www.hungryminds.com
Dobson, Rick
“Beginning SQL Server 2005 Express Database Applications with Visual Basic Express
and Visual Web Developer Express From Novice to Professional”
ISBN (pbk): 1-59059-523-8, Printed and bound in the United States of America 9 8 7 6 5 4
321
Fenyö Alexandre, Le Guern Frédéric, Tardieu Samuel
“Conecte su red local a Internet” Ediciones: Gestión 2000, S.A., Barcelona, 1997
Jorge Serrano
“Microsoft Visual Basic 2005” Editorial: Anaya Multimedia Edición: Rústica
139
Luis Miguel Blanco
“Diseño de Informes con SQL Reporting Services” Editorial: Netalia Ediciones Edición:
Rústica
Microsoft
“Arquitectura de aplicaciones para .NET” Editorial: Microsoft ISBN: 84-481-3981-X
Francisco Charte
“Visual Studio .NET” Edición: Rústica (320 p.) Editorial: Anaya Multimedia ISBN: 84415-1291-4
Guillermo "Guille" Som
“Manual imprescindible de Visual Basic .NET” Edición: Rústica (475 p.) Editorial: Anaya
Multimedia ISBN: 8441513945
Stephen Walther
“ASP.NET al descubierto” Editorial: Prentice-Hall Edición: Rústica
Microsoft
“Improving .NET Application Performance and Scalability” Editorial: Microsoft Press
Microsoft
“Microsoft .NET Framework 1.1 - Library Reference” (10 volúmenes) Editorial: Microsoft
Press
David Chappell
“Understanding .NET: A Tutorial and Analysis” Editorial: Mc-Graw Hill
Año:2002
David Stutz, Ted Neward y Geoff Shilling
“Shared Source CLI (Essentials)” Ed. O’Reilly ISBN: 0-596-00351-X
Mathew MacDonald
“Beginning ASP.NET with VB.NET” Editorial: APress
Charles Petzold
“Code: The Hidden Language of Computer Hardware and Software” Editorial: Microsoft
Núm. páginas: 400
140
Análisis bibliográfico
http://www.elguille.info/; Se recomienda esta página Web donde se muestran varios
tutoriales y proyectos de ejemplo para el desarrollo del código en la plataforma .NET, por
ejemplo para el desarrollo de la recepción de datos por el puerto serial mediante el software
de escritorio.
http://www.euskalnet.net/shizuka/rs232.htm; Se recomienda esta página se muestran
fundamentos generales sobre el funcionamiento del puerto serie y la transmisión serial.
http://www.beyondlogic.org/serial/serial.htm; Se recomienda esta página donde se describe
detalladamente el funcionamiento de la transmisión serial y el chip UART.
Mridula Parihar et al.
“ASP.NET Bible” Published by Hungry Minds, Inc. 909 Third Avenue New York, NY
10022 www.hungryminds.com; En este libro se pueden recomiendan el estudio de los
fundamentos de programación sobre la plataforma .NET:
Dobson, Rick
“Beginning SQL Server 2005 Express Database Applications with Visual Basic Express
and Visual Web Developer Express From Novice to Professional” ISBN (pbk): 1-59059523-8, Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1; Se recomienda
este libro que detalla el manejo de SQL Server 2005 utilizando Visual Basic Express 2005
y Visual Web Developer Express 2005.
Fenyö Alexandre, Le Guern Frédéric, Tardieu Samuel
“Conecte su red local a Internet” Ediciones: Gestión 2000, S.A., Barcelona, 1997; Se
recomienda este libro donde se explica las técnicas y protocolos modernos de conexión
entre redes y subredes y su unión final a Internet, que influyó en el análisis y la
comprensión final del modo de configuración de la etapa del canal de comunicación por
Internet.
“Curso VWD y ASP.NET 2” Disponible en: www.videotutoriales.com
“SQLCommand” Disponible en: http://sqlcommand.sourceforge.net
“Curso Desarrollo web con Visual Studio 2005” Disponible en:
http://www.desarrollaconmsdn.com/msdn/Cursos/Curso_Desarrollo_web_con_Visual_Stud
io_2005/index.html
Especial recomendación de los anteriores artículos y videotutoriales se presentan
información detallada sobre el modo de programación en VB y VWD así como el manejo
mediante estos del servidor de bases de datos SQL Server 2005.
141
H. Taub.
"Circuitos digitales y Microprocesadores". Ed. MacGraw–Hill. (1982).; Se recomienda este
libro donde se profundizó en la comprensión de los circuitos digitales especialmente los
microcontroladores para desarrollar el correcto programa en ensamblador y montaje del
circuito electrónico.
Fernando Valdés / Ramon Pallàs
“Microcontroladores: fundamentos y aplicaciones con pic” Novedad octubre 2006
Editorial: MARCOMBO, S.A. ISBN: 8426714145 Páginas: 350 Edición: 1ª EAN:
9788426714145; Se recomienda este libro donde se muestran aplicaciones del uso de los
PIC que fueron factor importante para el avance del algoritmo de programación en
ensamblador.
Rashid.
"Power electronics: Circuits, Devices and Applications". Prentice-Hall, 1993.; Se
recomienda este libro que fue utilizado para la correcta comprensión del funcionamiento
del manejo de la etapa de potencia para controlar la corriente en el equipo de soldadura por
arco eléctrico.
McGraw-Hill
A. P. Malvino. Principios de Electrónica. (4º edición). McGraw-Hill Allan R. Hambley.
Electrónica (2º edición). Prentice may. 2001; Se recomienda este libro donde se resumen
los aspectos más importantes sobre electrónica analógica y que en el proyecto utilizamos
para reafirmar los temas de la rectificación de onda completa.
142
Glosario de términos no convencionales
[E]
Electrodo
Son varillas metálicas preparadas para servir como polo del circuito; en su extremo se
genera el arco. En algunos casos, sirven también como material fundente. La varilla
metálica a menudo va recubierta de distintos materiales, en función de la pieza a soldar y
del procedimiento empleado.
[H]
Hipertexto: Representa a cualquier texto que contiene enlaces o vínculos a otras páginas del
mismo documento o de otro documento.
Host: Representa a cualquier clase de ordenador conectado a la red y que presta servicios a
los otros ordenadores de la red, como WWW, News, FTP, etc.
HTML (HyperText Mark-up Language): Es el lenguaje utilizado para escribir documentos
con hipertexto usados en los servicios World Wide Web. Las páginas escritas en lenguaje
HTML deben ser visualizadas usando el software cliente denominado browser o navegador.
HTTP (HyperText Transfer Protocol): Es el protocolo utilizado para el intercambio de los
archivos de hipertexto (escritos en HTML) a través de Internet, entre un software cliente
por una parte y un servidor en el otro, operando ambos bajo este protocolo. Este es el
protocolo más importante utilizado en los servicios World Wide Web (WWW).
[S]
SCRIPT: En la programación de computadoras es un programa o una secuencia de
instrucciones que es interpretado y llevado a cabo por otro programa en lugar de ser
procesado por el procesador de la computadora.
[U]
URL (Uniform Resource Locator): Es el modo estándar dado para la dirección de cualquier
recurso sobre Internet. Ejemplo de URL es: http://www.google.com
[W]
WWW: (World Wide Web: red mundial) Conocido simplemente como la Web, es uno de
los servicios más populares de Internet. Combina texto con gráficos, imágenes,
animaciones e incluso sonido y vídeo, enlazados entre sí de tal manera que facilita la
navegación por la información dispersa en todo Internet. Se basa en el protocolo http y fue
creado por el Sistema de información global desarrollado en 1990 por Robert Cailliau y
Tim Berners-Lee en el CERN (Consejo Europeo para la Investigación Nuclear).
143
Abreviaturas utilizadas
AC; corriente alterna
A/D; analógico-digital
ARGB; alpha red green blue
ASP; active server pages;
ATM; modo de Transferencia Asíncrono
CAD; conversor anológico-digital
CDA; conversor digital-analógico
CRT; catode ray tube
Dll; dynamic link library
DMT; discrete multiTone modulación
DNS; domain name system
DSLAM;multiplexor de acceso DSL
DSL; línea de abonado digital
Fx;
frecuencia de oscilación
HTML; HyperText Markup Language
Id;
Ief;
Ip;
Ip;
Ipic;
Ireal;
corriente en el led del optoacoplador
corriente eficaz
Internet protocol
corriente pico
corriente proporcional a la corriente real.
corriente real en que circula por el devanado secundario del equipo de soldadura.
LAN;
local area network
MRF; Modelo de Rentabilidad Financiera
N;
NAT;
número de valores
NetWork Address Translation
Pef;
Pmed;
PRI;
potencia eficaz
potencia media
período de retorno de la inversión
RD0, RD1; RD2; puertos del PIC16f877
RFC; Request For Comments
Roa;
resistor a la entrada del led del optoacoplador 4n25
SAR;
Registro de Aproximaciones Sucesivas
144
TIR;
T;
TAD;
TRC ;
Tasa Interna de Retorno
período
tiempo que dura la conversión A/D de cada bit
Tasa de recuperación contable
UART; Universal Asynchronous Receiver/Transmitter
USB;
universal serial bus
VB;
Vd;
Vef;
Vmax;
Vmed;
Vp;
Vpic;
VPN;
Vref;
VWD;
Visual Basic
voltaje en el led del optoacoplador
voltaje eficaz(rms)
voltaje máximo
voltaje medio
Voltaje de pico
es el valor rms de voltaje muestreado por el microcontrolador en RL.
Valor Presente Neto
voltaje de referencia
visual web developer
X;
Xmed;
Xrms;
valor hipotético
valor medio
valor rms
145
Símbolos utilizados.
Señal sinusoidal de corriente alterna.
Bloque de muestreo y retención.
Representación ideal mediante un interruptor, de la toma de muestras.
Pulso digital de reloj.
Registro de aproximaciones sucesivas.
Célula ATM
Computador
Router
Multiplexor de Acceso DSL
Teléfono
Computador
146
Matriz de conmutación telefónica
ADSL Terminal Unit-Remote
ADSL Terminal Unit-Central
Splitter (Filtro)
147
Reseñas biográficas de
director, codirector y asesores y jurados
M.Sc. ANTONIO GAN ACOSTA, Director
PERFIL
• Ingeniero Electricista. URSS 1983.
• Especialista en Electrificación de la Agricultura. URSS 1983.
• Master en Ciencias de Ingeniería. URSS 1983.
• Master en Educación Superior. Cuba 1997.
EXPERIENCIA PROFESIONAL
1. Categoría docente.
-Profesor Instructor (Profesor Auxiliar) en 1987.
-Profesor Asistente (Profesor Asistente) en 1994.
-Profesor Auxiliar (Profesor Asociado) en 1997.
2. Experiencia docente calificada.
-Profesor de la Universidad de Camagüey desde Noviembre de 1987 hasta abril de 1998.
-Profesor de la Universidad de Pamplona a partir de mayo de l998.
-Durante ocho años fue jefe de Tema de Investigación y del Laboratorio de Mediciones
Eléctricas y Electrónicas de la Universidad de Camagüey.
3. Experiencia profesional calificada.
-Empresa Cítricos de Sola; Años 1983 al 1985.Cargo: Especialista Principal parte eléctrica
y electrónica de los sistemas de bombeo para el riego.
-Ministerio de la Industria azucarera. 1985 al 1986.Cargo: Especialista en Diseño,
mantenimiento y reparación de los medios y sistemas eléctricos y electrónicos de los
complejos agroindustriales (centrales azucareros) del territorio.
-Fábrica de concentrados de Camagüey; 1986 al 1987.Cargo: Especialista en Diseño,
mantenimiento y reparación de equipos eléctricos y electrónicos.
-Empresa de servicios a la población. Año 1987.Cargo: Especialista en reparación de
equipos eléctricos y electrónicos.
-Universidad de Camagüey Cuba. Años 1987 al 1998.Cargo: Profesor de distintas
asignaturas de la carrera de Ingeniería Eléctrica.
-Director de la carrera de Ingeniería Eléctrica. Miembro del Consejo Nacional de Ingeniería
Eléctrica de la República de Cuba.
-Director del laboratorio de Investigación en Mediciones Eléctricas y Electrónica.
-Universidad de Pamplona Colombia. Años 1998 al 2006.Cargo: Profesor de distintas
asignaturas en el área de la electricidad y la electrónica.
-Director del departamento de Ingenierías Eléctrica, Electrónica, Sistemas y
Telecomunicaciones, Universidad de Pamplona, Colombia.
Cuenta con un amplio historial de publicaciones impresas, investigaciones científicas, tesis
de grado tutoriadas, participación en eventos científicos como ponente, participación en
eventos científicos como delegado, participación en eventos científicos como jurado.
148
Ing. FABIAN RENÉ SANCHEZ BLANCO, Codirector
PERFIL
• Ingeniería de sistemas, Universidad Industrial de Santander,
Bucaramanga.
• Curso intensivo sobre
Redes de Computadores y Cableado
Estructurado; NFC Electrónica. Bucaramanga, 1999.
• Curso de inglés; Instituto Colombo - Americano Santafé de Bogotá, seis niveles.
• Participante en el cuarto congreso nacional de estudiantes de Ingeniería de Sistemas
(Visión innovadora del Ingeniero de Sistemas).
• Participante en la octava semana técnica de Ingeniería de Sistemas, Universidad
Industrial de Santander, 1997.
• Cuatro Semestres de Ingeniería de Petróleos, Universidad de América, Bogotá
1988-1989.
EXPERIENCIA PROFESIONAL
1. En desarrollo de software
-Gobernación de Arauca (2003). Diseño, desarrollo e implementación del nuevo
Sistema Financiero.
-Alcaldía de Arauca (2002). Diseño, desarrollo e implementación del Sistema de
Liquidación y Recaudo de los impuestos Predial, Industria y Comercio e impuestos
Complementarios
-Instituto Técnico SIDES Ltda. Arauca (2002). Diseño, desarrollo e implementación del
Sistema “Institutos”.
-Club “los Arrieros” Arauca (2002). Diseño, desarrollo e implementación del Sistema
“Administrador de Billares”.
-Data Office Ltda. Arauca (2000-2001). Diseño, desarrollo e implementación del
Sistema Financiero Matrix Millennium .
-Alcaldía de Floridablanca Santander (1999-2000). Desarrollo e implementación del
Sistema de Liquidación del Impuesto Predial Unificado.
-Universidad Industrial de Santander (1999). Diseño y Programación del Sistema de
Liquidación de matriculas “LIMA” para las Seccionales de la UIS.
-Ingenieros Consultores S.A. Bucaramanga (1997). Diseño y programación del
programa de Facturación para Ingenieros Consultores.
-ECOPETROL Barrancabermeja (1996). Diseño y programación de software para
controlar las Unidades de Radio Transmisión de bombeo, vía Módem.
-Proyecto de Grado: Sistema de Información para el control de los Impuestos Predial,
Industria y Comercio, e Impuestos Complementarios.
2. Como docente en sistemas
-Instituto Superior de Educación Rural Pamplona (2004-2005-2006).
-Gobernación de Arauca (2003). Instructor del curso de capacitación en nuevas
tecnologías de programación a los funcionarios de sistemas.
-Universidad de Santander UDES Arauca (2002).
-Instituto Técnico SIDES Ltda. Arauca (2001-2002).
-Colegio Coprofesores Bucaramanga (1997). Instructor en la capacitación sobre DOS,
Microsoft Windows y Microsoft Word; para los profesores del colegio.
149
Asesores:
Ing. OSCAR JOSÉ CABRALES BAENA, en la parte de diseño de circuitos con
microcontroladores.
PERFIL
• Ingeniero en electrónica. Universidad de Pamplona.
EXPERIENCIA PROFESIONAL
-Profesor de la Universidad de Pamplona
-Diseñador y Desarrollador de Aplicaciones digitales basadas en microcontroladores y
microprocesadores.
-Diseñador de software y sistemas inteligentes personalizados.
ELIZABETH PARRA BAUTISTA, en la parte económica.
PERFIL:
Estudiante de 6to semestre de la Universidad de Pamplona
EXPERIENCIA PROFESIONAL:
Asesorías múltiples a los autores de proyectos de grado del departamento EEST de la
Universidad de Pamplona, Colombia
150
Ph.D ANTONIO FAUSTINO MUÑOZ MONER, Presidente
PERFIL
• 1987 – 1991 Doctorado en Doctorado En Control y Automatizacion Industrial
• 1983 – 1985 Maestria/Magister en Control Electrónica y Automatización Industrial.
Universidad de Acero y Aleaciones de Moscu, MIC, Rusia.
• 1983 – 1984 Especialización en Especializacion En Automatizacion Industrial.
Universidad de Acero y Aleaciones de Moscu, MIC, Rusia.
• 1992 – 1993 Especialización en Docencia Universitaria. Profesor Titular.
Universidad de la Habana , UH, Cuba.
• 1976 – 1983 Pregrado/Universitario en Ingeniero Metalurgico-Automatizacion.
Universidad de Acero y Aleaciones de Moscu, MIC, Rusia.
EXPERIENCIA PROFESIONAL
1. Consejo Nacional de Acreditación – CNA
Vínculo: Par Académico, Encuadramiento funcional: Par Académico, Carga horaria: 24,
Régimen: Parcial
2. Universidad Autónoma De Bucaramanga – UAB
Vínculo: Empleado, Encuadramiento funcional: Docente-Investigador, Carga horaria: 22,
Régimen: Parcial
3. Universidad de la Habana – UH
Vínculo: Profesor visitante, Encuadramiento funcional: Profesor titular, Carga horaria: 12,
Régimen: Parcial
4. Universidad de Moa – ISMM
Vínculo: Empleado, Encuadramiento funcional: Profesor titular, Carga horaria: 24,
Régimen: Parcial
5. Universidad De Pamplona - UP
Vínculo: Profesor visitante, Encuadramiento funcional: Profesor titular, Carga oraría: 22,
Régimen: Parcial
6. Universidad Pedagógica Y Tecnologica De Colombia - Tunja – UPTCT
Vínculo: Profesor visitante, Encuadramiento funcional: Profesor titular, Carga horaria: 22,
Régimen: Parcial
7. PROYECTOS
2006 Clonación para el desarrollo de equipos e instrumentación moderna de aplicación en
sistemas de control avanzado de procesos de la industria química.
2003 – Actual Control mecatrónico de una protesis mioelectrica del miembro inferior.
2002 – Actual Automatización de celda de manufactura de nueva generación en la empresa
TRANSEJES Colombia S.A.
2002 – 2006 Diseño, proyección e implementación de algoritmos genéticos y de clonación
para el desarrollo de equipos e instrumentación moderna de aplicación en sistemas de
control avanzado de procesos de la industria química.
Entre otros.
8. También cuenta con la participación en eventos científicos, Artículos publicados en
periódicos y Libros publicados.
151
Ph.D. ALDO PARDO GARCÍA, Oponente
PERFIL
• Doctor en Ciencias Técnicas. Cuba - ExURSS.
• Master of Science en Ingeniería. Bielorrusia.
• Especialista en Automatización. Bielorrusia.
• Ingeniero Eléctrico (perfil electrónico). Bielorrusia.
EXPERIENCIA PROFESIONAL
1. Profesor Asociado. 21 años de experiencia como docente en la Educación Superior.
2. Ha participado en 56 eventos científicos, 11 de carácter internacional. Conferencista en
universidades de Cuba, Rusia, Bulgaria, Alemania, España, Colombia, Venezuela y
México.
3. Tiene 55 publicaciones científicas, de ellas 8 libros. Ha recibido 37 cursos de posgrados
en las áreas de control y telecomunicaciones, ha impartido 10 cursos de posgrados.
4. Ha dirigido más de 20 trabajos de diploma, más de 100 trabajos de curso, 9 trabajos de
tesis de maestría y 1 doctorado. Todos estos trabajos antes mencionados han estado
relacionados con las estrategias de control y las técnicas de computación en la simulación y
el control digital - analógico.
5. En pregrado ha impartido las asignaturas de Electrónica Industrial, Control Automático,
Cibernética técnica, Accionamientos Eléctricos Automatizados, Controles Analógicos,
Controles Digitales y Telecomunicaciones.
6. Responsabilidades que ha ocupado:
En Cuba: Jefe de Disciplina Accionamiento Eléctrico. Jefe de Departamento de Controles
Automáticos. Jefe de Grupo Científico Automatización. Vice decano de Investigaciones.
Presidente de la Maestría Ingeniería Eléctrica. Miembro de Consejo Científico de la
Facultad de Electromecánica y de la Universidad de Camagüey. Miembro de Comisión
Evaluadora de postgrado en el ámbito nacional.
En Colombia: Miembro del Comité Técnico Asesor de la Universidad de Pamplona.
Director del Departamento de Mecatrónica. Director del Grupo de Investigación
Automatización y Control. Director del Instituto de Investigación y Desarrollo de
Tecnologías de Aplicadas. Miembro del Consejo Nacional de Acreditación - Par
Académico a nivel nacional.
152
Ph.D DIEGO FERNEY GÓMEZ CAJAS, Secretario
PERFIL
•
•
1999, Pregrado, Universidad del Cauca – Colombia; Ingeniero en
Electrónica y Telecomunicaciones.
2001- 2004, Doctorado: Universidad Carlos III de Madrid – España; Doctorado en
Tecnologías de las Comunicaciones.
EXPERIENCIA PROFESIONAL
1. Universidad de Pamplona - Colombia
Marzo 2000 – Hasta la fecha Docente ocasional de tiempo completo
2. Caucatel SA ESP - Colombia
Junio 1997 – Octubre de 1997 Asesor Comercial
3. Investigación
Trabajos realizados en los siguientes campos: desarrollo de una interfaz de comunicación
multimedia basada en Internet, transmisión de voz sobre redes de paquetes, reconocimiento
de habla sobre IP, asistencia en proyectos sobre redes inalámbricas y aplicaciones para
telefonía móvil con WAP.
4. Proyectos
Diseño de un Software para Comunicación Interactiva de Voz Utilizando Dispositivos de
Red y Multimedia del Computador, Universidad de Pamplona – Colombia.
Diseño del Prototipo de una Herramienta de Servicios de Comunicaciones, Universidad de
Pamplona – Colombia.
5. Publicaciones
Gómez Cajas, D.; Peláez Moreno, C.; Diaz de María, F.; “Reconocimiento Robusto de
Habla en Redes IP”.
XIII JORNADAS TELECOM I+D 2003, Madrid – España, 2003.
Publicaciones internacionales:
Gómez Cajas, D.; Peláez Moreno, C.; Diaz de María, F.; “Reconocimiento robusto de habla
en entornos IP”.
II Seminario Internacional en Tecnologías de Internet – SITI 2003. Universidad del Cauca,
Popayán – Colombia, 2003.
6. Formación complementaria
Ponente de Curso básico de HTML y Servicios de Internet. Universidad de Pamplona.
Asistente del Seminario Realidad Virtual. Universidad del Cauca.
Asistente en la VI semana técnica “Redes Globales de Comunicaciones”. Corporación
Universitaria CENTROSISTEMAS.
Asistente en el curso de formación profesional de FESTO DIDACTIC, “Tecnologías de
Avanzada en las Telecomunicaciones. Universidad de Pamplona.
Ponente de “Reconocimiento Robusto de Habla en Redes IP”. XIII JORNADAS
TELECOM I+D 2003, Madrid – España, 2003.
Ponente de “Reconocimiento robusto de habla en entornos IP”. II Seminario Internacional
en Tecnologías de Internet – SITI 2003. Universidad del Cauca, Popayán – Colombia,
2003.
153
Anexos
Anexo No. 1
The UART (8250 and Compatibles)
UART stands for Universal Asynchronous Receiver / Transmitter. It’s the little box of
tricks found on your serial card which plays the little games with your modem or other
connected devices.
Most cards will have the UART’s integrated into other chips which may also control your
parallel port, games port, floppy or hard disk drives and are typically surface mount
devices. The 8250 series, which includes the 16450, 16550, 16650, & 16750 UARTS are
the most commonly found type in your PC.
Later we will look at other types which can be used in your homemade devices and
projects.
The 16550 is chip compatible with the 8250 & 16450. The only two differences are pins 24
& 29. On the 8250 Pin 24 was chip select out which functioned only as a indicator to if the
chip was active or not. Pin 29 was not connected on the 8250/16450 UARTs. The 16550
introduced two new pins in their place. These are Transmit Ready and Receive Ready
which can be implemented with DMA (Direct Memory Access). These Pins have two
154
different modes of operation. Mode 0 supports single transfer DMA where as Mode 1
supports Multi-transfer DMA.
Mode 0 is also called the 16450 mode. This mode is selected when the FIFO buffers are
disabled via Bit 0 of the FIFO Control Register or When the FIFO buffers are enabled but
DMA Mode Select = 0.
(Bit 3 of FCR) In this mode RXRDY is active low when at least one character (Byte) is
present in the Receiver Buffer. RXRDY will go inactive high when no more characters are
left in the Receiver Buffer.
TXRDY will be active low when there are no characters in the Transmit Buffer. It will go
inactive high after the first character / byte is loaded into the Transmit Buffer.
Mode 1 is when the FIFO buffers are active and the DMA Mode Select = 1. In Mode 1,
RXRDY will go active low when the trigger level is reached or when 16550 Time Out
occurs and will return to inactive state when no more characters are left in the FIFO.
TXRDY will be active when no characters are present in the Transmit Buffer and will go
inactive when the FIFO Transmit Buffer is completely Full.
All the UARTs pins are TTL compatible. That includes TD, RD, RI, DCD, DSR, CTS,
DTR and RTS which all interface into your serial plug, typically a D-type connector.
Therefore RS232 Level Converters (which we talk about in detail later) are used. These are
commonly the DS1489 Receiver and the DS1488 as the PC has +12 and -12 volt rails
which can be used by these devices. The RS232 Converters will convert the TTL signal
into RS232 Logic Levels.
The UART requires a Clock to run. If you look at your serial card a common crystal found
is either a 1.8432 MHZ or a 18.432 MHZ Crystal. The crystal in connected to the XINXOUT pins of the UART using a few extra components which help the crystal to start
oscillating. This clock will be used for the Programmable Baud Rate Generator which
directly interfaces into the transmit timing circuits but not directly into the receiver timing
circuits. For this an external connection mast be made from pin 15 (BaudOut) to pin 9
(Receiver clock in.) Note that the clock signal will be at Baudrate * 16.
155
Anexo No. 2
Funciones de los pines del puerto serial (Inglés)
156
Anexo No. 3
PIC16f877 ADCON0 REGISTER
bit 7-6 ADCS1:ADCS0: A/D Conversion Clock Select bits
00 = FOSC/2
01 = FOSC/8
10 = FOSC/32
11 = FRC (clock derived from the internal A/D module RC oscillator)
bit 5-3 CHS2:CHS0: Analog Channel Select bits
000 = channel 0, (RA0/AN0)
001 = channel 1, (RA1/AN1)
010 = channel 2, (RA2/AN2)
011 = channel 3, (RA3/AN3)
100 = channel 4, (RA5/AN4)
101 = channel 5, (RE0/AN5)(1)
110 = channel 6, (RE1/AN6)(1)
111 = channel 7, (RE2/AN7)(1)
bit 2 GO/DONE: A/D Conversion Status bit
If ADON = 1:
1 = A/D conversion in progress (setting this bit starts the A/D conversion)
0 = A/D conversion not in progress (this bit is automatically cleared by hardware when the
A/D
conversion is complete)
bit 1 Unimplemented: Read as '0'
bit 0 ADON: A/D On bit
1 = A/D converter module is operating
0 = A/D converter module is shut-off and consumes no operating current
157
Anexo No. 4
PIC16f877 ADCON1 REGISTER
bit 7 ADFM: A/D Result Format Select bit
1 = Right justified. 6 Most Significant bits of ADRESH are read as ‘0’.
0 = Left justified. 6 Least Significant bits of ADRESL are read as ‘0’.
bit 6-4 Unimplemented: Read as '0'
bit 3-0 PCFG3:PCFG0: A/D Port Configuration Control bits:
158
Anexo No. 5
Estudio del proceso de soldadura
La soldadura la podemos definir como un procedimiento o proceso mediante el cual dos o
más piezas de metal se unen por aplicación de calor, presión, o una combinación de ambos,
con o sin al aporte de otro metal, sustancia o material ajeno a las piezas o de su misma
naturaleza, llamado metal de aportación, cuya temperatura de fusión es inferior a la de las
piezas que han de soldarse.
Tipos de soldaduras
Los tipos de soldadura más adecuados para unir dos piezas de metal dependen de las
propiedades físicas de los metales, de la utilización a la que está destinada la pieza y de las
instalaciones disponibles.
Existen diversos procesos de soldadura, los que difieren en el modo en que se aplica la
energía para la unión. Así hay métodos en los que se calientan las piezas de metal hasta que
se funden y se unen entre sí o que se calientan a una temperatura inferior a su punto de
fusión y se unen o ligan con un metal fundido como relleno. Otro método es calentarlas
hasta que se ablanden lo suficiente para poder unirlas por martilleo; algunos procesos
requieren sólo presión para la unión, otros requieren de un metal de aporte y energía
térmica que derrita a dicho metal; etcétera.
La tecnología y la ciencia de la soldadura han avanzado con tal rapidez en los últimos años,
que sería casi imposible enumerar y señalar todos los métodos de soldadura que
actualmente están en uso.
En forma general podemos decir que los métodos o procesos de soldadura más utilizados
son los siguientes:
•
•
•
•
•
•
•
•
•
Soldadura blanda.
Soldadura fuerte
Soldadura por forja
Soldadura con gas
Soldadura con resistencia
Soldadura por inducción
Soldadura aluminotérmica
Soldadura por vaciado
Soldadura por arco eléctrico
Según esto podemos decir que todos y cada uno de los diferentes procesos o métodos de
soldadura tiene sus características de ingeniería particulares y sus costos específicos.
159
Tipos y procesos de soldadura
Soldadura blanda
Es la unión de dos piezas de metal por medio de otro metal llamado de aporte, éste se aplica
entre ellas en estado líquido. La temperatura de fusión de estos metales no es superior a los
430 ºC. En este proceso se produce una aleación entre los metales y con ello se logra una
adherencia que genera la unión. En los metales de aporte por lo general se utilizan
aleaciones de plomo y estaño los que funden entre los 180 y 370 ºC.
Este tipo de soldadura es utilizado para la unión de piezas que no estarán sometidas a
grandes cargas o fuerzas. Una de sus principales aplicaciones es la unión de elementos a
circuitos eléctricos.
Soldadura fuerte
En esta soldadura se aplica también metal de aporte en estado líquido, pero este metal, por
lo general no ferroso, tiene su punto de fusión superior a los 430 ºC y menor que la
temperatura de fusión del metal base. Habitualmente se requiere de fundentes especiales
para remover los óxidos de las superficies a unir y aumentar la fluidez del metal de aporte.
Algunos de los metales de aporte son aleaciones de cobre, aluminio o plata.
La soldadura fuerte se puede clasificar por la forma en la que se aplica el metal de aporte. A
continuación se describen algunos de estos métodos:
•
•
•
•
Inmersión: El metal de aporte previamente fundido se introduce entre las dos piezas
que se van a unir, cuando este se solidifica, las piezas quedan unidas.
Horno: El metal de aporte en estado sólido, se pone entre las piezas a unir, estas son
calentadas en un horno de gas o eléctrico, para que con la temperatura se derrita al
metal de aporte y se genere la unión al enfriarse.
Soplete: El calor se aplica con un soplete de manera local en las partes del metal a
unir, el metal de aporte en forma de alambre se derrite en la junta. El soplete puede
funcionar por medio de oxiacetileno o hidrógeno y oxígeno.
Electricidad: La temperatura de las partes a unir y del metal de aporte se puede
lograr por medio de resistencia a la corriente, por inducción o por arco, en los tres
métodos el calentamiento se da por el paso de la corriente entre las piezas metálicas
a unir.
Soldadura por forja.
Es el proceso de soldadura más antiguo. El mismo consiste en el calentamiento de las
piezas a unir en una fragua hasta su estado plástico y posteriormente por medio de presión o
martilleo (forjado) se logra la unión de las piezas. En este procedimiento no se utiliza metal
de aporte y la limitación del proceso es que sólo se puede aplicar en piezas pequeñas y en
forma de lámina. La unión se hace del centro de las piezas hacia afuera y debe evitarse a
160
toda costa la oxidación, para esto se utilizan aceites gruesos con un fundente, por lo general
se utiliza bórax combinado con sal de amonio.
La clasificación de los procesos de soldadura mencionados hasta aquí es la más sencilla y
general. A continuación se hace una descripción de los procesos de soldadura más
utilizados en los procesos industriales modernos.
Soldadura con gas
Este proceso incluye a todas las soldaduras que emplean gas para generar la energía
necesaria para fundir el material de aporte. Los combustibles más utilizados son el acetileno
y el hidrógeno los que al combinarse con el oxígeno, como comburente generan las
soldaduras oxiacetilénica y oxhídrica.
La soldadura oxhídrica es producto de la combinación del oxígeno y el hidrógeno en un
soplete. El hidrógeno se obtiene de la electrólisis del agua y la temperatura que se genera en
este proceso es entre 1500 y 2000 °C.
La soldadura oxiacetilénica o autógena se logra al combinar al acetileno y al oxígeno en un
soplete. Se conoce como autógena porque con la combinación del combustible y el
comburente se tiene autonomía para ser manejada en diferentes medios. El acetileno se
produce al dejar caer terrones de carburo de calcio en agua, en donde el precipitado es cal
apagada y los gases acetileno. Uno de los mayores problemas del acetileno es que no se
puede almacenar a presión por lo que este gas se puede obtener por medio de generadores
de acetileno o bien en cilindros los que para soportar un poco la presión de 1,7 MPa, se les
agrega acetona.
En los sopletes de la soldadura autógena se pueden obtener tres tipos de llama las que son
reductora, neutral y oxidante. De las tres la neutral es la de mayor aplicación. Esta llama,
está balanceada en la cantidad de acetileno y oxígeno que utiliza. La temperatura en su
cono luminoso es de 3500 °C, en el cono envolvente alcanza 2100 °C y en la punta extrema
llega a 1275 °C.
En la llama reductora o carburizante hay exceso de acetileno lo que genera que entre el
cono luminoso y el envolvente exista un cono color blanco cuya longitud esta definida por
el exceso de acetileno. Esta llama se utiliza para la soldadura de níquel, ciertas aleaciones
de acero y muchos de los materiales no ferrosos.
La llama oxidante tiene la misma apariencia que la neutral excepto que el cono luminoso es
más corto y el cono envolvente tiene más color, Esta llama se utiliza para la soldadura por
fusión del latón y bronce.
Una de las derivaciones de este tipo de llama es la que se utiliza en los sopletes de corte en
los que la oxidación súbita genera el corte de los metales. En los sopletes de corte se tiene
una serie de llamas pequeñas alrededor de un orificio central, por el que sale un flujo
considerable de oxígeno puro que es el que corta el metal.
161
En algunas ocasiones en la soldadura autógena se utiliza aire como comburente, lo que
produce que la temperatura de esta llama sea menor en un 20% que la que usa oxígeno, por
lo que su uso es limitado a la unión sólo de algunos metales como el plomo.
En los procesos de soldadura con gas se pueden incluir aquellos en los que se calientan las
piezas a unir y posteriormente, sin metal de aporte, se presionan con la suficiente fuerza
para que se genere la unión.
Soldadura por inducción
Esta soldadura se produce aprovechando el calor generado por el flujo de la corriente
eléctrica inducida en la resistencia de unión entre las piezas. Dicha corriente inducida es
generada por una bobina que rodea a los metales a unir, y debido a que en la unión de los
metales se da más resistencia al paso de la corriente inducida, en esa parte es en la que se
genera el calor, lo que con presión provoca la unión de las dos piezas.
La soldadura por inducción de alta frecuencia utiliza corrientes alternas con el rango de 200
a 500 kHz de frecuencia, mientras que los sistemas de soldadura por inducción normales
sólo utilizan frecuencias entre los 400 y 450 Hz.
Soldadura por resistencia
El principio del funcionamiento de este proceso consiste en hacer pasar una corriente
eléctrica de gran intensidad a través de los metales que se van a unir. Como en la unión de
los mismos la resistencia es mayor que en el resto de sus cuerpos, se generará el aumento
de temperatura en la juntura (efecto Joule). Aprovechando esta energía y con un poco de
presión se logra la unión.
La alimentación eléctrica pasa por un transformador en el que se reduce la tensión y se
eleva considerablemente la intensidad para aumentar la temperatura. La soldadura por
resistencia es aplicable a casi todos los metales, excepto el estaño, zinc y plomo. En los
procesos de soldadura por resistencia se incluyen los de:
•
•
•
•
Soldadura por puntos.
Soldadura por resaltes.
Soldadura por costura.
Soldadura a tope.
En la soldadura por puntos la corriente eléctrica pasa por dos electrodos con punta, debido a
la resistencia del material a unir se logra el calentamiento y con la aplicación de presión
sobre las piezas se genera un punto de soldadura. Las máquinas soldadoras de puntos
pueden ser fijas o móviles o bien estar acopladas a un robot o brazo mecánico.
La soldadura por resaltes es un proceso similar al de puntos, sólo que en esta se producen
varios puntos o protuberancias a la vez en cada ocasión que se genera el proceso. Los
162
puntos están determinados por la posición de un conjunto de puntas que hacen contacto al
mismo tiempo. Este tipo de soldadura se puede observar en la fabricación de mallas.
La soldadura por costura consiste en el enlace continuo de dos piezas de lámina traslapadas.
La unión se produce por el calentamiento obtenido por la resistencia al paso de la corriente
y la presión constante que se ejerce por dos electrodos circulares. Este proceso de soldadura
es continuo.
La soldadura a tope consiste en la unión de dos piezas que se colocan extremo con extremo
con la misma sección, éstas se presionan cuando está pasando por ellas la corriente
eléctrica, con lo que se genera calor en la superficie de contacto. Con la temperatura
generada y la presión entre las dos piezas se logra la unión.
Soldadura aluminotérmica
El calor necesario para este tipo de soldadura se obtiene de la reacción química de una
mezcla de óxido de hierro con partículas de aluminio muy finas. El metal líquido resultante
constituye el metal de aporte. Se emplea para soldar roturas y cortes en piezas pesadas de
hierro y acero, y es el método utilizado para soldar los rieles de los trenes.
Soldadura por vaciado
Con algunos materiales la unión no se puede hacer por los procedimientos antes descritos
debido a que no fácilmente aceptan los metales de aporte como sus aleaciones. Para lograr
la soldadura de estos metales en algunas ocasiones es necesario fundir el mismo metal que
se va a unir y vaciarlo entre las partes a unir, dejándolo enfriar con lentitud, para que se
adapte a la forma del molde. Con ello cuando solidifica, las piezas quedan unidas. A este
procedimiento se lo conoce como fundición por vaciado (colado) y se utiliza a veces para
reparar piezas fundidas que tienen grietas o defectos.
Soldadura por arco con hidrógeno atómico
Es un sistema de arco eléctrico en el que se agrega hidrógeno. Así se liberará calor con
mayor intensidad que en un arco común. La temperatura que se alcanza en este tipo de arco
es superior a los 6000 °C.
Soldadura por arco con gas protector
En este proceso la unión se logra por el calor generado por un arco eléctrico que se genera
entre un electrodo y las piezas, pero el electrodo se encuentra protegido por una copa por la
que se inyecta un gas inerte como argón, helio o CO2.
Con lo anterior se genera un arco protegido contra la oxidación y además perfectamente
163
controlado en cuanto a penetración, sobre el espesor y ancho de la soldadura. Es
ampliamente utilizado para soldar acero inoxidable, aluminio, cobre y magnesio. Existen
dos tipos de soldadura por arco protegido: la TIG y la MIG.
La soldadura TIG (tungstein inert gas) es aquella en la que el electrodo de la máquina es de
un material refractario como el tungsteno, por lo que el metal de aporte se debe añadir por
separado.
La soldadura MIG (metal inert gas) es la que el electrodo es de un metal consumible que va
siendo utilizado como metal de aporte, por lo que este sistema es considerado como de
soldadura continua. Un método derivado es el MAG (metal active gas) en el cual se usa
como protector el anhídrido carbónico, que oxida algunos elementos aleantes como el Si o
el Mn.
usual es la de 356mm (14") existiendo además electrodos de 229 mm (9") y de 457mm
(10").
Soldadura por arco eléctrico
Definición
La soldadura por arco eléctrico es un proceso, en el que la energía
obtiene por medio del calor que produce un arco eléctrico funde un
material de aporte, llamado electrodo, que se deposita entre las dos
piezas fijando su unión. La fusión del metal se produce como
consecuencia del calor generado por un arco voltaico o eléctrico que
se hace saltar entre el electrodo y el metal base, pudiéndose alcanzar
temperaturas elevadas que superan los 4.000 a 4.500 ºC, permitiendo
así su ensamblado mediante un metal de aportación de la misma
naturaleza.
Generalidades
La electricidad a partir del magnetismo y magnetismo a partir de la electricidad es el
principio con el cual funcionan las máquinas eléctricas. Estos experimentos, junto con el
perfeccionamiento de los electrodos, llevaron a la introducción de los muchos procesos
para soldadura con arco que conocemos en la actualidad.
La máquina soldadora principia con el motivo de que nuestros antepasados fueron
evolucionando la forma de perfeccionar sus herramientas y armas, empezando con el
calentamiento de ambas piezas, para facilitar el trabajo de transformación y con el
calentamiento y mezclas de materiales, haciéndolo más resistentes al ejercer presión alguna
de fuerza de ellos.
164
Inicialmente lo que hoy es una máquina de soldar fue o trabajó con corriente directa, que
esta complementada con acumuladores y electrodos de carbón, haciendo su trabajo con
arco eléctrico calentando o fundiendo los metales y el electrodo.
La idea principal de la soldadura por arco eléctrico fue propuesta a principios del siglo XIX
por el científico inglés Humphrey Davy pero ya en 1885 dos investigadores rusos
consiguieron soldar con electrodos de carbono.
Fue mucho el tiempo que se usaron los métodos primitivos de aleación y forja (en 1890 y
1900).
En los años 1900 la electricidad fue utilizada por primera vez por arco eléctrico para cubrir
grietas y rellenar agujeros.
Años más tarde fue patentado un proceso de soldadura con varilla metálica. Sin embargo,
este procedimiento no tomó importancia en el ámbito industrial hasta que el sueco Oskar
Kjellberg descubrió, en 1904, el electrodo recubierto. Su uso masivo comenzó alrededor de
los años cincuenta (50's).
De 1990 a 1950 se revistieron los electrodos de carbón fue cuando se había aceptado en el
ramo industrial aliado con corriente alterna siendo para el ramo industrial muy productivo
La soldadura está relacionada con casi todas las actividades industriales, además de ser una
importante industria en sí misma. Gracias al desarrollo de nuevas técnicas durante la
primera mitad del siglo XX, la soldadura sustituyó al atornillado y al remachado en la
construcción de muchas estructuras, como puentes, edificios y barcos. Es una técnica
fundamental en la industria automotriz, en la aerospacial, en la fabricación de maquinaria y
en la de cualquier tipo de producto hecho con metales.
Principio básico de la soldadura por arco
Para describir el principio de la soldadura por arco eléctrico podemos decir que al acercar el
electrodo a la pieza que se va a soldar, se induce una diferencia de potencial entre el
electrodo y la pieza a soldar, con lo cual se ioniza el aire entre ellos y pasa a ser conductor,
de modo que se cierra el circuito produciéndose así un cortocircuito y se crea de esta
manera el arco eléctrico, que desprende una intensa luz y un calor muy fuerte. El calor del
arco provocará la fusión (Fundir) parcial del material de base así como la del material de
aporte del electrodo, el cual se deposita y crea el cordón de soldadura.
165
Fig. Descripción del principio básico de la soldadura.
Proceso químico de la soldadura por arco
Para este caso vamos a resaltar el proceso que sucede cuando se
está realizando la soldadura o se esta soldando una pieza o material
cualesquiera.
Partiendo del principio de la soldadura por arco eléctrico podemos
describir las siguientes partes que influyen o intervienen de manera
directa o indirecta en el proceso real de la soldadura por arco
eléctrico.
Este proceso lo podemos observar claramente en la Fig.
Fig. Proceso en blanco y negro de la soldadura por arco eléctrico.
De los cuales vamos a definir y describir los momentos más importantes:
166
Electrodo
Son varillas metálicas preparadas para servir como polo del circuito; en su extremo se
genera el arco. En algunos casos, sirven también como material fundente. La varilla
metálica a menudo va recubierta de distintos materiales, en función de la pieza a soldar y
del procedimiento empleado.
Núcleo de alambre central del electrodo
El alambre del núcleo de un electrodo, en casi todos los casos, se hace con el mismo metal
que el de las piezas que se van a soldar. Por ejemplo, el acero dulce se soldaría con un
electrodo con el alambre del núcleo hecho con acero dulce. El alambre seria de aluminio
para soldar un metal base de aluminio; para el cobre, se emplearía alambre de núcleo de
cobre, etc. La combinación de los elementos utilizados para el recubrimiento produce las
características especiales de cada tipo de electrodo.
La finalidad del alambre del núcleo es conducir la energía eléctrica al arco y suministrar el
metal de relleno o aporte adecuado.
Recubrimiento del electrodo o capa fuerte
El recubrimiento tiene muchas funciones. Si no lo hubiera, el metal fundido se combinaría
con el oxígeno y el nitrógeno del aire. Por tanto, es necesario proteger tanto el metal de
aporte del electrodo como el metal base fundido que se suelda; éste es la mezcla del metal
base fundido y el metal fundido del electrodo que, cuando se solidifica forma la soldadura
en sí. El arco se puede proteger con una envoltura de un gas inerte, el cual no producirá una
reacción química con el metal fundido. El recubrimiento de los electrodos suministra el gas
protector. Este es el proceso de soldadura con metal y arco protegido (SMAW).
Algunos de los elementos utilizados en los recubrimientos son magnesio, silicatos de
aluminio y talco, todos ellos son formadores de escoria. Los fluoruros de calcio, carbonatos
de calcio, ferromanganeso, ferrosilicio y ferrotitanio son agentes fundentes. El silicato de
sodio se utiliza como agente aglutinante. La celulosa, que forma un gas, protege la zona de
la soldadura.
Funciones de los recubrimientos:
Las principales funciones de los recubrimientos de los electrodos son:
•
•
•
Reducir al mínimo la contaminación de¡ metal de soldadura con el oxígeno y el
nitrógeno atmosféricos;
Compensar las pérdidas de ciertos elementos durante la transferencia del metal a
través del arco, porque el recubrimiento incluye aleaciones;
Concentrar el arco en una zona específica porque forma una taza o copa en la punta
del electrodo, que se debe a la fusión más lenta del recubrimiento.
167
Soldadura por arco con electrodo revestido
Es el proceso en el que su energía se obtiene por medio del calor producido por un arco
eléctrico que se forma en el espacio o entrehierro comprendido entre la pieza a soldar y y
una varilla que sirve como electrodo. Por lo general el electrodo también provee el material
de aporte, el que con el arco eléctrico se funde, depositándose entre las piezas a unir. La
temperatura que se genera en este proceso es superior a los 5500 °C.
La corriente que se emplea en este sistema puede ser continua o alterna, utilizándose en los
mejores trabajos la del tipo continua, debido a que la energía es más constante, con lo que
se puede generar un arco más estable.
La corriente alterna permite efectuar operaciones de soldadura con el objeto de trabajo en
posición horizontal y preferentemente en materiales ferrosos, mientras que la corriente
contínua no presenta esas limitaciones de posición y material.
El arco se enciende cortocircuitando el electrodo con la pieza a soldar. En esa situación, en
el punto de contacto el calentamiento óhmico es tan intenso que se empieza a fundir el
extremo del electrodo, se produce ionización térmica y se establece el arco.
Para la generación del arco existen los siguientes tipos de electrodos:
Electrodo de carbón: En la actualidad son poco utilizados, el electrodo se utiliza sólo como
conductor para generar calor, el metal de aporte se agrega por separado.
Electrodo metálico: El propio electrodo sirve de metal de aporte al derretirse sobre los
materiales a unir.
Electrodo recubierto: Los electrodos metálicos con recubrimientos que mejoran las
características de la soldadura son los más utilizados en la actualidad. Las funciones de los
recubrimientos son las siguientes:
•
•
•
•
•
•
•
•
•
•
Proveen una atmósfera protectora.
Proporcionan escoria de características adecuadas para proteger al metal fundido.
Estabilizan el arco.
Añaden elementos de aleación al metal de la soldadura.
Desarrollan operaciones de enfriamiento metalúrgico.
Reducen las salpicaduras del metal.
Aumentan la eficiencia de deposición.
Eliminan impurezas y óxidos.
Influyen en la profundidad del arco.
Disminuyen la velocidad de enfriamiento de la soldadura.
Algunos electrodos se pueden usar ya sea con corriente alterna o con corriente continua. Se
han desarrollado ciertos revestimientos con el propósito de incrementar la cantidad de metal
168
de aporte que se deposita por unidad de tiempo. Otros revestimientos contienen aditivos
que aumentan la resistencia y mejoran la calidad de la soldadura.
A pesar de que la mayoría de los revestimientos facilitan mucho el trabajo con los
electrodos, otros requieren mayor habilidad del soldador.
Las composiciones de los recubrimientos de los electrodos pueden ser orgánicas o
inorgánicas, y estas substancias se pueden subdividir en las que forman escoria y las que
son fundentes. Algunos de los principales compuestos son:
•
•
•
•
•
Para la formación de escoria se utilizan SiO2, MnO2 y FeO.
Para mejorar el arco se utilizan Na2O, CaO, MgO y TiO2.
Desoxidantes: grafito, aluminio, aserrín.
Para mejorar el enlace: silicato de sodio, silicato de potasio y asbestos.
Para mejorar la aleación y la resistencia de la soldadura: vanadio, cesio, cobalto,
molibdeno, aluminio, circonio, cromo, níquel, manganeso y tungsteno.
El núcleo del electrodo está constituido por una varilla o alambre metálico que conduce la
corriente eléctrica y permite establecer el arco eléctrico. El intenso calor del arco hace que
progresivamente se funda la punta del alambre y que se deposite en el cordón de soldadura
en forma de pequeñas gotas, proporcionando así el material de aporte. El metal del núcleo
depende del tipo de metal base que se requiere soldar. Si es acero generalmente se usará
acero y si es aluminio el núcleo será de aluminio.
El diámetro del electrodo se mide en el núcleo y determina la intensidad de corriente
promedio que debe utilizarse. Por ejemplo, para un diámetro de 4 mm puede emplearse una
corriente de unos 150 a 200 A. En cuanto a la longitud de los electrodos la medida más
Plasma o metal de soldadura fundido
Está compuesto por electrones que transportan la corriente y que van del polo negativo al
positivo, de iones metálicos que van del polo positivo al negativo, de átomos gaseosos que
se van ionizando y estabilizándose conforme pierden o ganan electrones, y de productos de
la fusión tales como vapores que ayudarán a la formación de una atmósfera protectora. Esta
zona alcanza la mayor temperatura del proceso.
Llama o arco eléctrico
Es la zona que envuelve al plasma y presenta menor temperatura que éste, formada por
átomos que se disocian y recombinan desprendiendo calor por la combustión del
revestimiento del electrodo. Otorga al arco eléctrico su forma cónica.
169
Baño de fusión:
La acción calorífica del arco provoca la fusión del material, donde parte de éste se mezcla
con el material de aportación del electrodo, provocando la soldadura de las piezas una vez
solidificado.
Cráter
Surco producido por el calentamiento del metal. Su forma y profundidad vendrán dadas por
el poder de penetración del electrodo.
Cordón de soldadura
Está constituido por el metal base y el material de aportación del electrodo y se pueden
diferenciar dos partes: la escoria, compuesta por impurezas que son segregadas durante la
solidificación y que posteriormente son eliminadas, y el sobre espesor, formado por la parte
útil del material de aportación y parte del metal base, que es lo que compone la soldadura
en sí.
Escoria solidificada
El recubrimiento también forma escoria en la parte superior del metal fundido que se
suelda, la cual protege al metal fundido durante el enfriamiento y también ayuda a
configurar la soldadura. Se elimina después de que se ha enfriado la soldadura.
La escoria, además de formar una capa protectora sobre la soldadura, también debe poseer
las siguientes características:
a. Tener un punto de fusión más bajo que el del metal que se suelda. De lo contrario, hay el
peligro de que la escoria se solidifique antes que el metal de aporte depositado.
b. Tener una densidad, en su estado fundido, que sea menor que la del metal de soldadura,
para que pueda flotar en la superficie.
c. Debe tener suficiente viscosidad para que no fluya sobre una superficie muy grande.
Sirve para evitar la contaminación del metal de la soldadura con el aire atmosférico.
d. no debe contener elementos que produzcan reacciones indeseables con el metal de
soldadura.
e. Se dilatará, pero en forma distinta a la del metal de soldadura, para que se pueda
desprender de éste cuando esté frío.
f. Tener una tensión de superficie que impida la formación de glóbulos grandes.
Electricidad en los equipos de soldadura por arco eléctrico
En la soldadura, la relación entre el voltaje (presión) y el amperaje (cantidad de corriente)
es de máxima importancia.
170
Para una soldadura efectiva por arco, podemos decir que se requiere una corriente
constante. La máquina o equipo de soldadura deberá tener una curva descendiente de
voltamperios, en la que se produce una cantidad relativamente constante de corriente con
solamente un cambio limitado en la carga de voltaje.
Fig. Curva de voltamperios.
En otros aparatos eléctricos la demanda por corriente generalmente queda algo constante,
pero en la soldadura por arco la potencia fluctúa mucho. Por lo tanto, cuando se establece el
arco con el electrodo, el resultado es un cortocircuito lo que inmediatamente induce un
oleaje repentino de corriente eléctrica, a menos que la máquina o el equipo esté diseñado
para evitar esto. Igualmente, cuando los glóbulos de metal por soldar se lleven a través del
flujo de arco, éstos también crean un cortocircuito. Una fuente de corriente constante está
diseñada para reducir estos oleajes repentinos de cortocircuitos y así evitar salpicadura
excesiva durante la soldadura.
En la soldadura por arco eléctrico se deben tener en cuenta dos voltajes principales:
•
•
Voltaje en circuito abierto (VCA).
Voltaje de arco (VA).
Voltaje en circuito abierto (VCA)
El voltaje de circuito abierto (VAC) o tensión de cebado es el voltaje que existe entre los
terminales de la máquina cuando está operando pero no se está soldando. Este voltaje de
circuito abierto puede variar de 40V a 110V y es mucho más alto que el voltaje de arco.
Voltaje de arco (VA).
El voltaje de arco (VA) o tensión de soldeo es el voltaje después de establecer el arco, es
decir, el voltaje que existe entre el electrodo y el metal base durante la soldadura. Este
voltaje de arco puede variar de 15V a 35V.
171
Durante el proceso de soldadura, el voltaje de arco también cambiará con las diferencias en
la longitud del arco.
Cuando se forma el arco y se inicia la soldadura, el VCA se reduce hasta el valor del VA, o
sea de 110 V a 35 V. Al mismo tiempo, aumenta el voltaje de arco. Después, conforme se
alarga el arco, el VA sube todavía más y se reduce el amperaje. Cuando se acorta el arco, se
reduce el VA y aumenta el amperaje.
Fig. Relación de voltajes (Pendiente Negativa).
Todos los equipos para soldadura manual tienen una característica tensión-corriente con
una gran pendiente negativa, de manera que al cambiar la tensión de arco "VA" por efecto
de las variaciones en la longitud del mismo (debidas a las imperfecciones del trabajo
manual y a las irregularidades del arco), no se modifique apreciablemente la corriente de
soldadura "VCA" (característica de corriente constante) para no alterar la deposición del
material del electrodo.
Debido a que es difícil mantener una longitud uniforme del arco a todo momento, aún para
un soldador experimentado, una máquina con una curva empinada de voltamperios
producirá un arco más estable, porque habrá muy poco cambio en la corriente de soldar aún
con cambios en el voltaje de arco. Una curva de voltamperios indica el voltaje de salida
disponible a cualquier corriente determinada de salida, dentro de los límites del ajuste de
corriente mínima y máxima en cada escala.
Podemos notar por ejemplo, la curva de la figura 4, indica que hay disponible un voltaje
alto de circuito abierto en 0, lo que ayuda a establecer el arco. A medida que se adelante la
soldadura, el voltaje cae al voltaje de arco en VA y este punto, la fluctuación en la longitud
del arco apenas afectará la corriente. Si el electrodo hace un cortocircuito con el metal por
soldar, la corriente no llegará a ser excesiva.
Además tenemos que tener cuenta que en el momento de encender el arco, tocando el
trabajo con el electrodo (VA = 0), la corriente de cortocircuito resultante debe permanecer
limitada, normalmente a 1 o 2 veces la corriente nominal, para no dar origen a
172
perforaciones o defectos cada vez que se inicia el arco. Otro factor a considerar es la
tensión en vacío, que debe ser superior a la del arco para facilitar el encendido.
La corriente utilizada directamente afectará la velocidad de derretimiento. Es decir que a
medida que se aumenta la velocidad de corriente, también se aumenta la densidad de
corriente en la punta del electrodo. La cantidad de corriente requerida para cualquier
operación de soldar está dictada por el grosor del metal por soldar. Esta corriente está
controlada por una rueda o un arreglo de palancas para el caso de maquinas o equipos de
control análogo, pero con equipos de control digital este se lleva a cabo por interruptores o
pulsadores para el control del mismo. Un control ajusta la máquina para un ajuste
aproximado de corriente y otro control proporciona un ajuste más preciso de corriente.
Tipos de máquinas básicas utilizadas en la soldadura por
arco eléctrico.
La energía del arco y la transferencia de metal varían con la dirección del flujo de la
corriente. Cuando se utilice corriente continua, hay que asegurarse de que la polaridad sea
la correcta. Es necesario utilizar el tipo de corriente correcto, es decir, no hay que usar
corriente continua en lugar de corriente alterna, o viceversa. Los electrodos están diseñados
para trabajar con una determinada cantidad de corriente y polaridad. Si se emplea la
corriente equivocada, el arco puede resultar inestable e imposible de manejar.
Este tipo de soldaduras pueden ser efectuados bajo corriente tanto continua como alterna.
En corriente continua el arco es más estable y fácil de encender y las salpicaduras son poco
frecuentes; en cambio, el método es poco eficaz con soldaduras de piezas gruesas. La
corriente alterna posibilita el uso de electrodos de mayor diámetro, con lo que el
rendimiento a mayor escala también aumenta. En cualquier caso, las intensidades de
corriente oscilan entre 10 y 600 amperios.
Para lograr buenas soldaduras con electricidad, se necesita una máquina que controle la
intensidad de la electricidad, aumente o disminuya la potencia según se requiera y que sea
segura para manejarla. Hay tres tipos principales o básicas de máquina utilizadas en el
proceso de la soldadura por arco:
1. Máquina de CA (corriente alterna) o Transformadores.
2. Maquina de CC o CD (corriente continua o directa).
3. Máquina de CA y CC (una combinación de las dos).
Las cuales describiremos a continuación en términos resumido y específicos para cada uno
de ellos.
Máquinas de corriente alterna
Las máquinas de corriente alterna (CA) también son denominadas se transformadores,
porque estos transforman la corriente de la línea de alimentación (que es de alto voltaje y de
bajo amperaje) en una corriente útil, pero segura para soldar (que es de bajo voltaje y alto
173
amperaje). Esto se efectúa dentro de la máquina con un sistema de un devanado primario,
uno secundario y un reactor movible para el caso de control manual.
Es decir que la potencia es tomada directamente de una línea de fuerza eléctrica (Red
eléctrica) y transformada en un voltaje requerido para soldar. El transformador CA mas
sencillo tiene una bobina primaria y una bobina secundaria con un ajuste para regular la
salida de corriente. La bobina primaria recibe la corriente alterna de la fuente eléctrica y
crea un campo magnético, lo que cambia constantemente en dirección y potencia. La
bobina secundaria no tiene ninguna conexión eléctrica a la fuente de fuerza pero está
afectada por las líneas de fuerza cambiándose en el campo magnético; por la inducción ésta
entrega una corriente transformada a un valor más alto al arco de soldar.
Algunos transformadores CA están equipados con un interruptor amplificador de arco lo
que proporciona un oleaje de corriente para facilitar el establecimiento del arco cuando el
electrodo hace contacto con el metal para soldar. Después de formar el arco, la corriente
automáticamente vuelve a la cantidad ajustada para el trabajo. El interruptor amplificador
de arco tiene varios ajustes para permitir establecimiento rápido del arco para soldar placas
delgadas o gruesas.
Una ventaja de la máquina soldadora de CA es la libertad del soplo magnético del arco lo
que muchas veces ocurre al soldar con máquinas de CD. El soplo magnético del arco causa
oscilación del arco al soldar en esquinas en metales pesados o al usar electrodos revestidos
grandes. El flujo de corriente directa a través del electrodo, metal por soldar, y grapa para
puesta a tierra genera un campo magnético alrededor de cada una de estas unidades, lo que
puede causar que el arco se desvíe de su vía intentada. El arco generalmente es desviado
sea hacia adelante o hacia atrás a lo largo de la vía de soldar y puede que cause salpicadura
excesiva y fusión incompleta. También tiende a atraer gases atmosféricos al arco,
terminando en porosidad. La deflexión del arco se debe a los efectos de un campo
magnético desequilibrado. Así que cuando se desarrolle una gran concentración de flujo
magnético en un lado del arco, éste tiende a soplarse fuera de la fuente de la mayor
concentración.
El soplo magnético del arco muchas veces puede ser corregido cambiando la posición de la
grapa para puesta a tierra, soldando en una dirección fuera de la grapa a tierra, o cambiando
la posición del metal por soldar en el banco.
Máquinas de corriente contínua
Una de las características principales de las maquinas de corriente directa o continua para
soldar es la de que la soldadura puede hacerse con polaridad directa o inversa. La polaridad
indica la dirección de flujo de corriente en un circuito. En polaridad directa, el electrodo es
negativo y el metal por soldar es positivo, y los electrones fluyen del electrodo al metal por
soldar.
Las máquinas de CC se clasifican en dos tipos básicos:
•
Generador.
174
•
Rectificador.
Generador
Las maquinas de CC o CD tipo generador, consiste de un generador impulsado por un
motor eléctrico o de gasolina, donde la corriente se produce por la rotación de una
armadura (inducido) dentro de un campo eléctrico. Esta corriente alterna generada la captan
una serie de escobillas de carbón y un conmutador o colector y la convierten en corriente
continua.
Rectificador
Los rectificadores básicos son transformadores de CA a los que se ha agregado un
rectificador. La corriente alterna que suministra el transformador se envía al rectificador
que la convierte o rectifica a corriente continua o directa. Es decir, que estos son
transformadores que contienen un dispositivo eléctrico que cambia la corriente alterna en
corriente directa.
Los rectificadores para la soldadura por arco generalmente son del tipo de corriente
constante donde la corriente para soldar queda razonablemente constante para pequeñas
variaciones en la longitud del arco.
Máquinas de CA Y/O CC
Para este caso compuesto, se hace uso frecuente de los rectificadores para proporcionar
corriente CD solamente, o ambas, corriente CD y CA. Por medio de un interruptor, los
terminales de salida pueden cambiarse al transformador o al rectificador, produciendo
corriente CA o CD directa o corriente CD de polaridad inversa. En el diagrama de la figura
, podemos observar los tipo de combinaciones de maquinas posibles para realizar un equipo
de soldadura por arco eléctrico con electrodo revestido con electrodo revestido.
En la actualidad, los dos materiales rectificadores utilizados para máquinas soldadoras son
el selenio y el silicio. Ambos son excelentes, aunque el silicio muchas veces permitirá
operación con densidades de corriente más altas.
175
Fig. Diagrama de los tipos de maquinas para soldar por arco eléctrico.
El circuito para soldadura por arco eléctrico
Fig.. Circuito para soldadura por arco eléctrico.
En la figura anterior, podemos ilustrar el circuito para soldadura por arco eléctrico, el cual
empieza en A donde el cable del electrodo se conecta desde un terminal de la máquina de
soldar y, termina en B donde se conecta el cable de tierra (masa) a la otra terminal de la
máquina. La corriente para soldar fluye por el cable del electrodo hasta el porta-electrodo;
desde éste fluye el electrodo y salta el espacio o entre-hierro entre la punta del electrodo y
el metal base para formar el arco. Desde el metal base retorna por el cable de tierra a la
máquina de soldar como lo indican las flechas.
Polaridad para los equipos de soldadura por arco
Como ya sabemos físicamente que una corriente eléctrica produce una fuerza magnética
alrededor de su conductor, debido a que las líneas de fuerza magnética finalizan en las
terminales negativa y positiva de la corriente eléctrica, se les llama polo negativo y polo
positivo. De ahí se deriva la palabra polaridad, con la cual sabemos la dirección en que
circula la corriente. La polaridad sólo se puede determinar en las máquinas de CC o CD. No
se obtiene en las máquinas de CA, porque hay inversión de la corriente.
Una de las características de las maquinas de corriente directa para soldar es la de que la
soldadura puede hacerse con polaridad directa o inversa. La polaridad indica la dirección de
flujo de corriente en un circuito.
Unos de los síntomas de influencia de la polaridad no correcta se presentan en el aumento
de las salpicaduras. Otros síntomas son las variaciones en la forma que se espera que tenga
176
el arco, una penetración insuficiente, demasiada turbulencia del chorro y una cantidad
considerable de salpicaduras.
Puede llegar a ser imposible encender el arco. Cuando se observe que algo raro sucede con
éste o con la transferencia de metal, hay que revisar las conexiones de la fuente de poder.
En algunos procesos de soldadura, la polaridad que se debe utilizar se determina con el
metal que se va a soldar. Sin embargo, en el proceso de SMAW, la polaridad se determina
por el recubrimiento del electrodo.
Por ejemplo, cuando se utiliza un electrodo E41010 (E6010) trabaja mejor con ccpi
(corriente continua con polaridad inversa), en cuyo caso el electrodo es positivo y el metal
base es negativo. La cc puede tener polaridad directa o inversa, según se seleccione.
La polaridad puede ser cambiada intercambiando los cables, aunque en las mayoría del las
máquinas modernas se puede cambiar la polaridad simplemente accionando un interruptor
o moviendo una palanca o un cuadrante.
La polaridad afecta el calor liberado pues es posible controlar la cantidad que pasa al metal
por soldar. Cambiando la polaridad, se puede concentrar el mayor calor dónde éste más se
requiera.
Tipos de polaridad
Polaridad Directa − (Negativa)
Este tipo de polaridad de presenta cuando el cable para el electrodo o porta-electrodo se
conecta en la terminal negativa de la máquina de soldar, es decir, que en la soldadura con
CC y polaridad directa, el electrodo es negativo y la superficie de trabajo es positiva. La
corriente fluye del electrodo a la pieza a trabajar.
Fig. Polaridad directa.
177
Generalmente, es preferible tener más calor en el metal por soldar porque el área de trabajo
es mayor y se requiere más calor para derretir el metal que para fundir el electrodo. Por lo
tanto, si se vayan a hacer grandes depósitos pesados, el metal por soldar deberá estar más
caliente que el electrodo. A este efecto, la polaridad directa es más efectiva.
Usos ideales para:
•
•
•
Recrecimiento.
Refuerzo - Grandes espesores.
Cortar acero.
Polaridad Inversa + (Positiva)
Esta se presenta cuando el cable para el electrodo o porta-electrodo se conecta en la
terminal positiva de la máquina de soldar, es decir, que en la soldadura con CC y polaridad
invertida, el electrodo es positivo y la superficie de trabajo es negativa; donde la corriente
fluye de la pieza a trabajar al electrodo.
Fig. Polaridad inversa
En cambio, en la soldadura sobrecabeza es necesario rápidamente congelar el metal de
relleno para ayudar a sostener el metal fundido en su posición contra la fuerza de la
gravedad. Utilizando la polaridad inversa, hay menos calor generado en el metal por soldar,
dando mayor fuerza de retención al metal de relleno para soldar fuera de posición.
En otras situaciones, puede que sea mejor conservar el metal por soldar tan frío como sea
posible, por ejemplo para reparar una pieza fundida de hierro. Con polaridad inversa, se
produce menos calor en el metal por soldar y más calor en el electrodo. El resultado de esto
es que se pueden aplicar los depósitos rápidamente mientras que se evita
sobrecalentamiento del metal por soldar.
178
Usos ideales para:
•
•
•
•
•
•
•
•
Sobrecabeza.
Vertical.
Soldadura de hierro fundido.
Aluminio grueso.
Soldadura de remaches.
Chapa.
Soldadura de bajo contenido de hidrógeno.
Varilla de bronce por arco.
En corriente continua y polaridad directa, las intensidades de corriente son del orden de 50
a 500 amperios. Con esta polarización se consigue mayor penetración y un aumento en la
duración del electrodo. Con polarización inversa, el baño de fusión es mayor pero hay
menor penetración; las intensidades oscilan entre 5 y 60 A. La corriente alterna combina las
ventajas de las dos anteriores, pero en contra da un arco poco estable y difícil de cebar.
Equipo básico de soldadura por arco eléctrico
Para realizar trabajos básicos con equipos de soldadura por arco eléctrico, resultan
imprescindibles la utilización del las siguientes herramientas o materiales:
•
•
•
•
•
Pinza Porta-electrodo.
Grapa o Pinzas para puesta a tierra.
Careta o gafas Protectoras.
Guantes.
Electrodo.
Pinza Porta-electrodo
Esta pinza porta-electrodo es utilizada para sujetar el electrodo y guiarlo
para servir como mango aislador sobre la costura por soldar. Un buena pinza portaelectrodo deberá ser liviano para reducir fatiga excesiva durante la soldadura, para
fácilmente recibir y eyectar los electrodos, y tener el aislamiento apropiado. Algunos de los
porta-electrodos son completamente aislados, mientras que otros tienen aislamiento en el
mango, solamente.
Fig. Pinza Porta-electrodo.
179
Al usar un porta-electrodo con quijadas no aisladas, nunca coloque éste en la plancha del
banco con la máquina operando, pues esto causará un destello. Siempre conecte los portaelectrodos firmemente al cable. Una conexión floja donde el cable se une con el portaelectrodo puede sobrecalentar el mismo.
El uso de cables de tamaño suficiente es necesario para la soldadura correcta. Un cable
conductor de 9 metros de un tamaño determinado puede ser satisfactorio para llevar la
corriente requerida, pero si de agregue otros 9 metros de cable, la resistencia combinada de
los dos conductores reducirá la salida de corriente de la máquina. Si la máquina entonces se
ajuste para mayor salida, la carga adicional puede que cause que se sobrecaliente la fuente
de fuerza y también aumente su consumo de potencia.
El cable primario que conecta la máquina soldadora a la fuente de electricidad también es
significante. La longitud de este cable ha sido determinada por el fabricante de la unidad de
fuerza eléctrica, y representa una longitud que permitirá operación eficiente de la máquina
sin una caída apreciable en el voltaje. Si se usa un cable más largo, se requerirá más voltaje
para el trabajo por hacer, y si no hay disponible más voltaje, la caída de voltaje resultante
afectará gravemente a la soldadura.
Los porta-electrodos son de diversas formas y tamaños. El tamaño del porta-electrodo
depende del amperaje máximo que se va a usar. El punto importante es que el portaelectrodo debe ser ligero de peso y capaz de conducir suficiente corriente sin provocar
sobrecalentamiento.
Grapa para puesta a tierra
La grapa para puesta a tierra es vital para el equipo de soldadura por arco eléctrico con
electrodo revestido con electrodo revestido. Sin tener la conexión correcta a tierra, el pleno
potencial del circuito no producirá el calor requerido para soldar.
Fig. Grapa para puesta a tierra.
La grapa para tierra se sujeta en la pieza de metal que se va a soldar, con la cual se
completa el circuito de soldadura cuando el electrodo toca el metal. Las grapas de tierra que
tienen resorte son las más convenientes porque constituye el método más fácil de sujetarlas
en el metal que se va a soldar.
Podemos resaltar la utilización de esta porque si el metal que se va a soldar no está
conectado a tierra, no se completa el circuito y hay un serio peligro de una descarga
eléctrica.
180
Escudo, careta o casco protector
Un casco soldador o escudo de mano adecuado es necesario para toda soldadura por arco.
Un arco eléctrico produce una luz brillante y también emite rayos ultravioleta e infrarrojos
invisibles, los cuales pueden quemar los ojos y la piel. Nunca vea el arco con los ojos
descubiertos dentro de una distancia de 16 metros.
Fig.. Escudo, careta o casco protector.
Ambos, el casco y el escudo de mano están equipados con lentes teñidos especiales que
reducen la intensidad de la luz y filtran los rayos infrarrojos y ultravioleta.
Los lentes vienen en diferentes colores para varios tipos de soldadura. En general, la
práctica recomendada es la siguiente:
•
•
•
•
•
•
Color No 5 para soldadura liviana por puntos.
Colores No 6 y 7 para soldar con hasta 30 amperios.
Color No. 8 para soldar con entre 30 y 75 amperios.
Color No. 10 para soldar con entre 75 y 200 amperios.
Color No. 12 para soldar con entre 200 y 400 amperios.
Color No. 14 para soldar con más de 400 amperios.
Guantes
Los guantes deberán ser de tipo para servicio pesado con puños largos. Hay disponibles
guantes de soldador hechos de cuero. Use guantes de asbesto para trabajar en calor intenso.
Sin embargo, use grapas – no los guantes – para recoger el metal caliente.
Fig. Escudo, careta o casco protector.
181
Electrodo
Fig. Electrodos.
Generalidades
A finales del siglo XIX se hicieron experimentos con un electrodo de carbón y el intenso
calor del arco eléctrico para unir metales. Unos cuantos años más tarde el electrodo de
carbón con una varilla o alambre de hierro desnudo, lo cual elimina la necesidad de usar
una varilla separada para relleno. A principios del siglo XX, se descubrió que se mejoraban
las propiedades físicas, mecánicas y químicas de la soldadura, si se Aplicaba un
recubrimiento sobre el alambre de hierro desnudo.
Algunos de los primeros experimentos incluyeron envolver el electrodo desnudo con tela de
asbesto y algodón empapada con silicato de sodio. Tanto el asbesto (amianto) como el
silicato de sodio se utilizan para dar resistencia al fuego y la idea de usarlos fue evitar que
el recubrimiento se quemara demasiado pronto.
De estos primeros experimentos surgieron los electrodos actuales (ver figura 12.). Constan
de un núcleo de alambre metálico, al cual se ha agregado un recubrimiento de productos
químicos seleccionados cuidadosamente. En realidad, aunque los primeros intentos fueron
un poco burdos, los electrodos modernos incluyen, entre otras cosas, asbesto, algodón y
silicato de sodio.
Definición
El electrodo es el extremo que va unido o insertado al porta-electrodo, al que lleva o del
que recibe una corriente eléctrica dependiendo de la configuración eléctrica.
Características técnicas
Los electrodos son fabricados para soldar diferentes metales y también están diseñados para
CD de polaridad directa e inversa, o para soldadura con CA. Unos tantos electrodos
funcionan igualmente bien con CD o CA. Algunos electrodos son mejor adaptados para
soldadura plana, otros son intentados principalmente para soldadura vertical y de
sobrecabeza, y algunos son utilizados en cualquier posición.
Por lo general el electrodo también provee el material de aporte, el que con el arco eléctrico
se funde, depositándose entre las piezas a unir. La temperatura que se genera en este
proceso es superior a los 5500 °C.
182
La corriente que se emplea en este sistema puede ser continua o alterna, utilizándose en los
mejores trabajos la del tipo continua, debido a que la energía es más constante, con lo que
se puede generar un arco más estable.
La corriente alterna permite efectuar operaciones de soldadura con el objeto de trabajo en
posición horizontal y preferentemente en materiales ferrosos, mientras que la corriente
contínua no presenta esas limitaciones de posición y material.
El arco se enciende cortocircuitando el electrodo con la pieza a soldar. En esa situación, en
el punto de contacto el calentamiento óhmico es tan intenso que se empieza a fundir el
extremo del electrodo, se produce ionización térmica y se establece el arco.
Partes
Los electrodos están constituidos por dos partes fundamentales:
•
•
El alma, núcleo o metal de aportación.
El revestimiento o recubrimiento.
Fig. Partes del Electrodo.
El alma, núcleo o metal de aportación
El núcleo del electrodo está constituido por una varilla o alambre metálico que conduce la
corriente eléctrica y permite establecer el arco eléctrico. El intenso calor del arco hace que
progresivamente se funda la punta del alambre y que se deposite en el cordón de soldadura
en forma de pequeñas gotas, proporcionando así el material de aporte. El metal del núcleo
depende del tipo de metal base que se requiere soldar. Si es acero generalmente se usará
acero y si es aluminio el núcleo será de aluminio.
183
Este es el que está formada por un hilo metálico de la misma naturaleza que el metal que se
va a soldar (aluminio, hierro, cobre, acero, inox) y cumple con la función de aportar el
material de relleno en la junta.
El alambre del núcleo de un electrodo, en casi todos los casos, se hace con el mismo metal
que el de las piezas que se van a soldar. Por ejemplo, el acero dulce se soldaría con un
electrodo con el alambre del núcleo hecho con acero dulce. El alambre seria de aluminio
para soldar un metal base de aluminio; para el cobre, se emplearía alambre de núcleo de
cobre, etc. La combinación de los elementos utilizados para el recubrimiento produce las
características especiales de cada tipo de electrodo.
La finalidad del alambre del núcleo o alma es conducir la energía eléctrica al arco y
suministrar el metal de relleno o aporte adecuado.
Diámetro del electrodo
El diámetro del electrodo se mide en el núcleo y determina la intensidad de corriente
promedio que debe utilizarse. Por ejemplo, para un diámetro de 4 mm puede emplearse una
corriente de unos 150 a 200 A.
Longitud del electrodo
En cuanto a la longitud de los electrodos la medida más usual es la de 356mm (14")
existiendo además electrodos de 229 mm (9") y de 457mm ( 10 ").
El revestimiento o recubrimiento
Está constituido por varias sustancias minerales y orgánicas colocadas alrededor del alma
tiene dos finalidades. La primera actúa como protección gaseosa y una parte del
revestimiento, volatilizada por la temperatura del arco, aleja el aire de la zona creando una
columna de gas ionizado que protege el material fundido. Además de elementos
aglutinantes, una parte del revestimiento se funde y aporta en el baño de fusión algunos
elementos que se combinan con el alma del electrodo.
Algunos de los elementos utilizados en los recubrimientos son magnesio, silicatos de
aluminio y talco, todos ellos son formadores de escoria. Los fluoruros de calcio, carbonatos
de calcio, ferromanganeso, ferrosilicio y ferrotitanio son agentes fundentes. El silicato de
sodio se utiliza como agente aglutinante. La celulosa, que forma un gas, protege la zona de
la soldadura.
184
Materiales o composiciones
Las composiciones de los recubrimientos de los electrodos pueden ser orgánicas o
inorgánicas, y estas substancias se pueden subdividir en las que forman escoria y las que
son fundentes. Algunos de los principales compuestos son:
•
•
•
•
•
Para la formación de escoria se utilizan SiO2, MnO2 y FeO.
Para mejorar el arco se utilizan Na2O, CaO, MgO y TiO2.
Desoxidantes: grafito, aluminio, aserrín.
Para mejorar el enlace: silicato de sodio, silicato de potasio y asbestos.
Para mejorar la aleación y la resistencia de la soldadura: vanadio, cesio, cobalto,
molibdeno, aluminio, circonio, cromo, níquel, manganeso y tungsteno.
Funciones de los recubrimientos:
El recubrimiento tiene muchas funciones. Si no lo hubiera, el metal fundido se combinaría
con el oxígeno y el nitrógeno del aire. Por tanto, es necesario proteger tanto el metal de
aporte del electrodo como el metal base fundido que se suelda; éste es la mezcla del metal
base fundido y el metal fundido del electrodo que, cuando se solidifica forma la soldadura
en sí. El arco se puede proteger con una envoltura de un gas inerte, el cual no producirá una
reacción química con el metal fundido. El recubrimiento de los electrodos suministra el gas
protector. Este es el proceso de soldadura con metal y arco protegido (SMAW).
Las principales funciones de los recubrimientos de los electrodos son:
•
•
•
•
•
•
•
•
•
•
•
•
•
Reducir al mínimo la contaminación de metal de soldadura con el oxígeno y el
nitrógeno atmosféricos;
Compensar las pérdidas de ciertos elementos durante la transferencia del metal a
través del arco, porque el recubrimiento incluye aleaciones;
Concentrar el arco en una zona específica porque forma una taza o copa en la punta
del electrodo, que se debe a la fusión más lenta del recubrimiento.
Proveen una atmósfera protectora.
Proporcionan escoria de características adecuadas para proteger al metal fundido.
Estabilizan el arco.
Añaden elementos de aleación al metal de la soldadura.
Desarrollan operaciones de enfriamiento metalúrgico.
Reducen las salpicaduras del metal.
Aumentan la eficiencia de deposición.
Eliminan impurezas y óxidos.
Influyen en la profundidad del arco.
Disminuyen la velocidad de enfriamiento de la soldadura.
185
Tamaño o medida
Para este podemos ver las especificaciones en la tabla
La medida del electrodo que se debe utilizar depende de diversos factores:
1. el espesor del metal.
2. preparación de los bordes o filos de la unión.
3. la posición de la unión (plana, vertical, sobre la cabeza).
4. la pericia del soldador.
Tabla. Cuadro de diámetro del electrodo y de intensidad en función del grosor del metal a soldar.
Según las especificaciones de la tabla anterior podemos decir que la intensidad varía según
la posición de la soldadura, y a de igual manera que podemos analizarla de la siguiente
forma:
•
•
•
En horizontal: ver cuadro anterior.
En techo o en ascendente: reducir la intensidad en un 10% aproximadamente.
En descendente: aumentar la intensidad en un 15% aproximadamente.
Amperaje
El amperaje que se utilice dependerá de:
1. tamaño del electrodo seleccionado.
2. el tipo de recubrimiento del electrodo.
3. la fuente de potencia (ca, ccpi, ccpd).
Seguridad y protección en soldadura por arco eléctrica
Las operaciones de soldadura por arco eléctrico presentan una serie de peligros que es
necesario tener en cuenta para evitar accidentes personales. Entre los mismos encontramos
los de origen netamente eléctrico y los del tipo térmico, como los originados por soldar sin
caretas o máscaras debidos a la gran emisión de radiación ultravioleta que dan lugar a
quemaduras en la piel, queratosis de córneas, etcétera. Un detalle que hay que considerar es
186
que los trabajadores que sueldan usando lentes de contacto se exponen a que la radiación
seque la capa de lágrimas entre el ojo y la lente, produciendo una succión que puede dañar
el ojo cuando se retiran las lentes. A continuación presentamos algunas recomendaciones
generales de seguridad:
- Controlar el estado de los cables antes de usarlos.
- Verificar si los terminales o enchufes están en buen estado.
- Tomar los recaudos necesarios para la conexión del neutro y la tierra (especial cuidado
puesto que los errores en esta toma de tierra pueden ser graves).
- Revisar los aislamientos de los cables eléctricos al comenzar cada tarea desechando todos
aquellos que no están en perfecto estado.
- Evitar que los cables descansen sobre objetos calientes, charcos, bordes afilados o
cualquier otro elemento que pudiera dañarlos.
- Evitar que pasen vehículos por encima, que sean golpeados o que las chispas de soldadura
caigan sobre los cables.
- El cable de masa se conectará sobre la pieza a soldar o lo mas cerca que sea posible.
- Antes de realizar cualquier modificación en la maquina de soldar se cortará la corriente,
incluso cuando se mueve.
- No dejar conectadas las maquinas de soldar en los momentos de suspender
momentáneamente las tareas.
- No trabajar en recintos que hayan contenido gases o líquidos inflamables, sin que
previamente hayan sido debidamente ventilados.
- En caso de utilizar electrodos que generen humos, poner en funcionamiento los
aspiradores correspondientes, o en caso contrario, emplear equipos de protección
respiratoria.
•
•
•
•
•
•
•
•
Antes de empezar cualquier operación de soldadura de arco, se debe hacer una
inspección completa del soldador.
Léa las etiquetas de advertencia y los manuales de instrucción.
Remueva todos los peligros potenciales de fuego en el área de soldar.
Mantenga siempre un extinguidor de fuego para uso inmediato.
Equipe las máquinas de soldar con suiches que se puedan desconectar rapidamente.
La corriente de la máquina se debe desconectar antes de realizar reparaciones.
La conección a tierra apropiada en las máquinas de soldar es importante.
Los sostenedores de electrodos no deben usarse si estos tienen los cables sueltos, las
tenazas dañadas o aislantes dañados.
187
•
Un arco no se debe hacer si alguien alrededor no tiene el protector de los ojos
apropiado.
Elementos o Equipo de protección personal
El cuerpo de la persona que va a realizar una soldadura, está sometido a la posible acción
de agentes agresivos, por lo que debe protegerse adecuadamente. Es importante usar los
siguientes elementos:
- Pantalla de protección.
- Caretas y protección ocular.
- Guantes de cuero de manga larga.
- Mandil de cuero.
- Polainas de apertura rápida (pantalones por encima).
- Protección de los pies de características aislantes.
- Casco de seguridad.
•
•
•
•
•
•
•
•
La radiación de la luz infraroja es la causa del quemado en la retina y de la
enfermedad llamada cataratas. Proteja los ojos con el casco de soldar equipado con un
plato filtrante de grado apropiado.
Proteja su cuerpo de las particulas y rayos del arco con ropa protectora. Como son:
ropa de lana delantal a prueba de fuego guantes.
Ropa propiamente ajustada que no este desgastada o rota.
Las camisas deben tener mangas largas.
Los pantalones deben ser de bota larga y zapatos que cubran cuando se esta soldando
con arco.
Una capa resistente al fuego o cubridor de hombros son necesarios cuando se suelda
sobre la cabeza.
Revisar el equipo de ropa protectora antes de cada uso, para estar seguro de que está
en buena condición.
Mantener la ropa libre de grasa y aceite.
Electricidad
El buen funcionamiento de la máquina se asegura con una correcta instalación eléctrica.
Verificar que la tensión (Voltios) de la máquina corresponde a la de la red.
Conectar siempre la toma de tierra
Recordar que personas con aparatos eléctricos implantados (marcapasos, etc.) no deben
utilizar nunca aparatos de este tipo.
188
Protección contra incendios
El proceso de soldadura origina proyecciones de metal incandescente que puede provocar
incendios. No utilizar la máquina en ambientes con gases inflamables. Limpiar el área de
trabajo de todo material combustible. Proteger especialmente las botellas de gas de acuerdo
con los requerimientos que precisen.
Nunca proceder a soldar depósitos con restos de materiales inflamables, existe un gran
riesgo de explosión.
Al realizar trabajos de soldadura, resulta recomendable disponer de un extintor listo para su
uso.
Ventilación apropiada
Este seguro de que existe ventilación adecuada cuando se suelda en áreas encerradas o
cuando hay barreras contra el viento. Las corrientes naturales de aire, ventilación y posición
de la cabeza ayudan a mantener el humo alejado de la cara del soldador.
La ventilación es suficiente si:
• El cuarto o el área de soldar tiene por lo menos 10,000 pies cúbicos para cada
soldador.
• El techo tiene por lo menos 16 pies.
• La ventilación no es bloqueada por barreras como divisiones, equipos, u otras
estructuras.
• La soldadura no se realiza en espacios encerrados.
**Si los requerimientos en espacio no son los ideales, entonces el área necesita ser
equipada con extractores mecánicos de ventilación con escape de por lo menos 2000 cfm de
aire por cada soldador, excepto donde campanas o cabinas de extracción locales, o líneas de
aire para respirar son usados.
Recomendaciones:
- No se realizarán trabajos de soldadura utilizando lentes de contacto.
- Se comprobará que las caretas no estén deterioradas puesto que si así fuera no cumplirían
su función.
- Verificar que el cristal de las caretas sea el adecuado para la tarea que se va a realizar.
- Para picar la escoria o cepillar la soldadura se protegerán los ojos.
- Los ayudantes y aquellos que se encuentren a corta distancia de las soldaduras deberán
usar gafas con cristales especiales.
- Cuando sea posible se utilizarán pantallas o mamparas alrededor del puesto de soldadura
- Para colocar los electrodos se utilizaran siempre guantes, y se desconectará la maquina.
- La pinza deberá estar lo suficientemente aislada y cuando este bajo tensión deberá
tomarse con guantes.
- Las pinzas no se depositarán sobre materiales conductores.
189
Descargar