APP下载

基于边缘计算的植保机械自动导航系统的设计与实现

2023-08-27孟庆山许宁牛萌萌张春艳王小瑜王永烁

农业装备与车辆工程 2023年8期
关键词:导航系统植保总线

孟庆山,许宁,牛萌萌,张春艳,王小瑜,王永烁

(1.250100 山东省 济南市 山东省农业机械科学研究院;2.250100 山东省 济南市 农业农村部黄淮海现代农业装备重点实验室)

0 引言

随着我国农业种植规模化发展,植保机械的应用已较为普遍,不仅节省了人力,还提高了农药的利用率,降低了种植成本[1]。部分植保机械设计为支持遥控控制作业[2],由于遥控器等近景通信方式操控距离有限,需要人车伴随作业,不能满足实际场景的远程控制要求,对人力的依赖问题依然未解决。张俊才等[3]采用CORS 技术,设计了一种自走式植保机械导航系统,实现了植保机械的自主导航作业;谭文豪等[4]设计了一种基于视觉识别的高地隙植保机械导航系统,为植保机械自动导航提出了一种解决方案。为提高导航定位的精确度,张智刚等[5]将星基增强单点定位技术应用于农机自动导航,直线标准差达到2.4 cm,能满足大部分农机作业需求。随着深度学习技术发展,刘志杰等[6]提出了一种基于虚拟雷达模型的履带拖拉机导航控制算法,进一步提高了导航路径的精度及车身行进稳定性。以上农机导航系统的测试车辆都是采用操作终端或云端控制系统进行路径规划与计算,由作业平台的嵌入式单片机执行驾驶命令。受制于单片机性能,车载单片机在导航程中不参与路径的计算模拟工作,并且在路径行进执行过程中,机身传感器采集的数据是独立的信息通道,与单片机执行的行驶行进中的导航任务没有互动与误差修正,在自动驾驶任务中途有特殊情况引发车辆制动或者遥控器介入中断后自动驾驶任务一般会停止,作业平台无法从偏离驾驶路径的位置点重新规划路径,需由遥控器或控制终端进行人工干预重新下发导航任务。这种工况模式一方面受制于网络传输速度及网络延时,自动驾驶功能依赖于操作终端;另一方面,作业平台缺少自主规划及修正导航路径的能力,无法满足更加智能化及精细化的农业生产需求。

基于植保机械携带传感器类型多且作业环境复杂的现状,自动导航系统要求更快的环境数据感知,更低的数据通讯延时。本文提出基于边缘计算的理念设计一套适用于植保机械的自动导航系统,以支持CAN 总线[7]的高地隙马铃薯喷药植保机作为测试平台,从硬件选型、电路设计、通信协议、内置功能等进行定制化设计开发。系统采用边缘计算机作为计算中枢,具备数据存储和计算功能,通过内置的自动导航路径规划、位置纠偏、自动避障等关键算法,进行了内置集成及优化。系统可以脱离遥控器与无线网络自主导航行进并进行路径实时纠偏修正。

1 车载边缘计算机的设计及实现

1.1 边缘计算的关键技术特征

边缘计算的概念是在物联网技术快速发展中所提出的。边缘计算由边缘计算一体机(Edge computing all-in-one computer,以下简称ECC)与实现功能需求的软件系统共同组成,是指在靠近物或数据源头的一侧进行数据的优先处理[8],目的就是为了弥补终端算力低、云计算响应速度慢的缺陷。

边缘计算是一种分布式计算架构,将复杂逻辑、海量数据分解成更小更易计算的单元,由边缘节点进行处理。边缘计算属于设备间的直接互动,定制化的硬件设计与软件算法在处理大量即时数据的同时,依然可以将数据传递给云端服务器。对物联网而言,边缘计算设计理念的运用减少了云端数据的交互,大大提升终端设备的反馈效率。

1.2 ECC 硬件设计与实现

ECC 由ECU 发展而来,在动力系统控制基础功能之上,增加了车辆通信、导航等功能,是控制车辆的大脑。本文设计的果园作业平台高性能ECC基于恩智浦I.MX6ULL处理器(Cortex-A7内核)开发,存储采用DDR3L 512M,NAND Flash 8G,具备4G/5G 通、2 路CAN 2.0A/B,内置定位芯片,支持3D 陀螺仪、3D 加速度传感器,是高度集成的车载智能核心主控制单元。

本文的ECC 操作系统采用基于Linux 内核的Ubuntu 系统,通过CAN 总线方式与车机控制器进行信息交互[9],从而控制各单元协调、安全工作,实现作业平台自动驾驶的功能。可以实现ECC 内置导航系统的远程升级(OTA)、参数配置等功能,设备状态监控和外设设备接口。

作业平台控制基于模块的方式开发,集成底层驱动、CPU 以及总线做冗余设计,防止单点故障。ECC 故障后MCU 可直接发送指令到车辆CAN总线控制车辆制动。完整的控制架构如图1。

图1 整车控制模块图Fig.1 Vehicle control module diagram

2 ECC 端自动导航系统设计

2.1 导航系统技术架构设计

ECC 端自动导航系统是一套基于边缘计算模式深度定制开发的导航控制软件。主要实现了数据感知系统、数据缓存系统、数据传输系统、导航计算系统、导航控制执行系统。

导航系统从业务流程上分为3 个核心的流程,分别是环境感知定位、决策规划、执行控制。环境感知主要是通过陀螺仪、摄像头等传感器获取行进过程中的数据并上传至服务器。决策规划层的功能主要是路径规划计算,同时根据环境数据进行路径即时调整。执行控制模块将执行信号传递给CAN总线,进而控制车辆完成相应的动作[10]。导航系统技术架构如图2 所示。

图2 导航系统架构图Fig.2 Navigation system architecture

2.2 导航系统功能设计

为实现导航系统的独立性,降低与平台机械装置之间的耦合度,本文设计的导航系统整体设计包含上位机、下位机、CAN 总线接口模块。上位机包含云端控制系统、APP 端控制系统、遥控器对接系统三大模块,完成GPS 信息的采集、分发、可视化路径规划、运行状态监控、云端数据汇总等,下位机主要是面向运行在MEC 上的操作系统,包含导航软件、传感器数据采集、CAN 数据采集、CAN总线接口调用等控制性程序。CAN 总线模块主要实现下位机调用接口的设计以及对于车辆转向控制、速度控制、制动控制及车辆底盘能够提供的其他标准CAN 接口的设计。系统整体设计如图3 所示。

图3 系统整体设计图Fig.3 Overall system design

3 基于ArcGIS 地图建模及路径规划

ArcGIS 作为一个全面的GIS 服务平台,可以实现地理信息系统的构建、发布、共享等功能[11]。在ECC 安装ArcGIS 服务,使用ArcMap 的GIS Servers 服务添加 WMTS Serve,本文采用天地图作为第三方地图服务。通过地图编辑工具,将采集的作业区域地形图片及兴趣点信息编辑为作业图层,实现作业区域高精度地图的建模。采集导航路径的方式有3 类:通过云端系统操作界面或者APP 端进行可视化路径AB 线选择、通过手持客户端进行路径信息采集得到AB 线、遥控器控制作业平台行进获取寻迹路径AB 线。以上3 种方式获取到的路径信息均为高密度GPS 位置点坐标,坐标信息均经过ECC 内置的路径纠偏算法进行加工后转存到存储模块,生成AB 段完整的导航作业信息。

通过作业平台的GPS 模块,获取作业平台的起始点C(ln,lg,hi),通过陀螺仪获取作业平台的方位角,CA 段可以采用 RRT 算法进行快速的路径规划,通过CA 和AB 两条路径最终生成一条完整的路径规划信息[12-13]。作业平台接收到执行指令后即启动ECC 内的导航软件执行导航作业,通过CAN 总线接口操控作业平台的机械模块。

4 扩展卡尔曼滤波轨迹纠偏算法

受制于GPS 信号及设备精度,获取的坐标点有部分偏离实际路径,总体分散于实际路径两侧呈散列分布,这类点称为漂移点。如果按照采集的坐标集合进行导航,作业平台会频繁执行转向指令进行航线修正,导致平台行进顿挫,影响车身稳定性。

卡尔曼滤波适合解决在连续变化的动态系统中,以前向信号趋势修正历史信号波动值,同时对系统下一步的运动趋势进行有规律的预测,由此得到最优的目标轨迹点集合,在导航系统中被普遍采用。因此利用边缘计算机的高速算力,快速获取参照模型的参数信息将大大提高求解时间[14-15]。

4.1 最优点集合求解算法

最优的轨迹点集合有很多种可能正确的组合,但其中一些的可能性要大于其它部分。导航是一个动态的过程,每一个GPS 坐标都是一个多维向量。位置、速度、海拔等都是相关的,特定坐标的合理性取决于当前多维的速度前后多个坐标的整体趋势。导航系统计算过程是滞后于行进过程的,首先给定一个权重值W1,然后确定权威点与权重点。第1 个有效轨迹点作为权威点。权重点是若干连续点中的相对稳定点。

定位进程中,只选取轨迹集合中的一个稳定点作为权重点。如果当前权重点疑似漂移点,则删除后选择区间内的另外一个点作为权重点。如果一个权重点之后的若干个点都不是漂移点,那么这段轨迹为有效轨迹,则从有效轨迹点集合中选择一个新的稳定点更新为权重点。

4.2 漂移点求解过程

图4 中圆圈内的P4 与P3 和P5 的距离均超过规定值,根据权重点,可以将P4 点删除,轨迹修订为P5 作为正常点。如图5 中P4 判定为可疑(如图4 中点)后,赋值新的权重点W2,重复上述判断过程发现P5 相对于W2 来说也是跳点,则把W2代表的点也删掉,然后重新让 P6 代替P5。若后续的5 次定点都相对稳定,则权重点更新为W1。

图4 删除漂移点过程Fig.4 Drift point deletion process

图5 更新权重点过程Fig.5 Renewal process of weight points

4.3 测试数据分析

搭载本文导航系统的植保机进行田间测试时,通过系统后台数据库,任意截取了1 min 内获取的30 条原始GPS 数据,如图6 所示。

图6 原始GPS 位置信息Fig.6 Original GPS position information

经纠偏算法过滤后的数据为15 条,删除第1个精度较低起始点,合并不同时刻数据相同的点(如图6 中第2 条和第3 条为重复无效点,第20 至24条数据漂移误差太大),最终有效数据如图7 所示,过滤后的数据整体方差变小,平整度趋缓。

图7 过滤后的GPS 信息Fig.7 Filtered GPS information

5 系统软件功能设计

5.1 ECC 端车载导航系统

车载导航系统的主要功能是执行路径规划,接收传感器数据反馈适时修正路径数据、上传平台信息及作业数据信息。导航系统经过计算后,将最终的导航向量数据通过CAN 总线与车机控制系统对接,实现速度及姿态调整。

5.2 服务器端(云端)软件设计

服务器端软件主要是实现路径规划下发、导航轨迹回放、作业面积统计、远程遥控控制等功能。服务器端软件是以web 为载体的B/S 程序。采用J2EE 作为开发平台,使用JAVA 程序语言进行开发构建。系统基于SOA 的体系结构,采用微服务及数据中台的设计思想,集成大数据及分布式技术,是导航系统稳健、智能的云端大脑中枢。

车载终端导航系统会自动记录作业平台的历史轨迹信息,本地缓存后经无线网络上传至服务器端进行保存。在服务器端软件中选择任一时间段即可查看轨迹回放信息、作业信息、时空环境信息、音视频信息,如图8、图9 所示。

图8 作业轨迹回放图Fig.8 Operation track playback

图9 作业平台状态信息图Fig.9 Status information of operation platform

5.3 APP 导航软件设计

APP 导航软件是基于Android 操作系统进行设计开发。程序开发语言依然采用Java 语言,IDE采用AndroidStudio;APP 实现的主要功能包含:路径采集打点、路径上传、导航任务下发、自动手动模式切换、车载视频监控、车辆状态监控等,如图10、图11 所示。

图10 APP 路径绘制图Fig.10 Mapping of APP Path

图11 APP 导航控制图Fig.11 APP navigation control diagram

6 结论

基于边缘计算的植保机械自动导航系统,经过多次田间复杂地形环境测试,试验结果证明本系统反应灵敏、车机响应迅速,导航路径执行精准,对移动网络信号依赖程度低,间断性的网络中断对执行中的导航作业没有影响,能够满足果园多功能作业平台的导航需求。车载导航系统开放传感器数据接口,提供程序OTA 升级功能,实现了车载导航系统的持续优化改进。本文的导航系统与载体植保机械动力系统相对独立,保持了导航系统的兼容性、可移植性,增强了系统的通用性。由于植保机械应用范围广泛,后续研究工作将进一步优化避障算法,并针对不同作业场景进行细分研究。

猜你喜欢

导航系统植保总线
2021年《广西植保》总目录
壶关县:开展2021年植保无人机操作手培训
说说“北斗导航系统”
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
“北斗”导航系统是怎样炼成的
植保机何时走下“神坛”
一种GNSS/SINS容错深组合导航系统设计
解读全球第四大导航系统
植保无人机应用现状与发展趋势