Pular para o conteúdo principal

Hardware da placa carrier Robotics J501 e Primeiros Passos

A Robotics J501 Mini carrier é uma placa carrier de borda de IA compacta e de alto desempenho, projetada para robótica avançada. Compatível com módulos NVIDIA Jetson AGX Orin (32GB/64GB) em modo MAXN, oferece até 275 TOPS de desempenho de IA. Equipada com amplas opções de conectividade — incluindo duas portas Ethernet Gigabit, slots M.2 para módulos 5G e Wi‑Fi/BT, 2 portas USB 3.2, CAN, GMSL2 (via expansão opcional), I2C e UART — ela serve como um poderoso cérebro robótico capaz de processar dados complexos de vários sensores. Com JetPack 6.2.1 e Linux BSP pré-instalados, garante uma implantação sem interrupções.​

Com suporte a frameworks como NVIDIA Isaac ROS, Hugging Face, PyTorch e ROS 2/1, a Robotics J501 Mini conecta a tomada de decisão baseada em modelos de linguagem de grande porte ao controle físico de robôs, como planejamento de movimento e fusão de sensores. Ideal para o desenvolvimento rápido de robôs autônomos, acelera o tempo de lançamento com interfaces prontas para uso e frameworks de IA otimizados.

Visão geral da placa carrier reComputer Jetson Robotics J501-Mini

Vista superior
fig1
Vista lateral
fig2
Vista inferior
fig3

📝 Lista de Itens

  • Placa Carrier Robotics J501-Mini x 1
  • Fonte de alimentação e placa de expansão JST x 1
  • Cabo XT30 para DC x 1
  • Cabo USB, Tipo A para Tipo C x 1
  • Dissipador de calor para placa de expansão x 1
  • Pino espaçador (M3*30) x 5
  • Porca sextavada M3 x 5
  • Parafuso (CM2.5*L.4) para Jetson Module e M.2 Key M x3
  • Parafuso (CM2*3.0) para M.2 Key E x1
  • Pino espaçador (M2*2.0) para M.2 Key B x1
  • Parafuso (CM3*4.0) para M.2 Key B x1
  • Manual do Usuário x 1
nota

1.Por favor, projete uma solução de dissipação de calor robusta de acordo com o Guia de Projeto Térmico, quando em fonte de alimentação de alta tensão e temperatura de operação elevada. 2.Por favor, fixe o dissipador de calor no módulo para melhor desempenho. 3.Durante a operação com entrada de alta tensão e alta carga, não toque no dissipador de calor para evitar queimaduras. 4.Recomendação de adaptador de energia para validação: use o adaptador de energia recomendado no site oficial da Seeed.

  • Adaptador de Energia 19V/4.74A 5525 Barrel Jack
  • Certifique-se de que os requisitos máximos de consumo de energia sejam atendidos. 2.Compatibilidade do Cabo de Alimentação AC
  • Compre cabos de alimentação AC tipo trevo específicos para a região, de acordo com sua localização. 3.Compatibilidade de Acessórios
  • Use apenas acessórios oficialmente recomendados (por exemplo, módulos sem fio, câmeras, periféricos) para desempenho e compatibilidade ideais.

🔍 Especificação

Especificações da Placa Carrier

CategoriaItemDetalhes
ArmazenamentoM.2 KEY M PCIe1x M.2 KEY M PCIe (SSD M.2 NVMe 2280)
RedeM.2 KEY E1x M.2 Key E para módulo WiFi/Bluetooth
Ethernet1x RJ45 10GbE && 1x RJ45 1GbE
I/OUSB2x USB 3.2 Tipo-A (10Gbps);
1x USB 2.0 Tipo C (Debug);
1x USB 3.0 Tipo C (Recovery/Debug)
Câmera2x Conector GMSL2 Mini-Fakra 4 em 1 (Opcional);
CAN2x Conector CAN JST 4 pinos (GH 1.25);
DI/DO1x Conector DI JST 6 pinos (GH 1.25);
1x Conector DO JST 5 pinos (GH 1.25);
I2S1x Conector I2S JST 6 pinos (GH 1.25)
RS4851x Conector RS-485 JST 4 pinos (GH 1.25)
UART1x Conector UART JST 6 pinos (Multiplexado com DO)
Display1x HDMI 2.1
Ventoinha1x Conector de Ventoinha 4 pinos (12V PWM)
Porta de Extensão2x Cabeçalho de Expansão de Câmera (para placa GMSL2)
RTC1x RTC 2 pinos;
LED1x LED PWR, Verde;
1x LED SSD, Verde;
1x LED USR, RGB
Botão1x Botão Recovery;
1x Botão RESET
Alimentação19-48V XT30 (Cabo XT30 para conector DC 5525 incluído)
Versão do JetpackJetpack 6.2.1
MecânicoDimensões (L x P x A)110mm x 110mm x 38mm
Peso200g
InstalaçãoMesa, Montagem na parede
Temperatura de Operação-20℃~60℃ (Modo 25W);
-20℃~55℃ (Modo MAXN);
(com dissipador de calor reComputer Robotics com ventoinha)
Garantia2 Anos
CertificaçãoRoHS, REACH, CE, FCC, UKCA, KC

📦 Gravar o Sistema Operacional JetPack

Módulo Suportado

Pré-requisitos

  • PC host com Ubuntu
  • Placa Carrier Robotics J501 Mini
  • Módulo NVIDIA® Jetson AGX Orin
  • Ventoinha ativa para módulo Nano/NX
  • SSD Interno NVMe M.2 2280
  • Cabo de transmissão de dados USB Tipo-C
info

Recomendamos que você use dispositivos host físicos com Ubuntu em vez de máquinas virtuais. Consulte a tabela abaixo para preparar a máquina host.

Versão do JetPack Versão do Ubuntu (Computador Host)
18.04 20.04 22.04
JetPack 6.x

Preparar a Imagem do Jetpack

Aqui, precisamos baixar a imagem do sistema para nosso PC com Ubuntu correspondente ao módulo Jetson que estamos usando:

Versão do JetpackMódulo Jetson GMSL Link de Download1SHA256
6.2.1 AGX Orin 64GBDownloadf0efee5f265dbaef49dc14d517b269e
7f6582ff9977d9193d377966f36408ec3
AGX Orin 32GBDownload0a97cbb6d708776bd97608594c60c3
4208b5d5dc6efbfc5553edd9c5a95802f6
perigo

O arquivo de imagem do Jetpack6 tem aproximadamente 14.2GB de tamanho e deve levar cerca de 60 minutos para ser baixado. Por favor, aguarde até a conclusão do download.

info

Para verificar a integridade do firmware baixado, você pode comparar o valor de hash SHA256.

Em uma máquina host Ubuntu, abra o terminal e execute o comando sha256sum <File> para obter o valor de hash SHA256 do arquivo baixado. Se o hash resultante corresponder ao hash SHA256 fornecido no wiki, isso confirma que o firmware baixado está completo e intacto.

⚙️ Todos os arquivos .dts e outros códigos-fonte das placas carrier Jetson da SEEED podem ser baixados em Linux_for_Tegra

Entrar no Modo Force Recovery

info

Antes de prosseguirmos para as etapas de instalação, precisamos garantir que a placa esteja no modo force recovery.

Passo a passo

Passo 1. Continue pressionando o botão para entrar no modo RESET.

Passo 2. Ligue a placa carrier conectando o cabo de alimentação e, em seguida, solte o botão REC.

Passo 3. Conecte a placa ao PC host com Ubuntu usando um cabo de transmissão de dados USB Tipo-C.

Passo 4. No PC host Linux, abra uma janela do Terminal e insira o comando lsusb. Se o conteúdo retornado tiver uma das seguintes saídas de acordo com o Jetson SoM que você usa, então a placa está em modo force recovery.

  • Para AGX Orin 32GB: 0955:7223 NVidia Corp
  • Para AGX Orin 64GB: 0955:7023 NVidia Corp

A imagem abaixo é para AGX Orin 32GB:

Gravar no Jetson

Etapa 1: Extraia o arquivo de imagem baixado:

cd <path-to-image>
sudo tar xpf mfi_xxxx.tar.gz
# For example: sudo tar xpf mfi_recomputer-mini-agx-orin-32g-j501-6.2.1-36.4.4-2026-02-11.tar.gz

Etapa 2: Execute o seguinte comando para gravar o sistema JetPack no SSD NVMe:

cd mfi_xxxx
# For example: cd mfi_recomputer-orin-robotics-j501
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --massflash 1 --network usb0 --showlogs

Você verá a seguinte saída se o processo de gravação for bem-sucedido

nota

O comando de gravação pode levar de 2 a 10 minutos.

Etapa 3: Conecte a Robotics J501-Mini a um monitor usando o adaptador PD para HDMI para conectar a um monitor que suporte entrada HDMI, ou conecte diretamente a um monitor que suporte entrada PD usando o cabo PD, e conclua a configuração inicial:

info

Conclua a Configuração do Sistema de acordo com suas necessidades.

🔌 Uso das Interfaces

A seguir serão apresentadas as várias interfaces da placa Robotics j501-Mini e como usá-las.

M.2 Key M

M.2 Key M é projetado para SSDs NVMe de alta velocidade, fornecendo transferência de dados ultrarrápida para aplicações de robótica.

SSDs compatíveis são os seguintes

Conexão de Hardware

Instruções de Uso

Antes de testar a velocidade de leitura/gravação do SSD, você precisa inserir o seguinte no terminal do Jetson:

sudo apt update
sudo apt install smartmontools
sudo smartctl -i /dev/nvme0n1

Crie um arquivo de script para testar a velocidade de leitura/gravação do SSD:

#You need to create a blank test file first
cat <<'EOF' | sudo tee test_nvme.sh >/dev/null
#!/usr/bin/env bash
set -e

sudo dd if=/dev/zero of=test bs=1000M count=1 conv=fdatasync
sleep 1
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sleep 1
sudo dd if=test of=/dev/null bs=1000M count=1
sudo rm -rf test
EOF

Execute o script para testar a velocidade de leitura/gravação do SSD:

sudo chmod +x test_nvme.sh
./test_nvme

M.2 Key E

A interface M.2 Key E é um conector M.2 padrão usado principalmente para conectar módulos sem fio, como Wi-Fi e Bluetooth, para expandir as capacidades de comunicação sem fio.

Conexão de Hardware

Instruções de Uso

Para testar o desempenho do Wi-Fi, use o seguinte comando (substitua o endereço IP pelo do seu servidor de teste):

iperf3 -c 192.168.6.191

A funcionalidade Bluetooth está disponível através do slot M.2 Key E.

Ethernet

A placa-carregadora Robotics j501-Mini possui uma porta Ethernet RJ45 de 1Gbps e outra de 10Gbps para conectividade de rede com fio de alta velocidade.

Para testar a velocidade da porta Ethernet, use iperf3 da seguinte forma:

iperf3 -c <server_ip> -B <bind_ip>
info

<server_ip> é o endereço IP do servidor iperf3. O cliente se conectará a esse servidor para realizar um teste de largura de banda. <bind_ip> associa o endereço IP local especificado como a origem do tráfego de teste.

LED

A J501 mini possui dois LEDs que podem ser controlados. A seguir é demonstrado como controlar os LEDs para serem verdes, vermelhos ou azuis.

Instruções de Uso

Os comandos de referência para controlar os LEDs são os seguintes:

#change to red
echo 1 | sudo tee /sys/class/leds/on-board:red/brightness
echo 0 | sudo tee /sys/class/leds/on-board:red/brightness
#change to green
echo 1 | sudo tee /sys/class/leds/on-board:green/brightness
echo 0 | sudo tee /sys/class/leds/on-board:green/brightness

#change to blue
echo 1 | sudo tee /sys/class/leds/on-board:blue/brightness
echo 0 | sudo tee /sys/class/leds/on-board:blue/brightness

O efeito de controle do LED é mostrado na figura abaixo:

USB

A placa-carregadora Robotics j501-Mini está equipada com uma variedade de portas USB, incluindo 2 portas USB 3.2 Type-A (10Gbps), uma porta USB 3.0 Type-C e uma porta USB 2.0 Type-C para modo dispositivo/depuração, oferecendo opções de conectividade versáteis.

Teste de Velocidade USB-A

Crie um script para testar a velocidade do dispositivo USB:

sudo vim test_usb

Cole o seguinte conteúdo:

cat <<'EOF' | sudo tee test_usb.sh >/dev/null
#!/bin/bash
sudo dd if=/dev/zero of=/dev/$1 bs=1000M count=2 conv=fdatasync
sleep 1
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sleep 1
sudo dd if=/dev/$1 of=/dev/null bs=1000M count=2
EOF

Torne o script executável e teste:

sudo chmod +x test_usb
./test_usb

Porta USB 2.0 Type-C

Utilizando esta porta serial, através do cabo de dados USB-C, você pode monitorar as informações de depuração de entrada e saída no lado do PC.

No seu PC (não no Jetson), instale uma ferramenta de login de porta serial e faça login em /dev/ttyUSB0 (também pode ser ttyUSB1, 2):

sudo apt update
sudo apt install screen
screen /dev/ttyUSB0 115200

Você poderá então controlar o terminal do Jetson pela porta serial em outro host Linux, como mostrado abaixo:

Ventoinha

O reComputer Jetson Robotics j501-Mini está equipado com:

  • 1x Conector de Ventoinha de 4 pinos (12V PWM): Compatível com ventoinhas PWM de 12V padrão, também suporta controle preciso de velocidade, sendo ideal para requisitos de resfriamento de alto desempenho.

Conexão de Hardware

A Robotics J501 Mini fornece um cabeçalho padrão de 4 pinos para a ventoinha.

O diagrama esquemático do datasheet da Ventoinha é mostrado abaixo:

As definições de pinos para J1 são as seguintes:

nota

Para mais informações, verifique aqui.

Instruções de Uso

Crie um script para definir a velocidade da ventoinha:

cat test_fanSpeedSet

Cole o seguinte conteúdo:

#!/bin/bash
sudo systemctl stop nvfancontrol
sleep 2
echo "000000" | sudo -S chmod 777 /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1
echo $1 > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1

Além disso, podemos definir manualmente a velocidade da ventoinha usando a ferramenta jtop.

CAN

CAN (Controller Area Network) é um padrão robusto de barramento veicular que permite que microcontroladores e dispositivos se comuniquem entre si sem um computador host.

A J501 Mini fornece duas interfaces CAN integradas no conector JST de 4 pinos (GH1.25). Além disso, ambas as interfaces CAN suportam CAN-FD, com CAN0 e CAN1 mostradas abaixo:

As definições de pinagem para CAN0 e CAN1 são semelhantes, e o diagrama da interface é mostrado abaixo:

CAN0 corresponde a J6, e as definições de pinos são as seguintes:

CAN1 corresponde a J7, e as definições de pinos são as seguintes:

Comunicação CAN

Esta seção conecta CAN0 e CAN1 no Jetson para demonstrar como enviar e receber dados entre CAN0 e CAN1 no Classic CAN mode e no CAN-FD mode.

Os resistores de terminação para CAN0 e CAN1 podem ser controlados por dois pinos: PAA.04, localizado em gpiochip1 linha 4, e PAA.07, localizado em gpiochip1 linha 7.

O controle do resistor de terminação segue estas regras:

When `PAA.04 = 1`, the 120 Ω termination resistor of CAN0 is **disconnected**;  
when `PAA.04 = 0`, the 120 Ω termination resistor of CAN0 is **connected**.

When `PAA.07 = 1`, the 120 Ω termination resistor of CAN1 is **disconnected**;
when `PAA.07 = 0`, the 120 Ω termination resistor of CAN1 is **connected**.

Digite o seguinte comando para visualizar os pinos no gpiochip 1:

gpioinfo gpiochip1

Consulte os seguintes comandos para definir PAA.04 e PAA.07 como 0:

sudo gpioset --mode=wait gpiochip1 4=0
sudo gpioset --mode=wait gpiochip1 7=0

Consulte os seguintes comandos para definir PAA.04 e PAA.07 como 1:

sudo gpioset --mode=wait gpiochip1 4=1
sudo gpioset --mode=wait gpiochip1 7=1

Modo Classic CAN

Crie test_can.sh para testar a transmissão e recepção de dados entre CAN0 e CAN1 no modo padrão:

touch test_can.sh
chmod +x test_can.sh
sudo ./tets_can.sh

O código do script para test_can.sh é o seguinte:

test_can.sh
#!/bin/bash

echo "000000" | sudo -S ip link set can0 down
echo "000000" | sudo -S ip link set can1 down

# set buffer size
echo "000000" | sudo -S sysctl -w net.core.rmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.rmem_default=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_default=524288

#set to 2M bps
echo "000000" | sudo -S ip link set can0 type can bitrate 2000000
echo "000000" | sudo -S ip link set can0 up

echo "000000" | sudo -S ip link set can1 type can bitrate 2000000
echo "000000" | sudo -S ip link set can1 up

sleep 2

#Enable 5s to test
sudo pkill -f gpioset
gpioset --mode=time --sec=200000 gpiochip1 7=0 &
GPIO1_PID=$!
gpioset --mode=time --sec=200000 gpiochip1 4=0 &
GPIO2_PID=$!

cangen can1 &
candump can0

A transmissão e recepção de dados entre CAN0 e CAN1 será concluída:

Modo CAN-FD

Na datasheet, você pode encontrar o diagrama de fiação para a interface CAN0/CAN1 como mostrado abaixo:

Crie test_canfd.sh para testar a transmissão e recepção de dados entre CAN0 e CAN1 no modo CAN-FD:

touch test_canfd.sh
chmod +x test_can.sh
sudo ./tets_can.sh

O código do script para test_canfdfd.sh é o seguinte:

test_canfd.sh
#!/bin/bash

# configure CAN FD mode
#CAN bus rate set to 500 kbps, data rate set to 5 Mbps.
echo "000000" | sudo -S ip link set can0 down
echo "000000" | sudo -S sudo ip link set can0 type can bitrate 500000 dbitrate 5000000 berr-reporting on fd on restart-ms 100
echo "000000" | sudo -S ip link set can0 up

echo "000000" | sudo -S ip link set can1 down
echo "000000" | sudo -S sudo ip link set can1 type can bitrate 500000 dbitrate 5000000 berr-reporting on fd on restart-ms 100
echo "000000" | sudo -S ip link set can1 up


# config buffer size
echo "000000" | sudo -S sysctl -w net.core.rmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.rmem_default=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_default=524288


# check CAN FD status
echo "CAN0 status:"
ip -details link show can0

echo "CAN1 status:"
ip -details link show can1

#Enable 5s to test
sudo pkill -f gpioset
gpioset --mode=time --sec=200000 gpiochip1 7=0 &
GPIO1_PID=$!
gpioset --mode=time --sec=200000 gpiochip1 4=0 &
GPIO2_PID=$!

candump can0 &
cangen can1 -f

A transmissão e recepção de dados entre CAN0 e CAN1 será concluída:

GPI && GPO

GPI

O Robotics J501 Mini fornece um conector JST padrão de 6 pinos para GPI.

O esquema do datasheet de GPI é mostrado abaixo:

As definições de pinos para J12 são as seguintes:

Habilite GPI 1 a GPI 4 para ler o status de entrada:

sudo gpioset --mode=wait 0 131=0

Para ler a entrada de GPI 1 a GPI 4, consulte os seguintes comandos:

sudo gpioget 0 96  #read the input of GPI 1
sudo gpioget 0 104 #read the input of GPI 2
sudo gpioget 0 86 #read the input of GPI 3
sudo gpioget 0 83 #read the input of GPI 4

Quando um nível alto for lido, ele retornará 1; quando um nível baixo for lido, ele retornará 0.

GPO

O Robotics J501 Mini fornece um conector JST padrão de 6 pinos para GPO.

O esquema do datasheet de GPO é mostrado abaixo:

As definições de pinos para J14 são as seguintes:

Habilite GPO 1 a GPO 4 para status de saída:

sudo gpioset --mode=wait 0 79=1

Para configurar a saída de GPO 1 a GPO 4, consulte os seguintes comandos:

sudo gpioset --mode=wait 0 110=1  #set output of GPO 1 to high voltag
sudo gpioset --mode=wait 0 112=1 #set output of GPO 2 to high voltag
sudo gpioset --mode=wait 0 111=1 #set output of GPO 3 to high voltag
sudo gpioset --mode=wait 0 113=1 #set output of GPO 4 to high voltag


sudo gpioset --mode=wait 0 110=1 #set output of GPO 1 to low voltag
sudo gpioset --mode=wait 0 112=1 #set output of GPO 2 to low voltag
sudo gpioset --mode=wait 0 111=1 #set output of GPO 3 to low voltag
sudo gpioset --mode=wait 0 113=1 #set output of GPO 4 to low voltag

UART

O Robotics J501 Mini fornece um conector JST padrão de 6 pinos para comunicação serial UART. UART e GPO utilizam a mesma interface JST. Esta interface é padrão para a funcionalidade GPO. Se você precisar alternar para a funcionalidade UART, deverá apontar para uma nova device tree e reiniciar o dispositivo para que a alteração tenha efeito.

Para comunicação UART, siga a seguinte fiação. Aqui, usamos a ferramenta USB para TTL como exemplo.

O esquema do datasheet de UART é mostrado abaixo:

As definições de pinos para J14 são as seguintes:

atenção

UART e GPO compartilham a mesma interface física. Por padrão, esta interface funciona como GPO. Se você precisar alternar para UART, consulte o conteúdo desta seção.

Para diferentes módulos, você precisa baixar o arquivo de device tree correspondente.

Link de download .dtb para AGX Orin 32G:
https://files.seeedstudio.com/wiki/recomputer-j501-mini/tegra234-j501x-0000%2Bp3701-0004-recomputer-mini.dtb

Link de download .dtb para AGX Orin 64G:
https://files.seeedstudio.com/wiki/recomputer-j501-mini/tegra234-j501x-0000%2Bp3701-0005-recomputer-mini.dtb

Copie a device tree para o caminho especificado:

# AGX Orin 32G
sudo cp tegra234-j501x-0000%2Bp3701-0004-recomputer-mini.dtb /boot/

# AGX Orin 64G
sudo cp tegra234-j501x-0000%2Bp3701-0005-recomputer-mini.dtb /boot/

Faça backup e modifique /boot/extlinux/extlinux.conf, adicionando uma linha para apontar para o novo arquivo .dtb:

sudo cp /boot/extlinux/extlinux.conf /boot/extlinux/extlinux.conf.bak
sudo vim /boot/extlinux/extlinux.conf

Com base no nome do arquivo de device tree que você está usando, adicione uma linha FDT=/your_path em extlinux.conf. Tomando AGX Orin 32G como exemplo:

LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
FDT=/boot/tegra234-j501x-0000+p3701-0004-recomputer-mini.dtb

O conector JST de 6 pinos UART é mapeado para /dev/ttyTHS1 no Jetson. Você pode usar minicom para visualizar a transmissão e recepção de dados pela porta serial:

sudo apt install minicom
sudo minicom -D /dev/ttyTHS1

RS485

A interface RS485 fornece um canal de comunicação diferencial robusto e resistente a ruídos, comumente utilizado em ambientes industriais. Ela suporta comunicação serial multidrop de longa distância e é ideal para conectar sensores, controladores de motor, CLPs e outros dispositivos industriais.

Conexão de Hardware

A Robotics J501-Mini fornece um conector JST de 4 pinos (GH 1.25) para RS485.

O diagrama esquemático do datasheet de RS485 é mostrado abaixo:

As definições dos pinos de J8 são as seguintes:

Instruções de Uso

Consulte os seguintes comandos para habilitar a interface RS485:

sudo gpioset --mode=wait 1 9=0  # Enable 120R resistance

sudo gpioset --mode=wait 0 126=0 # Enable RS485

A interface RS485 é mapeada para /dev/ttyTHS4 no Jetson. Você pode usar cutecom para testar a transmissão e recepção de dados seriais com um PC:

sudo apt install cutecom
sudo cutecom

Selecione /dev/ttyTHS4, configure tanto o Jetson quanto o PC para uma taxa de baud de 9600 e conecte o Jetson e o PC por meio de um módulo RS485 para USB. O efeito da transmissão e recepção de dados seriais é mostrado na figura abaixo:

Jetson sidePC side

I2S

A interface I2S fornece um barramento de comunicação de áudio digital projetado para transmitir dados de áudio estéreo entre dispositivos. A Robotics J501-Mini suporta sinalização I2S padrão, permitindo entrada e saída de áudio de alta qualidade e baixa latência para aplicações como interação por voz, localização de som e processamento de áudio em tempo real.

Conexão de Hardware

A Robotics J501-Mini fornece 1 conector JST de 5 pinos (GH 1.25) para I2S.

O diagrama esquemático do datasheet de I2S é mostrado abaixo:

As definições dos pinos de J9 são as seguintes:

Instruções de Uso

Para habilitar I2S, você precisa configurá-lo em jetson-io.py. Execute o seguinte no terminal:

sudo python /opt/nvidia/jetson-io/jetson-io.py

Em seguida, consulte as quatro etapas abaixo para habilitar a interface I2S:

  • etapa 1: Selecione a opção Jetson 40-pin header
  • etapa 2: Selecione Configure header pins manually
  • etapa 3: Selecione i2s2; após a seleção, ele será marcado com [*]
  • etapa 4: Salve as configurações e reinicie o Jetson
Step 1
Step 1
Step 3
Step 3
Step 2
Step 2
Step 4
Step 4

Após habilitar I2S, esta seção demonstra como usar I2S para acionar um alto-falante de dois canais. Primeiro, insira o seguinte no terminal:

amixer -c APE cset name="I2S2 Mux" "ADMAIF1" # Speaker

Se você estiver usando um microfone:

amixer -c APE cset name="ADMAIF2 Mux" "I2S2" # Microphone

Consulte o comando abaixo para acionar o alto-falante, onde -c deve ser alterado para o número de canais do alto-falante que você está usando:

speaker-test -t sine -f 440 -c 2

Você pode ver a saída no terminal quando o alto-falante é acionado normalmente, como mostrado na figura abaixo.

RTC

A Robotics J501-Mini fornece um conector padrão de 2 pinos para RTC (3V).

O diagrama esquemático do datasheet de RTC é mostrado abaixo:

As definições dos pinos de J15 são as seguintes:

Depois de conectar a bateria externa, você pode verificar o status de operação de rtc0 (RTC principal, correspondente à bateria onboard) no terminal:

cat /sys/class/rtc/rtc0/power/runtime_status

Porta de Expansão - GMSL

A placa carrier Robotics j501-Mini possui um conector de Expansão de Câmera para placa de extensão GMSL. Ela pode conectar e operar simultaneamente quatro câmeras GMSL ao mesmo tempo.

Conexão de Hardware

A seguir estão os slots de conexão da placa de expansão de câmera GMSL da placa carrier Robotics j501-Mini (é necessário preparar uma placa de extensão com antecedência):

A seguir estão os modelos de câmeras GMSL que já suportamos:

Instruções de Uso

nota

Antes de habilitar a funcionalidade GMSL, certifique-se de que você instalou uma versão do JetPack com o driver da placa de expansão GMSL.

Configurar o arquivo Jetson IO

sudo /opt/nvidia/jetson-io/jetson-io.py
nota

Existem três arquivos de overlay no total, a saber, Seeed GMSL 1X4 3G, Seeed GMSL 1X4 6G, Seeed GMSL 1X4 e Orbbec Gemini 335Lg. Eles correspondem respectivamente à câmera 3G do SG3S, à câmera 6G do SG2 e SG8S e à câmera da Orbbec. Como mostrado na Figura 3, configure o arquivo io de acordo com o modelo da sua câmera.

etapa 2. Instale as ferramentas de configuração da interface de vídeo.

sudo apt update
sudo apt install v4l-utils

Usar as câmeras da Série SGxxx

etapa 1. Defina o formato do canal para o serializador e desserializador. O número da interface na figura corresponde ao número do serializador/desserializador.

  media-ctl -d /dev/media0 --set-v4l2 '"ser_0_ch_0":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_0":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_1_ch_1":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_1":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_2_ch_2":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_2":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_3_ch_3":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_3":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_4_ch_0":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_0":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_5_ch_1":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_1":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_6_ch_2":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_2":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_7_ch_3":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_3":0[fmt:YUYV8_1X16/1920x1536]'

nota

ser_0_ch_0 é o primeiro canal do decodificador, des_ch_0 é o serializador na primeira câmera, e o mesmo se aplica aos outros. Se a câmera conectada tiver uma resolução diferente, então a configuração aqui será baseada no formato real da câmera. Precisamos definir o formato do canal para o serializador e o desserializador toda vez que o dispositivo reiniciar.

passo 2. Defina a resolução da câmera.

info

Aqui demonstramos como configurar câmeras de diferentes modelos e resoluções.

v4l2-ctl -V --set-fmt-video=width=1920,height=1080 -c sensor_mode=1  -d /dev/video0
v4l2-ctl -V --set-fmt-video=width=1920,height=1080 -c sensor_mode=1 -d /dev/video1
v4l2-ctl -V --set-fmt-video=width=1920,height=1536 -c sensor_mode=0 -d /dev/video2
v4l2-ctl -V --set-fmt-video=width=3840,height=2160 -c sensor_mode=2 -d /dev/video3
nota

--set-fmt-video segue a resolução que é selecionada com base na câmera conectada. O sensor_mode também é escolhido de acordo. Atualmente, há três opções de sensor_mode, cada uma correspondendo a uma resolução diferente.

  • sensor_mode=0 -------> YUYV8_1X16/1920x1536
  • sensor_mode=1 -------> YUYV8_1X16/1920x1080
  • sensor_mode=2 -------> YUYV8_1X16/3840x2160

passo 3. Inicie a câmera.

gst-launch-1.0 v4l2src device=/dev/video0 ! \
'video/x-raw,width=1920,height=1080,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

gst-launch-1.0 v4l2src device=/dev/video1 ! \
'video/x-raw,width=1920,height=1080,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

gst-launch-1.0 v4l2src device=/dev/video2 ! \
'video/x-raw,width=1920,height=1536,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

gst-launch-1.0 v4l2src device=/dev/video3 ! \
'video/x-raw,width=3840,height=2160,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

Tela

O Robotics J501 Mini está equipado com uma porta HDMI para saída de vídeo em alta resolução.

Recursos

Suporte Técnico e Discussão sobre o Produto

Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...