亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        MOOS—IvP理論概述及應(yīng)用簡析

        2016-05-30 18:26:08劉倫倫
        科技創(chuàng)新導(dǎo)報 2016年13期
        關(guān)鍵詞:自動化數(shù)據(jù)庫

        劉倫倫

        摘 要:為了幫助讀者對MOOS-IvP進行初步學(xué)習(xí),此文從MOOS-IvP的設(shè)計理念、架構(gòu)模型、主要功能等方面進行了介紹。MOOS-IvP是一個新型的、開源的、基于行為的無人航行器的自動化控制程序,介紹內(nèi)容包括:MOOS-IvP的設(shè)計理論及使用的方法,包括基礎(chǔ)設(shè)計模型中用到的發(fā)布-訂閱模型、后座駕駛員模型、基于行為的自主性設(shè)計,代碼的重用性,模塊化設(shè)計,信息交流方式;MOOSDB的主要功能、配置屬性及運作方式;IvP Helm部分介紹其結(jié)構(gòu)特點、功能屬性及實現(xiàn)方法。使讀者最終對MOOS-IvP形成一個全面系統(tǒng)的認識。

        關(guān)鍵詞:MOOS-IvP 數(shù)據(jù)庫 IvP Helm 無人航行器 自動化

        中圖分類號:TP311 文獻標識碼:A 文章編號:1674-098X(2016)05(a)-0083-05

        Abstract:MOOS-IvP is a new,open source,behavior based automation control program for an unmanned vehicle. This passage introduced some aspects of MOOS-IvP from design concept, architecture model,mainly functions and so on, for helping users to understand the software and use it.The main description of the passage contained the MOOS-IvP design-modules,the MOOSDB and the IvP helm.MOOS-IvP design-modules includesthe publish-subscribe middleware design philosophy,the backseat driver design philosophy, thebehavior-based control design philosophy, the code re-use,modules design philosophy, the methods of message transmit.The MOOSDB comprisedthe main functions,the configuration properties and the operation mode. TheIvP Helm introduced the structure characteristics, the functional properties andtherealization method.Which will help users to build a comprehensive and systematic concept of MOOS-IvP.

        Key Words:MOOS-IvP;MOOSDB;IvP helm;Unmanned vehicle;Autonomy

        隨著海洋資源探索與開發(fā)的需要,海洋航行器科技的發(fā)展日新月異,對航行器軟件及硬件方面的要求也越來越高。目前為止,Autonomous underwater vehicle(簡稱AUV)的控制系統(tǒng)多以底層硬件控制為主,只能完成簡單的操作命令,軟件控制相對薄弱且控制結(jié)構(gòu)單一,沒有統(tǒng)一的運行平臺,對多航行器同時調(diào)配存在短板。MOOS是由Paul Newman于2001年寫成的[1],用于自主性海洋航行器的控制。MOOS-IvP的設(shè)計初衷是建立一個高性能的自主系統(tǒng),減少短期以及長期的花銷和縮短時間線。使得航行器的智能化和行為復(fù)雜度能大大提高,并能夠同時調(diào)控多航行器協(xié)調(diào)。隨著MOOS-IvP軟件系統(tǒng)的不斷開發(fā)與完善,該軟件已經(jīng)逐步發(fā)展為一個獨立強大的控制系統(tǒng),在未來海洋探測及多功能自主性AUV的研發(fā)中,將起到重要的作用。

        1 MOOS-IvP的整體設(shè)計思路

        MOOS是Mission Oriented Operating Suite的縮寫。MOOS是一個開源工具,是自主的發(fā)布-訂閱式中間軟件。MOOS-IvP軟件的設(shè)計思路主要依據(jù)以下3個建筑哲學(xué)思想。

        (1)后座駕駛員模型(the backseat driver paradigm)[2]。

        (2)發(fā)布-訂閱型自動化中間設(shè)備[3]。

        (3)基于行為的自主性設(shè)計[4]。

        按照以上思路,該系統(tǒng)將一個整體軟件按照其功能劃分為不同的部分,并作為獨立的模塊,由中間軟件統(tǒng)一調(diào)配整合。該設(shè)計理念從某一角度看,與面向?qū)ο蟪绦蛟O(shè)計中的抽象、封裝、繼承等特點有一定的相似性。MOOS和IvP的核心架構(gòu)思想都是將不同的功能分離出來,做成獨立的模塊[5]。整合調(diào)用不同的模塊,使其協(xié)調(diào)合作的方法是MOOS和IvP的獨特之處。MOOS-IvP作為一個開源平臺、算法及軟件基礎(chǔ)模塊、基礎(chǔ)自動化、開發(fā)的新工具,都可以為公眾使用。它的設(shè)計思想如圖1所示。

        圖1的結(jié)構(gòu)中,MOOS-IvP以扇形的展開方式,使得由內(nèi)及外層層遞進,每個模塊相互獨立又協(xié)調(diào)統(tǒng)一,能夠極大地提高工作效率,同時增強了系統(tǒng)的靈活性,對模塊的改動調(diào)整更加方便。用戶可以根據(jù)自身的需要,在原有的核心平臺上搭建自己所需要的新模塊或者新功能。軟件的開源性,意味著軟件擁有很大的包容性和可拓展性,對于應(yīng)用層面而言,沒有一個模塊是一成不變的,人們可以根據(jù)自身的需要,對原有的程序模塊做出修改,或者開發(fā)全新的模塊,高效的代碼重用和保護用戶的個人隱私權(quán)利,這都是MOOS-IvP的設(shè)計目標之一[6]。

        作為一個開源的系統(tǒng),MOOS-IvP最大的優(yōu)勢之一就是代碼的重用性。代碼重用的優(yōu)點:貢獻的多樣性、更低價的成本、更高的表現(xiàn)能力以及更高的可靠性。此優(yōu)勢將幫助系統(tǒng)保持自身的優(yōu)越性,能夠汲取群眾的智慧,每多一位使用者,就多了一份力量,保持不斷的更新與進步,這是非常難能可貴的。

        1.1 后座駕駛員理論

        后座駕駛員設(shè)計思想的關(guān)鍵在于分離航行器的控制與自動化的部分。航行器控制系統(tǒng)和自主系統(tǒng)分別運行在不同的獨立的計算機上。結(jié)構(gòu)如圖2所示。

        航行器從主電腦接收航行器位置和航線信息流,從載荷計算機獲取方向、深度、速度等數(shù)據(jù)流。自主系統(tǒng)提供前進方向、速度及深度等命令給航行器控制系統(tǒng),控制系統(tǒng)執(zhí)行控制并傳遞航行信息給自主系統(tǒng)。在載荷計算機上的自主系統(tǒng)由一系列獨立的程序通過MOOSDB交互而成[7]。其中的一個重要程序是航行器主電腦的接口程序,另一個是IvP Helm中執(zhí)行以行為為基準的自主系統(tǒng)。此處描述了各系統(tǒng)之間的關(guān)系,以及信息的流向。后駕駛員模型的設(shè)計,確保了控制系統(tǒng)與自主系統(tǒng)的分離,使得運算速度得到了保障,對航行器的控制也更加高效。

        1.2 發(fā)布-訂閱型設(shè)計

        發(fā)布-訂閱型中間軟件的設(shè)計是指MOOS提供了一個中間軟件的功能,依據(jù)發(fā)布-訂閱的模型和協(xié)議處理數(shù)據(jù)間的傳輸和轉(zhuǎn)換。每一個進程之間的交流都是通過一個拓撲結(jié)構(gòu)的單一數(shù)據(jù)庫處理方式。一個特殊進程的接口取決于該進程產(chǎn)生和調(diào)用的信息。每一條信息都是一個簡單的變量值對,例如,MOOS信息條會存儲原始二進制數(shù)據(jù)來傳遞照片。一個MOOS社區(qū)是一系列的MOOS應(yīng)用程序,運行在一個單獨的機器上,每個程序都有唯一的ID。它們之間可以通過網(wǎng)絡(luò)相互傳遞信息。

        1.3 基于行為的自主性設(shè)計

        基于行為的控制設(shè)計理論是IvP Helm的核心設(shè)計思想。IvP Helm的運行類似于一個MOOS應(yīng)用程序,它使用行為基礎(chǔ)架構(gòu)來實現(xiàn)自動化。行為是一種獨特的軟件模型,它被稱為獨立的小型專業(yè)系統(tǒng),服務(wù)于整個自動化系統(tǒng)的特殊模塊中。用戶可以為一些特殊的任務(wù)設(shè)置helm,實現(xiàn)和每個行為之間的接口配置。這些配置通常包含特殊信息,例如一系列確切的坐標點、搜索區(qū)域、速度等。它也會包含一些特殊的狀態(tài)空間,用于決定哪些行為在什么樣的位置執(zhí)行,以及如何傳輸?shù)膯栴}。當多重行為被執(zhí)行并對航行器的控制產(chǎn)生競爭時,IvP的求解器(IvP solver)會協(xié)調(diào)各行為,并保證命令被正常執(zhí)行[8]。結(jié)構(gòu)如圖3所示。

        函數(shù)的建立和設(shè)置是在helm每次執(zhí)行迭代時完成的,通常是每秒1~4次,只有一些行為子集是依據(jù)航行器的情況隨時執(zhí)行的,并且由用戶提供它們的狀態(tài)空間配置。求解器在運行時會通過每個行為定義在航行器上的判定空間詢問目標函數(shù)。在IvP Helm中,目標函數(shù)是一個明確的類型,定義為線性分布,并成為IvP方法。Solver利用這一構(gòu)想找到最快的辦法來解決最急迫的問題,這些問題是由大量的運行中的函數(shù)產(chǎn)生的。

        2 MOOS概述

        MOOS通常被描述為自律性中間設(shè)備,它整合一系列的終端應(yīng)用程序,作為它們的中轉(zhuǎn)站,像膠水一般將它們聯(lián)系在一起,成為一個整體,IvP Helm就是其中的一部分。MOOS不需要任何第三方庫,是跨平臺獨立的且無依賴性。每一個應(yīng)用程序都會繼承MOOS提供的一個基本接口,此接口提供了一個強大的易于使用的通訊設(shè)備來保持與其他應(yīng)用的交流,同時控制那些應(yīng)用程序執(zhí)行它們主要函數(shù)設(shè)置的相對頻數(shù)。MOOS是一個星型拓撲結(jié)構(gòu),應(yīng)用程序內(nèi)的MOOS社區(qū)連接著一個位于軟件核心處的單獨的MOOS數(shù)據(jù)庫[9]。這個網(wǎng)絡(luò)有以下特點:(1)不對等交流;(2)客戶端和服務(wù)端之間的交流起始于客戶端;(3)每個客戶端都有一個唯一的名字;(4)客戶端之間不知曉彼此的存在;(5)客戶端只能通過向MOOSDB發(fā)送數(shù)據(jù)來達到彼此的溝通;(6)星型網(wǎng)絡(luò)能夠連通任意數(shù)量的機器,運行在任意可支持的操作系統(tǒng)群組上;(7)數(shù)據(jù)能夠用很小的字節(jié)包或者是任意的大型二進制包來傳輸。MOOS的應(yīng)用程序接口允許客戶端與MOOSDB之間進行數(shù)據(jù)傳輸,這意味著數(shù)據(jù)依賴于客戶端的類型,數(shù)據(jù)類型不受MOOS限制。傳輸?shù)臄?shù)據(jù)包通常包含數(shù)據(jù)名稱、字符串值、浮點值、來源(客戶端名稱)、補充信息、數(shù)據(jù)發(fā)布時間、數(shù)據(jù)類型、發(fā)送格式、社區(qū)來源等信息。

        每一個MOOS應(yīng)用程序都是一個客戶端,都連接在MOOSDB上。這個連接是由客戶端建立的,客戶端通過一個螺紋機械建立與MOOSDB的交流。這樣就完全隱去了交流中的復(fù)雜、艱深部分,同時提供了一個小巧簡易的方法來處理數(shù)據(jù)傳輸??蛻舳四軌虬l(fā)布信息(帶有名字的數(shù)據(jù))、注冊信息、閱讀信息(收集帶名數(shù)據(jù)信息)。通知的發(fā)布是成對的(變量和值),這構(gòu)成了一個MOOS信息的核心部分。通知是實時更新的,當信息傳遞給MOOSDB后,將被傳輸給其他有需求的客戶端。

        MOOS提供了一個基類,叫作CMOOSApp,在CMOOSApp類中有一個循環(huán),通常稱為迭代方法Iterate(),默認是不執(zhí)行的[10]。一個新的MOOS應(yīng)用程序的工作之一就是構(gòu)建迭代方法,讓應(yīng)用程序完成人們想要的工作。除此之外,CMOOSApp中所有的循環(huán)也會檢查新數(shù)據(jù)是否傳送給應(yīng)用程序。如果有新數(shù)據(jù)被傳過來,另外一個方法——OnNewMail()會被調(diào)用,該方法會處理新接收的數(shù)據(jù)。3個虛擬函數(shù)的結(jié)構(gòu)與調(diào)用順序如圖4所示。

        在一個新的派生類中通過重寫CMOOSApp中的Iterate()方法,作者創(chuàng)建了一個函數(shù)用來管理應(yīng)用程序要執(zhí)行的任務(wù)。

        在Iterate()被調(diào)用之前,CMOOSApp的基類決定新郵件是否發(fā)送。如果新郵件在等待,CMOOSApp的基類調(diào)用OnNewMail()虛函數(shù)。傳輸過來的郵件是以CMOOSMsg對象列表的形式送達的。這個結(jié)構(gòu)允許在一個客戶端傳遞數(shù)據(jù)和所有需要數(shù)據(jù)的群體接收處理信息之間用非常短的響應(yīng)時間。OnStartUp()函數(shù)僅僅在應(yīng)用程序進入自身的循環(huán)描述之前被調(diào)用[11]。該方法幫助應(yīng)用程序在此處完成代碼的初始化,另一個重要功能是讀取一個文件中的配置參數(shù)。MOOS的各項配置參數(shù)都存儲在一個后綴名為moos的配置文件中。

        3 IvP helm

        IvP是interval programming的縮寫,這是一種用于描述和解決多目標最優(yōu)化問題的技術(shù),能夠很好地解決多航行器的合作與競爭問題。IvP helm作為MOOS的一個模塊被執(zhí)行,稱為pHelmIvP。Helm可以看作是MOOS的一個應(yīng)用程序,表面上看來它與MOOS的其他應(yīng)用程序一樣,作為一個單獨的程序連接著一個運行的MOOSDB進程,接口只有一個發(fā)布-訂閱接口,結(jié)構(gòu)如圖5所示。

        Helm首先發(fā)布一段固定的信息流來啟動平臺,特別是包含所需的方向、速度、深度的信息,也可能發(fā)布信息來傳輸自主性方面的內(nèi)容,這對監(jiān)視、糾錯、觸發(fā)不論運行在Helm還是其他MOOS進程中的算法很有幫助[12]。Helm能夠用于在幾乎任何用戶定義的決策空間上生成決策。它有兩個配置文件—— mission文件和behavior文件。傳入Helm的信息流包括傳感器信息、命令和控制輸入的信息。Helm則發(fā)出命令操控航行器。

        Helm接收傳感器信息或者其他信息時都需要做出判定。這些信息包括關(guān)于平臺近期的位置和航行軌跡的航行信息,以及關(guān)于航行器的位置、狀態(tài)或環(huán)境的信息,接收的信息是由行為本身來描述的,配置在后綴為bhv的文件中。除了接收傳感器信息之外,還接收一些級別的命令和控制信息。Helm有一對高級別、高信息量的狀態(tài)描述稱為Helm state和all-stop status。為方便理解,此處將Helm與汽車的駕駛情況做出類比,如圖6所示。

        Helm中最高等級的接口體現(xiàn)在Helm state中。在上文中提到的Helm state在drive模型中有兩個值park和drive。在park模式下,Helm處于等待狀態(tài),然后等待一個契機回到drive狀態(tài)。在學(xué)習(xí)MOOS-IvP時,你會詳細學(xué)習(xí)整個狀態(tài)的轉(zhuǎn)換機制、初始化方式等內(nèi)容,從而能夠?qū)elm state有更全面的了解。

        Helm中的all-stop事件是指由于某些情況引起的航行器完全停止運作的狀態(tài),包括速度停止為零和深度為零的狀態(tài)[13]。All-stop的狀態(tài)僅用一小段字符串來描述航行器停止運行的原因。All-stop狀態(tài)的消息能用來分辨航行器是處于哪種的情況之下。Helm能夠通過命令行直接運行,或者通過Antler運行。如果在.moss文件中沒有指定behavior文件,那么behavior文件必須在命令行中指明。

        IvP Helm就像其他MOOS進程一樣,可以根據(jù)與MOOSDB的接口來指定某些行為,例如輸出哪些變量,接收哪些變量。在這里,當Helm是由行為組成并且包含任意數(shù)量的第三方行為時,想提供一個完全的規(guī)范是不可能的。每個行為都可以傳輸一個變量值對,在循環(huán)的最后通過Helm代表behavior發(fā)送給MOOSDB。同樣的,每一個behavior都可以向Helm聲明任意數(shù)量的MOOS變量,根據(jù)behavior自身的需要由Helm注冊給它。

        4 結(jié)語

        MOOS-IvP作為一個高自動化、全新的、開源的水上航行器操控系統(tǒng),在發(fā)展空間以及創(chuàng)新領(lǐng)域上擁有無法忽視的潛能。目前,該系統(tǒng)已經(jīng)投入實踐中,并取得了很好的實驗成果,未來將為海上無人航行器以及水下滑翔機探索海洋資源,科考活動提供了強有力的支撐。MOOS-IvP自身模塊化和分布式的設(shè)計理念,顛覆了傳統(tǒng)的整體冗雜的設(shè)計思想,合理分配各個功能模塊,行為合作更加便捷,實現(xiàn)了更高程度的自動化以及多航行器的協(xié)調(diào)配合。隨著MOOS-IvP的發(fā)展,在未來的航行器領(lǐng)域,將為科研提供巨大的助力。

        參考文獻

        [1]Mike Benjamin,Henrik Schmidt,John J. Leonard.MOOS-IvPDocumention[EB/OL].http://www.moos-ivp.org.

        [2]Michael R.Benjamin,Paul M.Newman, HenrikSchmidt,et al.An Overview of MOOS-IvP and a Brief Users Guide to the IvP Helm Autonomy Software[J].Computer Science and Artificial Intelligence Laboratory,2009(28):39-64.

        [3]Paul M.Newman.MOOS-A Mission Oriented Operating Suite[J].MIT Department of Ocean Engineering,2003(7):15-41.

        [4]Michael R.Benjamin.The Interval Programming Model for Multi-Objective Decision Making[J].Computer Science and Artificial Intelligence Laboratory,2004(21):35-50.

        [5]Michael R.Benjamin,Paul M.Newman,Henrik Schmidt,et al.Leonard.A Tour of MOOS-IvP Autonomy Software Modules[J].Computer Science and Artificial Intelligence Laboratory,2009(6):18-30.

        [6]Michael R.Benjamin.MOOS-IvP Autonomy Tools Users Manual[J].MIT Computer Science and Artificial Intelligence Lab.,2008(65):2-11.

        [7]Andrew A.Bennet,John J.Leonard.A Behavior-Based Approach to Adaptive Feature Detectionand Following with Autonomous Underwater Vehicles[J].IEEE Journal of Oceanic Engineering,2000,25(2):213-226.

        [8]Marc Carreras,J Batlle,Pere Ridao.Reactive Control of an AUV Using Motor Schemas[J].InInternational Conference on Quality Control,Automation and Robotics,ClujNapoca, Rumania,2000(5):5-21.

        [9]Stefan B.Williams,Paul Newman, GaminiDissanayake,et al.A decoupled, distributed AUV control architecture[C]//In Proceedings of 31st International Symposium onRobotics.2000:246-251.

        [10]Michael R.Benjamin,Paul Newman,Henrik Schmidt,et al.An Overview of MOOS-IvP and a UsersGuide to the IvP Helm Autonomy Software[J].Computer Science and Artificial Intelligence Laboratory,2010(4):123-189.

        [11]Michael R.Benjamin,Paul M.Newman, Henrik Schmidt,et al.A Tour of MOOS-IvP AutonomySoftware Modules[J].MIT Computer Science and Artificial Intelligence Lab,2009(6):1-23.

        [12]Michael R.Benjamin,Paul M.Newman, Henrik Schmidt,et al.Extending MOOS-IvP andUsers Guide to the IvPBuild Toolbox[J].MIT Computer Science andArtificial Intelligence Lab.,2009(37):14-35.

        [13]JukkaRiekki.Reactive Task Execution of a Mobile Robot[D].Oulu University,1999.

        猜你喜歡
        自動化數(shù)據(jù)庫
        數(shù)據(jù)庫
        財經(jīng)(2017年15期)2017-07-03 22:40:49
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        供電企業(yè)電力自動化主站系統(tǒng)研究
        錦界煤礦連采膠帶機集控系統(tǒng)的介紹
        供熱站自動控制系統(tǒng)中PLC的應(yīng)用
        AGV小車在白酒行業(yè)自動化立體倉庫中的應(yīng)用
        中國市場(2016年36期)2016-10-19 03:40:15
        配電室無人職守集控站在京博石化的運用
        科技視界(2016年20期)2016-09-29 14:13:02
        配電線路運行資料管理自動化的探討
        科技視界(2016年20期)2016-09-29 13:45:10
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        伊人久久大香线蕉免费视频| www插插插无码视频网站| 国产性一交一乱一伦一色一情| 午夜精品人妻中字字幕| 青青草免费手机视频在线观看| 国产伦精品一区二区三区妓女| 无码一区二区波多野结衣播放搜索 | 丁香婷婷色| 在线观看免费的黄片小视频| 在线人成视频播放午夜| 国产免国产免费| 国产夫妻av| 一区二区三区在线观看视频| 亚洲一区在线观看中文字幕| 一本色综合久久| 视频国产精品| 偷拍偷窥在线精品视频| 日韩av午夜在线观看| 嫩草影院未满十八岁禁止入内| 亚洲成AV人片无码不卡| 可以直接在线看国产在线片网址 | 亚洲片一区二区三区| 国产精品又黄又爽又色| 男人国产av天堂www麻豆| 无码人妻丰满熟妇区五十路百度| 亚洲综合日韩中文字幕| 久久99人妖视频国产| 轻点好疼好大好爽视频| 亚州综合激情另类久久久| 亚洲成av在线免费不卡| 亚洲男人天堂一区二区| 婷婷中文字幕综合在线| 依依成人影视国产精品| 亚洲av熟女少妇一区二区三区 | 国产成人一区二区三区影院| 熟女少妇内射日韩亚洲| 国产精品综合日韩精品第一页| 国产一区二区三区porn| 一区二区三区内射美女毛片| 美女大量吞精在线观看456 | 国产亚洲午夜高清国产拍精品不卡|