基于角度计算的林木测高仪

2021-10-10 02:56邰其乐江朝晖朱家微岳旭东
物联网技术 2021年9期
关键词:激光测距舵机林木

邰其乐,江朝晖,朱家微,岳旭东,高 健

(1.安徽农业大学 信息与计算机学院,安徽 合肥 230036;2.国际竹藤中心,北京 100102)

0 引 言

在林木生产过程中,通过便携式、自动式测量仪器对树木长势进行监测,便于实施者采取适当的干预措施来保证林木的正常生长,对林木管理和科研教学具有重要意义。

目前,国内外已有一些关于林木高度测量的仪器[1],如常用的测树枪,虽然便携,但需要人工测量,肌肉颤抖和测量高度不固定等因素会造成测量结果存在误差[2]。利用鱼眼镜头曲面测量树高的方法,测量树高的准确度取决于对林木图像桶形失真的还原程度,且携带不便[3]。部分功能完善但价格昂贵的仪器设备,如全站仪,难以推广[4]。针对上述问题,本文采用三角测量、图像获取和激光测距等方法设计了自动化林木测高仪,减少了人工操作的误差,实现了林木图像、倾角数据、水平标定信息的自动获取,具有通用性、易操作性、便携性好、性价比高等特点。

1 测量原理

测高原理如图1所示。根据摄像头高度H和水平距离L求得∠γ,∠α由∠β与∠γ得出。由h1、L和∠α的关系得出h1,计算被测物体高度h:

图1 测高原理

式中:H为固定支架的高度;L为激光测距模块自动获取的水平距离;∠β为摄像头观测被测物体过程中偏转的角度(∠β的精确测定是测高的关键)。

∠β的测定原理:利用二自由度平台中舵机输入特定的PWM波形,即可完成特定角度转动,得出图2中基准线从被测物体最低点到最高点舵机转动的角度。

图2 ∠β的测定原理

2 硬件设计

测高仪由视频图像获取、激光测距、云台控制等模块组成,硬件结构如图3所示。MCU(STM32F429IGT6)控制摄像头(OV5640)和激光测距模块获取林木图像和水平距离并实时显示,用户通过按键控制二自由度平台,根据图2中∠β的测定原理,完成被测物体的高度测量。仪器使用电池供电。

图3 硬件结构

2.1 视频获取模块

MCU(STM32F429IGT6)根据SCCB协议对其关键寄存器进行配置以实现寄存器初始化。摄像头采集图像时[5]选择的视频采集参数为480 dpi,刷新率为15 FPS,图像格式为RGB 565。由此算出PCLK时钟频率至少为11.52 MHz,故PCLK实际频率大于11.52 MHz。

图像数据传输时序如图4所示。RGB 565图像数据的单一像素由2个8位数据组成,故OV5640在单一像素时钟中,OV_D[7:0]的8位数据口输出0.5像素数据。像素数据在行同步时钟下,输出一行像素数据,在帧同步时钟下,完成一帧图像数据的输出[6]。在数据传输过程中,DCMI接收的摄像头数据通过通用DMA进行数据传输,DMA将图像数据直接写入LCD的寄存器中显示。摄像头模块引脚见表1所列。

图4 图像传输时序示意图

表1 摄像头模块引脚

2.2 激光测距模块

选用LP系列激光测距模块LP40。LP40发出一束经过系统签名的脉冲激光,当脉冲激光遇到物体时,虽然脉冲会受到物体的影响,但签名信息依然存在。如图5所示,LP40接收到调制后的签名后[7-8],精确算出飞行时间t与物体到激光测距模块的距离L。

图5 激光测距原理示意图

MCU通过串口与模块通信,LP40模块挂载在MCU的UART2串口上,TX接PA2,RX接PA3。MCU向模块发送获取设备信息(0x01)、设置测量频率(0x03)、设置数据格式(0x04)、设置测量模式(0x0D)、启动测量(0x05)、停止测量(0x06)等命令,获取模块的设备信息和距离测量数据等。

2.3 云台控制模块

舵机和摄像头绑定,用来控制摄像头转动特定的角度。舵机内部有一个基准电路,可产生周期为20 ms,宽度为1.5 ms的基准信号,将获得的直流偏置电压与电位器电压进行比较,获得电压差输出。电压差的振幅输出到电机驱动芯片,决定电机的正反转。如图6所示,在脉冲为1~1.5 ms范围内时,舵机可以右转90°;在1.5~2 ms之间[9],舵机可以左转90°。

图6 舵机PWM工作时序

可以通过MCU产生的PWM信号控制舵机一次转动特定角度。舵机的PWM信号由MCU的PA3引脚提供。对舵机控制的测试表明,PWM占空比(0.5~2.5 ms的正脉冲宽度)和舵机的转角(-90°~90°)线性度较好。因此设置舵机的单次最小转动角度[10]为0.9°。

3 软件设计

3.1 软件流程

测高仪软件由图像显示任务、激光测距任务、二自由度平台控制任务组成,软件流程如图7所示。测高仪首先完成系统初始化,并检测OV 5640摄像头是否正常工作。根据图2的工作原理记录被测物体最高点和最低点的状态值,得出舵机带动摄像头偏转的角度。最后根据激光测距得出的水平距离、摄像头固定高度计算被测物体的高度。

图7 软件流程

3.2 高度计算

将按键RECODE设置为三次触发计算,前两次按键触发分别为图2中最低点和最高点舵机所在位置,即运动到最高点和最低点时,需要操作的UP和DOWN的次数。第三次按键触发后,计算被测对象高度。

式中:Flagup1和Flagdown1为最低点的状态值;Flagup2和Flagdown2为最高点的状态值。

用户界面如图8所示,最上方为KEY1、KEY2、KEY3的按键功能说明;第二行显示舵机状态值UP、DOWN的次数;第三行为测得的α和β的角度值;第四行为根据公式(2)计算的h1和激光测距得到的水平距离L;第五行为算得的被测物体高度h,以及KEY3按下的次数Time;最下方显示实时获取的物体图像。

图8 用户界面

4 测试结果

为验证设备的可靠性与实用性,使用测高仪对室内的小目标物体和室外高大树木进行测量实验,实验结果见表2所列。

表2 实验测试结果

表2中,1~12组实验是在室内针对小目标物体进行的实验,13~15组实验是在室外针对大目标物体进行的实验。图9为15组实验数据中测试高度与实际高度的柱状对比。

图9 测试结果对比

从测量结果对比来看,测试高度和实际高度的误差率会受被测物体高度、被测物体与摄像头水平距离的影响,但高度测量的准确率均维持在97%以上。

仪器整体功耗约为0.73 W,使用5 V/10 A·h的可充电锂电池供电,可保证仪器连续工作68.5 h,续航能力强。

5 结 语

本文采用普通摄像头、激光测距模块、二自由度平台等设计了基于角度计算的手持式林木测高仪。该仪器的突出特点是测量原理简单、硬件性价比高、仪器设计小巧、携带方便等。虽然在摄像头获取图像的过程中会存在些微的舵机偏转误差,但误差处于可接受范围内。后续任务是进一步降低功耗,拓展树高数据库,并进行可视化分析。该仪器可以便捷地测量乔木、毛竹等高大林木的高度信息,有利于林木资源的管理和林木学专业的教学研究,具有良好的应用价值。

猜你喜欢
激光测距舵机林木
含齿隙弹载舵机的全局反步模糊自适应控制
基于LabVIEW的偏振调制激光测距测量控制系统
基于高压架空线路激光测距的无人机锁定导线巡航研究
基于dsPIC单片机的飞艇舵机控制实现
试论高大林木的病虫害防治技术
天敌昆虫在林木病虫害防治中的重要作用探讨
基于回波强度的激光测距误差补偿算法研究
基于高速同步485总线通信的多通道舵机控制器设计
基于云模型的舵机同步控制
自增益电路在激光测距中的应用