版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> ?。?0 屆)</b></p><p> 智能循跡機(jī)器人設(shè)計(jì)(軟件部分)</p><p> 所在學(xué)院 </p><p> 專業(yè)班級(jí) 自動(dòng)化
2、 </p><p> 學(xué)生姓名 學(xué)號(hào) </p><p> 指導(dǎo)教師 職稱 </p><p> 完成日期 年 月 </p><p> 學(xué)士學(xué)位論文原創(chuàng)性聲明</p>
3、<p> 本人聲明,所呈交的論文是本人在導(dǎo)師的指導(dǎo)下獨(dú)立完成的研究成果。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包含法律意義上已屬于他人的任何形式的研究成果,也不包含本人已用于其他學(xué)位申請(qǐng)的論文或成果。對(duì)本文的研究作出重要貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式表明。本人完全意識(shí)到本聲明的法律后果由本人承擔(dān)。</p><p> 作者簽名: 日期:2014年
4、5月27日</p><p> 學(xué)位論文版權(quán)使用授權(quán)書</p><p> 本學(xué)位論文作者完全了解學(xué)校有關(guān)保留、使用學(xué)位論文的規(guī)定,同意學(xué)校保留并向國(guó)家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)南昌航空大學(xué)科技學(xué)院可以將本論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。</p><p>
5、 作者簽名: 日期:2014年5月27日</p><p> 導(dǎo)師簽名: 日期:2014年5月27日</p><p> 智能循跡機(jī)器人設(shè)計(jì)(軟件部分)</p><p> 摘要:智能循跡是一種在控制系統(tǒng)的作用下,可以準(zhǔn)確沿既定路線自動(dòng)行駛的系統(tǒng)。本設(shè)計(jì)中,采用STC89C52
6、單片機(jī)為主控制芯片,結(jié)合直流減速電機(jī)、傳感器、電源電路及其他外圍電路,設(shè)計(jì)實(shí)現(xiàn)了機(jī)器人沿黑跡行走的智能循跡機(jī)器人,其中機(jī)器人循跡功能由紅外式光電傳感器完成。采用紅外反射式開關(guān)傳感器作為機(jī)器人的循跡模塊來識(shí)別白色路面中央的黑色引導(dǎo)線,采集信號(hào)并將信號(hào)轉(zhuǎn)換為能被單片機(jī)識(shí)別的數(shù)字信號(hào);采用驅(qū)動(dòng)芯片L298N構(gòu)成雙H橋控制直流電機(jī),其中軟件系統(tǒng)采用C語言編程,本設(shè)計(jì)的電路結(jié)構(gòu)簡(jiǎn)單,容易實(shí)現(xiàn),可靠性高。</p><p>
7、 關(guān)鍵詞:?jiǎn)纹瑱C(jī) 自動(dòng)循跡 驅(qū)動(dòng)電路</p><p><b> 指導(dǎo)老師簽名:</b></p><p> The design of intelligent tracking robot (software) </p><p> Abstract: Intelligent tracking under the cont
8、rol of a role can be accurately automatically traveling along a predetermined route system . In this design , the use of STC89C52 SCM control chip , combined with DC gear motors, sensors , power supply circuits and other
9、 peripheral circuits , designed to achieve a black guide line along the track to walk intelligent tracking robot , where the robot tracking infrared photoelectric transfer function to complete . </p><p> At
10、 the same time reflective infrared transducer switch to identify the black guide line at the central of the white road, which used as the robot tracing module, it can gather the signal and transfer it into digital signa
11、l that can be recognized by single chip. And the driving chip L298N constitute the double H bridge constitute of driving chip L298N can control direct current motor. Among which the software system is using C language. I
12、n a nutshell, the design of the circuit has the advantages</p><p> Keywords: SCM automatic tracking drive circuit</p><p> Instructor Signature:</p><p><b> 目 錄</b>
13、</p><p><b> 一、緒論</b></p><p> 1.1智能機(jī)器人的作用和意義1</p><p> 1.2智能機(jī)器人的現(xiàn)狀2</p><p> 二、系統(tǒng)設(shè)計(jì)方案的分析</p><p><b> 2.1系統(tǒng)設(shè)計(jì)4</b></p>&l
14、t;p> 2.2機(jī)器人的選擇4</p><p> 2.3尋跡模塊設(shè)計(jì)4</p><p> 2.4總體結(jié)構(gòu)框圖設(shè)計(jì)4</p><p><b> 三、硬件設(shè)計(jì)</b></p><p> 3.1信號(hào)檢測(cè)模塊6</p><p><b> 3.2電源模塊6</b&
15、gt;</p><p> 3.3傳感器模塊6</p><p><b> 3.4控制模塊8</b></p><p> 3.5電機(jī)驅(qū)動(dòng)模塊9</p><p><b> 四、 軟件設(shè)計(jì)</b></p><p> 4.1程序流程圖11</p><
16、p> 4.2程序設(shè)計(jì)11</p><p> 4.3 KELL簡(jiǎn)介17</p><p><b> 五、安裝與調(diào)試</b></p><p> 5.1智能循跡機(jī)器人實(shí)物圖22</p><p> 5.2傳感部分的分析及調(diào)試22</p><p> 5.3單片機(jī)控制部分的分析調(diào)試2
17、3</p><p><b> 六、結(jié)語</b></p><p><b> 參考文獻(xiàn)27</b></p><p><b> 致 謝29</b></p><p><b> 附錄30</b></p><p><b
18、> 1 緒論</b></p><p> 1.1 智能機(jī)器人的作用和意義</p><p> 自第一臺(tái)機(jī)器人誕生以來,機(jī)器人的發(fā)展已經(jīng)遍及機(jī)械、電子、冶金、交通、宇航、國(guó)防等眾多領(lǐng)域里。這些年來機(jī)器人的智能水平不斷提高,并且快速地改變著我們的生活方式。人們?cè)诓粩嗵接?、改造、研究的過程中,發(fā)明能替代人勞動(dòng)的機(jī)器一直是人我們的終極目標(biāo)。當(dāng)今機(jī)器人的發(fā)展趨勢(shì)主要有兩個(gè)突出的
19、方面:一個(gè)是機(jī)器人的應(yīng)用不斷擴(kuò)大;另一個(gè)是機(jī)器人的性能不斷完整。如今,機(jī)器人技術(shù)的進(jìn)步將會(huì)對(duì)科學(xué)的發(fā)展產(chǎn)生巨大影響。</p><p> 隨著科學(xué)技術(shù)的發(fā)展,對(duì)于機(jī)器人的各種技術(shù)而言圖像處理技術(shù)已近很發(fā)達(dá),而基于圖像的理解技術(shù)還相對(duì)落后,機(jī)器人視覺需要通過大量的運(yùn)算也只能識(shí)別一些結(jié)構(gòu)化環(huán)境比較簡(jiǎn)單的目標(biāo)。視覺傳感器的核心器件是攝像管和CCD,目前的CCD已能做到自動(dòng)聚焦,但CCD傳感器的價(jià)格、體積和使用方式上并不
20、合理,因此在不要求清晰圖像只需要粗略感覺的系統(tǒng)中,考慮使用視覺傳感器是比較可行的,因此視覺傳感器種類也越來越多,其中視覺傳感器成為自動(dòng)行走和駕駛的最主要部件。視覺傳感器的典型應(yīng)用領(lǐng)域?yàn)橹悄軐?dǎo)航一種實(shí)用有效的方法。</p><p> 機(jī)器人要實(shí)現(xiàn)自動(dòng)循跡功能和避障功能就必須要準(zhǔn)確感知導(dǎo)引線和障礙物,感知導(dǎo)引線相當(dāng)給機(jī)器人一個(gè)眼睛。避障控制系統(tǒng)是基于自動(dòng)循跡小車系統(tǒng),基于它的智能小車實(shí)現(xiàn)智能識(shí)別路線,判斷并自動(dòng)避開
21、障礙,選擇正確的行進(jìn)路線。使用傳感器感知路線和障礙并作出判斷和相應(yīng)的動(dòng)作。 </p><p> 該智能機(jī)器人可以作為機(jī)器人的典型代表。智能機(jī)器人可以分為三大組成部分:傳感器檢測(cè)部分、執(zhí)行部分、CPU。機(jī)器人要實(shí)現(xiàn)循跡功能,還可以擴(kuò)展自動(dòng)避障等功能,感知導(dǎo)引線和障礙物。可以實(shí)現(xiàn)機(jī)器人智能識(shí)別路線,選擇正確的行進(jìn)路線,并檢測(cè)到障礙物后自動(dòng)躲避。基于以上要求,傳感檢測(cè)部分考慮到機(jī)器人一般不需要感知清晰的圖像,只要求粗
22、略感知即可,所以可以舍棄比較貴的CCD傳感器而考慮使用價(jià)廉物美的紅外反射式傳感器來充當(dāng)。智能機(jī)器人的執(zhí)行部分是由兩個(gè)直流驅(qū)動(dòng)電機(jī)來充當(dāng)?shù)模饕刂茩C(jī)器人的轉(zhuǎn)彎和速度。單片機(jī)驅(qū)動(dòng)直流電機(jī)一般有兩種方案:第一,不需要占用單片機(jī)資源,直接選擇有PWM功能的單片機(jī),這樣可以實(shí)現(xiàn)精確調(diào)速;第二,可以由軟件模擬PWM輸出調(diào)制,需要占用單片機(jī)資源,難以精確調(diào)速,但單片機(jī)型號(hào)的選擇余地較大??紤]到實(shí)際情況,本文選擇第二種方案。CPU使用STC89C52
23、單片機(jī),配合軟件編程實(shí)現(xiàn)。</p><p> 1.2 智能機(jī)器人的現(xiàn)狀</p><p> 現(xiàn)如今智能機(jī)器人發(fā)展很快,從智能玩具到其它各行業(yè)都有實(shí)質(zhì)成果。其基本可實(shí)現(xiàn)循跡、避障、檢測(cè)貼片、尋光入庫(kù)、避崖等基本功能,這幾節(jié)的電子設(shè)計(jì)大賽智能小車又在向聲控系統(tǒng)發(fā)展。比較出名的飛思卡爾智能小車更是走在前列。我此次的設(shè)計(jì)主要實(shí)現(xiàn)循跡避障這兩個(gè)功能。</p><p>
24、智能機(jī)器人的發(fā)展現(xiàn)狀智能機(jī)器人是第三代機(jī)器人,這種機(jī)器人帶有多種傳感器能夠?qū)⒍喾N傳感器得到的信息進(jìn)行融合,能夠有效的適應(yīng)變化的環(huán)境,具有很強(qiáng)的自適應(yīng)能力、學(xué)習(xí)能力自治功能。 目前研制中的智能機(jī)器人智能水平并不高,只能說是智能機(jī)器人的初級(jí)階段。智能機(jī)器人研究中當(dāng)前的核心問題有兩方面:一方面是,提高智能機(jī)器人的自主性,這是就智能機(jī)器人與人的關(guān)系而言,即希望智能機(jī)器人進(jìn)一步獨(dú)立于人,具有更為友善的人機(jī)界面。從長(zhǎng)遠(yuǎn)來說,希望操作人員只
25、要給出要完成的任務(wù),而機(jī)器能自動(dòng)形成完成該任務(wù)的步驟,并自動(dòng)完成它。另一方面是,提高智能機(jī)器人的適應(yīng)性,提高智能機(jī)器人適應(yīng)環(huán)境變化的能力,這是就智能機(jī)器人與環(huán)境的關(guān)系而言,希望加強(qiáng)它們之間的交互關(guān)系。智能機(jī)器人涉及到許多關(guān)鍵技術(shù),這些技術(shù)關(guān)系到智能機(jī)器人的智能性的高低。這些關(guān)鍵技術(shù)主要有以下幾個(gè)方面:多傳感信息耦合技術(shù),多傳感器信息融合就是指綜合來自多個(gè)傳感器的感知數(shù)據(jù)以產(chǎn)生更可靠、更準(zhǔn)確或更全面的信息,經(jīng)過融合的多傳感器系統(tǒng)能夠更加完
26、善、精確地反映檢測(cè)對(duì)象的特性消除信息的不確定性提高信息的可靠性;導(dǎo)航和定位技術(shù),在自主移動(dòng)機(jī)器人導(dǎo)航中,無論是局部實(shí)時(shí)避障還是全局</p><p> 2 系統(tǒng)設(shè)計(jì)方案的分析</p><p><b> 2.1 系統(tǒng)設(shè)計(jì)</b></p><p> 智能循跡機(jī)器人采用后輪驅(qū)動(dòng),左右后輪各用一個(gè)直流減速電機(jī)驅(qū)動(dòng),通過調(diào)制后面兩個(gè)輪子的轉(zhuǎn)速?gòu)亩_(dá)
27、到控制轉(zhuǎn)向的目的在機(jī)器人前部分別四個(gè)紅外反射式傳感器,當(dāng)機(jī)器人左邊的傳感器檢測(cè)到黑線時(shí),說明機(jī)器人向右邊偏移,這時(shí)主控芯片控制左輪電機(jī)減速,機(jī)器人向左邊修正。同理,當(dāng)機(jī)器人的右邊傳感器檢測(cè)到黑線時(shí),主控芯片控制右輪電機(jī)減速,機(jī)器人向右邊修正。當(dāng)黑線在機(jī)器人的中間,中間的傳感器一直檢測(cè)到黑線,這樣機(jī)器人就會(huì)沿著黑線一直行走。</p><p> 2.2 機(jī)器人的選擇</p><p> 在本
28、次智能循跡機(jī)器人的選擇過程中,我們選擇了前兩輪驅(qū)動(dòng),后萬向輪轉(zhuǎn)向的機(jī)器人,即前左右輪分別用兩個(gè)轉(zhuǎn)速和力矩基本完全相同的直流減速電機(jī)進(jìn)行驅(qū)動(dòng),機(jī)器人后部裝一個(gè)萬向輪,這樣當(dāng)我們通過I/O口控制兩個(gè)直流減速電機(jī)的轉(zhuǎn)速和轉(zhuǎn)向時(shí)就可以實(shí)現(xiàn)機(jī)器人的左轉(zhuǎn)、右轉(zhuǎn)和直行,因此我將選擇體積輕容易控制的機(jī)器人作為機(jī)器人。</p><p> 2.3 尋跡模塊設(shè)計(jì)</p><p> 循跡模塊我們可以用光敏電阻
29、組成。光敏電阻的阻值可以跟隨周圍環(huán)境光線的變化而變化當(dāng)光線照射到白線上面時(shí),光線發(fā)射強(qiáng)烈,光線照射到黑線上面時(shí),光線發(fā)射較弱因此當(dāng)光敏電阻在白線和黑線上方時(shí),阻值會(huì)發(fā)生明顯的變化將阻值的變化值經(jīng)過比較器就可以輸出高低電平,但是這種方式受環(huán)境影響大,工作不穩(wěn)定,因此,我們將研究幾種方案,選擇性價(jià)比和各方面更好的紅外傳感器。</p><p> 2.4 總體結(jié)構(gòu)框圖設(shè)計(jì)</p><p> 智
30、能機(jī)器人的總體結(jié)構(gòu)框圖設(shè)計(jì)如圖2.1所示:</p><p> 圖2.1總體結(jié)構(gòu)框圖</p><p><b> 3 硬件設(shè)計(jì)</b></p><p> 3.1 信號(hào)檢測(cè)模塊</p><p> 為了防止因傳感器太少引起的誤動(dòng)作,因而在車體前段安裝了4個(gè)紅外光對(duì)管,有效的減小了誤動(dòng)作的發(fā)生,減小了小車沖出跑道的幾率。
31、 </p><p><b> 3.2 電源模塊</b></p><p> 用6v電池供電,6v經(jīng)“H橋”驅(qū)動(dòng)電機(jī),同時(shí)經(jīng)過7805輸出穩(wěn)定的5v壓為紅外系統(tǒng)、控制系統(tǒng)供電。利用元器件7805實(shí)現(xiàn)輸出穩(wěn)壓5V電壓的功能。其中發(fā)光二級(jí)管顯示該部分是否有電位輸出。電路如圖3.1所示:</p><p> 圖3.1降壓模塊電路圖</p>
32、<p><b> 3.3 傳感器模塊</b></p><p> 原理:這次采用了四個(gè)如圖3.2所示的傳感模塊,利用到的元器件主要有ST188、LM311。當(dāng)紅外光遇到白色紙時(shí)發(fā)生漫反射,反射光被裝在小車上的接收管接收,經(jīng)過比較器LM311(電路如圖3.3所示),使得P1.3輸出低電平;如果遇到黑線則紅外光被吸收,小車上的接收管接收不到紅外光,經(jīng)過LM311使得P1.3輸出高
33、電平。其他三個(gè)同上述原理。單片機(jī)就是否收到反射回來的紅外光為依據(jù)來確定黑線的位置和小車的行走路線電路。</p><p> 圖3.2 傳感器模塊電路</p><p> 圖3.3 比較器LM311的工作原理圖</p><p> 圖中兩芯片的“in+4”腳沒有用做紅外信號(hào)的輸入,但直接接vcc,是為了不讓管腳懸空,利于芯片工作的穩(wěn)定。LM311的輸出管腳以被外界拉
34、低,故接上拉電阻,再接到單片機(jī)管腳。</p><p><b> 3.4 控制模塊</b></p><p> 原理:在這個(gè)模塊中重點(diǎn)通過單片機(jī)對(duì)L298N的操作來控制兩個(gè)電機(jī)的運(yùn)行。具體操作如下表3.1所示:</p><p> 表3.1電機(jī)正反轉(zhuǎn)狀態(tài)圖</p><p> 其中速度的調(diào)節(jié):按一個(gè)固定的頻率來接通和斷開
35、電源,并根據(jù)需要改變一個(gè)周期內(nèi)“接通”和“斷開”時(shí)間的長(zhǎng)短。通過改變直流電機(jī)電樞上電壓的“占空比”來改變平均電壓的大小,從而控制電動(dòng)機(jī)的轉(zhuǎn)速。當(dāng)某一車輪的速度不相等時(shí),即可實(shí)現(xiàn)車輪的左右偏轉(zhuǎn)。單片機(jī)部分控制模塊電路如圖3.4所示: </p><p> 圖3.4 單片機(jī)部分控制模塊電路圖</p><p> 3.5 電機(jī)驅(qū)動(dòng)模塊 </p><p> 電機(jī)驅(qū)動(dòng)模塊
36、擬用兩種解決方案,分別如下: 1.采用繼電器對(duì)電動(dòng)機(jī)的開或關(guān)進(jìn)行控制,通過開關(guān)的切換對(duì)小車的速度進(jìn)行調(diào)整。此方案的優(yōu)點(diǎn)是電路較為簡(jiǎn)單,缺點(diǎn)是繼電器的響應(yīng)時(shí)間慢,易損壞,壽命較短,可靠性不高。2.采用功率三極管作為功率放大器的輸出控制直流電機(jī)。線性型驅(qū)動(dòng)的電路結(jié)構(gòu)和原理簡(jiǎn)單,加速能力強(qiáng),采用由達(dá)林頓管組成的H型橋式電路(如圖3.5)。用單片機(jī)控制達(dá)林頓管使之工作在占空比可調(diào)的開關(guān)狀態(tài)下,精確調(diào)整電動(dòng)機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止
37、模式下,效率非常高,H型橋式電路保證了簡(jiǎn)單的實(shí)現(xiàn)轉(zhuǎn)速和方向的控制,電子管的開關(guān)速度很快,穩(wěn)定性也極強(qiáng),是一種廣泛采用的PWM調(diào)速技術(shù)。</p><p> 圖3.5 H型橋式電路</p><p> 實(shí)際使用的時(shí)候,用分立原件制作H橋是很麻煩的,好在現(xiàn)在市面上有很多封裝好的H橋路集成電路,接上電源,電機(jī)和控制信號(hào)就可以使用了,在額定的電壓和電流內(nèi)使用非常方便可靠。比如常用的L293D、L
38、298N、TA7257P、SN754410等,現(xiàn)在市面上有很多這些芯片,我選用了L298N驅(qū)動(dòng)芯片如圖3.6所示:</p><p> 圖3.6 L298N 驅(qū)動(dòng)芯片</p><p> L298N功能引腳圖如表4.1所示:</p><p> 表4.1 L298N功能引腳圖</p><p><b> 4 軟件設(shè)計(jì)</b
39、></p><p><b> 4.1 程序流程圖</b></p><p><b> 系統(tǒng)程序流程圖</b></p><p> 機(jī)器人進(jìn)入循跡模式后,即開始不斷地掃描與探測(cè)器連接的單片機(jī)I/O口,一旦檢測(cè)到某個(gè)口有信號(hào)變化,程序就進(jìn)入判斷程序,把相應(yīng)的信號(hào)發(fā)送給電動(dòng)機(jī)從而糾正小車的狀態(tài)。</p>&
40、lt;p><b> 4.2 程序設(shè)計(jì)</b></p><p> 循跡機(jī)器人的前面偶四個(gè)傳感器至左向右分別為傳感器1,傳感器2,傳感器3,傳感器4。本機(jī)器人主要是通過四個(gè)傳感器實(shí)現(xiàn)循跡功能,其實(shí)物圖如圖4.1所示,以下是對(duì)本設(shè)計(jì)軟件部分功能的說明。</p><p> 圖4.1 循跡機(jī)器人實(shí)物圖</p><p><b> 程
41、序的初始化:</b></p><p> void init() </p><p><b> { </b></p><p><b> cgq2=1;</b></p><p><b> cgq3=1;</b></p><p> TM
42、OD=0X01; </p><p> TH0=(65536-100)/256; </p><p> TL0=(65536-100)%256; </p><p><b> EA=1; </b></p><p><b> ET0=1; </b></p><p><b
43、> TR0=1; </b></p><p><b> ENA=1; </b></p><p><b> ENB=1; </b></p><p><b> } ;</b></p><p> 當(dāng)傳感器1和傳感器4的顯示燈為暗(即檢測(cè)到為白色);傳感器2和
44、傳感器3的顯示燈為亮(即檢測(cè)到為黑色),進(jìn)入以下走直線函數(shù):</p><p> void straight() </p><p><b> { </b></p><p><b> PWM1=20; </b></p><p><b> PWM2=20; </b></
45、p><p><b> IN1=1; </b></p><p><b> IN2=0; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b>
46、; }</b></p><p> 當(dāng)傳感器1,傳感器4和傳感器3的顯示燈為暗(即檢測(cè)到為白色);傳感器2的顯示燈為亮(即檢測(cè)到為黑色),進(jìn)入以下左轉(zhuǎn)彎函數(shù)(轉(zhuǎn)彎?。?lt;/p><p> void turn_left1() </p><p><b> { </b></p><p><b>
47、 PWM1=5; </b></p><p><b> PWM2=20; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b><
48、;/p><p><b> IN2=0; </b></p><p><b> } </b></p><p> 當(dāng)傳感器1,傳感器4和傳感器2的顯示燈為暗(即檢測(cè)到為白色);傳感器3的顯示燈為亮(即檢測(cè)到為黑色),進(jìn)入以下左轉(zhuǎn)彎函數(shù)(轉(zhuǎn)彎小):</p><p> void turn_right1(
49、) </p><p><b> { </b></p><p><b> PWM1=20; </b></p><p><b> PWM2=5; </b></p><p><b> IN3=1; </b></p><p><
50、;b> IN4=0; </b></p><p><b> IN1=1; </b></p><p><b> IN2=0; </b></p><p><b> } </b></p><p> 當(dāng)傳感器3,傳感器4和傳感器2的顯示燈為暗(即檢測(cè)到為白色)
51、;傳感器1的顯示燈為亮(即檢測(cè)到為黑色),進(jìn)入以下左轉(zhuǎn)彎函數(shù)(轉(zhuǎn)彎大):</p><p> void turn_left3() //左轉(zhuǎn)彎函數(shù) 3 (轉(zhuǎn)彎最大)</p><p><b> { </b></p><p><b> PWM1=5; </b></p><p><b>
52、PWM2=40; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></p><p><b> IN2=0; </b><
53、/p><p><b> } </b></p><p> 當(dāng)傳感器1,傳感器3和傳感器2的顯示燈為暗(即檢測(cè)到為白色);傳感器4的顯示燈為亮(即檢測(cè)到為黑色)進(jìn)入以下左轉(zhuǎn)彎函數(shù)(轉(zhuǎn)彎大):</p><p> void turn_right3() //右轉(zhuǎn)彎函數(shù) 3 (轉(zhuǎn)彎最大)</p><p><b> {
54、</b></p><p><b> PWM1=40; </b></p><p><b> PWM2=5; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p>
55、<p><b> IN1=1; </b></p><p><b> IN2=0; </b></p><p><b> }</b></p><p> 循跡功能的判斷程序: </p><p> void infrared() </p><
56、p><b> { </b></p><p> uchar flag;</p><p> if((cgq1==0)&(cgq2==0)&(cgq3==0)&(cgq4==0)) // 直走</p><p> {flag=0;} </p><p> else if((cgq1==1)
57、&(cgq2==0)&(cgq3==0)&(cgq4==1)) </p><p> {if((a%2)==0)</p><p> {flag=1;init();a++;}//左小轉(zhuǎn)</p><p><b> else</b></p><p> {flag=2;init();a++;}
58、//右小轉(zhuǎn)</p><p><b> } </b></p><p> else if((cgq1==0)&(cgq2==0)&(cgq3==1)&(cgq4==0)) //左小轉(zhuǎn)</p><p> {flag=2;} </p><p> else if((cgq1==0)&
59、(cgq2==1)&(cgq3==0)&(cgq4==0))//右小轉(zhuǎn) </p><p> {flag=1;} </p><p> else if(((cgq1==1)&(cgq3==1)&(cgq4==0))|((cgq1==1)&(cgq2==1)&(cgq4==0))) // 左中轉(zhuǎn)</p><p>&l
60、t;b> {</b></p><p><b> {flag=4;}</b></p><p><b> }</b></p><p> else if(((cgq1==0)&(cgq3==1)&(cgq4==1))|((cgq1==0)&(cgq2==1)&(cgq4=
61、=1))) //右中轉(zhuǎn)</p><p><b> {</b></p><p><b> {flag=5;}</b></p><p><b> }</b></p><p> else if((cgq1==0)&(cgq2==0)&(cgq3==0)&am
62、p;(cgq4==1)) //左大轉(zhuǎn)</p><p> {flag=7;delay(3);} </p><p> else if((cgq1==1)&(cgq2==0)&(cgq3==0)&(cgq4==0))//右大轉(zhuǎn) </p><p> {flag=6;delay(3);} </p><p>
63、 else flag=0; </p><p> switch (flag) </p><p><b> { </b></p><p> case 0: straight(); break; //直走</p><p> case 1: turn_left1(); break; //左轉(zhuǎn)1</p>
64、;<p> case 2: turn_right1(); break; // 右轉(zhuǎn)1</p><p> case 3: turn_back(); break; // 返回</p><p> case 4: turn_left2(); break; //左轉(zhuǎn)2</p><p> case 5: turn_right2(); break; /
65、/ 右轉(zhuǎn)2</p><p> case 6: turn_left3(); break; //左轉(zhuǎn)3</p><p> case 7: turn_right3(); break; // 右轉(zhuǎn)3</p><p> default: break; </p><p><b> } </b></p><
66、;p><b> }</b></p><p><b> 主函數(shù):</b></p><p> void main(void) </p><p><b> { </b></p><p><b> init(); </b></p>&
67、lt;p> delay(1); </p><p><b> while(1)</b></p><p><b> { </b></p><p> infrared(); </p><p><b> } </b></p><p><b&
68、gt; }</b></p><p> 4.3 KELL簡(jiǎn)介</p><p> Keil C51單片機(jī)軟件開發(fā)系統(tǒng)可用于編輯C或匯編源文件。然后分別由C51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件與庫(kù)文件一起經(jīng)LIB51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如EPROM
69、 中。</p><p> 打開Keil軟件后,出現(xiàn)如圖4.1所示界面。</p><p> 圖4.1 Keil 軟件主界面</p><p> 點(diǎn)擊Project--New Project。可以新建一個(gè)工程,如圖4.2所示。</p><p> 圖4.2 Keil軟件新建工程界面</p><p> 點(diǎn)擊會(huì)出現(xiàn)的對(duì)話
70、框中選擇工程存在路徑(如圖4.3所示),單擊“保存”后,出現(xiàn)界面。在此界面上選擇電路板上所用的單片機(jī)型號(hào)(如圖4.4所示),單擊“確定”。</p><p> 圖4.3 保存路徑界面</p><p> 圖4.4 選擇電路板上所用的單片機(jī)型號(hào)界面</p><p> 設(shè)置完成后,軟件會(huì)提示是否將8051上電初始化程序添加入工程。這個(gè)一般選“否”。這樣就建立好了一個(gè)空
71、的51工程(如圖4.5所示)。</p><p> 圖4.5 建立空的51工程界面</p><p> 點(diǎn)擊File--New,便建立了一個(gè)空的文本框(如圖4.6所示)。</p><p> 圖4.6 建立空文本框界面</p><p> 到現(xiàn)在為止,就可以開始在里面輸入代碼了。保存時(shí)注意:如果是用C語言程序,則將文本保存成*.c.將寫完的程
72、序添加到工程里面,如圖4.7所示,在左邊Project Workspace里的Source Group 1上右擊,選擇Add Files to Group ’Source Group 1’。在打開的對(duì)話框中,選擇剛存的文件路徑和對(duì)應(yīng)的擴(kuò)展名。此時(shí),程序就添加進(jìn)了這個(gè)工程。</p><p> 圖4.7 添加工程界面</p><p> 下一步,就開始編譯剛輸入進(jìn)去的代碼。如圖4.8所示,接
73、著,Keil會(huì)打出下面的提示:0 Error(s), 0 Warning(s)。</p><p> 圖4.8 程序運(yùn)行圖</p><p> 建立工程的時(shí)候,默認(rèn)是不生成HEX文件的,得在編譯做如下設(shè)置:在Project Workspace里Target 1上右擊,選擇“Options for Target ‘Target 1”。出現(xiàn)如圖4.9所示對(duì)話框,選擇“Output”按圖示,將箭
74、頭所指的多選框勾上,點(diǎn)“確定”?,F(xiàn)在再點(diǎn)擊重新編譯,就會(huì)在工程所在文件夾里生成HEX文件[9] [10]。</p><p> 圖4.9 生成HEX文件界面</p><p><b> 5 安裝與調(diào)試</b></p><p> 5.1 智能循跡機(jī)器人實(shí)物圖</p><p> 智能循跡機(jī)器人實(shí)物圖如圖5.1所示,該機(jī)
75、器人是最終的結(jié)果,可以實(shí)現(xiàn)智能循跡功能。</p><p> 圖5.1 智能循跡機(jī)器人實(shí)物圖</p><p> 5.2 傳感部分的分析及調(diào)試</p><p> 傳感器模塊的檢測(cè),在看似簡(jiǎn)單的傳感器部分,其檢測(cè)有著很大的學(xué)問。以下便是分析和調(diào)試具體的描述:</p><p> 首先要說明傳感器正常的狀態(tài)是ST188遇到黑線時(shí)P1.3接口輸出
76、高電壓,發(fā)光二極管導(dǎo)通,有亮光;ST188遇到白紙時(shí)P1.3輸出低電壓,發(fā)光二極管不導(dǎo)通,無亮光。</p><p> 出現(xiàn)問題1-----當(dāng)接通電源時(shí),我發(fā)現(xiàn)無論怎么調(diào)節(jié)滑動(dòng)變阻器發(fā)光二極管一直處于發(fā)光狀態(tài),則電路出現(xiàn)問題。通過利用萬能表,發(fā)現(xiàn)LM311的7端口和8端口短接,通過分析錯(cuò)誤原因只會(huì)有以下兩種:7端口和8端口之間連接的電阻短路,或者LM311的7端口和8端口短路。利用控制變量法發(fā)現(xiàn)7端口和8端口都與
77、焊板邊沿相接,而在邊沿所有的焊點(diǎn)都相互連接,故7端口和8端口短路。</p><p> 出現(xiàn)問題2-----首先我將ST188元件的C端和E端短接,發(fā)光二極管有亮光變暗,根據(jù)電路知識(shí)此時(shí)發(fā)光二極管應(yīng)該是完全沒有亮光才是正常的,則問題很可能出現(xiàn)在ST188元件,通過仔細(xì)檢查發(fā)現(xiàn)E端口和K端口沒有接地。接地后出現(xiàn)正常情況。</p><p> 5.3 單片機(jī)控制部分的分析調(diào)試</p>
78、;<p> 由于此部分線路比較多,我又對(duì)其進(jìn)行了第二次分析調(diào)試。因?yàn)榇瞬糠志€路沒有明顯的現(xiàn)象,所以只能通過萬用表進(jìn)行調(diào)試。此部分的檢查中發(fā)現(xiàn)了一處錯(cuò)誤----連接復(fù)位的另一端沒有接地。</p><p> 電路的分析及調(diào)試,在一般看來焊板邊沿的焊點(diǎn)相互孤立的,但在在這次智能循環(huán)機(jī)器人的制作當(dāng)中,卻出出現(xiàn)了比較特殊的情況,邊沿的焊點(diǎn)都是相互連接的。在以后焊接的時(shí)候,我們還要對(duì)焊板進(jìn)行觀察,注意焊板中
79、特殊的焊點(diǎn)。另外利用理論知識(shí)對(duì)調(diào)試起到了很好的指導(dǎo)作用。例如,ST188的C、E兩端都短接利用電路知識(shí),我們可以知道此時(shí)P1.3端口輸出為低電壓,則發(fā)光二極管不會(huì)發(fā)光。通過這個(gè)現(xiàn)象我們可以發(fā)現(xiàn)是ST188有問題還是后面的連接的線路有問題,這樣節(jié)約了時(shí)間。</p><p> 編寫程序的難點(diǎn)主要是怎樣經(jīng)過“8”節(jié)點(diǎn),我編寫的思路是:當(dāng)?shù)谝淮谓訒r(shí),四個(gè)傳感器的發(fā)光二極管將會(huì)出現(xiàn)“亮亮亮滅”或者“亮滅亮滅”的結(jié)果,此時(shí)
80、小車進(jìn)行一次左偏,而后小車傳感器的發(fā)光二極管會(huì)出現(xiàn)“亮滅滅亮”的情況,此時(shí)小車向右轉(zhuǎn)(變量a++;);當(dāng)機(jī)器人再次經(jīng)過這“8”節(jié)點(diǎn)時(shí),四個(gè)傳感器的發(fā)光二極管會(huì)出現(xiàn)“滅亮亮亮”或者“滅亮滅亮”的情況,此時(shí)機(jī)器人右轉(zhuǎn),之后機(jī)器人又會(huì)出現(xiàn)在進(jìn)行判斷(a除以2取其余數(shù)與0進(jìn)行判斷)后,機(jī)器人左轉(zhuǎn),這樣機(jī)器人便通過了兩次節(jié)點(diǎn),循跡機(jī)器人循跡過程圖如下:</p><p> 圖5.2 循跡過程1</p><
81、;p> 圖5.3 循跡過程2</p><p><b> 圖5.4循跡過程3</b></p><p><b> 圖5.5循跡過程4</b></p><p><b> 圖5.6循跡過程5</b></p><p><b> 圖5.7循跡過程6</b&g
82、t;</p><p><b> 6 結(jié)語</b></p><p> 本次設(shè)計(jì)系統(tǒng)地介紹了智能循跡機(jī)器人電路系統(tǒng)的硬件電路設(shè)計(jì)以及軟件設(shè)計(jì)。在總體方案設(shè)計(jì)中以紅外對(duì)管作為本系統(tǒng)的傳感器,STC89C52單片機(jī)作為主要的控制元器件。</p><p> 本次畢業(yè)設(shè)計(jì)的整個(gè)研究與設(shè)計(jì)過程包括選題、設(shè)計(jì)以及完善等。首先,在選題方面查閱了很多與題目
83、有關(guān)的資料文獻(xiàn),并且制定設(shè)計(jì)方案,進(jìn)行了設(shè)計(jì)的總體規(guī)劃。然后將這些方案運(yùn)用到設(shè)計(jì)環(huán)節(jié)中。其次,在制定的方案基礎(chǔ)上對(duì)硬件以及軟件進(jìn)行設(shè)計(jì),并在開發(fā)板上進(jìn)行硬件功能調(diào)試。最后,針對(duì)設(shè)計(jì)的內(nèi)容進(jìn)一步完善,以求達(dá)到最佳設(shè)計(jì)效果。此次畢業(yè)設(shè)計(jì)過程中,在完成設(shè)計(jì)任務(wù)的同時(shí),也讓我系統(tǒng)性地全面地掌握了單片機(jī)的相關(guān)技術(shù),本次畢業(yè)設(shè)計(jì)使我更加深刻地認(rèn)識(shí)到理論來源于實(shí)際的含義。在和同學(xué)以及老師的就相關(guān)問題的互相討論交流中,我認(rèn)識(shí)到自己的很多不足,但在這些不
84、足中我又學(xué)到了很多知識(shí),使我的綜合應(yīng)用能力得到了很大的提高。</p><p><b> 參考文獻(xiàn)</b></p><p> 1 張友德等,單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn),第四版,上海:復(fù)旦大學(xué)出版社,2003</p><p> 2 吳黎明等,單片機(jī)原理及應(yīng)用技術(shù),北京:科學(xué)出版社,2005</p><p> 3 劉軍
85、等,單片機(jī)原理與接口技術(shù),江蘇:華東理工大學(xué)出版社,2006</p><p> 4 丁元杰,單片微機(jī)原理及應(yīng)用[M],北京:機(jī)械工業(yè)出版社,2001</p><p> 5 金偉正,儀表技術(shù)與傳感器[J],武漢:武漢科大學(xué)報(bào),2000, 27(3):17-18.</p><p> 6 王燕等,檢測(cè)與轉(zhuǎn)換技術(shù)[J],中原工學(xué)院學(xué)報(bào),2007,11(12):21-2
86、2</p><p> 7 嚴(yán)天峰,A/D轉(zhuǎn)換器及其在單片機(jī)中的應(yīng)用[J],電子世界,2003,01(9):05-07</p><p> 8 杜洋,A/D轉(zhuǎn)換芯片ADC0832的應(yīng)用[J],電子技術(shù), 2005,10(11):1-7</p><p> 9 程明等,LED顯示原理[J],電訊技術(shù),2004,14(3):32-33</p><p&
87、gt; 10王秋爽,曾兆龍 單片機(jī)開發(fā)基礎(chǔ)與經(jīng)典設(shè)計(jì)實(shí)例北京機(jī)械工業(yè)出版社</p><p> 11華成英,童詩(shī)白模擬電子技術(shù)基礎(chǔ)第四版高等教育出版社</p><p> 12吳錘紅 MCS-51微機(jī)原理與接口技術(shù)廈門大學(xué)出版社</p><p> 13張毅剛 單片機(jī)原理及應(yīng)用2003年12月第一版高等教育出版社</p><p>
88、 14 WANG J L,SUN Y,LIU Z J,etal. Route planning based on Floyd algorithm for intelligence transportation system[J].IEEE International Conference on Integration Technology,2007(3):20-24</p><p><b> 致 謝
89、</b></p><p> 歲月靜好,時(shí)光流逝,不經(jīng)意間,在南昌航空大學(xué)科技學(xué)院大學(xué)我已經(jīng)度過了四年時(shí)光?;叵朐诳圃簩W(xué)習(xí)和生活的四年時(shí)光,我感慨良多。這四年就像是一次愉悅的旅行,在旅途中,我的知識(shí)積累、性格和心境都發(fā)生了顯然的正向改變,這對(duì)于我的將來有著深遠(yuǎn)的影響,它將伴隨我的一生,成為我人生中最寶貴的財(cái)富。其中每次成長(zhǎng)都離不開老師和親友們的鼓勵(lì)與幫助,在大學(xué)生活即將結(jié)束之時(shí),我在這里向他們致以衷心
90、的謝意。</p><p> 首先要感謝我的導(dǎo)師彭潔老師。彭老師學(xué)識(shí)淵博、治學(xué)嚴(yán)謹(jǐn)、洞察敏銳。本學(xué)位論文實(shí)在導(dǎo)師彭潔老師的精心指導(dǎo)下完成的。彭潔老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、敏銳的洞察力、開闊的思維方式深深地影響著我,使我學(xué)會(huì)了解決問題和處理問題的方法。從課題的選擇到畢設(shè)的最終完成,彭老師都始終給予我細(xì)心地指導(dǎo)和不懈的支持。感謝導(dǎo)師在百忙之中花大量時(shí)間來修改我的論文,使我的工作能順利進(jìn)行。借此論文完成之際,謹(jǐn)向敬愛的恩師致
91、以衷心的感謝!</p><p> 感謝在一起愉快的度過大學(xué)生活的信工系1082022班各位同學(xué),是你們讓我的大學(xué)生活充滿了歡笑、快樂,也讓我成長(zhǎng),祝愿我們都有美好的未來!特別感謝我的室友,他們?cè)趯W(xué)習(xí)上給了我很大的鼓勵(lì)和幫助,他們的陪伴讓我度過了短暫而快樂的大學(xué)生活。</p><p> 畢業(yè)論文是再一次系統(tǒng)學(xué)習(xí)的過程,畢業(yè)論文的完成,同樣也意味著新的社會(huì)生活的開始。我將銘記我是一名南昌航
92、空大學(xué)科技學(xué)院的學(xué)子,在今后的工作中把南昌航空大學(xué)科技學(xué)院的優(yōu)良傳統(tǒng)美德發(fā)揚(yáng)光大。</p><p> 最后,向所有關(guān)心和幫助過我的人致以衷心的感謝,同時(shí)感謝各位評(píng)委老師在百忙之中抽出寶貴的時(shí)間對(duì)我們的學(xué)術(shù)指導(dǎo),感謝你們!</p><p><b> 附錄</b></p><p><b> 程序清單:</b></p
93、><p> #include<reg52.h> </p><p> #define uchar unsigned char </p><p> #define uint unsigned int </p><p> uchar PWM1,PWM2,i,j; //右左占空比標(biāo)志</p><p><b
94、> uint a=0;</b></p><p> sbit cgq1=P1^0; //從右往左的傳感器編號(hào)</p><p> sbit cgq2=P1^1;</p><p> sbit cgq3=P1^2;</p><p> sbit cgq4=P1^3;</p><
95、p> sbit ENA=P2^7;</p><p> sbit ENB=P2^6;</p><p> sbit IN1=P2^5;</p><p> sbit IN2=P2^4; </p><p> sbit IN3=P2^3;</p><p> s
96、bit IN4=P2^2;</p><p> void delay(uint z) //延時(shí)1ms</p><p><b> { </b></p><p><b> uchar i; </b></p><p> while(z--) </p><p><
97、b> {</b></p><p> for(i=0;i<121;i++);</p><p><b> } </b></p><p><b> }</b></p><p> void init() //初始化</p><p><b&
98、gt; { </b></p><p><b> cgq2=1;</b></p><p><b> cgq3=1;</b></p><p> TMOD=0X01; </p><p> TH0=(65536-100)/256; </p><p> TL0=
99、(65536-100)%256; </p><p><b> EA=1; </b></p><p><b> ET0=1; </b></p><p><b> TR0=1; </b></p><p><b> ENA=1; </b></p&g
100、t;<p><b> ENB=1; </b></p><p><b> } </b></p><p> void time0(void)interrupt 1 //空占比設(shè)置</p><p><b> { </b></p><p><b>
101、 i++; </b></p><p><b> j++; </b></p><p> if(i<=PWM1)</p><p><b> ENA=1; </b></p><p><b> else </b></p><p>
102、<b> ENA=0; </b></p><p> if(i==40) </p><p><b> i=0; </b></p><p> if(j<=PWM2)</p><p><b> ENB=1; </b></p><p><b
103、> else</b></p><p><b> ENB=0; </b></p><p><b> if(j==40)</b></p><p><b> j=0; </b></p><p> TH0=(65536-100)/256; </p>
104、;<p> TL0=(65536-100)%256; </p><p><b> }</b></p><p> void straight() //走直線函數(shù) </p><p><b> { </b></p><p><b> PWM1=20; </b>
105、</p><p><b> PWM2=20; </b></p><p><b> IN1=1; </b></p><p><b> IN2=0; </b></p><p><b> IN3=1; </b></p><p>&
106、lt;b> IN4=0; </b></p><p><b> }</b></p><p> void turn_left1() //左轉(zhuǎn)彎函數(shù) 1 (轉(zhuǎn)彎?。?lt;/p><p><b> { </b></p><p><b> PWM1=5; </b>
107、;</p><p><b> PWM2=20; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></p><p>
108、<b> IN2=0; </b></p><p><b> } </b></p><p> void turn_right1() //右轉(zhuǎn)彎函數(shù) 1(轉(zhuǎn)彎小)</p><p><b> { </b></p><p><b> PWM1=20; </b
109、></p><p><b> PWM2=5; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></p><p&g
110、t;<b> IN2=0; </b></p><p><b> } </b></p><p> void turn_left2() //左轉(zhuǎn)彎函數(shù) 2(轉(zhuǎn)彎較大)</p><p><b> { </b></p><p><b> PWM1=5; </
111、b></p><p><b> PWM2=30; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></p><p
112、><b> IN2=0; </b></p><p><b> } </b></p><p> void turn_right2() //右轉(zhuǎn)彎函數(shù) 2 (轉(zhuǎn)彎較大)</p><p><b> { </b></p><p><b> PWM1=30;
113、 </b></p><p><b> PWM2=5; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></p>
114、<p><b> IN2=0; </b></p><p><b> } </b></p><p> void turn_left3() //左轉(zhuǎn)彎函數(shù) 3 (轉(zhuǎn)彎最大)</p><p><b> { </b></p><p><b> PWM1=
115、5; </b></p><p><b> PWM2=40; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></p>
116、;<p><b> IN2=0; </b></p><p><b> } </b></p><p> void turn_right3() //右轉(zhuǎn)彎函數(shù) 3 (轉(zhuǎn)彎最大)</p><p><b> { </b></p><p><b> P
117、WM1=40; </b></p><p><b> PWM2=5; </b></p><p><b> IN3=1; </b></p><p><b> IN4=0; </b></p><p><b> IN1=1; </b></
118、p><p><b> IN2=0; </b></p><p><b> }</b></p><p> void infrared() //循跡 </p><p><b> { </b></p><p> uchar flag;</p>
119、<p> if((cgq1==0)&(cgq2==0)&(cgq3==0)&(cgq4==0)) // 直走</p><p> {flag=0;} </p><p> else if((cgq1==1)&(cgq2==0)&(cgq3==0)&(cgq4==1)) </p><p> {if((a
120、%2)==0)</p><p> {flag=1;init();a++;}//左小轉(zhuǎn)</p><p><b> else</b></p><p> {flag=2;init();a++;}//右小轉(zhuǎn)</p><p><b> } </b></p><p>
121、 else if((cgq1==0)&(cgq2==0)&(cgq3==1)&(cgq4==0)) //左小轉(zhuǎn)</p><p> {flag=2;} </p><p> else if((cgq1==0)&(cgq2==1)&(cgq3==0)&(cgq4==0))//右小轉(zhuǎn) </p><p> {flag=
122、1;} </p><p> else if(((cgq1==1)&(cgq3==1)&(cgq4==0))|((cgq1==1)&(cgq2==1)&(cgq4==0))) // 左中轉(zhuǎn)</p><p><b> {</b></p><p><b> {flag=4;}</b>&l
123、t;/p><p><b> }</b></p><p> else if(((cgq1==0)&(cgq3==1)&(cgq4==1))|((cgq1==0)&(cgq2==1)&(cgq4==1))) //右中轉(zhuǎn)</p><p><b> {</b></p><p&g
124、t;<b> {flag=5;}</b></p><p><b> }</b></p><p> else if((cgq1==0)&(cgq2==0)&(cgq3==0)&(cgq4==1)) //左大轉(zhuǎn)</p><p> {flag=7;delay(3);} </p>
125、<p> else if((cgq1==1)&(cgq2==0)&(cgq3==0)&(cgq4==0))//右大轉(zhuǎn) </p><p> {flag=6;delay(3);} </p><p> else flag=0; </p><p> switch (flag) </p><p>&
126、lt;b> { </b></p><p> case 0: straight(); break; //直走</p><p> case 1: turn_left1(); break; //左轉(zhuǎn)1</p><p> case 2: turn_right1(); break; // 右轉(zhuǎn)1</p><p>
127、case 3: turn_back(); break; // 返回</p><p> case 4: turn_left2(); break; //左轉(zhuǎn)2</p><p> case 5: turn_right2(); break; // 右轉(zhuǎn)2</p><p> case 6: turn_left3(); break; //左轉(zhuǎn)3</p>
128、<p> case 7: turn_right3(); break; // 右轉(zhuǎn)3</p><p> default: break; </p><p><b> } </b></p><p><b> }</b></p><p> void main(void) </p
129、><p><b> { </b></p><p><b> init(); </b></p><p> delay(1); </p><p><b> while(1)</b></p><p><b> { </b></
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能循跡機(jī)器人設(shè)計(jì)(軟件部分)
- 智能循跡機(jī)器人設(shè)計(jì)(軟件部分)【畢業(yè)設(shè)計(jì)論文】
- 自動(dòng)化畢業(yè)論文智能循跡機(jī)器人設(shè)計(jì)(硬件部分)
- 智能循跡機(jī)器人設(shè)計(jì)(軟件部分).doc
- 開題報(bào)告智能循跡機(jī)器人設(shè)計(jì)(軟件部分)
- 機(jī)械工程及其自動(dòng)化畢業(yè)論文循跡物料搬運(yùn)機(jī)器人設(shè)計(jì)
- 智能循跡機(jī)器人(硬件部分)設(shè)計(jì)【畢業(yè)論文】
- 循跡物料搬運(yùn)機(jī)器人設(shè)計(jì)畢業(yè)論文
- 開題報(bào)告智能循跡機(jī)器人設(shè)計(jì)(硬件部分)
- 自動(dòng)化畢業(yè)論文基于單片機(jī)的智能交通燈設(shè)計(jì)(軟件部分)
- 智能循跡機(jī)器人設(shè)計(jì)開題報(bào)告
- 電氣自動(dòng)化循跡小車畢業(yè)論文
- 智能循跡機(jī)器人(硬件部分)論文.doc
- 智能循跡機(jī)器人(硬件部分)
- 遙控機(jī)器人設(shè)計(jì)畢業(yè)論文
- 工業(yè)機(jī)器人設(shè)計(jì)畢業(yè)論文
- 電子迎賓機(jī)器人設(shè)計(jì)-畢業(yè)論文
- 畢業(yè)論文-家庭清潔機(jī)器人設(shè)計(jì)
- 自動(dòng)化畢業(yè)論文智能小車的設(shè)計(jì)
- 畢業(yè)論文_巡跡廣告機(jī)器人設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論