Consultar ensayos de calidad


Control por eventos de un acensor en visual basic



CONTROL INDUSTRIAL II
PRACTICA #1

CONTROL POR EVENTOS DE UN ACENSOR EN VISUAL BASIC


OBJETIVOS

• Realizar el control por eventos de un sistema (en este caso un ascensor) mediante la utilización de un motor D.C.

• Aplicar los conocimientos adquiridos durante las exposiciones, para que por medio del P.C. podamos implementar de una forma simple el control por eventos de un motor D.C.

• Realizar el control por eventos de un motor D.C. para que pueda funcionar en un ascensor lo mas real posible, implementando un sistema electromecanico para controlar el movimiento del ascensor así como también el proceso de abrir y cerrar las puertas del mismo.

• Comprender e implementar las conexiones necesarias para el control de giro de un motor D.C.



PLANTEAMIENTO DEL PROBLEMA

Se desea realizar la implementación de un ascensor de 4 pisos, para que pueda funcionar lo mas cercano posible a un ascensor real. Se pretende controlar el giro de 3 motores D.C., uno de los cuales realizara el proceso de subir y bajar el ascensor y los otros dos se encargaran de abrir y cerrar las puertas del mismo. Así como el giro se pretende controlar el proceso de arranque y parada de dichos motores, según sea programado por los usuarios.

MARCO TEORICO

PUENTE H

• Para realizar el control de giro de los motores D.C. utilizados fue necesaria la implementación de dos C.I. LB1649 los cuales constan de dos puente H cada uno, del cual se muestran a continuación sus características físicas, diagrama circuital, conexiones y tabla lógica respectivamente:Características Físicas:



Diagrama Circuital:



Conexiones:



Tabla lógica:



OPTOACOPLADORES

También se denominan optoaisladores o dispositivos de acoplamiento óptico. Basan su funcionamiento en el empleo de un haz de radiación luminosa para pasar señales de un circuito a otro sin conexión eléctrica.

Fundamentalmente este dispositivo esta formado por una fuente emisora de luz, y un fotosensor de silicio, que se adapta a la sensibilidad espectral del emisor luminoso.
TIPOS
Existen varios tipos de optoacopladores cuya diferencia entre sí depende de los dispositivos de salida que se inserten en el componente.
Según esto tenemos los siguientes tipos:
p|Fototransistor: o lineal, conmuta una variación de corriente de entrada en una variación de tensión de salida. Se utiliza en |
|ic|acoplamientos de líneas telefónicas, periféricos, audio |
|]
p|Optotiristor: Diseñado para aplicaciones donde sea preciso un aislamiento entre una señal lógica y la red. |
|ic
|]
p|Optotriac: Al igual que el optotiristor, se utiliza para aislar una circuiteria de baja tensión a la red. ||ic
|]

En general pueden sustituir a relés ya que tienen una velocidad de conmutación mayor, así como, la ausencia de rebotes.
[pic]
Símbolo de un optotransistor de encapsulado ranurado

MATERIALES Y HERRAMIENTAS

• Computador (Con VisualBasic instalado)
• 4 Optoacopladores
• 3 Motores D.C.
• 1 Fuente D.C. Dual
• 1 Multimetro Digital
• 1 C.I. 7414
• 2 C.I. LB1649
• 1 Cable para el puerto paralelo
• 1 Conector DB 25 Hembra
• Maqueta del ascensor
• Pinzas
• Corta frío

DESARROLLO DE LA PRACTICA

• Lo primero que realizamos en el desarrollo del laboratorio fue la implementación de la maqueta y su posterior perfección, esto con el fin de disminuir en un maximo los errores mecanicos se pudieran presentar durante la implementación del ascensor, la maqueta implementada fue mas o menos como se observa en la siguiente figura:

• Una vez se tenia la maqueta funcionando de forma adecuada procedimos a realizar la implementación del hardware de nuestro sistema el cual constaba de:

o 4 optoacopladores (uno en cada piso) los cuales nos servían para indicarnos el piso en el que se encontraba el ascensor, los cuales eran la entrada a un C.I 7414 (smith) que se encargaba de entregar al P.C. las señales procedentes de los optoacopladores libres de errores.

o 2 C.I. LB1649 de los cuales solousabamos 3 puente H, uno para la movimiento vertical del ascensor y los otros dos para el control de abrir y cerrar las puertas.

o Por ultimo las salidas de los Smith así como las entradas de los puente H iban al conector DB 25 hembra que a su vez se comunicaba con el puerto paralelo del computador.

• Al verificar que el ascensor funcionaba correctamente utilizando un control manual para el mismo, procedimos a realizar la programación en Visual Basic del control del ascensor, para tal efecto utilizamos la librería IO.dll (la cual fue programada en C) para la utilización del puerto paralelo del cual utilizamos el registro de datos para el control de los puente H y el registro de status para saber el piso en el que nos encontrabamos, el código del programa fue el siguiente:

Const reg_datos = 888
Const subida = 1
Const bajada = 2
Const parada = 0
Const abrir = 4
Const cerrar = 8
Dim uno As Byte
Dim dos As Byte
Dim tres As Byte
Dim cuatro As Byte
Dim PisoElegido As Byte

Private Sub Command5_Click()
Call PortOut(reg_datos, parada)
End
End Sub

Private Sub Form_Load()
PisoElegido = 120
ubicacion
End Sub

Private Sub ubicacion()
PisoActual = PortIn(reg_datos + 1)
PisoActual = PisoActual And 120
If PisoActual = PisoElegido Then
Timer3.Interval = 10
Else
Call Indicacion_piso
apertura
End If
End Sub

Private Sub Indicacion_piso()
Select Case PisoActual
Case 112
Option1.Value = True
Option1.BackColor = &H80FF&
Option1.FontSize = 14
Option2.BackColor = &H8000000F
Option2.FontSize = 8
Option3.BackColor = &H8000000F
Option3.FontSize = 8
Option4.BackColor = &H8000000FOption4.FontSize = 8
Case 104
Option2.Value = True
Option2.BackColor = &H80FF&
Option2.FontSize = 14
Option1.BackColor = &H8000000F
Option1.FontSize = 8
Option3.BackColor = &H8000000F
Option3.FontSize = 8
Option4.BackColor = &H8000000F
Option4.FontSize = 8
Case 88
Option3.Value = True
Option3.BackColor = &H80FF&
Option3.FontSize = 14
Option2.BackColor = &H8000000F
Option2.FontSize = 8
Option1.BackColor = &H8000000F
Option1.FontSize = 8
Option4.BackColor = &H8000000F
Option4.FontSize = 8
Case 56
Option4.Value = True
Option4.BackColor = &H80FF&
Option4.FontSize = 14
Option2.BackColor = &H8000000F
Option2.FontSize = 8
Option3.BackColor = &H8000000F
Option3.FontSize = 8
Option1.BackColor = &H8000000F
Option1.FontSize = 8
End Select
End Sub

Private Sub Timer3_Timer()
PisoActual = PortIn(reg_datos + 1)
PisoActual = PisoActual And 120
Indicacion_piso
If PisoActual PisoElegido Then
Timer3.Interval = 0
Call PortOut(reg_datos, parada)
apertura
Else
Call PortOut(reg_datos, subida)
End If
End Sub
Private Sub apertura()
Call PortOut(reg_datos, abrir)
Timer1.Interval = 300
Timer2.Interval = 5000
End Sub
Private Sub Timer1_Timer()
Call PortOut(reg_datos, parar)
Timer1.Interval = 0
If Timer2.Interval = 0 Then
Timer4.Interval = 100
End If
End Sub
Private Sub Timer2_Timer()
Call PortOut(reg_datos, cerrar)
Timer2.Interval = 0
Timer1.Interval = 300
End Sub

Private Sub Timer4_Timer()
If dos = 104 Then
If PisoActual > dos Then
Call PortOut(reg_datos, subida)
Else
Call PortOut(reg_datos, bajada)
End If
Timer4.Interval = 0
PisoElegido =dos
ubicacion2
End If
If tres = 88 Then
If PisoActual > tres Then
Call PortOut(reg_datos, subida)
Else
Call PortOut(reg_datos, bajada)
End If
Timer4.Interval = 0
PisoElegido = tres
ubicacion2
End If
If uno = 112 Then
If PisoActual > uno Then
Call PortOut(reg_datos, subida)
Else
Call PortOut(reg_datos, bajada)
End If
Timer4.Interval = 0
PisoElegido = uno
ubicacion2
End If
If cuatro = 56 Then
If PisoActual > cuatro Then
Call PortOut(reg_datos, subida)
Else
Call PortOut(reg_datos, bajada)
End If
Timer4.Interval = 0
PisoElegido = cuatro
ubicacion2
End If
End Sub

Private Sub ubicacion2()
PisoActual = PortIn(reg_datos + 1)
PisoActual = PisoActual And 120
If PisoActual PisoElegido Then
Timer5.Interval = 10
Else
Call Indicacion_piso
End If
End Sub

Private Sub Timer5_Timer()
PisoActual = PortIn(reg_datos + 1)
PisoActual = PisoActual And 120
Indicacion_piso
If PisoActual = PisoElegido Then
Timer5.Interval = 0
desactivacion
Call PortOut(reg_datos, parada)
apertura
End If
End Sub

Private Sub desactivacion()
Select Case PisoActual
Case 112
Command1.BackColor = &HC0FFC0
uno = 0
Case 104
Command2.BackColor = &HC0FFC0
dos = 0
Case 88
Command3.BackColor = &HC0FFC0
tres = 0
Case 56
Command4.BackColor = &HC0FFC0
cuatro = 0
End Select
End Sub

Private Sub Command1_Click()
If PisoActual 112 Then
Command1.BackColor = &HFF&
uno = 112
End If
End Sub

Private Sub Command2_Click()If PisoActual 104 Then
Command2.BackColor = &HFF&
dos = 104
End If
End Sub

Private Sub Command3_Click()
If PisoActual 88 Then
Command3.BackColor = &HFF&
tres = 88
End If
End Sub

Private Sub Command4_Click()
If PisoActual 56 Then
Command4.BackColor = &HFF&
cuatro = 56
End If
End Sub

La interfase grafica implementada para el control del ascensor fue la siguiente:



En la cual se presentaba el piso en el que se encontraba el ascensor en determinado momento (piso actual), se tenia la posibilidad de seleccionar el piso al que se deseaba ir (selección de piso) y por último y botón utilizado para cerrar la aplicación.

CONCLUSIONES

• Realizamos el control por eventos de los tres motores D.C., uno para controlar el movimiento vertical del ascensor y los otros dos para controlar el abrir y cerrar las puertas del mismo.

• Visual Basic es un software muy potente para realizar diferente tipos de aplicaciones en el control de sistemas, una de sus propiedades mas importantes para tales efectos son los timer que me permites ejecutar una determinada función transcurrido un tiempo, gracias a ellos pudimos controlar sin ningún problema el proceso de abrir y cerrar las puertas.

• El manejo del puerto paralelo con Visual Basic es muy sencillo y a las vez de gran utilidad ya que es una herramienta que me permite tener el control de diferentes sistemas y ademas el puerto paralelo casi todos los pc`s lo tienen.

• Realizar el control de giro de un motor D.C. utilizando un puente H es una labor muy sencilla y de gran utilidad en sistemas en los que se requiera la inversión de giro de un motor.


Política de privacidad