7
Tutorial: Control de Arduino con el móvil por Internet Oct 20, 2014, 08:46 pm Este tutorial también esta en mi página web (en cosas Arduino) con imágenes aclaratorias. Visto el interés que hay por el control de Arduino vía Internet con el móvil, me he permitido hacer este pequeño tutorial que espero pueda ayudar a algún principiante. Lo que se trata es poder activar una o más salidas digitales del Arduino por medio de un ordenador o un móvil. Esto permitiría actuar sobre luces, motores, alarmas, climatización, etc… desde cualquier distancia con un ordenador o un móvil con conexión de datos. La solución se divide en varios apartados. 1.-Hardware: En plan básico, necesitamos un Arduino Uno y una placa Ethernet (Ethernet Shield W5100). Hay otros tipos de placas e incluso soluciones Wifi. Para el ejemplo, conectamos la placa al router y en el pin 4 un diodo LED con su resistencia. 2.-Programa Arduino: -byte ip[] = { 192, 168, 1, 15 }; Aquí con 15 definimos la IP interna. Puede ser cualquier valor hasta 254, siempre que no esté ocupada por otro dispositivo. -byte gateway[] = { 192, 168, 1, 1 }; Es la IP de nuestro router. A veces es 192.168.0.1 y habría que cambiar la IP interna con el cero. -EthernetServer server(100); Es el puerto por el que queremos acceder a la IP. Podemos usar el que queramos.

Control de Arduino Con El Móvil Por Internet

Embed Size (px)

DESCRIPTION

Control de Arduino Con El Móvil Por Internet

Citation preview

Tutorial: Control de Arduino con el mvil por Internet

Oct 20, 2014, 08:46 pm

Este tutorial tambin esta en mi pgina web (en cosas Arduino) con imgenes aclaratorias.

Visto el inters que hay por el control de Arduino va Internet con el mvil, me he permitido hacer este pequeo tutorial que espero pueda ayudar a algn principiante.

Lo que se trata es poder activar una o ms salidas digitales del Arduino por medio de un ordenador o un mvil. Esto permitira actuar sobre luces, motores, alarmas, climatizacin, etc desde cualquier distancia con un ordenador o un mvil con conexin de datos.

La solucin se divide en varios apartados.

1.-Hardware: En plan bsico, necesitamos un Arduino Uno y una placa Ethernet (Ethernet Shield W5100). Hay otros tipos de placas e incluso soluciones Wifi. Para el ejemplo, conectamos la placa al router y en el pin 4 un diodo LED con su resistencia.

2.-Programa Arduino:

-byte ip[] = { 192, 168, 1, 15 }; Aqu con 15 definimos la IP interna. Puede ser cualquier valor hasta 254, siempre que no est ocupada por otro dispositivo.

-byte gateway[] = { 192, 168, 1, 1 }; Es la IP de nuestro router. A veces es 192.168.0.1 y habra que cambiar la IP interna con el cero.

-EthernetServer server(100); Es el puerto por el que queremos acceder a la IP. Podemos usar el que queramos.

-Lo siguiente es generar una pgina bsica para enviar los comandos de ON y OFF sobre el pin 4 y su deteccin para actuar en consecuencia.

Ojo! En la pgina aparece "Estado: Activado o Desactivado", esto no nos asegura que la funcin se haya realizado, para ello tendramos que hacer una programacin con retorno a la pgina que garantizase la accin.

3.-Acceso desde LAN: Cargado el programa en nuestro Arduino solo nos queda cargar en nuestro navegador o mvil (con wifi) la pgina generada. Tendremos que teclear 192.168.1.15:100 y veremos dos botones de ON y OFF. Al pulsarlos se envan los comandos 192.168.1.15:100/?lighton=ON o 192.168.1.15:100/?lighton=OFF que encendern o apagarn el LED. En realidad el programa solo lee la palabra lighton y lightoff para la conmutacin.

4.-Acceso desde Internet: El punto peliagudo para muchos es configurar el router y la IP externa.

Cada router es diferente. Tenemos que buscar el lugar donde se redirigen los puertos a cada IP interna. En mi router Comtrend est en la opcin Virtual Server, ah decimos que IP vamos a direccionar y que puerto interno y externo a nuestra LAN.

Ms problemtico es el tema de la IP externa. Si tenemos IP fija, estupendo. Basta con poner en un PC o mvil con tarifa de datos http://MyIP:100 y asunto resuelto. Con IP variable tendremos que contratar un servicio del tipo http://es.dyn.com/remote-access

P.D. Por dificultades "tcnicas" para utilizar la llave, este sistema se usa para abrir el portn del edificio. El Arduino (con mdulo Wifi HLK-RM04) est conectado a los cables del fonoporta, en Android hay un programa (escrito en Basic4Android) que enva el comando de apertura durante 3 segundos. En realidad el sistema se activa acercando el mvil a una etiqueta NFC estratgicamente situada.

Jopapa

www.jopapa.me

Jopapa

www.jopapa.me

ElEspanol

avatar_ElEspanol

****

Sr. Member

Posts: 297

[add Karma]

[add Karma]

Re: Tutorial: Control de Arduino con el mvil por Internet

#1

Nov 30, 2014, 12:15 pm

me parece muy til como primeras pruebas en el tema. Pero de esta manera todo el mundo quien sabe la ip o url tiene acceso y puede activarlo.

Es imprescindible aadir al menos Basic Autentication para un mnimo de seguridad,.

rgomqui

avatar_rgomqui

*

Newbie

Posts: 13

[add Karma]

[add Karma]

Re: Tutorial: Control de Arduino con el mvil por Internet

#2

Feb 12, 2015, 02:25 pm

Buenas, perdon por usar el tema abierto. En caso de molestias al OP creare uno nuevo. Tambien estoy enfrascado en el control de un pequeo invernadero via ethernet, pero mi duda es la siguiente. Tengo una pequea web html y dos conexiones diferentes dentro de arduino. Una es para mostrar un cuadro con variables ambientales en un iframe de la web y el segundo lo quiero para que a traves de la web poder enviar variables para definir horarios de riego, temperaturas maximas y minimas para activar la ventilacion, ect ect. Alguien tiene alguna idea de como podria hacerse? ( el tema del cuadro de variables esta terminado, pero nose como enviar las configuraciones desde la web a arduino) Un saludo y muchas gracias

ElEspanol

avatar_ElEspanol

****

Sr. Member

Posts: 297

[add Karma]

[add Karma]

Re: Tutorial: Control de Arduino con el mvil por Internet

#3

Feb 12, 2015, 05:07 pm

con esta escasa informacin no se puede recomendar mucho. Describelo un poco ms detallado y aade el sketch.

Que hardware estas usando?

con "traves de la web poder enviar variables" a que te refieres? desde tu movil, p.e.?

Un pequeo croquis tampoco estara mal.

rgomqui

avatar_rgomqui

*

Newbie

Posts: 13

[add Karma]

[add Karma]

Re: Tutorial: Control de Arduino con el mvil por Internet

#4

Feb 12, 2015, 07:11 pm

el skecht lo tengo al completo en obras.. jajaja. A ver lo primero uso, arduino UNO (posibilidad de ampliar a mega), ethernet shield, un sensor humedad/ temperatura DHT22, tambien necesito controlar una salida a 220V con un optoacoplador y un triac; y 3 ventiladores, 2 PWM y uno sin control de velocidad. Todo eso es para controlar un invernadero, cosa que podria hacerlo autonomo en un sketch y fuera. La cosa esta en que por trabajo estoy temporadas fuera de casa y me gustaria poder controlarlo via web. Probe haciendo un servidor web con arduino pero se cuelga con facilidad si se le mete mucha carga, entonces cree una pagina web en un servidor externo con dos iframes y un menu. En uno de los iframes simplemente muestro un cuadro con todos los datos, humedad, temperatura, si estan conectados o no los diferentes sistemas. ( lo envio desde un server creado en arduino expresamente para mostrar el cuadro con los datos) Y ahora el quid de la cuestion, para poder controlarlo en el otro iframe muestro paginas usando el menu, por ejemplo la de temperatura despues de pulsar su correspondiente menu, en el iframe se muestran varias opciones, entre ellas definir valores maximos y minimos( lo cual controlaria la extraccion del invernadero para controlarla). La idea/duda principal es esa, como podria yo enviar esos datos al arduino via http y que arduino tomara esos datos para establecerse ciertos valores ( tempratura maxima y minima, humedad maxima y minima, humedad en los tiestos para activar riego, ...ect ect) Muchisimas gracias ante todo y si alguno esta tan interesado como yo aunque sepa menos que yo, si entre todos podemos sacar algo en claro lo dejaremos aqui tambien para toda la comunidad

ElEspanol

avatar_ElEspanol

****

Sr. Member

Posts: 297

[add Karma]

[add Karma]

Re: Tutorial: Control de Arduino con el mvil por Internet

#5

Feb 12, 2015, 07:35 pm

1. coje un Mega. Tienes suficiente Flash y 2 veces ms RAM

2. no te compliques la vida con iframes. Va todo bien en un Mega.

3. Mira en internet por "Arduino server basic autentication" para por lo menos poner un pequeo candado.

4. Los valores transfieres con "get" en la url como parametros.

5. Mira ejemplos sencillos de encender y apagar un LED por la web

6. No olvides un boton para guardar todo en el eeprom para que el Arduino no olvida sus datos con cortes de luz.

7. Haz todo por partes, y si tienes todas las partes, combinalo.

Para arreglar los ventiladores con PWM, existe una libreria "PID", es para arreglar cosas, muy generica. No tengo experiencia practica con ella, pero es la aplicacin para tu caso.

En vez de optoacoplador y un triac existen Rels digitales, pero ojo, no es tan facl arreglar potencia en AC.

Es un proyecto bastante complejo para empezar con Arduino. Son muchas horas de buscar en Internet y aprender.