RS422/RS485 Shield

O RS422/RS485 Shield dá à OpenMV Cam um link serial diferencial de longa distância adequado a barramentos industriais, com alimentação de entrada ampla, proteção contra surtos e I/O ADC/digital.

RS422/RS485 Shield

Para o datasheet completo, fotos e informações de compra, consulte a página do produto RS422/RS485 Shield.

Destaques

  • RS-422 ou RS-485 de 10 Mb/s com terminação embarcada

  • Entrada de 6-36 V, tolerante a tensão reversa

  • Entrada ADC de 0-5 V com proteção contra sobretensão de ±36 V

  • I/O digital de 0-5 V para gatilhos de sincronização da câmera, com proteção contra curto-circuito

Pinagem

Pinagem do RS422/RS485 Shield

Referência de pinos

Pino

Função

P4

RS-422 / RS-485 TX → aciona a saída da linha diferencial

P5

RS-422 / RS-485 RX ← recebe a entrada da linha diferencial

P6

Leitura de AIN com nível ajustado (0–3,3 V em P6)

P10

SYN — I/O digital open-drain no bloco de terminais

PWR in

Entrada ampla de 6–36 V no bloco de terminais (tolerante a tensão reversa)

AIN in

Entrada analógica no bloco de terminais

VIN out

5,4 V a até 600 mA do regulador embarcado

Trilho 3.3V

Alimenta a eletrônica embarcada do shield

Trilho GND

Terra comum

Nota

O AIN é protegido contra sobretensão até ±36 V e, por padrão, é uma entrada de tensão de 0–5 V, reduzida para 0–3,3 V em P6. Faça a ponte do shunt do modo 4–20 mA na frente do shield para alternar o AIN para uma entrada de loop de corrente de 4–20 mA.

Nota

O SYN é uma linha digital open-drain, com pull-up de 3,3 V no lado da câmera e 5 V no lado do terminal SYN. Por padrão, é uma entrada — o shield ajusta o nível de 0–5 V em SYN para 0–3,3 V em P10. Altere o jumper de solda embarcado para inverter P10 em uma saída, ajustando o nível de 0–3,3 V em P10 para 0–5 V em SYN.

Nota

Cada um dos pinos P4, P5, P6 e P10 é conectado à câmera por padrão através de um jumper de solda — abra o jumper de qualquer pino que você queira reaproveitar para uso não relacionado. O jumper de P6 fica na parte traseira do shield; os de P4, P5 e P10 ficam na frente.

Nota

Os resistores de terminação embarcados são conectados por padrão — abra os jumpers de solda traseiros correspondentes para desconectá-los. Dois cobrem o par A/B do RS-422 e dois cobrem o par Y/Z do RS-422 (que também serve como terminação A/B do RS-485), totalizando quatro jumpers.

Sobre RS-422 e RS-485

Ambos os padrões enviam dados seriais como um sinal balanceado (diferencial) sobre pares trançados para links de longa distância e tolerantes a ruído:

  • RS-422 é full-duplex sobre quatro fios. Um driver transmite em um par TX dedicado rotulado Y/Z, e o par transmite de volta em um par RX separado rotulado A/B. Um transmissor e até dez receptores por par.

  • RS-485 é tipicamente half-duplex sobre dois fios. A transmissão e a recepção compartilham um único par, chamado de A/B na terminologia RS-485, mas fisicamente as mesmas linhas Y/Z neste shield. Até trinta e dois nós podem compartilhar o barramento e qualquer um deles pode acioná-lo.

Como o shield suporta ambos

O shield traz dois transceptores THVD1426, cada um capaz de lidar com qualquer um dos padrões:

  • O primeiro transceptor aciona o par Y/Z (que também serve como o par A/B do RS-485). É o único com seu driver conectado, de modo que todo o tráfego de saída da câmera sai por este par, independentemente do modo.

  • O segundo transceptor aciona o par A/B. Seu driver está desativado — esse transceptor é apenas de recepção e só importa no modo RS-422 de 4 fios.

Os receptores de ambos os transceptores estão sempre habilitados, e suas saídas RX são combinadas por um AND em uma única linha de recepção de volta para a câmera:

  • No modo RS-485 de 2 fios, apenas o primeiro transceptor está ativo. Ligue o barramento a Y/Z; o lado A/B fica ocioso e a porta AND apenas repassa o RX do primeiro transceptor.

  • No modo RS-422 de 4 fios, o par transmite para a câmera no par A/B (captado pelo segundo transceptor) enquanto a câmera transmite em Y/Z (com o próprio receptor do primeiro transceptor ecoando de volta seus dados de saída). A porta AND os combina — qualquer par que veja um pulso baixo (bit de início, dados) chega à câmera.

Os rótulos do bloco de terminais refletem o mapeamento duplo:

  • RS-422 (4 fios) — TX de saída em Y/Z, RX de entrada em A/B.

  • RS-485 (2 fios) — TX/RX compartilham o par Y/Z (= A/B na nomenclatura RS-485). Deixe os terminais A/B do shield desconectados.

Uso

Nota

O número de periférico UART(3) abaixo segue o mapeamento do STM32. Em outro processador, o barramento ligado a esses pinos pode ser diferente — consulte a referência da sua placa.

Comunique-se com um par serial diferencial em P4 (TX) / P5 (RX):

from machine import UART

uart = UART(3, baudrate=115200)
uart.write("hello\n")
print(uart.read())

Leia a entrada AIN do bloco de terminais através do pino P6 com nível ajustado:

from machine import ADC
import time

ain = ADC("P6")

while True:
    v = ain.read_u16() * 3.3 / 65535
    print("AIN:", v * (5.0 / 3.3), "V")
    time.sleep_ms(100)

Reaja a uma borda de descida na linha SYN — por exemplo, para sincronizar a câmera com outro dispositivo que puxa SYN para nível baixo:

from machine import Pin

def on_sync(pin):
    print("SYN falling edge")

syn = Pin("P10", Pin.IN)
syn.irq(on_sync, Pin.IRQ_FALLING)