本发明涉及导航技术应用技术领域,具体涉及一种基于无人艇的弹性栅格式定点自动投饵方法。
背景技术:
水产养殖品种多为异养生物,其生长必须从外界环境中摄入营养,外源性投饵成为水产养殖生物获得能量和蛋白质的重要渠道。适用于池塘养殖的传统投饵方法有:人工撑船投饵、投饵机定点投饵以及船载投饵机投饵。近年来,我国的水产养殖行业发展迅速,随着各地养殖规模的不断增大,传统的人工投放饵料方法早已不再适合大规模的水产养殖。目前投饵机得到市场普遍认可,其在池塘外围安放,向池塘中定点定时投饵,一定程度上减少了劳动力输入。但在大面积围网养殖中,传统投饵机受到安放位置的限制及投饵有效距离的限制,无法做到均匀投饵;且当水域面积过大时,往往需要多台投饵机协同操作。据资料显示,每20亩水域需要一台传统投饵机,而大规模养殖的水域面积往往达到数百亩甚至上千亩。构建多台传统投饵机协同操作系统需架设线路网,存在电线架设复杂程度高耗电量高的弊端,使投饵机协同操作成本大幅提高。
投饵点的不合理布置导致饵料难以被养殖鱼类合理消费:部分区域多鱼少饵,无法满足鱼苗生长需要;部分区域多饵少鱼,造成饵料浪费。饵料过度残留亦将造成水体氮磷含量增加,富营养化加剧,引起养殖水体蓝藻泛滥,影响鱼类的生长导致产量下降。且由于传统投饵机采用岸边定点投饵,趋饵行为使得鱼类分布集中于岸边,不利于大面积水域资源的利用。而现阶段船载投饵机的行进路线多为人工确定,随机性强,难以合理遍布大面积养殖水域。
技术实现要素:
本发明的目的在于提供一种基于无人艇的弹性栅格式定点自动投饵方法,该方法能实现在大规模养殖水域中均布定点自动投饵。
为解决上述技术问题,本发明所设计的基于无人艇的弹性栅格式定点自动投饵方法,其特征在于,它包括如下步骤:
步骤1:利用地图的位置信息,得出矩形养殖水域位置的矩形轮廓的坐标以及矩形养殖水域位置的矩形轮廓内障碍物轮廓的地理位置坐标;
步骤2:在矩形养殖水域位置的矩形轮廓内得到外投饵矩形理论轮廓线,该外投饵矩形理论轮廓线与矩形养殖水域位置的矩形轮廓具有同一个中心点,另外,外投饵矩形理论轮廓线的长边与矩形养殖水域位置的矩形轮廓的对应长边平行,且相距预设距离a,同时,外投饵矩形理论轮廓线的短边与矩形养殖水域位置的矩形轮廓的对应短边平行,且相距预设距离a;
步骤3:分别将各障碍物轮廓在地图上用可包含该障碍物轮廓的最小矩形简化,该障碍物轮廓的最小矩形为内投饵理论轮廓线;
步骤4:在外投饵矩形理论轮廓线内部和内投饵理论轮廓线外部所围成的范围内根据投饵作业的实际需求确定无人艇航行起点及终点;
步骤5:在外投饵矩形理论轮廓线内部和内投饵理论轮廓线外部所围成的范围内以预设面积b为单位划定正方形投饵栅格,以正方形投饵栅格的中心点作为可选的投饵点;
步骤6:在正方形投饵栅格内做弹性细分正方形栅格,弹性细分正方形栅格中与外投饵矩形理论轮廓线接触的位置为弹性细分正方形栅格中的两倍精度正方形栅格区域,弹性细分正方形栅格与内投饵理论轮廓线接触的位置也为弹性细分正方形栅格中的两倍精度正方形栅格区域,弹性细分正方形栅格中其余的区域为标准精度正方形栅格区域;
步骤7:据步骤4确定的无人艇航行起点及终点,以及步骤5确定的可选的投饵点,按步骤7.1~步骤7.3执行全局路径算法生成航迹;
步骤7.1:将距离船舶当前点最近的投饵点作为下一个投饵点,在初始状态下该当前点即为起点;
步骤7.2:判断当前点与下一投饵点直线路径上是否存在障碍物,若不存在则执行步骤7.2.1,否则执行步骤7.2.2;
步骤7.2.1:取当前点与下一投饵点间的直线路径为最小代价路径,生成投饵导航航迹;
步骤7.2.2:将弹性细分正方形栅格中的每个两倍精度正方形栅格区域和每个标准精度正方形栅格区域的中心点定为可选导航路径点,将当前点与目标点之间各个可选导航路径点,执行a*算法(参考文献a*pathfindingforbeginners,bypatricklester,updatedjuly18,2005)求出当前点至下一投饵点的最小代价路径,遍历各个目标点及对应的最小代价路径生成投饵导航航迹;
步骤7.3:判断当前点是否为航行终点:若是,则停止工作;若不是,则返回步骤7.1。
本发明的有益效果:
1、本专利所阐述的基于无人艇的弹性栅格式定点自动投饵方法可有效地减少大面积水产养殖投饵工作的人力物力投入,均布投饵点提高饵料利用率;
2、本方法可依据地理环境建立精度不同的弹性栅格,由此可有效地减少全局路径算法计算量并避免无人艇航行过程中为避让障碍物而过分远离障碍物的情况;
3、定点自动投饵方法思路清晰,算法简单,使搭载自动投饵机器的无人艇能够采用最小代价路径规划航迹,高效完成定点自动投饵作业。
附图说明
图1是基于无人艇的弹性栅格式定点自动投饵方法的流程图;
图2是全局路径算法的流程图;
图3是栅格划分原理图;
其中,1—矩形养殖水域位置的矩形轮廓、2—障碍物轮廓、3—外投饵矩形理论轮廓线、4—内投饵理论轮廓线、5—正方形投饵栅格、6—弹性细分正方形栅格、6.1—两倍精度正方形栅格区域、6.2—标准精度正方形栅格区域。
具体实施方式
以下结合附图和具体实施例对本发明作进一步的详细说明:
一种基于无人艇的弹性栅格式定点自动投饵方法,如图1和3所示,它包括如下步骤:
步骤1:利用地图的位置信息,得出矩形养殖水域位置的矩形轮廓1的坐标以及矩形养殖水域位置的矩形轮廓1内障碍物轮廓2的地理位置坐标;
步骤2:为避免无人艇近岸搁浅,在矩形养殖水域位置的矩形轮廓1内得到外投饵矩形理论轮廓线3,该外投饵矩形理论轮廓线3与矩形养殖水域位置的矩形轮廓1具有同一个中心点,另外,外投饵矩形理论轮廓线3的长边与矩形养殖水域位置的矩形轮廓1的对应长边平行,且相距预设距离a,同时,外投饵矩形理论轮廓线3的短边与矩形养殖水域位置的矩形轮廓1的对应短边平行,且相距预设距离a;
步骤3:分别将各障碍物轮廓2在地图上用可包含该障碍物轮廓2的最小矩形简化,该障碍物轮廓2的最小矩形为内投饵理论轮廓线4;
步骤4:在外投饵矩形理论轮廓线3内部和内投饵理论轮廓线4外部所围成的范围内根据投饵作业的实际需求确定无人艇航行起点及终点;
步骤5:在外投饵矩形理论轮廓线3内部和内投饵理论轮廓线4外部所围成的范围内以预设面积b为单位划定正方形投饵栅格5,以正方形投饵栅格5的中心点作为可选的投饵点;
步骤6:在正方形投饵栅格5内做弹性细分正方形栅格6,弹性细分正方形栅格6中与外投饵矩形理论轮廓线3接触的位置为弹性细分正方形栅格6中的两倍精度正方形栅格区域6.1,弹性细分正方形栅格6与内投饵理论轮廓线4接触的位置也为弹性细分正方形栅格6中的两倍精度正方形栅格区域6.1,弹性细分正方形栅格6中其余的区域为标准精度正方形栅格区域6.2;
步骤7:据步骤4确定的无人艇航行起点及终点,以及步骤5确定的可选的投饵点,按步骤7.1~步骤7.3执行全局路径算法生成航迹,如图2所示;
步骤7.1:将距离船舶当前点最近的投饵点作为下一个投饵点,在初始状态下该当前点即为起点;
步骤7.2:判断当前点与下一投饵点直线路径上是否存在障碍物,若不存在则执行步骤7.2.1,否则执行步骤7.2.2;
步骤7.2.1:取当前点与下一投饵点间的直线路径为最小代价路径,生成投饵导航航迹;
步骤7.2.2:将弹性细分正方形栅格6中的每个两倍精度正方形栅格区域6.1和每个标准精度正方形栅格区域6.2的中心点定为可选导航路径点,将当前点与目标点之间各个可选导航路径点,执行a*算法求出当前点至下一投饵点的最小代价路径,遍历各个目标点及对应的最小代价路径生成投饵导航航迹;
步骤7.3:判断当前点是否为航行终点:若是,则停止工作;若不是,则返回步骤7.1。
上述技术方案中,所述标准精度正方形栅格区域6.2的分辨率是正方形投饵栅格5的11倍,所述两倍精度正方形栅格区域6.1的分辨率是标准精度正方形栅格区域6.2的两倍。
上述技术方案中,所述正方形投饵栅格5的预设面积b为20亩。所述预设距离a为10m。
上述技术方案中,所述正方形投饵栅格5的边长为110m,所述标准精度正方形栅格区域6.2的边长为10m,所述两倍精度正方形栅格区域6.1的边长为10m。
上述技术方案中,弹性细分正方形栅格6划分思想为,将障碍物附近和外投饵矩形理论轮廓线3区域栅格进行细分(即两倍精度正方形栅格区域6.1),可以使区域描述更加清晰;对于不存在障碍物的自由区域,采用原精度栅格(即标准精度正方形栅格区域6.2),可以提高环境建模的效率。本方法涉及的栅格细分指将原本精度为一个单位长度的栅格根据需求细分为1/2个单位长度。
所述步骤7.2.2的具体实施方法为,步骤7.2中若经过障碍物,则a*算法开始工作,引入代价函数,代价函数为f(n)=g(n)+h(n),g(n)表示从起点到当前点的最优路径长度,h(n)表示当前点到目标点的估计最优路径长度,每个栅格的中心点为导航的节点(每个两倍精度正方形栅格区域6.1和每个标准精度正方形栅格区域6.2的中心点定为可选导航路径点),以文件的形式存储,算出避开障碍物的最小代价路径。
算法思想:a*算法是启发式搜索算法的一种,用于寻找最优路径,其核心部分在于选择当前节点的下一个欲扩展节点时引入代价函数f(n)=g(n)+h(n),g(n)表示从起点到当前点的最优路径长度,h(n)表示当前点到目标点的估计最优路径长度。
算法步骤:(1)将起点s添加至开启列表,置起点的f值为0。(2)寻找起点s相邻的所有可到达的栅格,将其中心点作为节点添加至“开启列表。(3)删除开启列表中的起点s,并将其添加至“关闭列表”。(4)以下一投饵点为目标点,分别以上述各个中心点为当前点,计算节点的f值。(5)选择“开启列表”中f值最低的节点,对选中的节点作如下处理:(5.1).将该节点从“开启列表”中删除,添加至关闭列表中;(5.2).寻找该节点相邻的所有可到达的栅格,将其中心点作为节点添加至“开启列表”。重复步骤(4)~(5),直至目标点被添加至“关闭列表”,这时最优路径被找到。
“开启列表”实质为待检查节点的列表,“关闭列表”实质为不需要再次检查节点的列表,二者均为存储节点的数据结构。
本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。