ESPECIFICACIONES INICIALES MEGA 2560
Este es el modelo de arduino con el que vamos a intentar ir desarrollando el proyecto. De todas las especificaciones de la placa, vamos a resaltar algunas que vamos a tener presentes desde el principio:
- 54 DI/DO (Digital Input/Digital Output)
- 02-13 PWM (tienen posibilidad proporcionar salidas alimentadas) I/O: 5V-40mA
IMPORTANTE:
Estos pines pueden ser usados como AI/AO.
Hay que saber que aunque cada pin individual PWM está habilitado para ofrecer 40mA.Arduino agrupa la os pines tomando como restricción que ofrezcan a lo sumo 100mA(0,1,2,3,4) y 100mA(5,6,7,8,9,10,11,12,13). - 22-53 DIGITALES si alimentación. I/O: 5V-40mA/5V
- 16 AI (Analog Inputs)
- A01-A15
Pueden recibir voltajes en el rango 0-5V. La placa solo trabaja de forma digital, por lo que incorpora a cada canal un conversor analógico-digital de 10bits.
NOTA: los pines hembra AI pueden ser usados totalmente como DI/DO numerándose entonces como 14-28. - 4 TTL-UART (Puertos Serie por Hardware)
- (TX0,RX0),(TX1,RX1),(TX2,RX2),(TX3,RX3)
- Conexión USB,Conexión ICSP
- Botón RESET.
ALIMENTACIÓN
La placa Arduino Mega trabaja bajo un voltaje de 5V. Dicho voltaje podemos ofrecerlo de varias formas:
- USB: La forma más sencilla sera conectarlo al ordenador, a través de un puerto USB. El puerto controlará el voltaje a 5V y ofrecerá un consumo máximo de 500mA. En este caso la potencia máxima consumida por la placa no excederá de los 2,5W. En caso de ser sobrepasado el límite, la placa cuenta con un fusible reseteable que interrumpirá las comunicaciones hasta que desaparezca el motivo por el que se activó. Si se usa esta forma de alimentación, es clara la necesidad de calcular el consumo necesario, sobre todo en proyectos con elementos que consumen mucha potencia.
- FUENTE EXTERNA: Hablamos en este caso de alimentar la placa con un transformador AC/DC o con una batería. La conexión puede realizarse al conector tipo jack 2,1(Exterior-,Interior+) o a los bornes Vin(+) y GND(-) de la placa. En este caso la placa esta preparada para recibir un voltaje de 6-20V aunque lo recomendable es 7-12V. La placa ya se encarga de acomodar este sobrevoltaje a 5V.
Se debe saber que si la placa está conectada mediante el jack, el borne Vin ofrecerá 5V y 40mA, que pueden ser usados para alimentar algún elemento consumidor externo.
Idéntica funcionalidad tenemos en el borne llamado 5V.
El borne 3,3V ofrece este voltaje y un amperaje de 50mA.
Nuestro objetivo es controlar un huerto/invernadero. Tendremos que pensar que variables me gustaría controlar y buscar los posibles elementos que me posibiliten dicho control. Enumeremos las variables y posteriormente veremos que sensores, usaremos.
- Luminosidad o intensidad de luz que reciben las plantas.
- Temperatura del entorno.
- Temperatura dentro del huerto/invernadero.
- Humedad relativa del ambiente.
- Humedad del suelo.
- Nivel de liquido en depósitos, quizás abono, quizás agua...
El Lux Sensor TSL2561 es un sensor de
luz digital avanzada, ideal para utilizarse en un amplio rango de
aplicaciones. Comparado con las fotoceldas CdS de bajo costo, este
sensor es más preciso, permitiendo cálculos exactos de luz y puede ser
configurado sobre la marcha con diferentes rangos de ganancia para
detectar rangos de luz de hasta 0.1 . 40,000+. La mejor parte de este
sensor es que contiene diodos tanto en el espectro infrarrojo como en el completo. Esto
significa que permite realizar mediciones separadas de luz infrarroja y
de espectro completo o luz visible al ojo humano. La mayoría de los
sensores pueden detectar solo una de las dos.
El sensor tiene una interfaz digital
I2C. Puedes seleccionar una de las tres direcciones para que así puedas
tener hasta tres sensores en el microcontrolador, cada uno con una
dirección I2C diferente. El consumo de corriente es extremadamente bajo,
así que es perfecto para registro de datos de baja potencia (alrededor
de 0.5mA al detectar actividad y menos de 15uA en modo apagado).
Características:
- Se aproxima a la respuesta del ojo humano
- Medidas de iluminación precisas en diversas condiciones de luz
- Rango de temperatura: -30 to 80 *C
- Rango dinámico (Lux): 0.1 to 40,000 Lux
- Rango de voltaje: 2.7-3.6V
- Interfaz: I2C
- Esta tarjeta/chip utiliza direcciones I2C de 7-bits 0x39, 0x29, 0x49, seleccionable con jumpers.
SENSOR DE TEMPERATURA EXTERIOR TMP36
El TMP36 es el sustituto del LM335A y es un sensor de temperatura
analógico muy popular y sencillo de utilizar. Funciona como un diodo
Zener con un voltaje de corte proporcional a la temperatura absoluta con
un rango de 10mV/ºK. Conecta una resistencia desde 5V a GND y el sensor
te dará en su salida un voltaje que podrás medir con el ADC de tu
microcontrolador favorito y también con Arduino. La salida del sensor es
lineal por lo que no tendrás que hacer calculos de conversión. Puede
operar de -40ºC a 100ºC.
Para obtener un menor margen de error (típico de 1%), debes calibrar el sensor. Consulta el datasheet.
Características:
- Calibrado en grados Kelvin
- Funciona desde: 400 μA a 5 mA
- Impedancia: Menos de 1Ω
- Fácil calibración con pin de ajuste
- Temperatura de funcionamiento: -40 a 100 ºC
SENSOR DE HUMEDAD EN SUELO OCTOPUS
Sensor de
humedad Octopus, puede leer la humedad presente en el suelo que lo
rodea. Es un sensor de baja tecnología, pero ideal para monitorear un
jardín urbano, o el nivel de agua de sus plantas. Esta es una
herramienta indispensable para un jardín conectado!
Este sensor utiliza las dos sondas para pasar corriente a través del suelo, y luego lee la resistencia para obtener el nivel de humedad. Más agua hace que la electricidad circule por el suelo más fácilmente (menos resistencia), mientras que el suelo seco conduce la electricidad mal (mayor resistencia).
SpecificationEste sensor utiliza las dos sondas para pasar corriente a través del suelo, y luego lee la resistencia para obtener el nivel de humedad. Más agua hace que la electricidad circule por el suelo más fácilmente (menos resistencia), mientras que el suelo seco conduce la electricidad mal (mayor resistencia).
- Power supply: 3.3v or 5v
- Output voltage signal: 0~4.2v
- Current: 35mA
- Pin definition:
- Analog output(Yellow wire)
- GND(Black wire)
- Power(Red wire)
SENSOR DE TEMPERATURA y HUMEDAD INTERIOR DHT11
Los
sensores DHT11 nos permiten
medir la temperatura y la humedad. A diferencia de otros sensores, éstos
los tendremos que conectar a pines digitales, ya que la señal de salida
es digital. Llevan un pequeño microcontrolador interno para hacer el
tratamiento de señal.
¿Cómo funcionan?
Se componen de un sensor capacitivo para medir la
humedad y de un termistor. Están calibrados por lo que no
es necesario añadir ningún circuito de tratamiento de señal. Esto sin
duda es una ventaja porque nos simplifica las cosas en la protoboard.
Además, como los DHTxx han sido calibrados en laboratorios, presentan
una gran fiabilidad.
Funcionan con ciclos de operación de duración determinada de 1s. En este tiempo, el
microcontrolador externo (Arduino por ejemplo) y el microcontrolador que
lleva integrado el sensor, se hablan entre sí de la siguiente manera:
- El microcontrolador (Arduino) inicia la comunicación.
- El sensor responde estableciendo un nivel bajo de 80us y un nivel alto de 80us.
- El sensor envía 5 bytes.
- Se produce el handshaking.
A modo resumen, las características de cada uno de los sensores las resumimos en la siguiente tabla:
Parámetro | DHT11 |
Alimentación | 3Vdc ≤ Vcc ≤ 5Vdc |
Señal de Salida | Digital |
Rango de medida Temperatura | De 0 a 50 °C |
Precisión Temperatura | ±2 °C |
Resolución Temperatura | 0.1°C |
Rango de medida Humedad | De 20% a 90% RH |
Precisión Humedad | 4% RH |
Resolución Humedad | 1%RH |
Tiempo de sensado | 1s |
Tamaño | 12 x 15.5 x 5.5mm |
SENSOR DE NIVEL HC-SR04
El sensor de ultrasonidos se enmarca dentro de los sensores para medir
distancias o superar obstáculos, entre otras posibles funciones.
En este caso vamos a utilizarlo para la medición de distancias. Esto lo
consigue enviando un ultrasonido (inaudible para el oído humano por su
alta frecuencia) a través de uno de la pareja de cilindros que compone
el sensor (un transductor) y espera a que dicho sonido rebote sobre un
objeto y vuelva, retorno captado por el otro cilindro.
¿Qué recibimos en el sensor?
¿Cómo vamos a traducir dicho tiempo en distancia?
Aprovechando que la velocidad de dicho ultrasonido en el aire es de
valor 340 m/s, o 0,034 cm/microseg (ya que trabajaremos con centímetros y
microsegundos). Para calcular la distancia, recordaremos que v=d/t
(definición de velocidad: distancia recorrida en un determinado tiempo).
De la fórmula anterior despejamos d, obteniendo d=v·t, siendo v la
constante anteriormente citada y t el valor devuelto por el sensor a la
placa Arduino.
También habrá que dividir el resultado entre 2 dado que el tiempo recibido es el tiempo de ida y vuelta.