基于云计算的农业机器人路径规划与实时定位研究
2019-12-22曹起武
曹起武
(辽宁机电职业技术学院,辽宁 丹东 118009)
0 引言
近年来,互联网技术和网络技术快速发展,使得云计算技术获得了较大发展。云计算改变了传统用户在本地计算机上完成开发、设计和计算等任务的工作模式,通过云平台接口及互联网远程访问大规模计算机资源处理任务,并借助网络将结果发回至本地,极大地提高了系统处理大数据的能力。本文采用云计算和蚂蚁算法,设计了一套基于云计算的农业机器人路径规划与实时定位系统,以使农业机器人在复杂环境中通过云计算平台调用蚂蚁算法,为其规划一条无碰撞的最优路径。
1 云计算概述
云计算是将互联网和虚拟化资源相结合的一种计算方式,是将计算、存储、网络、数据、算法及应用等软硬件资源集成的大规模双向实时应用。云计算不仅能够确保农业机器人路径规划与同步定位等应用的快速部署和高扩展性,还能解决路径规划等大规模高并发路线计算。云平台可以将软硬件资源整合成虚拟化的线上资源,这些资源整合后封装成一些可以被用户随时使用的接口,用户根据使用流量值缴费,使得普通用户可以利用强大的计算资源完成复杂计算。云计算的优势如下:
1)计算资源丰富,通过并行程序设计和海量数据分布式计算方法提高了计算机的整体效率。
2)资源分配视需求而定,分配自由,能够最大限度地利用计算资源。资源可灵活分配,使计算机资源得到充分利用,由虚拟化技术支持实现,可以实现硬件与软件的隔离,打破计算机资源地理上的屏障。
3)采用虚拟化技术支撑,由线下计算机群组成云计算平台,用户只需要使用相应接口,便能接入云计算通道使用资源。
4)在云端完成计算,可靠性、效率及稳定性都非常高,数据也非常安全。
云计算平台注重计算机资源的快速响应,改变了传统计算机资源信息孤岛化的状况,能够根据用户需求分配资源,提高服务质量。云计算平台的框架如图1所示。
图1 云计算平台的框架图
云计算需要采集、存储具有物联网特性的资产数据和用户数据,因此涉及到物联网和互联网相关的技术。云计算一方面涉及海量的物联网数据、用户数据的管理,另一方面又要随时跟进用户需求而做功能开发和优化,所以应用之前会先构建平台服务(PaaS),配备平台服务层。一方面能够使得应用承载百万量级的高并发数据流,另一方面又能做到资源和能力的动态调配、功能的灵活开发。
2 农业机器人路径规划与定位方法
2.1 路径规划方法
农业机器人工作环境相对复杂多变,首先机器人得到分配的任务,然后获取环境信息,并将处理后的环境信息通过互联网发送给云平台,借助网络将路径规划最优结果发回至本地,按照路径进行作业。假设农业机器人从A移动到B,则整个避障过程中应符合以下几个要求:
1)耗时少。
f1=min(maxt) (1≤t≤6)
(1)
其中,f1为移动最短时间;t为某时间点。
2)路程最短。
(2)
其中,f2为起始点和终点之间最短路程;t为运动时间点;(xi,yi)为路径点坐标。
3)路径平滑度最高。
(3)
其中,f3为路径平滑度度值;t为整个移动过程所耗时间。
农业机器人的路径优化问需要同时考虑以上3个方面,因此可以建立机器人轨迹规划函数,求解最优路径,即
F=a1f1+a2f2+a3f3
(4)
本文研究的农业机器人路径规划方法流程为:农业机器人搭载的CCD摄像头获取周边位置信息,建立作业区域环境地图;然后,在进行路径规划时利用云计算平台训练好的蚁群算法进行路线规划。整个过程中,以蚂蚁算法为主,农业机器人从云平台下载从起点到终点避开障碍物的最优路径,然后机器人根据该路径移动。
蚁群算法在农业机器人路径规划的应用原理是:在初始时,将一定数量的蚂蚁安放在起点,每段路径都会有一定初始的蚂蚁留下的信息素。假设所有路径中最短路径为S,最长路径为L,经过路径S和L的蚂蚁数量分别为M1和M2,即
M=M1+M2
(5)
M为M1和M2之和,那么第M+1只蚂蚁选择路径S或L的概率可以通过计算得到,即
(6)
其中,a、h为参数;PS(M)为第M+1只蚂蚁选择路径S的概率。
蚂蚁行走后的一段时间,路径的信息素较多,容易引起启发信息的问题,为此需要实时更新路径上的信息素,更新方法主要有全局和局部两种。由于农业机器人在作业中可能会出现故障或其他无法确定的因素,导致机器人无法正常移动,从而终止路径规划算法,因此本文采用全局信息素更新方法,在t+n时刻更新该路径上的信息素,则
τ(t+n)=(1-ρ)τ(t)+∑Δτk(t)
(7)
(8)
其中,ρ⊂[0,1]为单位时间内信息素丢失率。在信息素更新中,若蚂蚁到达死胡同但还未到终点,则判断该蚂蚁死亡,删除其在该路径节点的信息素,保留其前面路径节点的信息素。
2.2 实时定位方法
农业机器人自主定位算法计算量大,比较复杂,需要在PC机上进行计算,不适合在机器人中的嵌入式系统中处理。因此,本文将获得的环境信息实时发送给云平台,由云平台的结构化海量数据计算模块进行处理。农业机器人实时定位系统如图2所示。
图2 农业机器人实时定位系统
农业机器人自主定位系统根据摄像头传感器获取环境信息,并结合机器人的初始位姿信息,利用云平台的高效计算,得到相对较高的定位精度。机器人实时定位流程主要如下::
1)农业机器人首先设定好作业区域的起点和终点,然后通过CCD摄像机获取三维环境参数信息,经农业机器人ARM处理器预处理后,交给云计算平台处理;
2)云平台根据农业机器人提供的需求和三维环境参数,搭建地图模型,指定出最优移动路径,并将命令发送给机器人;
3)地图模型搭建成功后,可以实现机器人的可视化显示,用户可以实时观察机器人的移动情况。
3 路径规划与定位系统
3.1 云系统架构
云系统架构主要由农业机器人、云计算平台、ARM开发板、图像处理、摄像头和无线路由器等模块组成,如图3所示。其中,ARM开发板和摄像头搭载在农业机器人中,作为其控制单元和传感单元。农业机器人的路径规划在云计算平台中完成,通过无线路由器与图像处理模块、云主机、无线路由器之间进行数据的交换。
图3 云系统架构图
本系统采用中国电信的弹性云主机(CT-ECS,Elastic Cloud Server)。该云主机是是一种可随时获取、弹性可扩展的计算服务器,同时可结合VPC、安全组、数据多副本保存等能力,打造一个高效、可靠、安全的计算环境,确保服务持久稳定运行。弹性云主机框架如图4所示。
3.2 路径规划与定位系统硬件框架
本文设计的农业机器人核心控制器采用SAMSUNG的S3C2410处理器,该处理器片上资源丰富、处理能力强、功耗低、稳定性高。S3C2410核心板包括CPU、内存、NandFlash、NorFlash和RTC 等核心部件,系统运行在200M的主频下能展现极为出色的性能,适合应用于工业控制场合。路径规划与定位系统如硬件框架图5所示。
图4 弹性云主机框架
图5 定位与避障系统的硬件框架图
3.3 路径规划与定位系统软件设计
农业机器人路径规划与定位系统是采用蚂蚁算法进行路径规划的,其算法软件流程为:①搭建环境;②设定起点和终点;③计算蚂蚁移动次数;④自动计算蚂蚁移动次数;⑤统计成功蚂蚁的路径代价;⑥统计成功蚂蚁的路径代价;⑦计算路径代价最小值;⑧输出最优路径。该软件流程如图6所示。
4 测试与分析
本文以云计算平台作为管理服务模拟,采用蚁群算计算农业机器人的最优路径,潜在的模式中包含了大量的节点数据信息的云数据库,供云主机计算和调用。为了验证农业机器人路径规划与定位系统是否符合设计要求,是否具有较高的可靠性和稳定性,采用云计算平台调用蚁群算法,并使用MatLab进行了仿真试验,目的是求取一条从起点A到终点B的无碰撞最优路线。仿真结果如图7所示。
图6 蚁群算法软件流程
图7 仿真结果图
农业机器人顺利实现了从图A到B无碰撞移动的目的。该路径路径最短、转弯次数最少,在复杂的环境下仍能实现路径规划和避障功能,系统稳定性高、可靠性强。仿真结果表明:采用云计算平台调用蚁群算法效率高、可行性强,高效解决了农业机器人路径规划与定位问题。
5 结论
1)分析了云计算的原理及优越性,并根据农业机器人移动特性,采用蚂蚁算法,设计了一种基于云计算的农业机器人路径规划与实时定位系统。
2)搭建了由农业机器人、云计算平台、ARM开发板、图像处理、摄像头和无线路由器等模块组成的云系统架构,利用云平台的高效计算,实现农业机器人的最优路径规划和精准定位。
3)采用云计算平台调用蚁群算法,并利用MatLab进行了仿真试验,验证了系统的高效性和可行性。