欢迎来到专业的新思文库网平台! 工作计划 工作总结 心得体会 事迹材料 述职报告 疫情防控 思想汇报 党课下载
当前位置:首页 > 范文大全 > 公文范文 > 正文

基于STM32的多旋翼无人机超声波测距系统

时间:2022-12-13 20:25:06 来源:网友投稿

摘 要:针对多旋翼无人机对所搭载外围设备体积小、重量轻、可靠性高的技术要求,设计了一款高精度、轻量型和抗干扰能力强的超声波测距系统,并介绍了系统中的超声波发射电路、接收电路和放大滤波电路。该系统利用STM32自带的ADC采样功能确定渡越时间,并简化了硬件电路;与传统超声波测距模块采用固定式输出频率相比,该系统的数据输出频率可根据测距范围实时更新。同时针对户外使用的要求,引入了温度补偿技术。经户外环境下的测试实验表明,此超声波测距系统可以满足多旋翼无人机产品的技术要求。

关键词:STM32单片机;超声波传感器;ADC采样法;更新速率

中图分类号:TP274.53 文献标识码:A 文章编号:2095-1302(2016)02-00-04

0 引 言

随着科学技术的发展,各式各样的飞行器已逐渐进入实用阶段。多旋翼无人机因其轻巧、灵活的机身被广泛用于执行地理测绘、航拍等工作。由于多旋翼无人机本身有限的负载能力和体积限制,导致其对外围机载模块要求极为苛刻[1-3];多旋翼无人机在低速飞行时,旋翼荷载和机体惯性都比较小,十分容易受气流干扰,这就需要无人机的控制系统更加灵活,外围机载模块与主控制系统在数据通信方面要更实时、更加精确[4]。超声波测距模块作为多旋翼无人机系统主要机载模块之一,为多旋翼无人机系统实现定位的准确性、避障的智能化以及在定位模式下航拍效果的稳定性起到了很好的保障作用;相比高端激光雷达测距模块需要高精度的特殊硬件做支撑,且成本较高的特点,超声波测距在控制方法、性价比和安全性等方面都占有明显优势;但超声波测距模块用在多旋翼无人机上会出现因桨叶运动对超声波探头接收信号干扰比较严重的现象。目前多旋翼无人机系统所选用的超声波测距模块采用8位或者16位单片机作为主控制器[5],因为主控芯片性能的限制,功能扩展性差,导致数据传输的实时性差、精度低;加之采用收发分体式探头且对回波信号的处理采用硬件检波法,导致整个模块的体积偏大。针对以上缺点,本研究设计了一款基于STM32系列单片机的超声波测距模块,选用收发一体式探头,采用软件检波法和滤波法,旨在降低硬件电路重量和尺寸,解决数据输出频率较低且固定的问题,提高整个系统的灵敏度、实时性和抗干扰能力。

1 超声波测距系统

本研究设计的超声波测距系统采用ST公司最先进的Cortex-M4内核的32位高性能微控制STM32F302K8U6作为主控制器,CPU主频72 MHz,但芯片尺寸仅为5mm×5mm,对比选用CPU主频只有35 MHz,但芯片尺寸却为12 mm×12mm的16位单片机作为主控制器的超声波测距模块,此款芯片在处理速度和尺寸上明显占优势;相比收发分体双探头的超声波测距模块体积11.5cm×8.0cm×5cm[6],本设计采用收发一体式探头,整个模块体积仅为2.6cm×2.71cm×5 cm;除了采用硬件滤波处理之外,还结合软件滤波处理算法,有效降低无人机螺旋桨在高速运动过程中产生的高频信号对超声波探头接收信号的影响[7]。超声波测距系统总框图如图1所示。

整个超声波测距系统的原理:首先主控制器STM32F302K8U6负责发送8个40 kHz的方波,经发射电路驱动超声波传感器40C16TR-1激励出超声波,待接收到回波信号后,经过LM324运放电路实现放大、整形和滤波,最终信号进入STM32的ADC采样通道进行处理,计算距离信息。

多数超声波测距系统对外通信采用串口通信,本设计中超声波测距系统与无人机主控制单元的通信采用应答式CAN通信方式。当无人机主控单元需要超声波测距信息时,向本系统发送数据帧,本系统再将测距信息应答给主控单元,从而避免频繁向主控单元发送测距信息增加系统的额外负担。同时,CAN在通信速率、错误检测机制以及抗干扰能力上都明显优于串口通信,保证了主控单元对数据实时性和稳定性的要求[8]。

2 超声波测距系统功能控制模块设计

2.1 超声波测距系统发射和接收电路

系统的发射电路主要由STM32的高级定时器TIM1输出两路幅值为3.3 V、频率为40 kHz的互补型PWM信号,两路信号分别为IO-1 和IO-2。超声波测距系统发射电路原理图如图2所示。

相比于仅采用单三极管和单MOS管作为超声波发射电路的测距系统[9],本设计增添了MOS管Q3,其作用是保证M点处能够产生一个和IO-1同频率而幅值为VCC的周期信号。若不引入IO-2,会导致M点低电平不完全为0,如图3(a)所示;引入IO-2后,M点波形如图3(b)所示。这样从发射端保证了信号的不失真性;经中轴T1放大后,最终通过超声波传感器U1将超声波信号发射出去。

2.2 超声波放大滤波电路

超声波传感器处于接收回波信号状态时,由于回波信号在传播过程中会有一定的损耗而变得很微弱,所以在进入单片机之前需要进行放大有效信号,滤除噪声和干扰,以达到最大的信噪比。超声波测距系统回波处理电路如图4所示。

值得注意的是,本设计采用二极管组将放大后的超声波交流信号幅度限制在二极管导通压降之内,减少了尖峰脉冲对系统的影响,这样经最后一级反向放大后的信号就会变得相对平滑。

3 超声波测距系统软件设计

3.1 ADC采样法确定渡越时间

一般超声波测距电路采用外接比较电路检测回波信号,本设计采用软件法检测回波信号确定渡越时间。软件法检测回波信号工作原理:利用STM32自带的ADC采样功能,首先采用递推平均滤波法将采集回来的信号进行滤波处理,再与设定好的软件阈值比较;如果ADC采集的电压值连续多次大于所设阈值,即可判断出第一个回波所在位置,从而能够确定此时对应的AD采样点N。如果已知AD采集一个点所需时间t,便能确定渡越时间T=N×t。

3.2 超声波测距系统软件流程设计

以超声波传播速度340 m/s,测距范围5 m为例,理论上需要30 ms实现一次超声波的发射和接收,所以超声波测距系统相当于每隔30 ms传输一次实时测距信息给多旋翼无人机系统的主控端。若将ADC采集一个数据的时间配置为16μs,则一个周期内理论上需要采集点数n=30 ms/16 μs≈1875。不同的测距范围与各参数配置关系见表1所列。

整个超声波测距系统采用模块化程序设计,包括CAN通信配置函数、端口配置函数、定时器配置函数、ADC配置函数、中断处理函数、温度采集函数等。系统开始进行CAN通信的初始化配置,然后根据无人机主控单元发送的ID信息判断此时要求的测距范围,根据不同的测距范围进行相应的初始化设置。定时器2主要控制对外输出频率,进入定时器2中断后先调用温度处理子函数[10],再开启定时器1和定时器3;定时器1主要负责发送超声波,定时器3用于控制ADC采样子函数并计算渡越时间。当检测到回波信号后,调用距离计算子函数,计算结果通过CAN通信方式将数据再传至无人机主控单元。

针对ADC采样点数较多的特点,使用DMA传输方式将ADC采集的数据直接经总线传递至内存单元,此过程不需要CPU参与;而如果采用非DMA方式,不仅需要CPU全程控制数据传送,还会出现因并行设备过多CPU处理不及时导致数据丢失的现象。超声波测距系统程序流程图如图5所示。

4 超声波测距系统实验结果及分析

4.1 测距效果对比分析

为了验证系统的测距效果,选择在户外进行实际测试。户外温度32 ℃时,超声波在空气中的传播速度为350.28 m/s,选择正对350 cm×400 cm的墙面进行测试,实验测结果见表2~表5所列。

在表2和表3中,D1是用专业测距仪Fluke414D测量的距离,D2是使用目前常用的HC-SR04超声波模块测量的数据,D3是本设计的超声波测距模块所测数据。实验过程在将三者处于同一对地高度的前提下正对墙面测试。

由表2可知,相比 HC-SR04超声波测距模块,本设计的超声波测距模块在稳定性和精度上都具有明显优势。从表3中可以发现,HC-SR04超声波测距量程仅有4.5 m,当测距范围超过其量程之后,并没有设置检测机制,导致输出数据极不稳定。

测距范围为10 m的测距效果见表4所列。其中D1是专业测距仪Fluke414D测量的数据,D2是本文设计的超声波测距模块测量的数据;实验过程同样保证专业测距仪和超声波测距模块处于同一对地高度的前提下正对墙面测试。

对比表2和表3,由表4可知,随着测距范围的增大,超声波模块的测距误差也随之增大。主要原因是反射回波较弱,会存在误差;但整体的测距误差控制在15 cm之内,满足多旋翼无人机系统在户外环境下对精度的要求。

为避免表3中HC-SR04超声波测距模块因没有设置超量程检测机制导致数据输出极不稳定的情况,本设计经实际测试找到其量程,并针对其超量程的情况给予改进。超测距范围时的实验结果见表5所列。

由表5可知,当测距超过10 m后数据波动较大,为避免主控单元因误用数据而发生坠机等危险情况发生,本设计将检测不到回波信号情况下的测量距离设定为一定值11,保证无人机系统能够可靠、安全的执行任务,实验结果见表6所列。

4.2 数据更新频率对比分析

为了测试数据的更新频率,将本文设计的超声波测距模块与MB1200超声波测距模块进行对比分析,测试结果见表7和表8所列。表7所列是测距范围为5 m时的对比结果,表8所列是测距范围为10 m时的对比结果。表中n1和f1是本文所设计的超声波模块对应的数据,n2和f2是MB1200超声波模块对应的数据。

由表7和表8可知,相比更新频率为固定式的超声波测距模块,本文设计的超声波测距模块更新频率可根据测距范围实时更新,且更新频率最高为33 Hz,保证了无人机主控单元对数据的实时性要求。

5 结 语

对比采用收发分体式双探头的超声波模块的体积和重量,本设计的收发一体式超声波模块在体积上缩小了一倍,仅为26 cm×27.1 cm×5 cm,而且整个超声波测距模块重量轻至5.6 g。

充分利用32位主控芯片STM32F302K8U6的性能,采用软件检波法确定超声波信号从发射到接收的时间;对比采用硬件电路检波的超声波模块,不仅减少了电路板的尺寸,而且提高了测距精度;同时为了配合无人机主控单元对数据实时性要求高的特点,可以根据测距范围更新数据输出频率,最快更新频率是其他超声波测距模块的3倍。

在硬件电路上首次引入二极管组,将放大后的超声波交流信号的幅度限制在二极管导通压降之内,减少尖峰脉冲对系统的干扰;配合结构工艺合理安装在多旋翼无人机系统中,能有效降低无人机螺旋桨在运动过程中对超声波测距精度的影响,提高了系统的抗干扰能力。

参考文献

[1]毕凯,李英成,丁晓波,等.轻小型无人机航摄技术现状及发展趋势[J].测绘通报,2015(3):31-35.

[2]杨爱玲,孙汝岳,徐开明.基于固定翼无人机航摄影像获取及应用探讨[J].测绘与空间地理信息,2010,33(5):160-162.

[3]金伟,葛宏立,杜华强,等.无人机遥感发展与应用概况[J].遥感信息,2009(1):88-92.

[4] Rango A, Laliberte A, Herrick J E, et al. Unmanned aerial vehicle-based remote sensing for rangel and assessment, monitoring, and management[J].Journal of Applied Remote Sensing,2009,3(1):33-42.

[5]闫东磊.基于ATmega8L高精度超声波测距仪的设计[D].武汉:武汉理工大学,2010.

[6]苑洁,常太华.基于STM32单片机的高精度超声波测距系统的设计[D].北京:华北电力大学,2010.

[7]谢瑞云,毛得明,向敏.无人机电气系统与机载通信设备电磁兼容问题研究[J].通信技术,2014(10):1211-1212.

[8]黄韬,芮晓艳,葛立峰.基于车载CAN 总线的倒车雷达智能节点设计[J].自动化与仪表,2010(7):9-12.

[9]夏继强,郑昆,郑健峰,等.基于STM32的收发一体式超声波测距系统[J].仪表技术与传感器,2014(8):43-45.

[10]张振生.基于温度补偿的超声波测距系统的研究[D].天津:天津大学,2012.

推荐访问:无人机 测距 超声波 旋翼 系统