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.
-Lo siguiente es generar una página básica para enviar los comandos de ON y OFF sobre el pin 4 y su detección para actuar en consecuencia.
¡Ojo! En la página aparece “Estado: Activado o Desactivado”, esto no nos asegura que la función se haya realizado, para ello tendríamos que hacer una programación con retorno a la página que garantizase la acción.
3.-Acceso desde LAN: Cargado el programa en nuestro Arduino solo nos queda cargar en nuestro navegador o móvil (con wifi) la página generada. Tendremos que teclear 192.168.1.15:100 y veremos dos botones de ON y OFF. Al pulsarlos se envían los comandos 192.168.1.15:100/?lighton=ON o 192.168.1.15:100/?lighton=OFF que encenderán o apagarán el LED. En realidad el programa solo lee la palabra lighton y lightoff para la conmutación.
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 opción Virtual Server, ahí decimos que IP vamos a direccionar y que puerto interno y externo a nuestra LAN.
Más problemático es el tema de la IP externa. Si tenemos IP fija, estupendo. Basta con poner en un PC o móvil 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 “técnicas” para utilizar la llave, este sistema se usa para abrir el portón del edificio. El Arduino (con módulo Wifi HLK-RM04) está conectado a los cables del fonoporta, en Android hay un programa (escrito en Basic4Android) que envía el comando de apertura durante 3 segundos. En realidad el sistema se activa acercando el móvil a una etiqueta NFC estratégicamente situada.
Jopapa
www.jopapa.me