2023年全國(guó)碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩54頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  表表17</b></p><p>  本 科 畢 業(yè) 設(shè) 計(jì)</p><p>  畢業(yè)設(shè)計(jì)題目:機(jī)器人控制系統(tǒng)的設(shè)計(jì)</p><p>  學(xué)生姓名:a </p><p>  學(xué) 號(hào):a </p><p>  系

2、 別:a </p><p>  專業(yè)班級(jí): </p><p>  指導(dǎo)教師姓名及職稱: </p><p>  起止時(shí)間:2012年3月— 2012年6月</p><p><b>  摘 要</b></p><p> 

3、 機(jī)器人的應(yīng)用越來越廣泛,幾乎滲透到各行各業(yè)。如何能讓機(jī)器人更好地為我們服務(wù),是當(dāng)前科學(xué)研究的一個(gè)重要課題。</p><p>  本文所用機(jī)器人是學(xué)校實(shí)驗(yàn)室中的6腳柱狀鐵甲蟲機(jī)器人,對(duì)基于單片機(jī)的機(jī)器人控制系統(tǒng)的設(shè)計(jì),綜合運(yùn)用51單片機(jī),電子電路等知識(shí)進(jìn)行智能移動(dòng)機(jī)器人的控制系統(tǒng)設(shè)計(jì)以及研究。實(shí)際操作調(diào)試運(yùn)動(dòng),不僅注重理論知識(shí)的探討,更注重于對(duì)理論知識(shí)在實(shí)際中的應(yīng)用。</p><p>  

4、文章中詳細(xì)介紹機(jī)器人的硬件機(jī)構(gòu)以及軟件的設(shè)計(jì)??刂葡到y(tǒng)的主要內(nèi)容是利用傳感器使機(jī)器人步行、步伐調(diào)整、智能避障,以及利用按鈕開關(guān)對(duì)機(jī)器人進(jìn)行控制移動(dòng)等。</p><p>  通過軟件程序?qū)C(jī)器人的控制,機(jī)器人能按預(yù)期的設(shè)想行走,但由于機(jī)器人質(zhì)量較重,電機(jī)轉(zhuǎn)動(dòng)速度不是很快,所以行走速度比較慢,而且動(dòng)作不是很流暢。</p><p>  關(guān)鍵詞:機(jī)器人、控制系統(tǒng)、單片機(jī)、傳感器、智能避障</

5、p><p><b>  ABSTRACT</b></p><p>  Robots are used more and more widely, almost penetrated into all walks of life. How to enable the robot to serve us better, is currently an important to

6、pic in scientific research </p><p>  The robot used in the study is HexRod HD Hexapod Robot which was generally used in school laboratory, and the study is based on SCM robot control system design, which com

7、prehensively applied the theories such as the 51 SCM and electronic circuit to design and study the control system of the intelligent mobile robot. The practical operation of trial run not only emphasizes the discussion

8、of theoretical knowledge, but also focuses more on the application of theory.</p><p>  The article introduces the robot’s mechanism of hardware and design of software in detail. The main function of the cont

9、rol system is using sensor to make robot walked, adjusted the working pace and intelligent barrier; using the switch to control the movement of robot.</p><p>  Through the software procedure to the robot, ro

10、bot can be expected to walk, because the robot with heavier weight, motor rotation speed is not fast, so walking speed is relatively slow, and the action is not very smooth.</p><p>  Keyword: Control system,

11、 Robot, SCM, Sensor, Intelligence obstacle avoidance目 錄</p><p>  1、智能移動(dòng)機(jī)器人的發(fā)展1</p><p>  1.1 智能移動(dòng)機(jī)器人的發(fā)展現(xiàn)狀1</p><p>  1.2智能移動(dòng)機(jī)器人的關(guān)鍵技術(shù)5</p><p>  2、六腳柱狀鐵甲蟲機(jī)器人8</p&g

12、t;<p>  2.1 六腳柱狀鐵甲蟲機(jī)器人簡(jiǎn)介8</p><p>  2.2 六腳柱狀鐵甲蟲機(jī)器人控制系統(tǒng)設(shè)計(jì)及分析9</p><p>  3、程序的編寫燒錄以及機(jī)器人調(diào)試運(yùn)行20</p><p>  3.1 程序的編寫與燒錄20</p><p>  3.2 機(jī)器人調(diào)試運(yùn)行25</p><p>

13、;  4、機(jī)器人三維建模及其運(yùn)動(dòng)仿真27</p><p>  4.1 機(jī)器人三維建模27</p><p>  4.2 運(yùn)動(dòng)仿真27</p><p>  5、總結(jié)與展望30</p><p><b>  5.1 總結(jié)30</b></p><p><b>  5.2 展望30<

14、;/b></p><p><b>  參考文獻(xiàn)34</b></p><p><b>  圖標(biāo)說明33</b></p><p><b>  致謝34</b></p><p>  附錄一:機(jī)器人控制系統(tǒng)程序35</p><p>  附錄二:頭文

15、件soft_rs232.h43</p><p>  機(jī)器人控制系統(tǒng)的設(shè)計(jì)</p><p><b>  吳永華</b></p><p>  1、智能移動(dòng)機(jī)器人的發(fā)展</p><p>  1.1 智能移動(dòng)機(jī)器人的發(fā)展現(xiàn)狀</p><p>  機(jī)器人的應(yīng)用越來越廣泛 ,幾乎滲透到所有領(lǐng)域。智能移動(dòng)機(jī)器

16、人是機(jī)器人學(xué)中的一個(gè)重要分支。早在 60年代 ,就已經(jīng)開始了關(guān)于智能移動(dòng)機(jī)器人的研究。關(guān)于智能移動(dòng)機(jī)器人的研究涉及許多方面 ,首先 ,要考慮移動(dòng)方式 ,可以是輪式的、履帶式、腿式的 ,對(duì)于水下機(jī)器人 ,則是推進(jìn)器。其次 ,必須考慮驅(qū)動(dòng)器的控制 ,以使機(jī)器人達(dá)到期望的行為。第三 ,必須考慮導(dǎo)航或路徑規(guī)劃 ,對(duì)于后者 ,有更多的方面要考慮 ,如傳感融合 ,特征提取 ,避碰及環(huán)境映射。因此 ,智能移動(dòng)機(jī)器人是一個(gè)集環(huán)境感知、動(dòng)態(tài)決策與規(guī)劃、行

17、為控制與執(zhí)行等多種功能于一體的綜合系統(tǒng)。對(duì)智能移動(dòng)機(jī)器人的研究 ,提出了許多新的或挑戰(zhàn)性的理論與工程技術(shù)課題 ,引起越來越多的專家學(xué)者和工程技術(shù)人員的興趣 ,更由于它在軍事偵察、掃雷排險(xiǎn)、防核化污染等危險(xiǎn)與惡劣環(huán)境以及民用中的物料搬運(yùn)上具有廣闊的應(yīng)用前景 ,使得對(duì)它的研究在世界各國(guó)受到普遍關(guān)注。</p><p>  自1961年美國(guó)Unimation公司研制出世界上第一臺(tái)往復(fù)式工業(yè)機(jī)器人以來,機(jī)器人的發(fā)展經(jīng)歷了三

18、個(gè)階段:第一代示教/再現(xiàn)(Teaching/Playback)機(jī)器人,第二代傳感控制(Sensorycontrolled)機(jī)器人,第三代智能(Inteligent)機(jī)器人。機(jī)器人以其具有靈活性、提高生產(chǎn)率、改進(jìn)產(chǎn)品質(zhì)量、改善勞動(dòng)條件等優(yōu)點(diǎn)而得到廣泛應(yīng)用。但是,目前絕大多數(shù)機(jī)器人的靈活性,只是就其能夠"反復(fù)編程"而言,工作環(huán)境相對(duì)來說是固定的,所以一般人們稱之為操作手(Manipulator)。近年來,智能移動(dòng)機(jī)器人特

19、別是自主式智能移動(dòng)機(jī)器人成為機(jī)器人研究領(lǐng)域的中心之一。</p><p>  智能移動(dòng)機(jī)器人的研究現(xiàn)狀: 1.體系結(jié)構(gòu)自主式智能移動(dòng)機(jī)器人的復(fù)雜性以及當(dāng)前計(jì)算技術(shù)的局限性等決定了體系結(jié)構(gòu)是影響機(jī)器人性能的主要因素。自主式智能移動(dòng)機(jī)器人的智能體現(xiàn)為具有感知(Sensing)、決策(Decision-making)和行為(Acting)等基本功能。根據(jù)實(shí)現(xiàn)這些基本功能的過程的不同,常見的體系結(jié)構(gòu)有三類:分層遞階結(jié)構(gòu)(H

20、ierarchical architechure)、行為系統(tǒng)(Behavior system)和黑板系統(tǒng)(Blackboard system)。 2.信息感知信息感知來源于傳感器。對(duì)傳感器來說,最主要的兩個(gè)品質(zhì)是可靠性和帶寬(實(shí)時(shí)性)。目前自主式智能移動(dòng)機(jī)器人普遍使用的傳感器有:聲納、紅外、激光掃描、攝像機(jī)和陀螺等。每種傳感器各有利弊,于是人們自然想到了"取長(zhǎng)補(bǔ)短",也即多傳感器集成和融合(Multisensor i

21、ntegration and Fusion),其優(yōu)點(diǎn)在于提供了信息冗余、互補(bǔ)和適時(shí)(Timeliness),從而提高了信息的可靠性。 3.智能移動(dòng)機(jī)器人控制 (1)建模根據(jù)所受約束的不同,可以將控制系統(tǒng)分為完整(Holonomic)系統(tǒng)和非</p><p>  近幾年來,由美國(guó)NASA資助研制的“丹蒂II”八足行走機(jī)器人,是一個(gè)能提供對(duì)高移動(dòng)性機(jī)器人運(yùn)動(dòng)的了解和遠(yuǎn)程機(jī)器人探險(xiǎn)的行走機(jī)器人,為實(shí)現(xiàn)在充滿碎片的月球或

22、其它星球的表面進(jìn)行探索而提供一種機(jī)器人解決方案。之后,美國(guó)NASA 研制的火星探測(cè)機(jī)器人索杰那于1997年登上火星,這一事件引起了全世界的轟動(dòng)。為了在火星上進(jìn)行長(zhǎng)距離探險(xiǎn),美國(guó)第四個(gè)火星探測(cè)器“好奇號(hào)”于2011年11月26日在佛羅里達(dá)州的卡納維拉爾角空軍基地發(fā)射。該火星探測(cè)器將負(fù)責(zé)探索評(píng)估火星生命的狀況</p><p>  圖1.1 火星探測(cè)機(jī)器人“好奇號(hào)”</p><p>  2009

23、年12月,海洋學(xué)家利用水下機(jī)器人“杰森”(Jason)探測(cè)到了深海處的一次火山噴發(fā)現(xiàn)象。</p><p>  圖1.2深水?dāng)z影機(jī)“杰森”</p><p>  “ASIMO”是本田公司開發(fā)的雙腳步行機(jī)器人,于2000年11月首次在橫濱國(guó)際和平會(huì)議中心舉行的機(jī)器人展示會(huì)上亮相。2004年12月,本田公司曾改進(jìn)過“ASIMO”的性能,增加了它的關(guān)節(jié)和馬達(dá),使其可以以每小時(shí)3公里的速度小跑,而且將

24、其身高也由最初的1.1米提高到1.3米,體型猶如一個(gè)8歲小男孩。</p><p>  圖1.3 日本雙腳步行機(jī)器人“阿西莫”</p><p>  在一次展覽會(huì)上,一名美軍陸軍軍官在展示綽號(hào)“劍”的履帶式行走機(jī)器人。</p><p>  圖1.4 美國(guó)綽號(hào)“劍”的履帶式行走機(jī)器人</p><p>  以上幾個(gè)典型的智能移動(dòng)機(jī)器人應(yīng)用于各大領(lǐng)域的

25、例子,另外在我國(guó),國(guó)防科技大學(xué)研制的全自主無人駕駛汽車,突出特點(diǎn)為實(shí)時(shí)并行程序結(jié)構(gòu)、實(shí)時(shí)局部路徑規(guī)劃以及汽車駕駛智能控制等方面。該車能夠在無人干預(yù)的情況下,自主地完成點(diǎn)火、起步、換檔、停車等操作,在行進(jìn)過程中,還能根據(jù)道路情況自動(dòng)增減油門和進(jìn)行加減檔,使汽車安全平穩(wěn)地行駛。在高速公路環(huán)境下,最高時(shí)速達(dá)75.6公里。中國(guó)科學(xué)院自動(dòng)化所自行設(shè)計(jì)、制造的全方位移動(dòng)式機(jī)器人視覺導(dǎo)航系統(tǒng)CASIA。上海交通大學(xué)研制的基于全景視覺的足球機(jī)器人,臺(tái)灣

26、交通大學(xué)的家庭服務(wù)機(jī)器人。哈爾濱工業(yè)大學(xué)成功研制的導(dǎo)游機(jī)器人、香港城市大學(xué)智能設(shè)計(jì)、自動(dòng)化及制造研究中心的自動(dòng)導(dǎo)航車和服務(wù)機(jī)器人等,都推進(jìn)了國(guó)內(nèi)智能移動(dòng)機(jī)器人的發(fā)展進(jìn)程。</p><p>  1.2智能移動(dòng)機(jī)器人的關(guān)鍵技術(shù)</p><p>  1.2.1 機(jī)器人控制器技術(shù)</p><p>  機(jī)器人控制器被稱為機(jī)器人的大腦,它可以有很多叫法,可以叫做:可編程控制器、

27、微控制器,微處理器,處理器或者計(jì)算器等,不過這都不要緊,通常微處理器是指一塊芯片,而其它的是一整套控制器,包括微處理器和一些別的元件。任何一個(gè)機(jī)器人大腦就必須要有這塊芯片,不然就稱不上機(jī)器人了。在選擇微控制器的時(shí)候,主要要考慮:處理器的速度,要實(shí)現(xiàn)的功能ROM和RAM的大小,I/O端口類型和數(shù)量,編程語言以及功耗等。</p><p>  其主要類型有:?jiǎn)纹瑱C(jī)、PLC、工控機(jī)、PC機(jī)等。</p>&l

28、t;p>  單有這些硬件是不夠的,機(jī)器人的大腦還無法運(yùn)行。只有在程序的控制下,它才能按我們的要求去工作??梢哉f程序就是機(jī)器人的靈魂了。而程序是由編程語言所編寫的。</p><p>  編程語言是一個(gè)控制器能夠接受的語言類型,一般有C語言,匯編語言或者basic語言等,這些通常能被高級(jí)一點(diǎn)的控制器直接執(zhí)行,因?yàn)樵诟呒?jí)控制器里面內(nèi)置了編譯器能夠直接把一些高級(jí)語言翻譯成機(jī)器碼。微處理器將執(zhí)行這些機(jī)器碼,并對(duì)機(jī)器人

29、進(jìn)行控制。</p><p>  1.2.2 機(jī)器人傳感器技術(shù)</p><p>  機(jī)器人是由計(jì)算機(jī)控制的復(fù)雜機(jī)器,它具有類似人的肢體及感官功能;動(dòng)作程序靈活;有一定程度的智能;在工作時(shí)可以不依賴人的操縱。機(jī)器人傳感器在機(jī)器人的控制中起了非常重要的作用,正因?yàn)橛辛藗鞲衅鳎瑱C(jī)器人才具備了類似人類的知覺功能和反應(yīng)能力。其主要有:光電傳感器、紅外傳感器、力傳感器、超聲波傳感器、位置傳感器和姿態(tài)傳感

30、器等等。下面我將就幾種常用傳感器進(jìn)行介紹:</p><p>  1、光電傳感器:采用光電元件作為檢測(cè)元件的傳感器。它首先把被測(cè)量的變化轉(zhuǎn)換成光信號(hào)的變化,然后借助光電元件進(jìn)一步將光信號(hào)轉(zhuǎn)換成電信號(hào)。光電傳感器一般由光源、光學(xué)通路和光電元件三部分組成。</p><p>  2、紅外傳感器:紅外傳感器是用來測(cè)量距離和感知周圍情況的。因?yàn)榘l(fā)射出去的紅外信號(hào)在一定距離內(nèi)遇到物體就會(huì)反射回來。通過發(fā)

31、送紅外線信號(hào),并接收反射回來的信號(hào),機(jī)器人就可以感知前方或身體周圍的情況,做出相應(yīng)的調(diào)整(如:倒退或繞行等)。</p><p>  3、力傳感器:能感受外力并轉(zhuǎn)換成可用輸出信號(hào)的傳感器,比如機(jī)械手的應(yīng)用,當(dāng)你放一個(gè)東西到機(jī)械手的時(shí)候,機(jī)械手自動(dòng)抓住它,它就需要力傳感器檢測(cè)東西抓的緊不緊。典型的力傳感器是微動(dòng)開關(guān)和壓敏傳感器。</p><p>  4、超聲波傳感器:利用超聲波檢測(cè)技術(shù),將感受

32、的被測(cè)量轉(zhuǎn)換成可用輸出信號(hào)的傳感器。超聲波是一種振動(dòng)頻率高于聲波的機(jī)械波,由換能晶片在電壓的激勵(lì)下發(fā)生振動(dòng)產(chǎn)生的,它具有頻率高、波長(zhǎng)短、繞射現(xiàn)象小,特別是方向性好、能夠成為射線而定向傳播等特點(diǎn)。</p><p>  5、位置傳感器:能感受被測(cè)物的位置并轉(zhuǎn)換成可用輸出信號(hào)的傳感器。位置傳感器可分為兩種,直線位移傳感器和角位移傳感器。其中直線位移傳感器常用的有直線位移定位器等,具有工作原理簡(jiǎn)單、測(cè)量精度高、可靠性強(qiáng)的

33、特點(diǎn);角位移傳感器則可選旋轉(zhuǎn)式電位器,具有可靠性高、成本低的優(yōu)點(diǎn)。角位移器還可使用光電編碼器,有增量式與絕對(duì)式兩種形式。其中增量式碼盤在機(jī)器人控制系統(tǒng)中得到了廣泛的應(yīng)用。</p><p>  6、姿態(tài)傳感器:能感受物體姿態(tài)(軸線對(duì)重力坐標(biāo)系的空間位置)并轉(zhuǎn)換成可用輸出信號(hào)的傳感器。姿態(tài)傳感器(E.T-ahrs)是基于MEMS技術(shù)的高性能三維運(yùn)動(dòng)姿態(tài)測(cè)量系統(tǒng)。它包含三軸陀螺儀、三軸加速度計(jì)(即IMU),三軸電子羅盤

34、等輔助運(yùn)動(dòng)傳感器,通過內(nèi)嵌的低功耗ARM處理器輸出校準(zhǔn)過的角速度,加速度,磁數(shù)據(jù)等,通過基于四元數(shù)的傳感器數(shù)據(jù)算法進(jìn)行運(yùn)動(dòng)姿態(tài)測(cè)量,實(shí)時(shí)輸出以四元數(shù)、歐拉角等表示的零漂移三維姿態(tài)數(shù)據(jù)。姿態(tài)傳感器 (E.T-ahrs)可廣泛應(yīng)用于航模無人機(jī),機(jī)器人,天線云臺(tái),聚光太陽能,地面及水下設(shè)備,虛擬現(xiàn)實(shí),人體運(yùn)動(dòng)分析等需要低成本、高動(dòng)態(tài)三維姿態(tài)測(cè)量的產(chǎn)品設(shè)備中。</p><p>  傳感器的種類繁多,安裝在機(jī)器人上使機(jī)器人

35、實(shí)現(xiàn)各種功能。</p><p>  圖1.5 傳感器在機(jī)器人身上的分布</p><p>  2、六腳柱狀鐵甲蟲機(jī)器人</p><p>  2.1 六腳柱狀鐵甲蟲機(jī)器人簡(jiǎn)介</p><p>  圖2.1 6腳柱狀鐵甲蟲機(jī)器人</p><p>  材質(zhì): 采用國(guó)家標(biāo)準(zhǔn)鋁材。表面特別處理,防腐蝕防刮痕。尺寸(長(zhǎng)X寬): 4

36、1厘米X35.38厘米 腿到腿距離 高度:站立高度17.38厘米</p><p>  腿運(yùn)動(dòng)方式:標(biāo)準(zhǔn)配置為2自由度(垂直及水平)負(fù)荷能力:3.4千克自重:1.56千克(帶電機(jī))</p><p>  六腳柱狀鐵甲蟲機(jī)器人系統(tǒng)由一塊C51+AVR控制板、一塊PSCU(電機(jī)控制板)、12個(gè)直流伺服馬達(dá)、電源、連接電路以及鋁制機(jī)身組成。</p><p>  2.2

37、六腳柱狀鐵甲蟲機(jī)器人控制系統(tǒng)設(shè)計(jì)及分析</p><p>  2.2.1 機(jī)器人控制系統(tǒng)硬件分析</p><p>  2.2.1.1 AT89S52單片機(jī)</p><p>  AT89S52是一種低功耗、高性能CMOS 8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片

38、上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。</p><p><b>  1、主要性能</b></p><p>  a.與MCS-51單片機(jī)產(chǎn)品兼容;</p><p>  b.8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器

39、;</p><p>  c.1000次擦寫周期;</p><p>  d.全靜態(tài)操作:0Hz-33MHz;</p><p>  e.三級(jí)加密程序存儲(chǔ)器;</p><p>  f.32個(gè)可編程I/O口線;</p><p>  g.三個(gè)16位定時(shí)器/計(jì)數(shù)器;</p><p><b>  h

40、.八個(gè)中斷源;</b></p><p>  i.全雙工UART串行通道;</p><p>  j.低功耗空閑和掉電模式;</p><p>  k.掉電后中斷可喚醒;</p><p><b>  l.看門狗定時(shí)器;</b></p><p><b>  m.雙數(shù)據(jù)指針;</

41、b></p><p><b>  n.掉電標(biāo)識(shí)符。</b></p><p><b>  2、引腳說明</b></p><p>  AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非易失性存

42、儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完 全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng) 可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。 AT89S52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM, 32&

43、#160;位I/O 口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口, 片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工 作。掉電保護(hù)方式下,RAM內(nèi)容被保存,

44、振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。</p><p>  P0 口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏 輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。 當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下, P0不具有內(nèi)部上拉電阻。 在flash編程時(shí),P

45、0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn) 時(shí),需要外部上拉電阻。</p><p>  P1 口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí)

46、,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。</p><p>  此外,P1.0和P1.1分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和定時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入(P1.1/T2EX)。 在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。</p><p><b>  引腳號(hào)第二功能:</b></p>&l

47、t;p>  P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出</p><p>  P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制)</p><p>  P1.5 MOSI(在系統(tǒng)編程用)</p><p>  P1.6 MISO(在系統(tǒng)編程用)</p><p>  

48、P1.7 SCK(在系統(tǒng)編程用)</p><p>  P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對(duì)P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(I

49、IL)。 在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR) 時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用 8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。 在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。</p><

50、;p>  P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p3 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 P3口亦作為AT89S52特殊功能(第二功能)使用,

51、如下表所示。 在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。</p><p>  端口引腳 第二功能:</p><p>  P3.0 RXD(串行輸入口)</p><p>  P3.1 TXD(串行輸出口)</p><p>  P3.2 INTO(外中斷0)</p><

52、;p>  P3.3 INT1(外中斷1)</p><p>  P3.4 TO(定時(shí)/計(jì)數(shù)器0)</p><p>  P3.5 T1(定時(shí)/計(jì)數(shù)器1)</p><p>  P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)</p><p>  P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)</p>

53、<p>  此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。</p><p>  ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意

54、的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對(duì)FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。</p><p>  PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器

55、的讀選通信號(hào),當(dāng)AT89S52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號(hào)。EA/VPP:外部訪問允許,欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編

56、程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。</p><p>  XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。</p><p>  XTAL2:振蕩器反相放大器的輸出端。</p><p>  圖2.2 AT89S52引腳圖</p><p>  單片機(jī)上還有特殊功能寄存器、存儲(chǔ)器、定時(shí)

57、器、計(jì)數(shù)器等。</p><p>  2.2.1.2 PSCU電機(jī)控制板</p><p>  一塊PSCU電機(jī)控制板可以控制16都舵機(jī)同時(shí)工作,本文中設(shè)計(jì)只用到了12個(gè)通道,控制12個(gè)舵機(jī)。其工作原理:通過與單片機(jī)的P10口相連,從P10處獲取信號(hào)(舵機(jī)channel和脈沖寬度以字節(jié)的方式發(fā)送到PSCU舵機(jī)控制板),PSCU控制相對(duì)應(yīng)的舵機(jī)轉(zhuǎn)過相對(duì)的角度。</p><p&

58、gt;  圖2.3 PSCU-主控制板供電電路連接圖</p><p>  2.2.1.3 微型直流伺服電機(jī)(舵機(jī))</p><p>  1、微型伺服馬達(dá)內(nèi)部結(jié)構(gòu)</p><p>  一個(gè)微型伺服馬達(dá)內(nèi)部包括了一個(gè)小型直流馬達(dá);一組變速齒輪組;一個(gè)反饋可調(diào)電位器;及一塊電子控制板。其中,高速轉(zhuǎn)動(dòng)的直流馬達(dá)提供了原始動(dòng)力,帶動(dòng)變速(減速)齒輪組,使之產(chǎn)生高扭力的輸出,齒

59、輪組的變速比愈大,伺服馬達(dá)的輸出扭力也愈大,也就是說越能承受更大的重量,但轉(zhuǎn)動(dòng)的速度也愈低。</p><p>  圖2.4 微型伺服馬達(dá)內(nèi)部結(jié)構(gòu)圖</p><p>  2、微行伺服馬達(dá)的工作原理</p><p>  一個(gè)微型伺服馬達(dá)是一個(gè)典型閉環(huán)反饋系統(tǒng),其原理可由下圖表示:</p><p>  圖2.5 微型伺服馬達(dá)工作原理圖</p&

60、gt;<p>  減速齒輪組由馬達(dá)驅(qū)動(dòng),其終端(輸出端)帶動(dòng)一個(gè)線性的比例電位器作位置檢測(cè),該電位器把轉(zhuǎn)角坐標(biāo)轉(zhuǎn)換為一比例電壓反饋給控制線路板,控制線路板將其與輸入的控制脈沖信號(hào)比較,產(chǎn)生糾正脈沖,并驅(qū)動(dòng)馬達(dá)正向或反向地轉(zhuǎn)動(dòng),使齒輪組的輸出位置與期望值相符,令糾正脈沖趨于為0,從而達(dá)到使伺服馬達(dá)精確定位的目的。</p><p><b>  3、伺服馬達(dá)的控制</b></p

61、><p>  脈沖寬度調(diào)制(PWM),是英文“Pulse Width Modulation”的縮寫,簡(jiǎn)稱脈寬調(diào)制,是利用微處理器的數(shù)字輸出來對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測(cè)量、通信到功率控制與變換的許多領(lǐng)域中。伺服馬達(dá)的控制就是應(yīng)用PWM實(shí)現(xiàn)的。</p><p>  標(biāo)準(zhǔn)的微型伺服馬達(dá)有三條控制線,分別為:電源、地及控制。電源線與地線用于提供內(nèi)部的直流馬達(dá)及控制線路所需的

62、能源,電壓通常介于4V—6V之間,該電源應(yīng)盡可能與處理系統(tǒng)的電源隔離(因?yàn)樗欧R達(dá)會(huì)產(chǎn)生噪音)。甚至小伺服馬達(dá)在重負(fù)載時(shí)也會(huì)拉低放大器的電壓,所以整個(gè)系統(tǒng)的電源供應(yīng)的比例必須合理。</p><p>  輸入不同的脈沖數(shù),伺服馬達(dá)轉(zhuǎn)過的角度就不同,本文設(shè)計(jì)中所用伺服馬達(dá)為Hitec HS-422舵機(jī),脈沖值為300到1200,轉(zhuǎn)角位置為-90°到90°。如下表:</p><p

63、>  圖2.6 脈沖數(shù)與轉(zhuǎn)角關(guān)系</p><p>  2.2.1.4 控制系統(tǒng)電路</p><p>  圖2.7 控制電路原理圖</p><p>  2.2.2 機(jī)器人控制系統(tǒng)軟件部分設(shè)計(jì)</p><p>  2.2.2.1 基本動(dòng)作設(shè)計(jì)</p><p>  通過控制6只腳上12個(gè)伺服馬達(dá)協(xié)調(diào)動(dòng)作,使機(jī)器人做如前

64、行、后行、轉(zhuǎn)彎等基本動(dòng)作。</p><p>  圖2.8 PSC控制伺服馬達(dá)的分布</p><p>  圖2.9 機(jī)器人步伐調(diào)整流程圖</p><p>  圖2.10 機(jī)器人基本移動(dòng)動(dòng)作流程圖</p><p>  2.2.2.2 基本功能的設(shè)計(jì)</p><p>  通過傳感器以及按鈕開關(guān),組合基本動(dòng)作,進(jìn)行機(jī)器人控制移

65、動(dòng)以及智能避障。</p><p>  單片機(jī)和舵機(jī)通電,主函數(shù)運(yùn)行,機(jī)器人立正居中復(fù)位調(diào)整,通過單刀雙擲開關(guān)選擇傳感函數(shù)或控制行走函數(shù)。當(dāng)開關(guān)擲傳感函數(shù)時(shí),機(jī)器人通過紅外傳感器發(fā)射接收裝置自動(dòng)避障行走;當(dāng)開關(guān)擲控制行走函數(shù)時(shí),機(jī)器人原地踏步調(diào)整等待按鈕開關(guān)信號(hào),可以分別控制其向前后左右行走。</p><p>  圖2.11 主函數(shù)流程圖</p><p>  圖2.1

66、2 控制移動(dòng)函數(shù)流程</p><p>  圖2.13 傳感器函數(shù)流程圖</p><p>  3、程序的編寫燒錄以及機(jī)器人調(diào)試運(yùn)行</p><p>  3.1 程序的編寫與燒錄</p><p>  使用Keil uVision2軟件編寫程序,編寫語言為C語言。</p><p>  3.1.1 頭文件soft_rs232.

67、h</p><p>  在C語言家族程序中,頭文件被大量使用。一般而言,每個(gè)C++/C程序通常由頭文件(header files)和定義文件(definition files)組成。頭文件作為一種包含功能函數(shù)、數(shù)據(jù)接口聲明的載體文件,用于保存程序的聲明(declaration),而定義文件用于保存程序的實(shí)現(xiàn) (implementation)。而且 .c就是你寫的程序文件。</p><p>

68、  頭文件soft_rs232.h中包含多個(gè)功能函數(shù),定義串口收、發(fā)送管腳以及選擇晶振頻率和波特率等。</p><p>  串口初始化函數(shù)soft_rs232_init ();</p><p>  監(jiān)測(cè)起始位函數(shù)soft_receive_init();</p><p>  允許接受函數(shù)oft_receive_enable();</p><p>

69、;  允許發(fā)送函數(shù)soft_send_enable ();</p><p>  中斷函數(shù)soft_rs232_interrupt();</p><p>  發(fā)送一個(gè)字節(jié)函數(shù)rs_send_byte(INT8U SendByte)。</p><p>  在編寫機(jī)器人所用的程序時(shí),所使用的頭文件都是soft_rs232.h,主要內(nèi)容是使用一個(gè)定時(shí)器和 2 個(gè) I/O 口

70、模擬一個(gè)串行口,包含發(fā)送接收函數(shù)以及中斷函數(shù)。發(fā)送時(shí),要先調(diào)用 soft_send_enable (), 它為發(fā)送做初始化的工作,以后就可以調(diào)用 rs_send_byte () 啟動(dòng)發(fā)送一個(gè)字節(jié)的過程。發(fā)送口平時(shí)為高電平,rs_send_byte ()函數(shù)使發(fā)送口變?yōu)榈碗娖介_始發(fā)送起始位; 同時(shí)設(shè)置和啟動(dòng)定時(shí)器,為發(fā)送數(shù)據(jù)位在預(yù)定的時(shí)刻產(chǎn)生定時(shí)器中斷。發(fā)送數(shù)據(jù)位和停止位都在定時(shí)器的中斷服務(wù)程序中進(jìn)行。中斷服務(wù)程序中處理 4 種情況:發(fā)送

71、數(shù)據(jù)位、發(fā)送停止位、發(fā)送完畢、處理錯(cuò)誤。其詳細(xì)內(nèi)容請(qǐng)看附錄二。</p><p>  3.1.2 主函數(shù)main()</p><p>  主函數(shù)內(nèi)容流程圖如圖2.10所示。電源通電時(shí)后,機(jī)器人立正居中調(diào)整,如單刀雙擲開關(guān)擲K1時(shí),執(zhí)行控制移動(dòng)函數(shù),如果是擲K2則執(zhí)行傳感函數(shù),編寫如下:</p><p>  void main(void)//主函數(shù)</p>

72、<p><b>  {</b></p><p>  soft_rs232_init();</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  P0=0xff;//P0初始化</p><

73、;p>  walking_neutral();//立正</p><p>  while(K1==0) remote_control();</p><p>  while(K2==0) sensor();</p><p><b>  }</b></p><p><b>  }</b></p

74、><p>  3.1.3 控制移動(dòng)函數(shù)remote_control()</p><p>  控制移動(dòng)函數(shù)流程圖如圖2.11所示。當(dāng)單刀雙擲開關(guān)擲K1時(shí),控制移動(dòng)函數(shù)開始執(zhí)行,先是原地踏步調(diào)整函數(shù),當(dāng)按下按鈕開關(guān)K3、K4、K5、K6時(shí),機(jī)器人分別執(zhí)行前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)函數(shù)。如單刀雙擲開關(guān)擲K2時(shí),跳出函數(shù)回到主函數(shù)。編寫如下:</p><p>  void remo

75、te_control(void)</p><p><b>  {</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  walking_adjust();</p><p>  while

76、((K3&&K4&&K5&&K6)==0)</p><p><b>  {</b></p><p><b>  if(K3==0)</b></p><p><b>  while(1)</b></p><p><b> 

77、 {</b></p><p>  walking_forward();//前進(jìn) </p><p>  if((K2&&K4&&K5&&K6)==0) break;</p><p><b>  } </b></p><p>  else if(K4==0)<

78、/p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  walking_back();//后退</p><p>  if((K2&&K3&&K5&&K6)==0) break;</p>

79、<p><b>  }</b></p><p>  else if(K5==0)</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  walking_lturn();//左轉(zhuǎn)</p><

80、p>  if((K2&&K3&&K4&&K6)==0) break;</p><p><b>  }</b></p><p>  else if(K6==0)</p><p><b>  while(1)</b></p><p><b>

81、;  {</b></p><p>  walking_rturn();//右轉(zhuǎn) </p><p>  if((K2&&K3&&K4&&K5)==0) break;</p><p><b>  }</b></p><p><b>  }</b>

82、;</p><p>  if(K2==0) break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  3.1.4 傳感器函數(shù)sensor(void)</p><p>  傳感器函數(shù)流程圖如圖2.12所示。當(dāng)單刀雙擲開關(guān)擲

83、K2時(shí),傳感器函數(shù)開始執(zhí)行,一開始是執(zhí)行立正居中調(diào)整函數(shù),紅外線傳感器發(fā)射接收裝置工作,當(dāng)兩邊接收不到低電平時(shí)執(zhí)行前進(jìn)函數(shù),當(dāng)兩邊都接收到低電平時(shí)執(zhí)行后退函數(shù)和右轉(zhuǎn)函數(shù),當(dāng)左邊接收到低電平時(shí)向右轉(zhuǎn),當(dāng)右邊接收到低電平時(shí)向左轉(zhuǎn)。如單刀雙擲開關(guān)擲K1時(shí),跳出函數(shù)回到主函數(shù)。編寫如下:</p><p>  void sensor(void)</p><p><b>  {</b&

84、gt;</p><p>  walking_neutral();//立正</p><p><b>  do</b></p><p><b>  {</b></p><p>  int counter;</p><p><b>  char a,b;</b>

85、;</p><p>  for(counter=0;counter<38;counter++)//發(fā)射</p><p><b>  {</b></p><p><b>  LF=1;</b></p><p>  delay_nus(12);</p><p><b&

86、gt;  LF=0;</b></p><p>  delay_nus(12);</p><p>  if(LIR==0)break;</p><p><b>  }</b></p><p><b>  a=LIR;</b></p><p>  for(counte

87、r=0;counter<38;counter++)</p><p><b>  {</b></p><p><b>  RF=1;</b></p><p>  delay_nus(12);</p><p><b>  RF=0;</b></p><p&

88、gt;  delay_nus(12);</p><p>  if(RIR==0)break;</p><p><b>  }</b></p><p>  b=RIR;//發(fā)射接收完畢</p><p>  if((a==0)&&(b==0))//根據(jù)接收到的信號(hào)判斷要執(zhí)行函數(shù)</p><

89、p><b>  {</b></p><p>  walking_back();</p><p>  walking_rturn();</p><p><b>  }</b></p><p>  else if(a==0)</p><p><b>  {<

90、/b></p><p>  walking_rturn();</p><p><b>  }</b></p><p>  else if(b==0)</p><p><b>  {</b></p><p>  walking_lturn();</p>&l

91、t;p><b>  }</b></p><p>  else walking_forward();</p><p>  if(K1==0) break;</p><p><b>  }</b></p><p><b>  while(1);</b></p>

92、<p><b>  }</b></p><p>  3.1.5 基本移動(dòng)函數(shù)以及調(diào)整函數(shù)</p><p>  基本移動(dòng)函數(shù)有前進(jìn)、后退、左轉(zhuǎn)以及右轉(zhuǎn),調(diào)整函數(shù)有立正居中調(diào)整和原地踏步調(diào)整,其流程圖如圖2.8和圖2.9。執(zhí)行時(shí),函數(shù)將對(duì)應(yīng)數(shù)組中的每個(gè)元素中的兩個(gè)數(shù)(伺服馬達(dá)地址和脈沖長(zhǎng)度)通過write_psc()函數(shù)中調(diào)用rs_send_byte(INT8U

93、 SendByte)函數(shù),以字節(jié)的方式發(fā)送到PSC板中,如后退函數(shù),編寫如下:</p><p>  walking_back(void)//后退</p><p><b>  {</b></p><p>  for(i=0;i<24;i++)</p><p><b>  {</b></p&

94、gt;<p>  servoAddr= Back[i][0];</p><p>  servoPos = Back[i][1]; </p><p>  if(servoAddr%2==1)</p><p>  ramp=LiftRamp;</p><p><b>  else</b></p>

95、<p>  ramp=Fast;</p><p>  write_psc();</p><p><b>  }</b></p><p><b>  }</b></p><p>  3.1.6 程序的燒錄</p><p>  程序中還有延時(shí)函數(shù)、脈沖以及管腳等的定

96、義,本文不作解析,程序詳細(xì)內(nèi)容在附錄一中可見。</p><p>  程序編寫完成后輸出16進(jìn)制.hex文件,使用AVR_fighter燒寫軟件通過USBASP下載器,將hex文件下載到單片機(jī)中。</p><p>  3.2 機(jī)器人調(diào)試運(yùn)行</p><p>  根據(jù)電路原理圖搭建好硬件電路</p><p>  1、基本移動(dòng)函數(shù)調(diào)試運(yùn)行:<

97、/p><p>  分別在主函數(shù)中只調(diào)用4個(gè)基本移動(dòng)函數(shù)以及2個(gè)調(diào)整函數(shù),調(diào)試運(yùn)行成功,無異常。</p><p>  2、控制移動(dòng)函數(shù)調(diào)試運(yùn)行:</p><p>  將單刀雙擲開關(guān)擲K1,在主函數(shù)中只調(diào)用控制移動(dòng)函數(shù),分別使用按鈕開關(guān)控制調(diào)用4個(gè)基本移動(dòng)函數(shù),調(diào)試運(yùn)行成功,無異常。</p><p>  3、傳感器函數(shù)調(diào)試運(yùn)行:</p>

98、<p>  先將傳感器函數(shù)中的基本移動(dòng)函數(shù)換成使用四個(gè)I\O口控制的發(fā)光二極管,移動(dòng)傳感器,測(cè)試傳感器是否能夠正常工作,經(jīng)測(cè)試,容易受光干涉以及有盲點(diǎn),可正常工作。將單刀雙擲開關(guān)擲K2,在主函數(shù)中只調(diào)用傳感器函數(shù),經(jīng)調(diào)試可正常運(yùn)行。</p><p><b>  4、整體調(diào)試運(yùn)行:</b></p><p>  將單刀雙擲開關(guān)擲K1,將先前編寫好的程序燒進(jìn)單片

99、機(jī)中,系統(tǒng)上電后,機(jī)器人立正居中調(diào)整后原地踏步調(diào)整,使用按鈕開關(guān)控制前后左右運(yùn)動(dòng),無異常;將單刀雙擲開關(guān)擲K2,傳感器函數(shù)運(yùn)行,先是立正居中調(diào)整,檢測(cè)無障礙向前運(yùn)動(dòng),檢測(cè)左右兩邊都有障礙,向后運(yùn)動(dòng),檢測(cè)左邊有障礙向右運(yùn)動(dòng),檢測(cè)右邊有障礙向左運(yùn)動(dòng)。再將單刀雙擲開關(guān)擲K1,機(jī)器人開始原地踏步調(diào)整,證明開始運(yùn)行控制移動(dòng)函數(shù),經(jīng)調(diào)試可正常運(yùn)行。</p><p>  4、機(jī)器人三維建模及其運(yùn)動(dòng)仿真</p>&

100、lt;p>  4.1 機(jī)器人三維建模</p><p>  本文中三維建模以及運(yùn)動(dòng)仿真都是基于Pro/Engineer5.0。</p><p><b>  4.1.1 零件</b></p><p>  機(jī)器人由機(jī)身架、6個(gè)腳以及兩塊PCB構(gòu)成,分別測(cè)量各部分尺寸,對(duì)各個(gè)零件進(jìn)行三維建模。</p><p><b&

101、gt;  4.1.2 裝配</b></p><p>  將左腳裝配好,定義好連接,使腳上兩個(gè)伺服電機(jī)各有一個(gè)自由度,控制其水平以及垂直運(yùn)動(dòng)。左腳裝配完成后鏡像組件,保存為右腳。另外新建一個(gè)組件,命名為總裝配,裝入機(jī)身架,定義為平面連接,使其擁有3個(gè)自由度。再將左右各三個(gè)腳裝入總裝配中,最后裝入兩塊PCB板以及螺釘、螺母和墊圈等零件,至此裝配完成。</p><p><b&g

102、t;  4.2 運(yùn)動(dòng)仿真</b></p><p><b>  1、創(chuàng)建伺服電機(jī)</b></p><p>  上一節(jié)中創(chuàng)建了用于運(yùn)動(dòng)仿真的機(jī)器人裝配體,直接打開裝配模型,“應(yīng)用程序”—“機(jī)構(gòu)”。(進(jìn)入機(jī)構(gòu)后,本應(yīng)創(chuàng)建特殊連接,原先構(gòu)想為定義阻尼,使機(jī)器人在12個(gè)伺服電機(jī)工作時(shí),靜摩擦力的作用下動(dòng)作,但無相關(guān)經(jīng)驗(yàn),經(jīng)一番研究后無法實(shí)現(xiàn),只能采用別的策略。)進(jìn)入

103、機(jī)構(gòu),創(chuàng)建12個(gè)伺服電機(jī),6個(gè)腳12個(gè)。</p><p>  并分別設(shè)置12個(gè)伺服電機(jī)規(guī)范,跟現(xiàn)實(shí)運(yùn)動(dòng)一樣,12個(gè)電機(jī)協(xié)調(diào)工作是最難的。12個(gè)電機(jī)設(shè)置好后,根據(jù)前12個(gè)電機(jī)參數(shù)設(shè)置后三個(gè)電機(jī)(機(jī)器人總體參數(shù)),如圖所示:</p><p>  圖4.1 創(chuàng)建伺服電機(jī)</p><p><b>  2、定義分析</b></p><

104、p>  創(chuàng)建好伺服電機(jī)后,“分析”—“機(jī)構(gòu)分析”,名稱為AnalysisDefinition11,類型為位置,終止時(shí)間10,幀頻10,電動(dòng)機(jī)不用修改。如圖:</p><p><b>  圖4.2 定義分析</b></p><p><b>  3、執(zhí)行分析</b></p><p>  在上一步的窗口里,點(diǎn)“運(yùn)行”。系統(tǒng)

105、即開始執(zhí)行分析,在主窗口的最下方,會(huì)出現(xiàn)一個(gè)進(jìn)度條。如果出現(xiàn)錯(cuò)誤,將彈出一個(gè)提示窗口。</p><p><b>  4、回放</b></p><p>  執(zhí)行完分析后,就可進(jìn)行結(jié)果的回放?!皺C(jī)構(gòu)”--“回放”(或模型樹“回放”上右鍵“播放”)。在此可進(jìn)行干涉檢查、編輯動(dòng)畫段、結(jié)果輸出為動(dòng)畫或圖片、創(chuàng)建運(yùn)動(dòng)包絡(luò)。</p><p><b>

106、;  圖4.3 回放</b></p><p>  本文中的運(yùn)動(dòng)仿真為四個(gè)基本移動(dòng)函數(shù)運(yùn)行的仿真,不做其他分析。運(yùn)動(dòng)分析是PROE機(jī)構(gòu)仿真的最基礎(chǔ)的一個(gè),也是最簡(jiǎn)單的一個(gè)。弄明白運(yùn)動(dòng)分析是做好其它分析的前提。</p><p><b>  5、總結(jié)與展望</b></p><p><b>  5.1 總結(jié)</b>&l

107、t;/p><p>  本文基于6腳柱狀鐵甲蟲機(jī)器人,完成以伺服馬達(dá)為驅(qū)動(dòng),51單片機(jī)為核心的機(jī)器人控制系統(tǒng)設(shè)計(jì),其中包括控制移動(dòng)以及傳感器智能避障。在整個(gè)設(shè)計(jì)過程中,我學(xué)到了很多,從一開始對(duì)單片機(jī)一無所知,到了解其原理,再到用單片控制一個(gè)12個(gè)伺服馬達(dá)的機(jī)器人。設(shè)計(jì)完成了,但其中還存在著很多的不足,總結(jié)如下:</p><p>  1、機(jī)器人體積過大、質(zhì)量過重,控制運(yùn)行不方便,耗電高??梢钥紤]更

108、換質(zhì)量較輕的制作材料,使用適合材質(zhì)的塑料制作,減輕質(zhì)量,減少能耗;</p><p>  2、紅外傳感器容易受到光干涉,以及機(jī)器人體積比較大,容易有盲點(diǎn)。缺少頭部,傳感器安裝不方便??梢栽黾觾蓚€(gè)伺服馬達(dá)以及一塊面包板作為頭部,使用一個(gè)超聲波傳感器,伺服馬達(dá)轉(zhuǎn)動(dòng),傳感器檢測(cè)各個(gè)方向,實(shí)現(xiàn)無盲點(diǎn)智能避障,同時(shí)方便安裝各種傳感器;</p><p>  3、可以考慮每條腿增加一個(gè)自由度(增加一個(gè)伺服

109、馬達(dá))。</p><p><b>  5.2 展望</b></p><p>  智能移動(dòng)機(jī)器人的發(fā)展趨勢(shì)??v觀智能移動(dòng)機(jī)器人的發(fā)展、發(fā)展過程中存在的問題以及相關(guān)學(xué)科的發(fā)展方向,智能移動(dòng)機(jī)器人具有以下發(fā)展趨勢(shì): (1)機(jī)器人本體將向靈活性和微型化方向發(fā)展 這是由于機(jī)器人應(yīng)用面向家庭和服務(wù)性行業(yè),需要適應(yīng)更為復(fù)雜的環(huán)境。 (2)高速性室內(nèi)機(jī)器人對(duì)運(yùn)動(dòng)速度沒有特別要求,而室

110、外機(jī)器人高速運(yùn)動(dòng)可以提高它們的工作效率。高速性對(duì)定位精度和控制都提出了更高的要求。 (3)友好的人機(jī)交互為了使機(jī)器人能夠更好地為人類服務(wù),人們需要一個(gè)暢通的渠道與機(jī)器進(jìn)行溝通,這就需要友善的人機(jī)接口。當(dāng)前蓬勃發(fā)展的計(jì)算機(jī)多媒體技術(shù)為此提供了支持。 (4)安全性能好 智能移動(dòng)機(jī)器人是為人類服務(wù)的,因此至少不應(yīng)該給人類帶來危害。為使智能移動(dòng)機(jī)器人真正走向應(yīng)用,必須遵守Issac Asimov提出的著名的"機(jī)器人三戒律",

111、即第一,機(jī)器人不可傷害人或眼看人將要遇害時(shí)而袖手旁觀;第二,機(jī)器人必須服從人給它的指令,除非這種命令與第一條戒律相抵觸;第三,機(jī)器人必須保護(hù)自身的存在,除非這種保護(hù)與第一、第二條戒律相抵觸。 (5)產(chǎn)業(yè)化脫離實(shí)際的理論不會(huì)具有深遠(yuǎn)的發(fā)展?jié)摿?也只有能給社會(huì)帶來可觀經(jīng)濟(jì)效益的技術(shù)才會(huì)得到社會(huì)</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]齊從謙

112、,Pro/EngineerWildfire2.0特征與三維實(shí)體建模,北京:機(jī)械工業(yè)出版社,2008</p><p>  [2]鄒青,機(jī)械制造技術(shù)基礎(chǔ)課程設(shè)計(jì)指導(dǎo)教程,北京:機(jī)械工業(yè)出版社,2011</p><p>  [3]劉天旺,Protel99SE電路設(shè)計(jì)應(yīng)用教程,北京:電子工業(yè)出版社,2007</p><p>  [4]董國(guó)增,MCS-51單片機(jī)接口及應(yīng)用實(shí)驗(yàn)

113、和訓(xùn)練指導(dǎo) 第2版,北京:機(jī)械工業(yè)出版社,2009</p><p><b>  圖標(biāo)說明</b></p><p>  圖1.1火星探測(cè)機(jī)器人“好奇號(hào)3</p><p>  圖1.2深水?dāng)z影機(jī)“杰森”4</p><p>  圖1.3 日本雙腳步行機(jī)器人“阿西莫”4</p><p>  圖1.4

114、 美國(guó)綽號(hào)“劍”的履帶式行走機(jī)器人5</p><p>  圖1.5 傳感器在機(jī)器人身上的分布7</p><p>  圖2.1 6腳柱狀鐵甲蟲機(jī)器人8</p><p>  圖2.2 AT89S52引腳圖12</p><p>  圖2.3 PSCU電機(jī)控制板13</p><p>  圖2.4 微型伺服馬達(dá)內(nèi)部結(jié)構(gòu)

115、圖13</p><p>  圖2.5 微型伺服馬達(dá)工作原理圖14</p><p>  圖2.6 脈沖數(shù)與轉(zhuǎn)角關(guān)系14</p><p>  圖2.7 控制電路原理圖15</p><p>  圖2.8 PSC控制伺服馬達(dá)的分布16</p><p>  圖2.9 機(jī)器人步伐調(diào)整流程圖16</p>&

116、lt;p>  圖2.10 機(jī)器人基本移動(dòng)動(dòng)作流程圖17</p><p>  圖2.11 主函數(shù)流程圖18</p><p>  圖2.12 控制移動(dòng)函數(shù)流程18</p><p>  圖2.13 傳感器函數(shù)流程圖19</p><p>  圖4.1 創(chuàng)建伺服電機(jī)28</p><p>  圖4.2 定義分析2

117、8</p><p>  圖4.3 回放29</p><p><b>  致 謝</b></p><p>  此次畢業(yè)設(shè)計(jì)歷時(shí)三個(gè)多月,是我大學(xué)學(xué)習(xí)中遇到過的時(shí)段最長(zhǎng)、涉及內(nèi)容最廣、工作量最大的一次設(shè)計(jì)。用老師的一句話概括就是這次畢業(yè)設(shè)計(jì)相當(dāng)于是把以前的小課程設(shè)計(jì)綜合在一起的過程,只要把握住每個(gè)課程設(shè)計(jì)的精華、環(huán)環(huán)緊扣、增強(qiáng)邏輯,那么這次的任

118、務(wù)就不難了。我這次的任務(wù)是利用軟件程序控制機(jī)器人的行走、拐彎等。因?yàn)槲覀儗W(xué)習(xí)時(shí),這方面不夠注重,基礎(chǔ)不夠扎實(shí),所以當(dāng)我開始著手時(shí),還的確是困難重重。</p><p>  俗話說的好,“磨刀不誤砍柴工”,當(dāng)每次遇到不懂得問題時(shí),我都會(huì)記錄在本子上,然后等答疑的時(shí)候請(qǐng)教老師,老師對(duì)于我提出的問題都一一解答,從來不會(huì)因?yàn)槲业膯栴}稍過簡(jiǎn)單加以責(zé)備,而是一再地告誡我做設(shè)計(jì)該注意的地方,從課題的選擇到完成,老師都始終給予我細(xì)

119、心的指導(dǎo)和不懈的支持。所以我很感謝指導(dǎo)我畢業(yè)設(shè)計(jì)的張錦榮老師。</p><p>  我還要感謝在一起愉快的度過大學(xué)生生活的機(jī)電系全體老師和同學(xué)門,正是由于你們的幫助和支持,我才能克服一個(gè)一個(gè)的困難和疑惑,直至本文的順利完成。</p><p>  另外對(duì)答辯和評(píng)閱的各位老師表示感謝。</p><p>  附錄一:機(jī)器人控制系統(tǒng)程序</p><p&g

120、t;  #include "soft_rs232.h"//頭文件,包含發(fā)送接收函數(shù)以及中斷函數(shù)</p><p>  #define uchar unsigned char//定義數(shù)據(jù)類型</p><p>  #define uint unsigned int</p><p>  uint servoPos;//脈沖數(shù)</p>&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論