pollis

Páginas: 7 (1526 palabras) Publicado: 13 de enero de 2014
Arduino Ethernet Shield + LED RGB Control Web
06:43
Controlar LED RGB desde una pagina Web usando Arduino Ethernet shield.
 Materiales: Placa Arduino Placa Arduino Ethernet Shield LED RGB 3 resistencias de 220 ohm Conexión de clable trenzado cat 5E , uso de red LAN Software arduino BreadBoard. Cableado necesario a la breadBoard

 DESARROLLO

Lo que se hará es controlar un LED RGB desdepagina Web, donde se prende cada uno de sus colores y manejar su intensidad, haciendo uso de una red LAN, por lo que utilizaremos el Arduino Ethernet Shield como servidor web. Para este laboratorio debemos entonces crear la red LAN, en donde al Arduino Ethernet Shield le asignaremos la ip 192.168.1.6 y al cliente la dirección ip 192.168.1.4 . Se hará uso de un router, por lo que el cliente estaráconectado vía WIFI y el arduino Ethernet Shield con cable trenzado cat 5E, cabe aclarar que para la compilación del códigoy su carga al arduino, se conectara por USB con el mismo host del cliente. Para empezar, haremos el montaje de nuestro sistema.

Seguidamente haremos el código necesario, el cual al terminar cargaremos al montaje Arduino. Lo primero que haremos es el código HTML donde secolocaran un formulario con 3 botones: uno para rojo , otro para verde y otro para azul; mas dos botones: uno para subir la intensidad y otro para bajar la intensidad. Ek código HTML lo montaremos en el webServer Arduino Ethernet Shield;
para esto en el código del programa usaremos una constante de tipo char [ ] la
cual llamaremos html;
const char html[] = " anexar codigo HTML aqui ";

Debemosimportar las librerías necesarias.
//librerias

#include  SPI.h
#include  Ethernet.h

Seguidamente debemos darle una dirección mac y una dirección ip al arduino Ethernet Shield, según nuestro esquema de red LAN, mas una variable de tipo
Server que le entregaremos el puerto a usar.
//mac, IP
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192,168,1,6 };
Serverserver(80);
Luego las variables necesarias
//pines out LED
int Red = 6;
int Green = 5;
int Blue = 3;
//para activar los colores del LED
boolean flatRed = false;
boolean flatGreen = false;
boolean flatBlue = false;
//para controlar la intesidad de luz
int steep=15;//paso de intensidad de color en los LEDs
int depth=120;//intensidad inicial
boolean reading = false;
Se declaran los pines desalida pwm , según nuestro montaje del sistema : rojo el 6, verde el 5 y azul el 3; luego unas variables de tipo boolean que nos darán paso al uso de activar que pin de salida activar en las terminales del LED RGB, otras dos variables mas para controlar el paso para subir o bajar la intensidad de luz del LED y una para el valor de la intensidad , donde el LED recibe valores entre 0 y 255 , por ultimouna variable de tipo boolean para la lectura de petición del cliente.
Sobre el método setup() iniciamos la conexión del webServer y activamos los pines pwm 6,5 y 3 como salida , conectados a las terminales del LED RGB , en su respectivo color.
void setup(){
Serial.begin(9600);
//iniciar conexion
Ethernet.begin(mac, ip);
server.begin();
//activar pines
pinMode(Red,OUTPUT);pinMode(Green,OUTPUT);
pinMode(Blue,OUTPUT);
}


Continuando, sobre el método loop() colocaremos todo el código pesado para nuestro webserver Arduino Shield. Lo primero dentro este método es colocar una variable de tipo Client para la escucha de conexión del cliente .
Client client = server.available();
Luego dentro de una condición, de que si el cliente se encuentra < if (client) > , colocaremos losiguiente :
Primero un par de variables boolean que nos permitirán recibir la petición del cliente
// una peticion http termina con una linea en blanco
boolean currentLineIsBlank = true;
boolean sentHeader = false;
Luego montaremos nuestro html al servidor
server.print(html);

Ahora haremos un ciclo en donde el webServer trabajara mientras el cliente manifieste una conexión .
En este ciclo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • pollis
  • Pollis
  • Clinica pollis

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS