兩足行走機(jī)器人行走控制系統(tǒng)設(shè)計(jì)含開題
兩足行走機(jī)器人行走控制系統(tǒng)設(shè)計(jì)含開題,行走,機(jī)器人,控制系統(tǒng),設(shè)計(jì),開題
XX設(shè)計(jì)說(shuō)明書(X)中文摘要
兩足步行機(jī)器人不僅在教學(xué)、比賽和娛樂(lè)等方面應(yīng)用廣泛,并且也可以作為兩足步行研究的平臺(tái)。本文在“KONDO”兩足步行機(jī)器人的機(jī)械結(jié)構(gòu)的基礎(chǔ)上,設(shè)計(jì)了基于AVR處理器的兩足步行機(jī)器人控制系統(tǒng),包括硬軟件設(shè)計(jì)及其實(shí)現(xiàn);設(shè)計(jì)了兩足步行機(jī)器人的步行模式,實(shí)現(xiàn)了在平面上的穩(wěn)定步行。在硬件電路的處理器中,移植了u C/OS-II操作系統(tǒng),實(shí)現(xiàn)了兩足步行機(jī)器人控制系統(tǒng)的各項(xiàng)功能,建立了完整的兩足步行機(jī)器人控制系統(tǒng)軟件框架;改進(jìn)了通常的多路PWM信號(hào)產(chǎn)生方法,使控制信號(hào)的精度達(dá)到了lus以上,解決了由于中斷嵌套影響控制信號(hào)精度,從而引發(fā)機(jī)器人抖動(dòng)的問(wèn)題;并對(duì)機(jī)器人進(jìn)行了關(guān)節(jié)調(diào)試。
關(guān)鍵詞 機(jī)器人 處理器 操作系統(tǒng)
XX設(shè)計(jì)說(shuō)明書(XX)外文摘要
Title The Biped Walking Robot Designs
Abstract
The Biped walking desktop-robot is not only applied widely in teaching, competitions and entertainments, but also treated as a research tool of biped walking. In this thesis, a control system for biped walking desktop-robot is designed, which is based on AVR, and works well in the mechanism of the KONDO biped walking desktop-robot. A walking astern for the biped robot is presented, and the robot can walk stably on the flat.
The open-code operating system, uC/OS-II is explanted to the processor of the circuit. Under the operating system, several tasks and interrupt service routines are resigned to accomplish the functions of the control system for the biped working boot. The frame of software is completed, which is for the control system for biped asking desktop-robot. A improved method of producing multiple PWM signals is resented, and the precision of the control signal can be improved to 111 s, and the problem that the robot shakes because of the interrupt-nesting is solved. A test to the articulations of the robot is done.
Keywords Robot Processor Control System
目 錄
1 緒論…………………………………………………………………………………1
1.1 課題的研究背景和意義…………………………………………………………1
1.2 國(guó)內(nèi)外研究現(xiàn)狀…………………………………………………………………2
1.3 本文的主要工作…………………………………………………………………4
1.4 本文組織結(jié)構(gòu)……………………………………………………………………5
2 兩足步行機(jī)器人控制系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)………………………………………6
2.1 硬件系統(tǒng)的基本要求……………………………………………………………6
2.2 硬件系統(tǒng)設(shè)計(jì)的技術(shù)路線和總體方案…………………………………………7
2.3 舵機(jī)控制器的使用方法…………………………………………………………13
3 兩足步行機(jī)器人控制系統(tǒng)軟件設(shè)計(jì)………………………………………………15
3.1 軟件系統(tǒng)的基本要求……………………………………………………………15
3.2 軟件設(shè)計(jì)的技術(shù)路線與總體方案………………………………………………16
3.3 伺服電機(jī)控制軟件操作方法……………………………………………………17
3.4 微型伺服電機(jī)(舵機(jī))的選擇………………………………………………20
4 兩足步行機(jī)器人步行模式的建立…………………………………………………22
4.1 本章任務(wù)…………………………………………………………………………22
4.2 靜態(tài)步行模式設(shè)計(jì)與實(shí)現(xiàn)………………………………………………………23
4.3 姿態(tài)運(yùn)動(dòng)的軟件實(shí)現(xiàn)……………………………………………………………24
結(jié)束語(yǔ)……………………………………………………………………………………26
致謝………………………………………………………………………………………27
參考文獻(xiàn)…………………………………………………………………………………28
1 緒論
兩足步行機(jī)器人是指可以使用兩只腳交替地抬起和放下,以適當(dāng)?shù)牟椒ミ\(yùn)動(dòng)的機(jī)器人,可分為擬人機(jī)器人和桌面型兩足機(jī)器人 (仿人機(jī)器人)大小和人相似,不僅具有擬人的步行功能,而且通常還具有視覺(jué)、語(yǔ)音、觸覺(jué)等一系列擬人的功能;桌面型兩足機(jī)器人通常指體積較小,只具有步行功能及其他少數(shù)特定功能的兩足機(jī)器人,例如具有步行功能和視覺(jué)功能的自主踢足球機(jī)器人。與擬人機(jī)器人相比,桌面型兩足步行機(jī)器人的成本較低,除了具有科研性外,還具有廣泛地娛樂(lè)性,也可以應(yīng)用在教學(xué)和比賽中。國(guó)內(nèi)外的機(jī)器人大賽中,常??梢钥吹阶烂嫘蛢勺悴叫袡C(jī)器人的身影[1]。
1.1 課題的研究背景和意義
于兩足步行機(jī)器人的擬人性和對(duì)環(huán)境良好的適應(yīng)性等特點(diǎn),受到各國(guó)政府和研究者的廣泛重視,是當(dāng)今世界的高新技術(shù)的代表之一。它在科研、教學(xué)、比賽和娛樂(lè)等方面都很到了很好的應(yīng)用。
江蘇省大學(xué)生機(jī)器人大賽和全國(guó)大學(xué)生機(jī)器人大賽中經(jīng)常有兩足步行機(jī)器人,它可以參加舞蹈機(jī)器人比賽、兩足競(jìng)走機(jī)器人比賽、Robocop類人組機(jī)器人踢足球[10]器人創(chuàng)新比賽、Robocop救援組比賽等。舞蹈機(jī)器人比賽時(shí)使用了日本“KONDO”兩足步行機(jī)器人,性能出眾,發(fā)揮穩(wěn)定,獲得了舞蹈機(jī)器人比賽的冠軍。但是該機(jī)器人是集成度很高的商業(yè)產(chǎn)品,它的控制系統(tǒng)不開放底層代碼,難以進(jìn)行二次開發(fā)和步態(tài)研究。 所以本文基于機(jī)器人控制系統(tǒng)中常用的眾多處理器和操作系統(tǒng)各自的特點(diǎn),并結(jié)合“KONDO”機(jī)器人機(jī)械結(jié)構(gòu)的特性,選用了高性能、低功耗的 8 位AVR? 微處理器內(nèi)核處理器ATMega8P來(lái)實(shí)現(xiàn)對(duì)機(jī)器人的控制來(lái)。設(shè)計(jì)的控制系統(tǒng)控制指令精簡(jiǎn),控制轉(zhuǎn)角精度高,波特率可以實(shí)時(shí)更改,體積小,重量輕,其可作為類人型機(jī)器人、仿生機(jī)器人、多自由度機(jī)械手的主控制器。隨著中國(guó)機(jī)械產(chǎn)業(yè)的不斷進(jìn)步,各高校相繼開設(shè)機(jī)械類創(chuàng)新課程和比賽,學(xué)生可將其應(yīng)用在各類機(jī)械創(chuàng)新作品中,優(yōu)化控制系統(tǒng)參加比賽。日本“KONDO”機(jī)器人如圖1.1所示。
圖1.1 日本“KONDO”跳舞機(jī)器人
1.2 國(guó)內(nèi)外研究現(xiàn)狀
步行是人與大多數(shù)動(dòng)物所具有的移動(dòng)方式,其中兩足直立行走是人類特有的步行方式,是所有步行方式中自動(dòng)化程度最高,最為復(fù)雜的動(dòng)態(tài)系統(tǒng)。最早從工程角度研究雙足機(jī)器人并獲得成功的是早稻田大學(xué)的加藤一郎。1972年,加藤實(shí)驗(yàn)室推出了wL-5雙足步行機(jī)器人,這是世界上第一臺(tái)雙足機(jī)器人。
1996年11月本田((HONDA)公司展示了一個(gè)有兩腿兩臂的仿人[2]型機(jī)器人P2,能在平地上行走、轉(zhuǎn)彎、上下樓梯和跨越障礙,并可提5公斤的重物和使用扳手等簡(jiǎn)單工作;在此基礎(chǔ)上,本田公司又連續(xù)開發(fā)了第二代仿人機(jī)器人P3,第三代仿人機(jī)器人Asimo, Asimo高120cm,行走質(zhì)量很高,非常接近人類。Sony公司也推出了能歌善舞的機(jī)器人Qrio,不但具有非常出色的步行穩(wěn)定性,而且具有很強(qiáng)的自行辨認(rèn)能力,甚至能在狹隘道路上行走并繞過(guò)障礙物。這兩個(gè)機(jī)器人代表了當(dāng)前世界上兩足步行機(jī)器人研制的最高水平。
Asimo和Qrio都是擬人機(jī)器人,它們除了具有兩足步行功能之外,還具有非常強(qiáng)大的視覺(jué)功能和語(yǔ)音功能,能辨認(rèn)很多目標(biāo),并能和人進(jìn)行很好的語(yǔ)言及肢體交流。而桌面型的兩足機(jī)器人也一直受到研究者的重視,研究的重點(diǎn)是兩足步行功能。如圖1.2所示。
圖1.2 Asimo(左)和Sony的Qrio(右)
2006年,日本神奈川大學(xué)設(shè)計(jì)的WABIAN-2LL機(jī)器人,身高120cm,重40Kg,在步行中通過(guò)膝關(guān)節(jié)改變腿長(zhǎng),通過(guò)腰關(guān)節(jié)的運(yùn)動(dòng)來(lái)減少腿部運(yùn)動(dòng)對(duì)身體重心的影響。2007年,大阪大學(xué)的Koh Hosoda等人研究了人類行走過(guò)程中的腿、腰、頭、手臂等各部分的協(xié)同作用,在兩足機(jī)器人中引入了三維極限環(huán)協(xié)同理論,設(shè)計(jì)的機(jī)器人Pneumat-BT[6],[7]。
隨著集成電路的發(fā)展,小型機(jī)器人可以具有功能越來(lái)越強(qiáng)大的嵌入式計(jì)算系統(tǒng),甚至可以使用運(yùn)算能力很強(qiáng)的圖像處理和模式識(shí)別系統(tǒng)。這使得桌面型兩足步行機(jī)器人和擬人機(jī)器人之間并沒(méi)有嚴(yán)格的區(qū)分標(biāo)準(zhǔn)。2007年,東京Denki大南京師范大學(xué)碩士學(xué)位論文學(xué)的Hideto SHIMIZU等人設(shè)計(jì)了小型兩足步行機(jī)器人HOAP-3,身高60cm,重8. 8Kg,共有28個(gè)自由度,有一個(gè)強(qiáng)大的視覺(jué)處理系統(tǒng)。如圖1.3所示。
圖1.3 WABIAN-2LL(左)、Pneumat-BT(中)和HOAP-3(右)
2006年,西班牙Politecnica de Valencia大學(xué)的Albero和Blanes等人設(shè)計(jì)了具有高性能分布式控制系統(tǒng)的桌面型兩足機(jī)器人YABIRO,高55cm,重4Kg,共27個(gè)自由度,具有獨(dú)特的腰部三自由度結(jié)構(gòu),如圖所示。該機(jī)器人使用了多個(gè)嵌入式系統(tǒng),主控制系統(tǒng)使用了嵌入式個(gè)人計(jì)算機(jī)和實(shí)時(shí)Linux操作系統(tǒng),具有非常強(qiáng)大的數(shù)據(jù)處理能力;主、從控制系統(tǒng)以及傳感器之間使用dual-CAN總線通信。
2006年,韓國(guó)國(guó)立釜山大學(xué)開發(fā)了腳底安裝有力傳感器的桌面型兩足機(jī)器人,該機(jī)器人身高28cm,重3.2Kg,如圖所示。同年,韓國(guó)Sung KyunKwan大學(xué)也開發(fā)了一個(gè)桌面型兩足步行機(jī)器人,身高45cm,重4.3Kg,共24個(gè)自由度,如圖所示。該機(jī)器人使用了TI公司的DSP TMS320F2407作為控制器,使用直流無(wú)刷電機(jī)作為驅(qū)動(dòng)器,在兩足步態(tài)設(shè)計(jì)中引入了遺傳算法。如圖1.4所示。
圖1.4 YABIRO-2(左)、釜山大學(xué)機(jī)器人和Sung Kuhn Kwan 大學(xué)機(jī)器人(右)
我國(guó)從80年代中期才開始研究?jī)勺悴叫袡C(jī)器人[20,21] ,國(guó)防科技大學(xué)1988年研制成功我國(guó)第一臺(tái)平面型六自由度的兩足機(jī)器人,能實(shí)現(xiàn)前進(jìn)、后退和上下樓梯;之后又現(xiàn)了實(shí)驗(yàn)室環(huán)境中的全方位行走,1995年,實(shí)現(xiàn)了動(dòng)態(tài)步行。
2000年11月,國(guó)防科技大學(xué)又研制出了我國(guó)第一臺(tái)具有人類外觀特征、可以模擬人類行走與基本操作功能的擬人兩足步行機(jī)器人Pioneero。
2002年,清華大學(xué)精密儀器系、機(jī)械工程系和自動(dòng)化系組成的研究小組開始研究開發(fā)擬人機(jī)器人THBIP,共32個(gè)自由度,可以步行、上下樓梯、打太極拳等,并具有視覺(jué)及語(yǔ)音識(shí)別功能[3]。
兩足機(jī)器人的研制發(fā)展過(guò)程,是由少自由度到多自由度、由實(shí)現(xiàn)簡(jiǎn)單動(dòng)作到復(fù)雜動(dòng)作、由靜態(tài)步行到動(dòng)態(tài)步行、由僅從簡(jiǎn)單功能到仿生功能的研制過(guò)程。
1.3 本文的主要工作
本文設(shè)計(jì)的主要內(nèi)容是兩足行走機(jī)器人的行走控制系統(tǒng)部分,我選用8 位AVR 微處理器內(nèi)核處理器ATMega8P,設(shè)計(jì)了兩足行走機(jī)器人的控制系統(tǒng)。主要工作包括:
(1) 設(shè)計(jì)了兩足步行機(jī)器人的硬件電路。選用高性能、低功耗的 8 位AVR微處理器,指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期,速度快,控制精度高、I/O口驅(qū)動(dòng)能力更強(qiáng),優(yōu)于AT51、STC51系列單片機(jī)。
(2) 選擇設(shè)計(jì)了兩足步行機(jī)器人的控制軟件系統(tǒng)。在AVR微處理器中移植了u C/OS-II操作系統(tǒng);在操作系統(tǒng)下設(shè)計(jì)了應(yīng)用程序,實(shí)現(xiàn)了兩足機(jī)器人控制系統(tǒng)的各項(xiàng)功能,搭建了完整的兩足機(jī)器人控制系統(tǒng)軟件框架[12],[13]。
(3) 搭建了17自由度機(jī)器人雙腿的運(yùn)動(dòng)模式,通過(guò)17個(gè)舵機(jī)同時(shí)協(xié)調(diào)運(yùn)作,以實(shí)現(xiàn)機(jī)器人完成相應(yīng)的動(dòng)作。
(4) 完成畢業(yè)設(shè)計(jì)的同時(shí),提出本設(shè)計(jì)的不足,指出需要改進(jìn)的地方。
1.4 本文組織結(jié)構(gòu)
第一章介紹了兩足步行機(jī)器人的國(guó)內(nèi)外研究現(xiàn)狀 [26] ,由別人設(shè)計(jì)的機(jī)器人總結(jié)對(duì)自己的啟發(fā)提出本設(shè)計(jì)的主要任務(wù)點(diǎn)。
第二章介紹了控制系統(tǒng)中常用的處理器和操作系統(tǒng)、以及兩足步行機(jī)器人的機(jī)械結(jié)構(gòu),并說(shuō)明了本文設(shè)計(jì)兩足步行機(jī)器人控制系統(tǒng)的目的。使用Prote199設(shè)計(jì)了兩足步行機(jī)器人控制系統(tǒng)的硬件,包括核心電路圖和PWM脈沖信號(hào)控制原理圖。
第三章介紹了使用實(shí)現(xiàn)機(jī)器人控制系統(tǒng)的具體軟件,這里我們使用了Servo Control Software,是實(shí)現(xiàn)伺服電機(jī)控制器通訊協(xié)議PC機(jī)上專用WINDOWS控制軟件,可以簡(jiǎn)便的實(shí)現(xiàn)復(fù)雜動(dòng)作的操控。
第四章建立兩足步行機(jī)器人步行模式建立,對(duì)機(jī)器人的雙腿運(yùn)動(dòng)進(jìn)行了分析,對(duì)10個(gè)微型伺服直流電機(jī)的轉(zhuǎn)角角度進(jìn)行了逐個(gè)分析。
第五章對(duì)本文的工作進(jìn)行了總結(jié),并對(duì)今后的深入研究提出了建議。
2 兩足步行機(jī)器人控制系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)
在以比賽、娛樂(lè)、教學(xué)和研究為目的的兩足步行機(jī)器人控制系統(tǒng)中,單板計(jì)算機(jī)作為控制系統(tǒng)雖然運(yùn)算速度快,但體積大、成本高,而且功耗大;有此而選用高性能、低功耗的 8 位AVR? 微處理器,指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期,速度快,控制精度高、I/O口驅(qū)動(dòng)能力更強(qiáng),優(yōu)于AT51、STC51系列單片機(jī),所以能夠解決一些較為復(fù)雜的控制指令。
2.1 硬件系統(tǒng)的基本要求
兩足步行機(jī)器人是對(duì)人類的模仿[15]。但人類的結(jié)構(gòu)極其復(fù)雜,對(duì)人類步行原理的研究至今仍有許多未解決的問(wèn)題。所以在設(shè)計(jì)兩足步行機(jī)器人機(jī)械結(jié)構(gòu)時(shí),會(huì)對(duì)人類步行的結(jié)構(gòu)進(jìn)行減化,只會(huì)考慮基本的步行功能。人類的僅下肢就具有62對(duì)肌肉,腰部8對(duì)肌肉,在設(shè)計(jì)兩足步行機(jī)器人時(shí),要控制具有這么多自由度的多變量系統(tǒng)幾乎是不可能的事情,所以兩足步行機(jī)器人通常腿部只具有8至12個(gè)自由度,腰部具有0至3個(gè)自由度。本課題設(shè)計(jì)的機(jī)器人共有17個(gè)自由度,驅(qū)動(dòng)器為微型直流伺服電機(jī),簡(jiǎn)稱舵機(jī)。其機(jī)械結(jié)構(gòu)如圖2.1所示。
圖2.1 機(jī)器人機(jī)械實(shí)物
該機(jī)器人的機(jī)械結(jié)構(gòu)具有如下特點(diǎn):
(1) 該機(jī)器人的機(jī)械設(shè)計(jì)具有很高的穩(wěn)定性,國(guó)外的一些類似機(jī)器人曾獲得機(jī)器人比賽冠軍;
(2) 該機(jī)器人踝關(guān)節(jié)和髖關(guān)節(jié)各具有兩個(gè)自由度,這種機(jī)械結(jié)構(gòu)設(shè)計(jì)可以使機(jī)器人在不平地面站立;
(3) 該機(jī)器人膝關(guān)節(jié)具有一個(gè)自由度;
(4) 該機(jī)器人肩關(guān)節(jié)具有兩個(gè)自由度,肘關(guān)節(jié)具有一個(gè)自由度,可以實(shí)現(xiàn)簡(jiǎn)單的擺臂功能,用以配合腿部的運(yùn)動(dòng),抑制擺腿時(shí)產(chǎn)生的左右扭轉(zhuǎn)趨勢(shì)。
(5) 該機(jī)器人的機(jī)械結(jié)構(gòu)也具有一個(gè)缺點(diǎn):沒(méi)有腰部扭轉(zhuǎn)自由度,使兩足步行機(jī)器人在行走中不能使用腰部關(guān)節(jié)進(jìn)行姿態(tài)平衡,但這并不阻礙機(jī)器人在平地上的行走。
本文在“KONDO”機(jī)器人[9]機(jī)械結(jié)構(gòu)的基礎(chǔ)上,設(shè)計(jì)控制系統(tǒng),用來(lái)替換其自帶的控制系統(tǒng)。本文設(shè)計(jì)的控制系統(tǒng)在硬件上至少滿足如下5個(gè)基本要求:
(1) 產(chǎn)生不少于17路獨(dú)立的高精度單邊沿PWM信號(hào),用來(lái)控制作為機(jī)器人關(guān)節(jié)驅(qū)動(dòng)器的17個(gè)直流伺服電機(jī);
(2) 具有調(diào)試接口;
(3) 具有一個(gè)與PC機(jī)通信的接口;
(4) 具有多路A/D轉(zhuǎn)換電路,用來(lái)擴(kuò)展傳感器;
(5) 具有獨(dú)立而穩(wěn)定的電源。
我們?cè)O(shè)計(jì)的機(jī)器人所用的高精度直流伺服電機(jī),控制信號(hào)為0.5ms~2.5ms高電平的PWM信號(hào),對(duì)應(yīng)轉(zhuǎn)角為0度到180度,電機(jī)精度為0.1度,則控制信號(hào)的精度應(yīng)該高于(2.5ms~0.5ms) /1800 =1.11μs。
2.2 硬件系統(tǒng)設(shè)計(jì)的技術(shù)路線和總體方案
2.2.1 處理器選型
二十年前,只有少數(shù)的幾個(gè)科研機(jī)構(gòu)在研究?jī)勺悴叫袡C(jī)器人,現(xiàn)在卻不勝枚舉,這其中很重要的一個(gè)原因就是嵌入式計(jì)算機(jī)的高速發(fā)展[24],[25]。嵌入式計(jì)算機(jī)由于其體積小、功耗低、硬件資源豐富,非常適合應(yīng)用在對(duì)體積和功耗都有較高要求的小型機(jī)器人系統(tǒng)中。
在機(jī)器人控制系統(tǒng)中常用的處理器有:TI C2000和C6000系列DSP、8051和AVR單片機(jī)、ARM7和ARM9系列、PC104和PowerPC單板計(jì)算機(jī)等。它們各自具有鮮明的特點(diǎn),通常都是為了特殊的應(yīng)用而設(shè)計(jì),如表2.1所示。
表2.1 機(jī)器人控制系統(tǒng)中常用處理器
機(jī)器人控制系統(tǒng)中常用的處理器
處理器的特點(diǎn)
在機(jī)器人控制系統(tǒng)中的應(yīng)用
C2000系列DSP
具有很強(qiáng)的數(shù)字信號(hào)處理能力,適合運(yùn)動(dòng)控制,硬件設(shè)計(jì)方便。
運(yùn)動(dòng)控制、語(yǔ)音處理。尤其適合執(zhí)行針對(duì)單個(gè)或一對(duì)直流(無(wú)刷)電機(jī)的復(fù)雜算法。
C6000系列DSP
具有極強(qiáng)的數(shù)字信號(hào)處理能力,具有專門的操作系統(tǒng),硬件設(shè)計(jì)非常復(fù)雜。
高級(jí)的視覺(jué)處理和模式識(shí)別
8051和AVR系列單片機(jī)
結(jié)構(gòu)和指令簡(jiǎn)單;運(yùn)算能力較低,通常不支持操作系統(tǒng):幾乎全部芯片都己經(jīng)單片化,硬件設(shè)計(jì)非常方便。
簡(jiǎn)單的運(yùn)動(dòng)控制和信號(hào)處理,在復(fù)雜的控制系統(tǒng)中作為局部控制器。
ARM7系列
典型的RISC處理器,運(yùn)算能力較強(qiáng),支持多種操作系統(tǒng):部分型號(hào)芯片己經(jīng)單片化,硬件設(shè)計(jì)較方便。
小型機(jī)器人主控制器,常用于運(yùn)動(dòng)控制和傳感器信號(hào)處理。
ARM9系列
典型的RISC處理器,運(yùn)算能力很強(qiáng),支持多種操作系統(tǒng);幾乎沒(méi)有單片化,硬件設(shè)計(jì)較復(fù)雜。
機(jī)器人主控制器,同以進(jìn)行視覺(jué)處理、語(yǔ)音處理和模式識(shí)別。
PC104, PowerPC等單板計(jì)算機(jī)
由PC演化而來(lái),通用性很強(qiáng),功耗大,硬件設(shè)計(jì)非常復(fù)雜。
復(fù)雜的擬人機(jī)器人的主控制器。
DSP處理器在譜分析、FFT變換、數(shù)字濾波等方面得到非常廣泛地應(yīng)用。TI公司的02000系列DSP主要用來(lái)進(jìn)行運(yùn)動(dòng)控制,適合用于執(zhí)行針對(duì)單個(gè)或少量電機(jī)的高級(jí)控制算法。雖然C2000在桌面型兩足機(jī)器人中也有應(yīng)用,但C2000對(duì)操作系統(tǒng)的支持能力有限,一般不使用操作系統(tǒng),所以如果作為主控制器會(huì)帶來(lái)軟件設(shè)計(jì)上的局限性。
C6000系列具有很高的主頻、豐富的硬件資源、特殊的系統(tǒng)結(jié)構(gòu),數(shù)字信號(hào)處理能力非常強(qiáng)大,并且TI公司特地為C6000(和C5000)系列開發(fā)了專用DSP/BIOS操作系統(tǒng)。DSP/BIOS操作系統(tǒng)使C6000如虎添翼,成為了高級(jí)視覺(jué)處理應(yīng)用的主流處理器。但使用C6000作為處理器時(shí)電路復(fù)雜,通常只在大型擬人機(jī)器人中作為高級(jí)的視覺(jué)處理器,小型的機(jī)器人中應(yīng)用很少。
8051和AVR系列單片機(jī)通常在其內(nèi)部集成了CPU、存儲(chǔ)器、總線邏輯、看門狗、I/0、以及其他接口,單片化的特性使其體積和功耗都大大減小,在兩足步行機(jī)器人中得到了廣泛使用。
ARM7系列處理器是ARM處理器中使用很多的一款。ARM7處理器是典型的RISC處理器,對(duì)操作系統(tǒng)的支持能力很強(qiáng),適合運(yùn)行多種操作系統(tǒng)。
ARM9系列處理器在ARM7的基礎(chǔ)上進(jìn)一步地提高了運(yùn)算能力,增加了更多的硬件資源。ARM9對(duì)操作系統(tǒng)的支持能力同樣地強(qiáng)大。ARM9適合作為兩足機(jī)器人控制系統(tǒng)的主控制器,同時(shí)還可以作視覺(jué)處理、語(yǔ)音處理和模式識(shí)別。但ARM9系列處理器幾乎沒(méi)有能實(shí)現(xiàn)單片化的,硬件設(shè)計(jì)較為復(fù)雜。
單板計(jì)算機(jī)由通用計(jì)算機(jī)演化而來(lái),常見(jiàn)的有PC104、PowerPC、MIPS、68000等。單板計(jì)算機(jī)具有良好的通用性,對(duì)操作系統(tǒng)具有極強(qiáng)的支持能力。但其設(shè)計(jì)和開發(fā)比較復(fù)雜,功耗較大,在擬人機(jī)器人等大型機(jī)器人中經(jīng)常被用作主控制器。
本文結(jié)合控制系統(tǒng)設(shè)計(jì)的基本要求和常用處理器[19],高性能、低功耗的 8 位AVR微處理器,指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期,速度快,控制精度高、I/O口驅(qū)動(dòng)能力更強(qiáng),優(yōu)于AT51、STC51系列單片機(jī)。
2.2.2 直流伺服電機(jī)的控制特性
直流伺服電機(jī)又稱為舵機(jī),是一種位置伺服驅(qū)動(dòng)器,適用于角度不斷變化并可以保持的控制系統(tǒng)[22]。我們?cè)O(shè)計(jì)的兩足行走機(jī)器人的直流伺服電機(jī)使用+7V至+12V電源,內(nèi)部基準(zhǔn)信號(hào)為周期為20ms的PWM周期信號(hào),輸入的控制信號(hào)也必須是周期為20ms的PWM周期信號(hào),電壓為+4V至+6V。電機(jī)輸出轉(zhuǎn)角與輸入的控制信號(hào)的脈沖寬度有如圖2.2所示的線性關(guān)系。
圖2.2 直流伺服電機(jī)輸出轉(zhuǎn)角與輸入PWM信號(hào)寬度的關(guān)系
本文中的兩足步行機(jī)器人機(jī)械結(jié)構(gòu)共有17個(gè)直流伺服電機(jī),所以在設(shè)計(jì)控制系統(tǒng)硬件電路時(shí),除了需要提供9V至12V的電源外,還必須提供至少17路4V至6V的PWM信號(hào)。
2.2.3 硬件設(shè)計(jì)總體方案
對(duì)應(yīng)于控制系統(tǒng)硬件設(shè)計(jì)的基本要求,作了如下的設(shè)計(jì)方案:
(1) 核心電路包括AVR[11]核心處理器、JTAG調(diào)試接口、串口驅(qū)動(dòng)電路和A/D轉(zhuǎn)換基準(zhǔn)電壓電路[19],原理如圖2.3所示。
圖2.3 核心電路原理圖
(2) 控制系統(tǒng)需要控制17個(gè)直流伺服電機(jī),使兩足步行機(jī)器人完成相應(yīng)的動(dòng)作??刂浦绷魉欧姍C(jī)的PWM信號(hào)的周期為20ms,高電平持續(xù)時(shí)間為0. 5ms至2. 5ms,占空比較小,最大僅為1/8,所以可以進(jìn)行多路分時(shí)復(fù)用。本文使用了4個(gè)三態(tài)鎖存器74HC595D PWM信號(hào)進(jìn)行4路分時(shí)復(fù)用,一共可以得到32路獨(dú)立的單邊沿PWM信號(hào),這樣可以滿足控制系統(tǒng)的要求。使用高性能電池供電,增加了機(jī)器人的靈活性.其舵機(jī)PWM信號(hào)控制電路原理如圖2.4所示。
圖2.4 PWM信號(hào)控制原理圖
2.2.4 電源設(shè)計(jì)
為了增加機(jī)器人的靈活性,兩足步行機(jī)器人使用高性能電池供電。直流伺服電機(jī)的電源要求為9V至12V,本文選用了電壓為9V的高性能電池,直接作為直流伺服電機(jī)的電源。
由于基于AVR的處理器和外設(shè)均使用3. 3V電源電壓,所以需要選用電源電壓轉(zhuǎn)換器進(jìn)行電壓轉(zhuǎn)換。我們使用了一個(gè)直流電壓轉(zhuǎn)換芯片L78M05將電池的直流電源轉(zhuǎn)換為相應(yīng)的電流。
2.2.5 舵機(jī)控制器PCB電路板的設(shè)計(jì)
32路伺服電機(jī)控制器是一套最具性價(jià)比的伺服電機(jī)控制器??梢钥刂贫噙_(dá)32個(gè)伺服電機(jī)協(xié)調(diào)動(dòng)作的軟硬件結(jié)合系統(tǒng),它不但能實(shí)現(xiàn)位置控制和速度控制,還具有時(shí)間延時(shí)斷點(diǎn)發(fā)送指令功能。其主要由上位機(jī)軟件和伺服電機(jī)驅(qū)動(dòng)控制器組成。通過(guò)PC機(jī)操作上位機(jī)軟件給控制器傳遞控制指令信號(hào),即可實(shí)現(xiàn)多路伺服電機(jī)單獨(dú)控制或同時(shí)控制,控制指令精簡(jiǎn),控制轉(zhuǎn)角精度高,波特率可以實(shí)時(shí)更改,體積小,重量輕,其可作為類人型機(jī)器人、仿生機(jī)器人、多自由度機(jī)械手的主控制器。此外還可以配合其他功能模塊實(shí)現(xiàn)無(wú)線控制、傳感器反饋,構(gòu)建閉環(huán)控制系統(tǒng)。隨著國(guó)內(nèi)外機(jī)械產(chǎn)業(yè)的不斷進(jìn)步,各大高校相繼開設(shè)機(jī)械類創(chuàng)新課程和比賽[11],學(xué)生可將其應(yīng)用在各類機(jī)械創(chuàng)新作品中,起到優(yōu)化控制系統(tǒng)作用,其電路板界面如圖2.5所示。
圖2.5 兩足行走機(jī)器人控制系統(tǒng)電路板
2.3 舵機(jī)控制器的使用方法
2.3.1 伺服電機(jī)控制板接口功能
圖2.6 控制電路板各部分標(biāo)識(shí)
舵機(jī)器控制器面板主要有電源接口、串口通訊接口、伺服電機(jī)借口、TIL通訊借口以及上位機(jī)擴(kuò)展口、電源開關(guān)等部分組成,各部分詳細(xì)的位置分布如圖2.6所示,其中每個(gè)部分的詳細(xì)說(shuō)明如下:
①DC5V直流電源接口
此接口用于接插控制器控制部分供電電源,為了方便長(zhǎng)時(shí)間調(diào)試,可以用套裝中為用戶提供的USB取電線,直接插筆記本電腦或臺(tái)式電腦USB接口。也可接插符合下面要求的外置電源適配器(注意電源極性?。?。
②控制部分電源端子接口
此接口用于接插控制器控制部分供電電源,為增大用戶選擇電源電壓范圍,特設(shè)此接口。工作電壓范圍:+7V~+12V。注意端子接口正負(fù)標(biāo)識(shí)符!正確接線,避免損壞控制器。為用戶調(diào)試方便提供9V電池扣接線一條,可接9V電池使用。
③伺服電機(jī)供電電源端子接口
此接口用于接插伺服電機(jī)供電電源(由于伺服電機(jī)在重負(fù)載的情況下,會(huì)將放大器電壓拉低,為防止影響控制器部分電壓突變,應(yīng)該將兩部分分別供電),工作電壓:+4V~+6V(普通伺服電機(jī))。一般上,伺服電機(jī)啟動(dòng)和滿負(fù)載的時(shí)候耗電達(dá)1A~1.5A,而沒(méi)有負(fù)載時(shí)候只有約150mA耗電,所以請(qǐng)均衡考慮,根據(jù)同時(shí)運(yùn)動(dòng)的伺服電機(jī)數(shù)量,來(lái)考慮電源的功率選擇。為防止意外,請(qǐng)確保不要使用功率小于設(shè)計(jì)里面。一半數(shù)目的電機(jī)滿功率運(yùn)行時(shí)功耗的電源。為用戶調(diào)試方便提供的5號(hào)四節(jié)/4位電池盒一個(gè),裝上電池可作為伺服電機(jī)調(diào)試電源使用。
④外擴(kuò)上位機(jī)系統(tǒng)供電接口
此接口供電來(lái)源控制部分端子接口電源,可為自主開發(fā)的上位機(jī)(51系列、AVR系列、DSP、ARM等)板供電。
⑤串口通訊接頭
此端口使用標(biāo)準(zhǔn)RS232串口電平進(jìn)行通訊,可以接插為用戶提供的串口通訊線和計(jì)算機(jī)進(jìn)行通訊,接收實(shí)時(shí)控制指令。
⑥TTL通訊接口
若使用此功能請(qǐng)將跳線帽取下,此接口可用于伺服電機(jī)控制器與其他單片機(jī)開發(fā)的上位機(jī)BS2(Basic Stamp 2)通訊。注意接口標(biāo)識(shí)符,TX、RX左側(cè)排針?lè)謩e聯(lián)接伺服電機(jī)控制板微控器TXD、RXD引腳。
⑦波特率設(shè)置撥碼開關(guān)
通過(guò)設(shè)置撥碼開關(guān),波特率可以在2400 960038.4k 115.2k四種數(shù)值中轉(zhuǎn)換。注意:1代表ON,0代表OFF。控制器波特率默認(rèn)設(shè)置為115200。每次更改波特率數(shù)值后,都要給控制器重新上電啟動(dòng),才會(huì)生效。
⑧伺服電機(jī)通道接口和⑨標(biāo)識(shí)符
此接口可接插國(guó)際標(biāo)準(zhǔn)接口的伺服電機(jī),包括模擬式和數(shù)字式兩種。接口側(cè)方有1~32通道的標(biāo)注符,表示伺服電機(jī)受哪一通道信號(hào)控制。每一行可以接插一個(gè)伺服電機(jī)。整行接口上面有S/ + /-的標(biāo)注,其中“-”表示接插伺服電機(jī)的地線(一般為黑色);“+”表示接插伺服電機(jī)的電源線(一般為紅色);“S”表示signal(信號(hào))接插伺服電機(jī)的控制信號(hào)線(一般為黃色或白色)。支持的伺服電機(jī):Futabaor Hitec 以及國(guó)產(chǎn)品牌(如輝盛)等。
⑩電源開關(guān)
此開關(guān)控制伺服電機(jī)和控制電路兩部分電源通斷。開關(guān)撥向標(biāo)有ON一端為接通電源;開關(guān)撥向OFF一端為切斷整個(gè)系統(tǒng)供電。
3 兩足步行機(jī)器人控制系統(tǒng)軟件設(shè)計(jì)
AVR系列單片機(jī)通常在其內(nèi)部集成了CPU、存儲(chǔ)器、總線邏輯、看門狗、I/0、以及其他接口,單片化的特性使其體積和功耗都大大減小,在兩足步行機(jī)器人中得到了廣泛使用,現(xiàn)在在操作系統(tǒng)下設(shè)計(jì)并實(shí)現(xiàn)了兩足步行機(jī)器人控制系統(tǒng)的多個(gè)應(yīng)用軟件,構(gòu)成了一個(gè)完整的控制系統(tǒng)軟件框架;最后改進(jìn)了常見(jiàn)的多路PWM產(chǎn)生方法,具有很高的PWM信號(hào)的精度和系統(tǒng)的實(shí)時(shí)性,并對(duì)兩足步行機(jī)器人進(jìn)行了關(guān)節(jié)調(diào)試。
3.1 軟件系統(tǒng)的基本要求
根據(jù)機(jī)器人控制系統(tǒng)的功能需求和硬件電路的特點(diǎn),軟件系統(tǒng)至少需要滿足以下5個(gè)要求:
(1) 軟件模塊化,具有很好的可維護(hù)和可擴(kuò)展性。
(2) 實(shí)現(xiàn)PWM信號(hào)的分時(shí)復(fù)用,并要保證PWM信號(hào)的高精度。并且通過(guò)軟件,能夠及時(shí)地改變PWM的輸出。
(3) 通過(guò)RS232接口能和PC機(jī)通信。
(4) 通過(guò)I℃接口記錄關(guān)鍵的信息到E2PROM存儲(chǔ)器。
(5) 通過(guò)3路10位A/D轉(zhuǎn)換器讀取傳感器的值并預(yù)處理。
3.2 軟件設(shè)計(jì)的技術(shù)路線與總體方案
在機(jī)器人控制系統(tǒng)中常見(jiàn)的操作系統(tǒng)有:TI的DSP/BIOS, Microsoft的WinCE, u C/OS-II, Wind River的VxWorks, uC-Linux和RT-Linux等,它們各自的特點(diǎn)和應(yīng)用如下所述:
(1) DSP/BIOS操作系統(tǒng)不但具有很好的實(shí)時(shí)性[23],而且與DSP外圍的數(shù)據(jù)庫(kù)兼容并且內(nèi)建于DSP專用的交互式集成開發(fā)環(huán)境CCS。但DSP/BIOS操作系統(tǒng)只適合在TI的C6000和C5000 DSP處理器上使用。
(2) WinCE操作系統(tǒng)由Windows95精簡(jiǎn)而成,不開放源碼,實(shí)時(shí)性不好。但從內(nèi)核到GUI的整個(gè)體系比較完善,并且Microsoft公司具有強(qiáng)大的軟件研發(fā)和技術(shù)支持能力。WinCE適合在功能復(fù)雜但對(duì)內(nèi)核體積的實(shí)時(shí)性都沒(méi)有太高要求的大型機(jī)器人主控制系統(tǒng)中使用,或者在圖像監(jiān)控系統(tǒng)中使用。
(3) uC/OS-II由世界著名的嵌入式專家Jean J. Lacrosse編寫,它具有源碼開放、體積小、可移植性強(qiáng)、可剪裁、可靠性高等特點(diǎn),但GUI部分不完善。它非常適合在高實(shí)時(shí)性小型嵌入式系統(tǒng)中使用,經(jīng)常應(yīng)用在小型機(jī)器人控制系統(tǒng)中。
(4) VxWorks由美國(guó)Wind River公司開發(fā),具有極高的可靠性和實(shí)時(shí)性,但是它不開放源碼,而且價(jià)格非常昂貴,通常應(yīng)用在軍用機(jī)器人和航天機(jī)器人中。
(5) uC-Linux和RT-Linux都是由Linux演化而來(lái),繼承了Linux的一系列優(yōu)點(diǎn),比如高可靠性和具有完善的網(wǎng)絡(luò)功能。它們結(jié)構(gòu)復(fù)雜,對(duì)開發(fā)人員的技術(shù)要求較高,通常應(yīng)用在比較復(fù)雜的機(jī)器人控制系統(tǒng)中。
本文根據(jù)控制系統(tǒng)硬件的特點(diǎn)和機(jī)器人的功能需要,選用了以C語(yǔ)言為基礎(chǔ)編寫而成的操作系統(tǒng)“Servo Control Software”。其軟件的操作界面如圖3.1所示。
圖3.1 Servo Control Software操作界面
Servo Control Software是實(shí)現(xiàn)伺服電機(jī)控制器通訊協(xié)議PC機(jī)上的專用WINDOWS控制軟件,本軟件操作控制簡(jiǎn)便,該軟件有以下功能:
(1) 速度控制設(shè)定功能 可以調(diào)試出任意速度,多路電機(jī)不同速度運(yùn)行穩(wěn)定,實(shí)時(shí)性好,速度精準(zhǔn),加速減速任意設(shè)。
(2) 循環(huán)控制功能 讓您不必費(fèi)心點(diǎn)擊鼠標(biāo)啦,反復(fù)調(diào)試更加易用,可作為小型工業(yè)機(jī)械手主控板,功能循環(huán)執(zhí)行,提供作業(yè)效率。
(3) 指令保存功能 可以將您調(diào)試好的指令集保存,自動(dòng)生成指令文檔,日期時(shí)間準(zhǔn)確,例如robotcode20090107_1550, 您也可以個(gè)性化自命名,避免讀取指令文檔錯(cuò)誤或者重新編輯。
(4) 指令讀取功能 只要輕松點(diǎn)擊“打開指令”按鍵,會(huì)進(jìn)入指令集文檔,選擇您要讀取的以往指令文檔,恢復(fù)當(dāng)前功能設(shè)置。
(5) 控制動(dòng)作完成時(shí)間功能 只要發(fā)送指令時(shí)間大于動(dòng)作完成時(shí)間,您就可以任意設(shè)置動(dòng)作的完成時(shí)間,軟件備有自動(dòng)調(diào)整功能,可將電機(jī)轉(zhuǎn)動(dòng)平滑過(guò)渡,避免了機(jī)器人定格控制缺陷。
3.3 伺服電機(jī)控制軟件操作方法
3.3.1 串口設(shè)置
在熟悉了該軟件后,我們開始調(diào)試軟件。首先我們要做好前提工作,把舵機(jī)接線按照要求插在控制板上,再把串口接線插到電腦上,開通電源,打開操作軟件,點(diǎn)擊軟件操作界面里的串口設(shè)置,選擇合適的波特率,然后點(diǎn)確定,其操作方法如圖3.2、圖3.3、圖3.4所示:
圖3.2 串口設(shè)置第一步
圖3.3 串口設(shè)置第二步
圖3.4 串口設(shè)置第三步
3.3.2 控制通道設(shè)置
控制通道序號(hào)與控制板上的序號(hào)一一對(duì)應(yīng),根據(jù)設(shè)計(jì)需要可選擇多路調(diào)控,伺服電機(jī)接線一定要與控制軟件通道對(duì)應(yīng),避免出現(xiàn)控制無(wú)效現(xiàn)象。將硬件設(shè)備接好,如圖3.5所示。
圖3.5 控制板接線示意圖
單擊鼠標(biāo)左鍵軟件與硬件連接,如圖3.6所示。
圖3.6 串口連接設(shè)置圖
當(dāng)串口設(shè)置完成后,開始設(shè)置控制通道,單擊鼠標(biāo)左鍵以激活控制通道,本設(shè)計(jì)中的機(jī)器人一共17個(gè)自由度,其中腿部10個(gè),也就是一共17個(gè)直流伺服電機(jī),在調(diào)試過(guò)程中,我們一共要激活17個(gè)通道,從1~17通道, 按照?qǐng)D3.7所示。
圖3.7 控制通道設(shè)置示意圖
3.3.3 操作設(shè)置
在控制軟件的操作設(shè)置區(qū)域有“添加指令”、“指令修改”、“刪除指令”、“運(yùn)行指令”等按鈕,分別實(shí)現(xiàn)不同的功能,具體實(shí)現(xiàn)功能如圖3.8所示。
圖3.8 操作設(shè)置功能圖
3.3.4 控制指令回顯區(qū)
調(diào)整好合適指令點(diǎn)擊添加后,將會(huì)出現(xiàn)在回顯區(qū)中。如圖3.9所示。
圖3.9 指令回顯區(qū)
3.3.5 發(fā)送指令時(shí)間設(shè)置
拉動(dòng)指令間隔時(shí)間滑桿可以調(diào)節(jié)發(fā)送指令間隔時(shí)間,以實(shí)現(xiàn)各舵機(jī)的協(xié)調(diào)工作,來(lái)完成復(fù)雜的動(dòng)作,如圖3.10所示。
圖3.10 發(fā)送指令間隔時(shí)間控制區(qū)
3.4 微型伺服電機(jī)(舵機(jī))的選擇
微型的伺服電機(jī)在無(wú)線電業(yè)余愛(ài)好者的航?;顒?dòng)中使用已有很長(zhǎng)一段歷史,而且應(yīng)用最為廣泛,國(guó)內(nèi)亦稱之為“舵機(jī)”,含義為:“掌舵人操縱的機(jī)器”。舵機(jī)是一種位置伺服的驅(qū)動(dòng)器。它是機(jī)器人、機(jī)電系統(tǒng)和航模的重要執(zhí)行機(jī)構(gòu)。它接收一定的控制信號(hào),輸出一定的角度,適用于那些需要角度不斷變化并可以保持的控制系統(tǒng)。標(biāo)準(zhǔn)的舵機(jī)有3條導(dǎo)線:電源線(紅)、地線(黑或灰)、控制線(白或橙黃)??刂凭€的輸入是一個(gè)寬度可調(diào)的周期性方波脈沖信號(hào)(PWM),方波脈沖信號(hào)的周期為20 ms(即頻率為50Hz),當(dāng)方波的脈沖寬度改變時(shí),舵機(jī)轉(zhuǎn)軸的角度發(fā)生改變,角度變化與脈沖寬度的變化成正比,也就是利用占空比的變化來(lái)改變舵機(jī)的位置。可見(jiàn),其主要用作運(yùn)動(dòng)方向的控制部件。因此,機(jī)器人模型中也常用到它作為可控的運(yùn)動(dòng)關(guān)節(jié),這些活動(dòng)關(guān)節(jié)在機(jī)械原理中常稱它為自由度。
3.4.1 舵機(jī)的選型
本設(shè)計(jì)選用的舵機(jī)為“輝盛”MG945 12公斤全金屬齒大扭力舵機(jī),其圖和參數(shù)如圖3.11和表3.1所示。
圖3.11 “輝盛”MG945舵機(jī)
表3.1 “輝盛”MG945舵機(jī)參數(shù)
尺寸
重量
速度
扭力
使用電壓
40.8*19.9*37.3mm
56.3g
0.24sec/60度
12公斤/厘米
4.8V~7.2V
3.4.2 輝盛MG945舵機(jī)的控制特性
“輝盛”MG945 12公斤全金屬齒大扭力舵機(jī)全轉(zhuǎn)角為180度,它的對(duì)應(yīng)的控制關(guān)系如表3.2所示。
表3.2 PWM波脈寬與舵機(jī)轉(zhuǎn)角關(guān)系
PWM波脈寬
舵機(jī)轉(zhuǎn)角
對(duì)應(yīng)轉(zhuǎn)角簡(jiǎn)圖
0.5ms
0度
0.9ms
45度
1.5ms
90度
2.1ms
135度
2.5ms
180度
4 兩足步行機(jī)器人步行模式的建立
有的機(jī)器人行走時(shí)質(zhì)心在地面上的投影始終在腳的支撐多邊形內(nèi),這種步行方式被稱為靜態(tài)步行;在人的日常行走中,質(zhì)心在地面上的投影經(jīng)常會(huì)超越支撐多邊形的范圍,這種步行方式被稱為動(dòng)態(tài)步行。靜態(tài)步行模式在設(shè)計(jì)步態(tài)時(shí)需要計(jì)算機(jī)器人的重心位置,以防止重心在地面上的投影超出了支撐多邊形范圍。靜態(tài)步行通常是在行走前離線設(shè)計(jì)好各個(gè)步行中的姿態(tài)和姿態(tài)切換的方法,在行走的過(guò)程中不能改變,一般只能在平地上行走。
4.1 本章任務(wù)
本設(shè)計(jì)中的機(jī)器人的機(jī)械結(jié)構(gòu),它具有17個(gè)自由度,驅(qū)動(dòng)器為微型直流伺服電機(jī)。該機(jī)械結(jié)構(gòu)左右對(duì)稱,每條腿具有5個(gè)自由度,分別為踝2個(gè)、膝l個(gè)、髖2個(gè);每個(gè)手臂具有3個(gè)自由度,分別為肩2個(gè)、肘1個(gè);頸部具有一個(gè)自由度。而我的主要任務(wù)是分析雙腿的運(yùn)動(dòng)模式,研究10個(gè)舵機(jī)的轉(zhuǎn)動(dòng)角度以及相互的協(xié)調(diào)工作的關(guān)系,建立一個(gè)完整的運(yùn)動(dòng)模型。首先要把機(jī)器人組裝起來(lái),其腿部圖片如圖4.1所示。
圖4.1 單腿的實(shí)物圖片
在正確的把整個(gè)機(jī)器人完整的組裝起來(lái)后,我們要把機(jī)器人腿部的每個(gè)舵機(jī)都標(biāo)注起來(lái),以便后來(lái)的調(diào)試,腿部10個(gè)舵機(jī)的分布如圖4.2所示。
圖4.2 腿部舵機(jī)的分布
4.2 靜態(tài)步行模式設(shè)計(jì)與實(shí)現(xiàn)
兩足步行機(jī)器人控制系統(tǒng)中使用了靜態(tài)步行模式[4][5]線設(shè)計(jì)。靜態(tài)步行模式分為10個(gè)靜態(tài)姿勢(shì)及其切換順序如圖4.2所示。
圖4.2 兩足機(jī)器人行走步行模式
其中直立是初始狀態(tài);起步是為步行做準(zhǔn)備,重心移到右腳;抬后腳(左)、邁步(左)和前腳著地(左)都是右腿支撐左腿擺動(dòng)的姿態(tài);重心前移(左)是兩腿支撐,將重心從后面的右腳轉(zhuǎn)移到前面的左腳;抬后腳(右)、邁步(右)和前腳著地(右)都是左腿支撐右腿擺動(dòng)的姿態(tài);重心前移(右)是兩腿支撐,將重心從后面由左腳再次轉(zhuǎn)移到前面的右腳。重心在左右腳之間反復(fù)轉(zhuǎn)移,左右腳的前后關(guān)系也反復(fù)轉(zhuǎn)換,實(shí)現(xiàn)兩足機(jī)器人的步行。
4.3 姿態(tài)運(yùn)動(dòng)的軟件實(shí)現(xiàn)
機(jī)器人的以上10個(gè)姿態(tài)按圖4.2所示切換,就可以讓機(jī)器人在平地上步行。根據(jù)腿部運(yùn)動(dòng)的模式,我們根據(jù)腿步各關(guān)節(jié)完成的角度可以計(jì)算輸入給每個(gè)舵機(jī)的PWM脈寬值,再反饋到舵機(jī)控制軟件Servo Control Software中,點(diǎn)擊“添加指令”按鈕,其控制回顯區(qū)出現(xiàn)指令如下:
T1000 #0P1500#1P1500#2P1500#3P1500#4P1500#5P1500#6P1500#7P1500#8P1500#9P1500
T1000 #0P1444#1P1500#2P1500#3P1500#4P1444#5P1500#6P1500#7P1500#8P1500#9P1500
T1000 #0P1444#1P1500#2P1500#3P1500#4P1444#5P1500#6P1500#7P1833#8P1833#9P1500
T1000 #0P1500#1P1450#2P1500#3P1500#4P1500#5P1500#6P1500#7P1833#8P1833#9P1500
T1000 #0P1500#1P1500#2P1500#3P1500#4P1500#5P1500#6P1500#7P1500#8P1500#9P1500
T1000 #0P1500#1P1500#2P1500#3P1500#4P1500#5P1500#6P1500#7P1500#8P1500#9P1500
T1000 #0P1444#1P1500#2P1500#3P1500#4P1444#5P1500#6P1500#7P1500#8P1500#9P1500
T1000 #0P1444#1P1500#2P1500#3P1500#4P1444#5P1500#6P1500#7P1167#8P1167#9P1500
T1000 #0P1500#1P1450#2P1500#3P1500#4P1500#5P1500#6P1500#7P1167#8P1167#9P1500
T1000 #0P1500#1P1500#2P1500#3P1500#4P1500#5P1500#6P1500#7P1500#8P1500#9P1500
上述完成機(jī)器人腿部運(yùn)動(dòng)的一個(gè)循環(huán),既從直立到抬左腿起步再到抬右腿起步,然后我們?cè)冱c(diǎn)擊如圖4.3中的“激活循環(huán)控制”就可以完成兩足行走機(jī)器人兩腿間持續(xù)左右腳交替行走的動(dòng)作了。
圖4.3 激活循環(huán)控制
結(jié) 束 語(yǔ)
兩足步行機(jī)器人是個(gè)廣泛應(yīng)用在教學(xué)、科研、比賽和娛樂(lè)等方面的機(jī)器人,集機(jī)械學(xué)、電子學(xué)、控制科學(xué)、計(jì)算機(jī)、數(shù)學(xué)等于一體。本文根據(jù)當(dāng)前兩足步行機(jī)器人控制系統(tǒng)中常用的處理器和操作系統(tǒng)各自的特點(diǎn),選用8 位AVR微處理器,指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期,速度快,控制精度高、I/O口驅(qū)動(dòng)能力更強(qiáng),優(yōu)于AT51、STC51系列單片機(jī)。并對(duì)兩足步行機(jī)器人進(jìn)行了運(yùn)動(dòng)學(xué)分析和靜態(tài)步行設(shè)計(jì),實(shí)現(xiàn)在機(jī)器人在平面上的穩(wěn)定行走。
在本設(shè)計(jì)課題中,我及我們小組,基本完成了兩足行走機(jī)器人的結(jié)構(gòu)設(shè)計(jì),也理論上完成了機(jī)器人的控制系統(tǒng),但是由于選擇的較為有難度的17自由度機(jī)器人,所以對(duì)于機(jī)器人結(jié)構(gòu)的選用材料、平衡力學(xué)處理、控制系統(tǒng)處理器等客觀條件有了更高的要求。在本課題中,由于條件有限,我們沒(méi)有使機(jī)器人在地面上實(shí)現(xiàn)兩腿交替運(yùn)動(dòng)。在我負(fù)責(zé)的控制系統(tǒng)這一塊中,我理論設(shè)計(jì)了一套控制方案,我使用的是核心為8位的AVR微處理器控制器,在設(shè)計(jì)過(guò)程中就發(fā)現(xiàn)的它的缺陷,由于我們?cè)O(shè)計(jì)的17自由度機(jī)器人,也就是有17個(gè)微型直流伺服電機(jī),相應(yīng)的要同時(shí)提供17路的PWM脈沖信號(hào),這就對(duì)處理器有了比較高的要求,而這時(shí)8位處理器則達(dá)不到使用要求。所以該課題在以后還有很多要進(jìn)一步改進(jìn)和研究的地方:
(1) 機(jī)器人使用更為先進(jìn)的處理器,如表2.1中的ARM系列處理器和PC104, PowerPC等單板計(jì)算機(jī)。
(2) 機(jī)器人腳底安裝力傳感器,用來(lái)感知機(jī)器人腳和地面接觸時(shí)的受力情況,使用ZMP理論對(duì)機(jī)器人進(jìn)行步態(tài)控制。
(3) 機(jī)器人增加視覺(jué)系統(tǒng),使機(jī)器人可以識(shí)別簡(jiǎn)單的目標(biāo)。桌面型的兩足機(jī)器人由于受到體積和成本的限制,大多不具備視覺(jué)系統(tǒng)或只有很簡(jiǎn)單的視覺(jué)系統(tǒng)。但隨著技術(shù)的進(jìn)步,桌面型的兩足機(jī)器人也會(huì)具有復(fù)雜的視覺(jué)系統(tǒng)。這在足球機(jī)器人中尤其重要。
致 謝
本文的研究工作是在劉艷老師的精心指導(dǎo)下完成的。在整個(gè)課題研究過(guò)程中,老師在各方面給予了我無(wú)盡的關(guān)心、幫助和教誨,使本論文的研究工作得以順利完成。老師學(xué)識(shí)淵博,經(jīng)驗(yàn)豐富,思維敏捷,時(shí)時(shí)給我熱情的鼓勵(lì)和不倦的教誨,在研究思想和研究方法上給了我諸多啟示,解答了許多難題,從課程學(xué)習(xí)、論文選題、課題研究到論文撰寫無(wú)不凝聚著老師們的心血和汗水。老師待人誠(chéng)懇,心胸寬大,精深的知識(shí)令我受益匪淺。在此向劉艷表示無(wú)盡的感謝,同時(shí)此課題能夠順利完成也離不開同學(xué)給我的幫助和指導(dǎo),在此也特別向他們表示深深的謝意!
參 考 文 獻(xiàn)
[1] 包志軍,馬培蓀. 兩足機(jī)器人到仿人型機(jī)器人的研究歷史及其問(wèn)題[J].機(jī)器人, 1999(4):312-319.
[2] 龜田秀司. 仿人機(jī)器人[M]. 管貽生譯. 北京:清華大學(xué)出版社, 2007.
[3] 徐凱. 仿人機(jī)器人步態(tài)規(guī)劃算法及其實(shí)現(xiàn)研究[D]. 北京:清華大學(xué)工學(xué)碩士學(xué)位論文, 2006.
[4] 胡凌云,孫增沂. 雙足機(jī)器人步態(tài)控制研究方法綜述[J]. 計(jì)算機(jī)研究與發(fā)展,2005.
[5] 石宗英,徐文立,馮元餛等. 仿人型機(jī)器人動(dòng)態(tài)步行控制方法[J]. 機(jī)器人, 2001.
[6] 胡洪志. 仿人步行機(jī)器人的運(yùn)動(dòng)規(guī)劃方法研究[D]. 國(guó)防科技大學(xué)研究生院學(xué)位論文, 2002.
[7] 王勇. 基于被動(dòng)動(dòng)力式的兩足機(jī)器人研究現(xiàn)狀[J]. 機(jī)械工程師,2005.
[8] 付成龍,陳懇. 雙足機(jī)器人穩(wěn)定性與控制策略研究進(jìn)展[J]. 高技術(shù)通訊, 2006.
[9] 劉森,慕春棣,趙明國(guó). 基于AVR式系統(tǒng)的擬人機(jī)器人控制器的設(shè)計(jì)[J].北京:清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2008.
[10] 楊晶東,黃慶成,洪炳銘. 雙足足球機(jī)器人實(shí)時(shí)避障導(dǎo)航系統(tǒng)研究[J].機(jī)器人, 2005.
[11] 江海波. 深入淺出AVR單片機(jī)[M]. 北京:中國(guó)電力出版社,2008
[12] 徐亮,徐中偉. u C/OS-II實(shí)時(shí)系統(tǒng)任務(wù)調(diào)度優(yōu)化[J]. 計(jì)算機(jī)工程,Oct 200733 (19):57-59.
[13] 吳平. u C /OS-II中任務(wù)調(diào)度算法的改進(jìn)[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用, Mar 2006(3):23-25.
[14] 吳偉國(guó), 李小寧, 王瑜. 類人機(jī)器人腰部關(guān)節(jié)平衡作用研究與仿真[J].機(jī)械設(shè)計(jì)與制造,May 2005,(5):112-114.
[15] 黃燕平. u C/OS-II ARM移植要點(diǎn)詳解[M]. 北京:北京航空航天大學(xué)出版社,Nov2005.
[16] 劉森,慕春棣,趙明國(guó). 基于ARM嵌入式系統(tǒng)的擬人機(jī)器人控制器的設(shè)計(jì)[J]. 北京:清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,48(4):482-485.
[17] 施華, 薛廣濤. 機(jī)器人控制系統(tǒng)實(shí)時(shí)性的研究[J]. 計(jì)算機(jī)工程,Jan2003,29(l):91-92.
[18] 李開生, 張慧慧, 費(fèi)仁元. 機(jī)器人控制器體系結(jié)構(gòu)研究的現(xiàn)狀和發(fā)展[J]. 機(jī)器人, May 2000,22(3):235-240.
[19] 顏永軍, 李梅. Portal 99電路設(shè)計(jì)與應(yīng)用[M],北京:國(guó)防工業(yè)出版社,2001.
[20] 施華, 陳一民,李超. 基于RT-Linux的實(shí)時(shí)機(jī)器人控制器研究[J].計(jì)算機(jī)工程與科學(xué),2002,24(6):91-95.
[21] 徐青,申忠宇, 趙瑾等. 基于ARM的兩足步行機(jī)器人系統(tǒng)設(shè)計(jì)[J]. 儀器儀表學(xué)報(bào)(增刊),Aug 2007,28(8):499-501.
[22] 姜培玉. 兩足機(jī)器人動(dòng)態(tài)步行研究[D]. 西北工業(yè)大學(xué)碩士學(xué)位論文,Mar2004.
[23] 萬(wàn)松峰, 黃惟公. 基于WinCE&AVR的嵌入式工業(yè)監(jiān)控系統(tǒng)的開發(fā)[J],西華大學(xué)學(xué)報(bào)(自然科學(xué)版),Nov 2005,24(6):26-29.
[24] 李紅征,周烽,王永. 基于DSP的雙足步行機(jī)器人設(shè)計(jì)[J]. 機(jī)械與電子,2007 (11):55-58. 南京師范大學(xué)碩士學(xué)位論文.
[25] 張福學(xué). 機(jī)器人技術(shù)及其應(yīng)用[M]. 北京: 電子工業(yè)出版社, 2000.
[26] 蔣新松. Robotics[M]. 沈陽(yáng): 遼寧科學(xué)技術(shù)出版社, 1994.
收藏