comunicación – Sonrobots https://sonrobots.com Robots para ti Tue, 25 Apr 2023 23:38:41 +0000 es hourly 1 https://wordpress.org/?v=6.5.3 https://sonrobots.com/wp-content/uploads/2021/01/cropped-DSC_0288-1-32x32.jpg comunicación – Sonrobots https://sonrobots.com 32 32 39789093 Módulo wifi Esp-01s Esp8266 https://sonrobots.com/producto/modulo-wifi-esp-01s-esp8266/ https://sonrobots.com/producto/modulo-wifi-esp-01s-esp8266/#respond Sat, 02 Apr 2022 20:32:56 +0000 https://sonrobots.com/?post_type=product&p=5821 Módulo inalámbrico de comunicación Serial a Wifi ESP8266-01

Te permitirá agregar conectividad inalámbrica wifi a todos tus proyectos electrónicos basados en microcontrolador a un costo muy bajo.

Alcance: Hasta 100mts
802.11 b/g/ n
Voltaje de trabajo: 3.3v
Corriente de trabajo: 240ma
Wi-Fi Direct (P2P), soft-AP (SAP)
Stack de protocolos integrado TCP / IP
Soporta 3 modos: AP, STA, AP + STA
PLL , reguladores, DCXO y unidades de administración de energía integrados.
Potencia de salida: 19.5dBm en modo 802.11b
Consumo en modo de baja energía: < 10ua

Diagrama de conexión arduino

ESP8266-01

Código Arduino

#include <SoftwareSerial.h>

SoftwareSerial wifiSerial(2, 3); // RX, TX for ESP8266

bool DEBUG = true; //show more logs
int responseTime = 10; //communication timeout

void setup()
{
pinMode(13,OUTPUT); //set build in led as output
// Open serial communications and wait for port to open esp8266:
Serial.begin(115200);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
wifiSerial.begin(115200);
while (!wifiSerial) {
; // wait for serial port to connect. Needed for Leonardo only
}
sendToWifi(“AT+CWMODE=2”,responseTime,DEBUG); // configure as access point
sendToWifi(“AT+CIFSR”,responseTime,DEBUG); // get ip address
sendToWifi(“AT+CIPMUX=1”,responseTime,DEBUG); // configure for multiple connections
sendToWifi(“AT+CIPSERVER=1,80”,responseTime,DEBUG); // turn on server on port 80

sendToUno(“Wifi connection is running!”,responseTime,DEBUG);

}

void loop()
{
if(Serial.available()>0){
String message = readSerialMessage();
if(find(message,”debugEsp8266:”)){
String result = sendToWifi(message.substring(13,message.length()),responseTime,DEBUG);
if(find(result,”OK”))
sendData(“\nOK”);
else
sendData(“\nEr”);
}
}
if(wifiSerial.available()>0){

String message = readWifiSerialMessage();

if(find(message,”esp8266:”)){
String result = sendToWifi(message.substring(8,message.length()),responseTime,DEBUG);
if(find(result,”OK”))
sendData(“\n”+result);
else
sendData(“\nErrRead”); //At command ERROR CODE for Failed Executing statement
}else
if(find(message,”HELLO”)){ //receives HELLO from wifi
sendData(“\\nHI!”); //arduino says HI
}else if(find(message,”LEDON”)){
//turn on built in LED:
digitalWrite(13,HIGH);
}else if(find(message,”LEDOFF”)){
//turn off built in LED:
digitalWrite(13,LOW);
}
else{
sendData(“\nErrRead”); //Command ERROR CODE for UNABLE TO READ
}
}
delay(responseTime);
}

/*
* Name: sendData
* Description: Function used to send string to tcp client using cipsend
* Params:
* Returns: void
*/
void sendData(String str){
String len=””;
len+=str.length();
sendToWifi(“AT+CIPSEND=0,”+len,responseTime,DEBUG);
delay(100);
sendToWifi(str,responseTime,DEBUG);
delay(100);
sendToWifi(“AT+CIPCLOSE=5”,responseTime,DEBUG);
}

/*
* Name: find
* Description: Function used to match two string
* Params:
* Returns: true if match else false
*/
boolean find(String string, String value){
return string.indexOf(value)>=0;
}

/*
* Name: readSerialMessage
* Description: Function used to read data from Arduino Serial.
* Params:
* Returns: The response from the Arduino (if there is a reponse)
*/
String readSerialMessage(){
char value[100];
int index_count =0;
while(Serial.available()>0){
value[index_count]=Serial.read();
index_count++;
value[index_count] = ‘\0’; // Null terminate the string
}
String str(value);
str.trim();
return str;
}

 

/*
* Name: readWifiSerialMessage
* Description: Function used to read data from ESP8266 Serial.
* Params:
* Returns: The response from the esp8266 (if there is a reponse)
*/
String readWifiSerialMessage(){
char value[100];
int index_count =0;
while(wifiSerial.available()>0){
value[index_count]=wifiSerial.read();
index_count++;
value[index_count] = ‘\0’; // Null terminate the string
}
String str(value);
str.trim();
return str;
}

 

/*
* Name: sendToWifi
* 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 sendToWifi(String command, const int timeout, boolean debug){
String response = “”;
wifiSerial.println(command); // send the read character to the esp8266
long int time = millis();
while( (time+timeout) > millis())
{
while(wifiSerial.available())
{
// The esp has data so display its output to the serial window
char c = wifiSerial.read(); // read the next character.
response+=c;
}
}
if(debug)
{
Serial.println(response);
}
return response;
}

/*
* Name: sendToUno
* Description: Function used to send data to Arduino.
* 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 sendToUno(String command, const int timeout, boolean debug){
String response = “”;
Serial.println(command); // send the read character to the esp8266
long int time = millis();
while( (time+timeout) > millis())
{
while(Serial.available())
{
// The esp has data so display its output to the serial window
char c = Serial.read(); // read the next character.
response+=c;
}
}
if(debug)
{
Serial.println(response);
}
return response;
}

 

]]>
https://sonrobots.com/producto/modulo-wifi-esp-01s-esp8266/feed/ 0 5821
WIFI ESP01 con adaptador programador UART GPIO0 https://sonrobots.com/producto/wifi-esp01-con-adaptador-programador-uartgpio0/ https://sonrobots.com/producto/wifi-esp01-con-adaptador-programador-uartgpio0/#respond Sat, 02 Jan 2021 21:17:12 +0000 https://sonrobots.com/producto/wifi-esp01-con-adaptador-programador-uartgpio0/ ESP8266 ESP01 Módulo WIFI inalámbrico serial con programador UART CH340G USB

ESP8266 es un chip altamente integrado diseñado para las necesidades de un nuevo mundo conectado. Ofrece una solución de red Wi-Fi completa y autónoma, que le permite alojar la aplicación o descargar todas las funciones de red Wi-Fi de otro procesador de aplicaciones.

El ESP8266 cuenta con potentes capacidades de procesamiento y almacenamiento a bordo que permiten integrarlo con los sensores y otros dispositivos específicos de la aplicación a través de sus GPIOs con un desarrollo mínimo por adelantado y una carga mínima durante el tiempo de ejecución. Su alto grado de integración en el chip permite un mínimo de circuitos externos, y toda la solución, incluido el módulo frontal, está diseñada para ocupar un área mínima de PCB.

Características:

  • SDIO 2.0, SPI, UART
  • Paquete QFN de 32 pines
  • Conmutador de RF integrado, balun, PA de 24dBm, DCXO y PMU
  • Procesador RISC integrado, memoria en el chip e interfaces de memoria externa
  • Procesadores integrados/de banda base
  • Gestión de la calidad de servicio
  • Interfaz I2S para aplicaciones de audio de alta fidelidad
  • Reguladores lineales de baja caída en el chip para todos los suministros internos
  • Arquitectura propia de generación de reloj sin espurias
  • Motores WEP, TKIP, AES y WAPI integrados

Soluciones:

  • Admite APSD para aplicaciones de VoIP óptimas
  • Algoritmo patentado de cancelación de ruidos espurios para su integración en aplicaciones SOC
  • Admite la interfaz de coexistencia Bluetooth
  • RF autocalibrada para garantizar un rendimiento óptimo en todas las condiciones de funcionamiento
  • Sin ajuste de fábrica
  • Sin componentes de RF externos

Especificaciones:

  • 802.11 b/g/n
  • Wi-Fi Direct (P2P), soft-AP
  • Pila de protocolos TCP/IP integrada
  • Conmutador TR integrado, balun, LNA, amplificador de potencia y red de adaptación
  • PLLs, reguladores, DCXO y unidades de gestión de potencia integrados
  • Potencia de salida de +19,5dBm en modo 802.11b
  • Corriente de fuga de apagado de <10uA
  • La CPU de 32 bits integrada de bajo consumo puede utilizarse como procesador de aplicaciones
  • SDIO 1.1/2.0, SPI, UART
  • STBC, 1×1 MIMO, 2×1 MIMO
  • Agregación de A-MPDU y A-MSDU e intervalo de guarda de 0,4 ms
  • Despertar y transmitir paquetes en < 2ms
  • Consumo de energía en espera de < 1,0mW (DTIM3)

1. Alta calidad y bajo precio

2. Acuerdo LWIP

3. Soporta 3 modos: AP, STA, AP+STA

4. Perfecto y simple comandos AT

Utilice este módulo para su próximo proyecto de Internet de las cosas, automatización del hogar, o proyecto de sensor remoto.

Este módulo adapta el ESP8226 IC para su uso a través de una conexión en serie utilizando simples comandos AT.

No se requiere ninguna interfaz SPI o Know-How.

Advertencias:

  • Este módulo requiere un suministro de 3,3 voltios para VCC, y 3,3V lógica. No es tolerante a 5V. Conectar RX o TX en 5V para Arduino será destruir este módulo. Usted debe utilizar un convertidor de nivel lógico, o un 3,3V para Arduino
  • El suministro de 3,3V en el para Arduino Uno tiene capacidad de corriente inadecuada para alimentar este módulo. Usted debe proporcionar un separado, una fuente de 3,3V superior (unos 300mA o más)
  • El módulo ESP8225 es muy nuevo en el mercado y el apoyo y la documentación para él es actualmente muy limitada.

 

Traducción realizada con la versión gratuita del traductor www.DeepL.com/Translator

 

 

]]>
https://sonrobots.com/producto/wifi-esp01-con-adaptador-programador-uartgpio0/feed/ 0 1981