[ RESOLVIDO ] Ajuda com código Arduino - Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)2024-03-29T15:43:20Zhttps://labdegaragem.com/forum/topics/ajuda-com-c-digo-arduino?commentId=6223006%3AComment%3A699380&x=1&feed=yes&xn_auth=noNa verdade eu utilizo um reló…tag:labdegaragem.com,2019-01-29:6223006:Comment:6993802019-01-29T20:43:54.343ZFábio Soares Pireshttps://labdegaragem.com/profile/FabioSoaresPires
<p>Na verdade eu utilizo um relógio que pego do servidor.</p>
<p></p>
<p><a href="https://storage.ning.com/topology/rest/1.0/file/get/917750283?profile=original" target="_blank" rel="noopener">hora.php</a></p>
<p></p>
<p>Mas este que você indicou é bem legal.</p>
<p>Obrigado</p>
<p>Na verdade eu utilizo um relógio que pego do servidor.</p>
<p></p>
<p><a href="https://storage.ning.com/topology/rest/1.0/file/get/917750283?profile=original" target="_blank" rel="noopener">hora.php</a></p>
<p></p>
<p>Mas este que você indicou é bem legal.</p>
<p>Obrigado</p> Boa noite FSP,
este ESP do se…tag:labdegaragem.com,2019-01-29:6223006:Comment:6990942019-01-29T01:08:06.686Zmineirin RVhttps://labdegaragem.com/profile/RuiViana
<p>Boa noite FSP,</p>
<p>este ESP do seu projeto, tem acesso á internet?</p>
<p>Se tiver que tal usar o relógio da internet, o ntp em "a.st1.ntp.br" </p>
<p><a rel="nofollow noopener" href="https://ntp.br/" target="_blank">https://ntp.br/</a>.</p>
<p><a href="https://portal.vidadesilicio.com.br/protocolo-de-tempo-ntp-esp/" target="_blank">https://portal.vidadesilicio.com.br/protocolo-de-tempo-ntp-esp/</a></p>
<p>RV</p>
<p>Boa noite FSP,</p>
<p>este ESP do seu projeto, tem acesso á internet?</p>
<p>Se tiver que tal usar o relógio da internet, o ntp em "a.st1.ntp.br" </p>
<p><a rel="nofollow noopener" href="https://ntp.br/" target="_blank">https://ntp.br/</a>.</p>
<p><a href="https://portal.vidadesilicio.com.br/protocolo-de-tempo-ntp-esp/" target="_blank">https://portal.vidadesilicio.com.br/protocolo-de-tempo-ntp-esp/</a></p>
<p>RV</p> Olá Mineiro.
"Existe um if: …tag:labdegaragem.com,2019-01-28:6223006:Comment:6991962019-01-28T20:20:52.915ZFábio Soares Pireshttps://labdegaragem.com/profile/FabioSoaresPires
<p>Olá Mineiro.</p>
<p></p>
<p><strong>"Existe um if: if (httpCode == 200) { e depois ou else : } else { ajusta();</strong></p>
<p><strong>Ora se o acesso ao site falhar (httpCode != 200, o programa vai para o else, que chama novamente a função,</strong></p>
<p><strong>que se falhar, faz o mesmo, e assim fica até estourar o stack e gerar um dump de erro."</strong></p>
<p></p>
<p>Fiz assim porque eventualmente o servidor que utilizo fica sem energia elétrica.</p>
<p>Estou vendo uma outra…</p>
<p>Olá Mineiro.</p>
<p></p>
<p><strong>"Existe um if: if (httpCode == 200) { e depois ou else : } else { ajusta();</strong></p>
<p><strong>Ora se o acesso ao site falhar (httpCode != 200, o programa vai para o else, que chama novamente a função,</strong></p>
<p><strong>que se falhar, faz o mesmo, e assim fica até estourar o stack e gerar um dump de erro."</strong></p>
<p></p>
<p>Fiz assim porque eventualmente o servidor que utilizo fica sem energia elétrica.</p>
<p>Estou vendo uma outra alternativa.</p>
<p></p>
<p>Ontén encontrei uma provável solução...</p>
<p>Peço que veja e analise para o meu caso e obviamente para os colegas.</p>
<p><a href="https://www.luisllamas.es/libreria-arduino-asynctask/" target="_blank">https://www.luisllamas.es/libreria-arduino-asynctask/</a></p>
<p></p>
<p>Implementei no código e até o momento está funcionando.</p>
<p>Vou testar mais a contagem durante o envio dos dados para ver se há ou não falhas.</p>
<p></p>
<p>Se achar necessário envio o código reformulado.</p>
<p></p> Ah tá. Se a chuva for intensa…tag:labdegaragem.com,2019-01-27:6223006:Comment:6991752019-01-27T19:46:15.195ZVitor Augustohttps://labdegaragem.com/profile/VitorAugusto
Ah tá. Se a chuva for intensa precisa ler o pluviômetro frequentemente.
Ah tá. Se a chuva for intensa precisa ler o pluviômetro frequentemente. Boa tarde FSP,
só pude retorn…tag:labdegaragem.com,2019-01-27:6223006:Comment:6990592019-01-27T17:12:36.738Zmineirin RVhttps://labdegaragem.com/profile/RuiViana
<p>Boa tarde FSP,</p>
<p>só pude retornar hoje pra continuar analisando seu projeto.</p>
<p>Compilei o seu code (usando alguns parâmetros da minha rede e outros de algum site qq), e</p>
<p>ai começaram os problemas:</p>
<p>Na função "ajuste", chamada logo no setup(), tem um erro conceitual.</p>
<p>Existe um if: if (httpCode == 200) { e depois ou else : } else { ajusta();</p>
<p>Ora se o acesso ao site falhar (httpCode != 200, o programa vai para o else, que chama novamente a…</p>
<p>Boa tarde FSP,</p>
<p>só pude retornar hoje pra continuar analisando seu projeto.</p>
<p>Compilei o seu code (usando alguns parâmetros da minha rede e outros de algum site qq), e</p>
<p>ai começaram os problemas:</p>
<p>Na função "ajuste", chamada logo no setup(), tem um erro conceitual.</p>
<p>Existe um if: if (httpCode == 200) { e depois ou else : } else { ajusta();</p>
<p>Ora se o acesso ao site falhar (httpCode != 200, o programa vai para o else, que chama novamente a função,</p>
<p>que se falhar, faz o mesmo, e assim fica até estourar o stack e gerar um dump de erro.</p>
<p>Isto ocorre aqui comigo.</p>
<p>O certo é, no else fazer um return, e no setup(), informar que não conseguiu conectar, e tomar alguma ação.</p>
<p></p>
<p>Sobre o tempo de envio dos dados ao servidor, acredito que Não seja realmente o tempo de envio, e sim o tempo de </p>
<p>leitura deste sensor. Ele realmente tem um tempo de resposta grande, e são feitos 2 acessos a ele:</p>
<p>dht.getHumidity(); e dht.getTemperature();.</p>
<p></p>
<p><span><a href="https://www.filipeflop.com/produto/sensor-de-umidade-e-temperatura-am2302-dht22/" target="_blank">https://www.filipeflop.com/produto/sensor-de-umidade-e-temperatura-am2302-dht22/</a></span></p>
<p><strong>Especificações </strong><strong><span>– Tempo de resposta: 2s .</span></strong></p>
<p>Uma solução para estes caso seria o uso de threads, mas só usei no Arduíno, ainda não usei no ESP</p>
<p><a href="https://github.com/ivanseidel/ArduinoThread" target="_blank">https://github.com/ivanseidel/ArduinoThread</a></p>
<p><a href="https://github.com/bmellstrom/esp8266-arduino-threads" target="_blank">https://github.com/bmellstrom/esp8266-arduino-threads</a></p>
<p></p>
<p>Quanto ao delay de 1000, sugiro substituir pela função miilis(); ou ainda bibliotecas tal </p>
<p>como a timerOne.h ou a elapsedMillis.h ,</p>
<p><a href="http://www.switchdoc.com/2015/10/iot-esp8266-timer-tutorial-arduino-ide/" target="_blank">http://www.switchdoc.com/2015/10/iot-esp8266-timer-tutorial-arduino-ide/</a></p>
<p>(<a href="https://playground.arduino.cc/Code/ElapsedMillis" target="_blank">https://playground.arduino.cc/Code/ElapsedMillis</a>)</p>
<p>RV</p>
<p></p>
<p></p>
<p></p> Tarefa assíncrona e periódica…tag:labdegaragem.com,2019-01-26:6223006:Comment:6991632019-01-26T19:42:11.964ZVitor Augustohttps://labdegaragem.com/profile/VitorAugusto
Tarefa assíncrona e periódica pode fazer com timer e interrupção. Veja esse link<br />
<br />
<a href="http://labdegaragem.com/m/blogpost?id=6223006%3ABlogPost%3A155493" target="_blank">http://labdegaragem.com/m/blogpost?id=6223006%3ABlogPost%3A155493</a><br />
<br />
Mas há problema em perder a leitura do pluviômetro? Em termos climáticos penso que ler os dados a cada 1 min vai funcionar.
Tarefa assíncrona e periódica pode fazer com timer e interrupção. Veja esse link<br />
<br />
<a href="http://labdegaragem.com/m/blogpost?id=6223006%3ABlogPost%3A155493" target="_blank">http://labdegaragem.com/m/blogpost?id=6223006%3ABlogPost%3A155493</a><br />
<br />
Mas há problema em perder a leitura do pluviômetro? Em termos climáticos penso que ler os dados a cada 1 min vai funcionar. Olá Colega RV.
evitar a mort…tag:labdegaragem.com,2019-01-25:6223006:Comment:6992402019-01-25T20:36:22.670Zmoises silvahttps://labdegaragem.com/profile/moisessilva
<p>Olá Colega RV.</p>
<p></p>
<p>evitar a morte não e possivel a não ser com a autorização de nossa Deus. </p>
<p>Abraços</p>
<p>Olá Colega RV.</p>
<p></p>
<p>evitar a morte não e possivel a não ser com a autorização de nossa Deus. </p>
<p>Abraços</p> Somente o ESP01.
Não reparem…tag:labdegaragem.com,2019-01-24:6223006:Comment:6991242019-01-24T14:41:24.217ZFábio Soares Pireshttps://labdegaragem.com/profile/FabioSoaresPires
<p>Somente o ESP01.</p>
<p>Não reparem na lógica e lembrem que sou amador. KKKK.</p>
<p><a href="https://storage.ning.com/topology/rest/1.0/file/get/870633435?profile=original" target="_blank" rel="noopener">estacao_fabio.ino</a></p>
<p></p>
<p>Imagem do projeto no fritzing</p>
<p><a href="https://storage.ning.com/topology/rest/1.0/file/get/870635680?profile=original" target="_blank" rel="noopener">microesta%C3%A7%C3%A3o_F%C3%A1bio.jpg</a></p>
<p></p>
<p>Somente o ESP01.</p>
<p>Não reparem na lógica e lembrem que sou amador. KKKK.</p>
<p><a href="https://storage.ning.com/topology/rest/1.0/file/get/870633435?profile=original" target="_blank" rel="noopener">estacao_fabio.ino</a></p>
<p></p>
<p>Imagem do projeto no fritzing</p>
<p><a href="https://storage.ning.com/topology/rest/1.0/file/get/870635680?profile=original" target="_blank" rel="noopener">microesta%C3%A7%C3%A3o_F%C3%A1bio.jpg</a></p>
<p></p> Bom dia FSP,
tudo neste possí…tag:labdegaragem.com,2019-01-24:6223006:Comment:6991212019-01-24T14:04:25.652Zmineirin RVhttps://labdegaragem.com/profile/RuiViana
<p>Bom dia FSP,</p>
<p>tudo neste possível neste mundo, até evitar a morte, um dia quem sabe.!!!!</p>
<p>Vamos ao seu projeto.</p>
<p>1. Vc está usando um Arduíno e um ESP8266-01, ou somente o ESP8266-01?</p>
<p>2. Evite ao máximo usar delay() no ESP. Isto pode até disparar o wdt dele e ficar dando boots seguidos.</p>
<p>3. Para que possamos ajudar melhor, seria bom vermos o seu sketch e o esquema das suas ligações.</p>
<p>4. Faça assim: </p>
<p> Clique em : " Deseja carregar arquivos? "…</p>
<p>Bom dia FSP,</p>
<p>tudo neste possível neste mundo, até evitar a morte, um dia quem sabe.!!!!</p>
<p>Vamos ao seu projeto.</p>
<p>1. Vc está usando um Arduíno e um ESP8266-01, ou somente o ESP8266-01?</p>
<p>2. Evite ao máximo usar delay() no ESP. Isto pode até disparar o wdt dele e ficar dando boots seguidos.</p>
<p>3. Para que possamos ajudar melhor, seria bom vermos o seu sketch e o esquema das suas ligações.</p>
<p>4. Faça assim: </p>
<p> Clique em : " Deseja carregar arquivos? " e depois em " Escolher arquivo" e anexe o arquivo <br/> com o seu sketch.</p>
<p>5. Depois click em imagem, e post uma imagem com o desenho do esquema do seu projeto.</p>
<p>RV</p>