基于MCU的CMOS单线激光测距系统设计与实现

known 发布于 2025-08-25 阅读(489)

摘" 要:利用基于FPGA的线阵传感器进行三角测距,存在系统复杂、结构尺寸大、价格贵、广角小等问题。针对上述问题,文章以MCU为系统主控,驱动面阵传感器以及线激光,完成CMOS图像数据采集。根据激光三角测距,对系统参数优化、系统标定等关键技术模块进行设计,完成测距的功能验证,可做到30~170 mm的毫米级精度距离测量,并用UART输出点云深度信息,帧率可达25帧/秒。实验结果表明,所设计的三角激光测距系统具有毫米级精度、结构尺寸小、大广角等优点,可运用于家用扫地机的前方障碍物检测。

关键词:三角测距;面阵CMOS;线激光;MCU;数据采集

中图分类号:TN915.8;TM732" 文献标识码:A" 文章编号:2096-4706(2024)21-0001-06

Design and Implementation of CMOS Single-line Laser Ranging System Based on MCU

XU Shixiong1, YUN Zhenhuan1, CAO Qiuting2, WANG Chao1

(1.Hangzhou Hikvision Digital Technology Co., Ltd., Hangzhou" 310051, China;

2.Zhejiang College of Construction, Hangzhou" 311231, China)

Abstract: Using linear array sensor based on FPGA for the range of triangle, there are problems such as complex systems, large structure sizes, high prices, small wide angles, and so on. In view of the above problems, this paper takes MCU as the main control of the system and drives the area array sensor and the line laser to complete the CMOS image data acquisition. According to the laser range of triangle, system parameter optimization, system calibration and other key technical modules are designed, and the functional verification of ranging is completed. The millimeter-level precision distance measurement of 30~170 mm can be achieved, and the point cloud depth information is output by UART, and the frame rate can reach 25 frames per second. The experimental results show that the designed triangular laser ranging system has millimeter-level precision, small structure size, large wide angle, and other advantages, which can be applied to the front obstacle detection of household sweepers.

Keywords: range of triangle; area array CMOS; line laser; MCU; data acquisition

0" 引" 言

随着我国经济的快速发展,智能扫地机产品成为群众家庭卫生清洁的主要工具之一,而扫地机器人产品的移动避障识别是评价机器人性能的重要指标,现有的红外避障等方式还存在视场角不足等许多问题。

光电结合技术的迅猛发展,正在引导一场深刻的信息社会变革。激光测距技术作为一种先进、新兴的信息技术,具有广阔的发展潜力。三角测距基于相似三角形的几何光学原理进行距离测量,适用于中短距离测量。激光打到不同距离的障碍物,在CMOS sensor上的成像位置不同,从而来计算障碍物的距离信息。斜射式激光三角法结构小巧紧凑,测量精度高,性能稳定。倪沛东等基于CPLD的线阵CCD三角测距系统设计,存在方案成本高、体积大等问题[1]。CMOS sensor作为光电转换传感器,具有灵敏度高、动态范围大、光谱响应宽、体积小、功耗低、分辨率高等特点。本文设计了一种基于MCU的CMOS sensor单线激光测距系统,此方案成本低、体积小、视野大,可以检测到扫地机前方170 mm范围,并且能检测机身宽度范围内的障碍物情况,适合安装在扫地机产品,作为前置避障检测。

1" 系统方案设计

扫地机主机为圆形,主机直径为D(mm),单线激光测距系统安装在主机前方中心位置,离地安装高度为h(mm),一字线激光发射到地面的宽度为W(mm)。为了满足扫地机移动过程中对机器前方障碍物的全部检测,减少碰撞,需要对机器运动范围内进行全部单线激光测距[2],也就是要求的检测区域宽度是一字线激光发射到地面的宽度W大于等于扫地机主机直径D,即W≥D。

扫地机的线激光测距检测示意如图1所示,这就要求一字线激光发射的FOV、光学镜头FOV、光电传感器CMOS sensor的FOV三者匹配。MCU选择支持DVP图像采集的国民N32G4FR,M4内核,144 kB

RAM,支持DMA、UART。面阵CMOS sensor选择VGA分辨率的SC031,其pix size为3.744 μm ×3.744 μm。镜头选择焦距f为1 mm,镜头水平FOV为113°,垂直FOV为90°[3]。面阵CMOS sensor输出曝光控制信号控制一字线激光的开关亮灭,MCU DVP模块采集面阵图像,分辨率是640×480,并用DMA搬运到内存RAM中,在MCU CPU M4内核下进行三角测距计算,得到点云深度信息,其中水平深度点数是160个点,最后用MCU UART发送点云数据到扫地机SOC,用于避障控制,点云的帧率达到25帧/秒[4]。

市面上扫地机主体宽度D比较大的为386 mm,单线激光测距系统安装在主机前方中心位置,离地安装高度h为53.3 mm,一字线激光向下打到地面,也就是激光入射角θ为17.5°。考虑到小型号,同时测距满足前方170 mm,面阵CMOS sensor SC031的光学中心与线激光光源中心距离d为15 mm,并且线激光在上,CMOS sensor在下,从而构成斜射三角测距系统[5]。

图2为线激光发射光学检测示意图,安装高度h为OO为53.3 mm,激光入射角θ为17.5°,激光发射FOV/2角度为α。一字线激光打到地面时,与O点距离为OA,线激光打到地的宽度为W。

根据直角三角形△OOA的关系,可得:

OA = OO×tan(90-θ) (1)

经式(1)计算可得OA = 53.3×tan(90°-17.5°) = 169 mm。

根据直角三角形△OOA的关系,可得:

OA = OO×sin(θ) (2)

经式(2)计算可得OA = 53.3/sin(17.5°) = 177.6 mm。

一字线激光发射的角度FOV为2α,AP为线激光打到地面宽度W的一半,最小为D/2,即AP = W/2 = D/2 = 386/2 = 193 mm。根据直角三角形△OAP的关系,可得:

tan(α) = PA/OA

经式(3)计算可得α = 47.3°,即一字线激光发射的角度FOV为94.6°,考虑到一字线激光器件的成熟稳定性,边缘激光亮度一致性,系统选择使用波长为808 nm、FOV为120°的常州纵慧VCSEL光源的线激光模块[6]。

2" 硬件系统设计

本文所设计的硬件电路主要包括MCU对面阵CMOS senor传感器图像进行DVP采集的控制电路、一字线激光的电流驱动电路、面阵CMOS senor产生的驱动脉冲控制线激光开关控制电路等。硬件系统框图如图3所示。

如图3所示,在硬件系统中使用线性稳压器为MCU芯片提供3.3 V供电电压,面阵CMOS sensor为MCU芯片提供2.8 V供电电压,面阵CMOS sensor 2.8 V电平与MCU IO 3.3 V电平均属于一个CMOS电平级别,无须电平转换电路。MCU使用内置8 MHz的无源RC晶振作为MCU系统的时钟源。电流驱动电路,电流越大,线激光开器件亮度越亮,面阵CMOS sensor芯片输出一个LED strobe脉冲信号作为开关控制一字线激光的开关,来照射目标区域[7]。MCU通过TIM模块输出MCLK时钟信号给面阵CMOS sensor作为工作时钟源,通过I2C模块对其进行工作模式配置,如曝光时间、曝光增益、帧率、分辨率等。面阵CMOS sensor对外部环境图像进行光电转换,通过DVP输出到MCU的DVP图像采集模块,通过MCU DMA模块快速搬到目标RAM区域进行图像三角测距计算,输出点云信息,并通过MCU UART输出给扫地机的SOC,作为避障检测处理。

2.1" 电流驱动调节电路模块

面阵CMOS sensor芯片输出一个LED strobe脉冲信号作为开关控制三极管Q2导通关闭,控制电流源的开关,从而控制三极管Q3处的一字线激光负载的亮灭控制,如图4所示。

三极管Q3工作在放大区,设置合理的电阻数值,可输出对应大小的电流源,该驱动电路硬件成本低,符合消费电子的成本控制

2.2" 面阵CMOS senor传感器图像采集电路

MCU N32G4FR与面阵CMOS senor SC031之间采取直接控制。senor SC031是DVP数据输出接口,采用并行输出方式,数据位宽有8 bit,是CMOS电平信号。本文系统中具体连接关系如表1所示[8]。

SCL、SDA是MCU I2C用来读写sensor的寄存器,配置sensor的工作模式。MCLK是MCU芯片输出给驱动sensor的工作时钟,否则摄像头不能正常工作,通信也会连接不上。DATA总线的D0-D7是像素数据,位宽8 bit。HSYNC是horizonal synchronization,行同步信号,指一行读取结束到下行读取开始的时间间隔,该时间包含dumppy pixel读取时间和从行尾切换到下一行的行首的时间[9]。VSYNC是vertical synchronization,帧同步信号,即一帧读取结束到下帧读取开始的时间间隔,该时间包含dumppy line读取时间,从帧尾切换到下一帧的帧首和自定义设置的时间。PCLK是pixel clock,像素时钟,每个时钟对应一个像素数据,每个PCLK周期,D0-D7会同时输出一个bit,共8 bit表示一个像素点。曝光时间以行长为单位。

3" 软件系统设计

N32G4FR主控制器MCU在启动后先进行初始化外设模块,如I2C模块、DVP模块、UART模块,并通过I2C模块对CMOS senor SC031传感器进行初始化配置,配置帧率、分辨率、曝光参数等,MCU CPU获得sensor传输来的640×240分辨率的亮度Y数据,通过灰度质心算法进行光心数据坐标原点。根据镜头畸变矫正参数系数进行去畸变,并对图像每列数据进行比较,获得当前列的最大亮度数值以及获得图像对应像素Y坐标,从而获得三角测距该位置的对应坐标,考虑到数据有效性,对水平方向每4点数据取一点处理即可,也就是水平方向160个点的深度信息即可满足标准,按水平方向FOV120°计算,160个点,角度分辨率为0.75°,完全符合扫地机场景的避障需求[10]。

在操作系统选取时,选择了轻量级,并且是MIT协议的V10.3.1版本的FreeRTOS实时操作系统。

3.1" MCU DVP图像采集模块

以面阵CMOS sensor输出一帧m×n的图像数据,MCU的获取图像办法如图5所示。MCU的DVP模块根据面阵CMOS sensor输出的帧同步信号VSYNC下降沿,开始进行一个新图像数据帧的数据读取,图像的每一行数据对应HSYNC为高电平,所以再每个HSYNC上升沿开启每一行图像数据的获取。MCU DVP根据PCLK上升沿采集D[7:0]数据总线数据,如m为640,n为240的图像分辨率数据,则对应获取640列数据,240行数据,则完成一帧数据采集[11]。

当DVP图像采集模块完成一帧m×n图像数据采集后,通知MCU CPU,执行DMA快速搬运数据到单独的RAM中进行后续处理控制。

3.2" 自动曝光控制模块

自动曝光控制模块如图6所示,主要涉及图像亮度信息分析获取、目标亮度设置、曝光调节等几个步骤,其中曝光调节优先增益调节,之后才是时间调节。考虑到信号噪声,面阵CMOS sensor的数字增益一直保持1,模拟增益默认是1,最大可以调到1.8。曝光时间配置寄存器是行曝光的时间为单位,分别可用的1、2、3、4、6、12、14行曝光,曝光行数越多,面阵CMOS sensor的LED strobe脉冲信号宽度越大。尤其是遇到黑色等材料的低反射率障碍物材质,一字线激光打开时间越长,系统功耗越高[12]。当前图像整体亮度未达到目标亮度数值时,需要通过I2C配置面阵CMOS sensor增加增益,增加曝光时间来提升图像亮度。需要注意的是,并不是面阵CMOS sensor第N帧图像输出过程中,对其写入配置后立即生效,而是N+1帧的时间后配置才生效,N+2帧才输出N帧配置后的图像亮度。

3.3" 点云深度信息计算模块

MCU N32G4FR获取面阵CMOS senor SC031的单帧图像信息,并根据镜头畸变参数进行去畸变,对去畸变后的图像按列进行比较超过亮度阈值,如存在多行像素位置超过阈值,则取中心行位置。单帧图像分辨率是m×n,按列为单位进行比较获取超过亮度阈值,并取中心的像素位置作为y坐标,记为p(i,y),i = 0,1,…,m-1,0≤y≤n-1。点云深度信息处理流程如图7所示。

按照三角激光测距原理逐个计算每个水平角度方向上的深度距离信息,从而输出单帧点云数据。MCU通过UART模块,借助DMA发送给扫地机的SOC避障处理模块[13],SOC解析数据执行避障动作[14]。

4" 测量精确度实验

4.1" 精度测试

使用本系统对不同固定距离进行测量,不同距离测试3个数据,距离范围为30~170 mm。30~50 mm,步进10 mm;50~170 mm,步进30 mm,直到170 mm。使用1#模组测距系统,不同距离的重复测试结果如表2所示。

根据表格2的精度测试数据,系统的重复性测量误差±5 mm内,说明不同标准距离内的测距结果具有很好的稳定性。

4.2" 准度测试

使用本系统对不同固定距离的进行测量,一个距离不同FOV处测试3个数据,FOV分辨是-55°、0°、+55°,距离范围为30~170 mm,30~50 mm步进10 mm;50~170 mm,步进30 mm,直到170 mm。使用2#模组测距系统的不同距离的不同FOV下准度测试结果如表3所示。

根据表3中不同FOV下的准度测试数据,系统的准度测量误差±5 mm内,并且不同标准距离内的不同FOV下的,测距结果具有很好的稳定性,说明当前所设计的测距系统具备小尺寸下的大FOV的测距准度符合设计目标要求[15]。

5" 结" 论

本文设计了一种低成本的基于MCU处理器芯片的面阵CMOS传感器单线激光测试系统,采用三角测距技术,精度可达到±5 mm,测距范围为30~170 mm,FOV达到110°。单片机相比FPGA、CPLD成本低、功耗小、PCBA尺寸更小。同时面阵CMOS sensor成本少,综合使得系统尺寸小、精度高、成本低、功耗小,系统信息交互稳定,并且测量较为准确,为扫地机避障近距离测距下的毫米级精度测距这一需求,提供了一种新的低成本可靠解决方案。

参考文献:

[1] 倪沛东,张丕状,石浩男,等.基于CPLD的线阵CCD三角测距系统设计 [J].单片机与嵌入式系统应用,2023,23(1):71-75.

[2] 孟蔓菁,邹彤,刘海波.基于FPGA的线阵CCD激光采集系统设计 [J].大地测量与地球动力学,2019,39(10):1096-1100.

[3] 武泽键,王会峰,丁光洲,等.一种利用功率自适应的激光三角测距精度提高技术研究[J].激光杂志,2021,42(9):50-56.

[4] 滕培培,苏志祁,梁征,等.基于激光三角测距的图像处理技术在翻车机的实际应用 [J].柳钢科技,2020(2):17-18.

[5] 刘旭.基于机器人线激光扫描的叶片三维测量方法研究 [D].哈尔滨:哈尔滨工业大学,2020.

[6] 胡永建,孙成芹,韩昊辰,等.基于激光测距仪和开源硬件的井深测量系统设计 [J].机电工程技术,2018,47(4):1-3.

[7] LEE J J,NAM G G,LEE B K,et al. Measurement of 3D Spreader Position Information using the CCD Cameras and a Laser Distance Measuring Unit [J].Restorative Dentistry amp; Endodontics,2004,28(4):323-331.

[8] MUKHTAR H,KHAN M U G.CMOT: A cross-modality transformer for RGB-D fusion in person re-identification with online learning capabilities [J/OL].Knowledge-based systems,2024,283[2024-02-19].https://doi.org/10.1016/j.knosys.2023.111155.

[9] 刘敬伟,黄运龙,陈志彬,等.一种基于三角法测距的激光雷达及其精度提高方法:CN202210242923.2 [P].2022-05-24.

[10] 樊鹏辉,杨光永,晏婷,等.激光三角法测距传感器结构设计与参数优化的研究 [J].计算机与数字工程,2022,50(9):2074-2078.

[11] 邸志刚,沈萌萌,贾春荣,等.激光测距技术研究现状及发展趋势 [J].激光杂志,2023,44(8):1-8.

[12] 李霞,张绍林,逄格炜.基于距离测度的三角模糊交互多属性决策方法 [J].西华大学学报:自然科学版,2022,41(1):84-89+110.

[13] 刘宇承,王春泽,宋有建,等.适用于高精度激光测距的光学系统设计 [J].应用光学,2022,43(2):191-197.

[14] 胡宁波,王晗,张平,等.嵌入式高精度激光测距系统设计 [J].组合机床与自动化加工技术,2022(1):89-93.

[15] 李振国,王林,韦征,等.三维激光扫描仪的精度评价分析 [J].浙江工业大学学报,2023,51(1):27-31+71.

作者简介:徐石雄(1987—),男,汉族,浙江杭州人,中级工程师,硕士,研究方向:ARM以及嵌入式系统;员振寰(1995—),男,汉族,山西临汾人,初级工程师,本科,研究方向:嵌入式系统安全;曹秋挺(1987—),女,汉族,安徽安庆人,讲师,硕士,研究方向:网络通信等教学相关;王超(1995—),男,汉族,浙江杭州人,初级工程师,本科,研究方向:ARM以及嵌入式系统。

标签:  激光 

免责声明

本文来自网络,不代表本站立场。如有不愿意被转载的情况,请联系我们。

iidomino cuppor