王濱, 鄭元松 , 李思遠, 李慧慧, 王思琪, 劉巍, 楊君子, 王立新, 殷紅
(1.大連豪森瑞德設備制造有限公司,遼寧大連116036;2.大連工業大學機械工程與自動化學院,遼寧大連116034)
機器人是現代科技發展的必然產物,雙足步行機器人的研究是近年來機器人研究的熱點之一。國外早在20世紀60年代起就開始了相關研究,在機器人的本體設計、控制方法、運動穩定性、步態規劃等方面取得了較好的效果[1]。機械、電子類課程關于自由度、機構設計和單片機設計等內容,抽象的理論知識較多,學生難于理解。針對這種情況,研究設計了雙足機器人教師,以機器人自身運動步態為實例,結合機器人語音講解和問答,使機器人結構和控制等抽象內容得以充分展現。
雙足機器人教師主要由5部分組成,分別為運動機構、指紋識別模塊、語音發聲模塊、語音識別模塊和智能控制系統。雙足步行機器人教師的運動機構是所有部件的載體,也是設計過程最基本和首要的工作[2],通過其運動機構能夠完成雙腿行走、雙臂擺動和回復等基本功能;指紋識別模塊能實現課堂點名功能;語音識別模塊和語音發聲模塊完成課程的講解和問答;智能控制系統將指紋識別模塊、語音識別模塊、語音發聲模塊,以及舵機的控制有效結合,控制指紋識別模塊實現點名功能后,對機器人發出指令控制舵機實現四肢的動作,完成行走、擺臂和回復,同時利用語音識別模塊、語音發聲模塊結合自身運動展開課堂內容的講解和問答。
模擬人類行走時的步態,調整舵機的旋轉角度,完成機器人的步態行走。為使雙足機器人教師實現行走動作,如圖1所示,將機器人的每條腿配置3個自由度,髖關節、膝關節、踝關節各一個自由度。除上述6個自由度外,機器人的兩只胳膊在肩關節處各配置一個自由度,因此本研究機器人自由度總數為8。每個自由度由舵機驅動。髖關節和膝關節俯仰自由度共同協調動作可完成機器人的直線行走功能;踝關節的偏轉自由度協調動作可實現在橫向平面內的重心轉移功能。

圖1 機器人雙腿自由度
2.1.1 對稱性要求
在結構布置上,步行運動普遍采用對稱性結構。Goldberg[3]等人研究了步行結構的對稱性,發現機身運動的對稱性和腿結構的對稱性之間存在著相互關系。在單足支撐階段,對稱性的機身運動要求腿部機構是對稱的,而在雙足支撐階段,則對腿部結構沒有對稱性的要求。根據這點,本設計采用對稱分布結構。
2.1.2 避免耦合干涉設計
當機器人關節自由度為2個或3個時,容易產生自由度的耦合干涉,即通常所說的折疊腿現象。為了防止這種現象的出現,盡量通過設計將旋轉軸的中心線交于一點,以降低發生耦合干涉的幾率。
2.1.3 機器人關節的要求
機器人關節的設計是雙足機器人設計中最關鍵的步驟之一,為保證機器人在行走過程中步態平穩,行動靈活,動作可靠,本研究關節選用旋轉式關節,根據機器人動作要求設計3個主要關節,分別為:髖關節、膝關節、踝關節。
2.1.4 機器人外觀設計
本研究機器人由頭部、上體、雙臂、腰部、雙腿、雙足等部分構成,模擬人體各部分比例設計完成。所設計的機器人尺寸為 300 mm×270 mm×130 mm,重 1.42 kg。
對機器人而言,驅動器和肌肉在人體運動過程中所起到的作用一樣,它通過驅動機器人各關節從而讓其實現各種復雜的運動。目前,常用于機器人驅動的驅動器可以分為電機驅動、液壓驅動、氣壓驅動以及其它新型驅動機構。驅動方式特點如表1所示。

表1 驅動方式特點
由于本研究的機器人尺寸較小、動作復雜等特點,選擇電機驅動作為本機器人各關節的驅動器。
控制用的電機主要有步進電機和伺服電機兩種,但這兩種電機輸出轉速很高,對于本研究機器人而言,驅動器速度一般要求在100~150 r/min,所以需要在電機輸出端增加減速機構,這必然會增加機器人的尺寸??紤]到本設計驅動器的負載較低,同時需要調節的速度范圍較小,因此選用舵機驅動為機器人提供動力。
為了簡化控制系統設計并盡可能提高控制系統的可靠性,本設計采用MG995全金屬齒輪舵機做為驅動電機,其主要技術指標如表2所示。

表2 舵機主要技術指標
驅動器與運動機構最簡單的連接方法是將舵機與各關節同軸直接相連,雖然采用此種連接方式會減弱整個腿部的機動性,但是本研究機器人只有8自由度,結構相對簡單,采用舵機支架直接連接的方式是可行的。舵機支架采用鋁合金(LY12)鈑金材料,舵機關節受力為雙彎曲受力,校核公式如下式:

本研究的機器人舵機支架寬度b=26 mm,厚度h=1.5 mm,最大力矩L=300 N·mm,鋁合金材料抗彎強度為30 MPa,通過式(1)校核計算可以得出上述尺寸設計是合理的。
利用Arduino單片機編寫語音識別模塊、語音發聲模塊、指紋識別模塊,舵機控制模塊的控制程序。
機器人共有8個舵機,主要用于驅動各處關節的運動,同時采用Arduino單片機控制各個舵機的運動。由于Arduino單片機I/O接口較少,單獨使用時只能控制兩個舵機,不能滿足設計要求。因此采用16路舵機控制器與Arduino單片機配合使用控制8個舵機。
舵機控制器需要兩個電源:舵機電源和芯片電源。由于舵機的功率比較大,當兩者公用一個電源時,可能會因為發熱量過大燒壞芯片,所以使用兩個外接電源分別為舵機和芯片提供電源。控制器與Arduino的配合連接比較簡單,只需要將Arduino的TX引腳與控制器的RX引腳相連接,共接二者的GND就可以實現對多個舵機的控制。
語音識別部分采用語音識別芯片LD3320實現;采用芯片WP588D實現語音發聲功能。
本機器人運動的實現是通過協調各個舵機的先后運動順序來完成的,舵機的程序控制部分如下:
void loop()
{if(Serial1.available())
{int inByte=Serial1.read();
switch(inByte)
{ case 0x00:send_data(0x03); break;
case 0x01:send_data(0x04);delay(4000);
titui();delay(3000);
lizheng();
break;
case 0x02:send_data(0x06);delay(13000);
shenshou();
break;
case 0x03:send_data(0x07);
break;
case 0x04:send_data(0x08);
break; }
Serial.write(inByte);
}}
利用三維建模軟件Unigraphics建立了雙足步行機器人的實體模型,其模型如圖2。
雙足機器人運動步態設計的難點在于如何使其在行走過程中保證自身的平穩性。目前世界上大多數雙足機器人都采用ZMP作為穩定行走的判定依據。當雙足機構處于動態平衡時,ZMP和腳底所受地面反力的壓力中心是重合的。因此可以通過檢測到的地面反力信息,計算出CoP,利用控制策略不斷調整ZMP和CoP的位置直至兩者重合,最終實現機器人的穩定行走[4-5]。

圖2 三維實體模型
在步態設計時,不僅要考慮到機器人的穩定行走,也要考慮各動作之間的協調性。傳統的保證協調性的編寫方法是采用滾動條的方法,但是這種方法效率較低,不適合在本研究中使用,所以需要編寫更加有效率的運動文件。在研究本機器人的動作平臺中,由于每臺機器人的初始位置所對應的動作數據不同,因而,即使機器人的動作表達式一樣,他們所對應的數據也不盡相同。比如,機器人實際動作時的舵機角度值A,初始位置角度值H,機器人進行動作時舵機轉動角度R之間的關系如下式:

通過機器人運動中雙腿各個部分角度R,H,A的計算,編程逐步移動機器人。機器人立正動作的程序如下:
void lizheng()
{
for(a=40,b=53,c=24,d=14;a<60&&b<73&&c<44&&d<34;a++,b++,c++,d++)
{
servo3.write(a);
delay(2);
servo4.write(b);
delay(2);
servo6.write(c);
delay(2);
servo7.write(d);
delay(2);
}
servo8.write(95);
delay(50);
servo9.write(57);
delay(50);
for(a=87;a<67;a--)
{
servo5.write(a);
delay(10);
}}
初始狀態:機器人保持立正的姿勢,如圖3(a)。
第一步:右腿踝關節轉動30°,機器人身體向右傾斜,使重心右移,所有重量都集中到機器人的右腿上,使機器人保持平衡,如圖 3(b)。
第二步:髖關節和膝關節轉動,左腿向前踢出,同時右臂向前擺,由拉繩拉動肘部彎曲,小臂基本水平。左臂向后擺動,如圖 3(c)。
第三步:右腿踝關節回轉30°,左腳著地,重心回到兩腿之間,如圖 3(d)。
第四步:左腿踝關節轉動30°,機器人身體向左傾斜,使重心左移,所有重量都集中到機器人的左腿上,使機器人保持平衡,如圖 3(e)。
第五步:左右腿的髖關節和膝關節同時轉動,右腿向前踢出,同時左臂向前擺,由拉繩拉動肘部彎曲,使小臂基本水平。右臂向后擺動,如圖3(f)。
如此循環往復,機器人便可向前運動。

圖3 機器人行走步驟
完成了雙足機器人教師本體的結構設計,共8個自由度,包括上肢2個自由度和下肢6個自由度。利用Arduino單片機通過舵機控制器實現了對8個舵機的控制,并對其進行步態規劃,最終實現前進、后退、左右轉等動作。同時,在完成類人行走的基礎上,增加了語音識別、語音發聲、指紋識別的功能使其能夠有效地用于講解機器人的結構和驅動的抽象知識,實現了課堂的互動。
[1] 周華平,馮金光.仿人步行機器人機構設計[J].電測與儀表,2005,42(2):9-12.
[2] 梁靜強,許瑛.雙足步行機器人的結構及其控制系統設計[J].機械工程師,2007(3):47-49.
[3] 曾強,方躍法.雙足步行機器人整體協調運動規劃[J].機械,2007(2):53-59.
[4] Comb G M,Predko M.機器人設計與實現[M].北京:北京科學出版社,2008.
[5] 陳懇,付成龍,仿生機器人理論與技術[M].北京:清華大學出版社,2010.