單驅動自主網絡拳擊模型機器人系統及該機器人系統的控制方法
【技術領域】
[0001] 本發明涉及拳擊模型機器人的控制技術。
【背景技術】
[0002] 拳擊是一項驚險刺激的體育運動,所以常被用來作為新裝置的主題。這些裝置可 以分成幾類,第一類是與拳擊功能相關的裝置,如模擬拳擊動作的裝置,供人作為擊打對象 之用,采用類似原理的還有電子系統虛擬顯示拳擊動作的裝置;第二類是可以對拳擊動作 進行輔助的裝置;第三類,將拳擊用作娛樂玩具,還有可以人在其中操作的機械拳擊裝置, 有兩人可以分別操作的仿拳擊小機構,或單體仿拳擊動作小機構作為觀賞之用,但目前這 類產品結構復雜、動作不靈活,且難以實現對左右臂分別控制,不具有自主對抗功能以及無 法進行網絡化管理。
【發明內容】
[0003] 本發明的目的是為了解決現有的拳擊模型機器人結構復雜、動作不靈活,且難以 實現使用同一個電機對左右臂分別控制、不具有自主對抗功能以及無法進行網絡化管理的 問題,提供一種單驅動自主網絡拳擊模型機器人系統及該機器人系統的控制方法。
[0004] 本發明所述的單驅動自主網絡拳擊模型機器人系統包括機器人和網絡服務器,所 述機器人能夠與網絡服務器進行通信;
[0005] 所述機器人包括頭部1、頸部2、身體3、左出拳機構4、右出拳機構5、前行走機構 6、后行走機構7和中間升高凸輪8 ;
[0006] 頭部1設置有頭部被擊打區域、紅外發射與接收測距單元和聲光顯示裝置和外部 目標傳感器,該外部目標傳感器包括圖像傳感器和解碼器;
[0007] 身體3的內部設置有旋轉凸輪,該旋轉凸輪位于左出拳機構4和右出拳機構5之 間,用于帶動左出拳機構4和右出拳機構5動作,身體3內還設置有分別用于驅動頭部1、頸 部2、旋轉凸輪、前行走機構6、后行走機構7和中間升高凸輪8的電動機以驅動各電動機的 電動機驅動電路,身體3的內部還設置有無線通信模塊、聲光驅動電路、一號微處理器和身 體振動傳感器,身體的胸部設置有被擊打區域9,其中被擊打區域由能夠感受壓力的壓力傳 感器或壓力傳感器陣列構成;
[0008] 所述中間升高凸輪8位于身體3底部的中間;
[0009] 所述的一號微處理器內嵌入有軟件實現的自主對抗模塊,所述自主對抗模塊包括 以下單元:
[0010] 設置單元:設置頭部擺角、路徑數組和初始值、目標特征庫、測距特征庫及紅外照 射光數組,所述路徑數組包括接近目標路徑數組和躲避路徑數組,目標特征庫包括各朝向 的特征;
[0011] 目標識別和路徑規劃子模塊調用單元:調用目標識別和路徑規劃子模塊;
[0012] 被光照傳感子模塊調用單元:調用被光照傳感子模塊;
[0013] 被擊打傳感處理子模塊調用單元:調用被擊打傳感處理子模塊;
[0014] 所述被擊打傳感處理子模塊為:初始化被擊打傳感器,讀取被擊打傳感器發來的 數據,根據該數據判斷頭部1或身體3是否被擊打,如果判斷結果為是,則設置頭部被擊打 標志或身體被擊打標志,否則,結束被擊打傳感處理子模塊;
[0015] 身體振動傳感子模塊調用單元:調用身體振動傳感子模塊;
[0016] 所述身體振動傳感子模塊為:初始化振動傳感器,讀取振動傳感器發來的數據,根 據該數據判斷是否有振動,如果判斷結果為是,則設置相應的"標志",否則結束身體振動傳 感子模塊;
[0017] 驅動與顯示子模塊調用單元:調用驅動與顯示子模塊;
[0018] 無線通信子模塊調用單元:調用無線通信子模塊;
[0019] 停止判斷單元:判斷是否接收到停止信號,并在判斷結果為是時結束該自主對抗 模塊,在判斷結果為否時執行目標識別和路徑規劃子模塊調用單元;
[0020] 所述目標識別和路徑規劃子模塊包括以下單元:
[0021] 路徑提取單元:提取設置的路徑數組作為當前軌跡數據,并設置相應的"標志";
[0022] 頭部擺動單元:按預置的頭部擺角控制頭部1左右擺動,并設置相應的"標志";
[0023]目標判斷單元:提取圖像傳感器所攝錄的傳感圖像,對該傳感圖像進行預處理,然 后進行特征提取,將提取的特征與目標特征庫中的特征相吻合,如果判斷結果為是,則認為 發現目標,并執行頭部調整單元,否則,結束目標識別和路徑規劃子模塊;
[0024]頭部調整單元:調整頭部1的轉角,使面部朝向目標;
[0025]目標距離測定子模塊:測量機器人與目標的距離;
[0026]目標接近單元:按照"接近目標路徑數組"控制機器人接近目標,并設置相應"標 志";
[0027] 距離判斷單元:判斷機器人與目標的距離是否小于或等于可擊打距離,如果判斷 結果為是,則執行擊打單元,否則,執行躲避判斷單元;
[0028] 擊打單元:設定機器人自身高度與朝向,并設置相應"標志",然后控制機器人發出 擊打動作;
[0029] 躲避判斷單元:根據對方朝向及被擊打振動情況是否需要躲避,如果判斷結果為 是,則執行躲避控制單元,否則,結束目標識別和路徑規劃子模塊;
[0030] 躲避控制單元:根據躲避路徑數組控制機器人發出躲避動作,并設置相應的"標 志";
[0031] 所述的目標距離測定子模塊包括以下單元:
[0032] 紅外光圖像發射單元:根據紅外照射光數組,控制紅外發射部件發射預定的紅外 光圖像,同時,接收紅外接收陣列接收到的紅外光圖像;
[0033]目標圖像重構及特征提取單元:將發射的紅外光圖像和接收的紅外光圖像進行編 碼比較并重構目標圖像,然后對該目標圖像進行特征提取;
[0034]目標特征判斷單元:提取的特征與目標特征進行比較,判斷二者是否相吻合,如果 判斷結果為是,則執行距離計算單元,否則,返回執行紅外光圖像發射單元;
[0035] 距離計算單元:計算機器人與目標的距離;
[0036] 所述驅動與顯示子模塊包括以下單元:
[0037] 初始化單元:初始化電動機驅動端口;
[0038] "標志"數據讀取單元:讀取"標志"數據;
[0039] 動作事件判斷單元:根據"標志"數據判斷是否有動作事件發生,如果判斷結果為 是,則執行標志位置位及驅動單元,否則,執行顯示判斷單元;
[0040] 所述動作事件包括后退、前進、前右轉/右行、前左轉/左行、凸輪前轉升高、凸輪 后轉升高、擊打、頭部左轉及頭部右轉;
[0041] 標志位置位及驅動單元:把動作標志寄存器相應的動作標志位置位,并通過電動 機驅動電路驅動機器人發出相應動作;
[0042] 顯示判斷單元:判斷是否有需要顯示的"標志",如果判斷結果為是,則將顯示標志 寄存器的相應標志位置位,并將顯示內容發送至數據寄存器,以控制聲光顯示裝置顯示相 應的信息,然后結束驅動與顯示子模塊,否則,結束驅動與顯示子模塊;
[0043] 所述無線通信子模塊包括以下單元:
[0044] 初始化通信模塊的單元;
[0045] 將機器人的"標志"發送給網絡服務器的單元;
[0046] 清除已發送的"標志"的單元;
[0047] 接收網絡服務器發來的控制命令、并設置相應的"標志"的單元;
[0048] 與網絡服務器交互進行注冊、登錄、積分、及交友信息通信的單元;
[0049] 所述的網絡服務器內嵌入有軟件實現的管理模塊,該管理模塊包括以下單元:
[0050] 用于接收機器人發來的"標志"的單元;
[0051] 與機器人交互進行注冊、登錄、積分及交友的信息通信的單元。
[0052] 上述單驅動自主網絡拳擊模型機器人系統的控制方法包括自主對抗方法和管理 方法;
[0053] 所述自主對抗方法包括以下步驟:
[0054] 設置步驟:設置路徑數組和初始值、目標特征庫、測距特征庫及紅外照射光數組, 所述路徑數組包括接近目標路徑數組和躲避路徑數組,目標特征庫包括各朝向的特征,并 在該步驟結束之后執行目標識別和路徑規劃子過程調用步驟,初始值包括頭部擺角;
[0055]目標識別和路徑規劃子過程調用步驟:調用目標識別和路徑規劃子過程,并在該 步驟結束之后執行被擊打傳感處理子過程調用步驟;
[0056] 被擊打傳感處理子過程調用步驟:調用被擊打傳感處理子過程,并在該步驟結束 之后執行身體振動傳感子過程調用步驟;
[0057] 所述被擊打傳感處理子過程為:初始化被擊打傳感器,讀取被擊打傳感器發來的 數據,根據該數據判斷頭部1或身體3是否被擊打,如果判斷結果為是,則設置頭部被擊打 標志或身體被擊打標志,否則,結束被擊打傳感處理子過程;
[0058] 身體振動傳感子過程調用步驟:調用身體振動傳感子過程,并在該步驟結束之后 執行驅動與顯示子過程調用步驟;
[0059] 所述身體振動傳感子過程為:初始化振動傳感器,讀取振動傳感器發來的數據,根 據該數據判斷是否有振動,如果判斷結果為是,則設置相應的"標志",否則結束身體振動傳 感子過程;
[0060] 驅動與顯示子過程調用步驟:調用驅動與顯示子過程,并在該過程結束之后執行 無線通信子過程調用步驟;
[0061] 無線通信子過程調用步驟:調用無線通信子過程,并在該步驟結束之后執行停止 判斷步驟;
[0062] 停止判斷步驟:判斷是否接收到停止信號,并在判斷結果為是時結束該自主對抗 方法,在判斷結果為否時執行目標識別和路徑規劃子過程調用步驟;
[0063] 所述目標識別和路徑規劃子過程包括以下步驟:
[0064] 路徑提取步驟:提取設置的路徑數組作為當前軌跡數據,并設置相應的"標志",并 在該步驟結束之后執行頭部擺動步驟;
[0065] 頭部擺動步驟:按預置的頭部擺角控制頭部1左右擺動,并設置相應的"標志",并 在該步驟結束之后執行目標判斷步驟;
[0066]目標判斷步驟:提取圖像傳感器所攝錄的傳感圖像,對該傳感圖像進行預處理,然 后進行特征提取,將提取的特征與目標特征庫中的特征相吻合,如果判斷結果為是,則認為 發現目標,并執行頭部調整步驟,否則,結束目標識別和路徑規劃子過程;
[0067] 頭部調整步驟:調整頭部1的轉角,使面部朝向目標,并在該步驟結束之后執行目 標距離測定子過程;
[0068]目標距離測定子過程:測量機器人與目標的距離,并在該步驟結束之后執行目標 接近步驟;
[0069]目標接近步驟:按照"接近目標路徑數組"控制機器人接近目標,并設置相應"標 志",并在該步驟結束之后執行距離判斷步驟;
[0070] 距離判斷步驟:判斷機器人與目標的距離是否小于或等于可擊打距離,如果判斷 結果為是,則執行擊打步驟,否則,執行躲避判斷步驟;
[0071] 擊打步驟:設定機器人自身高度與朝向,并設置相應"標志",然后控制機器人發出 擊打動作,并在該步驟結束之后執行躲避判斷步驟;
[0072] 躲避判斷步驟:根據對方朝向及被擊打振動情況是否需要躲避,如果判斷結果為 是,則執行躲避控制步驟,否則,結束目標識別和路徑規劃子過程