Está en la página 1de 27

Instalar IDE ARDUINO Con Soporte WiFi

Introducción

En esta sección trataremos de explicar de la forma más clara posible, como instalar el IDE
de arduino y como dar soporte para la programación de ESP8266 y NodeMcu.
La información de la instalación es para sistemas derivados de debian y windows, yo uso linux
64 bits, lo siento no dispongo de mac para hacer pruebas.

Contenidos
 Instalar IDE de Arduino en sistemas debian
 Instalar IDE de Arduino en sistemas windows
 Añadir soporte para ESP8266
Instalar IDE de Arduino en sistemas debian
Instalación
Lo más sencillo en sistemas debian, es instalar el Ide de Arduino desde los repositorios de
nuestro sistema, este proceso instalará el Ide, instalará las librerías de java necesarias para su
funcionamiento y añadirá permisos a los puertos, para poder programar nuestros
microcontroladores.
1. Para instalar el ide introducimos el siguiente comando en un terminal (consola).

sudo apt-get install arduino

2. Una vez la instalación haya terminado, ya tenemos todo el soporte necesario para hacer
funcionar cualquier versión del Ide, en caso de que la versión instalada no sea la 1.6.4 o
posterior, cosa que ocurrirá casi seguro, descargamos la última versión de la página oficial de
arduino, en el siguiente enlace.
Descargar IDE de arduino
Para continuar descomprimimos el IDE descargado en nuestra carpeta personal.
3. Entramos en la carpeta de arduino que hemos descomprimido, ejecutamos el archivo
arduino.
En caso de que no se ejecute, click sobre el archivo arduino, entramos en propiedades y en la
pestaña permisos, comprobamos que está activada la opción permitir ejecutar archivo como
programa.
En caso de seguir sin funcionar, abrimos un terminal (consola) y escribimos la ruta completa al
archivo arduino o arrastramos el archivo arduino al terminal, para finalizar pulsamos entrar y
se tiene que abrir el ide, de esta manera veremos el log del Ide Arduino directamente en el
terminal.
Índice de contenidos
Instalar IDE de Arduino en sistemas windows
1. Para empezar descargamos el Ide de Arduino, de la página oficial de arduino, en el siguiente
enlace.
Descargar IDE de arduino
2. Ejecutamos nuestro archivo descargado, leemos y aceptamos la licencia si queremos instalar.
3. La primera pantalla que nos saldrá nos dirá que componentes queremos instalar junto al
IDE, los dejamos todos seleccionados y next para continuar.

4. Después nos preguntará en que ruta queremos instalar el IDE, pueden elegir la que quieran y
luego install para comenzar la instalación.
Aqui vemos el Ide de arduino instalándose en windows.
5. Para finalizar la instalación, windows nos preguntará si queremos instalar varios drivers (son
4) para el funcionamiento de los microcontroladores arduino, recomiendo instalarlos todos.
Una vez instalados los drivers, la instalación está completa.
6. Para finalizar ejecutamos arduino y veremos como se incia el IDE, a disfrutar programando.

Índice de contenidos
Añadir soporte al IDE para ESP8266
1. Lo primero que haremos será abrir el IDE de Arduino, entramos al menú archivo.
2. Abrimos preferencias, e introducimos la siguiente url
'http://arduino.esp8266.com/stable/package_esp8266com_index.json' sin las comillas, en
'additional boards manager urls' y ok para cerrar.

3. Abrimos el menú herramientas, y dentro de la opción placa, abrimos board manager.


4. Dentro de board manager, veremos una lista de soporte para placas que podemos instalar y
borrar, si vamos hasta el final veremos que sale la opción esp8266, pulsamos con el ratón sobre
ella y nos dará la opción para instalar.
5. Una vez instalado el soporte para ESP8266 cerramos el board manager.
Una vez instalado el soporte para ESP8266, ya solo falta elegir el modelo que queremos
programar, para esto abrimos el menú herramientas, y dentro de la opción placa al final del
menú tendremos los módulos ESP para elegir.
Y esto ha sido todo, ahora a programar vuestros ESP8266
Encender una bombilla con un módulo wifi
ESP8266 – Arduino

https://secmotic.com/encender-bombilla-con-un-modulo-wifi-esp8266-arduino/

Hoy vamos a aprender cómo utilizar un módulo wifi ESP8266 conectado a un


Arduino. Se trata de encender una bombilla y tres led a través de una interfaz
web.

Los componentes que utilizaremos serán los siguientes:

 Protoboard
 Módulo Wifi ESP8266
 Relé
 Arduino
 Bombilla
 Cableado

Protoboard Módulo wifi ESP8266 Relé Arduin

El conexionado del módulo wifi consta de 8 pines, en la siguiente imagen vemos


qué función tiene cada uno de éstos:
 Pin de Recepción. URXD
 Pin de voltaje 3.3v. VCC
 Pin GPIO0. No conectar
 Pin RST. No conectar
 Pin GPIO2. No conectar
 Pin voltaje 3.3v. CH_PD
 Pin de tierra. GND
 Pin de transmisión. UTXD
El siguiente paso que debemos dar, es hacer el conexionado total de los
componentes. En la siguiente imagen podemos verlo.

 
Una vez realizada la conexión de todos los componentes tendremos que subir el
código de programación al Arduino.
El código de programación que hemos utilizado nosotros es el siguiente:

 
#include <SoftwareSerial.h>

#define DEBUG true

SoftwareSerial esp8266(2,3); // make RX Arduino line is pin 2, make TX


Arduino line is pin 3.
// This means that you need to connect the
TX line from the esp to the Arduino's pin 2
// and the RX line from the esp to the
Arduino's pin 3
void setup()
{
SSSerial.begin(19200);
esp8266.begin(19200); // your esp's baud rate might be different

pinMode(10,OUTPUT);
digitalWrite(10,LOW);

pinMode(11,OUTPUT);
digitalWrite(11,LOW);

pinMode(12,OUTPUT);
digitalWrite(12,LOW);

pinMode(13,OUTPUT);
digitalWrite(13,LOW);

sendData("AT+RSTrn",2000,DEBUG); // reset module


sendData("AT+CWMODE=2rn",1000,DEBUG); // configure as access point
sendData("AT+CIFSRrn",1000,DEBUG); // get ip address
sendData("AT+CIPMUX=1rn",1000,DEBUG); // configure for multiple
connections
sendData("AT+CIPSERVER=1,80rn",1000,DEBUG); // turn on server on port
80
}

void loop()
{
if(esp8266.available()) // check if the esp is sending a message
{

if(esp8266.find("+IPD,"))
{
delay(1000); // wait for the serial buffer to fill up (read all the
serial data)
// get the connection id so that we can then disconnect
int connectionId = esp8266.read()-48; // subtract 48 because the
read() function returns
// the ASCII decimal value and
0 (the first decimal number) starts at 48

esp8266.find("pin="); // advance cursor to "pin="

int pinNumber = (esp8266.read()-48)*10; // get first number i.e. if


the pin 13 then the 1st number is 1, then multiply to get 10
pinNumber += (esp8266.read()-48); // get second number, i.e. if the
pin number is 13 then the 2nd number is 3, then add to the first number

digitalWrite(pinNumber, !digitalRead(pinNumber)); // toggle pin

// make close command


String closeCommand = "AT+CIPCLOSE=";
closeCommand+=connectionId; // append connection id
closeCommand+="rn";

sendData(closeCommand,1000,DEBUG); // close connection


}
}
}

/*
* Name: sendData
* Description: Function used to send data to ESP8266.
* Params: command - the data/command to send; timeout - the time to wait
for a response; debug - print to Serial window?(true = yes, false = no)
* Returns: The response from the esp8266 (if there is a reponse)
*/
String sendData(String command, const int timeout, boolean debug)
{
String response = "";

esp8266.print(command); // send the read character to the esp8266

long int time = millis();

while( (time+timeout) > millis())


{
while(esp8266.available())
{

// The esp has data so display its output to the serial window
char c = esp8266.read(); // read the next character.
response+=c;
}
}

if(debug)
{
Serial.print(response);
}

return response;
}
 
Una vez cargado correctamente el programa abrimos el monitor serie y nos
debería salir la siguiente pantalla.

Finalmente creamos nuestra propia interfaz web. Aquí dejamos el código html
utilizado.

 
<html>
<head>
<title>ESP8266 LED Control</title>
</head>
<body>
<button id="10" class="led">BOMBILLA</button>
<button id="11" class="led">LED AZUL</button>
<button id="12" class="led">LED VERDE</button>
<button id="13" class="led">LED ROJO</button>
<script src="jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function(){
$(".led").click(function(){ var p =
$(this).attr('id');
$.get("https://192.168.4.1:80/", {pin:p});
});
});
</script>
</body>
</html>
Hay que tener en cuenta que la ip puede variar según la puerta de enlace de cada
usuario.

Este sería el resultado final de la interfaz web:

También podría gustarte