本發(fā)明涉及聲波定位領(lǐng)域,具體而言,涉及一種聲波導(dǎo)航定位方法和裝置。
背景技術(shù):
工業(yè)機器人導(dǎo)航與定位的方法眾多,常用的聲波導(dǎo)航定位方法主要是基于體空間中聲波的直線傳播原理進行定位。這種方法作用區(qū)域較小,主要用于小空間范圍內(nèi)的三維定位,并且在接收傳感器與發(fā)射傳感器之間有障礙物(如隔板)時,此種方法將不再適用,或者當空間中不只存在一種介質(zhì),如下部為液體,上層為空氣,此時超聲波傳播在氣液介質(zhì)處發(fā)生折射,此種方法將不適用。
在實際中經(jīng)常需要機器人在曲面或曲線構(gòu)件上進行行走,且這些曲面或曲線一般難以接觸,如為高空、埋置等情況,如大型儲罐儲油狀態(tài)下的底板檢測機器人的定位、球形儲罐內(nèi)部檢測機器人定位、管道內(nèi)檢測機器人(管道豬)定位。上述利用體空間中聲波的直線傳播原理進行定位的方法較難在這些情況下使用。
針對上述的問題,目前尚未提出有效的解決方案。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供了一種聲波導(dǎo)航定位方法和裝置,以至少解決利用聲波在空間中直線傳播的導(dǎo)航定位方法的定位范圍小、定位精度不夠高且無法在接收裝置和目標體之間存在障礙物、空間介質(zhì)不均或目標體在曲面上運動時進行定位的技術(shù)問題。
根據(jù)本發(fā)明實施例的一個方面,提供了一種聲波導(dǎo)航定位方法,包括:控制發(fā)射裝置在波導(dǎo)體中產(chǎn)生聲波,其中,目標物體包括:所述發(fā)射裝置,所述目標物體位于所述波導(dǎo)體的表面上,所述聲波從所述目標物體的位置開始沿所述波導(dǎo)體傳播;記錄接收裝置接收到所述聲波的接收時間,其中,所述接收裝置設(shè)置在所述波導(dǎo)體的預(yù)定位置,在所述聲波沿所述波導(dǎo)體傳播到所述預(yù)定位置時,所述接收裝置接收所述聲波;根據(jù)所述接收時間、所述聲波在所述波導(dǎo)體中傳播速度以及所述接收裝置的所述預(yù)定位置對所述目標物體的位置進行定位。
進一步地,所述波導(dǎo)體為直線類波導(dǎo)體或者曲線類波導(dǎo)體,所述接收裝置至少包括第一接收裝置和第二接收裝置,所述第一接收裝置設(shè)置在第一預(yù)定位置,所述第二接收裝置設(shè)置在第二預(yù)定位置,根據(jù)所述接收時間、所述聲波在所述波導(dǎo)體中傳播速度以及所述預(yù)定位置對所述目標物體的位置進行定位包括:獲取所述聲波傳播到所述第一預(yù)定位置的第一傳播時間和所述聲波傳播到所述第二預(yù)定位置的第二傳播時間的時間差值;根據(jù)所述時間差值和所述傳播速度計算出所述聲波傳播到所述第一預(yù)定位置的第一傳播距離與所述聲波傳播到所述第二預(yù)定位置的第二傳播距離的距離差值;根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置和所述距離差值對所述目標物體的位置進行定位,其中,所述目標物體的位置位于所述第一預(yù)定位置和所述第二預(yù)定位置之間。
進一步地,所述波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,所述接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,所述第一接收裝置設(shè)置在第一預(yù)定位置,所述第二接收裝置設(shè)置在第二預(yù)定位置,所述第三接收裝置設(shè)置在第三預(yù)定位置,根據(jù)所述接收時間、所述聲波在所述波導(dǎo)體中傳播速度以及所述預(yù)定位置對所述目標物體的位置進行定位包括:獲取第一時間差值,第二時間差值和第三時間差值,其中,所述第一時間差值為所述聲波傳播到所述第一預(yù)定位置的第一傳播時間和所述聲波傳播到所述第二預(yù)定位置的第二傳播時間的時間差值,所述第二時間差值為所述聲波傳播到所述第二預(yù)定位置的第二傳播時間和所述聲波傳播到所述第三預(yù)定位置的第三傳播時間的時間差值,所述第三時間差值為所述聲波傳播到所述第二預(yù)定位置的第二傳播時間和所述聲波傳播到所述第三預(yù)定位置的第三傳播時間的時間差值;根據(jù)所述第一時間差值、所述第二時間差值、所述第三時間差值以及所述傳播速度計算出第一距離差值、第二距離差值和第三距離差值,其中,所述第一距離差值為所述聲波傳播到所述第一預(yù)定位置的第一傳播距離與所述聲波傳播到所述第二預(yù)定位置的第二傳播距離的距離差值,所述第二距離差值為所述聲波傳播到所述第二預(yù)定位置的第二傳播距離與所述聲波傳播到所述第三預(yù)定位置的第三傳播距離的距離差值,所述第三距離差值為所述聲波傳播到所述第一預(yù)定位置的第一傳播距離與所述聲波傳播到所述第三預(yù)定位置的第三傳播距離的距離差值;根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置、第三預(yù)定位置以及所述第一距離差值、第二距離差值、第三距離差值對所述目標物體的位置進行定位。
進一步地,根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置、第三預(yù)定位置以及所述第一距離差值、第二距離差值、第三距離差值對所述目標物體的位置進行定位包括:根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置和所述第一距離差值在所述波導(dǎo)體上構(gòu)造第一雙曲線,其中,所述第一預(yù)定位置和所述第二預(yù)定位置為所述第一雙曲線的焦點;根據(jù)所述第二預(yù)定位置、所述第三預(yù)定位置和所述第二距離差值在所述波導(dǎo)體上構(gòu)造第二雙曲線,其中,所述第二預(yù)定位置和所述第三預(yù)定位置為所述第二雙曲線的焦點;根據(jù)所述第一預(yù)定位置、所述第三預(yù)定位置和所述第三距離差值在所述波導(dǎo)體上構(gòu)造第三雙曲線,其中,所述第一預(yù)定位置和所述第三預(yù)定位置為所述第三雙曲線的焦點;根據(jù)所述第一雙曲線、所述第二雙曲線和所述第三雙曲線的公共交點確定所述目標物體的位置。
進一步地,所述波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,所述接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,所述第一接收裝置設(shè)置在第一預(yù)定位置,所述第二接收裝置設(shè)置在第二預(yù)定位置,所述第三接收裝置設(shè)置在第三預(yù)定位置,所述發(fā)射裝置與每一個所述接收裝置之間設(shè)置有同步信號,根據(jù)所述接收時間、所述聲波在所述波導(dǎo)體中的傳播速度以及所述預(yù)定位置確定所述目標物體的位置包括:根據(jù)所述同步信號和所述接收時間獲取第一傳播時間、第二傳播時間和第三傳播時間,其中,所述第一傳播時間為所述聲波傳播到所述第一預(yù)定位置的傳播時間,所述第二傳播時間為所述聲波傳播到所述第二預(yù)定位置的傳播時間,所述第三傳播時間為所述聲波傳播到所述第三預(yù)定位置的傳播時間;根據(jù)所述第一傳播時間、所述第二傳播時間、所述第三傳播時間和所述傳播速度計算出第一傳播距離、第二傳播距離和第三傳播距離,其中,所述第一傳播距離為所述聲波從所述發(fā)射裝置的位置傳播到所述第一預(yù)定位置的傳播距離,所述第二傳播距離為所述聲波從所述發(fā)射裝置的位置傳播到所述第二預(yù)定位置的傳播距離,所述第三傳播距離為所述聲波從所述發(fā)射裝置的位置傳播到所述第三預(yù)定位置的傳播距離;根據(jù)所述第一傳播距離、第二傳播距離、第三傳播距離以及所述第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置對所述目標物體的位置進行定位。
進一步地,根據(jù)所述第一傳播距離、第二傳播距離、第三傳播距離以及所述第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置對所述目標物體的位置進行定位包括:以所述第一預(yù)定位置為圓心,以所述第一傳播距離為半徑,在所述波導(dǎo)體上構(gòu)造第一圓形;以所述第二預(yù)定位置為圓心,以所述第二傳播距離為半徑,在所述波導(dǎo)體上構(gòu)造第二圓形;以所述第三預(yù)定位置為圓心,以所述第三傳播距離為半徑,在所述波導(dǎo)體上構(gòu)造第三圓形;將所述第一圓形、所述第二圓形和所述第三圓形的公共交點確定為所述目標物體的位置。
根據(jù)本發(fā)明實施例的另一方面,還提供了一種聲波導(dǎo)航定位裝置,包括:控制單元,用于控制發(fā)射裝置在波導(dǎo)體中產(chǎn)生聲波,其中,目標物體包括:所述發(fā)射裝置,所述目標物體位于所述波導(dǎo)體的表面上,所述聲波從所述目標物體的位置開始沿所述波導(dǎo)體傳播;記錄單元,用于記錄接收裝置接收到所述聲波的接收時間,其中,所述接收裝置設(shè)置在所述波導(dǎo)體的預(yù)定位置,在所述聲波沿所述波導(dǎo)體傳播到所述預(yù)定位置時,所述接收裝置接收所述聲波;定位單元,用于根據(jù)所述接收時間、所述聲波在所述波導(dǎo)體中傳播速度以及所述接收裝置的所述預(yù)定位置對所述目標物體的位置進行定位。
進一步地,所述波導(dǎo)體為直線類波導(dǎo)體或者曲線類波導(dǎo)體,所述接收裝置至少包括第一接收裝置和第二接收裝置,所述第一接收裝置設(shè)置在第一預(yù)定位置,所述第二接收裝置設(shè)置在第二預(yù)定位置,所述定位單元包括:第一獲取模塊,用于獲取所述聲波傳播到所述第一預(yù)定位置的第一傳播時間和所述聲波傳播到所述第二預(yù)定位置的第二傳播時間的時間差值;第一計算模塊,用于根據(jù)所述時間差值和所述傳播速度計算出所述聲波傳播到所述第一預(yù)定位置的第一傳播距離與所述聲波傳播到所述第二預(yù)定位置的第二傳播距離的距離差值;第一定位模塊,用于根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置和所述距離差值對所述目標物體的位置進行定位,其中,所述目標物體的位置位于所述第一預(yù)定位置和所述第二預(yù)定位置之間。
進一步地,所述波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,所述接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,所述第一接收裝置設(shè)置在第一預(yù)定位置,所述第二接收裝置設(shè)置在第二預(yù)定位置,所述第三接收裝置設(shè)置在第三預(yù)定位置,所述定位單元包括:第二獲取模塊,用于獲取第一時間差值,第二時間差值和第三時間差值,其中,所述第一時間差值為所述聲波傳播到所述第一預(yù)定位置的第一傳播時間和所述聲波傳播到所述第二預(yù)定位置的第二傳播時間的時間差值,所述第二時間差值為所述聲波傳播到所述第二預(yù)定位置的第二傳播時間和所述聲波傳播到所述第三預(yù)定位置的第三傳播時間的時間差值,所述第三時間差值為所述聲波傳播到所述第二預(yù)定位置的第二傳播時間和所述聲波傳播到所述第三預(yù)定位置的第三傳播時間的時間差值;第二計算單元,用于根據(jù)所述第一時間差值、所述第二時間差值、所述第三時間差值以及所述傳播速度計算出第一距離差值、第二距離差值和第三距離差值,其中,所述第一距離差值為所述聲波傳播到所述第一預(yù)定位置的第一傳播距離與所述聲波傳播到所述第二預(yù)定位置的第二傳播距離的距離差值,所述第二距離差值為所述聲波傳播到所述第二預(yù)定位置的第二傳播距離與所述聲波傳播到所述第三預(yù)定位置的第三傳播距離的距離差值,所述第三距離差值為所述聲波傳播到所述第一預(yù)定位置的第一傳播距離與所述聲波傳播到所述第三預(yù)定位置的第三傳播距離的距離差值;第二定位模塊,用于根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置、第三預(yù)定位置以及所述第一距離差值、第二距離差值、第三距離差值對所述目標物體的位置進行定位。
進一步地,所述第二定位模塊包括:第一構(gòu)造子模塊,用于根據(jù)所述第一預(yù)定位置、所述第二預(yù)定位置和所述第一距離差值在所述波導(dǎo)體上構(gòu)造第一雙曲線,其中,所述第一預(yù)定位置和所述第二預(yù)定位置為所述第一雙曲線的焦點;第二構(gòu)造子模塊,用于根據(jù)所述第二預(yù)定位置、所述第三預(yù)定位置和所述第二距離差值在所述波導(dǎo)體上構(gòu)造第二雙曲線,其中,所述第二預(yù)定位置和所述第三預(yù)定位置為所述第二雙曲線的焦點;第三構(gòu)造子模塊,用于根據(jù)所述第一預(yù)定位置、所述第三預(yù)定位置和所述第三距離差值在所述波導(dǎo)體上構(gòu)造第三雙曲線,其中,所述第一預(yù)定位置和所述第三預(yù)定位置為所述第三雙曲線的焦點;第一確定子模塊,用于根據(jù)所述第一雙曲線、所述第二雙曲線和所述第三雙曲線的公共交點確定所述目標物體的位置。
進一步地,所述波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,所述接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,所述第一接收裝置設(shè)置在第一預(yù)定位置,所述第二接收裝置設(shè)置在第二預(yù)定位置,所述第三接收裝置設(shè)置在第三預(yù)定位置,所述發(fā)射裝置與每一個所述接收裝置之間設(shè)置有同步信號,所述定位單元包括:第三獲取模塊,用于根據(jù)所述同步信號和所述接收時間獲取第一傳播時間、第二傳播時間和第三傳播時間,其中,所述第一傳播時間為所述聲波傳播到所述第一預(yù)定位置的傳播時間,所述第二傳播時間為所述聲波傳播到所述第二預(yù)定位置的傳播時間,所述第三傳播時間為所述聲波傳播到所述第三預(yù)定位置的傳播時間;第三計算模塊,用于根據(jù)所述第一傳播時間、所述第二傳播時間、所述第三傳播時間和所述傳播速度計算出第一傳播距離、第二傳播距離和第三傳播距離,其中,所述第一傳播距離為所述聲波從所述發(fā)射裝置的位置傳播到所述第一預(yù)定位置的傳播距離,所述第二傳播距離為所述聲波從所述發(fā)射裝置的位置傳播到所述第二預(yù)定位置的傳播距離,所述第三傳播距離為所述聲波從所述發(fā)射裝置的位置傳播到所述第三預(yù)定位置的傳播距離;第三定位模塊,用于根據(jù)所述第一傳播距離、第二傳播距離、第三傳播距離以及所述第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置對所述目標物體的位置進行定位。
進一步地,所述第三定位模塊包括:第四構(gòu)造子模塊,用于以所述第一預(yù)定位置為圓心,以所述第一傳播距離為半徑,在所述波導(dǎo)體上構(gòu)造第一圓形;第五構(gòu)造子模塊,用于以所述第二預(yù)定位置為圓心,以所述第二傳播距離為半徑,在所述波導(dǎo)體上構(gòu)造第二圓形;第六構(gòu)造子模塊,用于以所述第三預(yù)定位置為圓心,以所述第三傳播距離為半徑,在所述波導(dǎo)體上構(gòu)造第三圓形;第二確定子模塊,用于將所述第一圓形、所述第二圓形和所述第三圓形的公共交點確定為所述目標物體的位置。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種存儲介質(zhì),所述存儲介質(zhì)包括存儲的程序,其中,在所述程序運行時控制所述存儲介質(zhì)所在設(shè)備執(zhí)行上述所述的聲波導(dǎo)航定位方法。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種處理器,所述處理器用于運行程序,其中,所述程序運行時執(zhí)行上述所述的聲波導(dǎo)航定位方法。
在本發(fā)明實施例中,采用控制發(fā)射裝置在波導(dǎo)體中產(chǎn)生聲波,其中,目標物體包括:所述發(fā)射裝置,所述目標物體位于所述波導(dǎo)體的表面上,所述聲波從所述目標物體的位置開始沿所述波導(dǎo)體傳播;記錄接收裝置接收到所述聲波的接收時間,其中,所述接收裝置設(shè)置在所述波導(dǎo)體的預(yù)定位置,在所述聲波沿所述波導(dǎo)體傳播到所述預(yù)定位置時,所述接收裝置接收所述聲波;根據(jù)所述接收時間、所述聲波在所述波導(dǎo)體中傳播速度以及所述預(yù)定位置對所述目標物體的位置進行定位的方式,通過目標物體攜帶發(fā)射裝置,利用發(fā)射裝置在波導(dǎo)體中產(chǎn)體聲波使聲波在波導(dǎo)體中傳播,并利用設(shè)置在預(yù)定位置的接收裝置接收聲波,達到了利用聲波對目標物體進行定位的目的,從而實現(xiàn)了在利用聲波對目標物體進行定位時,不受空間中障礙物及空間介質(zhì)影響的技術(shù)效果,并且定位范圍較大,進而解決了利用聲波在空間中直線傳播的導(dǎo)航定位方法的定位范圍小、定位精度不夠高且無法在接收裝置和目標體之間存在障礙物、空間介質(zhì)不均或目標體在曲面上運動時進行定位的技術(shù)問題。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
圖1是根據(jù)本發(fā)明實施例的一種聲波導(dǎo)航定位方法的流程圖;
圖2是根據(jù)本發(fā)明實施例的對曲線類波導(dǎo)體上的目標物體進行導(dǎo)航定位的示意圖;
圖3是根據(jù)本發(fā)明實施例的一種可選的聲波導(dǎo)航定位方法的流程圖;
圖4是根據(jù)本發(fā)明實施例的對行走于管道內(nèi)的機器人進行導(dǎo)航定位的示意圖;
圖5是根據(jù)本發(fā)明實施例的構(gòu)造雙曲線的示意圖;
圖6是根據(jù)本發(fā)明實施例的另一種可選的聲波導(dǎo)航定位方法的流程圖;
圖7是根據(jù)本發(fā)明實施例的對行走于儲罐底板的機器人進行導(dǎo)航定位的示意圖;
圖8是根據(jù)本發(fā)明實施例的另一種可選的聲波導(dǎo)航定位方法的流程圖;
圖9是根據(jù)本發(fā)明實施例的對行走于起伏的坡面的機器人進行導(dǎo)航定位的示意圖;
圖10是根據(jù)本發(fā)明實施例的對行走于球形儲罐內(nèi)、外表面的機器人進行導(dǎo)航定位的示意圖;
圖11是根據(jù)本發(fā)明實施例的一種聲波導(dǎo)航定位裝置的示意圖。
具體實施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應(yīng)當屬于本發(fā)明保護的范圍。
需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本發(fā)明的實施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤4送?,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
根據(jù)本發(fā)明實施例,提供了一種聲波導(dǎo)航定位方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
圖1是根據(jù)本發(fā)明實施例的一種聲波導(dǎo)航定位方法的流程圖,如圖1所示,該方法包括如下步驟:
步驟s102,控制發(fā)射裝置在波導(dǎo)體中產(chǎn)生聲波,其中,目標物體包括:發(fā)射裝置,目標物體位于波導(dǎo)體的表面上,聲波從目標物體的位置開始沿波導(dǎo)體傳播。目標物體是待定位的物體,目標物體位于波導(dǎo)體的表面上,可以在波導(dǎo)體的表面上移動,波導(dǎo)體可以進行聲波的傳播。目標物體攜帶有聲波的發(fā)射裝置,可選地,聲波發(fā)射裝置可以由聲波發(fā)射源和聲波發(fā)射傳感器兩部分組成,其中,聲波發(fā)射源用于驅(qū)動聲波發(fā)射傳感器產(chǎn)生聲波。目標物體可以同時攜帶有聲波發(fā)射源和聲波發(fā)射傳感器,也可以只攜帶有聲波發(fā)射傳感器,在聲波發(fā)射源對發(fā)出聲波驅(qū)動信號時,目標物體攜帶的聲波發(fā)射傳感器在波導(dǎo)體中的產(chǎn)生聲波,聲波由目標物體所在的位置沿波導(dǎo)體向周圍傳播。其中,聲波發(fā)射裝置在波導(dǎo)體中產(chǎn)生的聲波可以是多種形式的聲波,例如:應(yīng)力波、超聲導(dǎo)波、次聲波等。
步驟s104,記錄接收裝置接收到聲波的接收時間,其中,接收裝置設(shè)置在波導(dǎo)體的預(yù)定位置,在聲波沿波導(dǎo)體傳播到預(yù)定位置時,接收裝置接收聲波。接收裝置預(yù)先設(shè)置在波導(dǎo)體的預(yù)定位置上,并且預(yù)定位置是已知的,當聲波沿波導(dǎo)體傳播到接收裝置所在的位置時被接收裝置接收。記錄下接收裝置接收到聲波的時間。
步驟s106,根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及接收裝置的預(yù)定位置對目標物體的位置進行定位。聲波在波導(dǎo)體中傳播速度是已知的,根據(jù)聲波在波導(dǎo)體中傳播速度、聲波接收裝置接收聲波的時間以及聲波接收裝置的預(yù)定位置,即可以確定目標物體在波導(dǎo)體上所處的位置。
在本發(fā)明實施例中,采用控制發(fā)射裝置在波導(dǎo)體中產(chǎn)生聲波,其中,目標物體包括:發(fā)射裝置,目標物體位于波導(dǎo)體的表面上,聲波從目標物體的位置開始沿波導(dǎo)體傳播;記錄接收裝置接收到聲波的接收時間,其中,接收裝置設(shè)置在波導(dǎo)體的預(yù)定位置,在聲波沿波導(dǎo)體傳播到預(yù)定位置時,接收裝置接收聲波;根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及預(yù)定位置對目標物體的位置進行定位的方式,通過目標物體攜帶發(fā)射裝置,利用發(fā)射裝置在波導(dǎo)體中產(chǎn)體聲波使聲波在波導(dǎo)體中傳播,并利用設(shè)置在預(yù)定位置的接收裝置接收聲波,達到了利用聲波對目標物體進行定位的目的,從而實現(xiàn)了在利用聲波對目標物體進行定位時,不受空間中障礙物及空間介質(zhì)影響的技術(shù)效果,并且定位范圍較大,進而解決了利用聲波在空間中直線傳播的導(dǎo)航定位方法的定位范圍小、定位精度不夠高且無法在接收裝置和目標體之間存在障礙物、空間介質(zhì)不均或目標體在曲面上運動時進行定位的技術(shù)問題。
可選地,波導(dǎo)體為直線類波導(dǎo)體或者曲線類波導(dǎo)體,接收裝置至少包括第一接收裝置和第二接收裝置,第一接收裝置設(shè)置在第一預(yù)定位置,第二接收裝置設(shè)置在第二預(yù)定位置,根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及預(yù)定位置對目標物體的位置進行定位包括:獲取聲波傳播到第一預(yù)定位置的第一傳播時間和聲波傳播到第二預(yù)定位置的第二傳播時間的時間差值;根據(jù)時間差值和傳播速度計算出聲波傳播到第一預(yù)定位置的第一傳播距離與聲波傳播到第二預(yù)定位置的第二傳播距離的距離差值;根據(jù)第一預(yù)定位置、第二預(yù)定位置和距離差值對目標物體的位置進行定位,其中,目標物體的位置位于第一預(yù)定位置和第二預(yù)定位置之間。
在本發(fā)明實施例的一種可選的實施方式中,波導(dǎo)體可以是直線類波導(dǎo)體或者曲線類的波導(dǎo)體,其中,直線類波導(dǎo)體或者曲線類波導(dǎo)體是指長度與半徑之比非常大的波導(dǎo)體,例如:管道、棒材以及鋼梁等均可以認為是直線類波導(dǎo)體或者曲線類波導(dǎo)體。直線類波導(dǎo)體可以視作是曲線類波導(dǎo)體的一種特殊情況,以曲線類波導(dǎo)體為例:目標物體在曲線波導(dǎo)體上移動,根據(jù)曲線類波導(dǎo)體的實際長度,可以選擇在曲線類波導(dǎo)體上預(yù)先設(shè)置有兩個或者兩個以上的接收裝置來接收聲波,并且每一個接收裝置的位置是已知的。目標物體上攜帶有聲波發(fā)射裝置,當目標物體在曲線類波導(dǎo)體上移動,并且其位置處于預(yù)設(shè)設(shè)置的任意兩個接收裝置之間時,令發(fā)射裝置產(chǎn)生聲波,以使聲波在曲線類波導(dǎo)體上傳播,當聲波傳播至接收裝置所在的位置時,記錄下接收裝置接收到聲波的接收時間,進而根據(jù)不同的接收裝置接收到聲波的時間的差值以及聲波傳播速度,可以計算出聲波傳播到不同的接收裝置的距離差值。由于接收裝置的位置是已知的,而聲波傳播到不同的接收裝置的距離差值也就是目標物體到不同的接收裝置的距離的差值,因此,可以確定出目標物體的具體位置。如圖2所示,目標物體位于接收裝置1和接收裝置2所處的位置之間,t1是聲波傳播到接收裝置1所用的時間,t2是聲波傳播到接收裝置2所用的時間,其中,由于聲波發(fā)射裝置發(fā)出聲波的時間是未知的,所以t1和t2是未知的,但聲波傳播到接收裝置1和接收裝置2的時間差t2-t1是已知的,也就是接收裝置1接收到聲波的時間與接收裝置2接收到聲波的時間差。d是聲波傳播到接收裝置1的傳播距離,是未知的,d是接收裝置1與接收裝置2的距離,是已知的。d與d具有如下關(guān)系:
因此,可以得出
圖3是根據(jù)本發(fā)明實施例的一種可選的聲波導(dǎo)航定位方法的流程圖,作為本發(fā)明實施例的一種可選的實施方式,當波導(dǎo)體為曲線類的波導(dǎo)體時,根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及預(yù)定位置對目標物體的位置進行定位可以包括如下步驟:
步驟s301,各聲波接收傳感器接收聲波信號。在本發(fā)明實施例中,目標物體在曲線波導(dǎo)體上移動,其中,曲線類波導(dǎo)體是指長度與半徑之比非常大的波導(dǎo)體。例如:管道、棒材以及鋼梁等均可以認為是曲線類波導(dǎo)體。曲線波導(dǎo)體上預(yù)先設(shè)置至少兩個接收傳感器。目標物體上攜帶有聲波發(fā)射裝置,在對目標物體進行定位時,聲波發(fā)射裝置發(fā)出聲波,聲波在波導(dǎo)體中傳播,并由聲波接收傳感器接收。
步驟s302,計算各接收傳感器接收信號的時間差。根據(jù)聲波接收傳感器接收到聲波的時間,確定任意兩個接收傳感器接收到聲波信號的時間差。
步驟s303,di=(dij-v△tij)/2,利用任意一對接收傳感器接收聲波信號的時間差計算目標物體距離第i個傳感器的距離。由于聲波在波導(dǎo)體中傳播速度是已知的,任意兩個接收傳感器之間的距離也是已知的,因此,可以計算出聲波傳播到接收傳感器的傳播距離,也就是目標物體距離接收傳感器的距離。其中,無論是接收傳感器之間的距離,還是目標物體與傳感器之間的距離,都是按照聲波在波導(dǎo)體中的傳播路徑計算的。
步驟s304,確定目標物體的位置。已知接收傳感器的位置,根據(jù)目標物體與接收傳感器的距離即可確定目標物體的位置。
例如:如圖4所示,以對管道內(nèi)的進行控測的機器人進行定位為例,機器人行走于長輸管道內(nèi)部,由于長輸管道的長度與半徑之比非常大,因此,長輸管道可以認為是曲線類的波導(dǎo)體。機器人攜帶有聲波發(fā)射傳感器(相當于發(fā)射裝置),聲波接收傳感器陣列1、2、3、4(相當于接收裝置)設(shè)置與管道外表面,用于接收沿管道結(jié)構(gòu)傳播的聲波。在對機器進行定位時,控制聲波發(fā)射傳感器向管道結(jié)構(gòu)中發(fā)射聲波,并由聲波接收傳感器接收聲波。如圖4所示,當機器人運動到圖示位置時,可以選擇通過接收傳感器2和接收傳感器3來進行定位,即根據(jù)聲波接收傳感器2和3接收到的聲波信號,計算出聲波傳播到接收傳感器2和接收傳感器3的時間差△t23,其中,d2為機器人與接收傳感器2的距離,d23為接收傳感器2和接收傳感器3之間的距離,v是聲波在管道結(jié)構(gòu)中的傳播速度,則可以利用關(guān)系式:
可選地,波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,第一接收裝置設(shè)置在第一預(yù)定位置,第二接收裝置設(shè)置在第二預(yù)定位置,第三接收裝置設(shè)置在第三預(yù)定位置,根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及預(yù)定位置對目標物體的位置進行定位包括:獲取第一時間差值,第二時間差值和第三時間差值,其中,第一時間差值為聲波傳播到第一預(yù)定位置的第一傳播時間和聲波傳播到第二預(yù)定位置的第二傳播時間的時間差值,第二時間差值為聲波傳播到第二預(yù)定位置的第二傳播時間和聲波傳播到第三預(yù)定位置的第三傳播時間的時間差值,第三時間差值為聲波傳播到第二預(yù)定位置的第二傳播時間和聲波傳播到第三預(yù)定位置的第三傳播時間的時間差值;根據(jù)第一時間差值、第二時間差值、第三時間差值以及傳播速度計算出第一距離差值、第二距離差值和第三距離差值,其中,第一距離差值為聲波傳播到第一預(yù)定位置的第一傳播距離與聲波傳播到第二預(yù)定位置的第二傳播距離的距離差值,第二距離差值為聲波傳播到第二預(yù)定位置的第二傳播距離與聲波傳播到第三預(yù)定位置的第三傳播距離的距離差值,第三距離差值為聲波傳播到第一預(yù)定位置的第一傳播距離與聲波傳播到第三預(yù)定位置的第三傳播距離的距離差值;根據(jù)第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置以及第一距離差值、第二距離差值、第三距離差值對目標物體的位置進行定位。
在本發(fā)明實施例的一種可選的實施方式中,波導(dǎo)體可以是平面類波導(dǎo)體或者曲面類波導(dǎo)體,其中,平面類波導(dǎo)體可以視作是曲面類波導(dǎo)體的一種特殊情況,以曲面類波導(dǎo)體為例:目標物體在曲面類波導(dǎo)體上移動,根據(jù)曲面類波導(dǎo)體的實際面積的大小,可以選擇在曲面類波導(dǎo)體上預(yù)先設(shè)置有三個或者三個以上的接收裝置來接收聲波,并且每一個接收裝置的位置是已知的。目標物體上攜帶有聲波發(fā)射裝置,在對目標物體進行定位時,令發(fā)射裝置產(chǎn)生聲波,以使聲波從目標物體所處的位置沿曲面類波導(dǎo)體向四周傳播。當聲波傳播至接收裝置所在的位置時,記錄下接收裝置接收到聲波的接收時間。根據(jù)任意三個接收裝置(第一接收裝置、第二接收裝置和第三接收裝置)接收到聲波的時間的差值以及聲波傳播速度,可以計算出聲波傳播到上述三個接收裝置的距離差值。由于每一個接收裝置的位置是已知的,而聲波傳播到不同的接收裝置的距離差值也就是目標物體到不同的接收裝置的距離的差值,因此,可以確定出目標物體的具體位置。
作為本發(fā)明實施例的一種可選的實施方式,由于聲波傳播到不同的接收裝置的距離差值也就是目標物體到不同的接收裝置的距離的差值,可以根據(jù)目標物體與任意兩個傳感器的距離差值,構(gòu)造多條雙曲線,將多條雙曲線的公共交點作為目標物體的位置,從而實現(xiàn)對目標物體的定位。可選地,接收傳感器至少包括:接收傳感器1、接收傳感器2和接收傳感器3,先以接收傳感器1和接收傳感器2為焦點,根據(jù)目標物體到接收傳感器1和接收傳感器2的距離差值,構(gòu)造第一雙曲線,然后以接收傳感器2和接收傳感器3為焦點,根據(jù)目標物體到接收傳感器2和接收傳感器3的距離差值,構(gòu)造第二雙曲線,再以接收傳感器1和接收傳感器3為焦點,根據(jù)目標物體到接收傳感器1和接收傳感器3的距離差值,構(gòu)造第三雙曲線,將三條雙曲線的公共交點作為目標物體的位置。即根據(jù)第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置以及第一距離差值、第二距離差值、第三距離差值對目標物體的位置進行定位包括:根據(jù)第一預(yù)定位置、第二預(yù)定位置和第一距離差值在波導(dǎo)體上構(gòu)造第一雙曲線,其中,第一預(yù)定位置和第二預(yù)定位置為第一雙曲線的焦點;根據(jù)第二預(yù)定位置、第三預(yù)定位置和第二距離差值在波導(dǎo)體上構(gòu)造第二雙曲線,其中,第二預(yù)定位置和第三預(yù)定位置為第二雙曲線的焦點;根據(jù)第一預(yù)定位置、第三預(yù)定位置和第三距離差值在波導(dǎo)體上構(gòu)造第三雙曲線,其中,第一預(yù)定位置和第三預(yù)定位置為第三雙曲線的焦點;根據(jù)第一雙曲線、第二雙曲線和第三雙曲線的公共交點確定目標物體的位置。需要說明的是,在構(gòu)造多條雙曲線,以對目標物體進行定位時,可以根據(jù)目標物體與作為焦點的預(yù)定位置的距離差值,僅構(gòu)造雙曲線在其中一支,這樣構(gòu)造出的多條雙曲線的公共交點只有一個,該交點即為目標物體的定位位置;也可以在構(gòu)造雙曲線的過程中,不考慮目標物體與作為焦點的預(yù)定位置的遠近,從而構(gòu)造出完整的兩條雙曲線,這樣構(gòu)造出的雙曲線的公共交點有兩個,需要再根據(jù)目標物體與兩焦點的距離差的正負,消除一個偽定位點,進而確定出目標物體的定位位置。如圖5所示,構(gòu)造三條雙曲線得到三條雙曲線的兩個公共交點,根據(jù)目標物體與任意兩個接收傳感器距離差值,可以去除一個公共交點,將剩下的公共交點確定為目標物體的位置。需要說明的是,在對曲面波導(dǎo)體上的目標物體定位過程中,在構(gòu)造雙曲線時,應(yīng)當沿聲波在曲面波導(dǎo)體中的傳播路徑計算目標物體與接收裝置的距離差。
作為本發(fā)明實施例的一種可選的實施方式,如圖6所示,當波導(dǎo)體為曲面類的波導(dǎo)體時,根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及預(yù)定位置對目標物體的位置進行定位可以包括如下步驟:
步驟s601,各聲波接收傳感器接收聲波信號。在本發(fā)明實施例中,目標物體在曲面類波導(dǎo)體上移動。曲面類波導(dǎo)體上預(yù)先設(shè)置至少三個接收傳感器。目標物體上攜帶有聲波發(fā)射裝置,在對目標物體進行定位時,聲波發(fā)射裝置發(fā)出聲波,聲波在波導(dǎo)體中傳播,并由聲波接收傳感器接收。
步驟s602,計算各接收傳感器接收信號的時間差。根據(jù)聲波接收傳感器接收到聲波的時間,確定任意兩個接收傳感器接收到聲波信號的時間差。
步驟s603,△lij=v×△tij,計算聲波發(fā)射傳感器到任意兩個聲波接收傳感器的距離差(△l12、△l13、△l23...)。由于聲波在波導(dǎo)體中傳播速度是已知的,因此,可以計算出聲波傳播到任意兩個接收傳感器是傳播距離的差值。
步驟s604,以任意兩個聲波傳感器的位置為焦點,根據(jù)目標物體到兩相聲波傳感器的距離差,構(gòu)造多條雙曲線。由于接收傳感器至少為三個,因此,至少可以構(gòu)造出三條雙曲線。
步驟s605,確定多條雙曲線的公共交點,并將公共交點作為目標物體的位置。
例如:如圖7所示,以對在儲罐底板行走的機器人進行定位為例,機器人上攜帶有聲波發(fā)射傳感器,在儲罐底板邊外部設(shè)置聲波接收傳感器1、聲波接收傳感器2和聲波接收傳感器3,在對機器人進行定位時,控制聲波發(fā)射傳感器在某一時刻發(fā)射聲波,聲波接收傳感器接收沿儲罐底板傳播的聲波,并記錄接收到聲波的時間。由于聲波的發(fā)射時間未知,因此無法獲取到聲波發(fā)射到接收的絕對時間,但可獲得各聲波接收傳感器接收到的聲波信號的時間差值,其中,聲波接收傳感器1與聲波接收傳感器2接收到聲波的時間差為△t12,聲波接收傳感器1與聲波接收傳感器3接收到聲波的時間差為△t13,聲波接收傳感器2與聲波接收傳感器3接收到聲波的時間差為△t23。由于聲波沿儲罐底板傳播速度已知,因此,可以求得聲波發(fā)射源到各接收傳感器的距離差,其中,聲波發(fā)射源到接收傳感器1和到聲波傳感器2的距離差為△l12、聲波發(fā)射源到接收傳感器1和到聲波傳感器3的距離差為△l13、聲波發(fā)射源到接收傳感器2和到聲波傳感器3的距離差為△l23。即:ma-mb=△l12,ma-mc=△l13,mb-mc=△l23。以任意兩個聲波接收傳感器位置坐標為焦點,根據(jù)聲波發(fā)射源到相應(yīng)的兩個接收傳感器的距離差構(gòu)造出三條雙曲線,并將雙曲線的公共交點確定為機器人在儲罐底板上的位置。
可選地,波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,第一接收裝置設(shè)置在第一預(yù)定位置,第二接收裝置設(shè)置在第二預(yù)定位置,第三接收裝置設(shè)置在第三預(yù)定位置,發(fā)射裝置與每一個接收裝置之間設(shè)置有同步信號,根據(jù)接收時間、聲波在波導(dǎo)體中的傳播速度以及預(yù)定位置確定目標物體的位置包括:根據(jù)同步信號和接收時間獲取第一傳播時間、第二傳播時間和第三傳播時間,其中,第一傳播時間為聲波傳播到第一預(yù)定位置的傳播時間,第二傳播時間為聲波傳播到第二預(yù)定位置的傳播時間,第三傳播時間為聲波傳播到第三預(yù)定位置的傳播時間;根據(jù)第一傳播時間、第二傳播時間、第三傳播時間和傳播速度計算出第一傳播距離、第二傳播距離和第三傳播距離,其中,第一傳播距離為聲波從發(fā)射裝置的位置傳播到第一預(yù)定位置的傳播距離,第二傳播距離為聲波從發(fā)射裝置的位置傳播到第二預(yù)定位置的傳播距離,第三傳播距離為聲波從發(fā)射裝置的位置傳播到第三預(yù)定位置的傳播距離;根據(jù)第一傳播距離、第二傳播距離、第三傳播距離以及第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置對目標物體的位置進行定位。
在本發(fā)明實施例的一種可選的實施方式中,發(fā)射裝置與每一個接收裝置之間設(shè)置有同步信號,在發(fā)射裝置發(fā)出的聲波沿波導(dǎo)體傳播并被接收裝置接收之后,根據(jù)同步信號和接收裝置接收到聲波的時間,可以得到聲波傳到每一個接收裝置的絕對時間。由于聲波傳播速度已知,因此,可以計算出目標物體與每一個接收裝置之間的距離,該距離是聲波從目標物體所處的位置沿波導(dǎo)體傳播到接收裝置的傳播距離??蛇x地,可以采用如下方式對目標物體的位置進行定位:分別以每一個接收裝置所處的位置為圓心,以目標物體到該接收裝置的距離為半徑,構(gòu)造出多個圓,將圓的公共交點確定為目標物體的位置。即:以第一預(yù)定位置為圓心,以第一傳播距離為半徑,在平面類波導(dǎo)體或者曲面類波導(dǎo)體上構(gòu)造第一圓形;以第二預(yù)定位置為圓心,以第二傳播距離為半徑,在平面類波導(dǎo)體或者曲面類波導(dǎo)體上構(gòu)造第二圓形;以第三預(yù)定位置為圓心,以第三傳播距離為半徑,在平面類波導(dǎo)體或者曲面類波導(dǎo)體上構(gòu)造第三圓形;將第一圓形、第二圓形和第三圓形的公共交點確定為目標物體的位置。
作為本發(fā)明實施例的一種可選的實施方式,如圖8所示,當波導(dǎo)體為平面類波導(dǎo)體或者曲面類的波導(dǎo)體,且發(fā)射裝置與每一個接收裝置之間設(shè)置有同步信號時,根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及預(yù)定位置對目標物體的位置進行定位可以包括如下步驟:
步驟s801,各聲波接收傳感器接收聲波信號。在本發(fā)明實施例中,平面類波導(dǎo)體可以視作是曲面類波導(dǎo)體的一種特殊情況,以曲面類波導(dǎo)體為例:目標物體在曲面類波導(dǎo)體上移動。曲面類波導(dǎo)體上預(yù)先設(shè)置至少三個接收傳感器。發(fā)射傳感器與接收傳感器之間設(shè)置有同步信號。目標物體上攜帶有聲波發(fā)射裝置,在對目標物體進行定位時,聲波發(fā)射裝置發(fā)出聲波,聲波在波導(dǎo)體中傳播,并由聲波接收傳感器接收。
步驟s802,計算聲波從發(fā)射傳感器傳播到接收傳感器的絕對時間(t1,t2,t3...)。由于發(fā)射傳感器與接收傳感器之間設(shè)置有同步信號,因此,在接收傳感器接收到聲波時,即可得到聲波從發(fā)射傳感器傳播到接收傳感器的絕對時間(傳播過程的時間)。
步驟s803,li=v×ti,計算聲波從發(fā)射傳感器傳播到各接收傳感器的傳播距離(l1、l2、l3...)。由于聲波在波導(dǎo)體中傳播速度是已知的,因此,可以計算出聲波傳播到每一個接收傳感器的傳播距離。
步驟s804,以接收傳感器為圓心,以聲波從發(fā)射傳感器傳播到該接收傳感器的傳播距離為半徑,構(gòu)造多個圓。由于接收傳感器至少為三個,因此,至少可以構(gòu)造出三個圓。其中,構(gòu)造出的圓的半徑是沿聲波在曲面波導(dǎo)體中的傳播路徑計算的。
步驟s805,確定多圓的公共交點,并將公共交點作為目標物體的位置。
例如:如圖9所示,以對在起伏的坡面行走的機器人進行定位為例,機器人攜帶有聲波發(fā)射傳感器,聲波發(fā)射源發(fā)射信號驅(qū)動聲波發(fā)射傳感器產(chǎn)生聲波,聲波發(fā)射傳感器與聲波接收傳感器之間設(shè)置有同步信號,在聲波發(fā)射傳感器發(fā)射聲波的同時,聲波接收傳感器開始接受聲波信號,如此便可獲得聲波從發(fā)射傳感器到各接收傳感器之間的絕對時間,如聲波從發(fā)射傳感器傳播到接收傳感器1的傳播時間t1,聲波從發(fā)射傳感器傳播到接收傳感器2的傳播時間t2,以及聲波從發(fā)射傳感器傳播到接收傳感器1的傳播時間t3,由于聲波在起伏坡面的傳播速度v是已知的,利用距離l=v×t可以計算出聲波發(fā)射源到各聲波接收傳感器的距離,其中,距離l是聲波沿著起伏坡面?zhèn)鞑サ穆窂介L。以每一個聲波接收傳感器為圓心,以聲波發(fā)射源到該聲波接收傳感器的距離為半徑,在起伏坡面上作出多個圓,多個圓有公共交點即為聲波發(fā)射源的位置,也就是機器人的位置。
例如:如圖10所示,以對在球形儲罐內(nèi)、外表面行走的機器人進行定位為例,機器人沿球罐內(nèi)、外表面行走,并攜帶有聲波發(fā)射傳感器,聲波接收傳感1、聲波接收傳感2和聲波接收傳感3設(shè)置于球罐的外表面上,用于接收沿球罐結(jié)構(gòu)傳播的聲波。通過在聲波發(fā)射傳感器和聲波接收傳感器之間設(shè)置同步信號,并由聲波接收傳感器記錄接收聲波的時間,可得到從發(fā)射傳感器到各接收傳感器之間的絕對時間,如聲波從發(fā)射傳感器傳播到接收傳感器1的傳播時間t1、聲波從發(fā)射傳感器傳播到接收傳感器2的傳播時間t2以及聲波從發(fā)射傳感器傳播到接收傳感器3的傳播時間t3,再根據(jù)已知的聲波在球罐結(jié)構(gòu)中的傳播速度,進一步計算出聲波發(fā)射傳感器到各接收傳感器的距離l1、l2、l3,此距離為聲波沿球罐結(jié)構(gòu)傳播的路徑長。以每一個接收傳感器為圓心,以聲波發(fā)射傳感器到各接收傳感器的距離為半徑,在球罐表面上作出一系列的圓,這些圓的交點便是機器人的位置。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,本發(fā)明實施例還提供了一種存儲介質(zhì),所述存儲介質(zhì)包括存儲的程序,其中,在所述程序運行時控制所述存儲介質(zhì)所在設(shè)備執(zhí)行上述的聲波導(dǎo)航定位方法。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,本發(fā)明實施例還提供了一種處理器,所述處理器用于運行程序,其中,所述程序運行時執(zhí)行上述的聲波導(dǎo)航定位方法。
根據(jù)本發(fā)明實施例,提供了一種聲波定位裝置,圖11是根據(jù)本發(fā)明實施例的一種聲波導(dǎo)航定位裝置的示意圖,如圖11所示,該裝置包括:
控制單元1110,用于控制發(fā)射裝置在波導(dǎo)體中產(chǎn)生聲波,其中,目標物體包括:發(fā)射裝置,目標物體位于波導(dǎo)體的表面上,聲波從目標物體的位置開始沿波導(dǎo)體傳播。目標物體是待定位的物體,目標物體位于波導(dǎo)體的表面上,可以在波導(dǎo)體的表面上移動,波導(dǎo)體可以進行聲波的傳播。目標物體攜帶有聲波的發(fā)射裝置,可選地,聲波發(fā)射裝置可以由聲波發(fā)射源和聲波發(fā)射傳感器兩部分組成,其中,聲波發(fā)射源用于驅(qū)動聲波發(fā)射傳感器產(chǎn)生聲波。目標物體可以同時攜帶有聲波發(fā)射源和聲波發(fā)射傳感器,也可以只攜帶有聲波發(fā)射傳感器,在聲波發(fā)射源對發(fā)出聲波驅(qū)動信號時,目標物體攜帶的聲波發(fā)射傳感器在波導(dǎo)體中的產(chǎn)生聲波,聲波由目標物體所在的位置沿波導(dǎo)體向周圍傳播。其中,聲波發(fā)射裝置在波導(dǎo)體中產(chǎn)生的聲波可以是多種形式的聲波,例如:應(yīng)力波、超聲導(dǎo)波、次聲波等。
記錄單元1120,用于記錄接收裝置接收到聲波的接收時間,其中,接收裝置設(shè)置在波導(dǎo)體的預(yù)定位置,在聲波沿波導(dǎo)體傳播到預(yù)定位置時,接收裝置接收聲波。接收裝置預(yù)先設(shè)置在波導(dǎo)體的預(yù)定位置上,并且預(yù)定位置是已知的,當聲波沿波導(dǎo)體傳播到接收裝置所在的位置時被接收裝置接收。記錄下接收裝置接收到聲波的時間。
定位單元1130,用于根據(jù)接收時間、聲波在波導(dǎo)體中傳播速度以及接收裝置的預(yù)定位置對目標物體的位置進行定位。聲波在波導(dǎo)體中傳播速度是已知的,根據(jù)聲波在波導(dǎo)體中傳播速度、聲波接收裝置接收聲波的時間以及聲波接收裝置的預(yù)定位置,即可以確定目標物體在波導(dǎo)體上所處的位置。
在本發(fā)明實施例中,通過目標物體攜帶發(fā)射裝置,利用發(fā)射裝置在波導(dǎo)體中產(chǎn)體聲波使聲波在波導(dǎo)體中傳播,并利用設(shè)置在預(yù)定位置的接收裝置接收聲波,達到了利用聲波對目標物體進行定位的目的,從而實現(xiàn)了在利用聲波對目標物體進行定位時,不受空間中障礙物及空間介質(zhì)影響的技術(shù)效果,并且定位范圍較大,進而解決了利用聲波在空間中直線傳播的導(dǎo)航定位方法的定位范圍小、定位精度不夠高且無法在接收裝置和目標體之間存在障礙物、空間介質(zhì)不均或目標體在曲面上運動時進行定位的技術(shù)問題。
可選地,波導(dǎo)體為直線類波導(dǎo)體或者曲線類波導(dǎo)體,接收裝置至少包括第一接收裝置和第二接收裝置,第一接收裝置設(shè)置在第一預(yù)定位置,第二接收裝置設(shè)置在第二預(yù)定位置,定位單元包括:第一獲取模塊,用于獲取聲波傳播到第一預(yù)定位置的第一傳播時間和聲波傳播到第二預(yù)定位置的第二傳播時間的時間差值;第一計算模塊,用于根據(jù)時間差值和傳播速度計算出聲波傳播到第一預(yù)定位置的第一傳播距離與聲波傳播到第二預(yù)定位置的第二傳播距離的距離差值;第一定位模塊,用于根據(jù)第一預(yù)定位置、第二預(yù)定位置和距離差值對目標物體的位置進行定位,其中,目標物體的位置位于第一預(yù)定位置和第二預(yù)定位置之間。
在本發(fā)明實施例的一種可選的實施方式中,波導(dǎo)體可以是直線類波導(dǎo)體或者曲線類的波導(dǎo)體,其中,直線類波導(dǎo)體或者曲線類波導(dǎo)體是指長度與半徑之比非常大的波導(dǎo)體,例如:管道、棒材以及鋼梁等均可以認為是直線類波導(dǎo)體或者曲線類波導(dǎo)體。直線類波導(dǎo)體可以視作是曲線類波導(dǎo)體的一種特殊情況,以曲線類波導(dǎo)體為例:目標物體在曲線波導(dǎo)體上移動,根據(jù)曲線類波導(dǎo)體的實際長度,可以選擇在曲線類波導(dǎo)體上預(yù)先設(shè)置有兩個或者兩個以上的接收裝置來接收聲波,并且每一個接收裝置的位置是已知的。目標物體上攜帶有聲波發(fā)射裝置,當目標物體在曲線類波導(dǎo)體上移動,并且其位置處于預(yù)設(shè)設(shè)置的任意兩個接收裝置之間時,令發(fā)射裝置產(chǎn)生聲波,以使聲波在曲線類波導(dǎo)體上傳播,當聲波傳播至接收裝置所在的位置時,記錄下接收裝置接收到聲波的接收時間,進而根據(jù)不同的接收裝置接收到聲波的時間的差值以及聲波傳播速度,可以計算出聲波傳播到不同的接收裝置的距離差值。由于接收裝置的位置是已知的,而聲波傳播到不同的接收裝置的距離差值也就是目標物體到不同的接收裝置的距離的差值,因此,可以確定出目標物體的具體位置。如圖2所示,目標物體位于接收裝置1和接收裝置2所處的位置之間,t1是聲波傳播到接收裝置1所用的時間,t2是聲波傳播到接收裝置2所用的時間,其中,由于聲波發(fā)射裝置發(fā)出聲波的時間是未知的,所以t1和t2是未知的,但聲波傳播到接收裝置1和接收裝置2的時間差t2-t1是已知的,也就是接收裝置1接收到聲波的時間與接收裝置2接收到聲波的時間差。d是聲波傳播到接收裝置1的傳播距離,是未知的,d是接收裝置1與接收裝置2的距離,是已知的。d與d具有如下關(guān)系:
因此,可以得出
例如:如圖4所示,以對管道內(nèi)的進行控測的機器人進行定位為例,機器人行走于長輸管道內(nèi)部,由于長輸管道的長度與半徑之比非常大,因此,長輸管道可以認為是曲線類的波導(dǎo)體。機器人攜帶有聲波發(fā)射傳感器(相當于發(fā)射裝置),聲波接收傳感器陣列1、2、3、4(相當于接收裝置)設(shè)置與管道外表面,用于接收沿管道結(jié)構(gòu)傳播的聲波。在對機器進行定位時,控制聲波發(fā)射傳感器向管道結(jié)構(gòu)中發(fā)射聲波,并由聲波接收傳感器接收聲波。如圖4所示,當機器人運動到圖示位置時,可以選擇通過接收傳感器2和接收傳感器3來進行定位,即根據(jù)聲波接收傳感器2和3接收到的聲波信號,計算出聲波傳播到接收傳感器2和接收傳感器3的時間差△t23,其中,d2為機器人與接收傳感器2的距離,d23為接收傳感器2和接收傳感器3之間的距離,v是聲波在管道結(jié)構(gòu)中的傳播速度,則可以利用關(guān)系式:
可選地,波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,第一接收裝置設(shè)置在第一預(yù)定位置,第二接收裝置設(shè)置在第二預(yù)定位置,第三接收裝置設(shè)置在第三預(yù)定位置,定位單元包括:第二獲取模塊,用于獲取第一時間差值,第二時間差值和第三時間差值,其中,第一時間差值為聲波傳播到第一預(yù)定位置的第一傳播時間和聲波傳播到第二預(yù)定位置的第二傳播時間的時間差值,第二時間差值為聲波傳播到第二預(yù)定位置的第二傳播時間和聲波傳播到第三預(yù)定位置的第三傳播時間的時間差值,第三時間差值為聲波傳播到第二預(yù)定位置的第二傳播時間和聲波傳播到第三預(yù)定位置的第三傳播時間的時間差值;第二計算單元,用于根據(jù)第一時間差值、第二時間差值、第三時間差值以及傳播速度計算出第一距離差值、第二距離差值和第三距離差值,其中,第一距離差值為聲波傳播到第一預(yù)定位置的第一傳播距離與聲波傳播到第二預(yù)定位置的第二傳播距離的距離差值,第二距離差值為聲波傳播到第二預(yù)定位置的第二傳播距離與聲波傳播到第三預(yù)定位置的第三傳播距離的距離差值,第三距離差值為聲波傳播到第一預(yù)定位置的第一傳播距離與聲波傳播到第三預(yù)定位置的第三傳播距離的距離差值;第二定位模塊,用于根據(jù)第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置以及第一距離差值、第二距離差值、第三距離差值對目標物體的位置進行定位。
在本發(fā)明實施例的一種可選的實施方式中,波導(dǎo)體可以是平面類波導(dǎo)體或者曲面類波導(dǎo)體,其中,平面類波導(dǎo)體可以視作是曲面類波導(dǎo)體的一種特殊情況,以曲面類波導(dǎo)體為例:目標物體在曲面類波導(dǎo)體上移動,根據(jù)曲面類波導(dǎo)體的實際面積的大小,可以選擇在曲面類波導(dǎo)體上預(yù)先設(shè)置有三個或者三個以上的接收裝置來接收聲波,并且每一個接收裝置的位置是已知的。目標物體上攜帶有聲波發(fā)射裝置,在對目標物體進行定位時,令發(fā)射裝置產(chǎn)生聲波,以使聲波從目標物體所處的位置沿曲面類波導(dǎo)體向四周傳播。當聲波傳播至接收裝置所在的位置時,記錄下接收裝置接收到聲波的接收時間。根據(jù)任意三個接收裝置(第一接收裝置、第二接收裝置和第三接收裝置)接收到聲波的時間的差值以及聲波傳播速度,可以計算出聲波傳播到上述三個接收裝置的距離差值。由于每一個接收裝置的位置是已知的,而聲波傳播到不同的接收裝置的距離差值也就是目標物體到不同的接收裝置的距離的差值,因此,可以確定出目標物體的具體位置。
作為本發(fā)明實施例的一種可選的實施方式,由于聲波傳播到不同的接收裝置的距離差值也就是目標物體到不同的接收裝置的距離的差值,可以根據(jù)目標物體與任意兩個傳感器的距離差值,構(gòu)造多條雙曲線,將多條雙曲線的公共交點作為目標物體的位置,從而實現(xiàn)對目標物體的定位??蛇x地,接收傳感器至少包括:接收傳感器1、接收傳感器2和接收傳感器3,先以接收傳感器1和接收傳感器2為焦點,根據(jù)目標物體到接收傳感器1和接收傳感器2的距離差值,構(gòu)造第一雙曲線,然后以接收傳感器2和接收傳感器3為焦點,根據(jù)目標物體到接收傳感器2和接收傳感器3的距離差值,構(gòu)造第二雙曲線,再以接收傳感器1和接收傳感器3為焦點,根據(jù)目標物體到接收傳感器1和接收傳感器3的距離差值,構(gòu)造第三雙曲線,將三條雙曲線的公共交點作為目標物體的位置。即,第二定位模塊包括:第一構(gòu)造子模塊,用于根據(jù)第一預(yù)定位置、第二預(yù)定位置和第一距離差值在波導(dǎo)體上構(gòu)造第一雙曲線,其中,第一預(yù)定位置和第二預(yù)定位置為第一雙曲線的焦點;第二構(gòu)造子模塊,用于根據(jù)第二預(yù)定位置、第三預(yù)定位置和第二距離差值在波導(dǎo)體上構(gòu)造第二雙曲線,其中,第二預(yù)定位置和第三預(yù)定位置為第二雙曲線的焦點;第三構(gòu)造子模塊,用于根據(jù)第一預(yù)定位置、第三預(yù)定位置和第三距離差值在波導(dǎo)體上構(gòu)造第三雙曲線,其中,第一預(yù)定位置和第三預(yù)定位置為第三雙曲線的焦點;確定子模塊,用于根據(jù)第一雙曲線、第二雙曲線和第三雙曲線的公共交點確定目標物體的位置。需要說明的是,在構(gòu)造多條雙曲線,以對目標物體進行定位時,可以根據(jù)目標物體與作為焦點的預(yù)定位置的距離差值,僅構(gòu)造雙曲線在其中一支,這樣構(gòu)造出的多條雙曲線的公共交點只有一個,該交點即為目標物體的定位位置;也可以在構(gòu)造雙曲線的過程中,不考慮目標物體與作為焦點的預(yù)定位置的遠近,從而構(gòu)造出完整的兩條雙曲線,這樣構(gòu)造出的雙曲線的公共交點有兩個,需要再根據(jù)目標物體與兩焦點的距離差的正負,消除一個偽定位點,進而確定出目標物體的定位位置。如圖5所示,構(gòu)造三條雙曲線得到三條雙曲線的兩個公共交點,根據(jù)目標物體與任意兩個接收傳感器距離差值,可以去除一個公共交點,將剩下的公共交點確定為目標物體的位置。需要說明的是,在對曲面波導(dǎo)體上的目標物體定位過程中,在構(gòu)造雙曲線時,應(yīng)當沿聲波在曲面波導(dǎo)體中的傳播路徑計算目標物體與接收裝置的距離差。
例如:如圖7所示,以對在儲罐底板行走的機器人進行定位為例,機器人上攜帶有聲波發(fā)射傳感器,在儲罐底板邊外部設(shè)置聲波接收傳感器1、聲波接收傳感器2和聲波接收傳感器3,在對機器人進行定位時,控制聲波發(fā)射傳感器在某一時刻發(fā)射聲波,聲波接收傳感器接收沿儲罐底板傳播的聲波,并記錄接收到聲波的時間。由于聲波的發(fā)射時間未知,因此無法獲取到聲波發(fā)射到接收的絕對時間,但可獲得各聲波接收傳感器接收到的聲波信號的時間差值,其中,聲波接收傳感器1與聲波接收傳感器2接收到聲波的時間差為△t12,聲波接收傳感器1與聲波接收傳感器3接收到聲波的時間差為△t13,聲波接收傳感器2與聲波接收傳感器3接收到聲波的時間差為△t23。由于聲波沿儲罐底板傳播速度已知,因此,可以求得聲波發(fā)射源到各接收傳感器的距離差,其中,聲波發(fā)射源到接收傳感器1和到聲波傳感器2的距離差為△l12、聲波發(fā)射源到接收傳感器1和到聲波傳感器3的距離差為△l13、聲波發(fā)射源到接收傳感器2和到聲波傳感器3的距離差為△l23。即:ma-mb=△l12,ma-mc=△l13,mb-mc=△l23。以任意兩個聲波接收傳感器位置坐標為焦點,根據(jù)聲波發(fā)射源到相應(yīng)的兩個接收傳感器的距離差構(gòu)造出三條雙曲線,并將雙曲線的公共交點確定為機器人在儲罐底板上的位置。
可選地,波導(dǎo)體為平面類波導(dǎo)體或者曲面類波導(dǎo)體,接收裝置至少包括第一接收裝置、第二接收裝置和第三接收裝置,第一接收裝置設(shè)置在第一預(yù)定位置,第二接收裝置設(shè)置在第二預(yù)定位置,第三接收裝置設(shè)置在第三預(yù)定位置,發(fā)射裝置與每一個接收裝置之間設(shè)置有同步信號,定位單元包括:第三獲取模塊,用于根據(jù)同步信號和接收時間獲取第一傳播時間、第二傳播時間和第三傳播時間,其中,第一傳播時間為聲波傳播到第一預(yù)定位置的傳播時間,第二傳播時間為聲波傳播到第二預(yù)定位置的傳播時間,第三傳播時間為聲波傳播到第三預(yù)定位置的傳播時間;第三計算模塊,用于根據(jù)第一傳播時間、第二傳播時間、第三傳播時間和傳播速度計算出第一傳播距離、第二傳播距離和第三傳播距離,其中,第一傳播距離為聲波從發(fā)射裝置的位置傳播到第一預(yù)定位置的傳播距離,第二傳播距離為聲波從發(fā)射裝置的位置傳播到第二預(yù)定位置的傳播距離,第三傳播距離為聲波從發(fā)射裝置的位置傳播到第三預(yù)定位置的傳播距離;第三定位模塊,用于根據(jù)第一傳播距離、第二傳播距離、第三傳播距離以及第一預(yù)定位置、第二預(yù)定位置、第三預(yù)定位置對目標物體的位置進行定位。
在本發(fā)明實施例的一種可選的實施方式中,發(fā)射裝置與每一個接收裝置之間設(shè)置有同步信號,在發(fā)射裝置發(fā)出的聲波沿波導(dǎo)體傳播并被接收裝置接收之后,根據(jù)同步信號和接收裝置接收到聲波的時間,可以得到聲波傳到每一個接收裝置的絕對時間。由于聲波傳播速度已知,因此,可以計算出目標物體與每一個接收裝置之間的距離,該距離是聲波從目標物體所處的位置沿波導(dǎo)體傳播到接收裝置的傳播距離。可選地,可以采用如下方式對目標物體的位置進行定位:分別以每一個接收裝置所處的位置為圓心,以目標物體到該接收裝置的距離為半徑,構(gòu)造出多個圓,將圓的公共交點確定為目標物體的位置。即在第三定位模塊中可以包括:第四構(gòu)造子模塊,用于以第一預(yù)定位置為圓心,以第一傳播距離為半徑,在平面類波導(dǎo)體或者曲面類波導(dǎo)體上構(gòu)造第一圓形;第五構(gòu)造子模塊,用于以第二預(yù)定位置為圓心,以第二傳播距離為半徑,在平面類波導(dǎo)體或者曲面類波導(dǎo)體上構(gòu)造第二圓形;第六構(gòu)造子模塊,用于以第三預(yù)定位置為圓心,以第三傳播距離為半徑,在平面類波導(dǎo)體或者曲面類波導(dǎo)體上構(gòu)造第三圓形;第二確定子模塊,用于將第一圓形、第二圓形和第三圓形的公共交點確定為目標物體的位置。
例如:如圖9所示,以對在起伏的坡面行走的機器人進行定位為例,機器人攜帶有聲波發(fā)射傳感器,聲波發(fā)射源發(fā)射信號驅(qū)動聲波發(fā)射傳感器產(chǎn)生聲波,聲波發(fā)射傳感器與聲波接收傳感器之間設(shè)置有同步信號,在聲波發(fā)射傳感器發(fā)射聲波的同時,聲波接收傳感器開始接受聲波信號,如此便可獲得聲波從發(fā)射傳感器到各接收傳感器之間的絕對時間,如聲波從發(fā)射傳感器傳播到接收傳感器1的傳播時間t1,聲波從發(fā)射傳感器傳播到接收傳感器2的傳播時間t2,以及聲波從發(fā)射傳感器傳播到接收傳感器1的傳播時間t3,由于聲波在起伏坡面的傳播速度v是已知的,利用距離l=v×t可以計算出聲波發(fā)射源到各聲波接收傳感器的距離,其中,距離l是聲波沿著起伏坡面?zhèn)鞑サ穆窂介L。以每一個聲波接收傳感器為圓心,以聲波發(fā)射源到該聲波接收傳感器的距離為半徑,在起伏坡面上作出多個圓,多個圓有公共交點即為聲波發(fā)射源的位置,也就是機器人的位置。
例如:如圖10所示,以對在球形儲罐內(nèi)、外表面行走的機器人進行定位為例,機器人沿球罐內(nèi)、外表面行走,并攜帶有聲波發(fā)射傳感器,聲波接收傳感1、聲波接收傳感2和聲波接收傳感3設(shè)置于球罐的外表面上,用于接收沿球罐結(jié)構(gòu)傳播的聲波。通過在聲波發(fā)射傳感器和聲波接收傳感器之間設(shè)置同步信號,并由聲波接收傳感器記錄接收聲波的時間,可得到從發(fā)射傳感器到各接收傳感器之間的絕對時間,如聲波從發(fā)射傳感器傳播到接收傳感器1的傳播時間t1、聲波從發(fā)射傳感器傳播到接收傳感器2的傳播時間t2以及聲波從發(fā)射傳感器傳播到接收傳感器3的傳播時間t3,再根據(jù)已知的聲波在球罐結(jié)構(gòu)中的傳播速度,進一步計算出聲波發(fā)射傳感器到各接收傳感器的距離l1、l2、l3,此距離為聲波沿球罐結(jié)構(gòu)傳播的路徑長。以每一個接收傳感器為圓心,以聲波發(fā)射傳感器到各接收傳感器的距離為半徑,在球罐表面上作出一系列的圓,這些圓的交點便是機器人的位置。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
在本發(fā)明的上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關(guān)描述。
在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它的方式實現(xiàn)。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可為個人計算機、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。