真正的全栈工程师!B站硬核UP主自己造了一个激光雷达( 二 )


文章图片
探头和底座之间设计了一对红外对管 , 用来确定探头转动的初始位置:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
至此 , 结构设计就完成了 。 随后将设计好的结构件在3D打印软件中添加支撑 , 然后切片 , 最后通过3D打印机打印出来 。 打印好的探头基座、探头盖和底座就是这样:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
硬件电路设计
整体框架如图所示 , 包含定子PCB和转子PCB:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
下图是整个电源以及隔离设计的框图 , 整个电机控制部分和其他电路没有实际的连接 , 电机在工作时不会干扰其他电路:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
再之后是PCB设计:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
一番装配之后(此处省略一万个步骤) , 激光雷达就做好了:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
激光雷达和FGPA之间通过排线进行通信 。 在软件设计上 , 分为两部分:PS侧的嵌入式开发 , 以及PL侧的FPGA开发 , 相比之下 , PL侧的开发显得比较复杂 。 整体框图如下:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
而主要的难度恰恰在于FPGA部分 。 UP主表示:「要把雷达数据叠加在视频数据流上 , 费了我不少脑细胞 。 」
最后 , 看下实际运行效果
受限于激光测距传感器测量频率 , 探头转动一圈采集500个点的数据 , 所以激光雷达的扫描频率只能做到2Hz每秒 。
为了视觉效果 , UP主加上了雷达扫描线 , 最终实现的效果还是不错的:
真正的全栈工程师!B站硬核UP主自己造了一个激光雷达
文章图片
目前 , UP主已经把视频中激光雷达的结构和pcb设计文件上传到Github平台 , 想要做一个玩玩的小伙伴可以去下载 。
项目传送门:https://github.com/Messi-xiong/LiDAR.git