本發明涉及機器人領域,具體涉及一種用于智能機器人分工協作方法以及機器人。
背景技術:
隨著機器人技術的不斷發展,智能機器人越來越多的被應用與人類的家庭生活中。
隨著智能機器人的不斷普及,同一應用場景中存在不止一臺機器人的情況變得相當普遍。與此同時,隨著用戶對機器人功能要求的不斷提高,在某些應用場景下,單一機器人無法實現用戶的應用需求,需要多個機器人協同操作才能實現用戶的應用需求。
但是,在當前技術中,機器人的操控通常是操控者一對一的對機器人下達操控指令。要實現多個機器人的分工協作需要操控者分別對每個機器人下達操控指令。隨著參與分工協作的機器人數目的增多,不僅操作過程繁瑣、需要浪費很多的時間去下達操控指令,而且很容易出現操控指令的下達目標錯誤、人機通訊干擾等情況。
技術實現要素:
本發明提供了一種用于智能機器人的分工協作方法,由機器人協作群體中的多個智能機器人分別執行多模態交互輸出以實現分工協作,其中:
所述機器人協作群體中的多個智能機器人共同接收非定向發送的多模態協作指示;
判斷所述多模態協作指示是否與當前機器人相關,當所述多模態協作指示與當前機器人相關時生成并輸出響應所述多模態協作指示的多模態輸出數據。
在一實施例中,生成并輸出響應所述多模態協作指示的多模態輸出數據,其中,解析所述多模態協作指示確定對應所述多模態協作指示的應用程序,基于所述多模態協作指示開啟并操作所述應用程序。
在一實施例中,判斷所述多模態協作指示是否與當前機器人相關,其中:
判斷判斷所述多模態協作指示是否包含當前機器人的身份標識;
當所述多模態協作指示包含當前機器人的身份標識時判斷所述多模態協作指示與所述當前機器人相關。
本發明還提出了一種分工協作控制方法,所述方法包括:
為參與當前協作的智能機器人分配任務并分別針對每個所述智能機器人生成對應的任務描述以及個體描述;
將相互對應的所述任務描述以及所述個體描述打包以生成多模態協作指示;
將所述多模態協作指示發送到所有參與協作的智能機器人。
本發明還提出了另一種分工協作控制方法,所述方法包括:
獲取多模態的用戶輸入;
判斷所述用戶輸入是否需要協作響應;
當所述用戶輸入需要協作響應時確定參與分工協作的智能機器人;
為每個參與分工協作的智能機器人分配任務以生成對應的任務描述;
將所述任務描述以及對應的智能機器人的個體描述打包以生成多模態協作指示;
將所述多模態協作指示發送到所有參與協作的智能機器人。
本發明還提出了一種可實現分工協作的智能機器人,所述智能機器人為包含多個智能機器人的機器人協作群體中的一個機器人,其中,所述機器人包括:
指示接收模塊,其配置為與所述機器人協作群體中的其他智能機器人共同接收非定向發送的多模態協作指示;
指示確認模塊,其配置為判斷所述多模態協作指示是否與當前機器人相關;
協作輸出模塊,其配置為當所述多模態協作指示與當前機器人相關時生成并輸出響應所述多模態協作指示的多模態輸出數據。
在一實施例中,所述協作輸出模塊配置為:
解析所述多模態協作指示確定對應所述多模態協作指示的應用程序,基于所述多模態協作指示開啟并操作所述應用程序。
在一實施例中,所述指示確認模塊配置為:
判斷判斷所述多模態協作指示是否包含當前機器人的身份標識;
當所述多模態協作指示包含當前機器人的身份標識時判斷所述多模態協作指示與所述當前機器人相關。
本發明還提出了一種分工協作控制系統,所述系統包括:
任務分配模塊,其配置為為參與當前協作的智能機器人分配任務并分別針對每個所述智能機器人生成對應的任務描述;
身份確認模塊,其配置為獲取所述智能機器人的個體描述;
指示生成模塊,其配置為將所述個體描述與對應的所述任務描述打包以生成多模態協作指示;
指示輸出模塊,其配置為將所述多模態協作指示發送到所有參與協作的智能機器人。
本發明還提出了一種分工協作控制機器人,所述機器人包括:
用戶需求獲取模塊,其配置為獲取多模態的用戶輸入;
協作需求確認模塊,其配置為判斷所述用戶輸入是否需要協作響應;
協作參與者確認模塊,其配置為當所述用戶輸入需要協作響應時確定參與分工協作的智能機器人;
協作任務分配模塊,其配置為每個參與分工協作的智能機器人分配任務以生成對應的任務描述;
指示生成模塊,其配置為將所述任務描述以及對應的智能機器人的個體描述打包以生成多模態協作指示;
指示輸出模塊,其配置為將所述多模態協作指示發送到所有參與協作的智能機器人。
根據本發明的方法,不需要為每一個參與分工協作的智能機器人構造獨立的通信通道就可以實現對多個智能機器人進行分工協作控制。相較于現有技術,操控流程被大大簡化,有效避免了操控指令的下達目標錯誤、人機通訊干擾等情況的發生。
本發明的其它特征或優點將在隨后的說明書中闡述。并且,本發明的部分特征或優點將通過說明書而變得顯而易見,或者通過實施本發明而被了解。本發明的目的和部分優點可通過在說明書、權利要求書以及附圖中所特別指出的步驟來實現或獲得。
附圖說明
附圖用來提供對本發明的進一步理解,并且構成說明書的一部分,與本發明的實施例共同用于解釋本發明,并不構成對本發明的限制。在附圖中:
圖1、圖3以及圖4是根據本發明實施例的分工協作方法流程圖;
圖2是根據本發明實施例的分工協作方法的部分流程圖;
圖5以及圖6是本發明實施例的分工協作控制方法流程圖;
圖7是根據本發明一實施例的分工協作機器人的結構簡圖;
圖8是根據本發明一實施例的分工協作控制系統的結構簡圖;
圖9是根據本發明一實施例的分工協作控制機器人的結構簡圖。
具體實施方式
以下將結合附圖及實施例來詳細說明本發明的實施方式,借此本發明的實施人員可以充分理解本發明如何應用技術手段來解決技術問題,并達成技術效果的實現過程并依據上述實現過程具體實施本發明。需要說明的是,只要不構成沖突,本發明中的各個實施例以及各實施例中的各個特征可以相互結合,所形成的技術方案均在本發明的保護范圍之內。
隨著智能機器人的不斷普及,同一應用場景中存在不止一臺機器人的情況變得相當普遍。與此同時,隨著用戶對機器人功能要求的不斷提高,在某些應用場景下,單一機器人無法實現用戶的應用需求,需要多個機器人協同操作才能實現用戶的應用需求。
但是,在當前技術中,機器人的操控通常是操控者一對一的對機器人下達操控指令。要實現多個機器人的分工協作需要操控者分別對每個機器人下達操控指令。隨著參與分工協作的機器人數目的增多,不僅操作過程繁瑣、需要浪費很多的時間去下達操控指令,而且很容易出現操控指令的下達目標錯誤、人機通訊干擾等情況。
針對上述情況,本發明提出了一種用于智能機器人的分工協作方法。在本發明一實施例中,機器人的分工協作從整體上而言是由一個機器人協作群體完成的。該協作群體內包含多個可以獨立運行的智能機器人,由機器人協作群體中的多個智能機器人分別執行多模態交互輸出以實現分工協作。
當需要進行分工協作時,向整個機器人協作群體廣播發送協作指示指令。該指令在發送過程中是非指向性的,即該指令在傳輸過程中并不會限制接收者,只要是機器人協作群體中的智能機器人都可以接收。
接著,由機器人協作群體中的多個智能機器人同時接收該協作指示指令。這樣,在發送協作指示指令時就不需要針對每一個參與協作的機器人進行一對一的操控指令下達。只需要建立針對整個機器人協作群體的通信通道(廣播通道)(相當于多個智能機器人共用一個通信通道),而不需要分別針對每個機器人建立一對一的通信通道,從而簡化的操作過程,避免操控指令的下達目標錯誤、人機通訊干擾等情況的發生。
進一步的,由于不需要分別針對每個機器人建立一對一的通信通道,因此協作指示的發送方式就可以具有很大的自由度。在本發明一實施例中,采用多模態的發送模式,主控方根據當前的具體情況選用適合的交互模式向機器人發送多模態協作指令。例如,發送語音指令(聲控方式),輸出手勢/肢體語言或是具體的圖像指示,利用有線/無線通信鏈路發送數據指令。
具體的,在一實施例中,由協作主控方(例如,用戶)向機器人協作群體發送非定向的多模態協作指示(不指定接收方為機器人協作群體中的某個具體機器人)。機器人協作群體中的多個智能機器人首先共同接收非定向發送的多模態協作指示;然后判斷多模態協作指示是否與當前機器人相關,當多模態協作指示與當前機器人相關時生成并輸出響應多模態協作指示的多模態輸出數據。
接下來基于附圖詳細描述根據本發明實施例的方法的詳細流程,附圖的流程圖中示出的步驟可以在包含諸如一組計算機可執行指令的計算機系統中執行。雖然在流程圖中示出了各步驟的邏輯順序,但是在某些情況下,可以以不同于此處的順序執行所示出或描述的步驟。
如圖1所示,在一實施例中,針對機器人協作群體中的任一智能機器人而言,在運行過程中,機器人首先接收來自協作主控方的多模態協作指示(步驟S110);然后判斷該多模態協作指示是否與自身相關(步驟S120)。
當接收到的多模態協作指示與自身無關時,機器人忽略該多模態協作指示,保持當前的狀態(分會步驟S110,等待新的多模態協作指示)。如果接收到的多模態協作指示與自身相關,那么機器人生成并輸出響應多模態協作指示的多模態輸出數據(步驟S130)。
進一步的,在一實施例中,在步驟S130中,機器人通過自身加載的應用程序(App)來響應多模態協作指示。具體的,如圖2所示,當機器人確定接收到的多模態協作指示與自身相關時,其解析多模態協作指示(步驟S210),確定對應多模態協作指示的應用程序(步驟S220),然后基于多模態協作指示開啟并執行該應用程序(步驟S230)從而生成并輸出相應多模態協作指示的多模態輸出數據(步驟S240)。
在圖1所示過程中,關鍵點之一在于步驟S120中,機器人判斷接收到的多模態協作指示是否與自身相關。在本發明一實施例中,采用基于身份標識的判定來確定接收到的多模態協作指示是否與機器人自身相關。具體的,在多模態協作指示中包含有相關的機器人的身份標識,表明該多模態協作指示具體是下達給哪一個機器人的。當智能機器人接收到多模態協作指示時,通過其中包含的身份標識來確定該多模態協作指示是否與自身相關(判斷多模態協作指示是否包含當前機器人的身份標識從而確定該多模態協作指示是否是下達給自己的)。
如圖3所示,在一實施例中,針對機器人協作群體中的任一智能機器人而言,在運行過程中,機器人首先接收來自協作主控方的多模態協作指示(步驟S310);然后從該多模態協作指示提取身份標識(步驟S321),判斷自身的身份標識是否與提取出的身份標識匹配(步驟S322)。
如果不匹配,則說明接收到的多模態協作指示與自身無關時,機器人忽略該多模態協作指示,保持當前的狀態(返回步驟S310,等待新的多模態協作指示)。
如果匹配,則說明該多模態協作指示需要自身執行,接收到的多模態協作指示與自身相關,那么機器人生成并輸出響應多模態協作指示的多模態輸出數據(步驟S330)。
進一步的,在將同一多模態協作指示同時下達給多個機器人的情況中,多模態協作指示包含多個身份標識,在步驟S321中,提取所有的身份標識。在步驟S322中,判斷自身的身份標識是否與提取出的身份標識中的一個匹配。
進一步的,在某些分工協作應用場景下,需要每個分工協作的參與者(機器人協作群體內的每個智能機器人)執行相同的行為輸出。在這種情況下,也就意味著主控方發出的多模態協作指示是與機器人協作群體內的每個智能機器人均相關的。如果采用身份標識匹配的方法,則需要在多模態協作指示包含所有的智能機器人的身份標識,這勢必造成多模態協作指示的臃腫。
為了簡化多模態協作指示的結構,在本發明一實施例中,采用了共同指令判斷的方式。即當智能機器人接收到多模態協作指示時判斷該多模態協作指示是否是共同指令(與機器人協作群體內的每個智能機器人均相關的指令),如果是共同指令,則直接生成并輸出響應多模態協作指示的多模態輸出數據。如果不是共同指令,則提取身份標識,判斷其是否與自身相關。
對應的,對于主控方而言,如果當前需要下達的多模態協作指示是面對機器人協作群體內的每個智能機器人時(不需要指示該多模態協作指示具體是下達給哪一個智能機器人的),就將該多模態協作指示標記為共同指令,而不需要在多模態協作指示中加入所有的智能機器人的身份標識。
進一步的,在一實施例中,定義當多模態協作指示不包含任何身份標識時為共同指令。如圖4所示,針對機器人協作群體中的任一智能機器人而言,在運行過程中,機器人首先接收來自協作主控方的多模態協作指示(步驟S410);然后判斷該多模態協作指示是否包含身份標識(步驟S421),如果不包含身份標識,則說明該多模態協作指示是共同指令,那么機器人生成并輸出響應多模態協作指示的多模態輸出數據(步驟S430)。
如果包含身份標識,則從該多模態協作指示提取身份標識(步驟S422),判斷自身的身份標識是否與提取出的身份標識匹配(步驟S423)。如果不匹配,則說明接收到的多模態協作指示與自身無關時,機器人忽略該多模態協作指示,保持當前的狀態(返回步驟S410,等待新的多模態協作指示)。如果匹配,則說明該多模態協作指示需要自身執行,接收到的多模態協作指示與自身相關,那么機器人生成并輸出響應多模態協作指示的多模態輸出數據(步驟S430)。
綜上,根據本發明的方法,不需要為每一個參與分工協作的智能機器人構造獨立的通信通道就可以實現對多個智能機器人進行分工協作控制。相較于現有技術,操控流程被大大簡化,有效避免了操控指令的下達目標錯誤、人機通訊干擾等情況的發生。
進一步的,基于本發明的智能機器人分工協作方法,針對分工協作的主控方,本發明還提出了一種分工協作控制方法。具體的,在一實施例中,分工協作的主控方首先根據當前需要實現的任務需求為參與當前協作的智能機器人分配任務并分別針對每個智能機器人生成對應的任務描述;然后將任務描述以及對應的智能機器人的個體描述打包以生成多模態協作指示;最后將多模態協作指示發送到所有參與協作的智能機器人。這樣,參與協作的智能機器人接收到多模態協作指示后就可以根據其中包含的個體描述是否與自身匹配來確定該多模態協作指示是否與自身相關從而確定是否該根據任務描述進行輸出響應。
進一步的,基于身份標識的確認,在一實施例中,多模態協作指示所包含的個體描述為機器人的身份標識。具體的,如圖5所示,分工協作的主控方首先根據當前需要實現的任務需求為參與當前協作的智能機器人分配任務(步驟S510),接著分別針對每個智能機器人生成對應的任務描述(步驟S520);然后將任務描述以及對應的智能機器人的身份標識打包以生成多模態協作指示(步驟S530);最后將多模態協作指示輸出到所有參與協作的智能機器人(步驟S540)。
在機器人的日常應用環境中,分工協作的主控方往往是作為機器人擁有者的普通用戶。由于普通用戶的機器人操控場景通常是利用簡單的命令操控單一機器人,這就使得普通用戶很難以多個智能機器人為對象進行復雜的任務分配。
為了降低用戶的操作難度,使得普通用戶也可以簡單方便利用多個機器人以分工協作的方式實現自身的應用需求,在本發明一實施例中,利用智能設備(或智能機器人)來輔助進行性分工協作控制,從而降低用戶分工協作控制的實行難度。
具體的,在一實施例中,機器人在獲取到用戶的多模態輸入后,會判斷該用戶輸入是否需要協作響應(用戶的需求是否必須以分工協作的方式才能實現)。如果必須以分工協作的方式才能實現用戶需求,那么機器人就以分工協作輔助方的身份,根據用戶的需求自動進行分工協作任務的分配以及相關分工協作指令的生成以及發送。
具體的,如圖6所示,機器人接收用戶的多模態輸入(步驟S610),首先解析用戶輸入確定用戶需求(步驟S611),然后判斷是否需要協作響應(是否需要以多個機器人協作的方式來實現用戶需求)(步驟S612),如果不需要協作響應,則機器人與當前用戶進行一對一的人機交互(根據用戶需求直接生成交互輸出)(步驟S620)。
如果在步驟S612中機器人判斷需要以多個機器人協作的方式才能實現用戶需求,那么機器人首先根據用戶需求確定協作參與者,確定參與分工協作的智能機器人(獲取參與者的個體描述)(步驟S631);然后為每個參與分工協作的智能機器人分配任務以生成對應的任務描述(步驟S632);接著將任務描述以及對應的智能機器人的個體描述打包以生成多模態協作指示(步驟S633);最后將多模態協作指示發送到所有參與協作的智能機器人。
進一步的,在一實施例中,在步驟S631中,進行分工協作輔助的機器人將自身也認定為分工協作的參與者之一;在步驟S632中,為自身分配相應的分工協作任務;最后在步驟S640之后執行為自己分配的分工協作任務,并在每個機器人做完動作后,都將向主控方返回一個完成碼,所有的機器人完成動作后,控制終端就知道指令已經完成。。
在上述流程中,用戶只需要向單一的機器人輸出自身的交互需求,由機器人判斷具體的交互回應模式(是否采用分工協作方式實現交互需求,如何具體實現分工協作流程)。用戶的操作難度被大大降低。
基于本發明的分工協作方法,本發明還提出了一種可實現分工協作的機器。該機器人可以獨立的進行多模態輸出從而執行分工協作中一個參與個體的任務。由多個該機器人組合構成一個可以實現分工協作總體任務的機器人協作群體。即,在本發明一實施例中,單個智能機器人為包含多個智能機器人的機器人協作群體中的一個機器人。
針對機器人協作群體中的任意一個智能機器人,如圖7所示,機器人包括:
指示接收模塊710,其配置為與機器人協作群體中的其他智能機器人共同接收非定向發送的多模態協作指示;
指示確認模塊720,其配置為判斷多模態協作指示是否與當前機器人相關;
協作輸出模塊730,其配置為當多模態協作指示與當前機器人相關時生成并輸出響應多模態協作指示的多模態輸出數據。
進一步的,在一實施例中,機器人的指示確認模塊通過身份標識來判斷當前的多模態協作指示是否與自身相關。具體的,指示確認模塊配置為判斷多模態協作指示是否包含當前機器人的身份標識;當多模態協作指示包含當前機器人的身份標識時判斷多模態協作指示與當前機器人相關。
進一步的,在一實施例中,機器人的協作輸出模塊通過調用機器人上加載的應用程序來實現對多模態協作指示的響應。具體的,協作輸出模塊配置為解析多模態協作指示確定對應多模態協作指示的應用程序,基于多模態協作指示開啟并執行該應用程序。
對應本發明提出的用于執行分工協作的機器人,本發明還提出了一種分工協作控制系統,所述控制系統可以為裝載于各個機器人中的操作系統。如圖8所示,在一實施例中,系統包括:
任務分配模塊810,其配置為為參與當前協作的智能機器人分配任務并分別針對每個智能機器人生成對應的任務描述;
身份確認模塊820,其配置為獲取所述智能機器人的個體描述(具體的,在一實施例中,個體描述為機器人的身份標識);
指示生成模塊830,其配置為將所述任務描述與對應的智能機器人的個體描述打包以生成多模態協作指示;
指示輸出模塊840,其配置為將多模態協作指示發送到所有參與協作的智能機器人。
進一步的,本發明還提出了一種用于輔助進行分工協作控制的分工協作控制機器人。如圖9所示,在一實施例中,機器人包括
用戶需求獲取模塊910,其配置為獲取多模態的用戶輸入;
協作需求確認模塊920,其配置為判斷當前的用戶輸入是否需要協作響應;
協作參與者確認模塊930,其配置為當當前的用戶輸入需要協作響應時確定參與分工協作的智能機器人;
協作任務分配模塊940,其配置為分別針對每個參與分工協作的智能機器人生成對應的任務描述;
指示生成模塊950,其配置為將任務描述與對應的智能機器人的個體描述打包以生成多模態協作指示;
指示輸出模塊960,其配置為將多模態協作指示發送到所有參與協作的智能機器人。
雖然本發明所公開的實施方式如上,但所述的內容只是為了便于理解本發明而采用的實施方式,并非用以限定本發明。本發明所述的方法還可有其他多種實施例。在不背離本發明實質的情況下,熟悉本領域的技術人員當可根據本發明做出各種相應的改變或變形,但這些相應的改變或變形都應屬于本發明的權利要求的保護范圍。