Documente Academic
Documente Profesional
Documente Cultură
Diseo de Hardware
Una vez realizado el diseo general del sistema para tener una vision mas amplia del comportamiento
del sistema, se realizo un diseo en detalle del mismo empezando por el hardware. El hardware se
realizo usando UML y la herramienta de simulacion Proteus. Con UML se obtiene un modelo de la
posicion y el desempeo de los elementos que conforman el hardware, mientras que con el Proteus se
realiza la conexion y operacion de los elementos como si se tuvieran fisicamente. Los requisitos del
hardware son:
a) Que tenga conexin serial (RS232 o USB- Serie)
b) Que use un microcontrolador potente, con suficientes entradas y salidas digitales.
c) Que se puedan manejar diversos dispositivos electrnicos con l.
d) Que pueda comunicarse con sensores de humedad y temperatura presentes en el invernadero.
e) Que permita la interaccion dinamica entre la aplicacion alojada en el servidor y el
microcontrolador.
f) Que pueda manejar funciones de hora y calendario.
g) Que los elementos a usar para el diseo tengan un costo adecuado de inversion y sean
compatibles con el paquete de simulacion Proteus.
Para lograr cumplir con estos requisitos, y como ya se especifico en el diseo global, se investigo entre
las diversas opciones de placas prefabricadas resultando como mejor opcion el Arduino Uno Rev. 3.
Este Arduino posee un microcontrolador ATmega328, este es un integrado economico de gran
rendimiento, disponible y viene incluido con la placa. El Atmega328 es un circuito integrado de alto
rendimiento que esta basado un un microcontrolador RISC ( ), utiliza una memoria ISP de 32 KB flash
con la capacidad de leer mientras escribe, 1 KB de memoria EEPROM, 23 pines de entradas y salidas
de propsito general, programador de modo USART y una interfaz serial orientada a byte de 2 cables
con SPI puerto serial. El dispositivo opera entre 1.8 y 5.5 voltios. Este microcontrolador cumple con los
requisitos del diseo y se ajusta a las especificaciones de potencia y economia, ademas de estar
disponible en el paquete de simulacin Proteus. En la figura N*XX se muestra el diagrama de pines de
este microcontrolador.
En la figura N*X (plano de dispositivos) se muestra un plano del funcionamiento y ubicacion de cada
dispositivo periferico que debe estar presente en el invernadero para su control y monitorizacion.
Utilizando el plano se obtuvo una visin precisa de los procesos y la interaccion que tiene la placa con
los instrumentos en el invernadero, de manera que el programa almacenado en el sistema Arduino
estar asociado con la medicin de variables en el proceso y el encendido de dispositivos que controlen
las mismas.
Figura N X: Arduino.
Fuente: Arduino.CC
Sin embargo, para efectos de simulacin dentro del paquete Proteus, utilizaremos un conector serial
DB9, este conector emula una conexin con protocolo RS232 hacia el servidor, permitiendo recibir al
Arduino las instrucciones del sistema y realizar las acciones correspondientes. El conector DB9 se
utiliza principalmente para conexiones en serie, ya que permite una transmisin asncrona de datos
segn lo establecido en la norma RS-232 (RS-232C). Este conector anteriormente se conoca con el
nombre DE-9 y pertenece a la familia de conectores D-Subminiatures. En la figura XX se muestra la
imagen del conector DB9 dentro del Proteus.
Una vez empezado este diseo, se investig acerca de unos dispositivos que permitieran manejar
cantidades pequeas y grandes de corriente, para ello se elabor el cuadro comparativo NX, y
resultando como dispositivo ideal para que se lograra este propsito el ULN2803, este dispositivo es
mejor conocido como un driver con capacidad de carga de corriente pico de 600ma (500ma cc) y
pueden trabajar hasta 30v en corriente continua. Su propsito es recibir el comando desde el
microcontrolador y transformar la seal correspondiente a ese comando. Dentro del ULN2803 se
encuentran 8 transistores NPN Darlington. Es un circuito integrado ideal para ser empleado como
interfaz entre las salidas de un microcontrolador y dispositivos que necesiten una corriente ms elevada
para funcionar, como por ejemplo, un rel. Todas las salidas de este integrado este compuesto por un
diodo para evitar corrientes inversas. En la figura XX los pines que llevan la letra (B) son pines de
entrada los cuales servirn para conectarse con el Arduino, y los pines que llevan la letra (C) son pines
de salidas, ellos se conectan a una serie de rels.
Dispositivo
Dispositivos
controlables
Carga de corriente
Pico
Simulable en
Proteus
Precio
ULN2803
500ma cc
Si
BsF 46,99
ULN2003
500ma cc
No
BsF 32,00
ULN2004
800ma cc
Si
BsF 58,00
En el diseo realizado se utilizan tres rels (ver figura N*X) (plano de dispositivos) para manipular los
distintos elementos que interactuan en el proceso. Para seleccionar los rels utilizados se construyo una
matriz de comparacion entre varios dispositivos y asi tomar una decision optima. Se usaron relevadores
SPDT de 5V modelo JZC-11F con contactos de 1A a 5A. El primer rele (P1) es utilizado para el
encendido y apagado del extractor que estar presente en el invernador, el segundo rele (P2) estara
conectado a la bomba principal del suministro de agua y a su vez a una electrovalvula que controlar el
flujo de liquido a los canales de riego por goteo y un ultimo rel (P3) manipula una electrovalvula que
controla el paso de agua para el llenado del tanque utilizado como fuente para el riego. Para efectos de
la simulacion en Proteus, la bomba y el extractor son expresados como motores mientras que las
electrovalvulas son bombillas, esto para que se pueda apreciar la interaccin del sistema de control con
los distinto perifericos.
Dispositivo
Corriente de Carga
Voltaje de
Operacion
Simulable en
Proteus
Precio
S108T02
8A
1.2VdC
Si
BsF 380,00
JZC-11F
1 5A
5VdC
Si
BsF 65,00
JZC- 32F
15A
12VdC
Si
BsF 78,00
Una de las labores principales del sistema central de control es la de monitoreo de las condiciones
climaticas dentro del invernadero, para lo que se incluyo dos sensores de temperatura y humedad
relativa. Se construyo una matriz de comparacion entre tres sensores capaces de medir temperatura y
humedad en el ambiente y fue seleccionado el sensor DHT-22 como la alternativa mas favorable. Estos
sensores costan de 3 pines, dos de alimentacion y uno de transmision de datos que va conectado a una
entrada digital del Arduino. A continuacion se muestran imagenes del DHT-22 y su vista en el
simulador Proteus.
Dispositivo
Rango de medicion
Precision
Simulable en
Proteus
Precio
DHT-11
0 a 50 C
20 a 80 %HR
2C
5% HR
Si
BsF 320,00
DHT-21
0 a 80 C
0 a 100 %HR
1C
5% HR
No
BsF 735,00
DHT- 22
-40 a 80 C
0 a 100 %HR
0,5 C
2% HR
Si
BsF 750,00
Figura N X: DHT-22.
Fuente: Sparkfun Electronics.
Dadas la naturalezas de las acciones a controlar, especficamente la del riego, se incluyo un integrado
que proporciona al Arduino de reloj y calendario para informar a la placa sobre la percepcin del
tiempo. Se construy una matriz de comparacin entre distintos relojes en tiempo real para determinar
un dispositivo ptimo que cumpla con esta tarea. Se utiliz un reloj en tiempo real modelo DST- 1307,
el cual posee caractersticas ideales para este diseo como son, la utilizacin de bus I2C de
comunicacin (lo que limita la cantidad de pines utilizados del Arduino para esta funcin a solo dos),
alimentacin externa de 3V para mantener el reloj en funcionamiento. Para la interaccin entre el RTC
(Reloj en Tiempo Real) al Arduino se conecta el pin A4 del Arduino al SDA del DST-1307 y el A5 al
SCL, sumado a esto se coloco un cristal oscilador a una frecuencia de 32.768 kHz entre los pines X1 y
X2. A continuacion se muestra el DST-1307 y sus vistas en Proteus, al igual que la conexion con la
placa Arduino.
Dispositivo
Precision
Simulable en
Proteus
Precio
DST-1307
Reloj hh:mm:ss
Calendario Dd/Mm/YYYY
Si
BsF 340,00
DS-1302
Reloj hh:mm:ss
No
No disponible en
Venezuela
A continuacin se muestra el diseo del controlador central realizado en UML y posteriormente se pas
al diseo del equipo en el simulador Proteus.
Como se observa en la figura anterior, se incluy un dipswitch al diseo solo con la intencin de
simular los estados del tanque que suministra agua para el riego a manera de emular un sensor flotador
de contacto. Se colocaron dos sensores, uno para medir el nivel maximo del tanque y otro para el
minimo. La funcion del flotador es enviar un pulso al Arduino cuando el agua este al nivel maximo
para cerrar la electrovalvula y, en caso contrario, abrirla cuando este por debajo del nivel minimo. A
continuacion una imagen del dipswitch en el simulador Proteus.
El diseo se realiz colocando una terminal virtual del simulador Proteus, conectado a un pequeo
switch, este switch al colocar el pasador hacia arriba permite enviar los comandos desde el terminal
virtual, si se coloca el pasador hacia abajo la comunicacin se hace desde un terminal PuTTy de
Windows. Una terminal permite la comunicacin con dispositivos y enviarle cierta informacin para
que realice determinada accin.
En el caso de este diseo tanto la terminal virtual como la PuTTy se usan para pasarle los comandos
ASCII al sistema de control para que haga el encendido o apagado de los LEDS y los equipos. A
continuacin se muestra una imagen de la terminal virtual de Proteus amplificada y una imagen del
PuTTy. Ms adelante en la fase de simulacin se podr observar el funcionamiento del paso de
comandos desde cada terminal y cmo efecta el encendido y apagado de los equipos controlados.
Como se explic anteriormente el sistema trabajar con comandos de cdigo ASCII, el Terminal Virtual
de Proteus o el CuteCom de Linux se usan para escribir los comandos ASCII que sern interpretados
por el Arduino y realizar las acciones correspondientes, a continuacin se muestra un cuadro con los
diferentes comandos y las acciones que realiza cada uno de ellos.
SIMBOLO ASCII
Accin