孫亞軍++潘楠++和婷++番紹生



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