lunes, 26 de septiembre de 2016

[Arduino 17] Programar wifibee con comandos AT

Es importante saber como se comunica la WifiBee con los demás servicios para saber como programar arduino después y hacer que este envié los comandos que necesitamos enviar de manera correcta.

Comandos AT

Dejo a su disposición algunos documentos donde se explica la función de cada comando AT.

Ejemplos de programación WifiBee

Para comunicarnos con la wifi bee tendremos que conectarnos por medio de la xbee explorer al PC y abrir el puerto de comunicación serial de arduino. Enviaremos los mensajes por consola y veremos la respuesta en esta misma.

Ejemplo 1: Pequeño servidor web

En este primer ejemplo crearemos un pequeño servidor web con el cual podremos recibir informacion de algunas variables.

Lista de comandos

  • AT
  • AT+RST
  • AT+CWMODE?
  • AT+CWMODE=3
  • AT+CWLAP              (nos dice las redes wifi que estan dentro de alcance)
  • AT+CWJAP="SSID","Password"       (nos conectamos a la red wifi SEBALABS)
    AT+CWJAP="SEBALABS","Electronics"
  • AT+CIFSR (nos dice la ip que tiene nuestro servidor, a mi me entrega la ip 192.168.4.1)
  • AT+CIPMUX=1
  • AT+CIPSERVER=1,80
    Si da error probar con AT+CIPMUX=0, luego AT+CIPMUX=1 y finalmente enviar AT+CIPSERVER=1,80

Ahora que esta creado este pequeño servidor podemos enviar información por medio de la direccion siguiente en el navegador web, como por ejemplo http://192.168.4.1/X=1,Y=2,Z=6

  • AT+CIOBAUD=?          nos dice las velocidades de trabajo de la wifibee
  • AT+CIOBAUD?            nos dice a que velocidad esta trabajando actualmente
  • AT+CIOBAUD=9600   podemos establecer una velocidad de trabajo (9600 bps)

Ejemplo 2: como enviar datos a Ubidots con Wifibee

Primero que nada deben crearse una cuenta en Ubidots.
Luego deben conseguir su TOKEN (NO el API KEY)
Crear una variable en la parte que dice Sources y conseguir el Variable ID
Con esto ya pueden crear un grafico para los valores que vamos a enviar en Dashboard>> AddWidget>> Chart>> Line Chart>> Seleccionamos nuestra variable y damos en finish. No aparecerá nada en nuestro gráfico hasta que hayamos enviado información
Para probar enviar información a nuestro grafico podemos usar el siguiente enlace y vamos a la parte donde dice "Send one value to Ubidots", a continuación completamos con el TOKEN, Variable ID y le asignamos un valor a nuestra variable, para luego presionar "Send Request"

Ahora si deseamos probar la WifiBee ESP8266 y queremos enviar un mensaje de forma manual debemos conectar la wifibee al pc por medio del Xbee explorer, seleccionar el puerto COM y abrir la consola del puesto serial de Arduino IDE para poder enviar y recibir mensajes de la Wifibee.

Preconfiguración

Enviamos por consola los siguiente comandos AT

  • AT
  • AT+RST
  • AT+GMR
  • AT+CWMODE=3
  • AT+CWJAP="SEBALABS","Electronics"
  • AT+CWJAP?
  • AT+CIFSR
  • AT+CIPMODE=1
  • AT+CWJAP?
  • AT+CIPMUX=0

Conexión TCP 

Aquí una vez realizada la conexion AT+CIPSTART="TCP","things.ubidots.com",8080 tenemos unos segundos para enviar toda la info, por lo que hay que se muy rápidos copiando y pegando las lines siguientes jaja
  • AT+CIPSTART="TCP","things.ubidots.com",8080
  • AT+CIPSEND=240   (avisamos que se envía un mensaje de 240 caracteres)
Ahora debemos enviar el siguiente mensaje

  • POST /api/v1.6/variables/IP/values HTTP/1.1
  • Host: things.ubidots.com
  • User-Agent: Arduino-ESP8266/1.0
  • X-Auth-Token: TOKEN
  • Content-Type: application/json
  • Content-Length: 14

  • {"value":1000}

  • +++
Nota: Content-Length: 14 corresponde a la longitud del mensaje {"value":1000}

Enlaces relacionados


No hay comentarios.:

Publicar un comentario