Beruflich Dokumente
Kultur Dokumente
Presentado por:
Presentado a:
Henry Borrero
Tutor
Ingeniería Electrónica
Cead Acacias
2019
Contenido
Definición del problema ......................................................................................................... 3
Justificación ............................................................................................................................ 4
Marco teórico .......................................................................................................................... 5
Estado de arte.......................................................................................................................... 7
Objetivos............................................................................................................................... 13
Posibles soluciones ............................................................................................................... 14
Solución seleccionada y justificación ................................................................................... 15
Cronograma .......................................................................................................................... 16
Recursos ............................................................................................................................... 17
Diseño de la solución ............................................................................................................ 18
Especificaciones Técnicas ................................................................................................ 18
Planos ................................................................................................................................ 26
Algoritmos (Diagrama de bloques y/o código) ................................................................. 28
Link de video explicativo de la simulación .......................................................................... 37
Conclusiones......................................................................................................................... 38
Referencias ........................................................................................................................... 39
Definición del problema
En la actualidad, por cuestiones del calentamiento global los cuales han generado cambios
climáticos abruzos, muchos tipos de cultivos por causa de estas condiciones, han tenido que
migrar a los invernaderos. Por este motivo, una de las alternativas es monitoreo de los
invernaderos para mejorar las condiciones en su humedad y temperaturas en forma remota,
mejorando la calidad de los cultivos.
Monitoreo
Invernadero
Un invernadero, estufa fría o invernáculo, es un lugar cerrado, estático y accesible a pie que
se destina al cultivo de plantas, tanto decorativas como huertícolas, para protegerlas del
exceso de frío en ciertas épocas del año. Habitualmente está dotado de una cubierta exterior
translúcida de vidrio o de plástico, que permite el control de la temperatura, la humedad y
otros factores ambientales, que se utiliza para favorecer el desarrollo de las plantas.
Arduino
Es una plataforma de creación de electrónica de código abierto, la cual está basada en
hardware y software libre, flexible y fácil de utilizar para los creadores y desarrolladores.
Esta plataforma permite crear diferentes tipos de microordenadores de una sola placa a los
que la comunidad de creadores puede darles diferentes tipos de uso.
El software libre son los programas informáticos cuyo código es accesible por
cualquiera para que quien quiera pueda utilizarlo y modificarlo. Arduino ofrece la
plataforma Arduino IDE (Entorno de Desarrollo Integrado), que es un entorno de
programación con el que cualquiera puede crear aplicaciones para las placas Arduino, de
manera que se les puede dar todo tipo de utilidades.
El resultado fue Arduino, una placa con todos los elementos necesarios para conectar
periféricos a las entradas y salidas de un microcontrolador, y que puede ser programada
tanto en Windows como macOS y GNU/Linux. Un proyecto que promueve la filosofía
'learning by doing', que viene a querer decir que la mejor manera de aprender es
cacharreando.[3]
Labview
Sensor
Desde un punto de vista más técnico, un sensor es un dispositivo que traduce los
parámetros o eventos en el mundo físico a señales que pueden ser medidas y analizadas.
Estos sensores también suelen ser comúnmente llamados transductores, los que a menudo
son utilizados para convertir energía de una forma a otra. Un sensor, entonces, es un tipo de
transductor que convierte energía del mundo físico a energía eléctrica, que puede ser pasada
a un sistema computacional o controlador. Existen redes de sensores inalámbricos que
incluyen actuadores que les permiten controlar directamente el mundo físico. Por ejemplo,
un actuador puede ser una válvula de control del flujo de agua caliente, un motor que abre o
cierra una puerta, o una bomba que controla el nivel de combustible inyectado en un motor.
Estado de arte
FOSS tiene la ventaja de que el código está abiertamente disponible para modificaciones y,
a menudo, también es gratuito. En el pasado, la personalización del software ha sido mucho
más fácil que el equipo de construcción personalizada, que a menudo puede ser bastante
costoso porque la fabricación requiere las habilidades de maquinistas, sopladores de vidrio,
técnicos o proveedores externos. Sin embargo, el paradigma de código abierto ahora
permite la creación de hardware científico de código abierto al combinar la impresión
tridimensional (3D) con microcontroladores de código abierto que se ejecutan en FOSS.
Estos desarrollos se ilustran a continuación con varios ejemplos de fabricación de equipos
que pueden cumplir mejor con especificaciones particulares a costos generales
sustancialmente más bajos. [5]
Este proyecto puede tener diferentes soluciones y voy a ir enumerando cada una de ellas de
más fácil a más difícil.
Con Arduino UNO o alguna placa parecida, que no tenga conexión a Internet podemos
hacer un datalogger. Consiste en ir almacenando la información en una memoria para luego
recuperar esa información e interpretarla.
Ya hablé de memoria de Arduino y cómo debíamos tratar este tema en un capítulo anterior.
El principal problema es que la memoria es muy reducida y necesitamos una memoria
externa. Existen componentes que nos permiten guardar datos en una tarjeta de memoria
SD. Por menos de 2€ puedes encontrar un componente con esta capacidad.
Una segunda opción sería utilizar una placa con WiFi o poner un shield WiFi o Ethernet a
un Arduino UNO o MEGA. Recomiendo una placa con WiFi integrada como Arduino
MKR1000 o alguna basada en el ESP8266 o ESP32.
El mayor inconveniente que tienen estas placas es que debes tener un punto de acceso a
Internet relativamente cerca para enviar los datos. Existe otra opción, crear una red local en
el invernadero y con una Raspberry Pi almacenar los datos.
La última opción sería utilizar una placa que conecte con redes LPWAN. Dependiendo de
la cobertura que tengas en tu zona, deberás utilizar SigFox o LoRa.
Como ves, no hay una solución única para un proyecto, existen diferentes caminos y sólo
depende de nosotros coger uno u otro. [6]
Del invernadero inteligente, que cuenta con la más moderna tecnología de fertirriego en el
país, se espera que permita mejorar hasta cinco veces la producción en cultivos como el del
tomate, que será la primera plantación a trabajar.
La empresa Viveros de Chiles Hot S.A. de C.V., ubicada en Ciudad Jiménez, en el Estado
de Chihuahua, requirió optimizar su tecnología. Esta empresa cuenta con experiencia en la
producción de hortalizas bajo el sistema de invernadero.
En la integración final del sistema, se diseñó un sistema general para el control del
invernadero integrando las plataformas de hardware y software de National Instruments. Lo
más difícil de resolver fue la distribución de sensores por zonas tanto de humedad relativa
en el invernadero. [8]
Primero que nada, tenemos que configurar el puerto serial, esto lo hacemos con el módulo
de VISA que es el controlador de el puerto de comunicación serial a través del USB en la
computadora. Este se instala aparte, puedes revisar en este enlace como
descargarlo. http://www.ni.com/visa/
La configuración de VISA es automática, podemos dejar todos los parámetros en default y
solo generar el controlador para el parámetro «Visa Resource Name» que es el indicador
del COM para este ejemplo de comunicación Arduino LabVIEW.
Vamos a leer los caracteres del serial con el VISA Read y los vamos a mostrar en un
indicador (Además vamos a guardar la información en un archivo). Esta es una parte
importante de la comunicación Arduino LabVIEW. También vamos a poner un retardo para
gestionar el control del flujo de datos. Posteriormente, vamos a escribir los comandos de
Usuario, Password y Comando (Revisar la parte de Arduino). Notese que estos están en
función a un ciclo de control Switch Case. El cual está controlado por cada iteración del
ciclo While.
Es importante destacar, que no sabemos cuántos caracteres vamos a recibir, es por esto, que
necesitamos un módulo que no de esta información. En LabVIEW es una de las salidas del
VISA Property Node, en donde vamos a llamar la función de Number of Bytes at Serial
Port, la cual nos dará cuantos bytes disponibles hay. Arduino LabVIEW. [9]
Objetivos
Objetivo principal
Objetivos específicos
Se escoge la propuesta 2, para la posible solución del problema planteado, cual dice:
Se escoge esta posible solución, ya que el software Labview es fácil de manejar y hemos
tenido ya interacción con este. De acuerdo con las investigaciones hechas, hay una forma
de enlace entre Labview y arduino, permitiendo que el desarrollo del monitoreo se logre.
Además, Labview, nos permite realizar figuras para referirnos a los instrumentos,
generando la pantalla de monitoreo. Se puede generar el enlace del arduino con los
instrumentos, y este con el Labview, permitiendo el monitoreo en tiempo real.
Para el algoritmo que se debe desarrollar, se creara de acuerdo con las necesidades
solicitadas para el monitoreo de la temperatura y humedad del invernadero.
Cronograma
-Valvula Solenoide 1/2 Magnética Eléctrico Agua Aire N/c 12v: $ 48.500
Diseño de la solución
Especificaciones Técnicas
No Instrumento/ Marca/Mo Rango Opera / Apreciación Imagen del Sensor Otras Características
Elemento delo
Instrumentos y elementos de Sensado y adquisición de datos
1 Controlador o PLC Arduino / La Arduino Uno es una Board Características:
UNO basada en un microcontrolador
Atmega328. Tiene 14 pines de Microcontrolador: ATmega328
entrada/salida digital (de los Voltaje Operativo: 5v
cuales 4 pueden ser utilizados Voltaje de Entrada (Recomendado):
para salidas PWM), 6 entradas 7 – 12 v
análogas, un resonador Pines de Entradas/Salidas Digital: 14
cerámico de 16 MHz, un (De las cuales 6 son salidas PWM)
conector para USB tipo hembra, Pines de Entradas Análogas: 6
un Jack para fuente de Poder, Memoria Flash: 32 KB
un conector ICSP y un botón Ilustración 1. Placa Arduino UNO. (ATmega328) de los cuales 0,5 KB
reset. es usado por Bootloader.
SRAM: 2 KB (ATmega328)
EEPROM: 1 KB (ATmega328)
Velocidad del Reloj: 16 MHZ.
2 Sensor de LM35 El LM35 es un circuito Características:
Temperatura electrónico sensor que puede
medir temperatura. Su salida es Resolución: 10mV por cada grado
analógica, es decir, te centígrado.
proporciona un voltaje Voltaje de alimentación. Por
proporcional a la temperatura. ejemplo, esté sensor se puede
El sensor tiene un rango desde alimentar desde 4Vdc hasta 20Vdc.
−55°C a 150°C. Su popularidad Tipo de medición. Salida analógica.
se debe a la facilidad con la que Numero de pines: 3 pines, GND,
se puede medir la temperatura. Ilustración 2. Sensor de Temperatura VCC y VSalida.
Incluso no es necesario de un LM35 No requiere calibración.
microprocesador o Tiene una precisión de ±¼°C.
microcontrolador para medir la
Esta calibrado para medir °C.
temperatura. Dado que el sensor
Consumo de corriente: 60 μA
LM35 es analógico, basta con
Empaquetados comunes:
medir con un multímetro, el
- TO-CAN.
voltaje a salida del sensor.
- TO-220.
- TO-92.
Para convertir el voltaje a la
- SOIC8.
temperatura, el LM35
proporciona 10mV por cada
grado centígrado. También cabe
señalar que ese sensor se puede
usar sin offset, es decir que si
medimos 20mV a la salida,
estaremos midiendo 2°C.
3 Contador de Arduino / La librería Time la desarrollo Características:
tiempo para el UNO Arduino, aunque no viene por
proceso de defecto en el IDE de Arduino. Microcontrolador: ATmega328
notificación. Para usarla solo hay que Voltaje Operativo: 5v
instalarla según el Voltaje de Entrada (Recomendado):
procedimiento normal de 7 – 12 v
instalación de librarías. En esta Pines de Entradas/Salidas Digital: 14
librería lo primero que se hace (De las cuales 6 son salidas PWM)
es declarar un tipo especial de Pines de Entradas Análogas: 6
variable llamada time_t de 32 Memoria Flash: 32 KB
bits. Esta variable es la Ilustración 3. Placa Arduino UNO (ATmega328) de los cuales 0,5 KB
responsable de que todo es usado por Bootloader.
funcione. El principio
SRAM: 2 KB (ATmega328)
fundamental de funcionamiento
EEPROM: 1 KB (ATmega328)
de esta librería es que la
Velocidad del Reloj: 16 MHZ.
variable time_t almacena en un
formato especial los segundos
transcurridos desde el 1 de
enero de 1970 hasta hoy. Este
método es el mismo que usa
sistemas operativos basados en
Linux. Las conversiones son
automáticas, por lo que no hay
que complicarse haciendo
cálculos largos y complejos. La
ventaja principal de manejar
esta librería es que al convertir
la fecha y la hora en un número
de segundos, podemos operar
libremente con este número,
resta o sumando fechas y horas
y el resultado seguirá siendo
una fecha y una hora.
4 Sensor de Higrómetro Un higrómetro de suelo FC-28 El esquema eléctrico es sencillo.
Humedad FC-28 es un sensor que mide la Alimentamos el módulo conectando
humedad del suelo. Son GND y 5V a los pines correspondientes
ampliamente empleados en de Arduino. Ahora si queremos usar la
sistemas automáticos de riego lectura analógica, conectamos la salida
para detectar cuando es A0 a una de las entradas analógicas de
necesario activar el sistema de Arduino.
bombeo. l FC-28 se distribuye
con una placa de medición Ilustración 4. Sensor de Humedad FC-
estándar que permite obtener la 28.
medición como valor analógico
o como una salida digital,
activada cuando la humedad
supera un cierto umbral. Los
valores obtenidos van desde 0
sumergido en agua, a 1023 en el
aire (o en un suelo muy seco).
Un suelo ligeramente húmero
daría valores típicos de 600-
700. Un suelo seco tendrá
valores de 800-1023. Para
acondicionar la señal sensada,
este módulo cuenta con el chip
LM393 y un arreglo de
resistencias que permiten tener
un rango de 0V a 5V para la
interpretación de los binarios en
la placa Arduino hasta 1023
correspondiente a 2^10, éste
valor es condicionado a la
conversión porcentual para ser
visualizada en un LCD
conectado de igual forma y
acondicionado para tal fin.
La salida análoga AO se
conectó mediante una interfaz
hacia la placa Arduino, allí se
llevó a cabo el proceso de
adquisición de la señal
acondicionada mediante el
LM393 de la Board (Incluida en
el módulo) y el código de
funcionamiento para medir el
porcentaje de la humedad del
suelo presente.
5 Módulo Ethernet ENC28J60 El Módulo Ethernet ENC28J60 Módulo ENC28J60 / Arduino Uno
es popular por su bajo costo, si
bien esta desarrollado por VCC / Pin 3.3V
Microchip, existen librerías
para hacerlo trabajar con GND / Pin GND
Arduino, consume mucha más
memoria que el Ethernet Shield, SS (CS) / Pin 10
pero para aplicaciones básicas
es muy útil. Existe gran Ilustración 5. Módulo Ethernet MOSI (SI) / Pin 11
información y ejemplos de este ENC28J60
módulo en la red, así como MISO (SO) / Pin 12
diferentes librerías, para este
tutorial utilizaremos una de las SCK / Pin 13
librerías más usadas, la librería
Ethercard.
6 Sistema de SERVIDO Al almacenar y compartir SERVIDOR DELL PowerEdge T30
Cómputo o R DELL información en un servidor, el (T301E30811T1CO)
Servidor. PowerEdge PowerEdge T30 lo ayuda a
T30 y sus mejorar el acceso a la Procesador: Intel Xeon E3-1225 v5,
accesorios información, a simplificar los 3,3 GHz
de procesos y a hacer más en memoria caché de 8 M, 4 C/4 T, turbo
visualizaci menos tiempo. Supere la (80 W), *Memoria: 8GB DDR4 ECC
ón y complejidad de los datos y las UDIMM 2133 (soporta hasta 64 GB),
control aplicaciones. Organícese en un *Puertos de Red: LAN Ethernet
locales, servidor T30 central: 10/100/1000 Intel I219-LM Gigabit, 1
tales como puerto,
pantalla, Elimine los datos, las imágenes *Disco Duro: 1024Gb (1TB) 7.2K
mouse, y los videos extraviados y RPM 3.5" SATA 6Gbps Not HotSwap,
teclado, perdidos por compartir archivos (Hasta 6 discos duros SATA en total, 4
etc. mediante medios extraíbles. discos duros SATA de 3,5 in y 2 discos
Ilustración 6. Servidor control de
Los usuarios pueden colaborar duros SATA adicionales de 2,5 in con
datos.
y compartir archivos con un kits de expansión y tarjeta controladora
almacenamiento de archivos opcional) (RAID Level RAID 0, RAID
central, lo que evita los 1, RAID 5, RAID 10),
inconvenientes de tener muchas *Unidad de DVD: SATA DVD +/-
copias y versiones de archivos RW,
distribuidas entre varios *Ranuras de Expansion: 1 PCIe x 16
usuarios. 3.0, 1 PCIe x16 3.0 (velocidad x4), 1
PCIe x4 3.0,1 PCI,
Consolide los datos, las *Fuente de alimentación: 1 x 290 W,
imágenes y los videos
almacenados en varios medios
y tipos de medios en varias
ubicaciones. Con la capacidad
de almacenamiento de un
servidor, puede almacenar de
manera centralizada los datos
de usuario y organizar las pilas
de DVD, unidades USB y
discos duros externos.
7 Internet o Equipos de Se emplean para trasladar el A través del enlace de comunicaciones
Conexión remota Comunicac servicio de telemetría y datos de con el radio Slave que se encuentra
ión tales control de los instrumentos a ubicado en la caja de control el cual
como través de la red con acceso interconecta la tarjeta Ethernet de
Switch, remoto como escritorios o Arduino y transporta los datos hacia un
Módem, conexión de TCP/IP públicas a cuarto de control donde se encuentra la
Router, través de una red usando Ilustración 7. Sistema de conexión a Internet, allí se conectan
Canal de internet o mediante el uso de comunicaciones y control de datos. mediante el protocolo de red usado por el
Internet redes privadas o VPN para operador de Internet, los equipos para
acceso remoto al sistema de que los datos sean transportados a través
control de ese canal y tengan visualización
remota, de acuerdo al requerimiento del
cliente.
8 Conexiones, Sistema de El sistema de conexionado de Sin especificar.
cableado, generación Instrumentación se hace
terminales y solar a mediante el cable
suministros través de THHN/THWN-2TC SR 600V
eléctricos paneles, 90°C con Pantalla en Cinta Ilustración 8. Cable de
baterías y Aluminizada y Conductor de Instrumentación.
controlador Drenaje, que permite la
as, cable de confiabilidad y reduce perdidas
Instrument en el transporte e interconexión
ación de los instrumentos con la caja
THHN/TH de control donde se ubica el
WN-2TC Arduino y el canal de
SR 600V comunicaciones y control, el
90°C con cable FTP permite realizar las
Pantalla en conexiones de red tanto Ilustración 9. Cable FTP para redes de
Cinta externas como internas, el comunicación.
Aluminizad sistema de generación de
a y energía mediante paneles
Conductor solares permite que los equipos
de Drenaje sean autosuficientes en la
para la alimentación eléctrica sin usar
conexión conexiones alternas de red y
de los reduciendo costos.
elementos, Ilustración 10. Sistema de generación
cable eléctrica solar fotovoltaica.
Ethernet
FTP Cat. 6
para
conexiones
de red.
Planos
-Montaje de monitoreo en Labview
- Diagrama de bloques
//libreria de LCD
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//variables de temperatura
int temp_pin = A1;
int datolm35;
int temperatura;
// variable de dispositivos
int agua = 13;
int ventilador = 9;
int temp_min;
int temp_max;
int fan_speed;
void setup() {
// put your setup code here, to run once:
//sensor 1 humedad
for (int thisReading = 0; thisReading < numReadings; thisReading++)
{
readings[thisReading] = 0;
}
}
void loop() {
// put your main code here, to run repeatedly:
//lectura de humedad
total = total - readings[readIndex];
readings[readIndex] = analogRead(humedad_pin_analogico);
total = total + readings[readIndex];
readIndex = readIndex + 1;
if (readIndex >= numReadings)
{
readIndex = 0;
}
// calcula el promedio
average = total / numReadings;
Serial.print("|");
// calculo de la temperatura
datolm35 = analogRead(temp_pin);
temperatura = (500.0 * datolm35) / 1023;
// imprime la informacion de temperatura en el puerto serial
Serial.print(temperatura);
/*control de humedad
esto enciiende y apaga la bomba de agua
mediante el pin digital del sensor*/
/*
if (digitalRead(humedad_pin_digital) == LOW)
{
digitalWrite(agua, LOW);
} else {
digitalWrite(agua, HIGH);
}
*/
//si se desea ocupar el pin analogico para el control
if (porcentaje < 70) // cambiar numero en dependencia de que tan humedo queremos
{
digitalWrite(agua, HIGH);
} else {
digitalWrite(agua, LOW);
}
/*control de temperatura
esto enciende y apaga el ventlador*/
if (temperatura < 30)//cambiar numero en dependencia de la temp que se desee
{
digitalWrite(ventilador, LOW);
} else {
digitalWrite(ventilador, HIGH);
}
https://youtu.be/8gu5E1CJ-1Q
https://youtu.be/4GibSrn2dsQ
Conclusiones
3. YÚBAL FM , Qué es Arduino, cómo funciona y qué puedes hacer con uno, 21 Julio
2018Actualizado 3 Agosto 2018, URL: https://www.xataka.com/basics/que-arduino-
como-funciona-que-puedes-hacer-uno
6. Luis del Valle, #130 Monitorizar temperatura en invernaderos con Arduino y más
preguntas, 2017, URL: https://programarfacil.com/podcast/temperatura-humedad-
arduino/
12. Leantec, A. (2015). Como medir el tiempo con Arduino y la librería Time. |
Leantec.ES. Recuperado de: https://leantec.es/como-medir-el-tiempo-con-arduino-y-la-
libreri/
13. Llamas, L. (2016). Medir la humedad del suelo con Arduino e higrómetro FC-28.
Recuperado de: https://www.luisllamas.es/arduino-humedad-suelo-fc-28/