Skip to main content

reComputer Industrial J40, J30 硬件和接口使用

本篇 Wiki 介绍了 reComputer Industrial J4012、J4011、J3011、J3010 上的各种硬件和接口,以及如何使用它们来扩展您的项目创意。

CSI 摄像头

reComputer Industrial 配备了 2 个 2 通道 15 针 MIPI CSI 摄像头连接器,支持以下摄像头:

连接概览

这两个 CSI 摄像头连接器标记为 CAM0 和 CAM1。您可以将一个摄像头连接到任意一个连接器,也可以同时将两个摄像头分别连接到两个连接器。

步骤 1: 轻轻拉出 CSI 连接器上的黑色锁扣

步骤 2: 将 15 针排线插入连接器,确保金手指朝下

步骤 3: 推入黑色锁扣以固定排线

使用方法

首先,您需要配置开发板以加载适用于您所使用摄像头的驱动程序。JetPack 系统内置了支持 IMX219 和 IMX477 摄像头的工具。

步骤 1: 打开终端并执行以下命令

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

步骤 2: 选择 Configure Jetson Nano CSI Connector

步骤 3: 选择 Configure for compatible hardware

步骤 4: 选择您想要使用的摄像头

步骤 5: 选择 Save pin changes

步骤 6: 选择 Save and reboot to reconfigure pins

步骤 7: 按下键盘上的任意键,设备将重新启动并应用摄像头配置

您可以通过两种不同的方法使用 CSI 摄像头。根据摄像头连接器,执行以下命令。

对于 CAM0 端口

nvgstcapture-1.0 sensor-id=0 

对于 CAM1 端口

nvgstcapture-1.0 sensor-id=1  
note

如果您想更改摄像头的其他设置,可以输入 "nvgstcapture-1.0 --help" 查看所有可配置选项。

RTC

reComputer Industrial 配备了两种连接 RTC 电池的方法

连接概述

  • 方法 1:

将一块 3V CR1220 纽扣电池 连接到板上的 RTC 插槽,如下图所示。确保电池的 正极 (+) 朝上。

  • 方法 2:

将一块带有 JST 接头的 3V CR2302 纽扣电池 连接到板上的 2 针 1.25mm JST 插槽,如下图所示。

使用方法

danger

请注意,如果您的 reComputer 设备已经更新到 JetPack 6 或更高版本,RTC 将无需额外配置即可正常工作。如果您使用的是 JetPack 5,则需要参考以下内容配置时钟同步服务。

步骤 1: 按上述方法连接 RTC 电池

步骤 2: 打开 reComputer Industrial

步骤 3: 在 Ubuntu 桌面上,点击右上角的下拉菜单,导航到 Settings > Date & Time,通过以太网线连接网络,并选择 Automatic Date & Time 以自动获取日期/时间。

note

如果您未通过以太网连接到互联网,可以在此手动设置日期/时间。

步骤 4: 打开终端窗口,执行以下命令检查硬件时钟时间:

sudo hwclock

您将看到类似以下的输出,但这不是正确的日期/时间:

步骤 5: 输入以下命令,将硬件时钟时间更改为当前系统时钟时间:

sudo hwclock --systohc

步骤 6: 移除任何连接的以太网线,以确保不会从互联网获取时间,然后重启设备:

sudo reboot

步骤 7: 检查硬件时钟时间,验证即使设备断电,日期/时间仍保持不变。

现在我们将创建一个脚本,在每次启动时始终从硬件时钟同步系统时钟。

步骤 8: 使用您喜欢的文本编辑器创建一个新的 shell 脚本。这里我们使用 vi 文本编辑器:

sudo vi /usr/bin/hwtosys.sh 

步骤 9: 按下 i 进入 插入模式,然后复制并粘贴以下内容到文件中:

#!/bin/bash

sudo hwclock --hctosys

步骤 10: 使脚本可执行:

sudo chmod +x /usr/bin/hwtosys.sh 

步骤 11: 创建一个 systemd 文件:

sudo nano /lib/systemd/system/hwtosys.service 

步骤 12: 在文件中添加以下内容:

[Unit]
Description=Change system clock from hardware clock

[Service]
ExecStart=/usr/bin/hwtosys.sh

[Install]
WantedBy=multi-user.target

步骤 13: 重新加载 systemctl 守护进程:

sudo systemctl daemon-reload 

步骤 14: 启用新创建的服务以在启动时运行,并启动该服务:

sudo systemctl enable hwtosys.service
sudo systemctl start hwtosys.service

步骤 15: 验证脚本是否作为 systemd 服务正常运行:

sudo systemctl status hwtosys.service

步骤 16: 重启设备,您将看到系统时钟现在与硬件时钟同步。

M.2 Key M

开箱即用,reComputer Industrial 配备了一个连接到 M.2 Key M 插槽的 128GB SSD,并预装了 JetPack 系统。

连接概述

如果您想移除预装的 SSD 并安装一个新的 SSD,可以按照以下步骤操作。我们仅推荐使用 Seeed 的 128GB256GB512GB SSD,因为我们仅测试了这些型号。此外,该接口支持 PCIe Gen4.0 SSD。

  • 步骤 1: 移除预装 SSD 的螺丝
  • 步骤 2: 将 SSD 从 SSD 连接器中滑出以移除
  • 步骤 3: 插入新的 SSD 并重新拧紧螺丝

使用方法

以下是如何对连接的 SSD 进行简单基准测试的说明:

  • 步骤 1: 执行以下命令检查写入速度
sudo dd if=/dev/zero of=/home/nvidia/test bs=1M count=512 conv=fdatasync
  • 步骤 2: 执行以下命令检查读取速度。在执行写入速度测试后再执行此步骤。
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sudo dd if=/home/nvidia/test of=/dev/null bs=1M count=512

mini PCIe

reComputer Industrial 配备了一个 mini PCIe 接口,支持 4G 和 LoRa 模块。然而,您一次只能连接一个 4G 模块或一个 LoRa 模块。

4G 模块连接概述

目前该主板支持 EC25EUXGA 和 EC20CEHCLG 模块。

  • 步骤 1: 如果主板已通电,请先关闭电源

  • 步骤 2: 移除预装的支架。该支架仅在使用 M.2 Key B 接口时需要。

  • 步骤 3: 将 4G 模块插入 mini PCIe 插槽,使用预装的螺丝固定模块到两个孔位上
  • 步骤 4: 将天线连接到标记为 MAIN 的天线接口。此处需要使用 IPEX 接头。
  • 步骤 5: 将支持 4G 的 nano SIM 卡插入主板上的 SIM 卡槽,确保 SIM 卡的金属面朝下。将卡完全插入,直到内部弹簧锁定卡片。
note

如果您想移除 SIM 卡,请按下卡片以触发内部弹簧,使 SIM 卡弹出。

  • 步骤 6:J8(控制和 UART)接头 上的 SIM_MUX_SELGND 引脚之间添加跳线。
  • 步骤 7: 打开主板电源

4G 模块使用 - 测试拨号

使用 EC25 模块时,模块会自动启动并准备就绪。然而,使用 EC20 模块时,您需要重置模块才能使其工作。

步骤 1: 如果您使用的是 EC25 模块,可以跳过此步骤。如果您使用的是 EC20 模块,请输入以下命令访问负责重置 4G 模块的 GPIO309 引脚。

sudo su 
cd /sys/class/gpio
echo 309 > export
cd gpio309
echo out > direction
echo 1 > value

对于 EC25 模块,当主板启动时,LED2 会亮起绿色。对于 EC20 模块,在按照上述步骤重置模块后,LED2 会亮起绿色。

步骤 2: 安装 minicom

sudo apt update
sudo apt install minicom -y

步骤 3: 进入连接的 4G 模块的串口控制台,以便输入 AT 命令并与 4G 模块交互。

sudo minicom -D /dev/ttyUSB2 -b 115200

步骤 4: 按下 Ctrl+A,然后按 E 打开本地回显。

步骤 5: 输入命令 "AT" 并按回车键。如果您看到响应为 "OK",则 4G 模块工作正常。

步骤 6: 输入命令 "ATI" 检查模块信息。

步骤 7: 测试模块,输入以下命令拨打另一个电话号码:

ATD<phone_number>;

您将看到以下输出:

如果输入的电话号码可以接听电话,则模块工作正常。

4G 模块使用 - 连接到互联网

EC25 模块

如果您使用的是 EC25 模块,请按照以下步骤操作:

  • 步骤 1: 打开 4G 模块的串口控制台(如上文“4G 模块使用 - 测试拨号”部分所述),执行以下命令连接到互联网。将 YOUR_APN 替换为您的网络提供商的 APN。
AT+CGDCONT=1,"IP","YOUR_APN"

成功连接后,输出应为 OK,如上图所示。

  • 步骤 2: 通过执行以下命令重启 4G 模块
AT+CFUN=1,1

现在,您将在串口终端上失去与 4G 模块的连接。

  • 步骤 3: 按下 CTRL + A 然后 Q 关闭 minicom

  • 步骤 4: 输入 ifconfig,您将在 usb0 接口上看到一个 IP 地址

  • 步骤 5: 您可以尝试通过以下命令 ping 一个网站,以检查是否有互联网连接
ping -I usb0 www.bing.com -c 5

EC20 模块

如果您使用的是 EC20 模块,请按照以下步骤操作:

  • 步骤 1: 如果您已经按照前一部分(4G 模块使用 - 测试拨号部分)中解释的内容重置了 EC20 模块,则可以跳过此步骤。但是,如果尚未完成,请立即执行。

  • 步骤 2: 进入 4G 模块的串口控制台,并输入以下命令将其设置为 ECM 模式

AT+QCFG="usbnet",1
  • 步骤 3: 重置 4G 模块

  • 步骤 4: 在 4G 模块控制台中,执行以下命令连接到互联网。这里将 YOUR_APN 替换为您的网络提供商的 APN

AT+CGDCONT=1,"IP","YOUR_APN"
  • 步骤 6: 输入 ifconfig,您将在 usb1 接口上看到一个 IP 地址
  • 步骤 7: 您可以尝试通过以下命令 ping 一个 URL,以检查是否有互联网连接

LoRa 模块连接概述

目前此开发板支持 WM1302 SPI 模块。您可以选择使用 美国版本欧洲版本,它们均可在我们的 Bazaar 上购买。

  • 步骤 1: 如果开发板已开启,请先关闭电源

  • 步骤 2: 将 LoRa 模块插入 mini PCIe 插槽,并使用预装的螺丝将其固定在 4G 模块的两个孔位上

  • 步骤 3: 将天线连接到天线接口。这里需要使用 IPEX 接头
note

确保 J8(控制和 UART 接口)头上的 SIM_MUX_SELGND 引脚之间没有跳线。此跳线仅在使用 4G 模块时需要。

  • 步骤 4: 打开开发板电源

LoRa 模块使用 - 测试 LoRa RF

当 LoRa 模块连接后,您会看到模块上的绿色和蓝色 LED 灯亮起

  • 步骤 1: 输入以下命令检查系统是否检测到 LoRa 模块
i2cdetect -r -y 7

如果看到以下输出,则表示系统已检测到模块

  • 步骤 2: 输入以下命令编译并构建 LoRa 信号发送工具
danger

请注意,此 LoRa 信号发送工具仅适用于 Jetpack5。如果您想在 Jetpack6 中测试 LoRa 模块功能,请参考 原理图pinmux 确定引脚名称,并使用 gpioset 命令设置引脚状态。

git clone https://github.com/lakshanthad/sx1302_hal
cd sx1302_hal
make
cd libloragw
cp ../tools/reset_lgw.sh .
sudo ./test_loragw_hal_tx -r 1250 -m LORA -f 867.1 -s 12 -b 125 -n 1000 -z 100 --dig 3 --pa 0 --pwid 13 -d /dev/spidev2.0

如果看到以下结果,并且 LoRa 模块上的 LED 变为红色,则表示模块正在成功发送 RF 信号

要停止发送,您可以按下键盘上的 CTRL + C

LoRa 模块使用 - 连接到 TTN

现在我们将连接到 TTN(The Things Network),并使用 reComputer Industrial 作为 TTN LoRaWAN 网关

  • 步骤 1: 输入以下命令准备数据包转发器
cd ..
cd packet_forwarder
cp ../tools/reset_lgw.sh .
  • 步骤 2: 根据您使用的 LoRa 模块运行以下命令。这里我们测试的是 SPI US915 版本
sudo ./lora_pkt_fwd -c global_conf.json.sx1250.US915

然而,不同模块的命令如下:

# USB 915
sudo ./lora_pkt_fwd -c global_conf.json.sx1250.US915.USB

# SPI EU868
sudo ./lora_pkt_fwd -c global_conf.json.sx1250.EU868

# USB EU868
sudo ./lora_pkt_fwd -c global_conf.json.sx1250.EU868.USB

运行上述命令后,您将看到以下输出,最后一行显示 concentrator EUI 信息。请保存此信息,因为稍后在设置网关与 TTN 时会用到。

  • 步骤 3: 访问 此 URL 进入 TTN 控制台,并选择您所在的区域
  • 步骤 4: 如果您已有账户,请登录;如果没有账户,请注册一个新账户。
  • 步骤 5: 点击 Go to gateways(前往网关)。
  • 步骤 6: 点击 + Register gateway(注册网关)。
  • 步骤 7:Gateway EUI(网关 EUI)部分输入之前获取的 Concentrator EUI(集中器 EUI),然后点击 Confirm(确认)。
  • 步骤 8: 根据您使用的 LoRa 模块输入 Frequency plan(频率计划)。这里我们使用的是 US915 版本的模块,因此选择 United States 902-928 MHz, FSB 2 (used by TTN)。之后点击 Register gateway(注册网关)。
note

Gateway ID(网关 ID)会自动为您填写。不过,您可以根据需要更改它。Gateway name(网关名称)不是必填项,但您也可以根据需要填写。

  • 步骤 9: 在网关主页上记录 Gateway Server Address(网关服务器地址)。
  • 步骤 9: 在 reTerminal Industrial 上,编辑我们之前与 lora_pkt_fwd 命令一起使用的 global_conf_json 文件。在这里,您需要更改以下选项:

    • gateway_ID: 来自设备的 Concentrator EUI
    • server_address: 来自 TTN 的网关服务器地址
    • serv_port_up: 1700
    • serv_port_down: 1700
  • 步骤 10: 重新运行数据包转发器。
sudo ./lora_pkt_fwd -c global_conf.json.sx1250.US915

如果看到以下输出,则表示设备已成功连接到 TTN。

M.2 Key B

reComputer Industrial 配备了一个支持 4G 和 5G 模块的 M.2 Key B 接口。目前我们已测试 SIM8202G-M2 5G 模块

5G 模块连接概述

  • 步骤 1: 如果设备已开启,请关闭电源。

  • 步骤 2: 确保支架已就位,然后移除支架上的顶部螺丝。

  • 步骤 2: 将 5G 模块插入 M.2 Key B 插槽,并拧紧支架螺丝以固定 5G 模块(确保支架到位)。
  • 步骤 3: 将 4 根天线连接到模块上的天线接口。这里需要使用 IPEX 4 接头。
  • 步骤 4: 将支持 5G 的 nano SIM 卡插入板上的 SIM 卡插槽,确保 SIM 卡的金色表面朝下。将卡完全插入,直到内部弹簧锁定卡片。
note

如果需要移除 SIM 卡,请按下卡片以触发内部弹簧,使卡片弹出。

  • 步骤 5: 打开设备电源。

5G 模块使用 - 测试拨号

使用 SIM8202G-M2 5G 模块时,模块不会自动启动。因此,我们需要先切换一些 GPIO 以启动模块。

步骤 1: 输入以下命令以启动 5G 模块。

sudo su 
cd /sys/class/gpio
echo 309 > export
cd gpio309
echo out > direction
echo 0 > value

cd..
echo 341 > export
cd PEE.02
echo out > direction
echo 1 > value

cd..
echo 330 > export
cd PCC.02
echo out > direction
echo 0 > value

执行上述命令后,LED2 将点亮为绿色,如下所示:

步骤 2: 安装 minicom。

sudo apt update
sudo apt install minicom -y

步骤 3: 进入连接的 5G 模块的串行控制台,以便输入 AT 命令与 5G 模块交互。

sudo minicom -D /dev/ttyUSB2 -b 115200

步骤 4: 输入命令 "AT" 并按回车键。如果看到响应为 "OK",则表示 5G 模块工作正常。

步骤 5: 输入命令 "ATI" 以检查模块信息。

步骤 6: 为测试模块,输入以下命令拨打另一个电话号码:

ATD<phone_number>;

您将看到以下输出:

DI/ DO

reComputer Industrial 支持 4 路数字输入和 4 路数字输出通道,所有通道均采用光电隔离,有效保护主板免受电压尖峰或其他电气干扰的影响。在同一连接器上还有一个 CAN 接口,我们将在本 Wiki 的后续部分讨论。

DI/ DO 引脚分配表

类型标签名称原理图信号模块引脚编号BGA 编号GPIO 编号电压/电流限制备注
输入DI1DI_1_GPIO01118PQ.05453总电流 12V/20mA12V 数字输入,接地信号需要
连接到 GND_DI (引脚 2/4/6)
DI2DI_2_GPIO09211PAC.06492
DI3DI_3_GPIO11216PQ.06454
DI4DI_4_GPIO13228PH.00391
输出DO1DO_1_GPIO193PI.00399每引脚负载 40V/40mA数字输出,最大耐压
40V,接地信号需要连接到
GND_DO (引脚 8/10)
DO2DO_2_GPIO195PI.01400
DO3DO_3_GPIO197PI.02401
DO4DO_4_GPIO199PH.07398
CANCH/标准差分信号的 CAN 总线,
接地信号需要连接到 GND_ISO (引脚 12)
CL
接地GND_DI/12V 数字输入的参考接地信号,
也是 DI 的回路
GND_DO数字输出的参考接地信号,也是 DO 的回路
CGCAN 的参考接地信号
danger

请注意,上表中的引脚编号仅适用于 Jetpack5。我们可以通过以下方式获取 Jetpack6 的引脚编号:

  1. 使用 gpioinfo 命令获取 GPIO 表。
  2. 检查 BGA 编号 以找到 Jetpack6 上的对应引脚编号。

DI 连接概览

您可以按照下图进行 DI 的连接。建议在 DI 线上串联一个电阻。我们测试时在 DI1 引脚上连接了一个 4.7kΩ 的电阻。

DI 使用方法

您需要在 DI 线上输入 12V 电压才能被检测为输入信号。

步骤 1: 按照上图连接到 DI1 引脚 并输入 12V

步骤 2: 打开并检查 DI1 的状态,操作如下:

sudo su 
cd /sys/class/gpio
echo 453 > export
cd PQ.05

cat value
note

您可以参考 DI/ DO 引脚分配表 查找 GPIO 编号和 BGA 编号。在上述示例中,DI1 引脚的 GPIO 编号为 453,BGA 编号为 PQ.05。

如果输出为 0,表示有 12V 输入;如果输出为 1,表示没有输入电压。

DO 连接概览

您可以按照下图进行 DO 的连接。建议在 DO 线上串联一个电阻。我们测试时使用了一个 4.7kΩ 的电阻。

DO 使用方法

您需要按照上述图示连接负载。最简单的测试方法是连接一个万用表(如果有的话),或者连接一个最大电压小于 40V 的负载。

步骤 1: 按照上图连接到 DO1 引脚 并输入 最大 40V

步骤 2: 打开并启用 DO1 的 GPIO,操作如下:

sudo su 
cd /sys/class/gpio
echo 399 > export
cd PI.00
echo out > direction

echo 1 > value
note

您可以参考 DI/ DO 引脚分配表 查找 GPIO 编号和 BGA 编号。在上述示例中,DO1 引脚的 GPIO 编号为 399,BGA 编号为 PI.00。

如果负载被启用,或者万用表显示您输入的电压,则测试正常运行。

CAN

reComputer Industrial 配备了一个支持 CAN FD(控制器局域网灵活数据速率)协议的 CAN 接口,速率为 5Mbps。该 CAN 接口通过电容隔离实现隔离,这提供了出色的 EMI 保护,并确保在工业和自动化应用中的可靠通信。默认情况下安装了一个 120Ω 的终端电阻,您可以使用 GPIO 切换该电阻的开启和关闭。

注意:CAN 接口使用隔离电源,这意味着连接到 CAN 接口的外部设备的地信号应连接到 CG 引脚。

使用 USB 转 CAN 适配器的连接概述

要测试和连接 CAN 总线,请将 USB 转 CAN 适配器连接到板上的 CAN 接口,如下图所示:

这里我们使用了 带 USB 线的 USB 转 CAN 分析仪适配器,可在我们的商城中找到。

使用 USB 转 CAN 适配器

  • 步骤 1: 从制造商的网站下载并安装您使用的 USB 转 CAN 适配器的驱动程序。在我们的案例中,根据我们使用的适配器,可以在这里找到驱动程序。

  • 步骤 2: 一些适配器还附带了必要的软件,用于 PC 与 CAN 设备通信。在我们的案例中,根据我们使用的适配器,我们下载并安装了可以在这里找到的软件。

  • 步骤 3: 在 reComputer Industrial 上打开终端窗口,并执行以下命令以配置和启用 CAN 接口:

sudo modprobe mttcan
sudo ip link set can0 type can bitrate 125000
sudo ip link set can0 up
  • 步骤 4: 在终端中输入 ifconfig,您将看到 CAN 接口已启用。
  • 步骤 5: 打开您之前安装的 CAN 软件。在本例中,我们将打开根据我们使用的 CAN 适配器安装的软件。
  • 步骤 6: 将 USB 转 CAN 适配器连接到 PC,并通过 Windows 搜索栏搜索 设备管理器 打开它。现在,您将在 端口 (COM & LPT) 下看到已连接的适配器。记下此处列出的串口号。根据下图,串口号为 COM9
  • 步骤 7: 打开 CAN 软件,点击 COM 部分旁边的 刷新,点击下拉菜单并根据连接的适配器选择串口号。保持 COM bps 为默认值,然后点击 打开
  • 步骤 8: 保持 模式CAN bps 为默认值,将 类型 更改为 标准帧,然后点击 设置并启动
  • 步骤 9: 在 reComputer Industrial 上执行以下命令,将 CAN 信号发送到 PC:
cansend can0 123#abcdabcd

现在,您将在软件中看到接收到的信号,如下所示:

  • 步骤 10: 在 reComputer Industrial 上执行以下命令,等待接收来自 PC 的 CAN 信号:
candump can0 &
  • 步骤 11: 在 CAN 软件中,点击 发送单帧

现在,您将在 reComputer Industrial 上看到接收到的信号,如下所示:

使用 reTerminal DM 的连接概述

如果您有 reTerminal DM,您可以直接与其通信,因为 reTerminal DM 也具有 CAN 接口。

请参考下图,通过 CAN 连接 reComputer Industrial 和 reTerminal DM:

使用 reTerminal DM

  • 步骤 1: 在使用 reTerminal DM 之前,请访问此 wiki以开始使用 reTerminal DM。

  • 步骤 2: 在 reComputer Industrial 上打开终端窗口,并执行以下命令以配置和启用 CAN 接口:

sudo modprobe mttcan
sudo ip link set can0 type can bitrate 125000
sudo ip link set can0 up
  • 步骤 3: 在 reTerminal DM 上打开终端窗口,并执行以下命令以配置和启用 CAN 接口:
sudo modprobe mttcan
sudo ip link set can0 type can bitrate 125000
sudo ip link set can0 up
  • 步骤 4: 在 reTerminal DM 上打开终端窗口,并执行以下命令以配置和启用 CAN 接口:
sudo modprobe mttcan
sudo ip link set can0 type can bitrate 125000
sudo ip link set can0 up
  • 步骤 5: 如果您在两个设备上输入 ifconfig,您将看到 CAN 接口已启用。
  • 步骤 6: 在 reTerminal DM 上执行以下命令,等待接收来自 reComputer Industrial 的 CAN 信号:
candump can0 &
  • 步骤 7: 在 reComputer Industrial 上执行以下命令,将 CAN 信号发送到 reTerminal Industrial
cansend can0 123#abcdabcd

现在你将在 reTerminal DM 上看到如下接收内容:

  • 步骤 8: 重复 步骤 6 和步骤 7,但交换设备。使用 reTerminal DM 发送 CAN 信号,并使用 reComputer Industrial 接收它们。

RS232/RS422/RS485 接口

reComputer Industrial 配备了一个 DB9 接口,支持 RS232、RS422 和 RS485 通信协议,并且板载有一个 DIP 开关面板,用于在不同接口选项之间切换。

你可以看到如下的 DIP 开关面板:

note

在使用 DIP 开关面板之前,请确保移除黄色塑料盖。

以下表格解释了基于 DIP 开关位置的不同模式:

MODE_0MODE_1MODE_2模式状态
Image000RS-422 全双工1T/1R RS-422
Image001纯 RS-2323T/5R RS-232
Image010RS-485 半双工1T/1R RS-485,TX ENABLE 低电平有效
Image011RS-485 半双工1T/1R RS-485,TX ENABLE 高电平有效
Image100RS-422 全双工1T/1R RS-422,带终端电阻
Image101纯 RS-2321T/1R RS-232 与 RS485 共存
无需总线的应用
切换 IC(特殊用途)。
Image110RS-485 半双工1T/1R RS-485,带终端电阻
TX ENABLE 低电平有效
Image111低功耗所有 I/O 引脚为高阻态
关机
note

出厂时,开关的默认模式设置为 RS485,DIP 开关位置为 010。

上述表格仅考虑了 DIP 开关面板的前三个开关。然而,第四个开关负责切换斜率速率,这直接与数据速率相关。

状态备注
Image1SLEW= Vcc
此 RS232/RS422/RS485 多协议收发器限制通信速率如下:
RS-232:最大数据速率为 1.5Mbps
RS-485/RS-422:最大数据速率为 10Mbps
实际最大数据速率取决于使用的 Jetson SOM
Image0SLEW = GND
RS-232:最大数据速率为 250Kbps
RS-485/RS-422:最大数据速率为 250kbps

在这里,我们将使用 USB 转 RS232、RS485 和 RS422 适配器来测试这些接口。因此,在继续之前,你需要在电脑上安装一个串行终端应用程序。我们推荐安装 Putty,它易于设置和使用。

  • 步骤 1: 访问 此网站 并根据你的电脑架构下载 Putty。

这里我们选择了适用于我们使用的 X86 Windows 64 位机器的 Putty。

  • 步骤 2: 打开下载的安装程序,并按照提示安装应用程序。

通用连接概览

你可以参考 DB9 接口的引脚编号和下表进行连接。

模式001/101000/100010/011/110
引脚RS232RS422RS485
1TXD-Data-
2RXDTXD+Data+
3TXDRXD+
4RXD-
5GNDGNDGND
6
7RTS
8CTS
9

RS232 连接概述

您可以使用 USB 转 RS232 适配器来测试接口。我们在测试中使用了 UGREEN USB 转 RS232 适配器

步骤 1: 关闭开发板

步骤 2: 这里有两种设置 DIP 开关的选项,可以选择 001 模式或 101 模式。每种模式的开关位置如下所示:

步骤 3: 将 USB 转 RS232 适配器连接到 DB9 接头。这里我们连接了上述提到的适配器。

步骤 4: 将适配器的另一端连接到 PC 的 USB 端口之一

步骤 5: 打开开发板

RS232 使用方法

步骤 1: 您可能需要为所使用的适配器安装驱动程序,或者 Windows 会自动为您安装驱动程序。在 Windows 搜索框中输入 设备管理器 打开设备管理器,检查是否可以看到连接的适配器作为 COM 设备。

步骤 2: 如果看不到适配器,您需要根据所使用的适配器安装驱动程序。通常可以在制造商的网站上找到这些驱动程序。对于我们使用的适配器,您可以访问 此页面,搜索型号 20201 并下载相应的驱动程序。

步骤 3: 在 PC 上打开 Putty,选择 Terminal 部分并设置以下内容:

  • 本地回显:强制开启
  • 本地行编辑:强制开启

步骤 4: 选择 Session,在 Connection type 下选择 Serial,根据设备管理器中显示的串口号设置串口号,保持速率为默认值(9600),然后点击 Open

步骤 5: 在 reTerminal Industrial 的终端窗口中输入以下命令,从 reComputer 向 PC 发送信号:

sudo chmod 777 /dev/ttyTHS0
sudo echo "RS232 message from reComputer Industrial" > /dev/ttyTHS0

现在,您将在 Putty 上看到此消息显示。

步骤 6: 在 reTerminal Industrial 的终端窗口中输入以下命令以等待接收来自 PC 的信号:

sudo cat /dev/ttyTHS0

在 Putty 上输入任何内容,按下 ENTER 键,它将显示在 reComputer Industrial 的终端窗口中。

RS422 连接概述

您可以使用 USB 转 RS422 适配器来测试接口。我们在测试中使用了 DTech USB 转 RS485 适配器

步骤 1: 关闭开发板

步骤 2: 这里有两种设置 DIP 开关的选项,可以选择 000 模式或 100 模式。每种模式的开关位置如下所示:

步骤 3: 使用跳线将 USB 转 RS422 适配器连接到 DB9 接头,如下图所示。这里我们连接了上述提到的适配器。

步骤 4: 将适配器的另一端连接到 PC 的 USB 端口之一

步骤 5: 打开开发板

RS422 使用方法

步骤 1: 您可能需要为所使用的适配器安装驱动程序,或者 Windows 会自动为您安装驱动程序。在 Windows 搜索框中输入 设备管理器 打开设备管理器,检查是否可以看到连接的适配器作为 COM 设备。

步骤 2: 如果看不到适配器,您需要根据所使用的适配器安装驱动程序。通常可以在制造商的网站上找到这些驱动程序。对于我们使用的适配器,您可以访问 此页面

步骤 3: 在 PC 上打开 Putty,选择 Terminal 部分并设置以下内容:

  • 本地回显:强制开启
  • 本地行编辑:强制开启

步骤 4: 选择 Session,在 Connection type 下选择 Serial,根据设备管理器中显示的串口号设置串口号,保持速率为默认值(9600),然后点击 Open

步骤 5: 在 reTerminal Industrial 的终端窗口中输入以下命令,从 reComputer 向 PC 发送信号:

sudo chmod 777 /dev/ttyTHS0
sudo echo "RS422 message from reComputer Industrial" > /dev/ttyTHS0

现在,您将在 Putty 上看到此消息显示。

步骤 6: 在 reTerminal 工业终端窗口中,输入以下命令以等待接收来自 PC 的信号:

sudo cat /dev/ttyTHS0

在 Putty 上输入任意内容,按下 ENTER,它将显示在 reComputer 工业终端窗口中。

RS485 连接概述

在这里,您可以使用 USB 转 RS422 适配器来测试接口。我们在测试中使用了 DTech USB 转 RS485 适配器

步骤 1: 关闭开发板。

步骤 2: 这里有 3 种选项可以设置 DIP 开关。可以设置为 010 模式、011 模式或 110 模式。每种模式的开关位置如下所示:

步骤 3: 使用跳线将 USB 转 RS422 适配器连接到 DB9 接头,如下图所示。这里我们连接了上述提到的适配器。

步骤 4: 将另一端连接到 PC 的一个 USB 端口。

步骤 5: 打开开发板。

RS485 使用方法

步骤 1: 您可能需要为所使用的适配器安装驱动程序,或者 Windows 会自动为您安装驱动程序。在 Windows 搜索中输入 设备管理器 打开设备管理器,并检查是否可以看到连接的适配器作为 COM 设备。

步骤 2: 如果看不到适配器,您需要根据所使用的适配器安装驱动程序。通常可以在制造商的网站上找到这些驱动程序。对于我们使用的适配器,您可以访问 此页面

步骤 3: 在 PC 上打开 Putty,选择 Terminal 部分并设置以下内容:

  • 本地回显:强制开启
  • 本地行编辑:强制开启

步骤 4: 选择 Session,在 Connection type 下选择 Serial,根据您在 设备管理器 中看到的内容设置串口号,保持速度为默认值(9600),然后点击 Open

步骤 5: 在 reTerminal 工业终端窗口中,输入以下命令以从 reComputer 向 PC 发送信号:

sudo su 
cd /sys/class/gpio
echo 460 > export
cd PR.04
echo out > direction
echo 0 > value
echo "RS485 message from reComputer Industrial" > /dev/ttyTHS0

现在,您将在 Putty 上看到此消息显示。

步骤 6: 在 reTerminal 工业终端窗口中,输入以下命令以等待接收来自 PC 的信号:

sudo su
cd /sys/class/gpio
echo 460 > export
cd PR.04
echo out > direction
echo 1 > value
cat /dev/ttyTHS0

在 Putty 上输入任意内容,按下 ENTER,它将显示在 reComputer 工业终端窗口中。

千兆以太网连接器

在 reComputer Industrial 上有两个千兆以太网(10/100/1000M)连接器,它们的功能不同:

  • 最左侧的连接器直接连接到 Jetson 模块,并支持 PSE 802.3 af, 15W 规范的 PoE 功能。这意味着您可以将 PoE IP 摄像头或其他 PoE 设备连接到此端口,为连接的设备提供电源。
  • 另一个连接器通过 PCIe 到以太网(LAN7430-I/Y9X)模块连接。

每个以太网端口上都有两个 LED(绿色和黄色),指示以下状态:

  • 绿色 LED:仅在连接到 1000M 网络时亮起。
  • 黄色 LED:显示网络活动状态。

USB

reComputer Industrial 配备了 3 个板载 USB3.2 连接器,具有以下特点:

  • 在双层堆叠 USB 连接器上,上下两个 USB 端口共享一个限流 IC,总供电能力为最大输出电流 2.1A(单个端口也可以达到 2.1A)。如果超过 2.1A,将进入过流保护状态。
  • 在双层堆叠 USB 连接器旁边的单个 USB 连接器上,总供电能力为最大输出电流 2.1A。如果超过 2.1A,将进入过流保护状态。
  • Orin NX 模块配备了 3 个 USB3.2,其中只有一个在 reComputer 中使用,并转换为 3 路(USB3.1 TYPE-A x2 - J4 和 USB3.1 TYPE-A x1 - J3)。
  • 仅支持 USB 主机模式,不支持设备模式。
  • 提供 5V 2.1A 电源。
  • 支持热插拔。

使用方法

以下是如何对连接的 USB 闪存驱动器进行简单基准测试的说明:

  • 步骤 1: 通过执行以下命令检查写入速度:
sudo dd if=/dev/zero of=/dev/$1 bs=100M count=10 conv=fdatasync
  • 步骤 2: 通过执行以下命令检查读取速度。在执行上述写入速度命令后再执行此命令。
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sudo dd if=/dev/$1 of=/dev/null bs=100M count=10

可配置 LED

板载有一个绿色 LED,如下图所示。默认情况下,它用作指示设备运行正常的 LED。不过,您也可以通过系统编程此 LED 的开关状态。

使用方法

步骤 1: 在终端窗口中输入以下命令以访问绿色 LED:

sudo -i
cd /sys/class/gpio
echo 329 > export
cd PCC.01
echo out > direction

步骤 2: 关闭 LED:

echo 0 > value 

步骤 3: 打开 LED:

echo 1 > value 

如果您已完成对 LED 的使用,可以执行以下命令:

cd ..
echo 329 > unexport

监控系统性能

我们可以使用 jetson stats 应用程序来监控系统组件的温度,并检查其他系统详细信息,例如:

  • 查看 CPU、GPU、RAM 的使用情况

  • 更改电源模式

  • 设置为最大时钟频率

  • 检查 JetPack 信息

  • 步骤 1: 在 reComputer Industrial 的终端窗口中输入以下命令

sudo apt update
sudo apt install python3-pip -y
sudo pip3 install jetson-stats
  • 步骤 2: 重启开发板
sudo reboot
  • 步骤 3: 在终端中输入以下命令
jtop

现在 jtop 应用程序将会打开,如下所示:

  • 步骤 4: 您可以在应用程序的不同页面之间切换,探索所有功能!

WiFi 和蓝牙

reComputer Industrial 默认不支持 WiFi 和蓝牙。但在 PCB 上预留了一个区域,可以焊接 WiFi/蓝牙模块到板子上。我们预留的空间支持 BL-M8723DU1 模块。

连接概览

  • 步骤 1: 如果您想自行焊接 BL-M8723DU1 模块,可以进行焊接。但我们不推荐这样做,因为如果在此过程中损坏了板子,保修将失效。我们建议您使用我们的专业服务来帮助您将此模块焊接到板子上,您可以发送电子邮件至 [email protected] 提出请求。
  • 步骤 2: 将两个天线连接到板子上的两个天线连接器上,用于 WiFi 和蓝牙。这里需要使用 IPEX 连接器。

使用方法

  • 步骤 1: 打开开发板,设备启动到 Ubuntu 桌面后,点击右上角的下拉菜单,导航到 设置 > Wi-Fi,并在标题栏上切换按钮以启用 WiFi。然后选择一个 WiFi 网络,输入所需的密码并连接。
  • 步骤 2: 在同一窗口中,选择 蓝牙,并在标题栏上切换按钮以启用蓝牙。然后选择一个蓝牙设备进行连接。

TPM

reComputer Industrial 配备了一个 TPM 接口,用于连接外部 TPM 模块。我们已使用基于 Infineon SLB9670 的 TPM2.0 模块进行了测试。

连接概览

将 TPM 模块连接到 TPM 接口,如下图所示:

使用方法

通过执行以下命令检查 TPM 模块是否正确加载:

sudo dmesg | grep TPM
ls /dev/tpm* -l

您将看到如下输出:

在 reComputer Industrial 上实现最大性能

如果您想在 reComputer Industrial 上启用最大性能,请按照以下步骤操作:

  • 步骤 1: 输入以下命令以启用最大功率模式
sudo nvpmodel -m 0

此时系统会要求您输入 YES 以重启设备。

  • 步骤 2: 设备重启后,输入以下命令将 CPU 时钟设置为最大频率
sudo jetson_clocks

GPIO 表

您可以访问 reComputer Industrial 的 GPIO 表,以熟悉所有的引脚映射。

在终端中执行以下命令以访问 GPIO 表:

sudo cat /sys/kernel/debug/gpio

您将看到如下输出:

gpiochip2: GPIOs 300-315, parent: i2c/1-0021, 1-0021, can sleep:
gpio-300 (wl_dis |gpio_xten_pin@0 ) out hi
gpio-301 (hst_wake_wl |gpio_xten_pin@1 ) out hi
gpio-302 (wl_wake_hst |gpio_xten_pin@2 ) out hi ACTIVE LOW
gpio-303 (bt_dis |gpio_xten_pin@3 ) out hi
gpio-304 (hst_wake_bt )
gpio-305 (bt_wake_hst )
gpio-306 (spi0_rst_3v3 |gpio_xten_pin@6 ) out lo ACTIVE LOW
gpio-307 (gpio_pin7 |gpio_xten_pin@7 ) out lo ACTIVE LOW
gpio-308 (can_120R_en )
gpio-309 (M2B_PCIe_rst )
gpio-310 (USB_HUB_rst |gpio_xten_pin@10 ) out hi
gpio-311 (PCIe_ETH_rst )
gpio-312 (M2B_WOWWAN )
gpio-313 (M2B_DPR_3V3 )
gpio-314 (SIM_MUX_SEL )
gpio-315 (gpio_pin15 )

gpiochip1: GPIOs 316-347, parent: platform/c2f0000.gpio, tegra234-gpio-aon:
gpio-316 (PAA.00 )
gpio-317 (PAA.01 )
gpio-318 (PAA.02 )
gpio-319 (PAA.03 )
gpio-320 (PAA.04 )
gpio-321 (PAA.05 |fixed-regulators:reg) out hi
gpio-322 (PAA.06 )
gpio-323 (PAA.07 )
gpio-324 (PBB.00 )
gpio-325 (PBB.01 )
gpio-326 (PBB.02 )
gpio-327 (PBB.03 )
gpio-328 (PCC.00 )
gpio-329 (PCC.01 )
gpio-330 (PCC.02 )
gpio-331 (PCC.03 |mux ) out hi
gpio-332 (PCC.04 )
gpio-333 (PCC.05 )
gpio-334 (PCC.06 )
gpio-335 (PCC.07 )
gpio-336 (PDD.00 )
gpio-337 (PDD.01 )
gpio-338 (PDD.02 )
gpio-339 (PEE.00 )
gpio-340 (PEE.01 )
gpio-341 (PEE.02 )
gpio-342 (PEE.03 )
gpio-343 (PEE.04 |power-key ) in hi IRQ ACTIVE LOW
gpio-344 (PEE.05 )
gpio-345 (PEE.06 )
gpio-346 (PEE.07 )
gpio-347 (PGG.00 )
gpiochip0: GPIOs 348-511, parent: platform/2200000.gpio, tegra234-gpio:
gpio-348 (PA.00 |fixed-regulators:reg) out lo
gpio-349 (PA.01 )
gpio-350 (PA.02 )
gpio-351 (PA.03 )
gpio-352 (PA.04 )
gpio-353 (PA.05 )
gpio-354 (PA.06 )
gpio-355 (PA.07 )
gpio-356 (PB.00 )
gpio-357 (PC.00 )
gpio-358 (PC.01 )
gpio-359 (PC.02 )
gpio-360 (PC.03 )
gpio-361 (PC.04 )
gpio-362 (PC.05 )
gpio-363 (PC.06 )
gpio-364 (PC.07 )
gpio-365 (PD.00 )
gpio-366 (PD.01 )
gpio-367 (PD.02 )
gpio-368 (PD.03 )
gpio-369 (PE.00 )
gpio-370 (PE.01 )
gpio-371 (PE.02 )
gpio-372 (PE.03 )
gpio-373 (PE.04 )
gpio-374 (PE.05 )
gpio-375 (PE.06 )
gpio-376 (PE.07 )
gpio-377 (PF.00 )
gpio-378 (PF.01 )
gpio-379 (PF.02 )
gpio-380 (PF.03 )
gpio-381 (PF.04 )
gpio-382 (PF.05 )
gpio-383 (PG.00 |force-recovery ) in hi IRQ ACTIVE LOW
gpio-384 (PG.01 )
gpio-385 (PG.02 )
gpio-386 (PG.03 )
gpio-387 (PG.04 )
gpio-388 (PG.05 )
gpio-389 (PG.06 )
gpio-390 (PG.07 |cd ) in lo IRQ
gpio-391 (PH.00 )
gpio-392 (PH.01 )
gpio-393 (PH.02 )
gpio-394 (PH.03 )
gpio-395 (PH.04 )
gpio-396 (PH.05 )
gpio-397 (PH.06 )
gpio-398 (PH.07 )
gpio-399 (PI.00 )
gpio-400 (PI.01 )
gpio-401 (PI.02 )
gpio-402 (PI.03 )
gpio-403 (PI.04 )
gpio-404 (PI.05 )
gpio-405 (PI.06 )
gpio-406 (PJ.00 )
gpio-407 (PJ.01 )
gpio-408 (PJ.02 )
gpio-409 (PJ.03 )
gpio-410 (PJ.04 )
gpio-411 (PJ.05 )
gpio-412 (PK.00 )
gpio-413 (PK.01 )
gpio-414 (PK.02 )
gpio-415 (PK.03 )
gpio-416 (PK.04 )
gpio-417 (PK.05 )
gpio-418 (PK.06 )
gpio-419 (PK.07 )
gpio-420 (PL.00 )
gpio-421 (PL.01 )
gpio-422 (PL.02 |nvidia,pex-wake ) in hi ACTIVE LOW
gpio-423 (PL.03 )
gpio-424 (PM.00 )
gpio-425 (PM.01 )
gpio-426 (PM.02 )
gpio-427 (PM.03 )
gpio-428 (PM.04 )
gpio-429 (PM.05 )
gpio-430 (PM.06 )
gpio-431 (PM.07 )
gpio-432 (PN.00 )
gpio-433 (PN.01 )
gpio-434 (PN.02 )
gpio-435 (PN.03 )
gpio-436 (PN.04 )
gpio-437 (PN.05 )
gpio-438 (PN.06 )
gpio-439 (PN.07 )
gpio-440 (PP.00 )
gpio-441 (PP.01 )
gpio-442 (PP.02 )
gpio-443 (PP.03 )
gpio-444 (PP.04 )
gpio-445 (PP.05 )
gpio-446 (PP.06 )
gpio-447 (PP.07 )
gpio-448 (PQ.00 )
gpio-449 (PQ.01 )
gpio-450 (PQ.02 )
gpio-451 (PQ.03 )
gpio-452 (PQ.04 )
gpio-453 (PQ.05 )
gpio-454 (PQ.06 )
gpio-455 (PQ.07 )
gpio-456 (PR.00 )
gpio-457 (PR.01 )
gpio-458 (PR.02 )
gpio-459 (PR.03 )
gpio-460 (PR.04 )
gpio-461 (PR.05 )
gpio-462 (PX.00 )
gpio-463 (PX.01 )
gpio-464 (PX.02 )
gpio-465 (PX.03 )
gpio-466 (PX.04 )
gpio-467 (PX.05 )
gpio-468 (PX.06 )
gpio-469 (PX.07 )
gpio-470 (PY.00 )
gpio-471 (PY.01 )
gpio-472 (PY.02 )
gpio-473 (PY.03 )
gpio-474 (PY.04 )
gpio-475 (PY.05 )
gpio-476 (PY.06 )
gpio-477 (PY.07 )
gpio-478 (PZ.00 )
gpio-479 (PZ.01 |vbus ) in hi IRQ ACTIVE LOW
gpio-480 (PZ.02 )
gpio-481 (PZ.03 )
gpio-482 (PZ.04 )
gpio-483 (PZ.05 )
gpio-484 (PZ.06 |cs_gpio ) out lo
gpio-485 (PZ.07 )
gpio-486 (PAC.00 )
gpio-487 (PAC.01 )
gpio-488 (PAC.02 )
gpio-489 (PAC.03 )
gpio-490 (PAC.04 )
gpio-491 (PAC.05 )
gpio-492 (PAC.06 )
gpio-493 (PAC.07 )
gpio-494 (PAD.00 )
gpio-495 (PAD.01 )
gpio-496 (PAD.02 )
gpio-497 (PAD.03 )
gpio-498 (PAE.00 )
gpio-499 (PAE.01 )
gpio-500 (PAF.00 )
gpio-501 (PAF.01 )
gpio-502 (PAF.02 )
gpio-503 (PAF.03 )
gpio-504 (PAG.00 )
gpio-505 (PAG.01 )
gpio-506 (PAG.02 )
gpio-507 (PAG.03 )
gpio-508 (PAG.04 )
gpio-509 (PAG.05 )
gpio-510 (PAG.06 )
gpio-511 (PAG.07 )

技术支持与产品讨论

感谢您选择我们的产品!我们致力于为您提供多种支持,确保您使用我们的产品时能够获得尽可能顺畅的体验。我们提供了多种沟通渠道,以满足不同的偏好和需求。

Loading Comments...