Skip to content

欢迎使用 AI Vision

产品介绍

alt text购买链接:

AI Vision Sensor 是一款面向 LEGO 教育与创客 的智能视觉传感器,内置 9 大 AI 模型,支持:

  • 物体检测(80种类)
  • 高级分类(返回坐标)
  • 人脸识别
  • 文字与数字识别
  • 姿态检测
  • 二维码 / 条形码
  • 颜色识别
  • 物体追踪
  • 巡线

它不仅可通过 Scratch 编程界面让孩子们从小学起轻松上手,还能无缝对接 LEGO Spike、EV3、Arduino、micro:bit 等主流控制器,轻松融入创客与教育场景,做到软硬件结合,寓教于乐。


技术规格

参数说明
处理器RV1106G3,1.2GHz 1TOPS NPU算力
BLE&WiFiESP32-C3
摄像头300W,低光照摄像头,焦距可调节
供电电压5.0V
电流消耗峰值约 300mA @ 5.0V; 关闭wifi,峰值约200mA @ 5.0V
连接接口SPIKE, EV3, UART, I2C, GPIO
内置功能物体检测 / 分类 / 文字数字识别 / 人脸检测 / 目标跟踪 / 姿态检测 / 二维码&条码 / 颜色检测 / 巡线
尺寸66mm × 29.5mm
电池3.7V 锂电池,1800mAh,续航约 4 小时(电池版支持)

软件下载

加载中...


电源供电

电池版本

  1. USB供电:USB 供电时会自动充电; 充电时,rgb灯变红色,充满时变绿色
  2. 接口供电:参考接口说明章节引脚num,其中3和5脚都可供电
  3. 电池供电:插入 LEGO 主机时,电池自动供电,可在软件中设置优先模式
  4. 多方式并行:支持 USB + 接口 + 电池同时接入

普通版本

  1. USB供电
  2. 接口供电
  3. 两者可并行供电

⚠️ 注意

  1. 请保证电源电压与功率足够,否则可能导致设备异常。
  2. 电池供电优先选择,目前只会切换接口引脚3的供电,引脚5的供电无法切换

接口说明

LEGO Spike(45678) / 51515/ EV3

  • 需购买专用连接线
  • Spike&51515:作为超声波传感器方式接入,目前SPIKE支持的功能,51515都支持
  • EV3:插入 1/2/3/4 输入端口

UART

引脚功能
1TX(发送)
2RX(接收)
3VCC(电平供电,3.3V 或 5V)
4GND
55V 电源输入(若 3 脚为 5V 可不接)
6NC 不接

I2C

引脚功能
1SDA(数据)
2SCL(时钟)
3VCC(电平供电,3.3V 或 5V)
4GND
55V 电源输入(若 3 脚为 5V 可不接)
6NC 不接

GPIO

引脚功能
1IO口(可设置高低电平,高电平电压和3引脚一致)
2IO口(可设置高低电平,高电平电压和3引脚一致)
3VCC(电平供电,3.3V 或 5V)
4GND
55V 电源输入(若 3 脚为 5V 可不接)
6NC 不接

⚠️ 注意

引脚3需要根据外接的TTL电平来确定,如果外接UART或I2C接口TTL电平是3.3V,那么就接3.3V,如果外接TTL电平时5V,那么就接5V。 当接入是5V时,也可以给系统供电,所以5引脚可以不接;否则必须在5脚接入5V

参考图,如下图放置时,由上到下分别时1,2,3,4,5,6引脚 alt text


连接使用

设备连接

alt text

  1. 点击红色蓝牙按钮 → 扫描设备(默认名称 visible-sensor
  2. 输入密码(默认 000000) → 成功后按钮变绿
  3. 点击绿色按钮即可断开

修改设备名称


修改后需等待 约 3 小时, 操作系统缓存刷新后才生效。

TIP

建议首次连接后立即修改设备名称,方便区分。


模型训练

支持云端模型训练, 训练完成后的模型再上传到设备使用。 功能目前暂未开放


模型配置

分类(高级分类)

  • 上传图片/视频并框选物体,命名后即可识别
  • 返回坐标(部分分类识别不了位置,X1,Y1返回 (0,0)
  • 最大支持 10 类

📝 与检测的区别是:

  1. 检测目前只支持80种类别,并且同一类别的不同形态的物体会检测到同一类型,比如杯子,不同的杯子检测的结果都是杯子,而高级分类可以分别上传不同的杯子进行配置,从而检测到不同的杯子。
  2. 如果需要检测80种以外的物体,检测需要进行云端训练才能识别,高级分类直接上传图片配置即可。
  3. 检测优点也很明显,经过训练的模型对特定物体的检测即精准又高效。

人脸

  • 支持上传 / 框选方式配置
  • 可修改名称
  • 最大支持 10 张

跟踪

  • 仅支持 1 个目标, 最多上传5张照片,分别对应一个目标的不同方向,名称需要保持一致

颜色

  • 系统内置:红、橙、黄、绿、青、蓝、紫
  • 可自定义纯色目标,如果有设置自定义颜色,那么系统的颜色将不生效。
  • 最大支持 10 种

巡线

  • 仅支持黑色线条

Wi-Fi 设置

  • 路由器模式:连接 2.4G Wi-Fi,与 PC 端同网段
  • AP 模式:设备热点,名称与设备名一致,PC连接热点后,将无法连网

⚠️ 建议

优先使用路由器模式,AP 模式仅在信号弱时使用。


高级设置

  • 接口协议:支持 spike、ev3、uart、i2c。 使用方法参考Lego使用UART&I2C使用GPIO使用
  • 供电模式(电池版):优先外部 / 优先电池,电源切换设备运行不会中断
  • RGB灯亮度:调节亮度(0-100),设置为0时,关闭rgb灯
  • 开启照明灯:RGB灯作为照明灯使用。设备重启后,设置失效
  • 蓝牙密码:六位数字,默认 000000
  • 分辨率:800×480 / 1072×640
  • 恢复出厂设置:清空所有配置与所有的模型配置

设备信息

展示 App 版本固件版本MAC 地址 等信息。
最下方可选择新版本并点击 升级 按钮进行 OTA 升级。


忘记密码

当忘记蓝牙连接密码时,使用此功能进行密码重置。
根据 App 提示进行操作,重置成功后,密码恢复为000000


编程界面

  1. 右键点击(平板长按)code1,弹出对话框,包括:新建、复制、重命名、删除。
    代码操作

  2. 界面布局说明

    • 右上方:显示视频
    • 右下方:显示日志
    • 显示区域可通过拖动分界条调整大小

    编程界面

⚠️ 注意

如果有不用的代码块,请全部删除,否则不能提交!
显示日志有限流,并不是每帧数据都打印,
字节数 [0, 50] 10次/s, 字节数 [50, 100] 5次/s, 字节数 [100, 500] 2次/s, 字节数 [500, 1000] 1次/s。超过1000截断,只打印前1000个字符



其他功能

代码导入导出

导入导出

  • 可选择 导入/导出代码
  • 保存文件格式:.bin
  • 一般情况下导出到下载文件夹

语言切换

目前支持 中文 / English


编程块使用


基本(Basic)

一些最常用的基础积木。

程序使用指定模型循环执行...

  • 用法:程序必须以此积木开始,并指定一种模型类别和对应的置信度。

设置模型类别和置信度

  • 用法:在程序运行过程中,可以动态修改模型类别和置信度。

等待

  • 用法:让程序进入睡眠状态。

    ⚠️ 注意

    不要等待太久,以免程序一直处于 sleep 状态,导致无法执行其他操作。


接收到的命令

  • 用法
    1. SPIKE 在使用超声波时,可通过灯的形状来通知 AI Vision,AI Vision 通过此积木接收命令,实现由主机控制。
    2. EV3 接口无此功能。
    3. UART/I2C 也可通过发送命令实现类似效果。

EV3 & SPIKE 接口返回数据

alt text

  • 用法:当协议为 EV3 或 SPIKE 时,请使用此积木进行返回。

    ⚠️ 注意

    1. 同步返回数值必须在 0–200 之间
    2. 当程序执行到这行指令后会立即返回,即不执行其他指令了。
    3. 建议在所有可能返回的分支返回数据。

UART & I2C 接口返回数据

  • 用法:当协议为 UART 或 I2C 时,请使用此积木进行返回。

    • 如果输入是 字符串,请使用 none 转换:
      字符串示例
    • 如果输入是 object,请使用 json 转换:
      对象示例

⚠️ 注意

当程序执行到这行指令后,会返回,也就是不执行其他指令了。建议在所有可能返回的分支返回数据。


视觉类(Vision)

与视觉检测、识别相关的积木。

指定的目标是否存在

  • 用法:判断一个指定名称的目标是否存在。存在返回 ,否则返回

获取所有检测到的目标

  • 用法:返回所有检测到的目标(list 列表),需循环遍历获取单个目标。

    示例:
    示例


获取指定目标的坐标值

  • 用法:输入目标名称或 object,返回目标矩形框的坐标值。

    • 坐标值以图像左上角 (0,0) 为原点。
    • 例如分辨率为 800×480,则右下角坐标为 (799,479)。

    坐标说明

    • X1:矩形框左上角的 X 坐标
    • Y1:矩形框左上角的 Y 坐标
    • X2:矩形框右下角的 X 坐标
    • Y2:矩形框右下角的 Y 坐标

    用法示例

    1. 使用目标名称 示例

      ⚠️ 注意

      如有多个同名目标,仅返回第一个

    2. 使用目标 object
      示例

获取指定目标的姿态位置的坐标值

  • 用法:输入目标名称或 object,返回姿态点坐标(仅对姿态模型有效)。

    • X:位置点的 X 坐标
    • Y:位置点的 Y 坐标

    示例
    示例1
    示例2

    支持的姿态点
    Nose(鼻子)、LEye(左眼)、REye(右眼)、LEar(左耳)、REar(右耳)、
    LShoulder(左肩)、RShoulder(右肩)、LElbow(左肘)、RElbow(右肘)、
    LWrist(左手腕)、RWrist(右手腕)、LHip(左臀)、RHip(右臀)、
    LKnee(左膝)、RKnee(右膝)


获取指定目标的名称

  • 用法:输入目标名称或 object,返回目标名称(可能是模型默认或自定义配置)。

    示例
    示例1
    示例2


获取指定目标的置信度

  • 用法:输入目标名称或 object,返回匹配目标的置信度(0–1 之间的小数,1 为最大)。

    示例
    示例1
    示例2


其他类

打开APP参考使用说明


Lego 使用

用于 SPIKE 与 EV3 的应用场景。

  • 前置条件:必须在高级设置中选择接口协议为SPIKE或者EV3

  • SPIKE 应用:获取 AI Vision 数据(单位必须为 cm)
    示例

  • SPIKE 应用:发送命令给 AI Vision
    (如需查看接收值,可在 AI Vision 中使用输出命令打印)
    示例

  • EV3 classroom 应用

    • 输入端口必须是 1, 2, 3, 4
    • 单位必须为 cm
      示例

⚠️ 注意

LEGO 获取传感器数据的时候,总是会获取到最近一次收到的数据。例如如果有一帧数据发送了数据10,后面几帧数据都没有发送return数据,那么读取的数据会一直是10,直到下一次收到数据。所以在没有处理到数据的时候建议也发送return数据,以做区分


UART & I2C 使用

  • 前置条件:必须在高级设置中选择接口协议为uart或者i2c

  • 接收协议

c
// Byte[0] = 0x88, Byte[1] = 0xEE
// Byte[2-3] = 数据长度 (uint16, 小端),len = Byte[2] | Byte[3] << 8
// Byte[4..] = 数据内容,长度为len
// Byte[4+len] = CRC 校验数据,也就是Byte[4]开始,长度为len
uint8_t calc_crc(const uint8_t *data, size_t len) {
    uint8_t crc = 0;
    for (size_t i = 0; i < len; ++i) {
        crc ^= data[i];
    }
    return crc;
}

GPIO 使用

  • 前置条件:必须在高级设置中选择接口协议为gpio

  • 接收协议 使用ev3/spike返回数据的命令来设置高低电平, 数值对应如下: 0: 1和2引脚都为低电平 1: 1引脚为高电平,2引脚为低电平 2: 1引脚为低电平,2引脚为高电平 3: 1引脚为高电平,2引脚为高电平

REQ

  1. RGB灯颜色的作用
    红色:电池充电中
    绿色:电池充满电或者无电池正常状态
    黄色:无摄像头

  2. 扫描不到设备
    优先拔掉设备电源,让设备重启。 如果还不行,重启APP。