TFmini-Plus LiDAR Sensor
| |||||||||||||||||||||
| |||||||||||||||||||||
说明
产品简介
TFmini Plus 是基于 TFmini 的升级项目,它是一款小型化,单点测距的产品,基于 ToF(飞行时间)原理,配合独特的光学、电学、算法设计,主要实现稳定、精准、高灵敏度和高速的距离测量的功能。产品本身除了具有 TFmini 的低成本、小体积、测距远等特点外,还增加了 IP65 等级防护,测距精度更高,对于室外强光、不同温度、不同反射率等不同环境下适应性更强,更低功耗,探测频率也更加灵活。产品同时兼容 UART 和 I2C 通信接口,可通过指令进行切换。
产品特点
- 基于TOF (飞行时间) 激光测距技术
- 支持UART、IIC通信 (UART、IIC共用接口)
- 支持0.1-12m范围测量
- 支持室外强光、不同温度、不同反射率等不同环境下使用,可以满足多种场景需求
- 支持输出距离测量值Dist、信号强度Strength、芯片内部温度Temp等信息
- 支持两种输出方式:UART主动输出与IIC查询输出
- 支持远程升级
- 5.0±0.5V供电
- 功耗550mW(低功耗时≤100mW)
- 850nm激光符合IEC 60825-1:2014第3版规定的Class1标准
产品参数
应用场景
- 行人检测
- 车辆检测
- 高度计
- 机器人防跌落
工作原理
TFmini Plus 基于 ToF(Time of Flight)即飞行时间原理。具体为产品周期性的向外发出近红外 光调制波,调制波遇物体后反射。产品通过测量调制波往返相位差,得到飞行时间,再计算出产品 与被测目标之间的相对距离。
功能描述
【Interface & Baudrate | 接口与波特率】
TOFSense支持配置为UART与I2C两种通信方式:
- UART串口通信波特率设置范围如下:
UART串口波特率 说明 9600、14400、19200、56000、115200、460800、921600 默认波特率为115200
- I2C通信波特率设置范围如下:
I2C波特率 说明 400kbps 最大传输速率400kbps
- I/O模式:
- ⭐注:使用 I/O 模式前,请将低阈值默认输出值修改为 1200(发送指令:5A 07 22 0A B0 04 00 5A 04 11 6F),可以避免远距离误报的问题。
- I/O 输出模式下,不能输出测距值,只是在距离从小变大超过高阈值的时候或者从大到小低 于低阈值的时候让 I/O 口电平反转。当输出为近区电平时,测量值大于滞回区间的远端点后,输出切换为远区电平;当输出为远区电平时,测量值小于滞回区间的近端点时,输出切换为近区电平。(高电平:3.3V,低电平:0V)
接口数据输出模式设置:
- Active Output | 主动输出:
- 主动输出模式在UART模式时使用,该模式下模块以配置的频率主动输出测量信息。
- Query Output | 查询输出:
- 查询输出模式在I2C模式下使用,该模式下通过控制器向期望查询模块发送查询指令,模块即可输出一帧测量信息。
- 常用指令:5A 05 00 01 60 获取测距结果
- 查询输出模式在I2C模式下使用,该模式下通过控制器向期望查询模块发送查询指令,模块即可输出一帧测量信息。
【Distance Status | 距离】
模块可以输出当前距离,用户可结合距离数据进行数据处理,距离数据含义如下:
数值 说明 65535 测量距离无效 其他 测量距离有效
探测距离对应有效边长:
【Signal Strength | 信号强度】
- 指示当前返回信号的强度,该值越大表明返回信号越强。
常见物体反射率:
【视场角】
- 视场角的大小决定了有效测距边长,只有当“被测目标边长”大于等于“有效测距边长”时,数据才稳定可靠。
当被测物体边长不满足有效测距边长时,TFmini 输出测量值(Dist)会出现异常。如下:
协议解析
- 协议由 Frame Header(帧头)、Data(数据)、Sum Check(校验和)组成。
- 其中 Frame Header 为固定不变的数值;
- Data 为传输的数据内容;
- Sum Check 为 Frame Header、Function Mark、Data 相加求和(即前面所有字节相加)后的最低字节。
- 协议组成:
Frame Header + Data + Sum Check
说明:协议包遵循小端模式原则,即低字节在前,高字节在后。
- TOFSense _UART_Frame:
- 数据来源: 将模块连接上位机,UART模式时为主动输出模式。
- 原始数据:
59 59 0A 00 00 01 20 00 DD
- 解析表:
- 解析表:
Data Type Length (Bytes) Hex Result Frame Header uint8 1 59 0x59 Frame Header uint8 1 59 0x59 Dist uint8 2 0A 00 10cm Strength uint8 2 00 01 256 Temp uint8 2 20 00 32℃ Sum Check uint8 1 DD 0xDD
- TOFSense _I2C_Read_Frame:
- 数据来源: 将模块连接上位机,配置为I2C查询输出模式,通过上位机发送下列数据实现数据查询。
- 原始数据:
59 59 12 00 03 02 24 00 ED
- 解析表:
- 解析表:
Data Type Length (Bytes) Hex Result Frame Header uint8 1 59 0x59 Frame Header uint8 1 59 0x59 Dist uint8 2 12 00 18cm Strength uint8 2 03 02 770 Temp uint8 2 24 00 36℃ Sum Check uint8 1 ED 0xED
软件说明
主控 编程软件 Raspberry Pi Pico Thonny Raspberry Pi VScode Arduino Arduino ESP32 Arduino
产品尺寸及线序
串口助手调试
Raspberry Pi
树莓派环境配置
- 树莓派串口配置
由于树莓派串口默认用于终端调试,如需使用串口,则需要修改树莓派设置。执行如下命令进入树莓派配置:
sudo raspi-config
选择Interfacing Options ->Serial ->no -> yes,关闭串口调试功能。
需要重启
sudo reboot
打开/boot/config.txt文件,找到如下配置语句使能串口,如果没有,可添加在文件最后面:
enable_uart=1
重启生效
程序调试
默认模式为UART,若进行模式切换,请记住当前模式。
①使用VScode连接树莓派
②在树莓派中新建后缀为.py的文件
③根据下方路径进入对应文件
④复制提供的程序,粘贴至新建的python文件中
⑤确定连接正确并运行。
⭐或使用其他方式将示例复制到树莓派中,使用C文件的话记得编译哈。
- 记得下载示例!示例程序
- UART调试(连接GPIO14、GPIO15)
- 示例文件路径:
- python :..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\Python\UART\UART.py
- WiringPi:..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\WiringPi\UART\UART.c
2.IIC调试(连接GPIO2、GPIO3)
- 示例文件路径:
- python :..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\Python\IIC\IIC.py
- WiringPi:..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\WiringPi\IIC\IIC.c
3.模式切换
- UART转IIC(连接GPIO14、GPIO15)
- 运行后等待串口输出: UART To IIC:End of configuration. --UART转IIC配置结束
- 示例文件路径:
- python :..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\Python\UART_IIC\UART_IIC.py
- WiringPi:..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\WiringPi\UART_IIC\UART_IIC.c
- IIC转UART(连接GPIO2、GPIO3)
- 运行后等待串口输出: IIC To UART:End of configuration. --IIC转UART配置结束
- 示例文件路径:
- python :..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\Python\IIC_UART\IIC_UART.py
- WiringPi:..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi\WiringPi\IIC_UART\IIC_UART.c
树莓派使用TFmini-Plus LiDAR Sensor模块的UART调试效果如下:
硬件连接
Raspberry Pi Pico
程序调试
默认模式为UART,若进行模式切换,请记住当前模式。
①使用Thonny连接Raspberry Pi Pico(右下角记得选择Raspberry Pi Pico)
②在Raspberry Pi Pico中新建main.py的文件
③根据下方路径进入对应文件
④复制提供的程序,粘贴至新建的main.py文件中
⑤确定连接正确并运行。
- 记得下载示例!示例程序
1.UART调试(连接D0、D1)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi Pico\UART\UART.py
2.IIC调试(连接SDA、SCL)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi Pico\IIC\IIC.py
3.模式切换
- UART转IIC(连接D0、D1)(运行后等待串口输出: UART To IIC:End of configuration. --UART转IIC配置结束)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi Pico\UART_IIC\UART_IIC.py
- IIC转UART(连接SDA、SCL)(运行后等待串口输出: IIC To UART:End of configuration. --IIC转UART配置结束)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Raspberry Pi Pico\IIC_UART\IIC_UART.py
Raspberry Pi Pico使用TFmini-Plus LiDAR Sensor模块的UART调试效果如下:
硬件连接
Arduino
程序调试
默认模式为UART,若进行模式切换,请记住当前模式。
①使用Arduino IDE连接Arduino(选择正确型号)
②在Arduino IDE中新建文件
③根据下方路径进入对应文件
④复制提供的程序,粘贴至新建的文件中
⑤确定连接正确并上传。
- 记得下载示例!示例程序
1.UART调试
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Arduino\UART\UART.ino
2.IIC调试
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Arduino\IIC\IIC.ino
3.模式切换
- UART转IIC(运行后等待串口输出: UART To IIC:End of configuration. --UART转IIC配置结束)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Arduino\UART_IIC\UART_IIC.ino
- IIC转UART(运行后等待串口输出: IIC To UART:End of configuration. --IIC转UART配置结束)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\Arduino\IIC_UART\IIC_UART.ino
Arduino使用TFmini-Plus LiDAR Sensor模块的UART调试效果如下:
硬件连接
ESP32
程序调试
默认模式为UART,若进行模式切换,请记住当前模式。
⭐首先需要安装好ESP32软件包。
①使用Arduino IDE连接ESP32
②在Arduino IDE中新建文件
③根据下方路径进入对应文件
④复制提供的程序,粘贴至新建的文件中
⑤确定连接正确并上传。
- 记得下载示例!示例程序
1.UART调试
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\ESP32\UART\UART.ino
2.IIC调试
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\ESP32\IIC\IIC.ino
3.模式切换
- UART转IIC(运行后等待串口输出: UART To IIC:End of configuration. --UART转IIC配置结束)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\ESP32\UART_IIC\UART_IIC.ino
- IIC转UART(运行后等待串口输出: IIC To UART:End of configuration. --IIC转UART配置结束)
- 示例文件路径:
- ..\TFmini-Plus-LiDAR-Sensor-Demo\ESP32\IIC_UART\IIC_UART.ino
Arduino使用TFmini-Plus LiDAR Sensor模块的UART调试效果如下:
硬件连接
资料
程序
软件
FAQ
Q1:请问 TFmini-S 是否支持 3.3V 或其他电压供电?
您好,目前不支持。TFmini-S 标准供电 5V±0.1V。如您有其他需求,可联系销售人员咨询定制事宜。
Q2:请问 TFmini-S 工作一段时间后会发热,是坏了吗?
您好,这是产品正常工作状态。芯片与电路板持续工作后,轻微发热属于正常现象。
Q3:请问 TFmini-S 可以与 Arduino 或树莓派连接使用吗?
您好,可以。TFmini-S 使用串口通信协议,只要是支持串口通信的控制板即可通信使用。
Q4:请问 2 台 TFmini-S 同时工作会相互干扰吗?
您好,当 2 台 TFmini-S 同向摆放、光斑打在同一被测物上且重合的时候,不会互相干扰;当 2 台以上的 TFmini-S 同向摆放且光斑重合的时候,相互之间会有干扰;当 2 台 TFmini-S 面对面工作的时候,会产生严重的干扰。