本發(fā)明涉及導(dǎo)航技術(shù)應(yīng)用技術(shù)領(lǐng)域,具體涉及一種基于無人艇的彈性柵格式定點(diǎn)自動投餌方法。
背景技術(shù):
水產(chǎn)養(yǎng)殖品種多為異養(yǎng)生物,其生長必須從外界環(huán)境中攝入營養(yǎng),外源性投餌成為水產(chǎn)養(yǎng)殖生物獲得能量和蛋白質(zhì)的重要渠道。適用于池塘養(yǎng)殖的傳統(tǒng)投餌方法有:人工撐船投餌、投餌機(jī)定點(diǎn)投餌以及船載投餌機(jī)投餌。近年來,我國的水產(chǎn)養(yǎng)殖行業(yè)發(fā)展迅速,隨著各地養(yǎng)殖規(guī)模的不斷增大,傳統(tǒng)的人工投放餌料方法早已不再適合大規(guī)模的水產(chǎn)養(yǎng)殖。目前投餌機(jī)得到市場普遍認(rèn)可,其在池塘外圍安放,向池塘中定點(diǎn)定時投餌,一定程度上減少了勞動力輸入。但在大面積圍網(wǎng)養(yǎng)殖中,傳統(tǒng)投餌機(jī)受到安放位置的限制及投餌有效距離的限制,無法做到均勻投餌;且當(dāng)水域面積過大時,往往需要多臺投餌機(jī)協(xié)同操作。據(jù)資料顯示,每20畝水域需要一臺傳統(tǒng)投餌機(jī),而大規(guī)模養(yǎng)殖的水域面積往往達(dá)到數(shù)百畝甚至上千畝。構(gòu)建多臺傳統(tǒng)投餌機(jī)協(xié)同操作系統(tǒng)需架設(shè)線路網(wǎng),存在電線架設(shè)復(fù)雜程度高耗電量高的弊端,使投餌機(jī)協(xié)同操作成本大幅提高。
投餌點(diǎn)的不合理布置導(dǎo)致餌料難以被養(yǎng)殖魚類合理消費(fèi):部分區(qū)域多魚少餌,無法滿足魚苗生長需要;部分區(qū)域多餌少魚,造成餌料浪費(fèi)。餌料過度殘留亦將造成水體氮磷含量增加,富營養(yǎng)化加劇,引起養(yǎng)殖水體藍(lán)藻泛濫,影響魚類的生長導(dǎo)致產(chǎn)量下降。且由于傳統(tǒng)投餌機(jī)采用岸邊定點(diǎn)投餌,趨餌行為使得魚類分布集中于岸邊,不利于大面積水域資源的利用。而現(xiàn)階段船載投餌機(jī)的行進(jìn)路線多為人工確定,隨機(jī)性強(qiáng),難以合理遍布大面積養(yǎng)殖水域。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種基于無人艇的彈性柵格式定點(diǎn)自動投餌方法,該方法能實現(xiàn)在大規(guī)模養(yǎng)殖水域中均布定點(diǎn)自動投餌。
為解決上述技術(shù)問題,本發(fā)明所設(shè)計的基于無人艇的彈性柵格式定點(diǎn)自動投餌方法,其特征在于,它包括如下步驟:
步驟1:利用地圖的位置信息,得出矩形養(yǎng)殖水域位置的矩形輪廓的坐標(biāo)以及矩形養(yǎng)殖水域位置的矩形輪廓內(nèi)障礙物輪廓的地理位置坐標(biāo);
步驟2:在矩形養(yǎng)殖水域位置的矩形輪廓內(nèi)得到外投餌矩形理論輪廓線,該外投餌矩形理論輪廓線與矩形養(yǎng)殖水域位置的矩形輪廓具有同一個中心點(diǎn),另外,外投餌矩形理論輪廓線的長邊與矩形養(yǎng)殖水域位置的矩形輪廓的對應(yīng)長邊平行,且相距預(yù)設(shè)距離a,同時,外投餌矩形理論輪廓線的短邊與矩形養(yǎng)殖水域位置的矩形輪廓的對應(yīng)短邊平行,且相距預(yù)設(shè)距離a;
步驟3:分別將各障礙物輪廓在地圖上用可包含該障礙物輪廓的最小矩形簡化,該障礙物輪廓的最小矩形為內(nèi)投餌理論輪廓線;
步驟4:在外投餌矩形理論輪廓線內(nèi)部和內(nèi)投餌理論輪廓線外部所圍成的范圍內(nèi)根據(jù)投餌作業(yè)的實際需求確定無人艇航行起點(diǎn)及終點(diǎn);
步驟5:在外投餌矩形理論輪廓線內(nèi)部和內(nèi)投餌理論輪廓線外部所圍成的范圍內(nèi)以預(yù)設(shè)面積b為單位劃定正方形投餌柵格,以正方形投餌柵格的中心點(diǎn)作為可選的投餌點(diǎn);
步驟6:在正方形投餌柵格內(nèi)做彈性細(xì)分正方形柵格,彈性細(xì)分正方形柵格中與外投餌矩形理論輪廓線接觸的位置為彈性細(xì)分正方形柵格中的兩倍精度正方形柵格區(qū)域,彈性細(xì)分正方形柵格與內(nèi)投餌理論輪廓線接觸的位置也為彈性細(xì)分正方形柵格中的兩倍精度正方形柵格區(qū)域,彈性細(xì)分正方形柵格中其余的區(qū)域為標(biāo)準(zhǔn)精度正方形柵格區(qū)域;
步驟7:據(jù)步驟4確定的無人艇航行起點(diǎn)及終點(diǎn),以及步驟5確定的可選的投餌點(diǎn),按步驟7.1~步驟7.3執(zhí)行全局路徑算法生成航跡;
步驟7.1:將距離船舶當(dāng)前點(diǎn)最近的投餌點(diǎn)作為下一個投餌點(diǎn),在初始狀態(tài)下該當(dāng)前點(diǎn)即為起點(diǎn);
步驟7.2:判斷當(dāng)前點(diǎn)與下一投餌點(diǎn)直線路徑上是否存在障礙物,若不存在則執(zhí)行步驟7.2.1,否則執(zhí)行步驟7.2.2;
步驟7.2.1:取當(dāng)前點(diǎn)與下一投餌點(diǎn)間的直線路徑為最小代價路徑,生成投餌導(dǎo)航航跡;
步驟7.2.2:將彈性細(xì)分正方形柵格中的每個兩倍精度正方形柵格區(qū)域和每個標(biāo)準(zhǔn)精度正方形柵格區(qū)域的中心點(diǎn)定為可選導(dǎo)航路徑點(diǎn),將當(dāng)前點(diǎn)與目標(biāo)點(diǎn)之間各個可選導(dǎo)航路徑點(diǎn),執(zhí)行a*算法(參考文獻(xiàn)a*pathfindingforbeginners,bypatricklester,updatedjuly18,2005)求出當(dāng)前點(diǎn)至下一投餌點(diǎn)的最小代價路徑,遍歷各個目標(biāo)點(diǎn)及對應(yīng)的最小代價路徑生成投餌導(dǎo)航航跡;
步驟7.3:判斷當(dāng)前點(diǎn)是否為航行終點(diǎn):若是,則停止工作;若不是,則返回步驟7.1。
本發(fā)明的有益效果:
1、本專利所闡述的基于無人艇的彈性柵格式定點(diǎn)自動投餌方法可有效地減少大面積水產(chǎn)養(yǎng)殖投餌工作的人力物力投入,均布投餌點(diǎn)提高餌料利用率;
2、本方法可依據(jù)地理環(huán)境建立精度不同的彈性柵格,由此可有效地減少全局路徑算法計算量并避免無人艇航行過程中為避讓障礙物而過分遠(yuǎn)離障礙物的情況;
3、定點(diǎn)自動投餌方法思路清晰,算法簡單,使搭載自動投餌機(jī)器的無人艇能夠采用最小代價路徑規(guī)劃航跡,高效完成定點(diǎn)自動投餌作業(yè)。
附圖說明
圖1是基于無人艇的彈性柵格式定點(diǎn)自動投餌方法的流程圖;
圖2是全局路徑算法的流程圖;
圖3是柵格劃分原理圖;
其中,1—矩形養(yǎng)殖水域位置的矩形輪廓、2—障礙物輪廓、3—外投餌矩形理論輪廓線、4—內(nèi)投餌理論輪廓線、5—正方形投餌柵格、6—彈性細(xì)分正方形柵格、6.1—兩倍精度正方形柵格區(qū)域、6.2—標(biāo)準(zhǔn)精度正方形柵格區(qū)域。
具體實施方式
以下結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步的詳細(xì)說明:
一種基于無人艇的彈性柵格式定點(diǎn)自動投餌方法,如圖1和3所示,它包括如下步驟:
步驟1:利用地圖的位置信息,得出矩形養(yǎng)殖水域位置的矩形輪廓1的坐標(biāo)以及矩形養(yǎng)殖水域位置的矩形輪廓1內(nèi)障礙物輪廓2的地理位置坐標(biāo);
步驟2:為避免無人艇近岸擱淺,在矩形養(yǎng)殖水域位置的矩形輪廓1內(nèi)得到外投餌矩形理論輪廓線3,該外投餌矩形理論輪廓線3與矩形養(yǎng)殖水域位置的矩形輪廓1具有同一個中心點(diǎn),另外,外投餌矩形理論輪廓線3的長邊與矩形養(yǎng)殖水域位置的矩形輪廓1的對應(yīng)長邊平行,且相距預(yù)設(shè)距離a,同時,外投餌矩形理論輪廓線3的短邊與矩形養(yǎng)殖水域位置的矩形輪廓1的對應(yīng)短邊平行,且相距預(yù)設(shè)距離a;
步驟3:分別將各障礙物輪廓2在地圖上用可包含該障礙物輪廓2的最小矩形簡化,該障礙物輪廓2的最小矩形為內(nèi)投餌理論輪廓線4;
步驟4:在外投餌矩形理論輪廓線3內(nèi)部和內(nèi)投餌理論輪廓線4外部所圍成的范圍內(nèi)根據(jù)投餌作業(yè)的實際需求確定無人艇航行起點(diǎn)及終點(diǎn);
步驟5:在外投餌矩形理論輪廓線3內(nèi)部和內(nèi)投餌理論輪廓線4外部所圍成的范圍內(nèi)以預(yù)設(shè)面積b為單位劃定正方形投餌柵格5,以正方形投餌柵格5的中心點(diǎn)作為可選的投餌點(diǎn);
步驟6:在正方形投餌柵格5內(nèi)做彈性細(xì)分正方形柵格6,彈性細(xì)分正方形柵格6中與外投餌矩形理論輪廓線3接觸的位置為彈性細(xì)分正方形柵格6中的兩倍精度正方形柵格區(qū)域6.1,彈性細(xì)分正方形柵格6與內(nèi)投餌理論輪廓線4接觸的位置也為彈性細(xì)分正方形柵格6中的兩倍精度正方形柵格區(qū)域6.1,彈性細(xì)分正方形柵格6中其余的區(qū)域為標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2;
步驟7:據(jù)步驟4確定的無人艇航行起點(diǎn)及終點(diǎn),以及步驟5確定的可選的投餌點(diǎn),按步驟7.1~步驟7.3執(zhí)行全局路徑算法生成航跡,如圖2所示;
步驟7.1:將距離船舶當(dāng)前點(diǎn)最近的投餌點(diǎn)作為下一個投餌點(diǎn),在初始狀態(tài)下該當(dāng)前點(diǎn)即為起點(diǎn);
步驟7.2:判斷當(dāng)前點(diǎn)與下一投餌點(diǎn)直線路徑上是否存在障礙物,若不存在則執(zhí)行步驟7.2.1,否則執(zhí)行步驟7.2.2;
步驟7.2.1:取當(dāng)前點(diǎn)與下一投餌點(diǎn)間的直線路徑為最小代價路徑,生成投餌導(dǎo)航航跡;
步驟7.2.2:將彈性細(xì)分正方形柵格6中的每個兩倍精度正方形柵格區(qū)域6.1和每個標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2的中心點(diǎn)定為可選導(dǎo)航路徑點(diǎn),將當(dāng)前點(diǎn)與目標(biāo)點(diǎn)之間各個可選導(dǎo)航路徑點(diǎn),執(zhí)行a*算法求出當(dāng)前點(diǎn)至下一投餌點(diǎn)的最小代價路徑,遍歷各個目標(biāo)點(diǎn)及對應(yīng)的最小代價路徑生成投餌導(dǎo)航航跡;
步驟7.3:判斷當(dāng)前點(diǎn)是否為航行終點(diǎn):若是,則停止工作;若不是,則返回步驟7.1。
上述技術(shù)方案中,所述標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2的分辨率是正方形投餌柵格5的11倍,所述兩倍精度正方形柵格區(qū)域6.1的分辨率是標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2的兩倍。
上述技術(shù)方案中,所述正方形投餌柵格5的預(yù)設(shè)面積b為20畝。所述預(yù)設(shè)距離a為10m。
上述技術(shù)方案中,所述正方形投餌柵格5的邊長為110m,所述標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2的邊長為10m,所述兩倍精度正方形柵格區(qū)域6.1的邊長為10m。
上述技術(shù)方案中,彈性細(xì)分正方形柵格6劃分思想為,將障礙物附近和外投餌矩形理論輪廓線3區(qū)域柵格進(jìn)行細(xì)分(即兩倍精度正方形柵格區(qū)域6.1),可以使區(qū)域描述更加清晰;對于不存在障礙物的自由區(qū)域,采用原精度柵格(即標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2),可以提高環(huán)境建模的效率。本方法涉及的柵格細(xì)分指將原本精度為一個單位長度的柵格根據(jù)需求細(xì)分為1/2個單位長度。
所述步驟7.2.2的具體實施方法為,步驟7.2中若經(jīng)過障礙物,則a*算法開始工作,引入代價函數(shù),代價函數(shù)為f(n)=g(n)+h(n),g(n)表示從起點(diǎn)到當(dāng)前點(diǎn)的最優(yōu)路徑長度,h(n)表示當(dāng)前點(diǎn)到目標(biāo)點(diǎn)的估計最優(yōu)路徑長度,每個柵格的中心點(diǎn)為導(dǎo)航的節(jié)點(diǎn)(每個兩倍精度正方形柵格區(qū)域6.1和每個標(biāo)準(zhǔn)精度正方形柵格區(qū)域6.2的中心點(diǎn)定為可選導(dǎo)航路徑點(diǎn)),以文件的形式存儲,算出避開障礙物的最小代價路徑。
算法思想:a*算法是啟發(fā)式搜索算法的一種,用于尋找最優(yōu)路徑,其核心部分在于選擇當(dāng)前節(jié)點(diǎn)的下一個欲擴(kuò)展節(jié)點(diǎn)時引入代價函數(shù)f(n)=g(n)+h(n),g(n)表示從起點(diǎn)到當(dāng)前點(diǎn)的最優(yōu)路徑長度,h(n)表示當(dāng)前點(diǎn)到目標(biāo)點(diǎn)的估計最優(yōu)路徑長度。
算法步驟:(1)將起點(diǎn)s添加至開啟列表,置起點(diǎn)的f值為0。(2)尋找起點(diǎn)s相鄰的所有可到達(dá)的柵格,將其中心點(diǎn)作為節(jié)點(diǎn)添加至“開啟列表。(3)刪除開啟列表中的起點(diǎn)s,并將其添加至“關(guān)閉列表”。(4)以下一投餌點(diǎn)為目標(biāo)點(diǎn),分別以上述各個中心點(diǎn)為當(dāng)前點(diǎn),計算節(jié)點(diǎn)的f值。(5)選擇“開啟列表”中f值最低的節(jié)點(diǎn),對選中的節(jié)點(diǎn)作如下處理:(5.1).將該節(jié)點(diǎn)從“開啟列表”中刪除,添加至關(guān)閉列表中;(5.2).尋找該節(jié)點(diǎn)相鄰的所有可到達(dá)的柵格,將其中心點(diǎn)作為節(jié)點(diǎn)添加至“開啟列表”。重復(fù)步驟(4)~(5),直至目標(biāo)點(diǎn)被添加至“關(guān)閉列表”,這時最優(yōu)路徑被找到。
“開啟列表”實質(zhì)為待檢查節(jié)點(diǎn)的列表,“關(guān)閉列表”實質(zhì)為不需要再次檢查節(jié)點(diǎn)的列表,二者均為存儲節(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)。
本說明書未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。