Ir ao conteúdo
  • Cadastre-se

ESP8266 - A Pequena Maravilha para Comunicação WIFI


aphawk

Posts recomendados

@lucianolcoa ,

 

Bom , antes de ficarmos dando chutes :

 

- Meça com um voltímetro qual é a tensão que o seu sensor fornece com luz e sem luz.. Pelo que estou vendo, é um sensor analógico, tipo um LDR. Confirme isto por favor !

 

Aliás, que tal você nos fornecer o modelo dele, ou uma foto, sei lá, qqr coisa para que a gente possa ter alguma ideia bem fundamentada ! Qual o circuito de utilização dele ?

 

Os modernos sensores de luminosidade são bem inteligentes, e tem uma programação muito versátil ( e bem complicadinha ) para utilizar filtros de espectros diferentes ou mudança de sensibilidade.  A maioria é tipo I2C.

 

Os sensores comuns, analógicos, estão em extinção kkkk !

 

Paulo

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

PROGRAMA PARA ENVIAR EMAIL INFORMANDO O ALARME

 

Pessoal, segue um programinha que foi pedido por um usuário, feito usando ESP8266Basic branch 3.0

 

A finalidade do programa é monitorar uma saída de um alarme, ligando a saída do relé de contato seco aos pinos GPI00 e terra ( GND).

 

Para aumentar a imunidade a ruídos, liguei também um resistor de 4k7 entre o pino GPI00 e o +VCC ( 3,3V).

 

O programa fica monitorando essa entrada a cada 5 segundos.

 

Toda vez que houver uma alteração, o programa envia um email ao destinatário, indicando o que que ocorreu, juntamente com o horário correto.

 

Cuidei para que o programa envie apenas um email quando houver uma mudança, isto é, se estava desligado e agora ligou, ou se estava ligado e agora desligou.

 

Uso um serviço chamado de STMP2GO, onde posso criar uma conta gratuita que pode enviar até 20 emails por dia. 

 

Segue o programa comentado, testado rodando em um Nodemcu :

 

memclear
cls
'Primeiro vamos acertar a hora para nossa região
time.setup(-3,1)
'Sempre esperar no minimo 6 segundos apos a leitura da hora
delay 6000
oldalarme = 0
'Vamos criar um botão na tela para parar o programa
button "FIM",[SAIDA]
'Finalmente vamos tentar se o alarme ligou a cada 5 segundos
TIMER 5000,[RUNPROGRAM]
wait

[RUNPROGRAM]
'Vamos ler a entrada
alarme = io(pi,0)
'E verificar se alguma coisa mudou
if alarme = 0 and oldalarme = 1 then
'O alarme foi acionado, vamos comunicar
'Mas antes vamos desativar o timer para nao termos problema
	timer 0
	gosub [ENVIAON]
'E agora esperamos outro evento do alarme
	oldalarme=0
'Acionamos novamente o timer a cada 5 segundos
	timer 5000,[RUNPROGRAM]
end if
if alarme = 1 and oldalarme = 0 then
	timer 0
	gosub [ENVIAOFF]
	oldalarme = 1
	timer 5000,[RUNPROGRAM]
endif
wait


[ENVIAON]
body = "DISPARO ALARME"
mess = "Alarme disparado em "
goto [RESTO]

[ENVIAOFF]
body = "ALARME NORMALIZADO"
mess = "Alarme normalizou em "

[RESTO]
'Vamos pegar o tempo exato do evento a ser comunicado ja no formato
'adequado 
tempo = TIME("hour:min:sec")
'Acrescentamos o horario na mensagem
mess = mess & tempo
'Agora so configurar os dados para usar o STMP2GO
server = "mail.smtp2go.com"
port = 2525
'A seguir o nome do usuario que criei e a senha no STMPT2GO
user = "meu_usuario_stmp2go"
password = "minha_senha_smtp2go"
'Agora indico o email para onde quero enviar
sendto = "email_do_meu_celular"
'Indico quem enviou o alarme, pois posso ter outros ESP8266 !
sendfrom = "[email protected]"
'Agora e so enviar
setupemail server, port, user, password
email sendto, sendfrom, mess, body
return

[SAIDA]
'Faz o programa parar de rodar
timer 0
end

 

 

adicionado 12 minutos depois
Em 30/09/2016 às 17:32, rodrigocirilo disse:

Que legal, então o NodeMCU é só pra facilitar a gravação no caso, a comunicação com o ESP12 ?? então se for usar sempre o sistema ESP8266basic para programação daria pra ver exatamente quais pinos do ESP12E são usados para essa configuração inicial e colocar tipo um soquete, e usar o nodemcu só pra gravar o flash inicial? e depois fazer tudo online?

 

O que eu comprei o vendedor alega ser o de 4Mb, tem como saber visualmente?

 

O NodeMcu faz a mesma função para o ESP12E  que o Arduíno faz para o Atmega328 !!!

 

É só uma plaquinha que já tem a pinagem padronizada para ligarmos a um protoboard, e já tem incluída um regulador de tensão e um chip de conversão serial - USB.

 

Os pinos que ela tem são os pinos disponíveis também no ESP12E, então basta usar o mesmo pino !

 

Mas não dá para fazer isso, de retirar um módulo ESP12E de dentro do Nodemcu pois ele é soldado.

 

Se você for fazer uma plaquinha contendo apenas o ESP12E, vai ter de gravar ele ANTES de soldar na sua placa, ou então deixar os pinos necessários para a gravação colocados em um soquetinho para poder gravar quando quiser.

 

Que eu saiba, todo NodeMcu é de 4Mb de flash, não se preocupe com isso.

 

Paulo

 

  • Curtir 5
Link para o comentário
Compartilhar em outros sites

Aphawk, deixaeu te incomodar mais um pouco. Antes de mais nada finalmente consegui instalar o flasher no meu node e programar pelo *site*, agora so me resta aprender a linguagem deles :)

 

Mas então, no bascom, consegui gerar o .hex e testar no protheus, mas não consigo compilar no chip atmega 328p. tentei usar o extreme burner avr, segui este tuto aqui e não fumfou?

http://www.arduinoecia.com.br/2013/11/gravador-avr-usbasp.html

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Para saber as características do seu LDR, cubra ele totalmente deixando-o totalmente no escuro e meça a resistência. Anote.

Depois esponha-o diretamente ao sol ou a uma fonte de luz muito intensa. Meça a resistência e anote também.

Pronto, se não souber, informe os valores que te ajudaremos a calcular um resistor ideal para "polarizar" a entrada do ADC para você ler, por exemplo de 0 a 1V, 1 a 2V, 0 a 3V..... ou qualquer faixa de valores.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

@lucianolcoa ,

 

Se quiser conhecer mais sobre o Bascom, baixe o meu tutorial que está neste link, que é um tópico destacado aqui no Fórum, e siga as postagens conforme você estiver evoluindo, ok ? No tutorial falo bastante sobre como gravar os Avrs utilizando um simples USBASP.

 

 

Mas não se ilude aqui com o ESP8266Basic, pois ele não é nem 10% do que é o Bascom !

 

No atual estágio, o ESP8266Basic é algo ainda meio acadêmico, sem objetivos comerciais, e sem a profundidade que um engenheiro gostaria.

 

Mas ainda assim, ele me permitiu fazer coisas muito legais com os ESP8266, que eu achava totalmente impossível sem ter um excelente conhecimento da IDE do Arduíno.

 

Paulo

 

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@ViniciusKruz

Ainda estou estudando o seu programa (devagar pois tenho pouco tempo disponível) e não estou conseguindo acionar os relés (no meu caso substitui o relé pelo led do Nodemcu V0.9). Você deu segmento neste seu programa ? Estou aprendendo muita coisa com ele, mas ele está incompleto e ainda tem algumas coisas que eu não entendo direito.

 

No que eu já fiz nele, foi colocar dois bytes de consistência da EEPROM para garantir que os valores lá estão consistentes, caso contrario ignoro e gravo novos por cima. Isto deve ficar interessante com um DS3231 com uma EEPROM real, mas ainda tem muita coisa que eu não sei fazer. Toda vez que eu meto as caras entro pela noite a dentro, pois sempre tem alguma coisa que dá errado, e não estou com muito tempo disponível para me dedicar ao ESP8266. Acho que só vou meter as caras de verdade lá pelo mês de dezembro.

 

Eu coloquei dois botões para mudar o estado de duas caixas de texto e usar para controlar duas portas lógicas, mas não deu certo e a coisa não foi para frente, tentei de tudo, inclusive javascript para mudar o estado das caixas de texto, mas nada funcionou (no passado eu fazia miséria com javascript, mas enferrujei totalmente, se tivesse conseguido trocar os valores destas duas caixas de texto acho que teria conseguido alterar as portas lógicas). Ainda não consigo entender direito como comunicar o ESP8266 com a Internet usando o Arduino IDE. E ainda dou cabeças com os tipos String e char no C.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Citação

A ideia dos pesquisadores britânicos é de que as emissões de ondas do endofulereno conseguem ser ainda mais precisas. Além de relógios exatos, elas podem aprimorar a acuracidade do sistema de posicionamento global — o bom, velho e cada vez mais útil GPS. Com este composto, tal sistema apresentaria uma variação de apenas alguns milímetros de precisão na hora de definir a localização de alguém.

 

Fonte: Um grama do material mais caro do mundo custa US$ 165 milhões

Link para o comentário
Compartilhar em outros sites

Em 01/10/2016 às 09:40, alexandre.mbm disse:

 

Ele possibilita seletividade. É legal, e às vezes, necessário. Existe parecido para Ruby e Node. Mas geralmente eu parto das duas principais versões que vem na distribuição — 2.x / 3.x — e uso o pip de cada uma.

 

O melhor de usar Git e GitHub é que podemos muito fácil e naturalmente devolver algo à comunidade. Eu já submeti uma correção ao pip (para Windows), se me lembro bem. Faço aqui meio que essa "média" em meu favor apenas para tentar afastar o espantalho de que estou movido por interesse comercial. Aff, não é isso.

 

Aliás, só pouquinho! :tw_blush: Não tenho o conhecimento técnico como um fim, mas como um meio. Primeiramente para resolver problemas do dia-a-dia, mas também para trazer algum retorno em $$$, a médio ou longo prazo.

Nesse ponto me assemelho em muito a voce, vejo a eletronica e a automação como um hobby e o conhecimento um divertimento. Tem gente que se distrai vendo filmes, jogando esportes, a minha distração e fazendo projetos $_$

 

Aphawk,novamente queria agradecer, agora a leitura analogica do esp esta a mil maravilhas, seu range vai de 0 a 700, muito mais do que eu precisava, ainda não chega a do arduino(1023) mas ja ta sossegado, da e sobra.

Pergunta. Para outros tipos de sensores, higrometro, sensor de carbono,etc. vale a lei de botar o resistor de 50 k ou da pra ir no "seco" mesmo?

 

tenho outra pergunta também, eu andei cicscando lá no esp basic, consegui acionar botões liga e desliga e até mesmo fazer um grafico de um sensor, mas nnão consegui unir os 2, vai um ou outro, geralmente o que eu coloco 1° na tela de edit. teria uma forma de unificar os 2?

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

@_xyko_

51 minutos atrás, _xyko_ disse:

Pessoal, a atualização do firmware pelo NodeMCU é demorada mesmo?

Está fazendo a mais de meia hora e ainda continua o upload...

 

Não é tão demora assim, a minha dura menos de 5 minutos (nunca cronometrei, mas acho que é menos ainda, algo como 2 minutos), algo deu errado. Como está a sua configuração do flasher ? Você está atualizando usando que soft ? Eu uso o que veio com o pacote do LuaLoader, que para mim é o mais tranquilo e usa interface gráfica.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

14 horas atrás, Intrudera6 disse:

Você deu segmento neste seu programa ?

 

Estou trabalhando eu um outro projeto e estou meio parado com esse projeto, até porque estou esperando chegar umas peças que comprei.

 

 

15 horas atrás, Intrudera6 disse:

Isto deve ficar interessante com um DS3231 com uma EEPROM real

 

Das peças que comprei está incluso um RTC desse modelo. Chegando, eu já devo fazer a migração tanto para o 3231 quanto para a eeprom física.

 

15 horas atrás, Intrudera6 disse:

Eu coloquei dois botões para mudar o estado de duas caixas de texto e usar para controlar duas portas lógicas, mas não deu certo e a coisa não foi para frente, tentei de tudo...

 

Teria como você postar seu código pra eu poder te ajudar melhor? Não precisa postar o código todo, basta postar onde estão os botões e a função que envia o comando ao ESP.

 

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

39 minutos atrás, _xyko_ disse:

Pessoal, a atualização do firmware pelo NodeMCU é demorada mesmo?

Está fazendo a mais de meia hora e ainda continua o upload...

A minha demora na IDE do arduino, nao sei por que mas tem vez que lá chega a 20 min, tem vez que com 5 minu vai. Alias, to quase abandonando a ide do arduino. Se eu conseguir fazer o esp8266basic funcionar com o inventor eu abandono ela de veiz, kkkk mas por enquanto eu vou levando com este "mal necessário".

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@ViniciusKruz

A noite eu passo isso, vou mandar inteiro anexado como ZIP, acho que fica extenso demais para aparecer aqui como um post normal.

 

adicionado 1 minuto depois
6 minutos atrás, ViniciusKruz disse:
15 horas atrás, Intrudera6 disse:

Isto deve ficar interessante com um DS3231 com uma EEPROM real

 

Das peças que comprei está incluso um RTC desse modelo. Chegando, eu já devo fazer a migração tanto para o 3231 quanto para a eeprom física.

 

E não se esqueça da bateria LIC2032.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@aphawk Paulo seu codigo ficou excelente, muito fácil de entender... só restaram algumas pequenas duvidas.

 

Para chamar a ENVIAON e ENVIAOFF você usa o (gosub) e para chamar [RESTO] você usa goto, porque?

 

Para eu entender como os  codigos rodam no esp8266basic, seria algo parecido com o que acontece nos microcontroladores, aquilo que  programou é um loop infinito, fica rodando o programa todo?

 

Sobre sacar o ESP12E do NodeMCU sei que pode ser difícil, mas com uma estação soprador seria possivel e eu poderia usar o nodemcu só para gravar os ESP´s? colocar tipo de um soquete no nodemcu e usa-lo só para gravar o flash inicial? no caso de eu usar o ESP em uma outra placa.

 

Att.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

19 minutos atrás, _xyko_ disse:

@Intrudera6

O upload é feito a 115200bps ou 9600bps?

Pelo menos a comunicação normal com comandos AT funciona normalmente a 115200.

no nodemcu flasher a 115200, mas quando voce testa ele no ESPLORER, voce usa o normal, 9600, vai saber Deus por que. ._.

 

Segui esse tutorial aqui quando instalei a firmware, não tiv do que reclamar, tomara que ele o oriente bem também

http://www.arduinoecia.com.br/2016/05/firmware-nodemcu-esp8266-ESP-01.html

Mas ão curti o ESPLORER não, nem a linguagem LUA, quando em conjunta com o esp. Melhor mesmo é a ide do arduino, vou testar esse basic em alguns conceitos, se eu conseguir equipara-lo a ide do arduino, migro de vez pro basic, mas enquanto isso....

 

Ps: Há a possibilidade de seu firmware tar zoado também, experimenta baixar outro firmware de outro lugar.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!