Comunicação entre dois arduinos sem terra comum. - Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)2024-03-28T19:09:53Zhttps://labdegaragem.com/forum/topics/comunica-o-entre-dois-arduinos-sem-terra-comum?commentId=6223006%3AComment%3A782779&feed=yes&xn_auth=nohttps://forum.arduino.cc/inde…tag:labdegaragem.com,2020-11-18:6223006:Comment:7924062020-11-18T23:13:45.758ZAndre Francisco Leaohttps://labdegaragem.com/profile/AndreFranciscoLeao
<p><a href="https://forum.arduino.cc/index.php?topic=416904.0" target="_blank">https://forum.arduino.cc/index.php?topic=416904.0</a></p>
<p></p>
<p>Me baseando no algoritomo desse link consegui fazer a comunicação funcionar a contento agora.</p>
<p></p>
<p>Agradeço a todos pela ajuda.</p>
<p><a href="https://forum.arduino.cc/index.php?topic=416904.0" target="_blank">https://forum.arduino.cc/index.php?topic=416904.0</a></p>
<p></p>
<p>Me baseando no algoritomo desse link consegui fazer a comunicação funcionar a contento agora.</p>
<p></p>
<p>Agradeço a todos pela ajuda.</p> Esses links deram uma claread…tag:labdegaragem.com,2020-11-09:6223006:Comment:7841462020-11-09T00:24:50.342ZAndre Francisco Leaohttps://labdegaragem.com/profile/AndreFranciscoLeao
<p>Esses links deram uma clareada. Vou verificar com calma e fazer os testes. </p>
<p>Obrigado.</p>
<p>Esses links deram uma clareada. Vou verificar com calma e fazer os testes. </p>
<p>Obrigado.</p> Sim, estou, pois estou usando…tag:labdegaragem.com,2020-11-09:6223006:Comment:7841452020-11-09T00:24:09.507ZAndre Francisco Leaohttps://labdegaragem.com/profile/AndreFranciscoLeao
<p>Sim, estou, pois estou usando a serial por hardware para ver os dados no monitor. Vou testar essas opções. Obrigado.</p>
<p>Sim, estou, pois estou usando a serial por hardware para ver os dados no monitor. Vou testar essas opções. Obrigado.</p> Boa noite André,
Sugiro que…tag:labdegaragem.com,2020-11-09:6223006:Comment:7842172020-11-09T00:13:42.833ZJosé Gustavo Abreu Murtahttps://labdegaragem.com/profile/GustavoMurta
<p>Boa noite André, </p>
<p>Sugiro que faça testes exaustivos com ligação direta das interfaces seriais, até conseguir bons resultados.</p>
<p>E depois faça os testes com a interface isolada. </p>
<p></p>
<p><a href="https://robotic-controls.com/learn/arduino/arduino-arduino-serial-communication" target="_blank">https://robotic-controls.com/learn/arduino/arduino-arduino-serial-communication…</a></p>
<p></p>
<p>Boa noite André, </p>
<p>Sugiro que faça testes exaustivos com ligação direta das interfaces seriais, até conseguir bons resultados.</p>
<p>E depois faça os testes com a interface isolada. </p>
<p></p>
<p><a href="https://robotic-controls.com/learn/arduino/arduino-arduino-serial-communication" target="_blank">https://robotic-controls.com/learn/arduino/arduino-arduino-serial-communication</a></p>
<p><a href="https://iot-guider.com/arduino/serial-communication-between-two-arduino-boards/" target="_blank">https://iot-guider.com/arduino/serial-communication-between-two-arduino-boards/</a></p>
<p><a href="https://www.mschoeffler.de/2020/01/12/arduino-to-arduino-communication-via-serial-connection/" target="_blank">https://www.mschoeffler.de/2020/01/12/arduino-to-arduino-communication-via-serial-connection/</a></p>
<p><a href="http://www.zonnepanelen.wouterlood.com/arduino-bare-basics/arduino-passing-temperature-readings-to-a-neighbor-arduino-three-ways-of-serial-communication/" target="_blank">http://www.zonnepanelen.wouterlood.com/arduino-bare-basics/arduino-passing-temperature-readings-to-a-neighbor-arduino-three-ways-of-serial-communication/</a></p> Boa noite,
Tenho quase certez…tag:labdegaragem.com,2020-11-08:6223006:Comment:7842102020-11-08T23:40:00.674ZCurti Esse Lado Seu Otimistahttps://labdegaragem.com/profile/eijuito
<p>Boa noite,</p>
<p>Tenho quase certeza de que está usando uma biblioteca do tipo SoftSerial.</p>
<p>O arduino não é capaz de trafegar dados de forma confiável a 9600 ou mais usando simulação de portas seriais.</p>
<p>Recomendo testar com velocidades de 4800, 2400 ou até 1200 bps.</p>
<p>Boa sorte,</p>
<p> 'Eiju</p>
<p>Boa noite,</p>
<p>Tenho quase certeza de que está usando uma biblioteca do tipo SoftSerial.</p>
<p>O arduino não é capaz de trafegar dados de forma confiável a 9600 ou mais usando simulação de portas seriais.</p>
<p>Recomendo testar com velocidades de 4800, 2400 ou até 1200 bps.</p>
<p>Boa sorte,</p>
<p> 'Eiju</p> Estou usando o P817, mas crei…tag:labdegaragem.com,2020-11-08:6223006:Comment:7841322020-11-08T23:05:28.600ZAndre Francisco Leaohttps://labdegaragem.com/profile/AndreFranciscoLeao
<p>Estou usando o P817, mas creio que o problema aqui não é mais a comunicação. </p>
<p></p>
<p>Estou aprendendo agora sobre transmissão e recepção de dados e eu não estou sabendo formatar corretamente os dados para envio e decodificar na recepção.</p>
<p></p>
<p>Eu preciso enviar 4 grandezas medidas (tensão, corrente, potência e temperatura).</p>
<p>Em praticamente tudo o que pesquisei na internet, sempre ensinam a mesma coisa, como enviar um evento, ou uma String, apertar um botão, e coisas…</p>
<p>Estou usando o P817, mas creio que o problema aqui não é mais a comunicação. </p>
<p></p>
<p>Estou aprendendo agora sobre transmissão e recepção de dados e eu não estou sabendo formatar corretamente os dados para envio e decodificar na recepção.</p>
<p></p>
<p>Eu preciso enviar 4 grandezas medidas (tensão, corrente, potência e temperatura).</p>
<p>Em praticamente tudo o que pesquisei na internet, sempre ensinam a mesma coisa, como enviar um evento, ou uma String, apertar um botão, e coisas simples. Mas enviar essas variáveis em tempo real, preciso converter de float para byte, para enviar, e depois fazer o inverso no receptor.</p>
<p>Ainda não sei qual a melhor maneira de fazer isso.</p> Boa tarde,
Qual opto-acoplad…tag:labdegaragem.com,2020-11-08:6223006:Comment:7838832020-11-08T20:46:31.933ZJosé Gustavo Abreu Murtahttps://labdegaragem.com/profile/GustavoMurta
<p>Boa tarde, </p>
<p>Qual opto-acoplador esta usando?</p>
<p>Veja as característica do <strong>HCPL-0600</strong>. Compare com o seu. </p>
<p><strong>High CMR, High Speed TTL Compatible Optocouplers</strong></p>
<p><a rel="nofollow noopener" href="https://docs.broadcom.com/doc/AV02-0940EN" target="_blank">https://docs.broadcom.com/doc/AV02-0940EN</a></p>
<p>Boa tarde, </p>
<p>Qual opto-acoplador esta usando?</p>
<p>Veja as característica do <strong>HCPL-0600</strong>. Compare com o seu. </p>
<p><strong>High CMR, High Speed TTL Compatible Optocouplers</strong></p>
<p><a rel="nofollow noopener" href="https://docs.broadcom.com/doc/AV02-0940EN" target="_blank">https://docs.broadcom.com/doc/AV02-0940EN</a></p> Bom dia.
Sim, eu percebi. M…tag:labdegaragem.com,2020-11-08:6223006:Comment:7836482020-11-08T12:48:45.414ZAndre Francisco Leaohttps://labdegaragem.com/profile/AndreFranciscoLeao
<p>Bom dia. </p>
<p></p>
<p>Sim, eu percebi. Montei conforme o esquema e a comunicação está funcionando, mas estou tendo algum problema e ele de tempo em tempo recebe um dado errado. Ainda não sei o que pode ser, pois mesmo conectando ambos os MCUs sem o optoacoplador acontece o mesmo problema.</p>
<p></p>
<p></p>
<p>Anexo segue o print da tela do osciloscópio com o formato enviado (amarelo) e recebido (azul). Dá para perceber uma pequena deformação na recepção quando usado com opto-acoplador,…</p>
<p>Bom dia. </p>
<p></p>
<p>Sim, eu percebi. Montei conforme o esquema e a comunicação está funcionando, mas estou tendo algum problema e ele de tempo em tempo recebe um dado errado. Ainda não sei o que pode ser, pois mesmo conectando ambos os MCUs sem o optoacoplador acontece o mesmo problema.</p>
<p></p>
<p></p>
<p>Anexo segue o print da tela do osciloscópio com o formato enviado (amarelo) e recebido (azul). Dá para perceber uma pequena deformação na recepção quando usado com opto-acoplador, mas como eu disse acima, mesmo sem o optoacoplador ainda estou tendo uma perda na comunicação.</p>
<p></p>
<p></p> Bom dia,
Você percebeu que te…tag:labdegaragem.com,2020-11-08:6223006:Comment:7836362020-11-08T11:21:16.863ZJosé Gustavo Abreu Murtahttps://labdegaragem.com/profile/GustavoMurta
<p>Bom dia,</p>
<p>Você percebeu que tem um circuito de inversor digital na saída do optoacoplador? </p>
<p>Esse circuito é de um projeto de fonte comercial. Que funciona! </p>
<p>Bom dia,</p>
<p>Você percebeu que tem um circuito de inversor digital na saída do optoacoplador? </p>
<p>Esse circuito é de um projeto de fonte comercial. Que funciona! </p> Boa Edurado, obrigado.
Estou…tag:labdegaragem.com,2020-11-07:6223006:Comment:7829462020-11-07T20:48:11.809ZAndre Francisco Leaohttps://labdegaragem.com/profile/AndreFranciscoLeao
<p>Boa Edurado, obrigado.</p>
<p></p>
<p>Estou usando esse mesmo. Está funcionando, mas estou tendo algumas perdas nos dados na recepção. Estou usando o monitor serial para ver o TX e o RX. O TX está OK, mas no RX está chegando alguns dados inconsistentes. Estou usando 9600bps.</p>
<p></p>
<p></p>
<p>Estou lendo um inteiro até 1023 e mapeando de 0 a 26Volts usando a entrada do Arduino para simular por enquanto, e tenho que transformar em 2 bytes para poder transmitir. Testei com o delay e sem,…</p>
<p>Boa Edurado, obrigado.</p>
<p></p>
<p>Estou usando esse mesmo. Está funcionando, mas estou tendo algumas perdas nos dados na recepção. Estou usando o monitor serial para ver o TX e o RX. O TX está OK, mas no RX está chegando alguns dados inconsistentes. Estou usando 9600bps.</p>
<p></p>
<p></p>
<p>Estou lendo um inteiro até 1023 e mapeando de 0 a 26Volts usando a entrada do Arduino para simular por enquanto, e tenho que transformar em 2 bytes para poder transmitir. Testei com o delay e sem, e mesmo assim assim ainda não está legal.</p>
<p></p>
<p>De vez em quando aparece um " -1 " no receptor.</p>
<p></p>
<p>//TX</p>
<p>lepot1=map (analogRead(A0), 0,1023,0,2600);<br/>lepot2=map (analogRead(A1), 0,1023,0,3000);</p>
<p><br/>enviar[1] = lepot1 / 100;<br/>enviar[2] = lepot1 % 100;<br/>enviar[3] = lepot2 / 100;<br/>enviar[4] = lepot2 % 100;</p>
<p><br/>for (int i=1; i<=4; i++){<br/> mySerial.write(enviar[i]);</p>
<p>//delay(1);<br/>}</p>
<p>-------------------------------------</p>
<p>//RX</p>
<p>if(mySerial.available()){<br/> for(int i=1; i<=4; i++){<br/>recebido[i] = mySerial.read();</p>
<p>//delay(1);</p>
<p>}<br/> <br/> voltage_CH2 = ((recebido[1]*100) + recebido[2]) / 100.0;<br/> current_CH2 = ((recebido[3]*100) + recebido[4]) / 100.0;<br/> <br/> Serial.print(recebido[1]);<br/> Serial.print(" | ");<br/> Serial.print(recebido[2]);<br/> Serial.print(" | ");<br/> Serial.print (recebido[3]);<br/> Serial.print(" | ");<br/> Serial.println(recebido[4]);</p>
<p></p>