Preciso comunicar dois arduinos entre si, mas eles não podem compartilhar o GND. Vão usar fontes de alimentação separadas. Usando comunicação I2C ou serial precisa ter o GND conectado entre eles e não posso fazer isso no meu projeto. No momento só me vem a mente usar um chip RS485 em cada um e fazer a comunicado com dois fios. Nota que ambos os MCUs vai ficar juntos, na mesma PCB, cada um realizando algumas funções. A comunicação não precisa ser bidirecional, apenas um vai enviar e outro vai receber
Alguém tem alguma sugestão mais simples ?

Grato.

Obs: serão usados para monitorar e medir tensões distintas, por isso o GND não pode ser compartilhado entre eles, senão vou ter problemas nas medições

Exibições: 790

Responder esta

Respostas a este tópico

Bom dia AF,

use "ethernet".

RV

Bom dia Rui,

Cara, ethernet para ficar os dois juntos, na mesma PCB.... Será que não tem nada mais "simples". Pensei até em fazer uma comunicação binária entre eles usando duas portas digitais normais.

QQ coisa que tiver contato direto, como comunicação entre ports,

será  necessário interligar os gnds.

Ethernet/RS485/bluetooth/RF433 não tem contatos diretos port a port.

O processo mais simples que conheço de transmissão dielétrica, é via luz.

De um lado um LED e do outro um fotodiodo/fototransistor.

RV

O RS485 funciona sem precisar do GND. Já utilizei em outros projetos.

Poderia fazer uma conexão entre eles com opto-acoplador e enviar os dados de forma binária utilizando apenas um pino digital !? Pode ser viagem minha, mas acho que dá para fazer. Não sei como vai ficar a velocidade, pois vou ter que enviar uma série de dados e mostrar em um display no outro Arduino em "tempo real".

Sim, pode usar opto-acoplador e enviar os dados de forma binária.

Um  opto-acoplador é exatamente o que eu recomendei: 

"  O processo mais simples que conheço de transmissão dielétrica, é via luz.

De um lado um LED e do outro um fotodiodo/fototransistor. "

Eles são produtos dielétricos.

RV

Usa opto-acoplador na serial deles e pronto.

Valeu Rui ! Vou estudar isso.
Abs.

Se usar um laser é um foto transistor vai conseguir transmitir em frequência bem alta.

https://www.eletrogate.com/modulo-laser-5v-arduino

Tem também aqueles sensores usados em impressoras. 

https://pt.aliexpress.com/i/4000610287163.html

Depois conta o resultado.

RV

ref:

https://www.electronics-notes.com/articles/electronic_components/tr...

Optocoupler and opto-isolator specifications

There are several parameters and specifications that need to be taken into account when using opto-couplers and opto-isolators:

  • Current transfer ratio, CTR:   The current transfer ratio of an optocoupler is one of the key specifications. It is the ratio of the current that flows in the output device divided by the current on the input device. The CTR will vary according to the type of opto-coupler used in the output, those using photodarlingtons will be much higher than those using ordinary phototransistors. Values may be anywhere between 10% and 2000% - 5000%It should be noted that the CTR tends to vary with the the input current level. Although it will vary according to the device, for man optocouplers it will peak for input current levels around 10mA falling either side of this value.
  • Bandwidth:   In order to understand the maximum data rates that can be sued with an opto-coupler, it is necessary to know the bandwidth. For many opto-couplers using phototransistors it may only be in the region of 250 kHz, and for those using photodarlingtons it may be a tenth of this figure. Some much faster optocouplers are available. Typically the lower the CTR, the faster the rise and fall times
  • Input current:   This is the current required for the input transmitter device - LED. The value is used to calculate the series resistor used to limit the current.
  • Output device maximum voltage:   For opto-couplers using transistors, the maximum figure will be equal to the VCE(max) for the transistor. For opto-couplers using other devices in the output, the equivalent rating should be used. Also remember that a suitable margin should be retained as it is never advisable to operate devices close tot heir maximum ratings.

Boa tarde André, o que eu sugiro é usar a interface serial, pois é a mais simples e fácil de usar. 

Mas para isolar a interface serial, use opto-acopladores. 

Qual será velocidade usada em Bps?

Já vi isso funcionando em alguns projetos!

Essa é  parte do circuito é de um projeto de uma fonte de alimentação. 

Essa comunicação é serial bidirecional entre dois ATMegas, isolada com opto-acopladores. 

Arduino 1 

RXD = T501

TXD = R516

Arduino 2

RXD = T401

TXD = R240

Boa noite Murta !

Cara, é justamente uma fonte de alimentação de dois canais que estou fazendo, e para porder associar os canais em série elas não podem ter o terra comum, e é esse dilema que estou tentando resolver, pois vou usar apenas um display para mostra a tensão e corrente das duas fontes.

No meu caso, não vai ser bidirecional, apenas vou enviar as leituras do canal 2 para o MCU principal e ele vai colocar as informações na tela.

A velocidade não é muito crítica, apenas quero que o valor seja mostrado no display em tempo real.

Já tentei usar um ADS1115 com as entradas diferenciais, mas se não aterrar, as leituras não estabilizam. Por isso estou pensando nessa possibilidade de usar 2 MCUs semparados, com fontes separadas, mas está ficando mais complexo do que eu pretendi.

Você tem esse esquema completo ? Deve ajudar nas idéias aqui.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço