04 Diagrama del modulo - Universidad Politécnica Salesiana

Anuncio
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
CAPITULO IV:
4.1 DIAGRAMA DEL CIRCUITO DEL MODULO DE CONTROL:
El diagrama detallado del circuito del modulo de control se lo realizo en el programa
PROTEUS 6 PROFESIONAL ISIS.
Ver figura 28.
4.2 DESARROLLO DEL CIRCUITO IMPRESO:
Para la realización del circuito impreso del modulo de control lo realizamos en el
programa PROTEUS 6 PROFESIONAL ARES.
Según recomendaciones de fabricantes es útil realizar pistas de mayor calibre y
pequeños planos en los pines de conexión de polarización, si es el caso para cada
integrado.
Ver figura 29.
4.3 ELEMENTOS UTILIZADOS PARA EL MODULO DE CONTROL:
Cantidad:
Referencias
Valor
5
R1, R3, R4, R7, R8
10k
4
R2, R6, R9, R10
330R
1
R5
4k7
1
R11
470K
3
R14-R16
1K
1
R19
10R
Cantidad:
Referencias
Valor
9
C1-C4, C7, C8, C12, C13, C19
10u
5
C5, C6, C15, C16, C18
100n
Cantidad:
Referencias
Valor
64
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
1
U1
ATMEGA88
1
U2
MAX232
1
U4
7805
1
U10
DS1307
Cantidad:
Referencias
Valor
2
Q1, Q2
TIP122
Cantidad:
Referencias
Valor
2
D1, D2
1N4007
6
D3, D4, D6-D8, D13
LED-RED
Cantidad:
Referencias
Valor
1
BATT1
BATT
1
J1
CONN-D9F
1
J3
VENT HUMEDAD
1
J4
VENT TEMPE
1
J5
SENSOR SHT15
1
J6
TRANSFORMADOR
1
J7
HUMEDAD
1
J9
TEMPERATURA
1
LCD1
LCD 16x2
1
X1
CRYSTAL
Tabla 20. Elementos utilizados para el modulo de control
4.4 DESCRIPCIÓN
DE
LA
PROGRAMACIÓN
DEL
MICROCONTROLADOR ATMEGA88
La programación del microcontrolador ATMEGA88 se lo realizo en el programa
BASCOM-AVR.
65
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.4.1. BASCOM AVR
El BASCOM-AVR© es un compilador de BASIC para la familia AVR de ATMEL,
desarrollado por la empresa Holandesa MCS Electronic para programar los
microcontroladores AVR de la empresa ATMEL. Los cuales son de tecnología
RISC. El programa BASCOM AVR tiene el objetivo de realizar sus proyectos de
microcontroladores en un menor tiempo posible con lo cual utiliza la herramienta
Basic por su fácil entendimiento y aplicación.
PROGRAMADOR DEL BASCOM AVR
Figura 31. Programador del Bascom AVR
Fuente: BASCOM-AVR DEMO
66
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
FIGURA 28. CIRCUITO DETALLADO DEL MODULO DE CONTROL
67
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
FIGURA 29. CIRCUITO IMPRESO DEL MODULO DE CONTROL
68
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
FIGURA 30. CIRCUITO IMPRESO DEL MODULO DE CONTROL CON
SUS RESPECTIVOS ELEMENTOS
69
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.4.2. FLUJO GRAMA DE LA PROGRAMACIÓN DEL ATMEGA88
70
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.4.3. PROGRAMACIÓN
----------------------------------------------------------------------CONFIGURACION DE COMUNICACION
----------------------------------------------------------------------$baud = 38400
$crystal = 8000000
$lib "ds1307clock.lib"
Config Clock = User
Config Serialin = Buffered , Size = 20
$timeout = 10000
----------------------------------------------------------------------VARIABLES
----------------------------------------------------------------------Dim Lili1 As Single
Dim Lili2 As Single
Dim Lili3 As Single
Dim Lili4 As Single
Dim Lili5 As Single
Dim Lili6 As Single
Dim Serial_in As String * 24
Dim Calendario As Byte
Dim Weekday As Byte
Dim Ctr As Byte
71
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Dim Dataword As Word
Dim Command As Byte
Dim Dis As String * 20
Dim Actualizar As Byte
Dim L As String * 4
Dim Dato As String * 20
Dim Dato1 As String * 20
Dim R As String * 4
Dim Calefactor_humedad As Byte
Dim Ventilador_humedad As Byte
Dim Calefactor_temperatura As Byte
Dim Ventilador_temperatura As Byte
Dim Calc As Single
Dim Tempc As Single
Dim Tempf As Single
Dim Calc2 As Single
Dim Rhlinear As Single
Dim Rhlintemp As Single
Dim Segundos As Byte
Dim Minutos As Byte
Dim Horas As Byte
Dim Dias As Byte
Dim B As Byte
Dim Humedad As Byte
72
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Dim Temp As Byte
Dim Encendido As Byte
Dim Automatico_humedad As Byte
Dim Automatico_temperatura As Byte
Dim Humedad_serial As Single
Dim Humedad_serial1 As Single
Dim Temperatura_serial As Single
----------------------------------------------------------------------VALORES CONSTANTES DEL SENSOR
----------------------------------------------------------------------Const C1 = -4
Const C2 = 0.0405
Const C3 = -0.0000028
Const D2 = .01
Const D1 = -40.00
Const T1f = .018
Const T1c = 0.01
Const T2 = 0.00008
----------------------------------------------------------------------DIRECCIONAMIENTO DEL RELOJ EN TIEMPO REAL
----------------------------------------------------------------------Const Ds1307w = &HD0
Const Ds1307r = &HD1
73
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
----------------------------------------------------------------------PUERTOS DE SALIDAS
-----------------------------------------------------------------------Ddrb.1 = 1
Portb.1 = 0
Ddrb.2 = 1
Portb.2 = 0
Ddrb.6 = 1
Portb.6 = 0
Ddrb.7 = 1
Portb.7 = 0
-------------------------------------------------------------------------------------------NOMBRES DE LOS PUERTOS TANTO ENTRADAS COMO SALIDAS
-------------------------------------------------------------------------------------------Sck Alias Portb.5
Dataout Alias Portb.4
Datain Alias Pinb.4
Foco Alias Portb.6
Ventem Alias Pwm1a
Venhume Alias Pwm1b
Calefactor Alias Portb.7
74
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
----------------------------------------------------------------------CONFIGURACION DEL PWM
------------------------------------------------------------------------
Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Compare B
Pwm = Clear Down , Prescale = 64
Enable Interrupts
-----------------------------------------------------------------------------------------------CONFIGURACION DE LOS VALORES DE HUMEDAD Y TEMPERATURA
------------------------------------------------------------------------------------------------Humedad_serial = 70
Temperatura_serial = 35
Reset Foco
Reset Calefactor
----------------------------------------------------------------------CONFIGURACION DEL LCD
-----------------------------------------------------------------------Cls
Cursor Off
Locate 1 , 1
Lcd " PLANTA AVICOLA "
Locate 2 , 1
Lcd " BIENVENIDOS "
For B = 1 To 16
75
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Shiftlcd Right
Next
For B = 1 To 16
Shiftlcd Left
Waitms 250
Next
Wait 2
Locate 1 , 1
Lcd " REALIZADO POR "
Locate 2 , 1
Lcd "DIEGO PAHUANQUIZA"
For B = 1 To 16
Shiftlcd Right
Next
For B = 1 To 17
Shiftlcd Left
Waitms 250
Next
Wait 2
Home U
Lcd "CONTROL INACTIVO"
Home L
Lcd "PRESIONE ON
"
76
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
----------------------------------------------------------------------INICIALIZACION DEL SENSOR
-----------------------------------------------------------------------Declare Sub Getit()
Ddrb = &B11111111
Config Pinb.4 = Output
Config Pinb.5 = Output
Config Portc = Output
Set Dataout
For Ctr = 1 To 12
Set Sck
Waitus 2
Reset Sck
Waitus 2
Next Ctr
----------------------------------------------------------------------CONDICIONES DEL PROCESO
-----------------------------------------------------------------------Do
Inicio:
'CONTROL SERIAL
Input Serial_in Noecho
L = Mid(serial_in , 1 , 3)
If L = "TPO" Then
Actualizar = 1
77
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
End If
If L = "ONN" Then
Encendido = 1
End If
If L = "OFF" Then
Encendido = 0
End If
If L = "HAU" Then
Automatico_humedad = 1
End If
If L = "HMA" Then
Automatico_humedad = 2
Reset Foco
Pwm1b = 0
End If
If L = "TAU" Then
Automatico_temperatura = 1
End If
If L = "TMA" Then
Automatico_temperatura = 2
Reset Calefactor
Pwm1b = 0
End If
If L = "CH0" Then
78
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Calefactor_humedad = 0
End If
If L = "CH1" Then
Calefactor_humedad = 1
End If
If L = "VH0" Then
Ventilador_humedad = 0
End If
If L = "VH1" Then
Ventilador_humedad = 1
End If
If L = "CT0" Then
Calefactor_temperatura = 0
End If
If L = "CT1" Then
Calefactor_temperatura = 1
End If
If L = "VT0" Then
Ventilador_temperatura = 0
End If
If L = "VT1" Then
Ventilador_temperatura = 1
End If
L = Mid(serial_in , 1 , 1)
79
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
If L = "X" Then
R = Mid(serial_in , 2 , 3)
Temperatura_serial = Val(r)
End If
If L = "Y" Then
R = Mid(serial_in , 2 , 3)
Humedad_serial = Val(r)
End If
If Encendido = 0 Then
Automatico_temperatura = 0
Automatico_humedad = 0
Reset Calefactor
Reset Foco
Pwm1a = 0
Pwm1b = 0
Home U
Lcd "CONTROL INACTIVO"
Home L
Lcd "PRESIONE ON
"
Goto Inicio
Else
End If
If Actualizar = 1 Then
Cls
80
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Dato = Mid(serial_in , 4 , 6)
Dato1 = Mid(serial_in , 12 , 2)
Dato = Dato + Dato1
Date$ = Dato
Dato = Mid(serial_in , 14 , 9)
Time$ = Dato
Cls
Actualizar = 0
End If
----------------------------------------------------------------------RELOJ EN TIEMPO REAL PARA VER EN LCD
-----------------------------------------------------------------------Incr Calendario
If Calendario < 7 Then
Home L
Lcd "TIME " ; Time$ ; "
"
End If
If Calendario => 7 Then
Home L
Lcd "DATE " ; Date$ ; " "
End If
If Calendario = 12 Then Calendario = 0
81
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
----------------------------------------------------------------------COMANDO DE LECTURA DE TEMPERATURA
-----------------------------------------------------------------------Command = &B00000011
Call Getit
Tempf = D2 * Dataword
Tempf = Tempf - 40
Dis = Fusing(tempf , "###.##")
Print "T" ; Dis
Home U
Lcd "T=" ; Dis ; " "
----------------------------------------------------------------------COMANDO DE LECTURA DE LA HUMEDAD
----------------------------------------------------------------------Command = &B00000101
Call Getit
Calc = C2 * Dataword
Calc2 = Dataword * Dataword
Calc2 = C3 * Calc2
Calc = Calc + C1
Rhlinear = Calc + Calc2
Calc = T2 * Dataword
Calc = Calc + T1c
Calc2 = Tempc - 25
82
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Calc = Calc2 * Calc
Rhlintemp = Calc + Rhlinear
Dis = Fusing(rhlintemp , "##.##")
Print "H" ; Dis
Lcd "H= " ; Dis ; " "
--------------------------------------------------------------------------------------GRADO DE DIFERENCIACION DE VALORES DE TEMPERATURA
--------------------------------------------------------------------------------------Lili1 = Temperatura_serial - 2
Lili2 = Temperatura_serial - 1.5
Lili3 = Temperatura_serial - 0.1
Print "R" ; Lili3
Waitms 12
If Automatico_temperatura = 1 Then
If Tempf < Lili1 Then
Ventem = 100
Set Calefactor
Elseif Tempf >= Lili1 And Tempf < Lili2 Then
Ventem = 350
Reset Calefactor
Waitms 10
Set Calefactor
Waitms 90
Elseif Tempf >= Lili2 And Tempf < Lili3 Then
83
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Ventem = 650
Reset Calefactor
Waitms 50
Set Calefactor
Waitms 50
Elseif Tempf >= Temperatura_serial Then
Ventem = 1022
Reset Calefactor
End If
Elseif Automatico_temperatura = 2 Then
If Calefactor_temperatura = 0 Then Reset Calefactor
If Calefactor_temperatura = 1 Then Set Calefactor
If Ventilador_temperatura = 0 Then Pwm1a = 0
If Ventilador_temperatura = 1 Then Pwm1a = 1023
End If
--------------------------------------------------------------------------------------GRADO DE DIFERENCIACION DE VALORES DE HUMEDAD
--------------------------------------------------------------------------------------Humedad_serial1 = Humedad_serial + 2
Lili4 = Humedad_serial - 3
Lili5 = Humedad_serial - 2
Lili6 = Humedad_serial - 1
Print "L" ; Lili4
If Automatico_humedad = 1 Then
84
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
If Rhlintemp < Lili4 Then
Set Foco
Venhume = 0
End If
If Rhlintemp >= Humedad_serial1 Then
Venhume = 500
Reset Foco
End If
Else
If Automatico_humedad = 2 Then
If Calefactor_humedad = 0 Then Reset Foco
If Calefactor_humedad = 1 Then Set Foco
If Ventilador_humedad = 0 Then Pwm1b = 0
If Ventilador_humedad = 1 Then Pwm1b = 1023
End If
Loop
Sub Getit()
Local Datavalue As Word
Local Databyte As Byte
Set Sck
Reset Dataout
Reset Sck
Set Sck
Set Dataout
85
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Reset Sck
Shiftout Dataout , Sck , Command , 1
Ddrb = &B11101111
Config Pinb.4 = Input
Set Sck
Reset Sck
Waitus 10
Bitwait Pinb.4 , Reset
Shiftin Datain , Sck , Databyte , 1
Datavalue = Databyte
Ddrb = &B11111111
Config Pinb.4 = Output
Reset Dataout
Set Sck
Reset Sck
Ddrb = &B11101111
Config Pinb.4 = Input
Shiftin Datain , Sck , Databyte , 1
Shift Datavalue , Left , 8
Datavalue = Datavalue Or Databyte
Dataword = Datavalue
Ddrb = &B11111111
Config Pinb.4 = Output
86
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Reset Dataout
Set Sck
Reset Sck
Ddrb = &B11101111
Config Pinb.4 = Input
Shiftin Datain , Sck , Databyte , 1
Ddrb = &B11111111
Config Pinb.4 = Output
Set Dataout
Set Sck
Reset Sck
End Sub
End
--------------------------------------------------------------------------------------PARA TRAER DATOS DE FECHA Y HORA EN TIEMPO REAL
--------------------------------------------------------------------------------------Getdatetime:
I2cstart
I2cwbyte Ds1307w
I2cwbyte 0
I2cstart
I2cwbyte Ds1307r
87
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
I2crbyte _sec , Ack
I2crbyte _min , Ack
I2crbyte _hour , Ack
I2crbyte Weekday , Ack
I2crbyte _day , Ack
I2crbyte _month , Ack
I2crbyte _year , Nack
I2cstop
_sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour)
_day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year)
Return
Setdate:
_day = Makebcd(_day) : _month = Makebcd(_month) : _year = Makebcd(_year)
I2cstart
I2cwbyte Ds1307w
I2cwbyte 4
I2cwbyte _day
I2cwbyte _month
I2cwbyte _year
I2cstop
Return
Settime:
_sec = Makebcd(_sec) : _min = Makebcd(_min) : _hour = Makebcd(_hour)
I2cstart
88
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
I2cwbyte Ds1307w
I2cwbyte 0
I2cwbyte _sec
I2cwbyte _min
I2cwbyte _hour
I2cstop
Return
89
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.5 DESCRIPCIÓN DE LA PARTE DE MONITOREO MEDIANTE EL
PROGRAMA VISUAL BASIC 6.0
4.5.1.MODULO ESTACIÓN REMOTA:
Figura 32. Software del modulo estación remota.
En el modulo estación remota se encuentra el software con el cual aplicamos el
monitoreo de la planta avícola el cual lo realice en el Programa Visual Basic 6.0.
El diseño corresponde a cada una de las actividades que debía realizar el programa,
determinando la relación con el hardware en todo momento y buscando la forma mas
sencilla de uso para que el operador no tenga ningún inconveniente.
Tenemos un encendido y un apagado general para el sistema, el control automático o
manual de la temperatura, humedad y los ventiladores.
La programación de horarios con el cual el operador pone los valores de humedad y
temperatura que necesite cada semana hasta llegar al fin del proceso.
90
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.5.2. COMUNICACIÓN CON EL PUERTO SERIAL:
Debido a que toda la información que se transmite y recibe entre el modulo de
control, es interactuado con el computador a través del puerto serial.
4.5.3. SEGURIDAD DE ACCESO:
Luego de la presentación, la aplicación abre una ventana para ingresar el nombre del
usuario y la clave correspondiente, donde intervienen entonces todos los aspectos
relacionados con la seguridad del sistema.
4.5.4. PROGRAMADOR:
El Programador fue diseñado para que el operario defina la programación semanal de
la temperatura que quiere cumplir con las niquelinas conectadas al sistema
automatizado.
Mediante el control semanal de la temperatura el operario pone los valores de
temperatura la fecha y la hora desde donde debe empezar hasta el fin del proceso en
el cual se apaga el sistema.
91
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Figura 33. Control semanal de la temperatura.
La humedad en cambio se la deja definida en un solo valor ya que la humedad esta
entre un rango del 50 al 70%.
Figura 34. Control de la humedad.
92
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.5.6 PROGRAMACIÓN EN VISUAL BASIC 6.0:
---------------------------------------------------------------------------------------------VARIABLES
--------------------------------------------------------------------------------------------Dim J As By
Dim L As Double
Dim CONTROL_HUMEDAD As String
Dim CONTROL_TEMPERATURA As String
Dim ENCENDIDO As String
Dim st As String
--------------------------------------------------------------------------------------------Private Sub Check1_Click()
Text18.Text = Text4.Text
End Sub
---------------------------------------------------------------------------------------------CONTROL DE HUMEDAD EN FORMA MANUAL
---------------------------------------------------------------------------------------------Private Sub Command1_Click()
If ENCENDIDO = "ON" Then
Text5.BackColor = &HFF00&
If CONTROL_HUMEDAD = "MANUAL" Then
For J = 1 To 1
enviar "VH1"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command10_Click()
Text24.Text = Text4.Text
93
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
End Sub
--------------------------------------------------------------------------------------------Private Sub Command11_Click()
If ENCENDIDO = "ON" Then
Text6.BackColor = &HFF00&
If CONTROL_HUMEDAD = "MANUAL" Then
For J = 1 To 1
enviar "CH1"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
--------------------------------------------------------------------------------------------Private Sub Command12_Click()
If ENCENDIDO = "ON" Then
Text6.BackColor = &HFF&
If CONTROL_HUMEDAD = "MANUAL" Then
For J = 1 To 1
enviar "CH0"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
94
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
---------------------------------------------------------------------------------------------CONTROL DE HUMEDAD EN FORMA AUTOMATICA
---------------------------------------------------------------------------------------------
Private Sub Command13_Click()
If ENCENDIDO = "ON" Then
Text31.BackColor = &HFF00&
Text41.BackColor = &HC0C0FF
For J = 1 To 1
enviar "HAU"
For L = 1 To 100000
Next
Next
CONTROL_HUMEDAD = "AUTO"
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command14_Click()
If ENCENDIDO = "ON" Then
Text41.BackColor = &HFF00&
Text31.BackColor = &HC0C0FF
For J = 1 To 1
enviar "HMA"
For L = 1 To 100000
Next
Next
CONTROL_HUMEDAD = "MANUAL"
End If
End Sub
---------------------------------------------------------------------------------------------CONTROL DE TEMPERATURA EN FORMA MANUAL
--------------------------------------------------------------------------------------------Private Sub Command15_Click()
95
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
If ENCENDIDO = "ON" Then
Text12.BackColor = &HFF00&
If CONTROL_TEMPERATURA = "MANUAL" Then
For J = 1 To 1
enviar "CT1"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command16_Click()
If ENCENDIDO = "ON" Then
Text12.BackColor = &HFF&
If CONTROL_TEMPERATURA = "MANUAL" Then
For J = 1 To 1
enviar "CT0"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
---------------------------------------------------------------------------------------------CONTROL DE TEMPERATURA EN FORMA AUTOMATICA
--------------------------------------------------------------------------------------------Private Sub Command17_Click()
If ENCENDIDO = "ON" Then
Text42.BackColor = &HFF00&
Text43.BackColor = &H8000000F
96
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
For J = 1 To 1
enviar "TAU"
For L = 1 To 100000
Next
Next
CONTROL_TEMPERATURA = "AUTO"
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command18_Click()
If ENCENDIDO = "ON" Then
Text43.BackColor = &HFF00&
Text42.BackColor = &H8000000F
For J = 1 To 1
enviar "TMA"
For L = 1 To 100000
Next
Next
CONTROL_TEMPERATURA = "MANUAL"
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command19_Click()
ENCENDIDO = "ON"
For J = 1 To 1
enviar "ONN"
For L = 1 To 100000
Next
Next
97
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
End Sub
------------------------------------------------------------------------------------------Private Sub Command2_Click()
If ENCENDIDO = "ON" Then
Text5.BackColor = &HFF&
If CONTROL_HUMEDAD = "MANUAL" Then
For J = 1 To 1
enviar "VH0"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
Private Sub Command20_Click()
Text32.BackColor = &HFF&
Text5.BackColor = &HFF&
Text6.BackColor = &HFF&
Text9.BackColor = &HFF&
Text12.BackColor = &HFF&
Text31.BackColor = &HC0C0FF
Text41.BackColor = &HC0C0FF
Text42.BackColor = &H8000000F
Text43.BackColor = &H8000000F
ENCENDIDO = "OFF"
For J = 1 To 1
enviar "OFF"
For L = 1 To 100000
Next
Next
End Sub
98
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
------------------------------------------------------------------------------------------Private Sub Command21_Click()
For J = 1 To 1
enviar "Y" + Text3.Text
For L = 1 To 100000
Next
Next
End Sub
------------------------------------------------------------------------------------------Private Sub Command22_Click()
For J = 1 To 1
enviar "X" + Text4.Text
For L = 1 To 100000
Next
Next
End Sub
-------------------------------------------------------------------------------------------
Private Sub Command3_Click()
If ENCENDIDO = "ON" Then
Text9.BackColor = &HFF00&
If CONTROL_TEMPERATURA = "MANUAL" Then
For J = 1 To 1
enviar "VT1"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command4_Click()
99
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
If ENCENDIDO = "ON" Then
Text9.BackColor = &HFF&
If CONTROL_TEMPERATURA = "MANUAL" Then
For J = 1 To 1
enviar "VT0"
For L = 1 To 100000
Next
Next
End If
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Command5_Click()
Text18.Text = Text4.Text
End Sub
------------------------------------------------------------------------------------------Private Sub Command6_Click()
Text19.Text = Text4.Text
End Sub
------------------------------------------------------------------------------------------Private Sub Command7_Click()
Text20.Text = Text4.Text
End Sub
------------------------------------------------------------------------------------------Private Sub Command8_Click()
Text21.Text = Text4.Text
End Sub
------------------------------------------------------------------------------------------Private Sub Command9_Click()
Text22.Text = Text4.Text
End Sub
100
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
------------------------------------------------------------------------------------------Private Sub Form_Load()
abrirPuerto
End Sub
---------------------------------------------------------------------------------------------PARA ABRIR PUERTO DE COMUNICACION
--------------------------------------------------------------------------------------------Public Sub abrirPuerto()
On Error GoTo mierror
If Not MSComm1.PortOpen Then
MSComm1.CommPort = 1
MSComm1.Settings = "38400,n,8,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
Else
MsgBox ("Puerto COM 1 está abierto"), , "Puerto de Comunicaciones Serial"
End If
Exit Sub
mierror:
MsgBox "Número de Puerto NO VALIDO", vbInformation
numeroPuerto = CInt(InputBox("Escriba el número de Puerto de Comunicación",
"Puerto de Comunicación", "1"))
abrirPuerto
End Sub
------------------------------------------------------------------------------------------Public Function leer() As String
If MSComm1.InBufferCount <> 0 Then
st = MSComm1.Input
Else
101
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
End If
End Function
------------------------------------------------------------------------------------------Private Sub Timer1_Timer()
Dim dato As String
leer 'lee el contenido del puerto serial
If st <> "" Then
dato = Mid(st, 1, 1)
If dato = "T" Then Text2.Text = Mid(st, 2, 5)
If dato = "H" Then Text1.Text = Mid(st, 2, 5)
End If
Text3.Text = HScroll1.Value
Text4.Text = HScroll2.Value
Label1 = Date$ + " " + Time$
End Sub
------------------------------------------------------------------------------------------Public Function enviar(cadenaSalida As String)
On Error GoTo mierror
Dim i As String
If MSComm1.PortOpen = False Then
MsgBox "El Puerto está cerrado, ábralo "
Else
MSComm1.Output = cadenaSalida & Chr(&HD)
If MSComm1.InBufferCount <> 0 Then
i = MSComm1.Input
End If
End If
Exit Function
mierror:
MsgBox "Error Inesperado con el Puerto"
102
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
End Function
---------------------------------------------------------------------------------------------PARA EL CONTROL SEMANAL DE TEMPERATURA
--------------------------------------------------------------------------------------------Private Sub Timer2_Timer()
If ENCENDIDO = "ON" Then
Text32.BackColor = &HFF00&
If Date$ = Text13.Text And Time$ = Text33.Text Then
For J = 1 To 1
enviar "X" + Text18.Text
For L = 1 To 90000000
Next
Next
End If
If Date$ = Text14.Text And Time$ = Text34.Text Then
For J = 1 To 1
enviar "X" + Text19.Text
For L = 1 To 90000000
Next
Next
End If
If Date$ = Text15.Text And Time$ = Text35.Text Then
For J = 1 To 1
enviar "X" + Text20.Text
For L = 1 To 90000000
Next
Next
End If
103
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
If Date$ = Text16.Text And Time$ = Text36.Text Then
For J = 1 To 1
enviar "X" + Text21.Text
For L = 1 To 90000000
Next
Next
End If
If Date$ = Text17.Text And Time$ = Text37.Text Then
For J = 1 To 1
enviar "X" + Text22.Text
For L = 1 To 90000000
Next
Next
End If
If Date$ = Text23.Text And Time$ = Text38.Text Then
For J = 1 To 1
enviar "X" + Text24.Text
For L = 1 To 90000000
Next
Next
End If
If Date$ = Text39.Text And Time$ = Text40.Text Then
ENCENDIDO = "OFF"
Text32.BackColor = &HFF&
For J = 1 To 1
enviar "OFF"
'For L = 1 To 900000000
104
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
Next
End If
---------------------------------------------------------------------------------------------PARA EL FIN DEL PROCESO
---------------------------------------------------------------------------------------------
If ENCENDIDO = "OFF" Then
Text32.BackColor = &HFF&
For J = 1 To 1
enviar "OFF"
For L = 1 To 900000000
Next
Next
End If
End If
End Sub
------------------------------------------------------------------------------------------Private Sub Timer3_Timer()
enviar "LILI"
End Sub
-------------------------------------------------------------------------------------------
105
UNIVERSIDAD POLITÉCNICA SALESIANA
FACULTAD DE CIENCIAS TÉCNICAS
ESCUELA DE INGENIERIA ELECTRICA
____________________________________________________________________
4.6 ENSAYOS Y PRUEBAS:
1.- Primeramente se realizaron ensayos y pruebas del sensor SHT15 para saber si los
valores de temperatura y humedad que teníamos en el ambiente eran los correctos,
los valores del sensor lo veíamos en el LCD.
2.- Armamos el modulo de control en el proto-board para ver su funcionamiento, el
control de la temperatura lo iba a ser con 4 focos dicroicos de 100W pero al
momento de tratar de subir la temperatura esta no variaba mucho ya que máximo
subía unos 6 grados centígrados en un tiempo de 10 minutos ya que la maqueta es de
1.05 x 0.60 m, con un alto de 0.60m, lo cual era muy poco para lo que necesitábamos
en el galpón, por lo que se opto poner una niquelina de 600W para controlar la
temperatura y dos niquelinas en paralelo de 500W para poder simular la humedad
relativa y por el amperaje que esto representa colocamos dos reles de estado sólido
ya que el control que estamos haciendo es un control ON/OFF con lo cual vamos a
tener gran numero de conmutaciones, utilizamos uno para el control de la
temperatura y el otro para la humedad.
3.- Luego diseñe el circuito impreso en el programa ARES 6 Professional, con lo
cual tuvimos que soldar bien los elementos ya que a veces no funcionaba debido a
algunas sueldas frías que hubieron.
4.- Cuando el modulo de control estuvo funcionando correctamente realizamos las
pruebas desde la PC con el cual me di cuenta que la humedad relativa simulada por
el calefactor variaba mucho, por cuanto opte por colocar otro calefactor en paralelo,
luego de estos cambios se mejoro el control de la humedad y no tuvimos mas
inconvenientes.
106
Descargar