孫亞軍++潘楠++和婷++番紹生
摘要:為了使學(xué)生能夠更好地掌握機(jī)器人相關(guān)的機(jī)械結(jié)構(gòu)設(shè)計(jì)、通信、單片機(jī)、C語(yǔ)言編程等方面的知識(shí)和技能,同時(shí)針對(duì)現(xiàn)有常規(guī)機(jī)器人教學(xué)設(shè)備只能開展演示性實(shí)驗(yàn)等問題,設(shè)計(jì)一套模塊化雙足競(jìng)走機(jī)器人實(shí)驗(yàn)教學(xué)平臺(tái),文章首先介紹了模塊化雙足競(jìng)走機(jī)器人實(shí)驗(yàn)教學(xué)平臺(tái)整體設(shè)計(jì)思想,接著介紹了模塊化雙足競(jìng)走機(jī)器人實(shí)驗(yàn)教學(xué)平臺(tái)的下位機(jī)硬件系統(tǒng)和上位機(jī)人機(jī)交互界面的設(shè)計(jì)以及具體實(shí)現(xiàn)細(xì)節(jié),最后通過實(shí)驗(yàn)證明了該設(shè)計(jì)的可行性。
Abstract: In order to make the students master the knowledge and skills of mechanical structure design, communication, single-chip microcomputer and C language programming related to robot better, and in view of the fact that the existing conventional teaching equipment can only carry out demonstrative experiment, a modularized biped race walking robot experimental platform is designed. This paper first introduces the whole design idea of the modularized biped race walking robot experiment teaching platform, and then introduces the design of the interface and the implementation details of the hardware of the lower position machine of the modularized biped race walking robot experiment teaching platform. Finally, the feasibility of the design is proved through experiments.
關(guān)鍵詞:模塊化;機(jī)器人;教學(xué)平臺(tái)
Key words: modularized;robot;teaching platform
中圖分類號(hào):TP242 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-4311(2017)05-0170-04
0 引言
機(jī)器人是一門新興的綜合性學(xué)科,涉及機(jī)械、電子、計(jì)算機(jī)、材料、控制等眾多學(xué)科,體現(xiàn)了一個(gè)國(guó)家的智能化和自動(dòng)化研究水平。雙足機(jī)器人是一種沒有上身的機(jī)器人集科學(xué)性、學(xué)術(shù)性、趣味性于一體,是培養(yǎng)學(xué)生創(chuàng)新實(shí)踐能力的理想平臺(tái),已成為全國(guó)機(jī)器人大賽的指定項(xiàng)目之一。本設(shè)計(jì)以機(jī)器人大賽作品為基礎(chǔ),開發(fā)一套適合高校的模塊化雙足競(jìng)走機(jī)器人實(shí)驗(yàn)教學(xué)平臺(tái),根據(jù)需要完成的動(dòng)作選擇不同模塊拼接成機(jī)器人,利用上位機(jī)發(fā)送控制命令給下位機(jī)機(jī)器人,控制機(jī)器人完成競(jìng)走、越障、翻跟頭、原地自轉(zhuǎn)、磕頭、鞠躬等動(dòng)作。以實(shí)現(xiàn)綜合性、設(shè)計(jì)性、創(chuàng)新性實(shí)驗(yàn)項(xiàng)目的開設(shè),培養(yǎng)學(xué)生創(chuàng)新和實(shí)踐能力。
1 整體設(shè)計(jì)思想
通過分析人體腿部關(guān)節(jié)自由度分布情況,對(duì)雙足競(jìng)走機(jī)器人運(yùn)動(dòng)自由度進(jìn)行合理的配置,對(duì)機(jī)器人的腳部、膝部、胯部的機(jī)械結(jié)構(gòu)進(jìn)行設(shè)計(jì)。利用UG NX 6.0進(jìn)行實(shí)體建模,最后生成零件圖,經(jīng)過加工得到模塊化零件,根據(jù)需要完成的動(dòng)作選擇不同模塊拼接成機(jī)器人。選用ATmega128單片機(jī)作為主控芯片,利用C語(yǔ)言在ICCAVR編譯器下進(jìn)行控制程序的設(shè)計(jì),利用Visual C++2008進(jìn)行教學(xué)平臺(tái)的人機(jī)交互界面的設(shè)計(jì)[1]。學(xué)生可在此平臺(tái)上進(jìn)一步通過編程、參數(shù)設(shè)置進(jìn)行調(diào)試或控制機(jī)器人[2]。
2 機(jī)器人硬件系統(tǒng)設(shè)計(jì)
2.1 人體腿部各關(guān)節(jié)自由度的分布情況
人體腿部的關(guān)節(jié)由髖關(guān)節(jié)、膝關(guān)節(jié)、踝關(guān)節(jié)三個(gè)關(guān)節(jié)組成,通過分析可以知道人體的髖關(guān)節(jié)是典型的3個(gè)自由度的結(jié)構(gòu),能夠?qū)崿F(xiàn)屈伸、收展、旋轉(zhuǎn)等運(yùn)動(dòng),如圖1所示;膝關(guān)節(jié)屬于滑車關(guān)節(jié)類型,能夠?qū)崿F(xiàn)屈伸運(yùn)動(dòng),因此只有1個(gè)自由度,如圖2所示;踝關(guān)節(jié)由脛骨的下關(guān)節(jié)面、內(nèi)踝關(guān)節(jié)面、腓骨的外踝關(guān)節(jié)面共同形成的關(guān)節(jié),能夠做左右方向的翻轉(zhuǎn)運(yùn)動(dòng)和豎直方向的旋轉(zhuǎn)運(yùn)動(dòng),所以踝關(guān)節(jié)具有2個(gè)自由度,踝關(guān)節(jié)如圖3所示。
2.2 機(jī)器人模塊化零件設(shè)計(jì)
在機(jī)器人的自由度在配置過程中,既要求自由度盡量少,也要求完成的基本動(dòng)作盡量多,同時(shí)要求機(jī)器人運(yùn)動(dòng)盡量自然美觀。機(jī)器人按照設(shè)計(jì)要求,通過胯部舵機(jī)、膝部舵機(jī)和腳部舵機(jī)來模擬人體的髖關(guān)節(jié)、膝關(guān)節(jié)和踝關(guān)節(jié),并將人體髖關(guān)節(jié)、膝關(guān)節(jié)和踝關(guān)節(jié)的運(yùn)動(dòng)簡(jiǎn)化為一個(gè)自由度,完成競(jìng)走、越障、翻跟頭、原地自轉(zhuǎn)、磕頭、鞠躬等動(dòng)作。同時(shí)使得機(jī)器人的結(jié)構(gòu)得到簡(jiǎn)化,制作成本低,運(yùn)動(dòng)控制簡(jiǎn)單。采用模塊化結(jié)構(gòu),每個(gè)零部件都設(shè)計(jì)有固定螺孔,根據(jù)需要完成的動(dòng)作選擇不同模塊拼接成機(jī)器人[3]。
首先使用UG NX 6.0進(jìn)行實(shí)體建模,然后生成零件圖,最后經(jīng)過加工得到模塊化零部件。模塊化零部件如圖4所示。
2.3 機(jī)器人的自由度的配置及組裝方案
組裝方案一:機(jī)器人要完成直線行走、向前翻跟斗、向后翻跟斗等動(dòng)作,不需要完成旋轉(zhuǎn)等復(fù)雜動(dòng)作,因此只需要在每條腿配置3個(gè)自由度即可。人體的髖關(guān)節(jié)雖然有3個(gè)自由度,本設(shè)計(jì)只需要控制前向運(yùn)動(dòng)的自由度,所以髖關(guān)節(jié)簡(jiǎn)化為一個(gè)前向運(yùn)動(dòng)的自由度;膝關(guān)節(jié)按照運(yùn)動(dòng)的要求配置一個(gè)前向運(yùn)動(dòng)的自由度;踝關(guān)節(jié)只需要完成側(cè)向運(yùn)動(dòng),因而配置一個(gè)控制側(cè)向運(yùn)動(dòng)的自由度,保證機(jī)器人行走過程中的平衡。因此機(jī)器人的髖關(guān)節(jié)、膝關(guān)節(jié)、踝關(guān)節(jié)各配置一個(gè)自由度,自由度配置如圖5所示,機(jī)器人3D設(shè)計(jì)如圖6所示,機(jī)器人實(shí)物組裝如圖7所示。
組裝方案二:機(jī)器人要完成直線行走、旋轉(zhuǎn)等動(dòng)作,不需要其他復(fù)雜動(dòng)作,因此只需要在每條腿配置2個(gè)自由度即可。人體的髖關(guān)節(jié)雖然有3個(gè)自由度,本設(shè)計(jì)只需要控制旋轉(zhuǎn)運(yùn)動(dòng)的自由度,所以髖關(guān)節(jié)簡(jiǎn)化為一個(gè)旋轉(zhuǎn)運(yùn)動(dòng)的自由度;踝關(guān)節(jié)只需要完成側(cè)向運(yùn)動(dòng),因而配置一個(gè)控制側(cè)向運(yùn)動(dòng)的自由度,保證機(jī)器人行走過程中的平衡。因此雙足競(jìng)走機(jī)器人自由度的配置為髖關(guān)節(jié)和踝關(guān)節(jié)各一個(gè)自由度,自由度配置如圖8所示,機(jī)器人3D設(shè)計(jì)如圖9所示,機(jī)器人組裝如圖10所示。
組裝方案三:機(jī)器人要完成直線行走、向前、向后的翻跟斗及旋轉(zhuǎn)等動(dòng)作,不需要其他復(fù)雜動(dòng)作,因此只需要在每條腿配置3個(gè)自由度即可。人體的髖關(guān)節(jié)雖然有3個(gè)自由度,本設(shè)計(jì)只需要控制旋轉(zhuǎn)運(yùn)動(dòng)的自由度,所以髖關(guān)節(jié)簡(jiǎn)化為一個(gè)旋轉(zhuǎn)運(yùn)動(dòng)的自由度;膝關(guān)節(jié)按照運(yùn)動(dòng)的要求配置一個(gè)前向運(yùn)動(dòng)的自由度;踝關(guān)節(jié)只需要完成向前運(yùn)動(dòng),因而配置一個(gè)控制向前運(yùn)動(dòng)的自由度,保證機(jī)器人行走過程中的平衡。因此雙足競(jìng)走機(jī)器人自由度的配置為髖關(guān)節(jié)、膝關(guān)節(jié)、踝關(guān)節(jié)各一個(gè)自由度,自由度配置如圖11所示,機(jī)器人3D設(shè)計(jì)如圖12所示,機(jī)器人組裝如圖13所示。
本設(shè)計(jì)模塊化雙足競(jìng)走機(jī)器人實(shí)驗(yàn)教學(xué)平臺(tái)不限于以上三種組裝方案,模塊化零部件設(shè)計(jì)有固定螺孔,學(xué)生可要完成的動(dòng)作選擇不同模塊拼接成機(jī)器人,以實(shí)現(xiàn)綜合性、設(shè)計(jì)性、創(chuàng)新性實(shí)驗(yàn)項(xiàng)目的開設(shè),學(xué)生在組裝調(diào)試機(jī)器人的同時(shí),培養(yǎng)其創(chuàng)新和實(shí)踐能力。
2.4 機(jī)器人驅(qū)動(dòng)方案設(shè)計(jì)
結(jié)合本設(shè)計(jì)中的機(jī)器人完成動(dòng)作的要求,選擇了適合進(jìn)行位置精確控制的舵機(jī)。其控制原理是通過輸入周期為20ms(高電平為0.5ms-2.5ms)的脈沖,不同的脈寬使舵機(jī)在0°-180°之間轉(zhuǎn)動(dòng)相應(yīng)的角度,因?yàn)槠淇刂品椒ň哂泻?jiǎn)單、精度高、成本低、體積小等特點(diǎn),在機(jī)器人中得到廣泛的應(yīng)用。
通過上述內(nèi)容可知,舵機(jī)的控制由不同脈寬的PWM來控制的。PWM(Pulse Width Modulation)即脈沖寬度調(diào)制,簡(jiǎn)稱脈寬調(diào)制,具有控制簡(jiǎn)單、靈活和動(dòng)態(tài)響應(yīng)好等優(yōu)點(diǎn),通過單片機(jī)I/O口進(jìn)行模擬PWM進(jìn)行輸出,控制靈活、價(jià)格低廉,精度足以滿足本設(shè)計(jì)的要求。
選用ATmega128單片機(jī)作為主控芯片,產(chǎn)生周期為20ms,脈寬為0.5-2.5ms的PWM[4],具體的設(shè)計(jì)過程為將20ms分成200段,每個(gè)分段時(shí)間為0.1ms,比如要得到脈寬為2mms的PWM,只需要在200段時(shí)間中,有連續(xù)的20段為高電平就能夠?qū)崿F(xiàn)了。具體作法:用ATmega128單片機(jī)定時(shí)0.1ms,總共定時(shí)200次,連續(xù)20次將對(duì)應(yīng)的I/O置成高電平,其余180次置成低電平,反復(fù)這樣操作就形成了所需要的PWM。產(chǎn)生PWM信號(hào)的流程圖如圖14所示。
3 上位機(jī)調(diào)試控制軟件設(shè)計(jì)
3.1 上位機(jī)與下位機(jī)通信設(shè)計(jì)
為實(shí)現(xiàn)機(jī)器人與上位機(jī)之間的數(shù)據(jù)及控制命令的交換,需要單片機(jī)與上位機(jī)界面之間進(jìn)行通訊,本系統(tǒng)采用的是基于RS-232協(xié)議的異步串口通訊,通過串口通訊上位機(jī)能夠得到雙足競(jìng)走機(jī)器人的運(yùn)動(dòng)狀態(tài),機(jī)器人能夠接收到上位機(jī)教學(xué)平臺(tái)所發(fā)送的數(shù)據(jù)和命令。
下位機(jī)使用ATmega128單片機(jī)自帶UART異步串行口,它是一個(gè)標(biāo)準(zhǔn)的異步全雙工通信,用10位表示一個(gè)字節(jié)信息,1位起始位、1位停止位、和8位數(shù)據(jù)位信息。數(shù)據(jù)由ATmega128單片機(jī)的RX接收,TX發(fā)送。在起動(dòng)UART接口時(shí),必須先配置波特率,配置接收、發(fā)送使能寄存器,最后配置中斷寄存器,單片機(jī)就進(jìn)入了收發(fā)就位狀態(tài),等待發(fā)送和接收的指令。機(jī)器人根據(jù)接收到的動(dòng)作指令完成相應(yīng)的動(dòng)作。
3.2 上位機(jī)方案設(shè)計(jì)
上位機(jī)界面是用戶與機(jī)器人進(jìn)行交流的平臺(tái)[5],通過這個(gè)界面機(jī)器人能夠收到用戶發(fā)出的指令及數(shù)據(jù),同時(shí)用戶還能獲悉機(jī)器人的狀態(tài),便于更好的進(jìn)行控制。此外,本設(shè)計(jì)給使用者提供了一個(gè)了解機(jī)器人開發(fā)和研究的載體。整體的界面如圖15所示。
本系統(tǒng)設(shè)計(jì)有三種不同的控制模式,分別是自主運(yùn)行控制模式、Host控制模式和單語(yǔ)句控制模式。模式選擇如圖16所示。
①自主運(yùn)行模式是指雙足競(jìng)走機(jī)器人自動(dòng)運(yùn)行程序,而不需要使用者在使用過程中進(jìn)行干擾,使用者只需要完成指令編輯,發(fā)送給機(jī)器人即可。②Host模式是指使用者點(diǎn)擊相應(yīng)動(dòng)作的按鍵,機(jī)器人就會(huì)自動(dòng)完成相應(yīng)的包括前進(jìn)、后退、向前翻跟斗和向后翻跟斗等動(dòng)作。③單句命令控制模式是指機(jī)器人一次只執(zhí)行一條語(yǔ)句,完成之后等待下一條命令,這種模式下可以確定在機(jī)器人運(yùn)動(dòng)時(shí),各關(guān)節(jié)處舵機(jī)轉(zhuǎn)動(dòng)的角度。
4 實(shí)驗(yàn)
為了驗(yàn)證該設(shè)計(jì)的可行性,我們按照上述設(shè)計(jì)方法制作了一臺(tái)機(jī)器人并且進(jìn)行了演示。機(jī)器人處于立正狀態(tài),如圖17所示,機(jī)器人接收到向前翻轉(zhuǎn)指令后,右腿胯部舵機(jī)輸出軸順時(shí)針旋轉(zhuǎn)90度同時(shí)左腿胯部舵機(jī)輸出軸逆時(shí)針旋轉(zhuǎn)90度完成動(dòng)作一,如圖18所示,右腿膝部舵機(jī)輸出軸逆時(shí)針旋轉(zhuǎn)90度同時(shí)左腿膝部舵機(jī)輸出軸順時(shí)針旋轉(zhuǎn)90度完成動(dòng)作二,如圖19所示,右腿胯部舵機(jī)輸出軸逆時(shí)針旋轉(zhuǎn)180度同時(shí)右腿膝部舵機(jī)12輸出軸順時(shí)針旋轉(zhuǎn)180度完成動(dòng)作三,如圖20所示,左腿胯部舵機(jī)輸出軸順時(shí)針旋轉(zhuǎn)180度同時(shí)左腿膝部舵機(jī)輸出軸逆時(shí)針旋轉(zhuǎn)180度完成動(dòng)作四,如圖21所示,右腿膝部舵機(jī)輸出軸逆時(shí)針旋轉(zhuǎn)90度同時(shí)左腿膝部舵機(jī)輸出軸順時(shí)針旋轉(zhuǎn)90度完成動(dòng)作五,如圖22所示,右腿胯部舵機(jī)輸出軸順時(shí)針旋轉(zhuǎn)90度同時(shí)左腿胯部舵機(jī)輸出軸逆時(shí)針旋轉(zhuǎn)90度完成動(dòng)作六,如圖23所示,依次循環(huán)執(zhí)行動(dòng)作一,二,三,四,五,六完成機(jī)器人向前翻轉(zhuǎn)動(dòng)作。其他動(dòng)作實(shí)現(xiàn)的控制精度、方法等與上述實(shí)驗(yàn)相同在此不再贅述。
5 結(jié)論
本設(shè)計(jì)以機(jī)器人大賽作品為基礎(chǔ),開發(fā)一套適合高校的模塊化雙足競(jìng)走機(jī)器人實(shí)驗(yàn)教學(xué)平臺(tái),根據(jù)需要完成的動(dòng)作選擇不同模塊拼接成機(jī)器人,利用上位機(jī)發(fā)送控制命令給下位機(jī)機(jī)器人,控制機(jī)器人完成競(jìng)走、翻跟頭、原地自轉(zhuǎn)、磕頭、鞠躬等動(dòng)作。以實(shí)現(xiàn)綜合性、設(shè)計(jì)性、創(chuàng)新性實(shí)驗(yàn)項(xiàng)目的開設(shè),培養(yǎng)學(xué)生創(chuàng)新和實(shí)踐能力,是培養(yǎng)學(xué)生創(chuàng)新實(shí)踐能力的理想平臺(tái)。
參考文獻(xiàn):
[1]孫鵬亮.智能機(jī)器人系統(tǒng)分析與設(shè)計(jì)[D].武漢:中國(guó)地質(zhì)大學(xué),2010.
[2]孫光偉.仿人機(jī)器人控制系統(tǒng)設(shè)計(jì)與穩(wěn)定性研究[D].成都:西華大學(xué),2010.
[3]郭清.助行訓(xùn)練機(jī)器人系統(tǒng)設(shè)計(jì)及步態(tài)控制實(shí)驗(yàn)研究[D].哈爾濱:哈爾濱工程大學(xué),2009.
[4]任玉才,李富超.電動(dòng)機(jī)控制中的PWM和測(cè)頻在C8051中的實(shí)現(xiàn)匯[J].船電技術(shù),2004(6):20-23.
[5]胡小江,董飛垚,雷虎民,李剛.基于虛擬儀器的舵機(jī)半實(shí)物仿真系統(tǒng)研究[J].測(cè)控技術(shù),2011(1):6-8.