技术资料
TFS20-L 用户手册
本手册介绍 TFS20-L LiDAR 的测量原理、技术规格、硬件接口及配置方法。该模块基于 dToF 技术,支持 UART 和 I2C 通信,适用于近距离测距应用。
本手册介绍 TFS20-L LiDAR 的测量原理、技术规格、硬件接口及配置方法。该模块基于 dToF 技术,支持 UART 和 I2C 通信,适用于近距离测距应用。
1. 产品概述
TFS20-L 是一款微型单点 LiDAR 模块,基于飞行时间(dToF)直接测量原理。发射端的激光通过透镜准直并发射脉冲激光信号,经被测物体反射后,回波信号进入接收透镜并由高灵敏度 SPAD 探测器检测。通过计算发射与回波信号的时间差,结合光速即可得出距离。b17
1.2 技术规格
| 性能参数 | 数值 |
|---|---|
| 检测范围 | 0.2-20m@90%反射率@0Klux, 0.2-15m@90%反射率@100Klux0.2-12m@10%反射率@0Klux, 0.2-9m@10%反射率@100Kluxb20 |
| 精度① | ±6cm (0.2~6m), 1% (≥6m)b20 |
| 重复性② | 2cm (0.2~6m) @1σb20 |
| 帧率 | 0/ 20 / 50 / 100 (默认) / 250Hzb20 |
| 抗环境光能力 | 100KLuxb20 |
| 光源 | VCSELb22 |
| 中心波长 | 905nmb22 |
| 视场角 (FoV) | <2°b22 |
| 人眼安全 | Class 1 Eye-safe [EN60825]b22 |
| 平均功耗 | ≤0.43Wb24 |
| 峰值电流③ | 130mA@3.3Vb24 |
| 电源 | DC 3.3±9%Vb24 |
| 工作温度 | -20℃ ~ +60℃b25 |
| 尺寸 | TYP. 21.0 x 15 x 7.87mm³b25 |
| 重量 | 1.35gb25 |
注意:1. 精度基于 25℃、90% 反射率条件。2. 重复性基于 25℃ 室内、90% 反射率条件。3. 峰值电流在室温下测量。b29
1.3 结构外观

图 1:TFS20-L 尺寸b32
2. 硬件接口与协议
连接器型号为 WF08006-01207,引脚间距 0.8mm。b34

图 2:TFS20-L 引脚序列b36
| 引脚号 | 功能 | 说明 |
|---|---|---|
| 1 | 3V3 Laser | 激光电源 |
| 2 | 3V3GND | |
| 3 | UART_TX/I2C_SDA | 发送 / 数据 |
| 4 | UART_RX/I2C SCL | 接收 / 时钟 |
| 5 | GPIO | 芯片选择/模式选择 |
| 6 | GND | 接地 |
模块支持 UART 和 IIC 两种通信模式,上电时仅能选择一种接口运行。b38
| 模式 | 配置要求 |
|---|---|
| UART | 上电时将 INT 引脚接地b39 |
| IIC | 上电时 INT 引脚需通过 4.7K 电阻上拉或悬空b39b42 |


2.2 串口数据通信
| 参数 | 默认值 | 可配置性 |
|---|---|---|
| 波特率 | 115200 | 可配置 |
| 数据位 | 8 | 不可配置 |
| 停止位 | 1 | 不可配置 |
| 校验位 | 无 | 不可配置 |
波特率可设置为 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600。默认波特率为 115200。若配置错误,将重置为 115200。b51b52
2.3 串口输出格式
每个数据包由 9 字节十六进制数组成。b53
| Byte0-1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 | Byte7 | Byte8 |
|---|---|---|---|---|---|---|---|
| 0x59 59 | Dist_L | Dist_H | Strength_L | Strength_H | Temp_L | Temp_H | Checksum |
Byte0-1: 帧头 0x59 59Byte2-3: 距离值低/高 8 位Byte4-5: 信号强度低/高 8 位Byte6-7: 温度低/高 8 位Byte8: 前 8 字节累加和的低 8 位b55b56
2.4 I2C 通信
在引脚 5 上拉 4.7K 电阻或悬空,TFS20-L 进入 I2C 模式。引脚 3 为 SDA,引脚 4 为 SCL。b57 支持最高 400kps 时钟速度,默认地址为 0x10。b58 固件版本 V1.4.6 及以上支持 I2C 通信。b59 I2C 从机地址为 7 位,范围 [0x08, 0x77]。写操作地址为 0x20,读操作地址为 0x21。b60 写寄存器后建议等待 100ms 再进行读操作以验证。b60
3. 自定义配置
用户可通过发送特定命令自定义数据帧格式、帧率等参数。配置成功后参数保存至 Flash,重启无需重新配置。b65 所有配置命令以十六进制发送。b65
| Byte0 | Byte1 | Byte2 | Byte3 ~ ByteN-2 | ByteN-1 |
|---|---|---|---|---|
| Head (0x5A) | Len | ID | Payload | Checksum |
Byte0: 帧头 0x5AByte1: 命令帧长度Byte2: 功能 IDByte3-N-2: 数据负载ByteN-1: 校验和(前 N-2 字节之和的低 8 位)b69
3.2 自定义配置示例
| 描述 | 命令 | 响应 | 备注 | 默认设置 |
|---|---|---|---|---|
| 固件版本 | 5A 04 01 5F SU | 5A 07 01 V1 V2 V3 | 版本 V3.V2.V1 | / |
| 帧率① | 5A 06 03 LL HH SU④ | 5A 04 01 5F | 0/20/50/100/250 Hz | 100Hz |
| 触发模式 | 5A 04 04 62 | Data packet | 帧率设为 0 时可用此命令触发 | / |
| 输出格式 (cm) | 5A 05 05 01 65 | 5A 05 05 01 65 | 标准 9 字节 | √ |
| 输出格式 (mm) | 5A 05 05 06 6A | 5A 05 05 06 6A | 标准 9 字节 | / |
| 输出控制③ | 开: 5A 05 07 01 67关: 5A 05 07 00 66 | 同命令 | 每次上电需发送使能命令 | Enabled |
| 修改波特率② | 5A 08 06 H1 H2 H3 H4 SU | 同命令 | 例: 460800 (0x00 07 08 00) | 115200 |
| 使能校验和 | 开: 5A 05 08 01 68关: 5A 05 08 00 67 | 同命令 | Enable | |
| 信号强度阈值及低阈值输出值 | 5A 07 22 XX LL HH | 同命令 | 例: Strength≤100, Dist=1200 | / |
注意:1. 帧率默认为 100Hz,支持 0, 20, 50, 100, 250Hz。2. 波特率配置错误会重置为 115200。3. 每次上电必须发送数据输出使能命令。4. ‘SU’ 为校验和。5. 发送特定配置命令后立即生效并保存,无需发送保存命令。b76b77b85b86
4. 快速测试指南
4.1 测试所需工具





TFS20-L, TTL-USB 转换器, USB 线缆, PC, 测试软件b104
4.2 测试步骤
(1) 下载测试软件:从北醒官网下载最新版 TFS20-L 测试软件。解压前请关闭杀毒软件。仅支持 Windows 系统。b106


(2) 硬件连接:连接 TFS20-L、TTL-USB 板和 USB 线缆至 PC。确保连接牢固。b110
图 3:LiDAR 与 PC 连接b109
(3) 软件连接:运行 GUI 软件,选择 “TFmini/TFmini-S”,选择自动识别的端口(如 COM9),选择正确波特率(如 115200),点击 “CONNECT”。连接成功后,“TIME LINE CHART” 区域显示数据曲线,“REAL TIME DATA” 区域显示实时距离、有效点数和信号强度。b115
图 4:GUI 软件与 LiDAR 连接b114
注意:1. 若无数据显示,检查接线。上电成功后,透过发射透镜可见微弱红光。2. 距离单位默认为 cm。若改为 mm,PC 软件图表仍显示 cm 单位,但数值会变化。b116b117
5. 常见问题 (Q&A)
1. 连接主机后无数据输出:原因:TTL-USB 连接不良或驱动未安装。解决:检查连接,重装驱动。b121
2. TFS20-L 工作一段时间后发热:说明:芯片和电路板正常工作时的轻微发热属于正常现象。b122
3. TFS20-L 无数据输出:原因:V1.4.0 版本默认上电不输出数据;电源异常;接线错误。解决:发送输出使能命令 5A 05 07 01 67;检查电源电压;检查接线顺序。b123
4. 是否支持超低功耗模式?回答:不支持。待机电流约 145 mW,平均功耗约 430 mW。b124
附录:I2C 寄存器表
| 地址 | R/W | 名称 | 描述 | 初始值 |
|---|---|---|---|---|
| 0x00 | R | DIST_LOW | 距离低字节 (cm) | - |
| 0x01 | R | DIST_HIGH | 距离高字节 | - |
| 0x02 | R | AMP_LOW | 信号强度低字节 | - |
| 0x03 | R | AMP_HIGH | 信号强度高字节 | - |
| 0x04 | R | TEMP_LOW | 温度低字节 (0.01 Celsius) | - |
| 0x05 | R | TEMP_HIGH | 温度高字节 | - |
| 0x06 | R | TICK_LOW | 时间戳低字节 | - |
| 0x07 | R | TICK_HIGH | 时间戳高字节 | - |
| 0x08-0x09 | R | ERROR_LOW | 错误代码 | Hold |
| 0x0A | R | VERSION_REVISION | 修订版本 | - |
| 0x0B | R | VERSION_MINOR | 次版本 | - |
| 0x0C | R | VERSION_MAJOR | 主版本 | - |
| 0x10-0x1D | R | SN | 序列号 (14 字节 ASCII) | - |
| 0x20 | W | SAVE | 写入 0x01 保存当前设置 | - |
| 0x21 | W | SHUTDOWN/REBOOT | 写入 0x02 重启 | - |
| 0x22 | W/R | SLAVE_ADDR | 从机地址 [0x08, 0x77] | 0x10 |
| 0x23 | W/R | MODE | 0x00: 连续测距; 0x01: 触发模式 | 0x00 |
| 0x24 | W | TRIG_ONE_SHOT | 触发一次 (仅触发模式) | - |
| 0x25 | W/R | ENABLE | 0x00: 关闭 LiDAR; 0x01: 开启 LiDAR | 0x01 |
| 0x26 | W/R | FPS_LOW | 帧率低字节 | 0x64 |
| 0x27 | W/R | FPS_HIGH | 帧率高字节 | 0x00 |
| 0x29 | W | RESTORE_FACTORY_DEFAULTS | 写入 0x01 恢复出厂设置 | - |
| 0x2A | W/R | AMP_THR_LOW | 信号强度阈值低字节 | 0x2C |
| 0x2B | W/R | AMP_THR_HIGH | 信号强度阈值高字节 | 0x01 |
| 0x2C | W/R | DUMMY_DIST_LOW | 虚拟距离低字节 | 0xFF |
| 0x2D | W/R | DUMMY_DIST_HIGH | 虚拟距离高字节 | 0xFF |
| 0x2E | W/R | MIN_DIST_LOW | 最小距离低字节 (mm) | 0x00 |
| 0x2F | W/R | MIN_DIST_HIGH | 最小距离高字节 (mm) | 0x00 |
| 0x30 | W/R | MAX_DIST_LOW | 最大距离低字节 (mm) | 0xFF |
| 0x31 | W/R | MAX_DIST_HIGH | 最大距离高字节 (mm) | 0xFF |
| 0x3A-0x3F | R | SIGNATURE | ‘TFS20-L’ | - |
