IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> Benewake TFmini-S |TFmimi Plus |TFluna |TF02-Pro |TF03 串口版本雷达基于Raspberry PICO MicroPython的运用 -> 正文阅读

[嵌入式]Benewake TFmini-S |TFmimi Plus |TFluna |TF02-Pro |TF03 串口版本雷达基于Raspberry PICO MicroPython的运用

前言

本文介绍了如何将 Benewake 单点 LiDAR 与 Raspberry Pi Pico 微控制器通过MicroPython连接起来。 运用本文档前提:

最终用户手上有 Pico 微控制器和任何单点激光雷达(Luna、TFmini-Plus、mini-S、TF02-pro、TF03-UART)
LiDAR接口模式为TTL(默认标品协议)

关于Pico准备工作请参考
2021-09-15 Raspberry Pi Pico 初上手

本文档例程编译经使用Windows 10 64位系统
PICO产品介绍请参考上方链接

PICO与Benewake Lidar的硬件连接

根据 Pico 的规格,它有两个 UART 端口,这些端口可以指向可对应的引脚。 如(GP0,GP1),(GP4,GP5),(GP8,GP9),(GP12,GP13),(GP16,GP17)都适合UART通讯。 在我们的代码中,我们使用了GPIO-8和9。
需要注意的是,PICO电压供应只有一个引脚,也是3.3V,而Benewake LiDAR的额定电压是5V。 如果电压不是5V,精度会受到影响,误差会超过额定误差,在某些情况下,误差是非线性的,随着距离的增加而增加。 它可能达到40厘米。 因此建议为 LiDAR 使用单独的 5V 电源。
在这里插入图片描述

以上图片的线缆颜色并非匹配目前所有的Benewake雷达,建议接线前详细参考对应的雷达使用说明书

雷达协议说明

关于北醒雷达的协议,可以参考对应雷达的使用说明书
串口协议在这里插入图片描述
雷达输出协议解析
在这里插入图片描述

例程源码

from machine import UART, Pin
import time

uart1 = UART(1, baudrate=115200, tx=Pin(8), rx=Pin(9))    #定义雷达接收接口
uart0 = UART(0, baudrate=115200, tx=Pin(0), rx=Pin(1))    #定义结果打印输出

def getLidarData(UART1,UART0):
    temp = bytes()
    if UART1.any() > 0:
        temp += UART1.read(9)
        if temp[0] == 0x59 and temp[1] == 0x59 :
            distance   = temp[2] + temp[3] * 256            #获取距离值
            strengh    = temp[4] + temp[5] * 256            #获取信号强度值
            temperature= (temp[6] + temp[7]* 256)/8-256     #获取芯片温度值
            #UART0.write(bytes(temp[0],temp[1],temp[2],temp[3],temp[4],temp[5],temp[6],temp[7],temp[8]))
            UART0.write(temp)
            #UART0.write('\r\n')
            print("distance =%5dcm,strengh = %5d,temperature = %5d℃"%(distance,strengh,temperature))
while True:
    getLidarData(uart1,uart0)

结果输出

USB接口输出
在这里插入图片描述

串口0雷达原数据输出
在这里插入图片描述

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-09-24 10:44:32  更:2021-09-24 10:45:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 2:48:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码