袁路路,张娓娓
(河南工业职业技术学院,河南 南阳 473000)
智能轨迹控制割草机器人设计—基于FPGA神经网络
袁路路,张娓娓
(河南工业职业技术学院,河南 南阳 473000)
为了提高割草机器人自主导航和定位的精确性和智能性,设计了一种新型的基于FPGA神经网络算法的割草机器人。该设计采用FPGA可重构技术,以3层误差反向传播神经网络作为典型的模型来展开;利用成熟的BP算法公式,设计了割草机器人智能控制的模型;利用FPGA技术,设计了割草机器人的硬件系统;最后采用文本输入的设计方法,利用田间试验的方式,对机器人的轨迹规划能力和控制精度进行了验证。试验结果表明:利用FPGA和神经网络模型可以有效地穿越5个障碍物,并可得到满意的轨迹规划结果。将普通的PID控制器和神经网络PID控制器得到的控制结果误差进行了对比,结果表明:神经网络PID控制器得到的割草机器人控制误差明显比传统的PID控制器误差小。该方法为神经网络的硬件实现提供了可靠的理论基础。
割草机器人;神经网络;轨迹规划;FPGA重构;PID控制器
随着农业机械化程度的不断推进,农业智能化和自动化也得到了飞速的发展,这期间涌现了各类智能作业机器人。割草机器人属于新型的农业机器人,在国内的研究和实际应用还比较少。智能控制理论是一门综合性很强的新兴学科,属于自动化领域的前沿学科之一,智能控制的发展为解决不确定性系统及复杂的非线性系统的控制开辟了新的途径。FPGA现场可编程逻辑门阵列应用技术是当前的一个研究热点,而对于基于FPGA的神经网络智能算法的研究具有重要的现实意义,将其作为嵌入式系统嵌入到割草机器人的轨迹规划和控制系统中,将会发挥重要的作用。
本文中智能割草机器人的姿态控制采用码盘读数的方式。一般机器人使用码盘读数是利用一定的间隔时间读数1次,然后从最底层得到上一次的轮角度数据,数据需要经过换算。在割草机器人智能控制系统中,由于只能将得到的角度值和坐标轴值进行累加,因此只能间隔一定时间读出码盘的测算值,然后将测算值和前一秒的位置进行比较,从而获得偏移量,进而补充写入机器人的内部姿态存储区,控制机器人的运动。机器人的坐标位置模型如图1所示。
图1 机器人坐标位置模型
cm=πDn/nCe
(1)
其中,Dn为机器人移动轮的直径;Cg为编码器的分辨率,该分辨率表示1个脉冲轮子转过的角度;n为轮轴到码盘轴的传动比;Cg为割草机器人移动距离和码盘脉冲的转换系数。因此,左轮和右轮之间的位移Δl、Δr和机器人的位移Δs分别为
Δl=cmNL
Δr=cmNR
Δs=(Δr+Δl)/2
(2)
其中,x、y向和转角的基本公式为
x′=x+Δscosθ
y′=y+Δssinθ
θ′=θ+Δθ
(3)
割草机器人通过左右轮移动距离的不同来改变方向。假设移动方向定义为Δθ,码盘的采样周期是20ms,当量比较小时有Δθ=(Δr+Δl),则机器人的位置变化如图2所示。
图2 机器人的运动模型
本设计中的割草机器人采用双差速进行驱动,驱动轮安装有高转矩、高速可逆直流电机驱动,驱动器上有高分辨率的光电码盘,码盘用于高精度的位置测量。
图3为机器人的运动轨迹控制曲线。轨迹控制包括位移和转角的控制,控制方式采用FPGA控制系统。FPGA是一种专用的集成控制电路,克服了传统控制电路可编程器件电路数有限的缺点,配合神经网络控制算法,可大大提高割草机器人的控制精度及机器人的设计效率。
图3 机器人运动轨迹
人工神经网络是人工建立的网络拓扑,以连续或者断续的输入和输出进行信息的加工和处理,是基于人的认知过程的一种新型算法。假如现在只有一些输入和输出数据,而对于输入如果得到输出的机理并不清楚,因此可以将输入和输出之间的关系看作是一个未知的网络,通过不断的训练输入和输出网络,调节各节点的权值,来获得满足需求的输出,其结构模型如图4所示。
图4 神经网络基本模型
模型由3层构成,包括输入层、输出层和隐含层,层数越多表示计算越精确,但需要的计算时间也越长,因此在实际应用时需要根据实际需求来设置层数。由大脑的神经元工作机理,人们构造了人工神经网络的数学模型,是大脑的模拟和简化,其结构如图5所示。
关注营养。营养是衡量创新菜的标准,如果菜品具备的色、香、味达到一定的标准,但营养与卫生方面存在问题,也会阻碍创新菜的研发与使用。所以,在创新中国菜时,需要结合营养搭配的理念,实现膳食均衡,不仅体现出创新菜的特色,还要体现出菜品的营养与原料的合理配制,才能保证创新菜足够环保,为享用者提供健康安全食用的条件[1]。
图5 神经网络生物学模型
图5中,神经元xi对输入信息的感知能力用wi表示,称为关联权;f(z)表示输出函数。其中,输出函数的表达式为
(4)
其中,sgn(.)为符号函数;θ为阈值。一般来说,一个神经网络是由多个输入和输出构成的,当wi确定时,不管什么样的输入xi,(i=1,2,…,n),都很容易得到输出值。确定wi的过程也是训练的过程,本次设计采用单层前向神经网络模型,表达式为
Y=f(WTX-θ)
(5)
其中,W=(wij)mxn为权重系数的矩阵;X、Y、θ分别为输入向量、输出向量和阈值向量。为了确定权数wij,修正输入输出偏差,权值的修正公式为
W(t+1)=W(t)+δW(t)
δW(t)=(δwij(t))
δwij(t)=εt((dj(t)-yj(t))xi(t))m×n
(6)
其中,xi(t)、dj(t)(i=1,2,…,m,j=1,2,…,n)分别为t组的输入和输出的期望数据;εt为学习的效率,可以调整计算的速度。同权值的修正公式类似,阈值的修正公式可以表示为
θ(t+1)=θ(t)+δθ(t)
δθ(t)=εt((dj(t)-yj(t))n×1
(7)
通过更新权数和阈值使得输入输出偏差趋于零。假设学习步骤的序号为t,t=0表示神经网络的初始状态,则割草机器人神经网络智能控制的算法实现步骤如下:
1)初始赋值。指定割草机器人的初始位置,将神经网络的权值和阈值分别赋值。
2)计算样本的输出值。选择一个轨迹控制样本为网络输入,计算轨迹的实际输出。对于第p个控制轨迹,其输出为Y(p)=[Y1(p),…,Yn(p)]。其中,Yi(p)=f(∑wijxj-θi),i=1,…,n。
3)计算输出误差,根据实际输出结果和期望结果的差值,确定输出误差。
4)对权数进行修正。如果δt=0,则不用调整;如果其值不为零,则根据权值的调整公式(6)进行调整。
5)训练样本。对输入或者输出误差进行干预,通过一定的学习算法,提高计算精度,从而可以提高割草机器人轨迹控制的准确性。
轨迹的控制以位移和转角为控制对象,控制器使用FPGA神经网络控制器。该控制器可以实现位移和转角的测量,并根据设定的值对位移和转角进行调节,其中调节算法选用神经网络算法。整个控制系统的硬件由FPGA核心控制器、光电编码器、传感器、信号放大电路、A/D转换模块和控制执行件组成。FPGA采用通断控制来计算,其控制器按照PID算法,通过FPGA输出一定周期的PWM波,调节继电器的导通时间,实现执行部件的开关,达到控制轨迹的目的,其结构如图6所示。
图6 轨迹控制系统控制框图
位移和角度信号通过A/D转换器由模拟量转换为数字量,将轨迹的检测值和设定值进行比较。如果不符合设定值,FPGA神经网络PID算法根据给定值和检测值求出PID控制需要的3个参数;然后,利用PID公式求控制量;最后,将控制量转换为波控制继电器。如果检测的值和设定值比较低于设定值,则将PWM的波占空比降低,提高轨迹的控制量的数值。
为了验证基于FPGA和神经网络算法的锄草机器人的智能轨迹控制能力,在田间对锄草机器人进行了测试。设计的机器人样机具有三指手爪结构,可实现苗间锄草和行间锄草,并可有效地避开禾苗,其结构和作业过程如图7所示。
图7 锄草机器人测试示意图
工作时,机器人的两个割刀连续入土切割,从而实现锄草功能。系统根据机器视觉来定位苗草的位置信息,并利用FPGA和神经网络算法进行精确定位与导航。为了验证锄草机器人的导航功能,在禾苗间和田间设置了许多障碍物,障碍物在三维空间的神经网络模型如图8所示。
图8 多个障碍物神经网络模型
图8中,每一层表示中间的路径点,每个方框都代表了一个障碍物,将各中间点的x和y坐标输入神经网络各层,模型就可以输出待调整的路径。调整后的路径如图9所示。
图9 穿越障碍物轨迹规划
图9中共有5个障碍物,各个障碍物靠得比较近,机器人可以看作是一个质点。不同算法的误差曲线如图10所示。由图10的最终收敛结果可以看出,利用FPGA和神经网络模型可以得到满意的结果。
为了验证神经网络算法的计算精度,将普通的PID控制器和神经网络PID控制器得到的结果进行了对比,结果表明:神经网络PID控制器得到的割草机器人控制误差要明显比传统的PID控制器误差小,从而验证了神经网络算法在割草机器人轨迹规划中的优越性,可以将其在控制系统中进行应用和推广。
图10 不同算法的误差曲线
基于FPGA技术和神经网络算法设计了一种新型的割草机器人,并采用成熟的BP算法公式,建立了割草机器人智能控制的数学模型。同时,利用FPGA构建了机器人的硬件控制系统,最后采用田间试验和文本输入的方式对机器人的轨迹规划能力和控制精度进行了试验测试。试验结果表明:割草机器人使用FPGA和神经网络算法后可以有效地穿越障碍物。将传统的PID算法和神经网络PID控制算法进行对比发现,神经网络算法可以有效地提高控制精度。由于时间和试验条件的限制,本研究没有引入其他算法进行验证。FPGA具有较强的拓扑功能,可以在其基础上开发各种智能算法,在今后的研究中可以采用更多的智能算法对机器人进行设计,从而提高割草机器人自动控制的智能化和控制精度。
[1] 陈运鹏,龙慧,刘志杰.我国施肥技术与施肥机械的研究现状及对策[J].农机化研究,2015,37(4):255-260.
[2] 姬江涛,郑治华,杜蒙蒙.农业机器人的发展现状及趋势[J].农机化研究,2014,36(12):1-4.
[3] 乔永亮,何东键,赵川源,等.基于多光谱图像和SVM的玉米田间杂草识别[J].农机化研究,2013,35(8):30-34.
[4] 姬长英,周俊.农业机械导航技术发展分析[J].农业机械学报,2014,45(9):44-54.
[5] 孟庆宽,何洁,仇瑞承,等.基于机器视觉的自然环境下作物行识别与导航线提取[J].光学学报,2014,34(7):1-7.
[6] 刘金龙,郑泽锋,丁为民,等.对靶喷雾红外探测器的设计与探测距离测试[J].江苏农业科学,2013,41 (7):368-370.
[7] 马立新,李长乐.智能 PID 在变频器控制系统中的应用研究[J].上海电力学院学报,2006(3):278-282.
[8] 马立新,陈闽轩,李长乐.基于BP神经网络的 PID 控制两轮驱动机器人[J].自然科学研究:中文版,2007,12(4):65-72.
[9] 刘玲,王耀南.基于神经网络和遗传算法的移动机器人路径规划[J].计算机应用, 2007, 24(2):264-268.
[10] 刘金帅,赖惠成,贾振红.基于YCbCr颜色空间和Fisher判别分析的棉花图像分割研究[J].作物学报,2011,37(7):1274-1279.
[11] 高国琴,李明.基于 K-means 算法的温室移动机器人导航路径识别[J].农业工程学报,2014,30(7): 25-33.
[12] 方莉娜,杨必胜.车载激光扫描数据的结构化道路自动提取方法[J].测绘学报,2013,42(2):260-267.
[13] 熊爱武. 基于车载激光云点数据的道路模型重建[J].地理信息世界,2013,20(6):86-88.
[14] 魏泽鼎,贾俊国,王占永.基于视觉传感器的棉花果实定位方法[J].农机化研究,2012,34(6):66-68.
[15] 王海青,姬长英,顾宝兴,等.基于机器视觉和支持向量机的温室黄瓜识别[J].农业机械学报,2012,43(3): 163-167.
[16] 王辉,毛文华,刘刚,等.基于视觉组合的苹果作业机器人识别与定位[J].农业机械学报,2012,43(12): 165-170.
[17] 李寒,王库,曹倩,等.基于机器视觉的番茄多目标提取与匹配[J].农业工程学报,2012,28(5):168-172.
[18] 项荣,应义斌,蒋焕煜.田间环境下果蔬采摘快速识别与定位方法研究进展[J].农业机械学报,2013,44(11):208-223.
[19] 蔡健荣,孙海波,李永平,等.基于双目立体视觉的果树三维信息获取与重构[J].农业机械学报,2012,43(3):153-156.
[20] 李立君,李昕,高自成,等.基于偏好免疫网络的油茶果采摘机器人图像识别算法[J].农业机械学报,2012,43(12):209-213.
[21] 王文庆,张涛,龚娜.基于多传感器融合的自主移动机器人测距系统[J].计算机测量与控制,2013,21 (2):343-345.
[22] 韦伟,周凌翱,刘青.一种便携式的红外测距系统[J].电子设计工程,2011,19(21):40-42.
[23] 刘金龙,丁为民,邓巍.果园对靶喷雾红外探测系统的设计与试验[J].江苏农业科学,2012,40(12):370-372.
[24] 李丽,李恒,何雄奎.红外靶标自动探测器的研制及试验[J].农业工程学报,2012,28(12):159-162.
[25] 马锃宏,李南,王汉斌,等.温室株间电驱锄草控制系统设计与试验[J].农业机械学报,2015,46(1):89-93.
Design of Intelligent Control Trajectory FPGA and Neural Network —Based on Robot Mower
Yuan Lulu, Zhang Weiwei
(Henan Polytechnic Institute, Nanyang 473000, China)
In order to improve the accuracy and intelligence of the mowing robot autonomous navigation and localization, design a model of mowing robot based on FPGA (field programmable gate array) and the neural network algorithm, the design using FPGA reconfigurable technology, to three layer back-propagation neural network as a typical model. Using BP algorithm formula, the design of the Intelligent Robot Mower control model. By using the FPGA technology, design the hardware system of the mowing robot. Finally, the design method of the input text, using field experiment, the robot trajectory planning ability and control precision was verified. The experimental results show that using FPGA and the neural network model can effectively through five obstacles, and can get the satisfactory results of trajectory planning. Compared to the ordinary PID controller and neural network PID controller control the error, results can be seen from the, neural network PID controller of the mowing robot control error to be significantly better than the traditional PID controller error small, the method for neural network hardware implementation provides a reliable theoretical basis.
mowing robot; neural network; trajectory planning; FPGA reconstruction; PID controller
2016-01-18
河南省自然科学基金项目(2015ZCB115);南阳市科技攻关项目(2012GG029)
袁路路(1982-),女,河南南阳人,讲师,硕士。
张娓娓(1985-),女,河南南阳人,助教,硕士,(E-mail)wwandll80@qq.com。
S24;TP391.41
A
1003-188X(2017)04-0212-05