文件夹名 | 说明 |
---|---|
UART | 设备处于UART模式,进行数据获取 |
IIC | 设备处于I2C模式,进行数据获取 |
Luna A05 Product Manual
TF-Luna A05 Datasheet
TF-Luna 是一款基于 ToF 原理的单点测距雷达,采用 850nm 红外光源,配合独特的光学,电学设计,可以实现稳定、精准、高灵敏的距离测量。
产品内置多种应用环境及目标的适配算法,并开放了多种可调节配 置和参数。可以保证在复杂环境中具有优良的测距性能,满足客户复杂的应用场景需求。
产品 | TF-Luna LiDAR Range Sensor | |
---|---|---|
产品性能 | 测量范围 | 0.2m~8m@90%反射率(室内0Klux) 0.2m~2.5m@10%反射率(室内0Klux) |
准确度 | ±6cm@(0.2m-3m) ±2%@(3m-8m) | |
距离分辨率 | 1cm | |
帧率 | 1~250Hz(可调) | |
抗环境光能力 | 70Klux | |
工作温度 | -10℃~60℃ | |
光学参数 | 光源 | VCSEL |
中心波长 | 850nm | |
人眼安全 | Class1(IEC60825) | |
视场角 | 2° | |
电学参数 | 供电电压 | 3.7V-5.2V |
平均电流 | ≤70mA | |
功耗 | ≤0.35W | |
峰值电流 | 150mA | |
通信电平 | LVTTL(3.3V) | |
通信接口 | UART/I2C | |
其他 | 尺寸 | 35mm*21.25mm*13.5mm(长*宽*高) |
壳体材料 | ABS/PC | |
储存温度 | -20℃~75℃ | |
重量 | <5g |
TF-Luna基于TOF(Time of Flight)即飞行时间原理。具体为产品周期性的向外发出近红外光调制波,调制波遇物体后反射。产品通过测量调制波往返相位差,得到飞行时间,再计算出产品与被测目标之间的相对距离,如下图
|
最大传输速率 | 400kbps |
---|---|
主从模式 | 从机模式 |
默认地址 | 0x10 |
地址范围 | 0x08~0x77 |
编号 | 功能 | 说明 |
+5V | 电源正极 | |
2 | RXD/SDA | 接收/数据 |
3 | TXD/SCL | 发送/时钟 |
4 | GND | 电源地 |
5 | 接口配置输入 | 接地:启动为I2C模式 |
6 | 复用输出 | 开关量模式功能:开关量输出 |
下文将介绍模块如何在Windows电脑、Raspberry Pi、Raspberry Pi Pico、Arduino、ESP32-S3等操作系统/开源硬件开发平台下使用。
操作系统/硬件平台 | 编程语言/软件 |
---|---|
Windows电脑 | 上位机软件 |
Raspberry Pi | Python、C(WiringPi) |
Raspberry Pi Pico | MicroPython |
Arduino | C(Arduino IDE) |
ESP32 | C(Arduino IDE) |
说明:
a) 如果『④ TIME LINE CHART』区没有数据,请检查连接和线序,TF-Luna上电成功,正面看发射透镜内会有微弱的红光。
b) 如果TF-Luna是Pixhawk格式输出,需先勾选『③ Pix Mode』,『④ TIME LINE CHART』区才会正常输出数据图像。勾选Pix Mode后,距离单位变为m。
c) 距离输出Dist值,跟据输出单位不同会有所区别,默认单位为cm。如果通过指令修改TF-Luna的距离单位为mm,上位机并不能区分,『④ TIME LINE CHART』单位仍为cm。例如,TF-Luna实际测量距离为1m,以mm为单位则输出1000,通过该上位机读取的数值为1000,但上位机上的单位不会变化,仍显示cm。
由于树莓派串口默认用于终端调试,如需使用串口,则需要修改树莓派设置。执行如下命令进入树莓派配置:
sudo raspi-config
选择Interfacing Options ->Serial ->no -> yes,关闭串口调试功能。
打开/boot/config.txt文件,找到如下配置语句使能串口,如果没有,可添加在文件最后面:
enable_uart=1
然后重启树莓派:
sudo reboot
打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 选择Interfacing Options -> I2C -> Yes 开启I2C接口
sudo reboot
分别执行以下指令进行WiringPi的安装
wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v
(可选)若安装时出现错误可执行以下命令安装所有缺失的依赖项和其他必要的软件包,然后重新执行安装命令
sudo apt --fix-broken install
运行“gpio -v”会出现2.52版本,如果没有出现说明安装出错
使用指令拷贝资源包到树莓派
wget https://www.waveshare.net/w/upload/8/8c/WiringPi-master.zip
(可选,使用过解压指令可跳过这一步)安装解压环境
sudo apt-get install unzip
进入文件位置,执行解压指令
unzip WiringPi-master.zip
进入文件目录(进到“WiringPi-master”文件夹中)
cd WiringPi-master/
执行sudo ./build
sudo ./build
(可选,出现错误参考第4点)如果执行./build不成功就执行“chmod +x ./build”再执行“sudo ./build”
chmod +x ./build
UART模式:(第五脚在上电前悬空或接3.3V,通信线连接GPIO14、GPIO15) IIC模式:(第五脚在上电前接地,通信线连接GPIO2、GPIO3)
将程序包下载到树莓派中
wget https://www.waveshare.net/w/upload/a/aa/TF-Luna-LiDAR-Range-Sensor-Demo.zip
解压文件,新建一个同名文件解压到相应文件夹中
unzip TF-Luna-LiDAR-Range-Sensor-Demo.zip -d ./TF-Luna-LiDAR-Range-Sensor-Demo
默认模式为UART,若进行模式切换,请记住当前模式
下文操作以运行"UART"例程为例。若使用I2C接口,请确保已连接和设置好对应接口,操作类似。
在终端中进入程序包路径“TF-Luna-LiDAR-Range-Sensor-Demo”
cd TF-Luna-LiDAR-Range-Sensor-Demo/
进入示例文件路径,文件夹下4个文件分别对应4个主控,下级文件夹中的文件分别为TF-Luna处于对应模式下的数据获取例程以及模式切换程序(例:使用UART模式获取数据)
cd Raspberry\ Pi/WiringPi/UART
使用"gcc -o main main.c -lwiringPi"编译程序
gcc -o main main.c -lwiringPi
执行main程序(此前需打开相关功能,在前面树莓派配置那)
sudo ./main
默认模式为UART,若进行模式切换,请记住当前模式
下文操作以运行"UART"例程为例。若使用I2C接口,请确保已连接和设置好对应接口,操作类似。
在终端中进入程序包路径“TF-Luna-LiDAR-Range-Sensor-Demo”
cd TF-Luna-LiDAR-Range-Sensor-Demo/
进入示例文件路径,文件夹下4个文件分别对应4个主控,下级文件夹中的文件分别为TF-Luna处于对应模式下的数据获取例程以及模式切换程序(例:使用UART模式获取数据)
cd Raspberry\ Pi/Python/UART
运行程序
python3 main.py
UART模式:(第五脚在上电前悬空或接3.3V,通信线连接GPIO8、GPIO9) IIC模式:(第五脚通电前先接地,通信线连接GPIO8、GPIO9)
1.安装Thonny(Thonny安装包)
2.按住Raspberry Pi Pico的“BOOTSEL”键,然后上电,上电后松开
3.电脑会出现一个新的盘符,将固件(Raspberry Pi Pico固件)解压,并将固件(后缀为uf2)拷贝至该磁盘(拷贝成功磁盘会自动消失)
4.开启Thonny,点击右下方的“Python x.x.x”,选择“Configure interpreter”
5.在弹出窗口中选择“解释器”->解释器选择“MicroPython(Raspbeery Pi Pico)”->端口选择“自动探测端口”
6.点击暂停,Shell窗口出现“MicroPython v1.20.0-50-g786013d46 on 2023-05-04; Raspberry Pi Pico with RP2040 Type "help()" for more information.”即为连接成功
以下为第4点与第5点操作流程:
连接成功效果如下:
默认模式为UART,若进行模式切换,请记住当前模式。
下文操作以运行"UART"例程为例。若使用I2C接口,请确保已连接和设置好对应接口,操作类似。
1.打开下载的示例程序(示例程序)
2.依此进入“TF-Luna-LiDAR-Range-Sensor-Demo”->“Raspberry Pi Pico”
3.“Raspberry Pi Pico”文件夹下依次有2个文件,分别代表各自功能
4.进入“UART”文件夹,使用Thonny打开UART.py(示例为在UART模式下获取数据)
5.在Thonny中点击运行
调试效果如下:
UART模式:(第五脚通电前悬空或接3.3V,信号线连接D0、D1) IIC模式:(第五脚通电前先接地,信号线连接SDA、SCL)
默认模式为UART,若进行模式切换,请记住当前模式
下文操作以运行"UART"例程为例。若使用I2C接口,请确保已连接和设置好对应接口,操作类似。
1.安装Arduino(Arduino安装包)
2.打开下载的示例程序(示例程序)
3.依此进入“TF-Luna-LiDAR-Range-Sensor-Demo”->“Arduino”
3.“Arduino”文件夹下依次有4个文件,分别代表各自功能
4.进入“UART”文件夹,使用Arduino IDE打开UART.ino(示例为在UART模式下获取数据)
5.连接Arduino板子,在Arduino IDE 上选择对应的开发板及端口
6.点击验证,再点击上传
7.处于UART模式时等待上传成功后再将设备连接Arduino板子(每次上传前要保证Arduino的D0和D1没有接入设备)
本示例使用ESP32-S3-DEV-KIT-N8R8开发板
UART模式:(第五脚通电前悬空或接3.3V,信号线连接GPIO16、GPIO17) IIC模式:(第五脚通电前先接地,信号线连接GPIO16、GPIO17)
默认模式为UART,若进行模式切换,请记住当前模式
下文操作以运行"UART"例程为例。若使用I2C接口,请确保已连接和设置好对应接口,操作类似。
1.打开下载的示例程序(示例程序)
2.依此进入“TF-Luna-LiDAR-Range-Sensor-Demo”->“ESP32”
3.“ESP32”文件夹下依次有2个文件,分别代表各自功能
4.进入“UART”文件夹,使用Arduino IDE打开UART.ino(示例为在UART模式下获取数据)
5.连接ESP32板子,在Arduino IDE 上选择对应的开发板及端口
6.点击验证,再点击上传