跳到主要内容

SHW3G & SHF3G(3MP 全局曝光)

概述

SHW3G(HFOV122°) 与 SHF3G(HFOV173°) 摄像头专为具身智能应用开发设计,使用3MP Global Shutter传感器,可用于人形机器人头部躯干等位置,面向具身智能应用中的机器人感知与识别场景。 两者主要差异在镜头视场角:SHW3G 提供 122° HFOV,适合广角感知;SHF3G 提供 173° HFOV,适合超广角感知。除镜头选型表中列出的差异外,其余平台规格保持一致。


SHW3G

SHW3G(HFOV122°)

SHF3G

SHF3G(HFOV173°)

关键特性与应用

特性:
• 输出 RAW 数据
• 全局曝光
• 低延迟
• 支持外部触发
• 多摄像头同步

应用:
• 人形机器人
• 数据采集

快速开始

规格参数

参数
传感器3MP 全局曝光
图像尺寸1/3.1 inch CMOS
输出像素2064 (H) × 1552 (V)
像元尺寸2.25um*2.25um
帧率最高 125fps
曝光全局曝光
输出数据RAW@12bit/10bit/8bit
串行器MAXIM MAX96717
摄像头接口GMSL2
供电9~16V POC
电流小于 200mA@12VDC
连接器Amphenol Fakra (Z Code)
工作温度范围-40~+85℃
尺寸W: 25mm, L:25mm, H:32.13mm (SHW3G) / 31.82mm (SHF3G)
重量小于 50g

尺寸

SHW3G_Dimensions

【SHW3G(HFOV122°)】

SHF3G_Dimensions

【SHF3G(HFOV173°)】

硬件概览

框图

SHW3G_BlockDiagram

帧同步使用要求

需要两路触发输入信号PWM 触发信号要求摄像头串行器 GPIO ---> 传感器 GPIO备注
1XVS 信号频率: 30 Hz, 占空比: 10%MFP7 ---> XVS如果多台摄像头用于同步触发(即从模式),必须同时输入 XVS 和 XHS 触发信号,并满足相应要求,才能实现同步触发。
2XHS 信号频率: 83 kHz, 占空比: ≥ 90%MFP3 ---> XHS

I2C 地址信息

组件参数
串行器型号MAX96717
I2C 地址0x80 (8bit 地址)
GMSL 速率GMSL2 (6G bps)
传感器型号RGGB
I2C 地址0x6C (8bit 地址)
帧同步由 MAX96717 MFP7 和 MFP3 控制
主从控制由 MAX96717 MFP5 控制 (低电平:主模式,高电平:从模式(默认))
复位由 MAX96717 MFP0 控制

镜头规格

型号HFOVVFOVF.No景深防水等级镜头安装
SHW3G122°90°2.20.34m - INF@Focus at 1MIP67AA
SHF3G173°134°2.00.2m - INF@Focus at 0.4MIP67AA

摄像头使用

1. 适配 NVIDIA® Jetson™ 平台

SHW5G_Application

SHW3G / SHF3G 摄像头连接到 NVIDIA Jetson AGX Orin

步骤 1:安装步骤

快速设置
  1. 使用同轴线将 SHW3G 或 SHF3G 摄像头连接到 SG10A-AGON-G2M-A1 板卡
  2. 将 SG10A-AGON-G2M-A1 板卡安装到 Jetson AGX Orin 模组上
  3. 连接 SHW3G 或 SHF3G 摄像头电源
  4. 连接 SG10A-AGON-G2M-A1 板卡电源
  5. 启动系统

步骤 2:软件准备

SDK 下载
  • 请根据摄像头类型和 JetPack 版本选择合适的驱动包:

  • 将完整链接地址复制到 DownGit 下载

序号JetPack 版本摄像头NVIDIA Jetson 设备转接板下载链接
1JP6.2SHW3G / SHF3GJetson AGX Orin Developer KitSG10A-AGON-G2M-A1下载
JetPack 版本

NVIDIA JetPack(Jetpack 5.1.2Jetpack 6.0)是 Jetson 系列开发板的官方软件开发套件(SDK),包含操作系统、驱动、CUDA、cuDNN、TensorRT 以及其他开发工具和库。每个 JetPack 版本通常对应一个特定的 Jetson Linux 版本(此前称为 L4T - Linux for Tegra)。

  • 36.4.3: L4T R36.4.3 (Jetpack 6.2)
  • 36.4: L4T R36.4 (Jetpack 6.1)
  • 36.3: L4T R36.3 (Jetpack 6.0)
  • 35.4.1: L4T R35.4.1 (Jetpack 5.1.2)

更多信息请访问 NVIDIA 官方 Jetson 下载中心

2. 与客户自研平台集成

对于使用自有解串器、希望将我们的摄像头(串行器端)适配到其平台的客户,需要进行详细的技术协同。

SHW3G_Fsync

该图展示了摄像头与控制器系统之间的通信架构:数据从摄像头侧的 Sensor/ISP 经 Serializer 传输到控制器侧的 Deserializer 和 SOC。系统使用 Fsync 信号进行同步,并通过 MFP7 和 MFP3 接口进行控制。该架构是将 SENSING 摄像头正确集成到客户自研平台的关键。

步骤 1:链路寄存器初始化

SENSING 将提供:

  • 串行器与解串器配置

  • 链路状态故障排查指南

    • 链路训练参数
    • 错误检测设置
提示

请参考下面的软件流程和示例代码开发驱动代码。

软件开发

  1. 驱动开发
/* Example code for MAX9296 I2C initialization */
#define MAX9296_I2C_ADDR 0x90 // 8-bit address

int max9296_init() {
// Initialize I2C bus
i2c_init();

// disable MIPI output
i2c_write(MAX9296_I2C_ADDR, 0x0313, 0x00);
delay_ms(100);
// Configure link settings for GMSL2 (6Gbps)
i2c_write(MAX9296_I2C_ADDR, 0x0001, 0x02);

// Configure linkA and linkB settings for GMSL2 selection (default value)
i2c_write(MAX9296_I2C_ADDR, 0x0006, 0xC0);

// Configure MIPI rate 1200Mbps
i2c_write(MAX9296_I2C_ADDR, 0x0320, 0x2C);

// enable MIPI output
i2c_write(MAX9296_I2C_ADDR, 0x0313, 0x02);

return 0;
}
  1. 摄像头配置
/* Example code for   initialization */

#define MAX9295_I2C_ADDR 0x80 // 8-bit address

int camera_init() {
// Initialize deserializer first
max9296_init();

// Reset ISP through MAX9295A
i2c_write(0x80, 0x02BE, 0x10); // MFP0 high
//
i2c_write(0x80, 0x0057, 0x12);
i2c_write(0x80, 0x005B, 0x11);
// Configure datatype YUV422 8bit
i2c_write(0x80, 0x0318, 0x5E);

// camera trigger MFP7 low to high
i2c_write(0x80, 0x02D3, 0x00); // MFP7 low
delay_ms(300);
i2c_write(0x80, 0x02D3, 0x10); // MFP7 high

return 0;
}

集成步骤

  1. BSP 集成

    • 修改设备树以包含 CSI 接口配置
    • 将摄像头驱动加入内核构建配置
    • 为摄像头配置 media controller pipeline
  2. 应用开发

/* Example code for capturing camera frames */
#include "camera_api.h"

int main() {
// Open camera device
int fd = open("/dev/video0", O_RDWR);
if (fd < 0) {
perror("Failed to open camera device");
return -1;
}

// Configure video capture format
struct v4l2_format fmt = {0};
fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
fmt.fmt.pix.width = 1920;
fmt.fmt.pix.height = 1536;
fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_UYVY;

if (ioctl(fd, VIDIOC_S_FMT, &fmt) < 0) {
perror("Failed to set format");
close(fd);
return -1;
}

// Request and map buffers
// ... (buffer setup code) ...

// Start streaming
// ... (streaming code) ...

// Capture and process frames
// ... (frame processing code) ...

// Cleanup
close(fd);
return 0;
}

步骤 2:数据处理

通过 MIPI CSI 接口接收模组数据后:

  • 数据接收
    • MIPI CSI-2 协议实现
    • 数据速率配置
  • 图像处理
    • YUV422 数据解析
    • 图像格式转换
    • 显示配置

技术支持

  • 文档

    • 详细寄存器说明
  • 工程支持

    • 技术咨询
    • 调试协助
    • 性能优化
提示

SENSING Technology 可为大多数平台的集成工作提供技术支持。如需详细文档、示例代码和技术协助,请联系我们的支持团队。