Pular para o conteúdo

Jefferson Wilhelm Meyer Soares

ATV 10 — Da UART para a rede CAN

Do fio ao barramento CAN

No CAN, os ESP32 não se ligam um ao outro: cada um se liga a um barramento, um par de fios trançados chamado CANH e CANL, e vários nós podem ficar pendurados no mesmo par.

Quem conversa com o par é o transceiver, aqui o WCMCU-230. Dentro do ESP32 há um controlador CAN, que monta e confere os quadros; ele fala com o transceiver por dois pinos, CTX (o que o ESP32 quer pôr no barramento) e CRX (o que está no barramento). O transceiver transforma isso em tensão diferencial no par:

  • bit recessivo (1): o transceiver solta o par, e CANH e CANL ficam na mesma tensão, por volta de 2,3 V;
  • bit dominante (0): o transceiver puxa CANH para cima e CANL para baixo, com uns 2 V de diferença entre eles.

Quem lê olha só a diferença entre os dois fios. Um ruído que entra igual nos dois some na subtração, e é por isso que o par é trançado.

Se dois nós transmitem ao mesmo tempo, o dominante vence: basta um nó puxar o par para ele ficar dominante. Todo nó lê o barramento enquanto transmite e percebe quando o que lê é diferente do que mandou.

Nas duas pontas do par vai um resistor de 120 Ω entre CANH e CANL, a terminação. Ele evita que o sinal reflita na ponta do cabo e é ele também que traz o par de volta ao recessivo quando ninguém puxa. O WCMCU-230 já traz esse resistor na placa.

Montagem por CAN. Cada ESP32 ligado a um módulo WCMCU-230 por quatro fios: 3,3 V ao pino 3V3, GND ao GND, GPIO 5 ao CTX e GPIO 4 ao CRX. O CANH de um módulo liga ao CANH do outro e o CANL ao CANL, por um par trançado, CANH em azul e CANL em laranja. Cada módulo tem, desenhado sobre a placa, o resistor de 120 Ω entre CANH e CANL. Um fio de GND liga os dois ESP32. O DHT11 continua no transmissor, no GPIO 27, e os dois ESP32 continuam ligados por USB a um PC, onde fica o monitor serial a 115200 bps.

O WCMCU-230 é alimentado pelo 3V3 do ESP32, o GPIO 5 vai no CTX e o GPIO 4 no CRX. Com CTX e CRX trocados, nada chega ao barramento e o controlador só vê erro.

  1. Retire o fio da UART e monte a ligação da figura.
  2. Com os dois ESP32 desligados, meça a resistência entre CANH e CANL.
Questão 6 de 20 Preencha a tabela

Resistência entre CANH e CANL, com os dois ESP32 desligados.

Resistência (Ω)
Com os dois módulos ligados ao par
De um módulo sozinho