System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及機器人技術,具體來說,涉及一種機器人動作并行執行的實現方法。
技術介紹
1、當前機器人技術得到長足的進步,而機器人編程仍然是關系到機器人產品應用推廣的至關重要的環節,它直接關系到機器人使用的性能和效率。然而,現有的機器人編程方法存在一些限制,特別是在串行和并行功能執行的靈活性方面。這些限制不僅影響了機器人的編程效率,也限制了其在復雜任務中的應用。
2、通常一個具有多自由度的機器人都是由很多的動作單元構成,它們的協同作用構成機器人的整體動作,比如執行頭部的抬起和低下,手臂的舉起和放下,機械手的抓取和松開,整個軀體的前進、后退以及旋轉等動作。還包括執行兩手臂合攏實現擁抱,雙腿的協調行走等,甚至嘴巴、眼睛和眉毛的相互配合而實現的表情等動作。實際上機器人執行動作都是要符合一定規定要求的,比如機器人跳舞,在某個時段要求機器人的軀體獨立移動到某個表演位置,然后要求左右兩只手臂同時動作,再之后要求手臂和腿腳又同時動作。
3、實際上高級機器人在執行動作時還要執行其他功能,要么在執行某個動作時需要先判斷一些外部傳感信息后再決定是否執行,如判斷手臂碰到障礙物時需要調整動作執行;要么執行某個動作時需要同時接受人的特別指令,比如一邊在執行某個動作一邊又在和人類交談。像這類操作通過現有編程方式實現,復雜程度非常高,且實現功能時都還存在著機械呆板,靈活性不強等問題。比如很多的跳舞機器人通常就是按固定的時間序列表格來執行動作,按照時間順序在某個時段某一個或某幾個動作單元執行相應的動作,從而實現串行和并行的動作的執行,也不
技術實現思路
1、鑒于現有的機器人并行編程方式存在著編程復雜、機械呆板、靈活性不強等技術問題,提供一種機器人動作并行執行的實現方法。本專利技術能夠高效地簡化機器人并行編程操作,可靈活地管理機器人行為的串行和并行執行,同時也方便調試和維護,可有利地推進高級智能機器人的發展和普及,讓機器人更友好地服務人類社會。
2、本專利技術采用的技術手段如下:
3、一種機器人動作并行執行的實現方法,包括編程階段、編譯階段和執行階段,所述編程階段包括以下步驟:
4、s1、根據機器人功能要求,在編寫需要并行執行的程序內容時,通過在需要并行執行的內容前面加入一條并行開始指示語句,同時在需要并行執行的內容結尾加入一條并行結束指示語句,將并行開始指示語句與并行結束指示語句之間的區域框定為并行語句執行區,未被框定的程序區域為串行語句執行區;
5、所述編譯階段包括:
6、s2、對在編程階段中編寫的程序進行編譯時,增加對并行開始指示語句、并行結束指示語句和并行退出指示語句的編譯;
7、s3、對在編程階段中編寫的程序編譯時,增加“是否并行標志”維度,所述“是否并行標志”維度在并行語句執行區的語句編譯結果為“yes|并行”,在串行語句執行區的語句編譯結果為“no|-”;
8、s4、對在編程階段中編寫的程序編譯時,增加對并行開始指示語句和并行結束指示語句不是有序成對出現情況下,提示“并行語句邊界設定類語法錯誤”;同時增加對并行退出指示語句不是出現在并行開始指示語句和并行結束指示語句有序區域內時,提示“并行語句退出并行類語法錯誤”;
9、所述執行階段包括:
10、s5、對所述串行語句執行區的語句內容依次順序執行,對所述并行語句執行區的語句內容同時并行執行;
11、s6、對所述并行語句執行區的語句在并行執行過程中,當有并行退出指示語句時,循環判斷并行退出指示語句所附屬的退出條件,一旦條件滿足則退出當前的并行執行區。
12、進一步地,所述并行執行區由并行開始指示語句和并行結束指示語句進行設定,其中所述并行開始指示語句被設置為:“并行開始()”;
13、所述并行結束指示語句被設置為:“并行結束()”;
14、所述并行退出指示語句被設置為:“退出并行()”。
15、進一步地,所述程序內容包括常規編程語句、動作狀態判斷語句和動作執行語句;
16、所述常規編程語句用于實現賦值、跳轉、循環和調用函數功能;
17、所述動作狀態判斷語句用于執行動作狀態判斷功能;
18、所述動作執行語句用于實現機器人執行單元的驅動功能。
19、進一步地,所述方法還包括:針對每一個動作執行語句設置執行狀態變量,根據動作執行完成與否對所述執行狀態變量賦值。
20、進一步地,并行語句執行區的語句執行時,在所述并行語句執行區建立并行標志,對帶有并行標記的動作執行語句建立到并行動作鏈表中,并監測動作狀態;循環判斷并行動作鏈表中每一個節點對應的動作是否執行完成,如果完成則從鏈表中刪除。
21、較現有技術相比,本專利技術具有以下優點:
22、1、本專利技術通過按需增加區域限定語句“并行開始()”和“并行結束()”劃分出并行語句執行區,在該區域內的語句都是并行執行,在該區域之外的語句都是串行執行,使之在不破壞現有的編程格局的前提下,將串行和并行功能以層次分明地表示,實現了編程靈活性,極大簡化了串行和并行功能的編程和調試,易于管理和維護,可快速高效地開發機器人的復雜程序。
23、2、本專利技術在并行工作區內,通過加入判斷多種信息狀態結果的程序語句,比如,加入判斷外部傳感信息以及自身動作的工作狀態的語句,然后加入退出指示語句(如“退出并行()”),就可退出當前的并行工作區。這樣,就可隨時根據外部情況而退出所在的并行工作區,使之并行操控更加靈活,改變了傳統機器人編程的機械呆板和操作上的不靈活性。
24、3、本專利技術在并行工作區內,加入的判斷并行動作單元的自身狀態的語句,可以是并行工作區內多個并行動作單元的動作狀態的各種邏輯組合條件,比如,在并行工作區中執行a、b、c三個動作單元的并行動作,既可以通過“或”邏輯,判斷它們的工作狀態只要有一個完成即可退出并行,也可通過“與”邏輯,判斷直到它們所有動作都完成才退出并行工作區,也可以通過判斷它們的“與”和“或”組合條件退出并行工作區。這樣,可以根據并行工作區內動作單元的各種狀態的組合結果而進行靈活操作。
25、4、本專利技術在并行工作區內,除了機器人動作單元的動作控制語句,還可以包括其他的非動作類的各種程序語句,比如在執行并行動作的同時,可以是執行播放視頻、播放圖片、輸出語音以及圖像識別等其他操作語句。從而既可實現多模態信息的組合輸入,也可實現多模態信息的組合輸出,能夠有效實現機器人智能和動作的有機結合。
26、5、本專利技術在并行工作區內,加入的退出語句“退出并行()”及其附屬的判斷條件,可以出現在并行工作區中的任何位置,比如,執行a動作單元的動作語句之后,并不需要馬上就必須進行a動作單元的狀態條件判斷,也可以在執行完其他語句之后再進行a動作單元的動作狀態檢測,由于本文檔來自技高網...
【技術保護點】
1.一種機器人動作并行執行的實現方法,其特征在于,包括編程階段、編譯階段和執行階段,所述編程階段包括以下步驟:
2.根據權利要求1所述的一種機器人動作并行執行的實現方法,其特征在于,所述并行執行區由并行開始指示語句和并行結束指示語句進行設定,其中所述并行開始指示語句被設置為:“并行開始()”;
3.根據權利要求1所述的一種機器人動作并行執行的實現方法,其特征在于,所述程序內容包括常規編程語句、動作狀態判斷語句和動作執行語句;
4.根據權利要求1所述的一種機器人動作并行執行的實現方法,其特征在于,所述方法還包括:針對每一個動作執行語句設置執行狀態變量,根據動作執行完成與否對所述執行狀態變量賦值。
5.根據權利要求1所述的一種機器人動作并行執行的實現方法,其特征在于,并行語句執行區的語句執行時,在所述并行語句執行區建立并行標志,對帶有并行標記的動作執行語句建立到并行動作鏈表中,并監測動作狀態;循環判斷并行動作鏈表中每一個節點對應的動作是否執行完成,如果完成則從鏈表中刪除。
【技術特征摘要】
1.一種機器人動作并行執行的實現方法,其特征在于,包括編程階段、編譯階段和執行階段,所述編程階段包括以下步驟:
2.根據權利要求1所述的一種機器人動作并行執行的實現方法,其特征在于,所述并行執行區由并行開始指示語句和并行結束指示語句進行設定,其中所述并行開始指示語句被設置為:“并行開始()”;
3.根據權利要求1所述的一種機器人動作并行執行的實現方法,其特征在于,所述程序內容包括常規編程語句、動作狀態判斷語句和動作執行語句;
【專利技術屬性】
技術研發人員:王偉,
申請(專利權)人:大連語智星科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。