Será que alguem consegue me ajudar?

Meu Esp01 trava quando faço reset, com um rele ligado no pino GPIO2. Eu ja li aqui no blog que isso é porque o Eps01 nao tem resistor de pull-down nas portas. Oque se faz para contornar isso?

Exibições: 5952

Responder esta

Respostas a este tópico

Bom dia,

para saber o que esta ocorrendo é preciso que você informe devidamente aos colegas garagistas uma boa descrição, um desenho esquemático de como esta conectando seu ESP, seja a mão livre , foto ou como puder, e anexar o codigo que esta usando. Leia por favor este tópico do LDG criado pelo colega Rui Viana http://labdegaragem.com/forum/topics/sugest-o-de-como-postar 

Veja no anexo que carreguei, um esquema funcional para ligar seu ESP8266-01 com um rele que tenha uma entrada isolada com opto acoplador por exemplo.

Mas o ideal é você descrever inclusive que ESP8266 esta usando, leia o tópico do RV e trate de melhorar seu topico, desta forma sera mais fácil receber ajuda.

Meu canal CLIQUE NESTE LINK AQUI

Abs.

CK

Anexos

Ok vou enviar foto sim. E no caso do optoacoplador, qual tu usou?

boa tarde Luiz.

    Como disse o Kwiek, você precisa dar mais detalhes para que não tentemos te ajudar às cegas, o que poderia te trazer informações também imprecisas.

    Durante o BOOT (que ocorre imediatamente após o RESET# do ESP8266 ser liberado), para que o ESP8266 execute o seu código programado "nele" (em real, no chip Flash),  alguns pinos devem estar em níveis lógicos específicos. Isto pode nem sempre ser fácil de se conseguir, dependendo da forma como você vai ligar os dispositivos externos ao ESP8266 (no seu caso, o módulo ESP01).

    Veja as tabelas a seguir, que eu retirei do manual do ESP01:

    Como você pode ver pela "Tabela 3", para executar o código que vc gravou nele Luiz, o pino GPIO2 deve estar em "1" (high). Note porém, que o pino GPIO0 também deve estar em "1". Mas o pino GPIO15 deve estar em "0" (low). Então esta combinação de níveis lógicos é necessária para que o ESP8266 execute o código gravado na Flash.

    Luiz, não sei como estão seus pinos GPIO0 e GPIO15, pois vc não nos enviou seu Hardware. Na verdade não sabemos também como está seu pino GPIO2, pois há relés que são comutados por nível "1" pois são acionados por transistores NPN, e há relés que são comutados por nível "0" pois são acionados por transistores PNP.  Qual deles é o seu caso ???

    Além disso, independente do transistor de acionamento (espero que vc esteja usando um), se observar a "Tabela 2", vai ver que existem resistores de pullup nos pinos GPIO0 e GPIO2, o que significa que apenas analisando a impedância do circuito externo ligado a estes pinos, é que podemos dizer qual o real nível lógico nos pinos após o RESET e portanto durante o BOOT.

   Coloque aqui o esquema do seu Hardware, para que possamos te ajudar.

   Abrçs,

   Elcids

Sim, enviarei a foto do hardware daqui a pouco, mas independente de como o pino é iniciado, o problema é que o esp01 trava. ja falaram aqui que colocando um led de baixo consumo resolveria, mas acho que vou tentar o optoacoplador que o  Kwiek falou.

esqueci de mencionar:

     A numeração da Pinagem mostrada na "Tabela 2", é a utilizada pelo principal fabricante do ESP01 (já que existem bilhões de clones). Infelizmente eles usam uma pinagem fora dos padrões para aquele tipo de conector (pin header). O padrão seria em "zig-zag", mas eles fizeram uma numeração tipo "DIP" no manual, conforme pode-se ver na figura a seguir:

     Espero que a "Tabela 2" não crie confusão, pois tenho visto em incontáveis sites e documentos, a utilização da pinagem em "zig zag", que é o padrão para este tipo de conector.

     Abrçs,

     Elcids

a imagem nao ta boa mas da pra ter uma ideia

Anexos

Luiz, sua foto não ajuda.

      Você está usando uma placa adaptadora para o ESP01, a qual não conhecemos a pinagem (ou teremos que adivinhar ou teremos que sair buscando loucamente no Google as placas adaptadoras existentes no mercado, apenas para descobrir uma pinagem que vc conhece).

      Vemos que vc usa uma placa com o Relé. Mas qual é o transistor nela ? NPN ou PNP???

  Claro que podemos "deduzir" que provavelmente é um PNP, pois a maioria por aí é assim. Mas a sua é assim?

      Publique seu circuito de forma detalhada, e poderemos ajudar você de forma precisa.

      Claro que seu problema pode estar no código, afinal você disse que "trava". Mas "trava" é muito genérico. Muitas coisas podem travar, até mesmo as pessoas.

     Outro detalhe:  "colocar LED de baixo consumo", como vc ou alguém te disse, parece (ou será que é???) coisa de tentativa e erro. Afinal, LEDs acessos e consumindo pouca energia, resolvem todo problema de travamento???  deixo esta pra você mesmo pensar e responder. Vamos resolver as coisas como devem ser resolvidas, sem gambiarras (pelo menos não as mais bizarras).

     Abrçs,

     Elcids

Pelo que pude observar na imagem, você esta usando algum adaptador para protoboard junto a seu ESP8266-01, também notei que esta usando um modulo rele da Robocore que ativa com High. (Anexo imagem)

De qualquer forma, tenha em conta que sua explicação e descrição continuam deixando a desejar, por exemplo, quando você afirma que seu modulo fica travado, você quer dizer que o modulo deixa de funcionar, ou que esta tratando de dizer é que o rele sempre se mantem em um estado sem alternar para o outro, ainda que envie o comando respectivo para que ele comute?

Lembre-se que o seu ESP8266-01 nas saidas GPIO, trabalham com uma tensão de 3.3V, o rele com 5V, você esta alimentado o rele e o ESP adequadamente?

Muitas vezes, e não entrara a discutir isso agora, quando acionamos um transistor destes módulos com 3.3V do GPIO do ESP na base, ocorre o fato de ele continuar por exemplo ligado, não desarmar mesmo quando o GPIO esta em nível LOW (tratando-se de um NPN, se for PNP a logica apenas inverte) isso ocorre porque mesmo com LOW, haverá entre o a base e emissor do transistor uma diferença de potencial igual ou maior que 0,7V ocasionando que o transistor sempre esteja saturado e nunca no corte, não sei se este é seu caso, o ideal é você tentar descrever qual é o seu problema, e o Elcids, eu, e os demais garagistas trataremos de lhe ajudar, mas quem mais tem que contribuir para o tópico é você mesmo com informação.

Anexe seu código também para poder simular aqui para você.

Abs.

CK

Quando digo que o esp-01 trava, é que nao reinicia, fica com o led ligado, e o rele é acionado. neste adaptador, o sinal que vai para o rele é de 3,3v, mas o pessoal que vende, disse que ele ativa com 3,3v mesmo. Então o esp trava e nao iniciao o boot, nao roda uma linha do codigo. por isso nao importa como ta o codigo.

Para que o ESP entre no modo flash, é necessario que o GPIO 0 esteja no nivel LOW, depois se reiniciar o seu modulo sem retirar o GPIO 0 do LOW, o modulo entrara continuamente no modo flash, ou seja pronto para receber um firmware, você esta tirando o GPIO 0 do GND? pode ser que esteja acontecendo isso.

Não importa como ta o código, não é uma resposta feliz, independente de qualquer situação sim importa como esta o código.

Link do seu modulo rele AQUI


Abs.

CK

oi Carlos, boa tarde.

     Parece que nosso amigo não consegue compreender a importância dos detalhes técnicos.

     Na foto dele não fica claro como está a alimentação. Mas veja que se o relé for esse mesmo que vc postou o link (lá tem o datasheet), então para o modelo com bobina de 5V, a tensão mínima que garante o acionamento, é de 3,5V:

   Bem, é claro que o problema pode ser qualquer outro. Só iremos saber se ele cooperar e nos dar mais detalhes para que possamos auxiliá-lo no problema.

    Abrçs,

    Elcids

Oi Elcids,

nossa batalha diário aqui tem sido lidar com este tipo de problema, (Pior que no fundo a gente gosta rsrsrs) as vezes o maior problema esta na má descrição do problema, e o problema em si é relativamente simples.

De qualquer maneira, o forum foi criado para isso, e por outra parte depois de resolvidos fica um legado para todos, alguns colegas como Rui Viana, ( Esta viajando por isso não deve ter entrado no tópico) criou links para ajudar as pessoas a como postar, eu por minha parte sempre peço que todos após resolver seu problema, editem o titulo e coloquem a palavra (RESOLVIDO) antes do mesmo, o que facilita a busca para outros com problemas similares.

Cada tópico é um desafio, e como dizia um professor que tive na universidade, quem ensina, aprende, estar sendo testado todos os dias não faz mais que nos ajudar a afiar todos os dias o nosso fio de conhecimento para não enferrujar, mas claro que se as perguntas fossem melhor formuladas, e os dados melhor disponibilizados, ficaria muito facil para todos.

Mas não desanime (rsrsrsrs) a gente chega lá, aproveito para parabeniza-lo por compartilhar conhecimento e aproveito para enviar um grande abraço.

Costumo participar com o Rui, e o Celso Ito, bem como outros colegas mais assiduamente no bate papo, mas estou em Brasilia a alguns meses devido ao nascimento do meu primeiro netinho, espero vê-lo em breve para nos conhecermos um pouco mais.

Minha empresa: www.cinedigital-brasil.com.br 

Meu e-mail: contato@carloskwiek.com.br

Sds,

CK

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço