六足機(jī)器人操縱系統(tǒng)及操縱方法
【專利摘要】六足機(jī)器人操縱系統(tǒng)及操縱方法,涉及一種機(jī)器人操縱系統(tǒng)及操縱方法。本發(fā)明的目的是為了解決六足機(jī)器人操縱系統(tǒng)的通信實時性差、操縱復(fù)雜的問題和人機(jī)協(xié)同結(jié)合性不好的問題。本發(fā)明六足機(jī)器人操縱系統(tǒng)包括以下模塊:電機(jī)使能控制模塊、停止模塊、參數(shù)設(shè)置模塊、位置重置模塊、位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊、輪式控制模塊及位置顯示模塊;利用本發(fā)明對對機(jī)器人進(jìn)行操縱可以提升機(jī)器人操縱系統(tǒng)的通信實時性、降低了機(jī)器人的操縱復(fù)雜程度并提升人機(jī)協(xié)同結(jié)合性。本發(fā)明適用于六足機(jī)器人的操縱。
【專利說明】六足機(jī)器人操縱系統(tǒng)及操縱方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種機(jī)器人操縱系統(tǒng)及操縱方法。
【背景技術(shù)】
[0002]電驅(qū)動六足機(jī)器人操縱系統(tǒng)是一個復(fù)雜系統(tǒng)。在這個系統(tǒng)中,人通過感官從被操作對象處獲得信息,經(jīng)過思維做出動作決策,由手、腳或人體某些部位執(zhí)行,形成操作行為。操作的結(jié)果使機(jī)械進(jìn)入新的狀態(tài),這種新狀態(tài)又從環(huán)境中或顯示儀表中反映出新的信號,又可能使操作者做出新的操作。
[0003]操縱系統(tǒng)設(shè)計是對傳統(tǒng)的只考慮機(jī)器的設(shè)計的一個重大變革,以往機(jī)器人系統(tǒng)僅關(guān)注于機(jī)器人本體和控制系統(tǒng)設(shè)計,沒有優(yōu)化操縱系統(tǒng)的實時性、簡易型和人機(jī)協(xié)同結(jié)合性。本設(shè)計是將操縱系統(tǒng)看作整機(jī)系統(tǒng)的一個環(huán)節(jié),考慮人的特性,設(shè)計出以人為主的最佳人機(jī)系統(tǒng)。操縱系統(tǒng)設(shè)計中的一個重要問題,是人機(jī)功能分配或人機(jī)結(jié)合。將人和機(jī)器的特點有機(jī)的結(jié)合起來,取長補(bǔ)短,就可得到最佳性能的操縱系統(tǒng)。
[0004]操縱系統(tǒng)軟件的良好設(shè)計是六足機(jī)器人能夠良好響應(yīng)駕駛員控制命令以及運(yùn)動控制系統(tǒng)及時接受駕駛員控制指令的基礎(chǔ)。駕駛員對六足機(jī)器人的一切操控都是通過操縱主機(jī)中軟件的運(yùn)行來實現(xiàn)命令的解析與傳達(dá)。操縱系統(tǒng)的合理設(shè)計是六足機(jī)器人良好運(yùn)行必不可缺的條件。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的是為了解決六足機(jī)器人操縱系統(tǒng)的通信實時性差、操縱復(fù)雜的問題和人機(jī)協(xié)同結(jié)合性不好的問題。進(jìn)而提出了一種六足機(jī)器人操縱系統(tǒng)及操縱方法。
[0006]六足機(jī)器人操縱系統(tǒng),包括以下模塊:電機(jī)使能控制模塊、停止模塊、參數(shù)設(shè)置模塊、位置重置模塊、位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊、輪式控制模塊及位置顯示模塊;
[0007]電機(jī)使能控制模塊,用于機(jī)器人執(zhí)行動作電機(jī)的通電控制;
[0008]停止模塊,用于機(jī)器人執(zhí)行動作的急停和停止控制;
[0009]參數(shù)設(shè)置模塊是對機(jī)器人的參數(shù)進(jìn)行輸入,包括:
[0010]LegLength_l/2/3參數(shù)輸入子模塊,即基節(jié)長度、大腿長度和小腿長度參數(shù)輸入子模塊;用于基節(jié)長度、大腿長度和小腿長度參數(shù)輸入;
[0011]CSRot_l/2/3/4/5/6參數(shù)輸入子模塊,即局部坐標(biāo)系旋轉(zhuǎn)角度參數(shù)輸入子模塊;用于局部坐標(biāo)系旋轉(zhuǎn)角度參數(shù)輸入;
[0012]Edpt_Bia_X/Y/Z參數(shù)輸入子模塊,即平臺偏移距離參數(shù)輸入子模塊;用于平臺偏移距離參數(shù)輸入;
[0013]Scafac_l/2/3參數(shù)輸入子模塊,即跟、髖、膝關(guān)節(jié)比例因子參數(shù)輸入子模塊;用于跟、髖、膝關(guān)節(jié)比例因子參數(shù)輸入;
[0014]Refhgh參數(shù)輸入子模塊,即平臺參考面高度參數(shù)輸入子模塊;用于平臺參考面高度參數(shù)輸入;
[0015]Hordist參數(shù)輸入子模塊,即基節(jié)距足端橫向距離參數(shù)輸入子模塊;用于基節(jié)距足端橫向距離參數(shù)輸入;
[0016]Swhgh參數(shù)輸入子模塊,即足端擺動高度參數(shù)輸入子模塊;用于足端擺動高度參數(shù)輸入;
[0017]Zprehgh參數(shù)輸入子模塊,即足端預(yù)抬高度參數(shù)輸入子模塊;用于足端預(yù)抬高度參數(shù)輸入;
[0018]反射參數(shù)輸入子模塊,用于反射參數(shù)輸入;
[0019]其中,反射參數(shù)輸入子模塊包括:
[0020]Edref_Depth參數(shù)輸入子模塊,即反射下探深度參數(shù)輸入子模塊;用于反射下探深度參數(shù)輸入;
[0021]Edref_Fwdis參數(shù)輸入子模塊,即反射前探距離參數(shù)輸入子模塊;用于反射前探距離參數(shù)輸入;
[0022]Edref_Fwhgh參數(shù)輸入子模塊,即反射前探高度參數(shù)輸入子模塊;用于反射前探高度參數(shù)輸入;
[0023]Edref_Backdis參數(shù)輸入子模塊,即反射后撤距離參數(shù)輸入子模塊;用于反射后撤距離參數(shù)輸入;
[0024]Edref_Reswhgh參數(shù)輸入子模塊,即反射再擺高度參數(shù)輸入子模塊;用于反射再擺高度參數(shù)輸入;
[0025]六足機(jī)器人平臺是除了腿部以外的body部分,以六足機(jī)器人平臺建立的坐標(biāo)系分為全局坐標(biāo)系和局部坐標(biāo)系:平臺全局坐標(biāo)系是以平臺O圓心,X軸、Y軸和Z軸滿足右手螺旋法則,其中Z為沿著重力反方向的坐標(biāo)軸,X為沿著機(jī)體前進(jìn)方向的坐標(biāo)軸,Y為沿著機(jī)體橫向的坐標(biāo)軸,平臺全局坐標(biāo)系用于描述各個腿與平臺間的位置關(guān)系;平臺局部坐標(biāo)系分別在六條腿上,基節(jié)位置是坐標(biāo)系的原點,六條腿各自的原點分別為oi(i = I…6),xi (i = Ρ..6)軸和yi(i = Ρ..6)軸分別是經(jīng)過坐標(biāo)平移和旋轉(zhuǎn)得來的單腿方向坐標(biāo)軸,六條腿分別對應(yīng)于六個坐標(biāo)系CSi (i = Ρ..6);
[0026]六足機(jī)器人腿部由三部分組成:跟關(guān)節(jié)、髖關(guān)節(jié)及膝關(guān)節(jié);α、β、Υ分別為跟、髖和膝關(guān)節(jié)的轉(zhuǎn)角;
[0027]位置重置模塊針對機(jī)器人六條腿在局部坐標(biāo)系下對機(jī)器人單腿位置進(jìn)行設(shè)定,標(biāo)定機(jī)器人初始位置,使機(jī)器人做回零運(yùn)動;位置重置模包括:
[0028]位置設(shè)定子模塊,用于在Choose_CS_l/2/3/4/5/6下對局部CS xyz位置的設(shè)定;是用于對局部坐標(biāo)系下X位置Ed_xPos的設(shè)定、局部坐標(biāo)系下y位置Ed_yPos的設(shè)定和局部坐標(biāo)系下z位置Ed_ZPos的設(shè)定;
[0029]位置顯示模塊用于全局坐標(biāo)系下機(jī)器人六條腿CSP0S_L0cal_l/2/3/4/5/6的X方向的位置CSXP0S、Y方向的位置CSYPOS、Z方向的位置CSZPOS的坐標(biāo)信息顯示,還用于局部坐標(biāo)系下機(jī)器人六條腿CSPos_Global_l/2/3/4/5/6的x方向的位置CSxPOS、y方向的位置CSyPOS、z方向的位置CSzPOS的坐標(biāo)信息顯示以及用于機(jī)器人六條腿單腿關(guān)節(jié)CSANGL_l/2/3/4/5/6的角度信息顯示,即單腿關(guān)節(jié)α、β、Y角度信息顯示;
[0030]位姿控制模塊用于對機(jī)器人的位置控制及姿態(tài)控制,包括:
[0031]Bt_Ctrchange子模塊,即姿態(tài)控制/位置控制子模塊,用于通過設(shè)定運(yùn)動時間TM及運(yùn)動距離,實現(xiàn)位置控制模式下的前后移動、左右移動及上下移動或通過設(shè)定運(yùn)動時間TM及運(yùn)動角度,實現(xiàn)姿態(tài)控制模式下的前后傾斜、左右傾斜及左右旋轉(zhuǎn)功能;
[0032]Bt_Front子模塊,即平臺前移/前傾子模塊,用于平臺前移/前傾;
[0033]Bt_Behind子模塊,即平臺后移/后傾子模塊,用于平臺后移/后傾;
[0034]Bt_Left子模塊,即平臺左移/左傾子模塊,用于平臺左移/左傾;
[0035]Bt_Right子模塊,即平臺右移/右傾子模塊,用于平臺右移/右傾;
[0036]Bt_Up子模塊,即平臺上移子模塊,用于平臺上移;
[0037]Bt_Down子模塊,即平臺下移子模塊,用于平臺下移;
[0038]步態(tài)控制模塊,通過設(shè)定步態(tài)運(yùn)動時間Ed_MovTM、前進(jìn)方向運(yùn)動向量Ed_Xdirct、側(cè)向運(yùn)動距離Ed_Ydirct和旋轉(zhuǎn)角度Ed_Rotdegr,實現(xiàn)機(jī)器人的步態(tài)運(yùn)動;機(jī)器人的局部運(yùn)動以前進(jìn)方向為X方向,左側(cè)方向為Y方向;步態(tài)控制模塊包括:
[0039]Bt_2GaitMov子模塊,即二步態(tài)運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的二步態(tài)運(yùn)動;
[0040]Bt_3GaitMov子模塊,即三步態(tài)運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的三步態(tài)運(yùn)動;
[0041]Bt_6GaitMov子模塊,即六步態(tài)運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的六步態(tài)運(yùn)動;
[0042]Bt_RotGaitCtr子模塊,即旋轉(zhuǎn)模式運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的旋轉(zhuǎn)運(yùn)動;
[0043]Bt_Stop子模塊,即停止運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的運(yùn)動停止;
[0044]單腿控制模塊分為計算機(jī)端單腿控制子模塊和操縱桿端單腿控制子模塊;用于實現(xiàn)計算機(jī)端單腿控制子模塊和操縱桿端單腿控制子模塊的切換;
[0045]操縱桿端單腿控制子模塊下達(dá)六足機(jī)器人在操縱桿控制模式下的相關(guān)的單腿運(yùn)動控制參數(shù),用于單腿行進(jìn)方向控制和單腿關(guān)節(jié)控制;操縱桿端單腿控制子模塊包括:
[0046]LegNumber子模塊,即操縱腿子模塊,用于對不同的單腿進(jìn)行控制;
[0047]JointControl子模塊,即足端/關(guān)節(jié)控制子模塊,用于對單腿上的足端/關(guān)節(jié)進(jìn)行控制;
[0048]FootXSpeed子模塊,即足端X軸速度子模塊,用于全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的設(shè)置;
[0049]FootYSpeed子模塊,即足端Y軸速度子模塊,用于全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的設(shè)置;
[0050]FootZSpeed子模塊,即足端Z軸速度子模塊,用于全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的設(shè)置;
[0051]GJointSpeed子模塊,即跟關(guān)節(jié)轉(zhuǎn)速子模塊,用于實現(xiàn)跟關(guān)節(jié)轉(zhuǎn)速的控制;
[0052]KJointSpeed子模塊,即髖關(guān)節(jié)轉(zhuǎn)速子模塊,用于實現(xiàn)髖關(guān)節(jié)轉(zhuǎn)速的控制;
[0053]XJointSpeed子模塊,即膝關(guān)節(jié)轉(zhuǎn)速子模塊,用于實現(xiàn)膝關(guān)節(jié)轉(zhuǎn)速的控制;
[0054]計算機(jī)端單腿控制子模塊通過設(shè)定單腿運(yùn)動時間ED_MovTA、單腿曲線運(yùn)動時間ED_MovTS、單腿運(yùn)動速度ED_MovF及單腿運(yùn)動增量距離ED_MovINC,控制單腿單關(guān)節(jié)運(yùn)動,在全局坐標(biāo)系和局部坐標(biāo)系下實現(xiàn)機(jī)器人的各運(yùn)動方向上的運(yùn)動;計算機(jī)端單腿控制子模塊包括:
[0055]CM_CSChoose子模塊,即單腿控制選擇子模塊,用于對控制的單腿進(jìn)行選擇;
[0056]CM_JointChoose子模塊,即關(guān)節(jié)選擇子模塊,用于對單腿上的關(guān)節(jié)進(jìn)行選擇;
[0057]ET_JogSpeed子模塊,即單關(guān)節(jié)運(yùn)動速度子模塊,用于對單腿上的關(guān)節(jié)運(yùn)動速度進(jìn)行控制;
[0058]BT_JogFw子模塊,即單關(guān)節(jié)正轉(zhuǎn)子模塊,用于實現(xiàn)關(guān)節(jié)的正轉(zhuǎn);
[0059]BT_JogRv子模塊,即單關(guān)節(jié)反轉(zhuǎn)子模塊,用于實現(xiàn)關(guān)節(jié)的反轉(zhuǎn);
[0060]BT_Glblocctr子模塊,即全局或局部坐標(biāo)系切換子模塊,用于實現(xiàn)全局或局部坐標(biāo)系的切換;包括:
[0061]BT_XFff子模塊,即機(jī)器人全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動向量子模塊,用于全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的設(shè)置;
[0062]BT_YFW子模塊,即機(jī)器人全局坐和局部標(biāo)系下側(cè)向方向運(yùn)動向量子模塊,用于全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的設(shè)置;
[0063]BT_ZFW子模塊,即機(jī)器人全局和局部坐標(biāo)系下垂向方向運(yùn)動向量子模塊,用于全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的設(shè)置;
[0064]站立收起控制模塊,通過設(shè)定運(yùn)動時間ED_MovTA、運(yùn)動曲線時間ED_MovTS、運(yùn)動速度ED_MovF、XY面運(yùn)動起始點及Z向增量值ED_StandINC、至運(yùn)動規(guī)劃起始點及Z位置ED_StartZ、運(yùn)動到指定高度Z位置,實現(xiàn)機(jī)器人整機(jī)的站立運(yùn)動和回歸初始位置運(yùn)動;
[0065]以及通過設(shè)定局部坐標(biāo)系下X方向目標(biāo)位置ED_PkupX、局部坐標(biāo)系下Y方向目標(biāo)位置ED_PkupY、局部坐標(biāo)系下Z方向目標(biāo)位置ED_PkupZ實現(xiàn)人的收起運(yùn)動;
[0066]輪式控制模塊通過設(shè)定輪式模式的加/減速時間ED_Time、行進(jìn)速度ED_Speed、轉(zhuǎn)彎內(nèi)徑ED_Inner_Diameter及原地轉(zhuǎn)彎角速度ED_Anspeed,實現(xiàn)機(jī)器人輪式模式下的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、原地左轉(zhuǎn)及原地右轉(zhuǎn)的功能;輪式控制模塊包括:
[0067]BT_F0RWARD子模塊,即輪式前進(jìn)模塊,用于實現(xiàn)機(jī)器人的輪式前進(jìn);
[0068]BT_BACK子模塊,即輪式后退模塊,用于實現(xiàn)機(jī)器人的輪式后退;
[0069]BT_LTURN子模塊,即輪式左轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式左轉(zhuǎn);
[0070]BT_RTURN子模塊,即輪式右轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式右轉(zhuǎn);
[0071]BT_0NLTURN子模塊,即輪式原地左轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式原地左轉(zhuǎn);
[0072]BT_0NRTURN子模塊,即輪式原地右轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式原地右轉(zhuǎn);
[0073]電機(jī)使能控制模塊、參數(shù)設(shè)置模塊、位置重置模塊先后獨(dú)立運(yùn)行;
[0074]輪式控制模塊獨(dú)立運(yùn)行;
[0075]位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊相互獨(dú)立運(yùn)行;位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊運(yùn)行之前,首先調(diào)用參數(shù)設(shè)置模塊,根據(jù)參數(shù)設(shè)置模塊中的參數(shù)和位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊中的設(shè)置參數(shù)來執(zhí)行;步態(tài)控制模塊運(yùn)行時,如果某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用單腿控制模塊中的操縱桿端單腿控制子模塊進(jìn)行輔助控制;
[0076]位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊運(yùn)行時的參數(shù)信息反應(yīng)到位置顯示模塊中,由位置顯示模塊進(jìn)行顯示;
[0077]停止模塊獨(dú)立運(yùn)行。
[0078]利用六足機(jī)器人操縱系統(tǒng)對機(jī)器人進(jìn)行操縱的方法,包括以下步驟:
[0079]步驟1:運(yùn)行電機(jī)使能控制模塊,使電機(jī)處于工作狀態(tài);
[0080]步驟2:運(yùn)行位置重置模塊,在局部坐標(biāo)系下分別設(shè)置機(jī)器人腿部的初始位置,使機(jī)器人做回零運(yùn)動;
[0081]設(shè)置六條腿ChOOSe_CS_l/2/3/4/5/6在局部坐標(biāo)系下的機(jī)器人單腿初始位置,包括:x位置Ed_xPos的設(shè)定、局部坐標(biāo)系下y位置Ed_yPos的設(shè)定和z位置Ed_zPos的設(shè)定;
[0082]步驟3:根據(jù)機(jī)器人的實際情況,運(yùn)行系統(tǒng)參數(shù)設(shè)置模塊,設(shè)置系統(tǒng)參數(shù);包括:
[0083]輸入LegLength_l/2/3,即基節(jié)長度、大腿長度和小腿長度;
[0084]輸入CSRot_l/2/3/4/5/6,即局部坐標(biāo)系旋轉(zhuǎn)角度;
[0085]輸入Edpt_Bia_X/Y/Z,即平臺偏移距離參數(shù);
[0086]輸入Scafac_l/2/3,即跟、髖、膝關(guān)節(jié)比例因子參數(shù);
[0087]輸入Refhgh,即平臺參考面高度參數(shù);
[0088]輸入Hordi St,即基節(jié)距足端橫向距離參數(shù);
[0089]輸入Swhgh,即足端擺動高度參數(shù);
[0090]輸入Zprehgh,即足端預(yù)抬高度參數(shù);
[0091]輸入反射參數(shù),包括:
[0092]輸入Edref_Depth,即反射下探深度參數(shù);
[0093]輸入Edref_Fwdis,即反射前探距離參數(shù);
[0094]輸入Edref_Fwhgh,即反射前探高度參數(shù);
[0095]輸入Edref_Backdi s,即反射后撤距離參數(shù);
[0096]輸入Edref_Reswhgh,即反射再擺高度參數(shù);
[0097]步驟4:根據(jù)實際的環(huán)境和機(jī)器人所要完成的任務(wù),選擇選用足式模式運(yùn)動或輪式模式運(yùn)動,當(dāng)環(huán)境適合使用輪式控制模塊時,運(yùn)行輪式控制模塊,設(shè)定輪式模式的加/減速時間ED_Time、行進(jìn)速度ED_Speed、轉(zhuǎn)彎內(nèi)徑ED_Inner_Diameter及原地轉(zhuǎn)彎角速度ED_Anspeed,調(diào)用相應(yīng)的輪式前進(jìn)子模塊、輪式后退子模塊、輪式左轉(zhuǎn)子模塊、輪式右轉(zhuǎn)子模塊、輪式原地左轉(zhuǎn)子模塊、輪式原地右轉(zhuǎn)子模塊,實現(xiàn)機(jī)器人輪式模式下的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、原地左轉(zhuǎn)及原地右轉(zhuǎn);
[0098]步驟5:當(dāng)環(huán)境不適合使用輪式控制模塊時,啟用足式模式,進(jìn)行以下操作:
[0099]步驟5.1:運(yùn)行姿態(tài)控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在位姿控制模塊中的Bt_Ctrchange子模塊中選擇姿態(tài)控制或位置控制,設(shè)定運(yùn)動時間TM及運(yùn)動距離或者設(shè)定運(yùn)動時間TM及運(yùn)動角度,調(diào)用平臺前移/前傾子模塊、平臺后移/后傾子模塊、平臺左移/左傾子模塊、平臺右移/右傾子模塊、平臺上移子模塊、平臺下移子模塊,實現(xiàn)位置控制模式下的前后移動、左右移動及上下移動或者實現(xiàn)姿態(tài)控制模式下的前后傾斜、左右傾斜及左右旋轉(zhuǎn)功能;
[0100]步驟5.2:運(yùn)行單腿控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù);如果選用操縱桿端單腿控制子模塊,調(diào)用操縱桿控制模塊,通過操縱桿控制實現(xiàn)機(jī)器人的單腿控制,從而實現(xiàn)機(jī)器人避障或試探等動作;
[0101]如果選用計算機(jī)端單腿控制模塊,在單腿控制選擇子模塊中,選擇需要進(jìn)行控制的單腿,然后選擇關(guān)節(jié)選擇子模塊,選擇單腿上需要進(jìn)行控制的關(guān)節(jié);設(shè)定單腿運(yùn)動時間ED_MovTA、單腿曲線運(yùn)動時間ED_MovTS、單腿運(yùn)動速度ED_MovF及單腿運(yùn)動增量距離ED_MovINC ;調(diào)用單關(guān)節(jié)運(yùn)動速度子模塊,實現(xiàn)對單腿上的關(guān)節(jié)運(yùn)動速度進(jìn)行控制;調(diào)用單關(guān)節(jié)正轉(zhuǎn)子模塊和單關(guān)節(jié)反轉(zhuǎn)子模塊,實現(xiàn)關(guān)節(jié)的正轉(zhuǎn)和反轉(zhuǎn);調(diào)用BT_Glblocctr子模塊,即全局或局部坐標(biāo)系切換子模塊,實現(xiàn)全局或局部坐標(biāo)系的切換;然后設(shè)置:
[0102]BT_XFff子模塊,即機(jī)器人全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動向量子模塊,實現(xiàn)全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的限定;
[0103]BT_YFW子模塊,即機(jī)器人全局坐和局部標(biāo)系下側(cè)向方向運(yùn)動向量子模塊,實現(xiàn)全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的限定;
[0104]BT_ZFW子模塊,即機(jī)器人全局和局部坐標(biāo)系下垂向方向運(yùn)動向量子模塊,實現(xiàn)全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的限定;
[0105]如果在計算機(jī)端單腿控制模式下對單腿進(jìn)行控制,若某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用操縱桿端單腿控制子模塊對執(zhí)行出現(xiàn)故障的腿進(jìn)行輔助控制;
[0106]步驟5.3:根據(jù)實際的運(yùn)動場地環(huán)境和機(jī)器人要完成的任務(wù),運(yùn)行站立收起控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在站立收起控制模塊中,設(shè)定運(yùn)動時間ED_MovTA、運(yùn)動曲線時間ED_MovTS、運(yùn)動速度ED_MovF,設(shè)置XY面運(yùn)動起始點及Z向增量值ED_StandINC,實現(xiàn)機(jī)器人整機(jī)的站立運(yùn)動;設(shè)置至運(yùn)動規(guī)劃起始點及Z位置ED_StartZ,實現(xiàn)回歸初始位置運(yùn)動;設(shè)置運(yùn)動到指定高度Z位置,實現(xiàn)足端在垂直方向運(yùn)動到指定高度位置;
[0107]設(shè)定局部坐標(biāo)系下X方向目標(biāo)位置ED_Pkupx、局部坐標(biāo)系下y方向目標(biāo)位置ED_Pkupy、局部坐標(biāo)系下z方向目標(biāo)位置ED_Pkupz,實現(xiàn)機(jī)器人的收起運(yùn)動;
[0108]步驟5.4:根據(jù)實際的運(yùn)動場地環(huán)境和機(jī)器人要完成的任務(wù),運(yùn)行步態(tài)控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在步態(tài)控制模塊中,設(shè)定步態(tài)運(yùn)動時間Ed_MovTM、前進(jìn)方向運(yùn)動向量Ed_Xdirct、側(cè)向運(yùn)動距離Ed_Ydirct和旋轉(zhuǎn)角度Ed_Rotdegr ;根據(jù)實際的運(yùn)動環(huán)境調(diào)用二步態(tài)運(yùn)動子模塊Bt_2GaitMov、三步態(tài)運(yùn)動子模塊Bt_3GaitMov、六步態(tài)運(yùn)動子模塊Bt_6GaitMov、旋轉(zhuǎn)模式運(yùn)動子模塊Bt_RotGaitCtr及停止運(yùn)動子模塊Bt_Stop,實現(xiàn)機(jī)器人的二步態(tài)運(yùn)動、三步態(tài)運(yùn)動、六步態(tài)運(yùn)動、旋轉(zhuǎn)運(yùn)動以及實現(xiàn)機(jī)器人的運(yùn)動停止;如果在步態(tài)控制模式中,當(dāng)機(jī)器人自主行走時,某條腿遇到障礙物或踏入溝壑中,調(diào)用操縱桿端單腿控制子模塊對機(jī)器人單腿進(jìn)行操控,控制機(jī)器人進(jìn)行避障或避溝;當(dāng)某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用操縱桿端單腿控制子模塊對執(zhí)行出現(xiàn)故障的腿進(jìn)行輔助控制;
[0109]步驟6:機(jī)器人在各種模式下運(yùn)動及停止后,運(yùn)行停止模塊,實現(xiàn)機(jī)器人正常停止。
[0110]本發(fā)明的六足機(jī)器人操縱系統(tǒng)各個模塊之間的調(diào)用關(guān)系簡單,在執(zhí)行時可以縮短模塊之間相互調(diào)用的時間,從而提升機(jī)器人操縱系統(tǒng)的通信實時性,操縱系統(tǒng)數(shù)據(jù)發(fā)送周期為50ms以內(nèi);六足機(jī)器人操縱系統(tǒng)各個模塊之間關(guān)系簡單,且各個模塊的功能完善,執(zhí)行界面清晰簡單,降低了機(jī)器人的操縱復(fù)雜程度;同時由于既可以應(yīng)用簡單的人機(jī)操作界面又可以使用操縱桿對機(jī)器人進(jìn)行控制,又進(jìn)一步提升了人機(jī)協(xié)同結(jié)合性。
【專利附圖】
【附圖說明】
[0111]圖1六足機(jī)器人操縱系統(tǒng)的操作界面;
[0112]圖2參數(shù)設(shè)置模塊的顯示界面;
[0113]圖3位置重置模塊的顯示界面;
[0114]圖4位置顯示模塊的顯示界面;
[0115]圖5輪式控制模塊的顯示界面;
[0116]圖6位姿控制模塊中位置控制子模塊的顯示界面;
[0117]圖7位姿控制模塊中姿態(tài)控制子模塊的顯示界面;
[0118]圖8單腿控制模塊的顯示界面;
[0119]圖9站立收起控制模塊的顯示界面;
[0120]圖10步態(tài)控制模塊的顯示界面;
[0121]圖11跟關(guān)節(jié)、散關(guān)節(jié)和膝關(guān)節(jié)的轉(zhuǎn)角的側(cè)視圖坐標(biāo)系不意圖;
[0122]圖12跟關(guān)節(jié)、散關(guān)節(jié)和膝關(guān)節(jié)的轉(zhuǎn)角的俯視圖坐標(biāo)系不意圖;
[0123]圖13跟關(guān)節(jié)、髖關(guān)節(jié)和膝關(guān)節(jié)的轉(zhuǎn)角的簡化圖坐標(biāo)系示意圖。
【具體實施方式】
[0124]【具體實施方式】一:六足機(jī)器人操縱系統(tǒng)的操作界面如圖1所示;六足機(jī)器人操縱系統(tǒng),包括以下模塊:電機(jī)使能控制模塊、停止模塊、參數(shù)設(shè)置模塊、位置重置模塊、位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊、輪式控制模塊及位置顯示模塊;
[0125]電機(jī)使能控制模塊,用于機(jī)器人執(zhí)行動作電機(jī)的通電控制;
[0126]停止模塊,用于機(jī)器人執(zhí)行動作的急停和停止控制;
[0127]參數(shù)設(shè)置模塊的顯示界面如圖2所示;參數(shù)設(shè)置模塊是對機(jī)器人的參數(shù)進(jìn)行輸入,包括:
[0128]LegLength_l/2/3參數(shù)輸入子模塊,即基節(jié)長度、大腿長度和小腿長度參數(shù)輸入子模塊;用于基節(jié)長度、大腿長度和小腿長度參數(shù)輸入;
[0129]CSRot_l/2/3/4/5/6參數(shù)輸入子模塊,即局部坐標(biāo)系旋轉(zhuǎn)角度參數(shù)輸入子模塊;用于局部坐標(biāo)系旋轉(zhuǎn)角度參數(shù)輸入;
[0130]Edpt_Bia_X/Y/Z參數(shù)輸入子模塊,即平臺偏移距離參數(shù)輸入子模塊;用于平臺偏移距離參數(shù)輸入;
[0131]Scafac_l/2/3參數(shù)輸入子模塊,即跟、髖、膝關(guān)節(jié)比例因子參數(shù)輸入子模塊;用于跟、髖、膝關(guān)節(jié)比例因子參數(shù)輸入;
[0132]Refhgh參數(shù)輸入子模塊,即平臺參考面高度參數(shù)輸入子模塊;用于平臺參考面高度參數(shù)輸入;
[0133]Hordist參數(shù)輸入子模塊,即基節(jié)距足端橫向距離參數(shù)輸入子模塊;用于基節(jié)距足端橫向距離參數(shù)輸入;
[0134]Swhgh參數(shù)輸入子模塊,即足端擺動高度參數(shù)輸入子模塊;用于足端擺動高度參數(shù)輸入;
[0135]Zprehgh參數(shù)輸入子模塊,即足端預(yù)抬高度參數(shù)輸入子模塊;用于足端預(yù)抬高度參數(shù)輸入;
[0136]反射參數(shù)輸入子模塊,用于反射參數(shù)輸入;
[0137]其中,反射參數(shù)輸入子模塊包括:
[0138]Edref_Depth參數(shù)輸入子模塊,即反射下探深度參數(shù)輸入子模塊;用于反射下探深度參數(shù)輸入;
[0139]Edref_Fwdis參數(shù)輸入子模塊,即反射前探距離參數(shù)輸入子模塊;用于反射前探距離參數(shù)輸入;
[0140]Edref_Fwhgh參數(shù)輸入子模塊,即反射前探高度參數(shù)輸入子模塊;用于反射前探高度參數(shù)輸入;
[0141]Edref_Backdis參數(shù)輸入子模塊,即反射后撤距離參數(shù)輸入子模塊;用于反射后撤距離參數(shù)輸入;
[0142]Edref_Reswhgh參數(shù)輸入子模塊,即反射再擺高度參數(shù)輸入子模塊;用于反射再擺高度參數(shù)輸入;
[0143]六足機(jī)器人平臺是除了腿部以外的body部分,以六足機(jī)器人平臺建立的坐標(biāo)系分為全局坐標(biāo)系和局部坐標(biāo)系:平臺全局坐標(biāo)系是以平臺O圓心,X軸、Y軸和Z軸滿足右手螺旋法則,其中Z為沿著重力反方向的坐標(biāo)軸,X為沿著機(jī)體前進(jìn)方向的坐標(biāo)軸,Y為沿著機(jī)體橫向的坐標(biāo)軸,平臺全局坐標(biāo)系用于描述各個腿與平臺間的位置關(guān)系;平臺局部坐標(biāo)系分別在六條腿上,基節(jié)位置是坐標(biāo)系的原點,六條腿各自的原點分別為oi(i = I…6),xi (i = Ρ..6)軸和yi(i = Ρ..6)軸分別是經(jīng)過坐標(biāo)平移和旋轉(zhuǎn)得來的單腿方向坐標(biāo)軸,六條腿分別對應(yīng)于六個坐標(biāo)系CSi (i = Ρ..6);
[0144]六足機(jī)器人腿部由三部分組成:跟關(guān)節(jié)、髖關(guān)節(jié)及膝關(guān)節(jié);α、β、Υ分別為跟、髖和膝關(guān)節(jié)的轉(zhuǎn)角;跟關(guān)節(jié)、髖關(guān)節(jié)和膝關(guān)節(jié)的轉(zhuǎn)角的側(cè)視圖坐標(biāo)系、俯視圖坐標(biāo)系、簡化圖坐標(biāo)系示意圖分別如圖11、圖12和圖13所示,Ho代表軀干初始高度,腿部的橫向距離為S ;
[0145]位置重置模塊的顯示界面如圖3所示;位置重置模塊針對機(jī)器人六條腿在局部坐標(biāo)系下對機(jī)器人單腿位置進(jìn)行設(shè)定,標(biāo)定機(jī)器人初始位置,使機(jī)器人做回零運(yùn)動;位置重置模包括:
[0146]位置設(shè)定子模塊,用于在Choose_CS_l/2/3/4/5/6下對局部CS xyz位置的設(shè)定;是用于對局部坐標(biāo)系下X位置Ed_xPos的設(shè)定、局部坐標(biāo)系下y位置Ed_yPos的設(shè)定和局部坐標(biāo)系下z位置Ed_ZPos的設(shè)定;
[0147]位置顯示模塊的顯示界面如圖4所示;位置顯示模塊用于全局坐標(biāo)系下機(jī)器人六條腿CSPos_Local_l/2/3/4/5/6的X方向的位置CSXPOS, Y方向的位置CSYPOS,Z方向的位置CSZPOS的坐標(biāo)信息顯示,還用于局部坐標(biāo)系下機(jī)器人六條腿CSPos_Global_l/2/3/4/5/6的x方向的位置CSxPOS、y方向的位置CSyPOS、z方向的位置CSzPOS的坐標(biāo)信息顯示以及用于機(jī)器人六條腿單腿關(guān)節(jié)CSANGL_l/2/3/4/5/6的角度信息顯示,即單腿關(guān)節(jié)α、β、Y角度信息顯示;
[0148]位姿控制模塊的顯示界面如圖6、圖7所示;位姿控制模塊用于對機(jī)器人的位置控制及姿態(tài)控制,包括:
[0149]Bt_Ctrchange子模塊,即姿態(tài)控制/位置控制子模塊,用于通過設(shè)定運(yùn)動時間TM及運(yùn)動距離,實現(xiàn)位置控制模式下的前后移動、左右移動及上下移動或通過設(shè)定運(yùn)動時間TM及運(yùn)動角度,實現(xiàn)姿態(tài)控制模式下的前后傾斜、左右傾斜及左右旋轉(zhuǎn)功能;
[0150]Bt_Front子模塊,即平臺前移/前傾子模塊,用于平臺前移/前傾;
[0151]Bt_Behind子模塊,即平臺后移/后傾子模塊,用于平臺后移/后傾;
[0152]Bt_Left子模塊,即平臺左移/左傾子模塊,用于平臺左移/左傾;
[0153]Bt_Right子模塊,即平臺右移/右傾子模塊,用于平臺右移/右傾;
[0154]Bt_Up子模塊,即平臺上移子模塊,用于平臺上移;
[0155]Bt_Down子模塊,即平臺下移子模塊,用于平臺下移;
[0156]步態(tài)控制模塊的顯示界面如圖10所示;步態(tài)控制模塊,通過設(shè)定步態(tài)運(yùn)動時間Ed_MovTM、前進(jìn)方向運(yùn)動向量Ed_Xdirct、側(cè)向運(yùn)動距離Ed_Ydirct和旋轉(zhuǎn)角度Ed_Rotdegr,實現(xiàn)機(jī)器人的步態(tài)運(yùn)動;機(jī)器人的局部運(yùn)動以前進(jìn)方向為X方向,左側(cè)方向為Y方向;步態(tài)控制模塊包括:
[0157]Bt_2GaitMov子模塊,即二步態(tài)運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的二步態(tài)運(yùn)動;
[0158]Bt_3GaitMov子模塊,即三步態(tài)運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的三步態(tài)運(yùn)動;
[0159]Bt_6GaitMov子模塊,即六步態(tài)運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的六步態(tài)運(yùn)動;
[0160]Bt_RotGaitCtr子模塊,即旋轉(zhuǎn)模式運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的旋轉(zhuǎn)運(yùn)動;
[0161]Bt_Stop子模塊,即停止運(yùn)動子模塊,用于實現(xiàn)機(jī)器人的運(yùn)動停止;
[0162]單腿控制模塊的顯示界面如圖8所示;單腿控制模塊分為計算機(jī)端單腿控制子模塊和操縱桿端單腿控制子模塊;用于實現(xiàn)計算機(jī)端單腿控制子模塊和操縱桿端單腿控制子模塊的切換;
[0163]操縱桿端單腿控制子模塊下達(dá)六足機(jī)器人在操縱桿控制模式下的相關(guān)的單腿運(yùn)動控制參數(shù),用于單腿行進(jìn)方向控制和單腿關(guān)節(jié)控制;操縱桿端單腿控制子模塊包括:
[0164]LegNumber子模塊,即操縱腿子模塊,用于對不同的單腿進(jìn)行控制;
[0165]JointControl子模塊,即足端/關(guān)節(jié)控制子模塊,用于對單腿上的足端/關(guān)節(jié)進(jìn)行控制;
[0166]FootXSpeed子模塊,即足端X軸速度子模塊,用于全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的設(shè)置;
[0167]FootYSpeed子模塊,即足端Y軸速度子模塊,用于全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的設(shè)置;
[0168]FootZSpeed子模塊,即足端Z軸速度子模塊,用于全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的設(shè)置;
[0169]GJointSpeed子模塊,即跟關(guān)節(jié)轉(zhuǎn)速子模塊,用于實現(xiàn)跟關(guān)節(jié)轉(zhuǎn)速的控制;
[0170]KJointSpeed子模塊,即髖關(guān)節(jié)轉(zhuǎn)速子模塊,用于實現(xiàn)髖關(guān)節(jié)轉(zhuǎn)速的控制;
[0171]XJointSpeed子模塊,即膝關(guān)節(jié)轉(zhuǎn)速子模塊,用于實現(xiàn)膝關(guān)節(jié)轉(zhuǎn)速的控制;
[0172]計算機(jī)端單腿控制子模塊通過設(shè)定單腿運(yùn)動時間ED_MovTA、單腿曲線運(yùn)動時間ED_MovTS、單腿運(yùn)動速度ED_MovF及單腿運(yùn)動增量距離ED_MovINC,控制單腿單關(guān)節(jié)運(yùn)動,在全局坐標(biāo)系和局部坐標(biāo)系下實現(xiàn)機(jī)器人的各運(yùn)動方向上的運(yùn)動;計算機(jī)端單腿控制子模塊包括:
[0173]CM_CSChoose子模塊,即單腿控制選擇子模塊,用于對控制的單腿進(jìn)行選擇;
[0174]CM_JointChoose子模塊,即關(guān)節(jié)選擇子模塊,用于對單腿上的關(guān)節(jié)進(jìn)行選擇;
[0175]ET_JogSpeed子模塊,即單關(guān)節(jié)運(yùn)動速度子模塊,用于對單腿上的關(guān)節(jié)運(yùn)動速度進(jìn)行控制;
[0176]BT_JogFw子模塊,即單關(guān)節(jié)正轉(zhuǎn)子模塊,用于實現(xiàn)關(guān)節(jié)的正轉(zhuǎn);
[0177]BT_JogRv子模塊,即單關(guān)節(jié)反轉(zhuǎn)子模塊,用于實現(xiàn)關(guān)節(jié)的反轉(zhuǎn);
[0178]BT_Glblocctr子模塊,即全局或局部坐標(biāo)系切換子模塊,用于實現(xiàn)全局或局部坐標(biāo)系的切換;包括:
[0179]BT_XFW子模塊,即機(jī)器人全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動向量子模塊,用于全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的設(shè)置;
[0180]BT_YFW子模塊,即機(jī)器人全局坐和局部標(biāo)系下側(cè)向方向運(yùn)動向量子模塊,用于全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的設(shè)置;
[0181]BT_ZFW子模塊,即機(jī)器人全局和局部坐標(biāo)系下垂向方向運(yùn)動向量子模塊,用于全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的設(shè)置;
[0182]站立收起控制模塊的顯示界面如圖9所示;站立收起控制模塊,通過設(shè)定運(yùn)動時間ED_MovTA、運(yùn)動曲線時間ED_MovTS、運(yùn)動速度ED_MovF、XY面運(yùn)動起始點及Z向增量值ED_StandINC、至運(yùn)動規(guī)劃起始點及Z位置ED_StartZ、運(yùn)動到指定高度Z位置,實現(xiàn)機(jī)器人整機(jī)的站立運(yùn)動和回歸初始位置運(yùn)動;
[0183]以及通過設(shè)定局部坐標(biāo)系下X方向目標(biāo)位置ED_PkupX、局部坐標(biāo)系下Y方向目標(biāo)位置ED_PkupY、局部坐標(biāo)系下Z方向目標(biāo)位置ED_PkupZ實現(xiàn)人的收起運(yùn)動;
[0184]輪式控制模塊的顯示界面如圖5所示;輪式控制模塊通過設(shè)定輪式模式的加/減速時間ED_Time、行進(jìn)速度ED_Speed、轉(zhuǎn)彎內(nèi)徑ED_Inner_Diameter及原地轉(zhuǎn)彎角速度ED_Anspeed,實現(xiàn)機(jī)器人輪式模式下的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、原地左轉(zhuǎn)及原地右轉(zhuǎn)的功能;輪式控制模塊包括:
[0185]BT_F0RWARD子模塊,即輪式前進(jìn)模塊,用于實現(xiàn)機(jī)器人的輪式前進(jìn);
[0186]BT_BACK子模塊,即輪式后退模塊,用于實現(xiàn)機(jī)器人的輪式后退;
[0187]BT_LTURN子模塊,即輪式左轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式左轉(zhuǎn);
[0188]BT_RTURN子模塊,即輪式右轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式右轉(zhuǎn);
[0189]BT_0NLTURN子模塊,即輪式原地左轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式原地左轉(zhuǎn);
[0190]BT_0NRTURN子模塊,即輪式原地右轉(zhuǎn)模塊,用于實現(xiàn)機(jī)器人的輪式原地右轉(zhuǎn);
[0191]電機(jī)使能控制模塊、參數(shù)設(shè)置模塊、位置重置模塊先后獨(dú)立運(yùn)行;
[0192]輪式控制模塊獨(dú)立運(yùn)行;
[0193]位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊相互獨(dú)立運(yùn)行;位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊運(yùn)行之前,首先調(diào)用參數(shù)設(shè)置模塊,根據(jù)參數(shù)設(shè)置模塊中的參數(shù)和位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊中的設(shè)置參數(shù)來執(zhí)行;步態(tài)控制模塊運(yùn)行時,如果某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用單腿控制模塊中的操縱桿端單腿控制子模塊進(jìn)行輔助控制;
[0194]位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊運(yùn)行時的參數(shù)信息反應(yīng)到位置顯示模塊中,由位置顯示模塊進(jìn)行顯示;
[0195]停止模塊獨(dú)立運(yùn)行。
[0196]【具體實施方式】二:六足機(jī)器人操縱系統(tǒng)采用Visual C++6.0為基礎(chǔ)開發(fā)的,通過嵌入UMAC提供的動態(tài)鏈接庫Pco_32完成跟運(yùn)控系統(tǒng)的通訊。
[0197]其它步驟及參數(shù)與【具體實施方式】一相同。
[0198]【具體實施方式】三:利用六足機(jī)器人操縱系統(tǒng)對機(jī)器人進(jìn)行操縱的方法,包括以下步驟:
[0199]步驟1:運(yùn)行電機(jī)使能控制模塊,使電機(jī)處于工作狀態(tài);
[0200]步驟2:運(yùn)行位置重置模塊,在局部坐標(biāo)系下分別設(shè)置機(jī)器人腿部的初始位置,使機(jī)器人做回零運(yùn)動;
[0201]設(shè)置六條腿ChOOSe_CS_l/2/3/4/5/6在局部坐標(biāo)系下的機(jī)器人單腿初始位置,包括:X位置Ed_xPos的設(shè)定、局部坐標(biāo)系下y位置Ed_yPos的設(shè)定和z位置Ed_zPos的設(shè)定;
[0202]步驟3:根據(jù)機(jī)器人的實際情況,運(yùn)行系統(tǒng)參數(shù)設(shè)置模塊,設(shè)置系統(tǒng)參數(shù);包括:
[0203]輸入LegLength_l/2/3,即基節(jié)長度、大腿長度和小腿長度;
[0204]輸入CSRot_l/2/3/4/5/6,即局部坐標(biāo)系旋轉(zhuǎn)角度;
[0205]輸入Edpt_Bia_X/Y/Z,即平臺偏移距離參數(shù);
[0206]輸入Scafac_l/2/3,即跟、髖、膝關(guān)節(jié)比例因子參數(shù);
[0207]輸入Refhgh,即平臺參考面高度參數(shù);
[0208]輸入Hordi St,即基節(jié)距足端橫向距離參數(shù);
[0209]輸入Swhgh,即足端擺動高度參數(shù);
[0210]輸入Zprehgh,即足端預(yù)抬高度參數(shù);
[0211]輸入反射參數(shù),包括:
[0212]輸入Edref_Depth,即反射下探深度參數(shù);
[0213]輸入Edref_Fwdis,即反射前探距離參數(shù);
[0214]輸入Edref_Fwhgh,即反射前探高度參數(shù);
[0215]輸入Edref_Backdi s,即反射后撤距離參數(shù);
[0216]輸入Edref_Reswhgh,即反射再擺高度參數(shù);
[0217]步驟4:根據(jù)實際的環(huán)境和機(jī)器人所要完成的任務(wù),選擇選用足式模式運(yùn)動或輪式模式運(yùn)動,當(dāng)環(huán)境適合使用輪式控制模塊時,運(yùn)行輪式控制模塊,設(shè)定輪式模式的加/減速時間ED_Time、行進(jìn)速度ED_Speed、轉(zhuǎn)彎內(nèi)徑ED_Inner_Diameter及原地轉(zhuǎn)彎角速度ED_Anspeed,調(diào)用相應(yīng)的輪式前進(jìn)子模塊、輪式后退子模塊、輪式左轉(zhuǎn)子模塊、輪式右轉(zhuǎn)子模塊、輪式原地左轉(zhuǎn)子模塊、輪式原地右轉(zhuǎn)子模塊,實現(xiàn)機(jī)器人輪式模式下的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、原地左轉(zhuǎn)及原地右轉(zhuǎn);
[0218]步驟5:當(dāng)環(huán)境不適合使用輪式控制模塊時,啟用足式模式,進(jìn)行以下操作:
[0219]步驟5.1:運(yùn)行姿態(tài)控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在位姿控制模塊中的Bt_Ctrchange子模塊中選擇姿態(tài)控制或位置控制,設(shè)定運(yùn)動時間TM及運(yùn)動距離或者設(shè)定運(yùn)動時間TM及運(yùn)動角度,調(diào)用平臺前移/前傾子模塊、平臺后移/后傾子模塊、平臺左移/左傾子模塊、平臺右移/右傾子模塊、平臺上移子模塊、平臺下移子模塊,實現(xiàn)位置控制模式下的前后移動、左右移動及上下移動或者實現(xiàn)姿態(tài)控制模式下的前后傾斜、左右傾斜及左右旋轉(zhuǎn)功能;
[0220]步驟5.2:運(yùn)行單腿控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù);如果選用操縱桿端單腿控制子模塊,調(diào)用操縱桿控制模塊,通過操縱桿控制實現(xiàn)機(jī)器人的單腿控制,從而實現(xiàn)機(jī)器人避障或試探等動作;
[0221]如果選用計算機(jī)端單腿控制模塊,在單腿控制選擇子模塊中,選擇需要進(jìn)行控制的單腿,然后選擇關(guān)節(jié)選擇子模塊,選擇單腿上需要進(jìn)行控制的關(guān)節(jié);設(shè)定單腿運(yùn)動時間ED_MovTA、單腿曲線運(yùn)動時間ED_MovTS、單腿運(yùn)動速度ED_MovF及單腿運(yùn)動增量距離ED_MovINC ;調(diào)用單關(guān)節(jié)運(yùn)動速度子模塊,實現(xiàn)對單腿上的關(guān)節(jié)運(yùn)動速度進(jìn)行控制;調(diào)用單關(guān)節(jié)正轉(zhuǎn)子模塊和單關(guān)節(jié)反轉(zhuǎn)子模塊,實現(xiàn)關(guān)節(jié)的正轉(zhuǎn)和反轉(zhuǎn);調(diào)用BT_Glblocctr子模塊,即全局或局部坐標(biāo)系切換子模塊,實現(xiàn)全局或局部坐標(biāo)系的切換;然后設(shè)置:
[0222]BT_XFff子模塊,即機(jī)器人全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動向量子模塊,實現(xiàn)全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的限定;
[0223]BT_YFW子模塊,即機(jī)器人全局坐和局部標(biāo)系下側(cè)向方向運(yùn)動向量子模塊,實現(xiàn)全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的限定;
[0224]BT_ZFff子模塊,即機(jī)器人全局和局部坐標(biāo)系下垂向方向運(yùn)動向量子模塊,實現(xiàn)全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的限定;
[0225]如果在計算機(jī)端單腿控制模式下對單腿進(jìn)行控制,若某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用操縱桿端單腿控制子模塊對執(zhí)行出現(xiàn)故障的腿進(jìn)行輔助控制;
[0226]步驟5.3:根據(jù)實際的運(yùn)動場地環(huán)境和機(jī)器人要完成的任務(wù),運(yùn)行站立收起控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在站立收起控制模塊中,設(shè)定運(yùn)動時間ED_MovTA、運(yùn)動曲線時間ED_MovTS、運(yùn)動速度ED_MovF,設(shè)置XY面運(yùn)動起始點及Z向增量值ED_StandINC,實現(xiàn)機(jī)器人整機(jī)的站立運(yùn)動;設(shè)置至運(yùn)動規(guī)劃起始點及Z位置ED_StartZ,實現(xiàn)回歸初始位置運(yùn)動;設(shè)置運(yùn)動到指定高度Z位置,實現(xiàn)足端在垂直方向運(yùn)動到指定高度位置;
[0227]設(shè)定局部坐標(biāo)系下X方向目標(biāo)位置ED_Pkupx、局部坐標(biāo)系下y方向目標(biāo)位置ED_Pkupy、局部坐標(biāo)系下z方向目標(biāo)位置ED_Pkupz,實現(xiàn)機(jī)器人的收起運(yùn)動;
[0228]步驟5.4:根據(jù)實際的運(yùn)動場地環(huán)境和機(jī)器人要完成的任務(wù),運(yùn)行步態(tài)控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在步態(tài)控制模塊中,設(shè)定步態(tài)運(yùn)動時間Ed_MovTM、前進(jìn)方向運(yùn)動向量Ed_Xdirct、側(cè)向運(yùn)動距離Ed_Ydirct和旋轉(zhuǎn)角度Ed_Rotdegr ;根據(jù)實際的運(yùn)動環(huán)境調(diào)用二步態(tài)運(yùn)動子模塊Bt_2GaitMov、三步態(tài)運(yùn)動子模塊Bt_3GaitMov、六步態(tài)運(yùn)動子模塊Bt_6GaitMov、旋轉(zhuǎn)模式運(yùn)動子模塊Bt_RotGaitCtr及停止運(yùn)動子模塊Bt_Stop,實現(xiàn)機(jī)器人的二步態(tài)運(yùn)動、三步態(tài)運(yùn)動、六步態(tài)運(yùn)動、旋轉(zhuǎn)運(yùn)動以及實現(xiàn)機(jī)器人的運(yùn)動停止;如果在步態(tài)控制模式中,當(dāng)機(jī)器人自主行走時,某條腿遇到障礙物或踏入溝壑中,調(diào)用操縱桿端單腿控制子模塊對機(jī)器人單腿進(jìn)行操控,控制機(jī)器人進(jìn)行避障或避溝;當(dāng)某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用操縱桿端單腿控制子模塊對執(zhí)行出現(xiàn)故障的腿進(jìn)行輔助控制;
[0229]步驟6:機(jī)器人在各種模式下運(yùn)動及停止后,運(yùn)行停止模塊,實現(xiàn)機(jī)器人正常停止。
【權(quán)利要求】
1.六足機(jī)器人操縱系統(tǒng),其特征在于,該操縱系統(tǒng)包括以下模塊:電機(jī)使能控制模塊、停止模塊、參數(shù)設(shè)置模塊、位置重置模塊、位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊、輪式控制模塊及位置顯示模塊; 所述的電機(jī)使能控制模塊,用于機(jī)器人執(zhí)行動作電機(jī)的通電控制; 所述的停止模塊,用于機(jī)器人執(zhí)行動作的急停和停止控制; 所述的參數(shù)設(shè)置模塊是對機(jī)器人的參數(shù)進(jìn)行輸入,包括: LegLength_l/2/3參數(shù)輸入子模塊,用于基節(jié)長度、大腿長度和小腿長度參數(shù)輸入; CSRot_l/2/3/4/5/6參數(shù)輸入子模塊,用于局部坐標(biāo)系旋轉(zhuǎn)角度參數(shù)輸入; Edpt_Bia_X/Y/Z參數(shù)輸入子模塊,用于平臺偏移距離參數(shù)輸入; Scafac_l/2/3參數(shù)輸入子模塊,用于跟、髖、膝關(guān)節(jié)比例因子參數(shù)輸入; Refhgh參數(shù)輸入子模塊,用于平臺參考面高度參數(shù)輸入; Hordist參數(shù)輸入子模塊,用于基節(jié)距足端橫向距離參數(shù)輸入; Swhgh參數(shù)輸入子模塊,用于足端擺動高度參數(shù)輸入; Zprehgh參數(shù)輸入子模塊,用于足端預(yù)抬高度參數(shù)輸入; 反射參數(shù)輸入子模塊,用于反射參數(shù)輸入; 其中,反射參數(shù)輸入子模塊包括: Edref_Depth參數(shù)輸入子模塊,用于反射下探深度參數(shù)輸入; Edref_Fwdis參數(shù)輸入子模塊,用于反射前探距離參數(shù)輸入; Edref_Fwhgh參數(shù)輸入子模塊,用于反射前探高度參數(shù)輸入; Edref_Backdis參數(shù)輸入子模塊,用于反射后撤距離參數(shù)輸入; Edref_Reswhgh參數(shù)輸入子模塊,用于反射再擺高度參數(shù)輸入; 所述的位置重置模塊針對機(jī)器人六條腿在局部坐標(biāo)系下對機(jī)器人單腿位置進(jìn)行設(shè)定,標(biāo)定機(jī)器人初始位置,使機(jī)器人做回零運(yùn)動;位置重置模包括: 位置設(shè)定子模塊,用于在Choose_CS_l/2/3/4/5/6下對局部CS xyz位置的設(shè)定;是用于對局部坐標(biāo)系下X位置Ed_XPos的設(shè)定、局部坐標(biāo)系下y位置Ed_yPos的設(shè)定和局部坐標(biāo)系下z位置Ed_zPos的設(shè)定; 所述的位置顯示模塊用于全局坐標(biāo)系下機(jī)器人六條腿CSP0S_L0cal_l/2/3/4/5/6的X方向的位置CSXP0S、Y方向的位置CSYPOS、Z方向的位置CSZPOS的坐標(biāo)信息顯示,還用于局部坐標(biāo)系下機(jī)器人六條腿CSPos_Global_l/2/3/4/5/6的x方向的位置CSxPOS、y方向的位置CSyPOS、z方向的位置CSzPOS的坐標(biāo)信息顯示以及用于機(jī)器人六條腿單腿關(guān)節(jié)CSANGL_l/2/3/4/5/6的角度信息顯示; 所述的位姿控制模塊用于對機(jī)器人的位置控制及姿態(tài)控制,包括: Bt_Ctrchange子模塊,用于通過設(shè)定運(yùn)動時間TM及運(yùn)動距離,實現(xiàn)位置控制模式下的前后移動、左右移動及上下移動或通過設(shè)定運(yùn)動時間TM及運(yùn)動角度,實現(xiàn)姿態(tài)控制模式下的前后傾斜、左右傾斜及左右旋轉(zhuǎn)功能; Bt_Front子模塊,用于平臺前移/前傾; Bt_Behind子模塊,用于平臺后移/后傾; Bt_Left子模塊,用于平臺左移/左傾; Bt_Right子模塊,用于平臺右移/右傾; Bt_Up子模塊,用于平臺上移; Bt_Down子模塊,用于平臺下移; 所述的步態(tài)控制模塊,通過設(shè)定步態(tài)運(yùn)動時間Ed_MovTM、前進(jìn)方向運(yùn)動向量Ed_Xdirct、側(cè)向運(yùn)動距離Ed_Ydirct和旋轉(zhuǎn)角度Ed_Rotdegr,實現(xiàn)機(jī)器人的步態(tài)運(yùn)動;機(jī)器人的局部運(yùn)動以前進(jìn)方向為X方向,左側(cè)方向為Y方向;步態(tài)控制模塊包括: Bt_2GaitMov子模塊,用于實現(xiàn)機(jī)器人的二步態(tài)運(yùn)動; Bt_3GaitMov子模塊,用于實現(xiàn)機(jī)器人的三步態(tài)運(yùn)動; Bt_6GaitMov子模塊,用于實現(xiàn)機(jī)器人的六步態(tài)運(yùn)動; Bt_RotGaitCtr子模塊,用于實現(xiàn)機(jī)器人的旋轉(zhuǎn)運(yùn)動; Bt_Stop子模塊,用于實現(xiàn)機(jī)器人的運(yùn)動停止; 所述的單腿控制模塊分為計算機(jī)端單腿控制子模塊和操縱桿端單腿控制子模塊;用于實現(xiàn)計算機(jī)端單腿控制子模塊和操縱桿端單腿控制子模塊的切換; 操縱桿端單腿控制子模塊下達(dá)六足機(jī)器人在操縱桿控制模式下的相關(guān)的單腿運(yùn)動控制參數(shù),用于單腿行進(jìn)方向控制和單腿關(guān)節(jié)控制;操縱桿端單腿控制子模塊包括:LegNumber子模塊,用于對不同的單腿進(jìn)行控制; JointControl子模塊,用于對單腿上的足端/關(guān)節(jié)進(jìn)行控制; FootXSpeed子模塊,用于全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的設(shè)置; FootYSpeed子模塊,用于全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的設(shè)置; FootZSpeed子模塊,用于全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的設(shè)置; GJointSpeed子模塊,用于實現(xiàn)跟關(guān)節(jié)轉(zhuǎn)速的控制; KJointSpeed子模塊,用于實現(xiàn)髖關(guān)節(jié)轉(zhuǎn)速的控制; XJointSpeed子模塊,用于實現(xiàn)膝關(guān)節(jié)轉(zhuǎn)速的控制; 計算機(jī)端單腿控制子模塊通過設(shè)定單腿運(yùn)動時間ED_MovTA、單腿曲線運(yùn)動時間ED_MovTS、單腿運(yùn)動速度ED_MovF及單腿運(yùn)動增量距離ED_MovINC,控制單腿單關(guān)節(jié)運(yùn)動,在全局坐標(biāo)系和局部坐標(biāo)系下實現(xiàn)機(jī)器人的各運(yùn)動方向上的運(yùn)動;計算機(jī)端單腿控制子模塊包括: CM_CSChoose子模塊,用于對控制的單腿進(jìn)行選擇; CM_JointChoose子模塊,用于對單腿上的關(guān)節(jié)進(jìn)行選擇; ET_JogSpeed子模塊,用于對單腿上的關(guān)節(jié)運(yùn)動速度進(jìn)行控制; BT_JogFw子模塊,用于實現(xiàn)關(guān)節(jié)的正轉(zhuǎn); BT_JogRv子模塊,用于實現(xiàn)關(guān)節(jié)的反轉(zhuǎn); BT_Glblocctr子模塊,用于實現(xiàn)全局或局部坐標(biāo)系的切換;包括: BT_XFff子模塊,用于全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的設(shè)置; BT_YFW子模塊,用于全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的設(shè)置; BT_ZFff子模塊,用于全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的設(shè)置; 所述的站立收起控制模塊,通過設(shè)定運(yùn)動時間ED_MovTA、運(yùn)動曲線時間ED_MovTS、運(yùn)動速度ED_MovF、XY面運(yùn)動起始點及Z向增量值ED_StandINC、至運(yùn)動規(guī)劃起始點及Z位置ED_StartZ、運(yùn)動到指定高度Z位置,實現(xiàn)機(jī)器人整機(jī)的站立運(yùn)動和回歸初始位置運(yùn)動;以及通過設(shè)定局部坐標(biāo)系下X方向目標(biāo)位置ED_PkupX、局部坐標(biāo)系下Y方向目標(biāo)位置ED_PkupY、局部坐標(biāo)系下Z方向目標(biāo)位置ED_PkupZ實現(xiàn)人的收起運(yùn)動; 所述的輪式控制模塊通過設(shè)定輪式模式的加/減速時間ED_Time、行進(jìn)速度ED_Speed、轉(zhuǎn)彎內(nèi)徑ED_Inner_Diameter及原地轉(zhuǎn)彎角速度ED_Anspeed,實現(xiàn)機(jī)器人輪式模式下的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、原地左轉(zhuǎn)及原地右轉(zhuǎn)的功能;輪式控制模塊包括: BT_FORWARD子模塊,用于實現(xiàn)機(jī)器人的輪式前進(jìn); BT_BACK子模塊,用于實現(xiàn)機(jī)器人的輪式后退; BT_LTURN子模塊,用于實現(xiàn)機(jī)器人的輪式左轉(zhuǎn); BT_RTURN子模塊,用于實現(xiàn)機(jī)器人的輪式右轉(zhuǎn); BT_ONLTURN子模塊,用于實現(xiàn)機(jī)器人的輪式原地左轉(zhuǎn); BT_ONRTURN子模塊,用于實現(xiàn)機(jī)器人的輪式原地右轉(zhuǎn); 電機(jī)使能控制模塊、參數(shù)設(shè)置模塊、位置重置模塊先后獨(dú)立運(yùn)行; 輪式控制模塊獨(dú)立運(yùn)行; 位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊相互獨(dú)立運(yùn)行;位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊運(yùn)行之前,首先調(diào)用參數(shù)設(shè)置模塊,根據(jù)參數(shù)設(shè)置模塊中的參數(shù)和位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊中的設(shè)置參數(shù)來執(zhí)行;步態(tài)控制模塊運(yùn)行時,如果某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用單腿控制模塊中的操縱桿端單腿控制子模塊進(jìn)行輔助控制; 位姿控制模塊、步態(tài)控制模塊、單腿控制模塊、站立收起控制模塊運(yùn)行時的參數(shù)信息反應(yīng)到位置顯示模塊中,由位置顯示模塊進(jìn)行顯示; 停止模塊獨(dú)立運(yùn)行。
2.根據(jù)權(quán)利要求1所述的六足機(jī)器人操縱系統(tǒng)采用VisualC++6.0為基礎(chǔ)開發(fā)的。
3.利用所述的六足機(jī)器人操縱系統(tǒng)對機(jī)器人進(jìn)行操縱的方法,包括以下步驟: 步驟1:運(yùn)行電機(jī)使能控制模塊,使電機(jī)處于工作狀態(tài); 步驟2:運(yùn)行位置重置模塊,在局部坐標(biāo)系下分別設(shè)置機(jī)器人腿部的初始位置,使機(jī)器人做回零運(yùn)動; 設(shè)置六條腿ChOOSe_CS_l/2/3/4/5/6在局部坐標(biāo)系下的機(jī)器人單腿初始位置,包括:x位置Ed_xPos的設(shè)定、局部坐標(biāo)系下y位置Ed_yPos的設(shè)定和z位置Ed_zPos的設(shè)定;步驟3:根據(jù)機(jī)器人的實際情況,運(yùn)行系統(tǒng)參數(shù)設(shè)置模塊,設(shè)置系統(tǒng)參數(shù);包括: 輸入LegLength_l/2/3,即基節(jié)長度、大腿長度和小腿長度; 輸入CSRot_l/2/3/4/5/6,即局部坐標(biāo)系旋轉(zhuǎn)角度; 輸入Edpt_Bia_X/Y/Z,即平臺偏移距離參數(shù); 輸入Scafac_l/2/3,即跟、髖、膝關(guān)節(jié)比例因子參數(shù); 輸入Refhgh,即平臺參考面高度參數(shù); 輸入Hordist,即基節(jié)距足端橫向距離參數(shù); 輸入Swhgh,即足端擺動高度參數(shù); 輸入Zprehgh,即足端預(yù)抬高度參數(shù); 輸入反射參數(shù),包括: 輸入Edref_Depth,即反射下探深度參數(shù); 輸入Edref_Fwdis,即反射前探距離參數(shù); 輸入Edref_Fwhgh,即反射前探高度參數(shù); 輸入Edref_Backdis,即反射后撤距離參數(shù); 輸入Edref_Reswhgh,即反射再擺高度參數(shù); 步驟4:根據(jù)實際的環(huán)境和機(jī)器人所要完成的任務(wù),選擇選用足式模式運(yùn)動或輪式模式運(yùn)動,當(dāng)環(huán)境適合使用輪式控制模塊時,運(yùn)行輪式控制模塊,設(shè)定輪式模式的加/減速時間ED_Time、行進(jìn)速度ED_Speed、轉(zhuǎn)彎內(nèi)徑ED_Inner_Diameter及原地轉(zhuǎn)彎角速度ED_Anspeed,調(diào)用相應(yīng)的輪式前進(jìn)子模塊、輪式后退子模塊、輪式左轉(zhuǎn)子模塊、輪式右轉(zhuǎn)子模塊、輪式原地左轉(zhuǎn)子模塊、輪式原地右轉(zhuǎn)子模塊,實現(xiàn)機(jī)器人輪式模式下的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、原地左轉(zhuǎn)及原地右轉(zhuǎn); 步驟5:當(dāng)環(huán)境不適合使用輪式控制模塊時,啟用足式模式,進(jìn)行以下操作: 步驟5.1:運(yùn)行姿態(tài)控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在位姿控制模塊中的Bt_Ctrchange子模塊中選擇姿態(tài)控制或位置控制,設(shè)定運(yùn)動時間TM及運(yùn)動距離或者設(shè)定運(yùn)動時間TM及運(yùn)動角度,調(diào)用平臺前移/前傾子模塊、平臺后移/后傾子模塊、平臺左移/左傾子模塊、平臺右移/右傾子模塊、平臺上移子模塊、平臺下移子模塊,實現(xiàn)位置控制模式下的前后移動、左右移動及上下移動或者實現(xiàn)姿態(tài)控制模式下的前后傾斜、左右傾斜及左右旋轉(zhuǎn)功能; 步驟5.2:運(yùn)行單腿控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù);如果選用操縱桿端單腿控制子模塊,調(diào)用操縱桿控制模塊,通過操縱桿控制實現(xiàn)機(jī)器人的單腿控制,從而實現(xiàn)機(jī)器人避障或試探動作; 如果選用計算機(jī)端單腿控制模塊,在單腿控制選擇子模塊中,選擇需要進(jìn)行控制的單腿,然后選擇關(guān)節(jié)選擇子模塊,選擇單腿上需要進(jìn)行控制的關(guān)節(jié);設(shè)定單腿運(yùn)動時間ED_MoνΤΑ、單腿曲線運(yùn)動時間ED_MovTS、單腿運(yùn)動速度ED_MovF及單腿運(yùn)動增量距離ED_MovINC ;調(diào)用單關(guān)節(jié)運(yùn)動速度子模塊,實現(xiàn)對單腿上的關(guān)節(jié)運(yùn)動速度進(jìn)行控制;調(diào)用單關(guān)節(jié)正轉(zhuǎn)子模塊和單關(guān)節(jié)反轉(zhuǎn)子模塊,實現(xiàn)關(guān)節(jié)的正轉(zhuǎn)和反轉(zhuǎn);調(diào)用BT_Glblocctr子模塊,實現(xiàn)全局或局部坐標(biāo)系的切換;然后設(shè)置: BT_XFff子模塊,實現(xiàn)全局和局部坐標(biāo)系下前進(jìn)方向運(yùn)動距離的限定; BT_YFW子模塊,實現(xiàn)全局和局部坐標(biāo)系下側(cè)向方向運(yùn)動距離的限定; BT_ZFff子模塊,實現(xiàn)全局和局部坐標(biāo)系下垂向方向運(yùn)動距離的限定; 如果在計算機(jī)端單腿控制模式下對單腿進(jìn)行控制,若某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用操縱桿端單腿控制子模塊對執(zhí)行出現(xiàn)故障的腿進(jìn)行輔助控制; 步驟5.3:根據(jù)實際的運(yùn)動場地環(huán)境和機(jī)器人要完成的任務(wù),運(yùn)行站立收起控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在站立收起控制模塊中,設(shè)定運(yùn)動時間ED_ΜονΤΑ、運(yùn)動曲線時間ED_MovTS、運(yùn)動速度ED_MovF,設(shè)置XY面運(yùn)動起始點及Z向增量值ED_StandINC,實現(xiàn)機(jī)器人整機(jī)的站立運(yùn)動;設(shè)置至運(yùn)動規(guī)劃起始點及Z位置ED_StartZ,實現(xiàn)回歸初始位置運(yùn)動;設(shè)置運(yùn)動到指定高度Z位置,實現(xiàn)足端在垂直方向運(yùn)動到指定高度位置; 設(shè)定局部坐標(biāo)系下X方向目標(biāo)位置ED_Pkupx、局部坐標(biāo)系下y方向目標(biāo)位置ED_Pkupy、局部坐標(biāo)系下z方向目標(biāo)位置ED_Pkupz,實現(xiàn)機(jī)器人的收起運(yùn)動; 步驟5.4:根據(jù)實際的運(yùn)動場地環(huán)境和機(jī)器人要完成的任務(wù),運(yùn)行步態(tài)控制模塊,系統(tǒng)首先讀取系統(tǒng)參數(shù)設(shè)置中的數(shù)據(jù),然后在步態(tài)控制模塊中,設(shè)定步態(tài)運(yùn)動時間Ed_MovTM、前進(jìn)方向運(yùn)動向量Ed_Xdirct、側(cè)向運(yùn)動距離Ed_Ydirct和旋轉(zhuǎn)角度Ed_Rotdegr ;根據(jù)實際的運(yùn)動環(huán)境調(diào)用二步態(tài)運(yùn)動子模塊Bt_2GaitMov、三步態(tài)運(yùn)動子模塊Bt_3GaitMov、六步態(tài)運(yùn)動子模塊Bt_6GaitMov、旋轉(zhuǎn)模式運(yùn)動子模塊Bt_RotGaitCtr及停止運(yùn)動子模塊Bt_Stop,實現(xiàn)機(jī)器人的二步態(tài)運(yùn)動、三步態(tài)運(yùn)動、六步態(tài)運(yùn)動、旋轉(zhuǎn)運(yùn)動以及實現(xiàn)機(jī)器人的運(yùn)動停止;如果在步態(tài)控制模式中,當(dāng)機(jī)器人自主行走時,某條腿遇到障礙物或踏入溝壑中,調(diào)用操縱桿端單腿控制子模塊對機(jī)器人單腿進(jìn)行操控,控制機(jī)器人進(jìn)行避障或避溝;當(dāng)某條腿動作執(zhí)行出現(xiàn)故障,調(diào)用操縱桿端單腿控制子模塊對執(zhí)行出現(xiàn)故障的腿進(jìn)行輔助控制;步驟6:機(jī)器人在各種模式下運(yùn)動及停止后,運(yùn)行停止模塊,實現(xiàn)機(jī)器人正常停止。
【文檔編號】G05D1/02GK104331075SQ201410508642
【公開日】2015年2月4日 申請日期:2014年9月28日 優(yōu)先權(quán)日:2014年9月28日
【發(fā)明者】劉振, 于海濤, 劉宇飛, 高海波, 鄧宗全, 丁亮, 李楠 申請人:哈爾濱工業(yè)大學(xué)