You are on page 1of 58

Arduino, aplicaciones actuales y potenciales,

para contrarrestar los efectos del cambio


climtico en la agricultura

www.zonaelectronica.com
www.webelectronica.com.ar

Francisco Di Zonno
+58.414.246.48.25
fdizonno@zonaelectronica.com
fdizonno@gmail.com Del uC al Arduino
Un proceso evolutivo
La evolucin de los automatismos es la consecuencia
de la evolucin de varias ciencias y/o disciplinas.

1.- La Electricidad
2.- La Electrnica
3.- La Informtica

La electricidad nos ha permitido elevar el nivel


de confort en nuestras viviendas y edificaciones.

La electricidad ha dado paso a la entrada de los


electrodomsticos:

Lavadoras, Neveras, Lavaplatos, Hornos, Cocinas


elctricas,

Mquinas capaces de realizar tareas cotidianas de forma


casi autnoma, elevando nuestro nivel de confort que en
otros tiempos eran inimaginables.
Del uC al Arduino
La Evolucin de la Electrnica,
ha marcado el desarrollo de muchos sistemas, permitiendo
realizar programaciones y/o rutinas, que regulan cada proceso
que se quiera controlar.

Del uC al Arduino
La Informtica

Del uC al Arduino
La Internet
Web 1.0. Se basa en la Sociedad de la
Informacin, en medios de
entretenimiento y consumo pasivo
(medios tradicionales, radio, TV, email). Las
pginas web son estticas y con poca
interaccin con el usuario (web 1.0,
pginas para leer).

Web 2.0. Se basa en la Sociedad del


Conocimiento, la autogeneracin de
contenido, en medios de entretenimiento
y consumo activo. En esta etapa las
pginas web se caracterizan por ser
dinmicas e interactivas (web 2.0, pginas
para leer y escribir) en donde el usuario
comparte informacin y recursos con otros
usuarios.

World Wide Web (WWW o la Web) - 1990 Web 3.0. Las innovaciones que se estn
produciendo en estos momentos se basan
en Sociedades Virtuales, realidad virtual,
web semntica, bsqueda inteligente.
Del uC al Arduino
Las redes de telefona

Del uC al Arduino
Tecnologa wireless de baja potencia

Del uC al Arduino
La idea propuesta por Kevin Ashton en 1999

Se estima que 50 mil millones de dispositivos


estarn conectados en el ao 2020 Del uC al Arduino
La Internet de las Cosas (IoT) es una red de tecnologa
que monitorea el estado de los objetos fsicos, captura
DATA, y transmite la informacin usando redes IP a
programas de Aplicaciones.

Del uC al Arduino
Dispositivos IoT
Lo que hace a los dispositivos IoT
diferentes de un sensor ordinario
es bsicamente la habilidad de ste
de comunicarse (usualmente) en
forma directa o indirecta a la
Internet.

Las preguntas serian:


Cules son las principales razones
para que un dispositivo se tenga que
conectar a Internet o un servicio de
Internet?
Qu clase de servicio ser ese?
Qu tipo de servicio debera
obtener?
Del uC al Arduino
IoT Un mundo de muchas posibilidades

Del uC al Arduino
Algunos productos

Del uC al Arduino
Algunos actores
Philips HUE,
bombillos LED
conectados a
Internet

Apple HomeKit

Google - Brillo & Weave

SmartThings - Samsung

Del uC al Arduino
Actores principales

Microcontroladores
Del uC al Arduino
Microcontrolador (C)
Un microcontrolador es un circuito
integrado que contiene internamente
todos los componentes bsicos de un
computador:

CPU
Memoria
Unidades de E/S

Este se utiliza para controlar el


funcionamiento de Sistemas Electrnicos
con tareas determinadas.

Del uC al Arduino
Microcontroladores (C) hoy en da
Sistemas embebidos (embedded)

Del uC al Arduino
Dispositivos Interactivos
Dispositivo electrnico capaz de sentir
el medio ambiente usando sensores,
que convierten las seales externas en
seales elctricas.

Procesar la informacin recibida que se


obtiene de los sensores con
comportamientos que estn
implementados en el software.

Interactuar o actuar con el mundo


exterior usando actuadores que
convierten seales elctricas en
acciones fsicas.

Del uC al Arduino
Ambiente de Desarrollo Integrado - IDE
Tareas Tpicas de un IDE
1.- rea para escribir el cdigo fuente.
2.- Compilar, ensamblar y encadenar el cdigo fuente con los programas
que conviertan el cdigo fuente en unos y ceros que es lo que
finalmente entiende el microcontrolador.
3.- Probar el programa utilizando simuladores.
4.- Quemar o grabar el cdigo en la memoria de programa del
microcontrolador y verificar que se ejecuta correctamente en la
aplicacin definitiva.
ARDUINO

PINGUINO

MPLAB X

PICAXE Editor Del uC al Arduino


Del uC al Arduino
Qu es ARDUINO?

Arduino es una plataforma de


desarrollo de computacin fsica, de
cdigo abierto, basada en una placa
con un sencillo microcontrolador y un
entorno de desarrollo para crear
software (para esa placa).

Software libre Hardware libre

Del uC al Arduino
ARDUINO 2005 / 2016
David Mellis Tom Igoe
Gianluca Martino David Cuartielles Massimo Banzi

Arduino naci como un proyecto colaborativo y educativo - ao 2005


Del uC al Arduino
Del uC al Arduino
El Ecosistema ARDUINO

Consiste de:

o La placa Arduino
o El IDE Arduino
o El lenguaje Arduino
o Software (Bibliotecas) de terceros
o Shields o extensiones
o Componentes electrnicos

Del uC al Arduino
Arduino - USA

Del uC al Arduino
Arduino - USA

Del uC al Arduino
Arduino - USA

Del uC al Arduino
Arduino UNO R3

Del uC al Arduino
Arduino Shields - Extensiones

Del uC al Arduino
Trabajando con ARDUINO

Pasos:

1. Conseguir un Arduino y un cable USB


2. Descargar el IDE de Arduino
3. Instalar - descomprimir el IDE
4. Conectar la placa a la PC
5. Ejecutar el IDE Arduino
6. Crear o abrir el programa, ejemplo Blink
7. Seleccionar la placa (tarjeta Arduino)
8. Seleccionar el puerto serie (COM)
9. Subir (Cargar) el sketch a la placa
10. Verificar el funcionamiento del programa

Del uC al Arduino
ARDUINO - IDE
Barra de menues

Barra de herramientas

Pestaas

Editor de texto

rea de mensajes

Consola

Los programas en Arduino se llaman SKETCHs


Del uC al Arduino
Abrir el sketch de ejemplo BLINK

Del uC al Arduino
Cargar el sketch y ver el funcionamiento en la tarjeta

Del uC al Arduino
ARDUINO IDE
Ejemplos

Del uC al Arduino
ARDUINO - IDE

Bibliotecas
(Libraries)

Del uC al Arduino
ARDUINO Sketch o programa base

Del uC al Arduino
Transduccin

Conversin de un tipo de energa en otra

Energa Fsica
Sensores Actuadores
Energa Elctrica

Del uC al Arduino
Tareas en las que usamos el Arduino

1.- Salidas Digitales


2.- Entradas Digitales
3.- Salidas Analgicas
4.- Entradas Analgicas

Del uC al Arduino
Salidas Digitales

Salida Digital:

Cualquier dispositivo que pueda ser


encendido-apagado, puede ser un
potencial transductor de salida
digital

Simples:
LEDs, Buzzer

Complejas:
Motores, Solenoides, Bombillos, Calentadoras de Caf

Del uC al Arduino
Rels y transistores
Proyecto Hola Mundo
Salidas Digitales
LED Intermitente (Blink)

Algoritmo /* Encender y apagar un LED durante 1 segundo,


- Encender el LED repetidamente */
- Esperar un tiempo
// El pin 13 del Arduino est conectado a un LED
- Apagar el LED
- Esperar otro tiempo // Rutina de inicializacin.
- Repetir siempre void setup() {
// Inicializa el pin 13 como salida
pinMode(13, OUTPUT);
}

// La rutina loop de ejecuta continuamente


void loop() {
digitalWrite(13, HIGH); // Enciende el LED
delay(1000); // Retardo de 1 segundo
digitalWrite(13, LOW); // Apaga el LED
delay(1000); // Retardo de un segundo
} Del uC al Arduino
Entradas Digitales

Entrada Digital: Suiche

Suiche normalmente abierto


Suiche normalmente cerrado ONOFF Apagado-Encendido
Suiche momentneo

Del uC al Arduino
/* Encender un LED cuando se pulsa un botn */

// Declarar unas variables de memoria


int buttonPin = 2;
int ledPin = 13;
int buttonState = 0;

void setup() {
Entradas Digitales pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}

void loop() {
// leemos el estado del pulsador
buttonState = digitalRead(buttonPin);

// Verfificamos si el pulsador est presionado


if (buttonState == HIGH) {
// encendemos el LED
digitalWrite(ledPin, HIGH);
} else {
// apagamos el LED
digitalWrite(ledPin, LOW);
}
} Del uC al Arduino
No todo es blanco y negro, hay grises

Sensores

Transduccin:
Transformacin o conversin de una forma de energa de
entrada, en otra diferente de salida

Del uC al Arduino
Entradas Analgicas
Resistencias Variables Fotoceldas, fotorresistencias
Convierten un cambio mecnico, de
iluminacin, de temperatura y de otras
formas de energa en un cambio en la
resistencia elctrica que ofrece.

Potencimetros, restatos

Resistores Flex

Resistores de fuerza

Termistores

Del uC al Arduino
Convertidores Anlogos a Digitales
Permiten leer un nivel de voltaje en un
momento dado y convertirlo a un valor
digital que puede ser manipulado o
almacenado en el microcontrolador o
Computadora

Suministran una seal digital en un momento


y la convierten en un equivalente analgico
para manipular objeto que produce una accin

Del uC al Arduino
int sensorPin = A0;

Entradas Analgicas
int ledPin = 13;
int sensorValue = 0;

void setup() {
pinMode(ledPin, OUTPUT);
}

void loop() {
// leer el valor del sensor
sensorValue = analogRead(sensorPin);
// encender el LED
digitalWrite(ledPin, HIGH);
// detener el programa por un tiempo definido
delay(sensorValue);
// apagar el LED
digitalWrite(ledPin, LOW);
// detener el programa por un tiempo definido
delay(sensorValue);
} Del uC al Arduino
Salidas Analgicas

Salida Analgicas:

Cuando queremos realizar algo mas que


simplemente encender o apagar un
elemento, es decir, generar un voltaje de
salida variable

Ejemplos:
Cambiar el brillo de un LED
Control de la velocidad de un motor DC
Generar tonos
Servomecanismos

Del uC al Arduino
ARDUINO Salidas Anlogas
PWM: Modulacin por ancho de Pulso

Voltaje Efectivo

Voltaje Efectivo

D = t/T Ciclo de Trabajo

Es una seal cuadrada formada por pulsos de


frecuencia constante de aproximadamente
de 490 Hz.
Del uC al Arduino
ARDUINO Salidas Analgicas
// Efecto dimmer con un LED

const int LED = 3; // Se usa el pin 3 PWM


int i = 0; // Se usa para llevar un contador
// ascendente y descendente

void setup() {
pinMode(LED, OUTPUT);
}

void loop(){
for (i = 0; i < 255; i++) { // loop de 0 to 254 (fade in)
analogWrite(LED, i);
delay(10);
}
for (i = 255; i > 0; i--) { // loop de 255 to 1 (fade out)
analogWrite(LED, i);
delay(10);
}
}

Del uC al Arduino
ARDUINO Aplicaciones
El Invernadero electrnico.
El objetivo es regular la temperatura dentro
del invernadero gracias al uso controlado
de lmparas, y con sistema de
servomotores para abrir las ventanas y
encender ventiladores.
Mantener constante el nivel de humedad
del suelo con un sistema de riego con
bomba de agua y recibiendo los datos de
temperatura ambiente, humedad del aire y
luminosidad.
Sistema controlado a travs de un sitio
web en forma remota.

Del uC al Arduino
Nduino: Medidor de bajo coste
basado en Arduino para agricultura de
precisin

Este aparato est destinado a determinar los


requerimientos de nitrgeno de las plantas
(cereales, fundamentalmente) directamente en
el campo, con el fin de afinar la fertilizacin
nitrogenada.
Mide el contenido en clorofila de la hoja, y como
este se relaciona con el estado de nutricin
nitrogenada de la misma, permitiendo calcular el
estado nutricional de las plantas al menos en
cuanto a nitrgeno se refiere. Del uC al Arduino
Garduino: Un huerto controlado con Arduino.
Creando un sistema controlado de irrigacin,
iluminacin y temperatura

Del uC al Arduino
Vinduino: Proyecto de ahorro de agua de un viticultor.
Monitoreo de la humedad del suelo a diferentes
profundidades para determinar cundo regar, y - ms
importante - la cantidad de agua que se necesita.
Permite ahorros de hasta un 25%.

Del uC al Arduino
Drones

ArduPilot

Del uC al Arduino
FARMBOT
Primera maquina CNC de cultivos
bajo filosofa Open-Source

Del uC al Arduino
FarmBot

Del uC al Arduino
ARDUINO Recursos

Scratch for Arduino S4A

mBlock

Del uC al Arduino
ARDUINO para todos

Del uC al Arduino
Gracias

Francisco Di Zonno
+58.414.246.48.25

www.zonaelectronic.com
www.weblectronica.com.ar

fdizonno@zonaelectronica.com
fdizonno@gmail.com
@fdizonno

Del uC al Arduino

You might also like