基于迭代学习PID算法的苹果采摘机器人设计

2020-10-17 01:03陈明霞王晓文李徐勇
农机化研究 2020年6期

陈明霞,张 寒,王晓文,李徐勇

(桂林理工大学 机械与控制工程学院,广西 桂林 541006)

0 引言

苹果是我国生产的主要农业产品之一,2017年我国苹果种植面积为250.96万hm2,年产量突破4 548万t,规模居世界第一。我国苹果产量约占世界苹果总产量的56.13%,居三大果品(苹果、柑橘、梨)之首。2017年,我国苹果种植环节生产总成本平均每 667 m2为 5 013.33 元[1]。当前,苹果采摘机器人的发明与推广在一定程度上提高了生产效率,降低了人力成本,同时也带来了一些弊端。例如,低控制精度下的采摘机器人动作会对采摘果实造成一定程度的机械损伤,使得病原微生物对果实有机可乘,病原微生物的入侵将会导致苹果腐烂变质,给农业生产带来巨大损失。采摘机器人在采摘过程中实际接触果实,所以保证机械采摘果实完整性显得尤为重要。为此,立足于控制系统角度进行机器人全局优化设计,进一步提升采摘机器人控制的精准性和移动效率,具有较大的价值与意义。

基于参考文献[2-5]中的果蔬采摘机器人,结合当前农业机器人发展趋势,设计了一种基于迭代学习PID算法的苹果采摘机器人。采用迭代学习PID算法是为了克服苹果采摘机器人在实际工作中系统未知参数和随机扰动,可以提高果蔬采摘机器人工作精度和作业效率,一定程度上降低机器作业对苹果果实的机械损伤。

1 系统总体设计

苹果采摘机器人系统包括移动环节和采摘环节两大部分。移动环节采用履带式结构,采摘环节由手臂与手腕部分辅助实施采摘过程。苹果采摘机器人主要采用关节型结构,即每一个关节由一个舵机组成。本文设计的苹果采摘机器人机械部分结构图如图1所示。

图1 苹果采摘机器人机械结构

该苹果采摘机器人为6自由度机械手,由2个旋转舵机和4个移动舵机组成。采用这种模式设计的苹果采摘机器人有工作空间大、灵活度高等优势。苹果采摘机器人具有重复运动的工作特性,控制系统较为复杂,造成采摘机器人成本过高及不够便捷、灵活,影响了采摘机器人大面积普及与推广。因此,基于迭代学习PID算法的采摘机器人设计具有一定的现实意义。

迭代学习PID控制算法具有很好的收敛性和鲁棒性。因此,迭代学习PID控制算法在学习速度及工程应用中具有巨大优势与前景。迭代学习控制算法是通过迭代修正来改善控制对象参数性能,与传统神经网络算法相比,计算更为简单,其对于给定期望轨迹具有很强的跟踪性,可以有效提升机器人的工作效率[6]。迭代学习PID控制算法不依赖于系统精准的数学模型,适合应用于具有重复运动特性的被控系统,可以以较为简单的方式应用于不确定度非常高的非线性强耦合动态系统[7],适合苹果采摘机器人控制系统的设计与开发。

采用公式(1)对于苹果采摘机器人的动态过程进行描述[8]。苹果采摘机器人执行采摘动作的过程中,存在期望控制ud(t),给定出采摘机器人期望的位移或者是速度输出yd(t),以及每次运行的初始状态xk(0)。在一定时间内,采取的控制策略使得控制输入uk(t)→ud(t),系统输出yk(t) →yd(t)。系统误差可由公式(2)进行描述,即

(1)

ek(t)=yk(t)-yd(t)

(2)

其中,x、y、u分别为苹果采摘机器人控制系统的状态、输出和输入变量,f(·)、g(·)为适当维数的向量函数。苹果采摘机器人的基本控制流程如图2所示。

图2 苹果采摘机器人基本控制流程图

2 硬件部分设计

苹果采摘机器人硬件部分设计主要包括机械结构和硬件电路两部分。在机械结构设计部分中,底盘采用履带式结构,保证采摘机器人在运行时不受采摘场地的限制。硬件电路部分主要由STM32主控制核心、图像采集识别、舵机控制电路、XEEB通信、超声波及红外等传感器组成,如图3所示。

本文设计的苹果采摘机器人采摘机械臂为6自由度机械手,动力结构由2个旋转舵机和4个移动舵机组成。该结构灵活性大、采摘范围广、运行速度快且旋转角度大,最大限度地保证采摘苹果的质量。

采摘机器人控制流程:首先,通过图像采集模块捕捉到苹果的实际位置,并将苹果所在位置信息发送给主控制器,迭代学习PID算法开始响应,控制器进行计算并规划出期望运动路径;然后,设定电机转速,硬件电路通过采样得到电机转速,同时计算系统误差值e,通过迭代学习PID算法改变PWM占空比,进一步消除偏差量,直到转速稳态到期望值;主控制器根据迭代学习PID控制算法保证机器人,以最佳期望方案进行动作,通过准确控制旋转舵机与夹角舵机的动作配合,实现准确快速采摘。期望方案以最佳采摘角度来保证采摘果实的完整性。主控制器利用控制算法保证采摘机器人以最佳移动方式切合期望路径,超声波及红外模块则配合该算法保证采摘机器人有较强的避障性能。XBEE通信模块则实现采摘机器人的一系列通信功能。

图3 苹果采摘机器人硬件原理图

3 采摘机器人控制系统设计

本文设计的苹果采摘机器人为多关节结构,为了保障控制系统在复杂环境具有良好性能,设计时需要引入参数不确定的随机干扰因素,动力学方程为

G(qk(t))=τk(t)+dk(t)

(3)

控制系统所要跟踪的期望轨迹为qd(t),t∈[0,T]。系统第i次输出为qk(t),根据公式(2)可知,系统运动误差为ek=qk(t)-qd(t)。控制系统设计基本思路是通过学习控制律设计uk+1(t),使得第k+1的控制误差ek+1(t)减少。

根据参考文献[9]可知,在迭代学习控制(ILC)中,PID 型学习律为

uk+1(t)=uk(t)+kp(qk(t)-qd(t))+

(4)

其中,期望轨迹为qd(t);第k次输出为qk(t);期望控制为uk(t)、kp、ki、kd为迭代学习PID控制的增益矩阵。

4 仿真与分析

在MatLab软件的Simulink中,根据参考文献[10]中机器人仿真实验步骤,搭建系统模型进行仿真分析。其中,线速度输入采用vd=1.0,角度输入信号采用sin(t)正弦信号。控制规律采用公式(4)闭环PD型,总的迭代次数为10次,系统仿真时间为20s。在实验室对苹果采摘系统进行了大量的仿真,在迭代学习PID控制算法下,y轴方向上速度跟踪如图5所示,y轴方向上角度跟踪如图6所示,角度及速度跟踪下降曲线如图7所示。

图4 迭代学习PID算法y轴方向上速度跟踪

图6 角度及速度跟踪误差下降曲线

图7 苹果采摘机器人采摘动作

5 采摘机器人实现与测试

采摘系统测试从机器人移动路径测试及采摘效果测试两个方面进行。控制系统的控制对象是2个直流电机及6个控制舵机,电机同时匹配光电编码器,实时反馈电机转速波形,电机驱动模块采用L298N模块。采摘机器人主控制器芯片采用STM32F103ZET6型号32位ARM微控制器,上电后采摘机器人采摘动作如图8所示。

图8 苹果采摘机器人采摘实现

采摘机器人的移动效率测试中考虑到采摘环境的复杂多变性,在实验室场地针对采摘机器人设计了躲避障碍实验。在实验地点1放置苹果,模拟果树所在位置。图9浅灰色路线为采摘机器人在无障碍时运动路径,图10浅灰色路线为采摘机器人有障碍状态下运动路径。测试结果表明:采摘机器人能够完美躲避障碍,并规划出最佳路径完成采摘任务。

图9 无障碍下采摘机器人路径

图10 有障碍时采摘机器人路径

机器人采摘机械手动作精准性测试中分别采用传统增量式PID算法、迭代学习PID算法控制对于机器人采摘动作进行测试。图11为苹果破损率统计图表。统计测试结果表明:迭代学习PID算法控制下苹果采摘机器人采摘破损率小于0.17%,增量式PID算法控制下苹果采摘机器人采摘破损率小于0.28%。采用迭代学习PID控制算法苹果采摘机器人采摘效果更加良好。

图11 破损率测试统计分析图

6 结论

1)设计了一种基于迭代学习PID算法的苹果采摘机器人,采用迭代PID算法契合控制期望目标,实现了对于苹果采摘机器人的实际动作轨迹的高效跟踪与在线调整,迭代学习过程中进一步消除了系统误差,提升控制系统精度和采摘机器人的工作效率。

2)基于迭代学习PID算法的苹果采摘机器人,实现了对于采摘目标的快速锁定、有效避障规划路径与稳定完整采摘果实,工作效率高,果实破损率低。

3)苹果采摘机器人控制系统在复杂环境中可以克服未知参数和随机扰动的不确定性,控制机械手臂精准到达苹果果实所在位置进行采摘,并以最佳采摘角度和最大程度保证采摘果实的完整性。其成功率较高、硬件集成简单,易于学习接受,可在未来农业采摘机械领域上有效推广,具有一定的应用前景。