EN ESTE TUTORIAL TE EXPLICO COMO CONECTAR UN ARDUINO CON ETHERNET CON UNA APLICACIÓN PARA ANDROID EN LA CUAL VAMOS A ENVIAR Y RECIBIR DATOS DESDE EL ARDUINO COMO SERVIDOR WEB.
EL ARDUINO CON ETHERNET ESTARÁ CONFIGURADO COMO SERVIDOR Y LA APLICACIÓN PODRÁ CONTROLAR EL DISPOSITIVO A DISTANCIA A TRAVÉS DE INTERNET.
PARA QUE LA APLICACIÓN FUNCIONE CUANDO ESTEMOS CONECTADO A INTERNET FUERA DE CASA NECESITARAREMOS HACER LOS SIGUIENTES DOS PASOS.
1º SI NO DISPONEMOS DE UNA IP FIJA, TENDREMOS QUE DAR DE ALTA UNA DNS, POR EJEMPLO CON NOIP QUE ES GRATUITO Y EN NUESTRO ROUTER CONFIGURARLO PARA QUE ENVIÉ LA DIRECCIÓN IP.
2 º ABRIREMOS EL PUERTO A LA DIRECCIÓN IP DEL ARDUINO.
COMPONENTES:
ARDUINO MEGA
ETHERNET SHIELD
RELÉ
SENSOR DE ENTRADA, EN ESTE CASO VAMOS A UTILIZAR UN DTH 11 SENSOR DE TEMPERATURA Y HUMEDAD.
#include <Wire.h> // para el uso del reloj
#include "RTClib.h" //librería del reloj
RTC_DS1307 rtc; //declaramos el reloj como rtc
void setup () {
Serial.begin(9600); // iniciamos puerto serie
Wire.begin(); // Shield I2C pins connect to alt I2C bus on Arduino Due
delay(500);
rtc.begin();
if (! rtc.isrunning()) {
Serial.println("Reloj averiado o mal conectado"); //mensaje al puerto serie en caso que el reloj este //averiad o mal conectado
}
//rtc.adjust(DateTime(2016, 1, 22, 3, 0, 0)); // si queremos introducir la hora manualmente
rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // ponemos la hora que tiene el código
}
void loop () {
DateTime now = rtc.now(); //tomamos los datos del reloj
Serial.print(now.year(), DEC); //mostramos en año
Serial.print('/');
Serial.print(now.month(), DEC); //mostramos el mes
Serial.print('/');
Serial.print(now.day(), DEC); //mostramos el día
Serial.print(' ');
Serial.print(now.hour(), DEC); //mostramos la hora
Serial.print(':');
Serial.print(now.minute(), DEC); // mostramos los minutos
Serial.print(':');
Serial.print(now.second(), DEC); // mostramos los segundos
Serial.println();
delay(1000); //hacemos una pausa de un segundo
}
EN ESTE TUTORIAL EXPLICO COMO MEDIR EL VOLTAJE DE 0 A 24 VOLTIOS EN CONTINUA. NOS ENVIARÁ UN MENSAJE CUANDO EL VOLTAJE BAJE DE UNA VALOR PREDEFINIDO Y CUANDO SE VUELA A ESTABILIZAR.
POR EJEMPLO PODRÍAS TENERLO PARA UNA INSTALACIÓN FOTOVOLTÁICA Y QUE NOS ENVÍE UN MENSAJE CUANDO EL VOLTAJE CAMBIE DE UN VALOR PREDEFINIDO, PARA SABER SI UNA FUENTE DE ALIMENTACIÓN SE HA AVERIADO, QUE ENCENDIERA UN GRUPO ELECTRÓGENO HASTA QUE EL VOLTAJE SE HAYA ESTABILIZADO,ETC.
COMPONENTES:
ARDUINO MEGA
MODULO SENSOR DE VOLTAJE
SIM 800L GSM
EN ESTE TUTORIAL EXPLICO COMO CREAR UN ARCHIVO EN SD, GUARDAR INFORMACIÓN EN DICHO ARCHIVO TIPO TEXTO, COMO BORRAR UN ARCHIVO Y COMO VER LA INFORMACIÓN CONTENIDA DENTRO DE LA SD
ESTE TUTORIAL ES PARA PODER LEER CUALQUIER COMPONENTE QUE TRABAJE EN UNA FRECUENCIA DE 433 Mhz, PARA PODER REALIZAR UNA ALARMA CASERA SEGÚN LA NECESIDADES DE NUESTRO PROYECTO.
COMPONENTES:
ARDUINO MEGA
RELÉ
RECEPTOR 433 Mhz
IMÁN DETECTOR DE ENTRADA 433 Mhz
SENSOR PIR 433 Mhz
CONTROL REMOTO 433 Mhz
int const REC=7; //pin 7 conectamos el REC para poder grabar
int const PLAYER=6; //pin 6 conectamos P-E, para la reproducción continua
int const PLAYL=5; //pin 5 conectamos el P-L para reproducción durante un tiempo señalado
int const FT=4; // pin 4 conectamos FT, reproducir el sonido de micro al altavoz directamente
char estado; //para guardar el dato recibido
void setup(){
pinMode(REC, OUTPUT);
pinMode(PLAYER, OUTPUT);
pinMode(PLAYL, OUTPUT);
pinMode(FT, OUTPUT);
Serial.begin(9600);
delay(500);
Serial.println("INTRODUZCA LA LETRA Y PULSE INTRO");
Serial.println("a PARA GRABAR EL MENSAJE");
Serial.println("b PARA REPRODUCIR EL MENSAJE");
Serial.println("c PARA REPRODUCIR TRES SEGUNDOS EL MENSAJE");
Serial.println("d COMENZAR A REPRODUCIR DEL MICRO AL ALTAVOZ DIRECTAMENTE");
Serial.println("e PARAR DE REPRODUCIR DEL MICRO AL ALTAVOZ DIRECTAMENTE");
}
void loop(){
if (Serial.available()){
estado=Serial.read();
}
if (estado=='a'){
Serial.println("DIGA EL MENSAJE, GRABACION EN CURSO DURANTE 10 SEGUNDOS");
digitalWrite(REC,HIGH);
delay(10000);
digitalWrite(REC,LOW);
Serial.println("MENSAJE GRABADO");
}
if (estado=='b'){
Serial.println("MENSAJE EN PLAYER");
digitalWrite(PLAYER,HIGH);
delay(50);
digitalWrite(PLAYER,LOW);
}
if (estado=='c'){
Serial.println("MENSAJE EN PLAYL");
digitalWrite(PLAYL,HIGH);
delay(3000);
digitalWrite(PLAYL,LOW);
}
if (estado=='d'){
Serial.println("PULSE LA LETRA e PARA DETENER LA REPRODUCION");
digitalWrite(FT,HIGH);
}
if (estado=='e'){
Serial.println("REPRODUCION DETENIDA");
digitalWrite(FT,LOW);
}
estado="";