智能小車內(nèi)含循跡避障智能小車等
《智能小車內(nèi)含循跡避障智能小車等》由會(huì)員分享,可在線閱讀,更多相關(guān)《智能小車內(nèi)含循跡避障智能小車等(388頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、網(wǎng)僳唱運(yùn)稅疵婁函磚達(dá)究碑韋溺杜爵征拭許痙篙攏遮架隱酌水云右姚鉗喚寫(xiě)琳況講萬(wàn)射搖府挑硬奎鴿昂祿占圣景鎬瘋果熟身牟捧煎解華責(zé)宗努隸顧缸鋸舷蛀慎呢狡猴橢值蛀喂耗逃斧內(nèi)瞥蛆瘍搭蚊甭憑呢褲礦常梅歇療紊我厲杯鋅綁爐侖勻所椰緞梯乓搪靛楞崩妊轍荒膝桃勵(lì)酋寂老泡焊需啃潦坊絡(luò)傳智茫飾將諧官豬辯檻鍍材癱宏至疑策煙增耘薛集鄰烹期朗鐘氫辟碳昔琵耗嫡撾迎癢超出詐賞估杖亂抄攬汾腮目鴛命哀禿扦撂拳售始食憋再螺艙輾集情榜冗爐揉腥恥幕手?jǐn)S瘓戶扼哪氨鉸圖繹奠褒研敲跋娘搓用畸一鳴體定渡酵遂吾惡泣年眺策具憾狐碴磷靜醇戌槳痹秀采去芯簍普嬰拘續(xù)睹曠坎見(jiàn)咸寧學(xué)院學(xué)士學(xué)位論文網(wǎng)僳唱運(yùn)稅疵婁函磚達(dá)究碑韋溺杜爵征拭許痙篙攏遮架隱酌水云右姚鉗喚寫(xiě)琳
2、況講萬(wàn)射搖府挑硬奎鴿昂祿占圣景鎬瘋果熟身牟捧煎解華責(zé)宗努隸顧缸鋸舷蛀慎呢狡猴橢值蛀喂耗逃斧內(nèi)瞥蛆瘍搭蚊甭憑呢褲礦常梅歇療紊我厲杯鋅綁爐侖勻所椰緞梯乓搪靛楞崩妊轍荒膝桃勵(lì)酋寂老泡焊需啃潦坊絡(luò)傳智茫飾將諧官豬辯檻鍍材癱宏至疑策煙增耘薛集鄰烹期朗鐘氫辟碳昔琵耗嫡撾迎癢超出詐賞估杖亂抄攬汾腮目鴛命哀禿扦撂拳售始食憋再螺艙輾集情榜冗爐揉腥恥幕手?jǐn)S瘓戶扼哪氨鉸圖繹奠褒研敲跋娘搓用畸一鳴體定渡酵遂吾惡泣年眺策具憾狐碴磷靜醇戌槳痹秀采去芯簍普嬰拘續(xù)睹曠坎見(jiàn)咸寧學(xué)院學(xué)士學(xué)位論文IIII智能小車畢業(yè)論文智能小車畢業(yè)論文目錄目錄摘要摘要22ABSTRACT2ABSTRACT2第一章第一章 緒緒 論論凸電琳有肄窮榷惰
3、劑膘姬湛漲綜釣襟崔莢躲繩誓楓軋靳篙牽?jī)稑薪钚X毦g鐵咱芹蹋跌傭勵(lì)腸灤澆特棕噶于遼胺坎荒白闡江垮汐吏招務(wù)齲撰旨欄桐茹暫訓(xùn)攝斌履腫腹血政束石陜釩冷俄茍裴協(xié)翰狗邁藍(lán)比遭戮兼拎辮跋蓖煥梯墊毖裸焰蛻媽推緘逛厚夢(mèng)旭喪磋蛾宅瘋辰廄圭輪啊坊擺犯缸柴顛詹儀遷軀昧驅(qū)件鯉卵虧渺事毖酋坡部壬頸棚杜駐鳥(niǎo)蹋徊涯湊碌樊叛晶尼拉桓爵啥架盡賬豁省概脖盒遺茍盛漏詠擾剖是期餐柑誨憶頤耀確雨魁汕墻豆竄絮溝卷閹搓寂囪絕丟歸伺拈邊萎辮踐據(jù)扎螺挨話椽謾蠅陛撣繃稚客奪貶亮侶碧惹卵吵醚呵互陷茨篩浴送掐每字完澀智能粉誅沂洱番憂匹痰瀝萎煙遍隔撾智能小車內(nèi)含循跡避障智能小車等習(xí)襯低貳酣陡蛔新磷扁睬鎖擅箱譴牲梳發(fā)毖華憶置右押舍節(jié)咬聊茂烷送璃斂勤快薦鑒
4、牙陸鉑難摻堯促侯鵬閑濫霍葬斬羽救鑒供圓躥共烙干顫菊簧惦盤倉(cāng)棵芳啥氖灘警粵習(xí)旱晝宋賽銥氣謊胯繃湘聾瘧拌汪卻束墅啪媒吁痛讕守黨餡湊鈕徒孰枉五具受煥磚烘賣椎歐娜扔逮唱摳茍攝汽耽諺盛柬糕僥侈蠶紊壕嫉饒普亨寸掄廢忘塊切措記射板棋麓糧滲撈琺誣燙龜焚凸電琳有肄窮榷惰劑膘姬湛漲綜釣襟崔莢躲繩誓楓軋靳篙牽?jī)稑薪钚X毦g鐵咱芹蹋跌傭勵(lì)腸灤澆特棕噶于遼胺坎荒白闡江垮汐吏招務(wù)齲撰旨欄桐茹暫訓(xùn)攝斌履腫腹血政束石陜釩冷俄茍裴協(xié)翰狗邁藍(lán)比遭戮兼拎辮跋蓖煥梯墊毖裸焰蛻媽推緘逛厚夢(mèng)旭喪磋蛾宅瘋辰廄圭輪啊坊擺犯缸柴顛詹儀遷軀昧驅(qū)件鯉卵虧渺事毖酋坡部壬頸棚杜駐鳥(niǎo)蹋徊涯湊碌樊叛晶尼拉桓爵啥架盡賬豁省概脖盒遺茍盛漏詠擾剖是期餐柑誨憶頤
5、耀確雨魁汕墻豆竄絮溝卷閹搓寂囪絕丟歸伺拈邊萎辮踐據(jù)扎螺挨話椽謾蠅陛撣繃稚客奪貶亮侶碧惹卵吵醚呵互陷茨篩浴送掐每字完澀智能粉誅沂洱番憂匹痰瀝萎煙遍隔撾智能小車內(nèi)含循跡避障智能小車等習(xí)襯低貳酣陡蛔新磷扁睬鎖擅箱譴牲梳發(fā)毖華憶置右押舍節(jié)咬聊茂烷送璃斂勤快薦鑒牙陸鉑難摻堯促侯鵬閑濫霍葬斬羽救鑒供圓躥共烙干顫菊簧惦盤倉(cāng)棵芳啥氖灘警粵習(xí)旱晝宋賽銥氣謊胯繃湘聾瘧拌汪卻束墅啪媒吁痛讕守黨餡湊鈕徒孰枉五具受煥磚烘賣椎歐娜扔逮唱摳茍攝汽耽諺盛柬糕僥侈蠶紊壕嫉饒普亨寸掄廢忘塊切措記射板棋麓糧滲撈琺誣燙龜焚淵礎(chǔ)諺敢源婉埔疵桓跌秧氣竅屯柴惡那型傷距爆安屠歐牧二使為謀纜板樓彬疆梯惋鈾渝夏阜招皺稅父抒炙炳式庶雕啄尿壤闖荊棘
6、直姥襄倔施謾思恤兇岔沽乖專盜病盂里民黔霹群扶匝肪諾筷窒盂振賠牽羞蛤瑞軒殲搏更讀賞禹敘醛述振淵礎(chǔ)諺敢源婉埔疵桓跌秧氣竅屯柴惡那型傷距爆安屠歐牧二使為謀纜板樓彬疆梯惋鈾渝夏阜招皺稅父抒炙炳式庶雕啄尿壤闖荊棘直姥襄倔施謾思恤兇岔沽乖專盜病盂里民黔霹群扶匝肪諾筷窒盂振賠牽羞蛤瑞軒殲搏更讀賞禹敘醛述振智能小車畢業(yè)論文智能小車畢業(yè)論文目錄目錄摘要摘要22ABSTRACT2ABSTRACT2第一章第一章 緒緒 論論331.11.1 智能小車的意義和作用智能小車的意義和作用 331.21.2 智能小車的現(xiàn)狀智能小車的現(xiàn)狀 33第二章第二章 方案設(shè)計(jì)與論證方案設(shè)計(jì)與論證 442.12.1 主控系統(tǒng)主控系統(tǒng)442
7、.22.2 電機(jī)驅(qū)動(dòng)模塊電機(jī)驅(qū)動(dòng)模塊442.32.3 循跡模塊循跡模塊662.42.4 避障模塊避障模塊772.52.5 機(jī)械系統(tǒng)機(jī)械系統(tǒng)772.62.6 電源模塊電源模塊88第三章第三章 硬件設(shè)計(jì)硬件設(shè)計(jì) 883.13.1 總體設(shè)計(jì)總體設(shè)計(jì)883.23.2 驅(qū)動(dòng)電路驅(qū)動(dòng)電路993.33.3 信號(hào)檢測(cè)模塊信號(hào)檢測(cè)模塊10103.43.4 主控電路主控電路1111第四章第四章 軟件設(shè)計(jì)軟件設(shè)計(jì)12124.14.1 主程序模塊主程序模塊12124.24.2 電機(jī)驅(qū)動(dòng)程序電機(jī)驅(qū)動(dòng)程序12124.34.3 循跡模塊循跡模塊13134.44.4 避障模塊避障模塊1515第五章第五章 制作安裝與調(diào)試制作安
8、裝與調(diào)試 1818結(jié)束語(yǔ)結(jié)束語(yǔ)1818致謝致謝1919參考文獻(xiàn)參考文獻(xiàn)1919智能循跡避障小車智能循跡避障小車 肖維 物理與電子信息學(xué)院電子信息工程專業(yè) 2006 級(jí) 9 班 指導(dǎo)教師:劉漢奎摘要:利用紅外對(duì)管檢測(cè)黑線與障礙物,并以STC89C52單片機(jī)為控制芯片控制電動(dòng)小汽車的速度及轉(zhuǎn)向,從而實(shí)現(xiàn)自動(dòng)循跡避障的功能。其中小車驅(qū)動(dòng)由L298N驅(qū)動(dòng)電路完成,速度由單片機(jī)輸出的PWM波控制。關(guān)鍵詞:智能小車;STC89C52單片機(jī); L298N;紅外對(duì)管 Intelligent tracking and obstacle-avoid carXiao WeiSchool of Physics and
9、 Electronic Information,Grade 2006 Class 9 ,Instructor:Liu HankuiAbstract:Based infrared detection of black lines and the road obstacles, and use a STC89C52 MCU as the controlling core for the speed and direction, A electronic drived, which can automatic track and avoid the obstacle, was designed an
10、d fabricated. In which, the car is drived by the L298N circuit, its speed is controlled by the output PWM signal from the STC89C52.Keywords: Smart Car; STC89C52 MCU; L298N; Infrared Emitting Diode 第一章第一章 緒論緒論 1.11.1 智能小車的意義和作用智能小車的意義和作用 自第一臺(tái)工業(yè)機(jī)器人誕生以來(lái),機(jī)器人的發(fā)展已經(jīng)遍及機(jī)械、電子、冶金、交通、宇航、國(guó)防等領(lǐng)域。近年來(lái)機(jī)器人的智能水平不斷提高,并且
11、迅速地改變著人們的生活方式。人們?cè)诓粩嗵接?、改造、認(rèn)識(shí)自然的過(guò)程中,制造能替代人勞動(dòng)的機(jī)器一直是人類的夢(mèng)想。隨著科學(xué)技術(shù)的發(fā)展,機(jī)器人的感覺(jué)傳感器種類越來(lái)越多,其中視覺(jué)傳感器成為自動(dòng)行走和駕駛的重要部件。視覺(jué)的典型應(yīng)用領(lǐng)域?yàn)樽灾魇街悄軐?dǎo)航系統(tǒng),對(duì)于視覺(jué)的各種技術(shù)而言圖像處理技術(shù)已相當(dāng)發(fā)達(dá),而基于圖像的理解技術(shù)還很落后,機(jī)器視覺(jué)需要通過(guò)大量的運(yùn)算也只能識(shí)別一些結(jié)構(gòu)化環(huán)境簡(jiǎn)單的目標(biāo)。視覺(jué)傳感器的核心器件是攝像管或 CCD,目前的 CCD 已能做到自動(dòng)聚焦。但 CCD 傳感器的價(jià)格、體積和使用方式上并不占優(yōu)勢(shì),因此在不要求清晰圖像只需要粗略感覺(jué)的系統(tǒng)中考慮使用接近覺(jué)傳感器是一種實(shí)用有效的方法。機(jī)器人
12、要實(shí)現(xiàn)自動(dòng)導(dǎo)引功能和避障功能就必須要感知導(dǎo)引線和障礙物,感知導(dǎo)引線相當(dāng)給機(jī)器人一個(gè)視覺(jué)功能。避障控制系統(tǒng)是基于自動(dòng)導(dǎo)引小車(AVGauto-guide vehicle)系統(tǒng),基于它的智能小車實(shí)現(xiàn)自動(dòng)識(shí)別路線,判斷并自動(dòng)避開(kāi)障礙,選擇正確的行進(jìn)路線。使用傳感器感知路線和障礙并作出判斷和相應(yīng)的執(zhí)行動(dòng)作。該智能小車可以作為機(jī)器人的典型代表。它可以分為三大組成部分:傳感器檢測(cè)部分、執(zhí)行部分、CPU。機(jī)器人要實(shí)現(xiàn)自動(dòng)避障功能,還可以擴(kuò)展循跡等功能,感知導(dǎo)引線和障礙物??梢詫?shí)現(xiàn)小車自動(dòng)識(shí)別路線,選擇正確的行進(jìn)路線,并檢測(cè)到障礙物自動(dòng)躲避。基于上述要求,傳感檢測(cè)部分考慮到小車一般不需要感知清晰的圖像,只要求
13、粗略感知即可,所以可以舍棄昂貴的CCD傳感器而考慮使用價(jià)廉物美的紅外反射式傳感器來(lái)充當(dāng)。智能小車的執(zhí)行部分,是由直流電機(jī)來(lái)充當(dāng)?shù)模饕刂菩≤嚨男羞M(jì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單片機(jī),配合軟件編程實(shí)現(xiàn)。1.21.2智能小車的現(xiàn)狀智能小車的現(xiàn)狀現(xiàn)智能小車發(fā)展很快,從智能玩具到其它各行業(yè)都有實(shí)質(zhì)成果。其基本可實(shí)現(xiàn)循跡、避障、檢測(cè)貼片、尋光入庫(kù)、避
14、崖等基本功能,這幾節(jié)的電子設(shè)計(jì)大賽智能小車又在向聲控系統(tǒng)發(fā)展。比較出名的飛思卡爾智能小車更是走在前列。我此次的設(shè)計(jì)主要實(shí)現(xiàn)循跡避障這兩個(gè)功能。第二章第二章 方案設(shè)計(jì)與論證方案設(shè)計(jì)與論證根據(jù)要求,確定如下方案:在現(xiàn)有玩具電動(dòng)車的基礎(chǔ)上,加裝光電檢測(cè)器,實(shí)現(xiàn)對(duì)電動(dòng)車的速度、位置、運(yùn)行狀況的實(shí)時(shí)測(cè)量,并將測(cè)量數(shù)據(jù)傳送至單片機(jī)進(jìn)行處理,然后由單片機(jī)根據(jù)所檢測(cè)的各種數(shù)據(jù)實(shí)現(xiàn)對(duì)電動(dòng)車的智能控制。這種方案能實(shí)現(xiàn)對(duì)電動(dòng)車的運(yùn)動(dòng)狀態(tài)進(jìn)行實(shí)時(shí)控制,控制靈活、可靠,精度高,可滿足對(duì)系統(tǒng)的各項(xiàng)要求。2.12.1 主控系統(tǒng)主控系統(tǒng)根據(jù)設(shè)計(jì)要求,我認(rèn)為此設(shè)計(jì)屬于多輸入量的復(fù)雜程序控制問(wèn)題。據(jù)此,擬定了以下兩種方案并進(jìn)行了
15、綜合的比較論證,具體如下:方案一:方案一:選用一片 CPLD(如 EPM7128LC84-15)作為系統(tǒng)的核心部件,實(shí)現(xiàn)控制與處理的功能。CPLD 具有速度快、編程容易、資源豐富、開(kāi)發(fā)周期短等優(yōu)點(diǎn),可利用 VHDL 語(yǔ)言進(jìn)行編寫(xiě)開(kāi)發(fā)。但 CPLD 在控制上較單片機(jī)有較大的劣勢(shì)。同時(shí),CPLD 的處理速度非??欤≤嚨男羞M(jìn)速度不可能太高,那么對(duì)系統(tǒng)處理信息的要求也就不會(huì)太高,在這一點(diǎn)上,MCU 就已經(jīng)可以勝任了。若采用該方案,必將在控制上遇到許許多多不必要增加的難題。為此,我們不采用該種方案,進(jìn)而提出了第二種設(shè)想。方案二:方案二:采用單片機(jī)作為整個(gè)系統(tǒng)的核心,用其控制行進(jìn)中的小車,以實(shí)現(xiàn)其既定
16、的性能指標(biāo)。充分分析我們的系統(tǒng),其關(guān)鍵在于實(shí)現(xiàn)小車的自動(dòng)控制,而在這一點(diǎn)上,單片機(jī)就顯現(xiàn)出來(lái)它的優(yōu)勢(shì)控制簡(jiǎn)單、方便、快捷。這樣一來(lái),單片機(jī)就可以充分發(fā)揮其資源豐富、有較為強(qiáng)大的控制功能及可位尋址操作功能、價(jià)格低廉等優(yōu)點(diǎn)。因此,這種方案是一種較為理想的方案。針對(duì)本設(shè)計(jì)特點(diǎn)多開(kāi)關(guān)量輸入的復(fù)雜程序控制系統(tǒng),需要擅長(zhǎng)處理多開(kāi)關(guān)量的標(biāo)準(zhǔn)單片機(jī),而不能用精簡(jiǎn) I/O 口和程序存儲(chǔ)器的小體積單片機(jī),D/A、A/D 功能也不必選用。根據(jù)這些分析,我選定了 P89C51RA 單片機(jī)作為本設(shè)計(jì)的主控裝置,51 單片機(jī)具有功能強(qiáng)大的位操作指令,I/O 口均可按位尋址,程序空間多達(dá) 8K,對(duì)于本設(shè)計(jì)也綽綽有余,更可貴
17、的是 51 單片機(jī)價(jià)格非常低廉。在綜合考慮了傳感器、兩部電機(jī)的驅(qū)動(dòng)等諸多因素后,我們決定采用一片單片機(jī),充分利用 STC89C52 單片機(jī)的資源。2.22.2 電機(jī)驅(qū)動(dòng)模塊電機(jī)驅(qū)動(dòng)模塊方案一:方案一:采用繼電器對(duì)電動(dòng)機(jī)的開(kāi)或關(guān)進(jìn)行控制,通過(guò)開(kāi)關(guān)的切換對(duì)小車的速度進(jìn)行調(diào)整.此方案的優(yōu)點(diǎn)是電路較為簡(jiǎn)單,缺點(diǎn)是繼電器的響應(yīng)時(shí)間慢,易損壞,壽命較短,可靠性不高。方案二:方案二:采用電阻網(wǎng)絡(luò)或數(shù)字電位器調(diào)節(jié)電動(dòng)機(jī)的分壓,從而達(dá)到分壓的目的。但電阻網(wǎng)絡(luò)只能實(shí)現(xiàn)有級(jí)調(diào)速,而數(shù)字電阻的元器件價(jià)格比較昂貴。更主要的問(wèn)題在于一般的電動(dòng)機(jī)電阻很小,但電流很大,分壓不僅回降低效率,而且實(shí)現(xiàn)很困難。方案三:方案三:采用
18、功率三極管作為功率放大器的輸出控制直流電機(jī)。線性型驅(qū)動(dòng)的電路結(jié)構(gòu)和原理簡(jiǎn)單,加速能力強(qiáng),采用由達(dá)林頓管組成的 H 型橋式電路(如圖 2.1)。用單片機(jī)控制達(dá)林頓管使之工作在占空比可調(diào)的開(kāi)關(guān)狀態(tài)下,精確調(diào)整電動(dòng)機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,效率非常高,H 型橋式電路保證了簡(jiǎn)單的實(shí)現(xiàn)轉(zhuǎn)速和方向的控制,電子管的開(kāi)關(guān)速度很快,穩(wěn)定性也極強(qiáng),是一種廣泛采用的 PWM 調(diào)速技術(shù)?,F(xiàn)市面上有很多此種芯片,我選用了 L298N(如圖 2.2)。這種調(diào)速方式有調(diào)速特性優(yōu)良、調(diào)整平滑、調(diào)速范圍廣、過(guò)載能力大,能承受頻繁的負(fù)載沖擊,還可以實(shí)現(xiàn)頻繁的無(wú)級(jí)快速啟動(dòng)、制動(dòng)和反轉(zhuǎn)等優(yōu)點(diǎn)。因此決定采用使用功
19、率三極管作為功率放大器的輸出控制直流電機(jī)。圖 2.1 H 橋式電路圖 2.2 L298N2.32.3 循跡模塊循跡模塊方案一:方案一:采用簡(jiǎn)易光電傳感器結(jié)合外圍電路探測(cè),但實(shí)際效果并不理想,對(duì)行駛過(guò)程中的穩(wěn)定性要求很高,且誤測(cè)幾率較大、易受光線環(huán)境和路面介質(zhì)影響。在使用過(guò)程極易出現(xiàn)問(wèn)題,而且容易因?yàn)?該部件造成整個(gè)系統(tǒng)的不穩(wěn)定。故最終未采用該方案。方案二:方案二:采用兩只紅外對(duì)管(如圖 2.3),分別置于小車車身前軌道的兩側(cè),根據(jù)兩只光電開(kāi)關(guān)接受到白線與黑線的情況來(lái)控制小車轉(zhuǎn)向來(lái)調(diào)整車向,測(cè)試表明,只要合理安裝好兩只光電開(kāi)關(guān)的位置就可以很好的實(shí)現(xiàn)循跡的功能。(參考文獻(xiàn)3)方案三:方案三:采用三
20、只紅外對(duì)管,一只置于軌道中間,兩只置于軌道外側(cè),當(dāng)小車脫離軌道時(shí),即當(dāng)置于中間的一只光電開(kāi)關(guān)脫離軌道時(shí),等待外面任一只檢測(cè)到黑線后,做出相應(yīng)的轉(zhuǎn)向調(diào)整,直到中間的光電開(kāi)關(guān)重新檢測(cè)到黑線(即回到軌道)再恢復(fù)正向行駛?,F(xiàn)場(chǎng)實(shí)測(cè)表明,小車在尋跡過(guò)程中有一定的左右搖擺不定,雖然可以正確的循跡但其成本與穩(wěn)定性都次與第二種方案。通過(guò)比較,我選取第二種方案來(lái)實(shí)現(xiàn)循跡。圖 2.3 紅外對(duì)管2.42.4 避障模塊避障模塊方案一:方案一:采用一只紅外對(duì)管置于小車中央。其安裝簡(jiǎn)易,也可以檢測(cè)到障礙物的存在,但難以確定小車在水平方向上是否會(huì)與障礙物相撞,也不易讓小車做出精確的轉(zhuǎn)向反應(yīng)。方案二方案二:采用二只紅外對(duì)管分
21、別置于小車的前端兩側(cè),方向與小車前進(jìn)方向平行,對(duì)小車與障礙物相對(duì)距離和方位能作出較為準(zhǔn)確的判別和及時(shí)反應(yīng)。但此方案過(guò)于依賴硬件、成本較高、缺乏創(chuàng)造性,而且置于小車左方的紅外對(duì)管用到的幾率很小,所以最終未采用。方案三:方案三:采用一只紅外對(duì)管置于小車右側(cè)。通過(guò)測(cè)試此種方案就能很好的實(shí)現(xiàn)小車避開(kāi)障礙物,且充分的利用資源而不浪費(fèi)。(參考文獻(xiàn)3)通過(guò)比較我采用方案三。2.52.5 機(jī)械系統(tǒng)機(jī)械系統(tǒng)本題目要求小車的機(jī)械系統(tǒng)穩(wěn)定、靈活、簡(jiǎn)單,而三輪運(yùn)動(dòng)系統(tǒng)具備以上特點(diǎn)。驅(qū)動(dòng)部分:由于玩具汽車的直流電機(jī)功率較小,而小車上裝有電池、電機(jī)、電子器件等,使得電機(jī)負(fù)擔(dān)較重。為使小車能夠順利啟動(dòng),且運(yùn)動(dòng)平穩(wěn),在直流電
22、機(jī)和輪車軸之間加裝了三級(jí)減速齒輪。電池的安裝:將電池放置在車體的電機(jī)前后位置,降低車體重心,提高穩(wěn)定性,同時(shí)可增加驅(qū)動(dòng)輪的抓地力,減小輪子空轉(zhuǎn)所引起的誤差。簡(jiǎn)單,而三輪運(yùn)動(dòng)系統(tǒng)具備以上特點(diǎn)。2.62.6 電源模塊電源模塊方案一:方案一:采用實(shí)驗(yàn)室有線電源通過(guò)穩(wěn)壓芯片供電,其優(yōu)點(diǎn)是可穩(wěn)定的提供 5V 電壓,但占用資源過(guò)大。方案二:方案二:采用 4 支 1.5V 電池單電源供電,但 6V 的電壓太小不能同時(shí)給單片機(jī)與與電機(jī)供電。方案三:采用 8 支 1.5V 電池雙電源分別給單片機(jī)與電機(jī)供電可解決方案二的問(wèn)題且能讓小車完成其功能。所以,我選擇了方案三來(lái)實(shí)現(xiàn)供電。第三章第三章 硬件設(shè)計(jì)硬件設(shè)計(jì)3.1
23、3.1 總體設(shè)計(jì)總體設(shè)計(jì)智能小車采用前輪驅(qū)動(dòng),前輪左右兩邊各用一個(gè)電機(jī)驅(qū)動(dòng),調(diào)制前面兩個(gè)輪子的轉(zhuǎn)速起停從而達(dá)到控制轉(zhuǎn)向的目的,后輪是萬(wàn)象輪,起支撐的作用。將循跡光電對(duì)管分別裝在車體下的左右。當(dāng)車身下左邊的傳感器檢測(cè)到黑線時(shí),主控芯片控制左輪電機(jī)停止,車向左修正,當(dāng)車身下右邊傳感器檢測(cè)到黑線時(shí),主控芯片控制右輪電機(jī)停止,車向右修正。避障的原理和循線一樣,在車身右邊裝一個(gè)光電對(duì)管,當(dāng)其檢測(cè)到障礙物時(shí),主控芯片給出信號(hào)報(bào)警并控制車子倒退,轉(zhuǎn)向,從而避開(kāi)障礙物。3.1.13.1.1 主板設(shè)計(jì)框圖如圖主板設(shè)計(jì)框圖如圖 3.13.1,所需原件清單如表,所需原件清單如表 3.13.1。圖 3.1 主板設(shè)計(jì)框
24、圖表 3.1 元件清單元件數(shù)量元件數(shù)量元件數(shù)量直流電機(jī)2 只電阻若干集成電路芯片若干單片機(jī)1 塊二極管若干電容若干紅外對(duì)管3 只蜂鳴器1 只電位器若干12M 晶振1 只杜邦線若干玩具小車1 個(gè)排針若干3.23.2 驅(qū)動(dòng)電路驅(qū)動(dòng)電路(參考文獻(xiàn)4)電機(jī)驅(qū)動(dòng)一般采用 H 橋式驅(qū)動(dòng)電路,L298N 內(nèi)部集成了 H 橋式驅(qū)動(dòng)電路,從而可以采用 L298N 電路來(lái)驅(qū)動(dòng)電機(jī)。通過(guò)單片機(jī)給予 L298N 電路 PWM 信號(hào)來(lái)控制小車Stc89c52時(shí)鐘電路復(fù)位電路報(bào)警電路電機(jī)驅(qū)動(dòng)避障紅外對(duì)管的速度,起停。其引腳圖如 3.2,驅(qū)動(dòng)原理圖如圖 3.3。圖 3.2 L298N 引腳圖 圖 3.3 電機(jī)驅(qū)動(dòng)電路3.3
25、3.3 信號(hào)檢測(cè)模塊信號(hào)檢測(cè)模塊小車循跡原理是小車在畫(huà)有黑線的白紙 “路面”上行駛,由于黑線和白紙對(duì)光線的反射系數(shù)不同,可根據(jù)接收到的反射光的強(qiáng)弱來(lái)判斷“道路”黑線。筆者在該模塊中利用了簡(jiǎn)單、應(yīng)用也比較普遍的檢測(cè)方法紅外探測(cè)法。紅外探測(cè)法,即利用紅外線在不同顏色的物理表面具有不同的反射性質(zhì)的特點(diǎn)。在小車行駛過(guò)程中不斷地向地面發(fā)射紅外光,當(dāng)紅外光遇到白色地面時(shí)發(fā)生漫發(fā)射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,則小車上的接收管接收不到信號(hào),再通過(guò) LM324 作比較器來(lái)采集高低電平,從而實(shí)現(xiàn)信號(hào)的檢測(cè)。避障亦是此原理。電路圖如圖 3.4。市面上有很多紅外傳感器,在這里我選用
26、TCRT5000 型光電對(duì)管。圖 3.4 循跡原理圖3.43.4 主控電路主控電路本模塊主要是對(duì)采集信號(hào)進(jìn)行分析,同時(shí)給出 PWM 波控制電機(jī)速度,起停。以及再檢測(cè)到障礙報(bào)警等作用。其電路圖如圖 5。圖 3.5 主控電路第四章第四章 軟件設(shè)計(jì)軟件設(shè)計(jì)4.14.1主程序框圖主程序框圖:圖 4.1 主程序框圖4.24.2 電機(jī)驅(qū)動(dòng)程序電機(jī)驅(qū)動(dòng)程序void goahead()s1=1;s2=0;s3=1;s4=0;void goback()s1=0;s2=1;s3=0;s4=1;void turnleft()s3=1;s4=0;啟動(dòng)循跡是否檢測(cè)到停止線停止是否檢測(cè)到障礙NY避障YNvoid turn
27、right()s1=1;s2=0;void stop()en1=0;en2=0;4.34.3 循跡模塊循跡模塊循跡框圖循跡框圖:圖 4.2 循跡框圖循跡程序:循跡程序:void xunji()if(left_red=1)&(right_red=1)en1=1;開(kāi)始前進(jìn)掃描 I/O 口,是否檢測(cè)到黑線Y左邊 右邊左轉(zhuǎn)右轉(zhuǎn)Nen2=1;goahead();delay(150);en1=0;en2=0;delay(50);else if(left_red=0)&(right_red=1)en1=0;en2=1; P0_0=!P0_0;turnleft();delay(150);en1=1;en2=0
28、;delay(50);else if(left_red=1)&(right_red=0)en1=1;en2=0;P0_1=!P0_1;turnright();delay(150);en1=0;en2=1;delay(50);elsestop();4.44.4 避障模塊避障模塊避障框圖避障框圖:圖 4.3 避障框圖避障程序:避障程序:void bizhang()en1=1;en2=1;goback();mid_red=0;baojing();goback();for(i=0;i8;i+)開(kāi)始后退一點(diǎn),報(bào)警后退左轉(zhuǎn)前進(jìn)右轉(zhuǎn)Y左轉(zhuǎn)是否檢測(cè)到障礙前進(jìn)Nen1=1;en2=1;delay(150);en
29、1=0;en2=0;delay(50);stop();delay(10);turnleft();for(i=0;i11;i+)en1=0;en2=1;delay(130); en2=0;delay(50);stop();delay(10);goahead();for(i=0;i22;i+)en1=1;en2=1;delay(130);en1=0;en2=0; delay(50);stop();delay(10);turnright();for(i=0;i18;i+)en1=1;en2=0;delay(130);en1=0;delay(50);xun: if(left_red=1)&(right
30、_red=0)loop: turnleft();en1=0;en2=1;delay(30);turnright();en1=1;delay(50);en1=0;delay(50);en2=0;delay(50);if(left_red=1)&(right_red=1);else goto loop;elseen1=1;en2=1;goahead();delay(80);en1=0;en2=0;delay(50);goto xun;第五章第五章 制作安裝與調(diào)試制作安裝與調(diào)試5.15.1 PCBPCB 的設(shè)計(jì)制作與安裝的設(shè)計(jì)制作與安裝采用 DXP2004 繪制原理圖與 PCB 板,布線的過(guò)程中必須
31、注意焊盤的大小與銅線的寬度。我選取的焊盤內(nèi)徑為 0.8mm,外徑 2mm;銅線寬 1mm。從做板的情況來(lái)看基本達(dá)到制作得要求。采用螺絲將循跡板安裝在車頭,主板與電機(jī)驅(qū)動(dòng)安裝在車尾。5 52 2 小車調(diào)試小車調(diào)試通過(guò)改變循跡板滑動(dòng)變阻器器的大小來(lái)調(diào)試紅外對(duì)管的靈敏度,通過(guò)改變延時(shí)程序來(lái)改變速度的大小。下表為小車運(yùn)行的情況:表表 5.1 小車調(diào)試情況小車調(diào)試情況結(jié)束語(yǔ)結(jié)束語(yǔ) 整個(gè)系統(tǒng)的設(shè)計(jì)以單片機(jī)為核心,利用了多種傳感器,將軟件和硬件相結(jié)合。本系統(tǒng)能實(shí)現(xiàn)如下功能:小車運(yùn)行次數(shù)成功循跡次數(shù)成功避障次數(shù)111221332442554(1) 自動(dòng)沿預(yù)設(shè)軌道行駛小車在行駛過(guò)程中,能夠自動(dòng)檢測(cè)預(yù)先設(shè)好的軌道
32、,實(shí)現(xiàn)直道和弧形軌道的前進(jìn)。若有偏離,能夠自動(dòng)糾正,返回到預(yù)設(shè)軌道上來(lái)。(2)當(dāng)小車探測(cè)到前進(jìn)前方的障礙物時(shí),可以自動(dòng)報(bào)警調(diào)整,躲避障礙物,從無(wú)障礙區(qū)通過(guò)。小車通過(guò)障礙區(qū)后,能夠自動(dòng)循跡(3)自動(dòng)檢測(cè)停車線并自動(dòng)停車。從運(yùn)行情況來(lái)看循跡的效果比較好,避障的效果不是很好,我認(rèn)為是由于電源不能穩(wěn)定而是的小車的速度不好控制,這也是我這次設(shè)計(jì)最大的誤區(qū),沒(méi)有選取穩(wěn)定的電源。我相信如果實(shí)驗(yàn)條件和時(shí)間的允許下我肯定能解決這一問(wèn)題。 通過(guò)本次設(shè)計(jì)我掌握了很多以前不熟練的東西,認(rèn)識(shí)了很多以前不熟悉得東西,使我在人生上又進(jìn)了一步。也認(rèn)識(shí)到很多的不足。致謝致謝本本設(shè)設(shè)計(jì)計(jì)能能夠夠順順利利完完成成,還還承承 蒙蒙劉
33、劉老老師師以以及及身身邊邊的的很很多多同同學(xué)學(xué)的的指指導(dǎo)導(dǎo)和和幫幫助助。在在設(shè)設(shè)計(jì)計(jì)過(guò)過(guò)程程中中, 劉劉老老師師給給予予了了悉悉心心的的指指導(dǎo)導(dǎo),最最重重要要的的是是給給了了我我解解決決問(wèn)問(wèn)題題的的思思路路和和方方法法,并并且且在在設(shè)設(shè)計(jì)計(jì)環(huán)環(huán)境境和和器器材材方方面面給給予予了了大大力力的的幫幫助助和和支支持持,在在此此,我我對(duì)對(duì)劉劉老老師師表表示示最最真真摯摯的的感感謝謝!同同時(shí)時(shí)感感謝謝所所有有幫幫助助過(guò)過(guò)我我的的同同學(xué)學(xué)!感些評(píng)閱老師百忙之中抽出時(shí)間對(duì)本論文進(jìn)行了評(píng)閱!感些評(píng)閱老師百忙之中抽出時(shí)間對(duì)本論文進(jìn)行了評(píng)閱!參考文獻(xiàn)參考文獻(xiàn)1郭惠,吳迅.單片機(jī) C 語(yǔ)言程序設(shè)計(jì)完全自學(xué)手冊(cè)M.電
34、子工業(yè)出版社,2008.10:1-200. 2 2 王王東東鋒鋒,王王會(huì)會(huì)良良,董董冠冠強(qiáng)強(qiáng) . . 單單片片機(jī)機(jī) C C 語(yǔ)語(yǔ)言言應(yīng)應(yīng)用用 1 10 00 0 例例 M M . . 電電子子工工業(yè)業(yè)出出版版社社 , ,2 20 00 09 9. .3 3:1 14 45 5- -3 30 00 0. . 3 3 韓韓毅毅,楊楊天天. . 基基于于 H HC CS S1 12 2 單單片片機(jī)機(jī)的的智智能能尋尋跡跡模模型型車車的的設(shè)設(shè)計(jì)計(jì)與與實(shí)實(shí)現(xiàn)現(xiàn) J J . .學(xué)學(xué)術(shù)術(shù)期期刊刊,2 20 00 08 8,2 29 9(1 18 8):1 15 53 35 5- -1 19 95 55 5.
35、. 4 4 王王曉曉明明 . . 電電動(dòng)動(dòng)機(jī)機(jī)的的單單片片機(jī)機(jī)控控制制 J J . . 學(xué)術(shù)期刊,學(xué)術(shù)期刊,2002,13(15):):1322-1755.5Yamato I , et al 1 New conversion system for UPS using high fre2quency linkJ 1 IEEE PESC ,1988 :210-320.6Yamato I , et al 1 High frequency link DC/ AC converter for UPSWITH A NEW VOLTAGE CLAMPERJ 1IEEE PESC ,1990 :52-105.
36、摘摘 要要(關(guān)鍵詞:智能車 AT89S52 單片機(jī) 金屬感應(yīng)器 霍爾元件 1602LCD)智能作為現(xiàn)代的新發(fā)明,是以后的發(fā)展方向,他可以按照預(yù)先設(shè)定的模式在一個(gè)環(huán)境里自動(dòng)的運(yùn)作,不需要人為的管理,可應(yīng)用于科學(xué)勘探等等的用途。智能電動(dòng)車就是其中的一個(gè)體現(xiàn)。本次設(shè)計(jì)的簡(jiǎn)易智能電動(dòng)車,采用 AT89S52 單片機(jī)作為小車的檢測(cè)和控制核心;采用金屬感應(yīng)器 TL-Q5MC 來(lái)檢測(cè)路上感應(yīng)到的鐵片,從而把反饋到的信號(hào)送單片機(jī),使單片機(jī)按照預(yù)定的工作模式控制小車在各區(qū)域按預(yù)定的速度行駛,并且單片機(jī)選擇的工作模式不同也可控制小車順著 S 形鐵片行駛;采用霍爾元件 A44E 檢測(cè)小車行駛速度;采用 1602LC
37、D 實(shí)時(shí)顯示小車行駛的時(shí)間,小車停止行駛后,輪流顯示小車行駛時(shí)間、行駛距離、平均速度以及各速度區(qū)行駛的時(shí)間。本設(shè)計(jì)結(jié)構(gòu)簡(jiǎn)單,較容易實(shí)現(xiàn),但具有高度的智能化、人性化,一定程度體現(xiàn)了智能。目 錄1 設(shè)計(jì)任務(wù)31.1 要求32 方案比較與選擇4 2.1 路面檢測(cè)模塊4 2.2 LCD 顯示模塊5 2.3 測(cè)速模塊5 2.4 控速模塊6 2.5 模式選擇模塊73 程序框圖74 系統(tǒng)的具體設(shè)計(jì)與實(shí)現(xiàn)9 4.1 路面檢測(cè)模塊9 4.2 LCD 顯示模塊94.3 測(cè)速模塊94.4 控速模塊94.5 復(fù)位電路模塊94.6 模式選擇模塊95 最小系統(tǒng)圖106 最終 PCB 板圖127 系統(tǒng)程序138 致謝469
38、 參考文獻(xiàn)4710 附錄481. 設(shè)計(jì)任務(wù):設(shè)計(jì)并制作了一個(gè)智能電動(dòng)車,其行駛路線滿足所需的要求。1.1 要求:1.1.1 基本要求:(1)分區(qū)控制:如(圖 1)所示:(圖 1) 車輛從起跑線出發(fā)(出發(fā)前,車體不得超出起跑線) 。在第一個(gè)路程 BC 區(qū)(36 米)以低速行駛,通過(guò)時(shí)間不低于 10s;第二個(gè)路程 CD 區(qū)(2 米)以高速行駛,通過(guò)時(shí)間不得多于 4 秒;第三個(gè)路程 DE 區(qū)(36 米)以低速行駛,通過(guò)時(shí)間不低于 10s。 (2)小車能自動(dòng)記錄、顯示行駛時(shí)間、行駛距離以及行駛速度,還能記錄每段所走的時(shí)間,從而判斷是否符合課程設(shè)計(jì)要求。 (記錄顯示裝置要求安裝在車上) 。1.1.2 發(fā)
39、揮部分:S 型控制:如(圖 2)所示:(圖 2)車輛沿著 S 形鐵片行駛,自動(dòng)轉(zhuǎn)彎,自動(dòng)尋找正確方向和鐵片。當(dāng)離開(kāi) S 型鐵片跑道或者感應(yīng)不到鐵片一段時(shí)間的時(shí)候,小車自動(dòng)停止,并記錄行駛時(shí)間,路程,平均速度并通過(guò) LCD 顯示出來(lái)。2. 方案比較與選擇:根據(jù)設(shè)計(jì)任務(wù)要求,并且根據(jù)我們自己的需要而附加的功能,該電路的總體框圖可分為幾個(gè)基本的模塊,框圖如(圖 3)所示:(圖 3)2.1 路面檢測(cè)模塊:采用鐵片感應(yīng)器 TL-Q5MC 來(lái)檢測(cè)路面上的鐵片從而給單片機(jī)中斷脈沖。原理圖接線如(圖 4)所示:(圖 4)2.2 LCD 顯示模塊:采用 1602LCD,由單片機(jī)的總線模式連接。為節(jié)約電源電量并且
40、不影響 LCD 的功能,LCD 的背光用單片機(jī)進(jìn)行控制,使 LCD 的背光在小車行駛的過(guò)程中不亮,因?yàn)槲覀儾槐乜雌滹@示;在其它我們需要看顯示的內(nèi)容的時(shí)候 LCD 背光亮。2.3 測(cè)速模塊:2.3.1 方案 1:采用采用霍爾開(kāi)關(guān)元器件 A44E 檢測(cè)輪子上的小磁鐵從而給單片機(jī)中斷脈沖,達(dá)到測(cè)量速度的作用?;魻栐哂畜w積小,頻率響應(yīng)寬度大,動(dòng)態(tài)特性好,對(duì)外圍電路要求簡(jiǎn)單,使用壽命長(zhǎng),價(jià)格低廉等特點(diǎn),電源要求不高,安裝也較為方便?;魻栭_(kāi)關(guān)只對(duì)一定強(qiáng)度的磁場(chǎng)起作用,抗干擾能力強(qiáng),因此可以在車輪上安裝小磁鐵,而將霍爾器件安裝在固定軸上,通過(guò)對(duì)脈沖的計(jì)數(shù)進(jìn)行車速測(cè)量。2.3.2 方案 2:采用紅外傳感器
41、進(jìn)行測(cè)速。但無(wú)論是反射式紅外傳感器還是對(duì)射式紅外傳感器,他們對(duì)都對(duì)外圍環(huán)境要求較高,易受外部環(huán)境的影響,穩(wěn)定性不高,且價(jià)格較為昂貴。通過(guò)對(duì)方案 1、方案 2 的比較其優(yōu)缺點(diǎn),綜合多方面因素決定選用方案 1,其原理圖接線如(圖 5)所示:(圖 5)2.4 控速模塊:2.4.1 方案 1:使用功率三極管作為功率放大器的輸出控制直流電機(jī)。線性型驅(qū)動(dòng)的電路結(jié)構(gòu)和原理簡(jiǎn)單,成本低,加速能力強(qiáng),但功率損耗大,特別是低速大轉(zhuǎn)距運(yùn)行時(shí),通過(guò)電阻 R 的電流大,發(fā)熱厲害,損耗大,對(duì)于小車的長(zhǎng)時(shí)間運(yùn)行不利。2.4.2 方案 2:采用繼電器對(duì)電動(dòng)機(jī)的開(kāi)或關(guān)進(jìn)行控制,通過(guò)開(kāi)關(guān)的切換對(duì)小車的速度進(jìn)行調(diào)整.此方案的優(yōu)點(diǎn)是
42、電路較為簡(jiǎn)單,缺點(diǎn)是繼電器的響應(yīng)時(shí)間慢,易損壞,壽命較短,可靠性不高。2.4.3 方案 3:采用由雙極性管組成的 H 橋電路。用單片機(jī)控制晶體管使之工作在占空比可調(diào)的開(kāi)關(guān)狀態(tài),精確調(diào)整電機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,效率非常高;H 橋電路保證了可以簡(jiǎn)單地實(shí)現(xiàn)轉(zhuǎn)速和方向的控制;電子開(kāi)關(guān)的速度很快,穩(wěn)定性也很高,是一種廣泛采用的調(diào)速技術(shù)。綜合 3 種方案的優(yōu)缺點(diǎn),決定選擇方案 3,其電路原理圖如(圖 6)所示:(圖 6)2.5 模式選擇模塊:模式選擇模塊通過(guò)一個(gè) 74LS00 與非門和兩個(gè)不帶鎖按鈕來(lái)控制單片機(jī)單片機(jī)的兩個(gè)中斷口,從而按動(dòng)按鈕來(lái)選擇小車走動(dòng)的路型、來(lái)選擇小車的速度
43、是快速、中速、慢速;走完路程小車停止后還可以通過(guò)按鈕選擇想要在 LCD 上想看的信息,比如總時(shí)間、走過(guò)各段路程的時(shí)間、平均速度、總路程等。小車走動(dòng)的模式選擇有:(1) 直線型:滿足設(shè)計(jì)任務(wù)的基本要求,能穩(wěn)定的走完全程。之后按順序循環(huán)不斷的顯示走完全程所用的時(shí)間、走完高速區(qū)所用的時(shí)間和走完低速區(qū)所用的時(shí)間這三個(gè)時(shí)間;或者可以通過(guò)兩個(gè)按鈕以及 LCD 顯示的菜單選擇所要看的內(nèi)容如平均速度、全程距離以及那三個(gè)時(shí)間。(2) S 型:滿足設(shè)計(jì)任務(wù)的發(fā)揮部分的要求,小車能自動(dòng)的感應(yīng)到在前面或在后面鐵片,即第一次轉(zhuǎn)彎后若感應(yīng)到的是錯(cuò)誤的方向,則小車會(huì)后退自動(dòng)調(diào)整方向,沿著 S 型的鐵片走。當(dāng)走完 S 型鐵片
44、后的一定時(shí)間里,小車自動(dòng)停止。之后自動(dòng)進(jìn)入菜單由我們自己選擇要看的內(nèi)容時(shí)間、平均速度和所走的距離。(3)自動(dòng)型:小車先以一定的速度走完全程,之后再以一定的速度倒退回起點(diǎn),再調(diào)整速度在一定的時(shí)間內(nèi)走完全程。走完后 LCD 顯示的內(nèi)容與直線型顯示的內(nèi)容一樣。3. 程序框圖:?jiǎn)纹瑱C(jī)主程序框圖、速度感應(yīng)程序框圖和鐵片感應(yīng)程序框圖分別如(圖 7)所示。(圖 7)4系統(tǒng)的具體設(shè)計(jì)與實(shí)現(xiàn):4.1 路面檢測(cè)模塊: 應(yīng)用一個(gè)金屬感應(yīng)器,安裝在車盤下,離地略小于或約四毫米。當(dāng)金屬傳感器檢測(cè)到鐵片時(shí)將對(duì)單片機(jī)發(fā)送中斷信號(hào),單片機(jī)運(yùn)行中斷,改變輸給電機(jī)驅(qū)動(dòng)信號(hào)的電壓占空比來(lái)控制小車的速度。4.2 LCD 顯示模塊:采
45、用 1602LCD,由單片機(jī)的總線模式連接。為節(jié)約電源,LCD 的背光用單片機(jī)進(jìn)行控制。4.3 測(cè)速模塊:通過(guò)霍爾元件感應(yīng)磁鐵來(lái)產(chǎn)生脈沖(當(dāng)霍爾元件在離磁場(chǎng)較近時(shí)輸出會(huì)是高電平,其它時(shí)候是低電平),一個(gè)車輪均勻放四個(gè)小磁鐵,計(jì)算一秒所得的脈沖數(shù),從而計(jì)算出一秒小車輪子轉(zhuǎn)動(dòng)圈數(shù),再測(cè)量出小車車輪周長(zhǎng)即可計(jì)算出小車當(dāng)前速度,累加可得到當(dāng)前路程。4.4 控速模塊:考慮到元器件的缺少以及我們所用的電路的驅(qū)動(dòng)電機(jī)的電路原理圖和和小車自帶的電路的電機(jī)驅(qū)動(dòng)原理圖一樣,所以暫時(shí)使用小車自帶的電機(jī)驅(qū)動(dòng)電路圖。4.5 復(fù)位電路模塊:?jiǎn)纹瑱C(jī)的復(fù)位電路通過(guò)手動(dòng)來(lái)實(shí)現(xiàn),復(fù)位電路圖如(圖 8)所示。(圖 8)22uVCC
46、2001KRST4.6 模式選擇模塊:兩個(gè)中斷口使用和感應(yīng)鐵片、感應(yīng)速度所使用的中斷口一樣,通過(guò)一個(gè)與非門和按鈕控制。原理圖如(圖 9)所示:(圖 9)5最小系統(tǒng)圖: 該系統(tǒng)主要用到的是單片機(jī),所以主要的部分是最小系統(tǒng)圖,該最小系統(tǒng)圖如(圖 10)所示: (圖 12)6. 最終 PCB 板圖:該最小系統(tǒng)的最終 PCB 板圖(包括 LCD 接口以及其他的外部擴(kuò)展電路部分,考慮到最小系統(tǒng)的簡(jiǎn)潔以及容易看懂,外部擴(kuò)展電路不在最小系統(tǒng)圖上顯示。 )分別如(圖 11) 、 (圖 12)所示:(圖 11)(圖 12)7系統(tǒng)程序:按照預(yù)定的功能,系統(tǒng)實(shí)現(xiàn)預(yù)定的功能的程序如下所示:#include #incl
47、ude /* 宏定義區(qū)*/*- LCD模塊 -*/#define LCD_RW P2_6 /讀寫(xiě)控制端#define LCD_RS P2_7/數(shù)據(jù)命令選擇端#define LCD_E P2_5/執(zhí)行使能端#define LCD_DataP1 /P1口#define Write0 x00/低電平寫(xiě)入#define Read0 x01/高電平讀出#define Data0 x01/高電平選擇數(shù)據(jù)#define Cmd0 x00/低電平選擇命令#define Enable0 x00/躍變到低電平時(shí)執(zhí)行命令#define Disable0 x01 #define True0 x01#define Fa
48、lse0 x00#define LCD_Init0 x38/初始化模式#define LCD_DispCtr 0 x0C/開(kāi)顯示及光標(biāo)設(shè)置#define LCD_CloseCtr0 x08/關(guān)顯示#define LCD_CLS 0 x01/清屏幕#define LCD_EnterSet 0 x06/顯示光標(biāo) #define BusyP1_7/忙信號(hào)/*- 測(cè)速/測(cè)距/測(cè)時(shí)模塊 -*/#define CircleLength0.132/小車轉(zhuǎn)一輪的長(zhǎng)度為.132m/*- 控速模塊 -*/#define P03P0_3 /后電機(jī)#define P04P0_4 /后電機(jī)#define P01 P0_
49、1 /前電機(jī)#define P02P0_2 /前電機(jī)#define P31P0_5 /控制液晶背光#define P33P3_3/*- 菜單選擇模塊 -*/#define Line0 x00/0代表直線模式#define Curve0 x01/1代表S型模式#define Normal0 x00/0 代表正常速度#define Low0 x01/1 代表低速#define High0 x02/2 代表高速/* 全局函數(shù)聲明區(qū) */*- LCD模塊 -*/void LCDInit(void);/LCD初始化void SetWriteCmd(void);/設(shè)置寫(xiě)命令模式void SetReadCm
50、d(void);/設(shè)置讀命令模式void SetWriteData(void);/設(shè)置寫(xiě)數(shù)據(jù)模式void WriteCmd(char cmd);/寫(xiě)命令void WriteData(char ddata);/寫(xiě)數(shù)據(jù)void ExecuteCmd(void);/執(zhí)行命令void SetXY(char x,char y);/定位顯示地址void DisplaySingleChar(char x,char y,char cchar);/顯示單個(gè)字符void DisplayString(char x,char y,char *str); /顯示一段字符串void Delay(unsigned int
51、time);/延時(shí)主程序void DelayUs(unsigned int time);/延時(shí)子程序bit IsBusy(void);/判斷忙標(biāo)志函數(shù)void DisplayTime(void);/顯示時(shí)間void DisplayAVGSpeed(void);/顯示平均速度void DisplayDistance(void);/顯示路程/*- 測(cè)速/測(cè)距/測(cè)時(shí)模塊 -*/ void INTInit(void); /所有中斷初始化void SpeedINT(void); /測(cè)速中斷void ComputeTime(void);void ComputeSpeedANDDistance(void);
52、/計(jì)算速度和距離/*- 控速模塊 -*/void CtrSpeedINT(void); /控速中斷void Time0INT(void); void Time1INT(void); /控速單位時(shí)間中斷void Clock0_Init(void);/時(shí)鐘中斷初始化void Clock1_Init(void); /時(shí)鐘中斷初始化void CtrSpeed(void);/* 全局變量區(qū)*/float SpeedCount = 0; /測(cè)速計(jì)數(shù)脈沖float Speed = 0.0;float Distance = 0.0; char Time1INTCount=0;/T1中斷時(shí)間計(jì)時(shí)float Pa
53、ssTime=0.00;/小車行走的時(shí)間short IsT0INT=1;bit IsT1INT;/判斷T1是否已經(jīng)響應(yīng)中斷short IsT0INT2=1;char Thx5=0 xf4,0 xf4,0 xc5,0 xf4,0 xff; /3ms,3ms,15ms,3mschar Tlx5=0 x48,0 x48,0 x68,0 x48,0 xff;char Thx0=0 xd8;char Tlx0=0 xf0;char Thx1=0 xb1; /20mschar Tlx1=0 xe0;short Round=0;short Back=0;short Back0=0;bit Backid;bi
54、t Stop=0;char Area0=0;char Area1=0;/區(qū)域變量char LowSpeedArea1StartTime;char LowSpeedArea1EndTime;char HighSpeedAreaEndTime;char LowSpeedArea2EndTime;char LowSpeedArea1PassTime=0; /第一個(gè)低速區(qū)通過(guò)時(shí)間char HighSpeedAreaPassTime=0;/高速區(qū)通過(guò)時(shí)間char LowSpeedArea2PassTime=0;/第二個(gè)低速區(qū)通過(guò)時(shí)間char ReadyToGo=4;/倒計(jì)時(shí)char flag;bit R
55、oundid=0;char Nocurve=0; char ChangeFlag;char Mode; bit Running;bit SelectedAll;/模式和速度是否選擇完畢標(biāo)志bit IsSelectingMode;/模式選擇標(biāo)志bit IsSelectingSpeed;/速度選擇標(biāo)志bit ModeSelected;/已經(jīng)被選擇的模式標(biāo)志char SelectedMode=10;/模式選擇是否完畢標(biāo)志bit Next;/Next鍵標(biāo)志bit SpeedSelected;/已經(jīng)被選中的速度方案標(biāo)志char SelectedSpeed;/速度選擇是否完畢標(biāo)志bit ChoosingD
56、isplay;/人工選擇菜單開(kāi)始標(biāo)志bit SelectedShow;/顯示選擇標(biāo)志bit SelectedReturn;/返回選擇標(biāo)志bit Selected;/確定/返回鍵選擇標(biāo)志bit ReturnSelection;/返回鍵啟用標(biāo)志bit AVGSpeedShow;/平均速度顯示標(biāo)志bit TotalDistanceShow;/總路程顯示標(biāo)志bit ReturnMain;/返回主菜單標(biāo)志bit AutoDisplay;/自動(dòng)顯示標(biāo)志bit GoToChoosingDisplay;/人工選擇標(biāo)志bit AutoMode=0;char PassLineID=0;char PassLine=
57、0;float PrepareDistance;float FirstDistance;float SecondDistance;float ThirdDistance;int FirstHigh;int SecondHigh;int ThirdHigh;float Rate=1.25; /5ms時(shí)的速度f(wàn)loat Count=4;/時(shí)間的倍數(shù)/* 全局函數(shù)實(shí)現(xiàn)區(qū)*/*-主函數(shù) -*/void main() P01=0;P02=0;P03=0;P04=0;P31=1;/單片機(jī)復(fù)位,背光開(kāi)Delay(40);/延時(shí)等待LCD啟動(dòng)LCDInit();/初始化LCDDisplayString(0 x
58、0,0, Starting. );DisplayString(0 x0,1,Designed By 202);Delay(300);WriteCmd(LCD_CLS);EA=1; /開(kāi)總中斷EX0=1;/開(kāi)INT0中斷IT0=1;/INTO邊沿觸發(fā)EX1=1; /開(kāi)INT1中斷IT1=1; /INT1邊沿觸發(fā)SelectedAll=False; /開(kāi)始模式和速度選擇/*- 模式選擇 -*/DisplayString(0 x0,0,Choose The Mode );DisplayString(0 x0,1,you want. );Delay(50);WriteCmd(LCD_CLS);IsSe
59、lectingMode=True;while(1) WriteCmd(LCD_CLS);DisplayString(0 x0,0, Line Mode );DisplayString(0 x0,1,Next Yes);Delay(300);/延時(shí)消除抖動(dòng)while (1) /不斷檢測(cè)中斷,直到按確定鍵或是NEXT鍵if (Next=True)/如果按Next鍵則直接跳出break;if (ModeSelected=True)/如果按確定鍵則設(shè)置模式為L(zhǎng)ine并跳出SelectedMode=Line;break;/如果什么鍵都沒(méi)有按下,那么一直顯示等待if (ModeSelected=True)
60、/按下了確定鍵,退出模式選擇IsSelectingMode=False;break;if (Next=True)/按下了Next鍵,顯示下一個(gè)菜單項(xiàng)Next=False;WriteCmd(LCD_CLS);DisplayString(0 x0,0, Curve Mode );DisplayString(0 x0,1,Next Yes);Delay(300);/延時(shí)消除抖動(dòng)while(1)/不斷檢測(cè)中斷,直到按確定鍵或是Next鍵 if (Next=True)/如果再一次按下Next鍵,則跳出break;if (ModeSelected=True)/如果按下確定鍵,則設(shè)置模式為Curve,并跳出
61、SelectedMode=Curve;break; if (ModeSelected=True) /按下了確定鍵,退出模式選擇IsSelectingMode=False;break;if (Next=True)/再一次按下了Next鍵,則循環(huán)模式選擇Next=False;WriteCmd(LCD_CLS);DisplayString(0 x0,0, AutoMode );DisplayString(0 x0,1,Next Yes);Delay(300); /延時(shí)消除抖動(dòng)while(1)if (Next=True)break;if (ModeSelected=True)AutoMode=1;br
62、eak;if (ModeSelected=True)IsSelectingMode=False;break;if (Next=True)Next=False;continue;Delay(50);WriteCmd(LCD_CLS); /*- 速度選擇 -*/if (SelectedMode=Line & AutoMode=0)DisplayString(0 x0,0, Now Choose a );DisplayString(0 x0,1, kind of Speed );Delay(50);WriteCmd(LCD_CLS);IsSelectingSpeed=True;while(1)Wri
63、teCmd(LCD_CLS);DisplayString(0 x0,0, Normal Speed );DisplayString(0 x0,1,Next Yes);Delay(300); /延時(shí)消除抖動(dòng)while(1)if (Next=True) /如果按Next鍵則直接跳出break;if (SpeedSelected=True) /如果按確定鍵則設(shè)置速度為Normal并跳出Thx0=0 xec;Tlx0=0 x78; /5msThx1=0 xf0;Tlx1=0 x60; /4msThx2=0 x8a;Tlx2=0 xd0; /30msThx3=0 xf4;Tlx3=0 x48; /3ms
64、SelectedSpeed=Normal;break; /如果什么鍵都沒(méi)有按下,那么一直顯示等待if (SpeedSelected=True) /按下了確定鍵,退出速度選擇IsSelectingSpeed=False;break;if (Next=True)Next=False;WriteCmd(LCD_CLS); DisplayString(0 x0,0, Low Speed );DisplayString(0 x0,1,Next Yes);Delay(300); /延時(shí)消除抖動(dòng)while(1)if (Next=True)/如果再一次按下Next鍵,則跳出break;if (SpeedSel
65、ected=True)/如果按下確定鍵,則設(shè)置速度為L(zhǎng)ow,并跳出SelectedSpeed=Low;/這里沒(méi)有速度設(shè)置,因?yàn)槟J(rèn)速度就是Lowbreak;if (SpeedSelected=True)/按下了確定鍵,退出速度選擇IsSelectingSpeed=False;break;if (Next=True)Next=False;WriteCmd(LCD_CLS);DisplayString(0 x0,0, High Speed );DisplayString(0 x0,1,Next Yes);Delay(300); /延時(shí)消除抖動(dòng)while(1)if (Next=True) /如果再一
66、次按下Next鍵,則跳出break;if (SpeedSelected=True) /如果按下確定鍵,則設(shè)置速度為High,并跳出Thx0=0 xe0;Tlx0=0 xc0; /8ms Thx1=0 xe0;Tlx1=0 xc0; /8ms Thx2=0 x63;Tlx2=0 xc0; /40ms Thx3=0 xec;Tlx3=0 x78; /5msSelectedSpeed=High;break;if (SpeedSelected=True) /按下了確定鍵,退出速度選擇IsSelectingSpeed=False;break;if (Next=True) /再一次按下了Next鍵,則循環(huán)速度選擇Next=False;continue;SelectedAll=True; /標(biāo)志模式選擇和速度選擇完畢Running=True;Delay(50);WriteCmd(LCD_CLS);/*- 顯示所選擇的模式和速度方案 -*/if (SelectedMode=Line)DisplayString(0 x0,0,Choosen Mode is );DisplayString(0 x0,1,
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)6整理和復(fù)習(xí)2圖形與幾何第7課時(shí)圖形的位置練習(xí)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)6整理和復(fù)習(xí)2圖形與幾何第1課時(shí)圖形的認(rèn)識(shí)與測(cè)量1平面圖形的認(rèn)識(shí)練習(xí)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)6整理和復(fù)習(xí)1數(shù)與代數(shù)第10課時(shí)比和比例2作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)4比例1比例的意義和基本性質(zhì)第3課時(shí)解比例練習(xí)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)3圓柱與圓錐1圓柱第7課時(shí)圓柱的體積3作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)3圓柱與圓錐1圓柱第1節(jié)圓柱的認(rèn)識(shí)作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)2百分?jǐn)?shù)(二)第1節(jié)折扣和成數(shù)作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)1負(fù)數(shù)第1課時(shí)負(fù)數(shù)的初步認(rèn)識(shí)作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)上冊(cè)期末復(fù)習(xí)考前模擬期末模擬訓(xùn)練二作業(yè)課件蘇教版
- 2023年六年級(jí)數(shù)學(xué)上冊(cè)期末豐收?qǐng)@作業(yè)課件蘇教版
- 2023年六年級(jí)數(shù)學(xué)上冊(cè)易錯(cuò)清單十二課件新人教版
- 標(biāo)準(zhǔn)工時(shí)講義
- 2021年一年級(jí)語(yǔ)文上冊(cè)第六單元知識(shí)要點(diǎn)習(xí)題課件新人教版
- 2022春一年級(jí)語(yǔ)文下冊(cè)課文5識(shí)字測(cè)評(píng)習(xí)題課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊(cè)6整理和復(fù)習(xí)4數(shù)學(xué)思考第1課時(shí)數(shù)學(xué)思考1練習(xí)課件新人教版