FVM Learning

Nosso maior compromisso é compartilhar conhecimentos, somos simples mas não simplórios, astuto mas não pacóvio, nos posicionamos empenhados em mostrar o caminho para desmistificação do opróbrio em legítima defesa do conhecimento compartilhado. Eng. Jemerson Marques.

sábado, 15 de dezembro de 2018

Conhecendo ESP8266, Especificações e comparações com ESP32 e Arduino

Conhecendo ESP8266, Especificações e comparações com ESP32 e Arduino

Nesse post iremos tratar de um assunto que é de vital  importância para quem deseja  entrar ou já entrou  no mundo da Automação e seus derivados, vamos falar sobre o Módulo ESP8266.

O que exatamente é o módulo ESP8266

O ESP8266 é um microcontrolador tipo  sistema em chip (SoC) de uma fabricante chinesa chamado Espressif, esses módulo inclui capacidades para processamentos de dados, leituras e controles das portas GPIO, e tem Protocolo de comunicação em rede TCP/IP sem fio, Wi-Fi de 2,4 GHz (no padrão 802.11 b/g/n, com Suporte a criptografia de segurança WPA/WPA2).

Para que server o ESP8266

Em primeiro lugar, não podemos responder uma pergunta desta com uma  simples resposta...
Pois são infinitas as suas aplicações; porém iremos esclarecer aqui de forma direta e resumida, algumas das suas mais comuns utilidades, que são:

Internet das coisas – ou Internet of Things (IoT), é muito provável você já ter escutado sobre isso, e se você já é um amante da tecnologia, muito provavelmente você já sabe o que é isso.

Automação e Controle – Seja industrial, ou residencial, automobilístico ou qualquer que seja, esse módulo executa o trabalho.

Transmissão de dados – Por ter a tecnologia WiFi integrado, podemos transmitir dados a uma rede Wireless de uma forma fácil e sem muito esforço.

Processamento de dados – Esse processamento vai de, leitura de sensores analógico digital, até calculus complexos para processar resultados, seja comparadores, seja multiplicadores, somadores ou qualquer outro que o controlador necessite, poderá ser executado.

Gerenciamento de dados – Nesta modalidade o ESP recebe os dados por exemplo de um sensor e gerencia o que fazer entregando resultados dependendo do tipo de processamento à qual foi programado.

Conexão em redes – Com este módulo podemos conectar a qualquer rede de computadores disponível.

WebServer – Essa modulo permite que façamos um servidor Web com ele, e podemos acessar uma página escrita em HTML, PHP ou qualquer outra linguagem de desenvolvimento WEB suportado por ele.

AcessPoint – Podemos também fazer comunicação entre ESPs, diretamente sem precisar de nenhuma rede externa, ou seja comunicação ponto a ponto, ou acessar com um Smartphone, computador ou seja o que for diretamente com o ESP8266 sem precisar de uma Rede Externa.

Aplicações

As aplicações são infinitas, porém separamos algumas das principais para o nosso melhor entendimento.
Automação residencial e Industrial
Monitoramento remoto cameras e sensores
Segurança doméstica, comercial e industrial
Tomadas inteligentes
Controle industrial sem-Fio
Monitoramento de bebês, crianças ou idosos
Eletrônica vestível
Dispositivos para localização via Wi-Fi
Tags de identificação para segurança
Câmeras IP
Robótica

Tipos de ESPs

São inúmeras as quantidades e variações desses ESPs no mercado... Porem abordaremos os mais conhecidos do nosso mercado que serão do ESP01 ao ESP13.
Irei demostrar as características básicas dos mais populares que separei para visualizarmos o que melhor se adequará no perfil do seu projeto:


ESP: 01: Para esse módulo existe duas versões, são diferenciadas pela cor, o módulo azul tem 500KB de memória Flash e o módulo preto tem 1MB de memória Flash. É um módulo bem popular, medindo: 24,75 x 14,5 mm,  ele tem 2 GPIOs disponíveis.



ESP: 02 – Medindo 14,7 x 14,2. Este módulo utiliza conector U.FL para antena pigtail externa, é de bom proveito para quem deseja dar ganho no sinal e fazer por exemplo transmissão a longa distância, ele possui 3 GPIOs disponíveis. 




ESP: 03 – Esse módulo possui uma antena de cerâmica, que ajuda na proteção contra interferências, ele possui um pino de Antena pelo qual você pode soldar uma antena externa, ele mede 12,2 x 17,4mm, ele possui 7 GPIOs disponíveis.





ESP: 04 – Este mede 14,7 x 12,1mm, ele não possui antena onboard, somente um pino de Antena soldável para usar com antena externa, ele possui 7 GPIOs.




ESP: 05 – Esse módulo é um um pouco diferente dos outros, ele não possui GPIOs, foi desenvolvido para projetos de IoT que necessite utilizar conexão de rede de internet por um baixo custo. Por exemplo, Arduino, Raspberry, microcontrolador PIC ou qualquer outro sistema que precise se comunicar, com a rede de internet, possui conector U.FL para antena externa, e suas medidas são 14,2 x 14,2mm.






ESP: 06 – Este possui 7 GPIOs, a antena assim como suas conexões são soldáveis na parte inferior do módulo,  mede 14,2 x 14,7mm. Esse é um tipo de ESP minimalístico para projetos vestíveis.







ESP: 07 Esse módulo existem duas versões, o 07 e o 07s, por o 07s ser uma atualização do 07, ambos possuem 9 GPIOs, a diferença ente eles basicamente são: O 07 vem com dois tipos de antena, a de cerâmica e a com conector U.FL, tem 1MB memoria Flash, suas conexões soldáveis na parte inferior e mede 10 x 14mm, já o 07s só tem o conector de antena U.FL, e tem 4MB de memoria Flash.







ESP: 08 – Assim como o 06, este módulo possui suas conexões e antena soldáveis, dotado de 7 GPIOs, mede 17 x16mm.






ESP: 09 – Esse módulo é um dos mais compactos, medindo apenas 10x10mm, tem seus contatos soldados por baixo do módulo, ele tem 6 GPIOs, não tem a proteção metálica contra interferências, para uso em locais com muitas interferências eletromagnéticas, este não é muito recomendado.




ESP: 10 – Se assemelha com o ESP 05, ele não tem opções de GPIOs,  a única diferença notável entre ambos é a antena deste módulo que é soldável, já que o ESP 05 ele tem a conexão U.FL, suas medidas são: 14,2x10mm.



ESP: 11 – Esse só tem 2 GPIOs disponíveis, ele também não tem proteção metálica dos CIs, suas medidas são: 14,2x10mm.





ESP: 12E & 12F – Esses módulos são bastante semelhantes, se não tiver impresso na placa do módulo qual modelo ele é, podemos orientarmos através da antena, que do 12F tem a antena mais espaçada e diferenciada dos outros modelos, ambos possuem 4MB de memoria Flash e medem 24.0 x 16.0mm.









ESP: 13 – Esse possui 9 GPIOs, medindo 20.0 x 19.9mm, ele possui 4MB de memória flash.
Nós sabemos que existe mais módulos, porém como falei no início, iriamos abordar os mais conhecidos e fácil de encontrar no mercado brasileiro.



Se você deseja saber sobre alguns mais: 

Você pode também pesquisar por: ESP 14ESP-201 , WT8266-S1 e S2, WT8266-DK V2 e V2... Entre outros.

Agora vamos conhecer os módulos embarcados com o ESP8266.

Módulos embarcados com os ESPs.

Os mais conhecidos são:

WEMOS D1 R2 e o NODE MCU ESP8266 -  Que são bastante populares e utilizados por projetistas do mundo todo.



O WEMOS D1 R2 se assemelha a um Arduino, foi projetado para quem já desenvolve projetos com Arduino não ter dificuldades pois com ele também podemos programá-lo na plataforma Arduino.




NODE MCU ESP8266 tem sua forma bem mais compactada, que é ótimo para  projetos compactos sem espaços físicos, seu único inconveniente é que ele não se adapta as Protoboards, porém isso é o de menos.



Mas, temos também os WEMOS D1 MINI PRO e o NODE MCU ESP32 – Que são bem ultilzados não com a mesma proporção que os outros dois.


O WEMOS D1 MINI PRO foi projetado diferente do WEMOS D1 R2 com intenções tornar mínimo o seu espaço físico para projetos que requer mínimo espaço possível.



Agora quando se fala do ESP32 pode-se dizer que estamos falando de um nível acima, pois além de ter o dobro de poder de processamento do ESP8266, tem  embarcado nele tecnologia Bluetooth,  quantidade de GPIOs bem superior que o ESP8266, e outras grandes vantagens que iremos ver já já no comparativo que fizemos nos logo abaixo.


Especificações

Nesta tabela de especificações do ESP8266, na primeira linha da tabela que fala de corrente de consumo vamos deixar para o falar mais a frente, pois precisamos entender alguns parâmetros e características do mesmo.

Então vemos que o processador é de 1 núcleo
Sua arquitetura de trabalho e de 32bits
É um processador Xtensa LX106, com clock de velocidade ajustável para 80  ou 160Mhz, depende da sua opção. 
Com conexão WiFi integrado, que faz uso de tecnologia padrão IEEE802.11b, g, n. 
Não tem conexão Bluetooth
Memoria RAM é de 160kB que são divididas 64KB para instruções e 96KB para dados. 
Memoria FLASH é QSPI Externo de 512KB à 4Mb, dependendo da versão. 
Ele tem 16 GPIO. Não tem conversão Digital Analógico. 
Tem uma GPIO conversor Analógico para Digital. 
E por fim, 4 Interfaces de comunicações: SPI - I2C – UART – I2S.

Consumo de corrente

Nesta tabela podemos entender o porque não podemos determinar a corrente de consumo do ESP8266 em um único parâmetro.
Pois existe diferentes modos de utilização que alteram em muito o seu consumo, e isso depende de como você pretende trabalhar com o seu ESP8266.


Vamos analisar:

Sabemos que o padrão utilizado pelo ESP8266 é o IEEE802.11b, g, n, que vai de  2.4Ghz à 5.0Ghz
Então: 
Com transmissão no padrão 802.11b, a potência máximo de saída,  Pout em +19,5dBm, a corrente também é Máxima, o tipo de modulação é o CCK com velocidade a 1Mbps, o consumo é de aproximadamente 197mA, que pode variar dependendo do que se está utilizando, por exemplo os pinos de saída alimentando alguns sensores, com isso a variação ficará superior a 197mA
No datasheet do fabricante a corrente máxima do módulo é de 220mA.

Já a potência em +17dBm, com transmissão padrão 802.11b, a corrente fica em torno de 170mA, utilizando o mesmo tipo de modulação CCK alcançamos velocidades de 11Mbps.

Já com transmissão Padrão 802.11g, a potência de saída em +15dBm a corrente típica é 140mA, e o tipo de Modulação é o OFDM com velocidade de transmissão à 54Mbps.

Para potência de +13dBm, utilizando o Padrão 802.11n, a corrente de consumo é aproximadamente 120mA, e a modulação utilizada é a MCS7.

Logo após temos a potência de saída a -80dBm, a corrente fica tipicamente em 50mA utilizando-se o Padrão 802.11b.

O próximo a -70dBm, com padrão 802.11g, a corrente tipica é de 56mA. E no padrão 802.11n a -80dBm, a corrente continua a mesma 56mA.

A partir de agora já entramos em formas especiais do ESP, que são:

Moden-Sleep que utiliza 15mA.
Light-sleep, que utiliza incríveis 0,5mA
Power Save Mode DTIM1 que utiliza 1.2mA e o Power Save Mode DTIM3 que utiliza 0,9mA
Deep-Sleep que utiliza 10 Micro Amperes
Power Off que utiliza 0,5Micro Amperes.

Comparações entre ESP8266 e Arduino UNO

Nesta tabela fizemos comparações entre o ESP8266 o ESP32 e o Arduino UNO R3 para visualizarmos as diferenças mais detalhadas entre eles.

Primeiro ponto - Corrente de consumo: vemos aqui uma das únicas vantagens do Arduino sobre os ESPs, que é a corrente, isso eu falo entre aspas, pois dependendo do modo que utilizamos o ESP ele pode suprir essa demanda de corrente, e sem contar que se nós quisermos ligar um Arduíno UNO em rede para comunicação com a internet teria-mos que utilizar o Módulo Shield de rede Wireless que consumiria bastante energia e quando fizermos o somatório das correntes, certamente se aproximaria do ESP.

Segundo ponto – Núcleo de Processamento: O ESP8266 tem 1 o Arduino também, só o ESP32 que tem 2 núcleos de Processamento.

Terceiro Ponto – Arquitetura: Os ESPs trabalho com arquitetura de 32bits enquanto que o Arduino trabalha com 8bits, que uma grande diferença para um embarcado.

Quarto Ponto – Clock de processamento: O ESP8266 trabalha com 80Mhz ou 160Mhz você pode escolher qual velocidade de clock você quer que seu Módulo trabalhe, O ESP32 também trabalha com duas escolha, porém é de 160Mhz ou 240Mhz, que é bastante rápido para um microcontrolador, já o Arduino trabalha em 16Mhz, que é bastante inferior aos ESPs.

Quinto pontoWiFi: Que os ESPs já vem embarcado neles o sistema Wireless sem fio, e o Arduíno não tem.

Sexto PontoComunicação Bluetooth: Só o ESP32 que já vem com o Bluetooth embarcado.

Sétimo PontoMemória RAM: O ESP8266 tem 160KB, o ESP32 tem 520KB e o Arduino tem 2KB, realmente é gritante a diferença de memoria RAM entre os ESPs e o Arduino.

Oitavo PontoMemoria Flash: O ESPs tem 4MB e o Arduino tem 32KB, novamente passa longe a diferença entre eles.

Nono PontoGPIOs: No ESP8266 são 11 GPIO, no ESP32 são 22GPIO e o Arduino são 12GPIO.

Décimo PontoDAC: O único que tem o conversor Digital Analogico é o ESP32 que tem 2 GPIO com conversor Digital Analógico.

Décimo Primeiro PontoADC: O ESP8266 só tem um conversor analógico digital, que é uma pena, pois perde feio para o Arduino UNO que tem 6 GPIO e muito mais para o ESP32 que tem 18 GPIO.


E por Fim Interfaces: O ESP8266 suporta SPI - I2C – UART – I2S; Já O ESP32 Suporta SPI – I2C – UART – I2S – CAN; O Arduino como a maioria já conhece, suporta: SPI – I2C  e UART.


Vantagens do ESP8266 Sobre os Arduino




Obviamente as vantagens e desvantagens dependem muito de cada usuário, pois nem todos tem as mesmas necessidades ou gostos. Então é válido lembrar que as opiniões podem divergir um pouco das suas  caro leitor, mais não que dizer que seja a ultima verdade dita, é somente uma opinião baseado em nossos conhecimentos e usabilidades com os mesmos.

A primeira Vantagem: Em nossa opinião a primeira vantagem do ESP sobre o Arduino é a tecnologia de transmissão sem fio “WIRELESS” embarcada no ESP, Pois isso facilita em muito a conexão com WEB, sem uso de SHILDs, ou periféricos, como é necessário em um Arduíno.

A segunda Vantagem: Velocidade, pode de processamento, é sem dúvida uma discrepância muito grande quando se fala de poder de Hardware entre os ESPs e o Arduíno.

Terceira Vantagem: Tamanho, com a tecnologia se avançando, é de suma importância que cada vez mais as plaquinhas tenham os seus tamanhos bem reduzidos, que é o caso do ESP, bem menor em comparação com o Arduino.

Quarta Vantagem: Preço, o valor de compra de um Arduino com um SHIELD Wireless chega a ser absurdo, ultimo levantamento que fiz, foi de Aproximadamente R$249,00, em comparação com o ESP que já vem com o Wireless embarcado, seu custo foi de R$21,00. Isso em uma conta rápida é aproximadamente 12 vezes mais caro, e sem contar com o tamanho que é bem maior que o ESP.

Quinta Vantagem: Pode não ser tão significante, porém quando estamos em lugares distantes que não dotamos do cabo de comunicação USB que no Arduíno é o padrão AB,  aqueles que se usa em impressoras, nem sempre temos um deles por perto, então para mim, temos mais uma vantagem do cabo utilizado para comunicação com o NODE MCU ESP que é o MINI USB, que usamos para carregar nosso celular, que é bem fácil encontrarmos em qualquer lugar em que nós estivermos.

QUAL MÓDULO DEVO ESCOLHER

Eu acredito que agora está mais fácil para você que leu todo o nosso post se decidir. Baseado no contexto aqui abordado, vamos resumi.

Separei os 4 mais popular, e por ser popular é porque tem algo diferenciados neles que os tornam mais popular

1° O Node MCU – Esse módulo é para quem está desenvolvendo projetos, e precisa da disponibilidade de todos os pinos, trabalhar em uma Protoboard, “Mesmo sabendo que temos que ter ao menos duas Protoboard juntas para suporta-lo, pois com uma Protoboard os pinos não ficam completamente acessíveis”, Então se você precisa manipular as GPIOs fazendo testes incessantes, eu lhe recomendo uma placa completa para esses fins.

O WEMOS – Esse Módulo, é totalmente semelhante ao NODE MCU, pois tem praticamente as mesmas GPIOs, só que em uma estrutura de um Arduino, então você pode optá-lo por ela, se você é acostumado com o Arduino e quer manter esse mesmo design, ambos fazem os mesmos trabalho, neste caso é só questão de gosto, ou de preço.

3° ESP 01 – Esse módulo é um módulo prático para projetos pequenos, pois só disponibiliza 2 GPIOs, e com isso limita o número de portas para receber ou dar informações, muito usado em projetos que não precisam de muitas saídas, exemplo: Você faz uma casa automatizada, então para cada interruptor de cada cômodo de sua residência, você precisa de um destes, então você não vai colocar um Node MCU com 11 GPIOs, ou da mesma forma um WEMOS ou um ESP 12, pois só precisa de 1 ou no máximo 2 GPIOs. Então esse é o modulo ideal.

4° ESP 12 – Esse módulo tem as mesmas disponibilidade de pinos dos demais, porém, ele é mais para que já terminou o projeto e só vai reproduzir os circuitos. Pois por ele ser um módulo sem porta USB, para gravá-lo, é necessário você ter um Adaptador FTDI, que faz a comunicação serial para USB, e ainda, fazer alguns Jumpers para indicar para o módulo que ele estará em modo de gravação ou de leitura. E para isso é necessário você soldar, porque não há disponibilidade de pinos, então para projetar e ficar fazendo testes com um modulo desse, não é muito prático.

Plataformas de Programação

As plataformas mais popular e conhecidas hoje, são duas: 

A primeira: ESPlore
Ela é uma IDE – Que é uma sigla do Inglês para (Integrated Development Environment )  é multiplataforma, ou seja, funciona no Windows, no Linux no MAC OS e também no Solaris sem problema algum.
E você vai precisar desse ambiente para programar o seu Node MCU, e sem contar que foi desenvolvida aqui no Brasil, então, ponto para nós Brasileiros.


O segundo é: Arduino IDE
Essa plataforma dispensa comentários, pois é bem conhecido de todos nós fazedores.
É uma IDE de programação open-source que utiliza a linguagem C e C++, com algumas pequenas acentuações voltadas para embarcados.
É também multiplataforma, funciona no Windows, no Linux, no MAC OS e também no Solaris.


Finalizamos aqui o nosso grande post.

Se inscreva no nosso Blog!!! Click Aqui! FVML 

Se você quiser assistir mais detalhes, entra no nosso canal do YouTube e veja todos os detalhes.




Obrigado

Deus vos abençoe

Shalom


2 comentários:

  1. Perfeito, tudo que eu precisava saber, estava cheia de dúvidas, agora está tudo esclarecido.
    Valeu.

    ResponderExcluir
  2. Olá Celiminha Laiz
    Muito obrigado.
    Que ótimo que lhe ajudo, ficamos muito feliz.
    Forte abraço.

    ResponderExcluir