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