基于路径弯曲度动态预瞄搜索算法的车辆路径跟踪控制软件系统设计

来源 :江苏农业科学 | 被引量 : 0次 | 上传用户:zhusimeng
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:为实现农业机械田间作业时的路径跟踪控制,在无人驾驶高速插秧机硬件系统基础上,采用基于规划路径弯曲度的动态搜索预瞄算法设计了路径跟踪控制软件。该算法以作业机械横向偏差和航向偏差作为航向模糊控制器的输入变量,以前轮转角期望值为输出变量,设计航向模糊控制器,实现航向控制;同时结合转向模糊免疫PID控制器对步进电机的PWM频率进行控制,实现水田作业机械的方向改变,从而完成作业机械沿规划路径自动行驶跟踪,并用Matlab/Simulink仿真平台对所采用的路径跟踪控制原理和所设计的模糊控制器进行了有效性验证,结果表明所采用的控制方法是可行的。经试验,插秧机以1 m/s的速度进行直线跟踪时最大的跟踪偏差只有4 cm,且始终围绕零值附近上下波动,计算平均跟踪偏差为0.84 cm,能够满足水田作业机械路径跟踪控制的要求。
  关键词:自动导航;农业机械;软件设计;路径规划;路径跟踪算法
  中图分类号: U463.6文献标志码: A文章编号:1002-1302(2015)02-0370-04
  收稿日期:2014-04-22
  基金项目:贵州省科学技术基金(编号:黔科合J字LKZS[2014]24);贵州省科学技术重点项目(编号:黔科合J字LKZS[2014]05);贵州省级重点学科资助课题(编号:黔学位办[2013]18);贵州省遵义师范学院教研基金(编号:13-56)。
  作者简介:熊中刚(1986—),男,湖南常德人,硕士,讲师,主要从事电气自动化和农业机械智能控制方面的研究。E-mail:[email protected]。随着计算机技术和传感器技术的不断发展,农业机械自动导航技术在很多发达国家和地区已有了很深入的研究,但亚洲除了日本、韩国和中国台湾外,其他国家和地区在这一领域研究较少[1]。农业机械自动导航技术是精细农业的基础平台,也是当前农业工程领域的研究热点之一[2]。然而在自动导航过程中,轮式机械在田间作业时需要实现地头转向和直线行走2个动作。地头转向是农业机械完成当前行作业,通过姿态调整以精确进入下一行的重要步骤,大多情况是一种180°转向动作,与直线行走有着明显不同[3-4]。目前,完成上述2个动作采用的车辆跟踪控制的方法主要有基于PID控制算法和基于模糊控制算法等[5]。本设计采用的是基于路径弯曲度动态预瞄搜索算法的车辆路径跟踪方法,该方法不仅可以使作业机械满足直线行走,而且可以提高农业机械换行作业的精度,缩短农业机械在地头转向中的时间,最终提高整个农业机械作业的效率。
  1系统总体原理设计
  路径跟踪就是车辆在获得已经规划好的目标路径的前提下,根据车辆当时的行驶状态和它与目标路线间的相对位置关系,按照一定的控制法则综合车辆的行驶速度和行驶方向,使车辆的运动轨迹与目标路径的偏离误差满足设计的要求。车辆的路径跟踪控制是根据车辆即时偏离行驶路线的横向偏差决定车辆的行驶方向。车辆的航向跟踪控制是在转向控制的基础上,使车辆沿目标航向角行驶,即实现车辆行驶方向[6]。本设计采用的车辆路径跟踪控制方法主要是基于规划路径弯曲度来模糊确定前视距离即预估距离的大小,然后由前视距离找到预瞄点,由预瞄点和车辆当前位置确定目标方向,由目标方向跟当前的航向角之间的差值得出航向偏差,横向偏差就是车辆当前的坐标与预定义路线的投影。
  2软件理论设计
  2.1基于规划路径弯曲度预瞄前视距离方法
  当驾驶员在实际驾驶过程中,不仅要观察车辆当前的道路状况,而且要同时考虑车辆前方一定距离范围内的道路信息,而前方路径的弯曲程度是决定车辆的转弯方向、转角大小及车速大小的重要因素[7].在路径跟踪控制中,预瞄距离的选择原则跟车辆的行驶速度有关,行驶速度快时,需要预瞄的距离就要大些,而车速慢时,距离小些就会达到控制效果。根据这一思想,路径的弯曲率的确定是进行路径预瞄的第一步,弯曲率的确定方法[8]如图1所示。
  如图1所示,图中β1是路径第1条折线和车辆前进方向的夹角改变量,βi是第i条折线和第i-1条折线的方向角改变量。定义C为所有区域路径的弯曲度和,则有:
  C=∑ni=1|βi|。(1)
  路径顺时针方向变化时,βi为负值,反之为正值。 βi取绝对值的意义是保证路径的弯曲不管是什么变化,其弯曲度是增加的,即弯曲的效果一致。采取文献[8]所述的车速v、预瞄距离d确定方法随C的变化而变化,其变化规律遵循C越大,v、d越小的原则,方法如下:
  预瞄距离确定后,预瞄点及车辆的航向偏差、横向偏差也随之确定,这样就为车辆的转向控制提供参数,实现路径跟踪。在实际预估的前视距离中还应包括车辆的本身轴距长度和车辆行驶的速度。
  2.2路径跟踪航向偏差和横向偏差确定
  当确定好前视距离后,就可确定跟踪路径上的预瞄点,如图2所示。
  插秧机当前航向方位θd上,插秧机当前的位置点Dq加上前视距离Lf得到点Ym,点Ym在规划路径上的投影点为Yg,即为预瞄点,则当前目标方向θm为:
  3软件功能的实现
  3.1软件功能设计及工作流程
  由于VB是一种可视化的、面向对象和采用事件驱动方式的结构化的高级程序语言,本研究以VB作为编程工具,进行控制软件的编写,根据系统设计功能的要求,本研究设计的软件主要由通讯模块、控制决策模块、显示模块、数据存贮模块等组成。通讯模块主要实现对水田作业机械的位置、航向角、前轮转角、速度等模块的信息采集;控制决策模块将所设计的各类模糊控制器、各类控制算法用计算机语言表述,并进行控制决策,实现作业机械的路径跟踪控制;显示模块实时显示作业机械的航向角、前轮转角、横向偏差、车速等信息,并能实时做出作业机械的路径跟踪图与规划路径图,数据存贮模块主要是完成对采集数据的存贮,为以后的数据分析和控制调整提供数据参考,其系统软件功能实现流程图如图3所示。   3.2串行通信设计
  系统软件采用SerialPort控件来进行串行通讯,该控件主要包括BaudRate、PortName、Parity、DataBitss、StopBit等属性,这几个属性主要用来设置波特率、端口号、奇偶校验、数据位以及停止位;主要方法有Read、Write、Open、Close、ReadtoBytes等用来读数据、写数据、打开端口、关闭端口和读取字节数;主要事件为DataReceived。串口的初始化主要是对SerialPort控件[9-10]的属性进行设置。系统软件的通讯参数设置部分主要用来进行串行端口的设置,波特率的设置、奇偶校验设置以及数据位的设置等。串行端口的选择可以根据当前PC机上可用串行端口的端口号;波特率是数据传输的速率,在该系统中默认为9 600 bps,可以根据需要选择其他的波特率;为提高数据的准确率,可使用奇偶校验来进行控制,奇偶校验设置根据需要可从Odd、Even、Mark、Space、None等几种方式中选择,本软件系统默认为None的方式;数据位的设置用于设置每个字节中数据位的长度通常为5~8位,默认为8位。所有参数设置完成后利用SerialPort控件的Open方法就能打开通讯串口。
  VisualBasic.net2008中进行串行通讯时,对于通讯数据的发送采用SerialPort的Write方法完成。然而所采用的Write方法主要分为3种形式,它们分别是Write(String)、Write(Byte(),Offset(),Count())和Write(Char(),Offset(),Count())。发送方式为SerialPort1.启动定时器。在Timer的Tick事件中就可以用 Write(Byte(),Offset(),Count()),该命令语句中的Byte()表示的含义是一个字节型的数组,Offset()表示的含义是字节数组中从0开始的字节偏移量,Count()表示的含义是所要写进命令语句中的字节数。
  该系统串口通信中数据的接收主要可以分为DataReceived驱动和利用定时器完成2种方式。第1种数据接收的方式就是通过DataReceived事件驱动的方式,该方式主要是在串行端口初始化的时候,对ReceivedBytesThreshold的属性值进行设置,所设置的该属性值即是表示对触发DataReceived事件进行设置的时候,其缓冲区所接收到的字节数。系统中默认ReceivedBytesThreshold的属性为1,通过测试实验证明了如果ReceivedBytesThreshold的属性设为1时,系统不能完全确保DataReceived 事件被接收到的每个字节都能引发,只有属性值大于1的ReceivedBytesThreshold能够完全按照要求把DataReceived事件进行触发。因此为了获取接收缓冲区中的数据字节数,当DataReceived事件产生后须要立即读取 BytesToRead 属性值,然后再根据通信需求将缓冲区中的相应字节读取出来。在VisualBasic.net2008中,如果要更改相应控件的属性和处理数据,则须要采用委托的方式进行。因为当数据从SerialPort对象上获取时,引发的相应DataReceived事件是发生在辅助线程上,如果要将主线程中的控件属性或其他UI元素等直接在DataReceived过程中进行修改,将会引发线程异常错误。
  第2种就是利用定时器的进行数据接收的方式。假设任意一串数据的接收时间为tms,则该定时器Timer的Interval属性值即为tms,接着可以在一个Button的Click事件后,立刻把接收缓冲区中的字节通过SerialPort控件的Read方法读取出来,而且在Timer的Tick事件中可以直接对窗体控件的相关属性进行修改,不需要采取委托的方式。在对缓冲区中的数据进行读取时,因为采取的是字节型的数据传输方式,所以应采用Read(Byte(),offset(),count())的方式完成。
  4路径跟踪控制仿真设计
  利用插秧机的运动学模型和所设计的路径跟踪算法,在基于航向跟踪控制系统的基础上,应用Matlab的Simulink环境进行仿真研究[11],建立插秧机路径跟踪控制系统的仿真框图,如图4所示。
  对直线y=3x进行跟踪仿真,所需的基本参数设置如下:由于规划路径为直线,所以C=0,则v=1.5 m/s,预瞄距离为4 m,被控对象在XOY坐标系中的初始位置为(0,0),初始航向角指向y轴的正方向。由此得出如图5的仿真图。从仿真结果图中可以看出在初始的一段距离内存在较大的稳态跟踪误差,研究中发现这是因为模型实际航向与规划路径存在夹角,经过控制器的调整后,完成了之后很平滑的直线跟踪。
  5路径跟踪控制试验分析
  实现路径跟踪是评价控制系统设计好坏的最终标准,因此本研究进行了相应的路径跟踪控制试验。
  首先人工开动插秧机到不同的两点如A、B处获得坐标,并连接A、B两点构成一条直线,以此直线为坐标的x轴,将插秧机的前后轴中心线与基准线重合,航向角与x轴方向一致。同时在插秧机的后轴中心点挂上一装有白色石灰的漏斗,当插秧机以1 m/s的速度自动行驶时,所得的跟踪偏差与行驶距离变化曲线如图6所示。
  从图中可以看出,插秧机以1 m/s的速度进行直线跟踪时最大的跟踪偏差只有4 cm,且始终围绕零值附近上下波动,计算平均跟踪偏差为0.84 cm。所设计的系统控制器具有良好的控制性能,能满足水田作业机械的直线跟踪控制的要求。
  6结论
  本研究在分析了作业机械路径跟踪预瞄的原理基础上,设计了基于规划路径弯曲度动态预瞄搜索算法的路径跟踪控制器,为水田作业机械的自动导航控制注入了灵魂。通过对插秧机的路径跟踪控制进行试验研究,结果表明基于自动导航的水田作业机械路径跟踪控制精度较高,所设计的控制系统性能良好,能满足水田作业机械的路径跟踪控制系统要求。   参考文献:
  [1]Reid J F,Zhang Q,Noguchi N,et al. Agricultural automatic guidance research in North America[J]. Computers and Electronics in Agriculture,2000,25(1/2):155-167.
  [2]Keicher R,Seufert H. Automatic guidance for agricultural vehicles in Europe[J]. Computers and Electronics in Agriculture,2000,25(1/2):169-194.
  [3]张智刚,罗锡文,李俊岭. 轮式农业机械自动转向控制系统研究[J]. 农业工程学报,2005,21(11):77-80.
  [4]于海业,马成林,并河清,等. 农用自动引导行走车的实验研究[J]. 农业工程学报,1998,14(2):36-39.
  [5]周建军,张漫,汪懋华,等. 基于模糊控制的农用车辆路线跟踪[J]. 农业机械学报,2009,40(4):151-156.
  [6]张智刚,罗锡文. 农业机械导航中的航向角度估计算法[J]. 农业工程学报,2008,24(5):110-114.
  [7]李庆中,顾伟康,叶秀清,等. 移动机器人路径跟踪的智能预瞄控制方法研究[J]. 机器人,2002,24(3):252-255.
  [8]陈无畏,李进,王檀彬,等. 视觉导航智能车辆的路径跟踪预瞄控制[J]. 机械工程学报,2008,44(10):277-282.
  [9]龚沛曾,陆慰民,杨志强. Visual Basic程序设计简明教程[M]. 北京:高等教育出版社,2001:218-220.
  [10]蒋加伏,张林峰. Visual Basic 程序设计教程[M]. 北京:北京邮电大学出版社,2006:128-130.
  [11]石辛民,郝整清. 模糊控制及其MATLAB仿真[M]. 北京:清华大学出版社,2008:127-129.郑子松,姜永平,李纲,等. 南京地区玻璃温室中地源热泵的加温效果及效益分析[J]. 江苏农业科学,2015,43(2):374-377.
其他文献
红海位于非洲和阿拉伯半岛之间,全长1932千米,最宽处306千米,面积45万平方千米。平均深度为558米,最深处3050米。它的西北端经苏伊士运河与地中海沟通,东南端经曼德海峡与亚丁湾及印度洋相连。  有人说:“红海是亚洲和非洲大陆夹窝里的海洋。”  说得不错,它就是在亚洲和非洲大陆的夹窝里诞生的。和别的海洋相比,它年轻得多,只有大约三百万年的历史。它的西边高高耸起埃塞俄比亚高原,铺开孕育古代文明
总部位于悉尼的互动电子游戏娱乐协会近日发布的一份调查报告显示,67%的新西兰人是电子游戏玩家,他們每天玩游戏的平均时间为85分钟。  报告说,对807个新西兰家庭中的2288人调查的结果显示,98%的新西兰家庭拥有电子游戏设备,近80%的家庭拥有不止一台电子游戏设备。新西兰电子游戏玩家的平均年龄是34岁。其中,73%的玩家年龄为18岁及以上。年龄超过65岁的新西兰人中,44%的人玩电子游戏。数据显
摘要:20世纪上半叶,伴随着我国职业教育的不断发展,我国职业教育教师资格标准也经历了从初创到逐渐完善的过程。对历史上不同时期职业教育教师资格标准的探索,在当前具有重要的启示意义。  关键词:职业教育;教师教育;教师资格制度    1903年,《奏定学堂章程》的颁布标志着我国近代职业教育教师资格制度的诞生。辛亥革命以后,民国政府继承清末的职业教育教师资格制度,并进行了卓有成效的探索,使我国职业教育教
在海的那一边,连着天的地方,仍旧是一片蓝宝石一样的海。当海平静时,你可以透过玻璃一样的海水看到色彩斑斓的海底世界。  各种打扮时尚的小鱼在水草间闲逛,妖娆的海带舞动着柔软的身躯;小刺球一样的海胆装点着不算高大的礁石;活泼的小虾在礁石间嬉戏、打闹。  自认为英俊的海马经常在最热闹的时候出现在珊瑚街上。当看到许许多多珊瑚虫似乎在向它招手时,它会昂首挺胸地穿过充满欢呼声的珊瑚街。天知道他有多少珊瑚虫粉丝
【摘要】通过对微课和翻转课堂概念和特点的研究,将微课的翻转课堂模式引入到《Matlab 程序设计与应用》教学中,给出了Matlab教学中微课翻转课堂模式的具体实施流程以及实施方案.  【关键词】微课; 翻转课堂; Matlab  一、微课  1.微课的起源与定义  “微课程”(Microlecture)这个概念,最早是由美国新墨西哥州圣胡安学院的高级教学设计师戴维·彭罗斯(David Penros
【美】《新闻周刊》2016年4月15日  泰国曼谷大理石寺的住持阿披查,去年在其社交媒体首页发表言论,呼吁其支持者焚烧清真寺以为在泰南动乱中丧生的佛教僧侣报仇。此番言论发布后的数月,其社交媒体关注人数激增,大多数人批评其“分裂思想”,但也有少数人表示力挺。  阿披查在接受采访时向记者展示了泰南三府动乱中丧生的佛教徒名单,并表示每起事件都应定性为穆斯林对佛教徒的“宗教袭击”,焚烧清真寺旨在为“牺牲”
自2017年底特朗普政府正式提出“印太战略”概念后,这一概念仍在发展中。2017年11月,美日印澳恢复举行四方安全对话(QUAD)后,今年6月7日,四国又在新加坡举行了第二次对话。会议结束后,四国仍旧采取各自发布新闻稿的形式,对外通报会议内容。  与上次四国对话一样,此次讨论的内容仍旧聚焦互联互通、海上安全、地区秩序与安全等议题。不过,值得注意的是,四国在声明中都强调要坚持东盟在“印太地区”的“中
【摘要】本文以数学建模教师团队的构建为主要目的,讨论了数学建模教师团队的现状,给出了几点意见,并由此构建了数学建模教师团队,这不仅提升了竞赛水平,也提升了教师团队的科研和教学水平.  【关键词】教师团队;数学建模;创新  2008年修订的全国大学生数学建模竞赛章程中明确提出,全国大学生数学建模竞赛目的在于激励学生学习数学的积极性,提高学生建立数学模型和运用计算机技术解决实际问题的综合能力,鼓励广大
5月31日,中国国家主席习近平特使、国务委员王勇出席蒙内铁路通车仪式,以习近平主席名义对铁路建成通车表示热烈祝贺。王勇在致辞中表示,中方愿同肯方一道,将蒙内铁路打造成為肯尼亚繁荣发展之路和中非合作转型升级新样板。肯尼亚总统肯雅塔在致辞中感谢习近平主席、中国政府和人民长期为肯国家建设所作贡献,表示愿以蒙内铁路通车为契机,不断深化两国全面战略合作伙伴关系。
又要搬家,这么多东西要搬,好麻烦啊!