机器之心报道
机器之心编辑部
转载自:机器之心
从零造一个激光雷达,需要多久?
激光雷达(LiDAR)是激光探测及测距系统的简称,目前广泛应用在无人驾驶和扫地机器人等领域。这种广泛的应用一方面得益于激光雷达的性能提升,一方面也得益于其成本的下降。
根据扫描方式,激光雷达可分为 MEMS 型、Flash 型、相控阵型、机械旋转型;根据线数,可分为单线型和多线型:
话说回来,有没有可能自制一个激光雷达?B 站的一位硬核 UP 主「不想宅的技术宅」还真就把这个小目标实现了。
UP 主用了大半年的业余时间,用一个激光测距传感器整出了一个单线机械旋转式激光雷达,总共包括硬件设计、结构设计、FPGA 开发和 3D 打印几个步骤。对于 UP 主来说,这不算是新的挑战,只能算是「把以前学过的东西复习了一遍」:
虽然 UP 主很谦虚,但很多人播放完视频之后,只能表示「不懂,但受到震撼」:
做一个激光雷达,需要哪些基本部件?
UP 主选用了一款 FPGA 开发板,主芯片为 Xilinx ZYNQ7000,板上搭载了一个最高可输出 1080p60 帧视频的 HDMI 接口、32 个 GPIO(通用输入输出接口)等其他外设。在这块开发板上,将要完成雷达数据的采集、运算和显示。
此外还有一个直流减速机,额定电压为 12V,减速比为 1:30,最大输出转速为 300 转每分钟,电机尾部安装了 500 线的光电编码器,通过光电编码器可以获知输出轴的转动角度。
最后,还有一个激光测距传感器,测距精度为 1cm,量程为 12m,每秒钟可以测量 1000 次,输出接口为串口。
这些就是自制激光雷达所需要的基本部件,然后就是结构设计的问题了。
结构设计
UP 主表示,激光雷达在工作时,探头需要连续旋转,因此探头和底座的信号传输无法用导线连接,否则会引发缠绕问题,他通过导电滑环解决了这个问题。导电滑环内部是一组电刷,可以解决信号线在旋转情况下的缠绕问题:
如此,激光雷达就设计好了:
整个激光雷达分为底座和探头,探头和底座通过旋转轴进行连接,激光测距传感器通过螺丝固定在探头基座上。
探头基座内部还固定有转子 PCB,底座部分固定有导电滑环、电机和定子 PCB。
在实际装配时,电机输出轴和导电滑环和旋转中心因为误差关系大概率不会处于同一轴心上,这里使用了一个弹性连轴器来补偿轴向偏差:
探头和底座之间设计了一对红外对管,用来确定探头转动的初始位置:
至此,结构设计就完成了。随后将设计好的结构件在 3D 打印软件中添加支撑,然后切片,最后通过 3D 打印机打印出来。打印好的探头基座、探头盖和底座就是这样:
硬件电路设计
整体框架如图所示,包含定子 PCB 和转子 PCB:
下图是整个电源以及隔离设计的框图,整个电机控制部分和其他电路没有实际的连接,电机在工作时不会干扰其他电路:
再之后是 PCB 设计:
一番装配之后(此处省略一万个步骤),激光雷达就做好了:
激光雷达和 FGPA 之间通过排线进行通信。在软件设计上,分为两部分:PS 侧的嵌入式开发,以及 PL 侧的 FPGA 开发,相比之下,PL 侧的开发显得比较复杂。整体框图如下:
而主要的难度恰恰在于 FPGA 部分。UP 主表示:「要把雷达数据叠加在视频数据流上,费了我不少脑细胞。」
最后,看下实际运行效果
受限于激光测距传感器测量频率,探头转动一圈采集 500 个点的数据,所以激光雷达的扫描频率只能做到 2Hz 每秒。
为了视觉效果,UP 主加上了雷达扫描线,最终实现的效果还是不错的:
目前,UP 主已经把视频中激光雷达的结构和 pcb 设计文件上传到 Github 平台,想要做一个玩玩的小伙伴可以去下载。
项目传送门:https://github.com/Messi-xiong/LiDAR.git
本文仅做学术分享,如有侵权,请联系删文。
3D视觉精品课程推荐:
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。
一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~