智能跟隨車畢業(yè)設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  畢業(yè)設(shè)計(jì)(論文)</b></p><p>  題 目: 智能跟隨小車設(shè)計(jì) </p><p>  系 部: 電子工程系 </p><p>  專 業(yè): 電氣自動(dòng)化技術(shù) </p><p>  學(xué) 號(hào):

2、 </p><p>  學(xué)生姓名: </p><p>  指導(dǎo)教師: </p><p>  職 稱: </p><p><b>  二O一五年一月二日</b></p>

3、<p><b>  **職業(yè)學(xué)院</b></p><p>  畢業(yè)論文(設(shè)計(jì))任務(wù)書</p><p>  課題名稱: 智能跟隨小車設(shè)計(jì) </p><p>  系 部:_________電子系____ _____</p><p>  專 業(yè):_______電氣自動(dòng)化技術(shù)_ _<

4、/p><p>  姓 名:______ _鄭鵬___________</p><p>  學(xué) 號(hào):______2012***23216________</p><p>  指導(dǎo)教師: ***** </p><p><b>  二O一五年一月二日</b></p>&l

5、t;p>  畢業(yè)設(shè)計(jì)(論文)成績(jī)?cè)u(píng)定表</p><p>  系部: 電子工程系 專業(yè):電氣自動(dòng)化 班級(jí): 12 級(jí) 3 班 </p><p>  注:設(shè)計(jì)(論文)總成績(jī)=指導(dǎo)教師評(píng)定成績(jī)(30%)+評(píng)閱人評(píng)定成績(jī)(30%)+答辯成績(jī)(40%) </p><p>  智能跟隨小車的設(shè)計(jì)原理</p>&

6、lt;p>  濟(jì)南職業(yè)學(xué)院 電子工程系 鄭鵬</p><p>  摘要:目前,設(shè)計(jì)出具有智能化的產(chǎn)品已經(jīng)成為商家開(kāi)發(fā)產(chǎn)品的目標(biāo)之一,也是學(xué)生課外科技活動(dòng)的熱點(diǎn)之一;其中,專門針對(duì)具有自主巡線功能的智能小車的設(shè)計(jì)更是數(shù)不勝數(shù).但大多數(shù)智能巡線小車只是完成了“智能化”所要求的各部分的功能,在小車跟隨性方面考慮較少。</p><p>  此項(xiàng)目注重要求小車跟隨主人的智能性。當(dāng)你下了飛機(jī),面

7、對(duì)一個(gè)智能跟隨的小車載著行李跟你走,是否覺(jué)得舟車勞累的神經(jīng)有一些舒暢。當(dāng)你走進(jìn)琳瑯滿目的超市,有這樣一個(gè)只能跟隨的小車滿載著你選購(gòu)的物品跟隨在身邊,不再覺(jué)得陪女友逛街是在做兼職苦力。當(dāng)上了年歲的老人,陪伴伴侶散步,不再需要推輪椅,而是自動(dòng)跟隨移動(dòng)。智能跟隨小車將很好的解決這類問(wèn)題,把行李放在小車上,讓智能跟隨小車自動(dòng)跟隨主人。應(yīng)用范圍較廣,比如超市購(gòu)物車,賓館、旅店、辦公室、醫(yī)院的人力推車,運(yùn)輸系統(tǒng)的行李提取運(yùn)輸車等等。</p&g

8、t;<p>  關(guān)鍵詞:VB軟件 安卓軟件 單片機(jī) 步進(jìn)電機(jī) 102864液晶顯示器 wifi模塊 攝像頭</p><p>  目 錄</p><p>  研究背景………………………………………………………………(1)</p><p>  研究?jī)?nèi)容………………………………………………………………(1)</p><p

9、>  2.1 研究目標(biāo)…………………………………………………………………(1)</p><p>  2.2 研究方法…………………………………………………………………(1)</p><p>  2.3 研究計(jì)劃…………………………………………………………………(2)</p><p>  研究過(guò)程………………………………………………………………(2)</p

10、><p>  3.1 上位機(jī)軟件的開(kāi)發(fā)…………………………………………… ………(2)</p><p>  3.1.1 VB軟件開(kāi)發(fā)…………………………………………………………(2)</p><p>  3.1.2 Android軟件開(kāi)發(fā)………………………………………………(2)</p><p>  3.2 下位機(jī)主控系統(tǒng)……………………………

11、………………… ………(3)</p><p>  3.3 電機(jī)驅(qū)動(dòng)模塊………………………………………………… ………(3)</p><p>  3.4 測(cè)距模塊…………………………………………………………………(3)</p><p>  3.5 LCD顯示模塊………………………………………………… ………(4)</p><p>  3.6

12、 WiFi模塊 ………………………………………………………………(4)</p><p>  3.7車體制作…………………………………………………………………(4)</p><p>  3.8紅外傳感器………………………………………………………………(5)</p><p>  研究成果………………………………………………………………(6)</p><

13、;p>  4.1 實(shí)現(xiàn)WiFi模塊與PC或Android通訊……………………………(6)</p><p>  4.2 完成總體設(shè)計(jì)框圖………………………………………… …………(7)</p><p>  4.3完成系統(tǒng)硬件設(shè)計(jì)………………………………………………………(8)</p><p>  4.3.1單片機(jī)電路…………………………………………… ……………

14、(9)</p><p>  4.3.2軟件設(shè)計(jì) ……………………………………………………………(10)</p><p>  4.4顯示系統(tǒng)……………………………………………………… …………(10)</p><p>  4.5電機(jī)驅(qū)動(dòng)模塊……………………………………………………………(11)</p><p>  4.6電源設(shè)計(jì)……………………

15、……………………………… ……………(11)</p><p>  結(jié)束語(yǔ)……………………………………………………………… …………(12)</p><p>  參考文獻(xiàn)…………………………………………………………………………(12)</p><p>  致 謝……………………………………………………………………………(13)</p><p>

16、;  附 錄…………… ……………………………………………………………(14)</p><p><b>  研究背景</b></p><p>  現(xiàn)在,在國(guó)內(nèi)市場(chǎng)上暫時(shí)還沒(méi)有具有跟隨性的載物小車出現(xiàn)。而在國(guó)外,有一款最接近的產(chǎn)品,叫做“高爾夫球童車”。</p><p>  因?yàn)樵趪?guó)外很多人會(huì)打高爾夫,國(guó)外的人力球童是很貴的,因而這個(gè)設(shè)計(jì)有市場(chǎng)

17、。而在中國(guó),打高爾夫的人少之又少,能去買專業(yè)的球通車的就更加少了。 因而此產(chǎn)品在中國(guó)的網(wǎng)絡(luò)上搜到的資料很少,沒(méi)有中國(guó)的銷售商。</p><p>  此外,中國(guó)具有跟隨性的產(chǎn)品,主要都是有軌機(jī)械跟隨,用于工廠的各類生產(chǎn)機(jī)車的一部分,或是比賽場(chǎng)的有軌跟隨拍攝車,并沒(méi)有實(shí)際針對(duì)餐廳、旅館、機(jī)場(chǎng)、超市等大眾場(chǎng)合,或家庭個(gè)人的產(chǎn)品。</p><p>  技術(shù)上做到跟隨并不難,但是沒(méi)有應(yīng)用到生活中的產(chǎn)

18、品方向?;陂L(zhǎng)時(shí)間對(duì)智能小車的不斷開(kāi)發(fā),小車的自動(dòng)壁障、自動(dòng)化設(shè)計(jì)都已經(jīng)很純熟,設(shè)計(jì)的資源共享度很高。對(duì)于開(kāi)發(fā)新型跟隨性智能小車技術(shù)上有保障。</p><p><b>  研究?jī)?nèi)容</b></p><p><b>  2.1研究目標(biāo)</b></p><p>  開(kāi)發(fā)一款A(yù)ndroid手機(jī)控制軟件,制作一款智能車。智能車包含

19、wifi通信,視頻傳輸、圖像的簡(jiǎn)單識(shí)別、電機(jī)驅(qū)動(dòng)、紅外跟隨、超聲波測(cè)距和12864液晶顯示屏。</p><p><b>  2.2 研究方法</b></p><p>  研究方法是指在研究中發(fā)現(xiàn)新現(xiàn)象、新事物,或提出新理論、新觀點(diǎn),揭示事物內(nèi)在規(guī)律的工具和手段。這是運(yùn)用智慧進(jìn)行科學(xué)思維的技巧,一般包括文獻(xiàn)調(diào)查法、觀察法、思辨法、行為研究法、歷史研究法、概念分析法、比較

20、研究法等。研究方法是人們?cè)趶氖驴茖W(xué)研究過(guò)程中不斷總結(jié)、提煉出來(lái)的。由于人們認(rèn)識(shí)問(wèn)題的角度、研究對(duì)象的復(fù)雜性等因素,而且研究方法本身處于一個(gè)在不斷地相互影響、相互結(jié)合、相互轉(zhuǎn)化的動(dòng)態(tài)發(fā)展過(guò)程中,所以對(duì)于研究方法的分類目前很難有一個(gè)完全統(tǒng)一的認(rèn)識(shí)。</p><p><b>  2.3研究計(jì)劃</b></p><p>  2014.11.7-2014.11.30小車底盤制作

21、與切割</p><p>  2014.12.01-2014.12.30 wifi與單片機(jī)通信</p><p>  2015.03.01-2015.03.10單片機(jī)與紅外傳感器調(diào)試與編程</p><p>  2015.03.11-2014.04.11單片機(jī)與L298N(電機(jī)驅(qū)動(dòng)模塊)通信與步進(jìn)電機(jī)驅(qū)動(dòng)</p><p>  2015.04.11-

22、2015.04.25 wifi模塊與攝像頭數(shù)據(jù)傳輸</p><p>  2015.04.25-2015.04.30 整車組裝與調(diào)試</p><p><b>  研究過(guò)程</b></p><p>  3.1 上位機(jī)軟件的開(kāi)發(fā)</p><p>  3.1.1 VB軟件開(kāi)發(fā)</p><p>  Vis

23、ual Basic是一種由微軟公司開(kāi)發(fā)的包含協(xié)助開(kāi)發(fā)環(huán)境的事件驅(qū)動(dòng)編程語(yǔ)言。從任何標(biāo)準(zhǔn)來(lái)說(shuō),VB都是世界上使用人數(shù)最多的語(yǔ)言——不僅是盛贊VB的開(kāi)發(fā)者還是抱怨VB的開(kāi)發(fā)者的數(shù)量。它源自于BASIC編程語(yǔ)言。VB擁有圖形用戶界面(GUI)和快速應(yīng)用程序開(kāi)發(fā)(RAD)系統(tǒng),可以輕易的使用DAO、RDO、ADO連接數(shù)據(jù)庫(kù),或者輕松的創(chuàng)建ActiveX控件。程序員可以輕松的使用VB提供的組件快速建立一個(gè)應(yīng)用程序。</p><

24、p>  3.1.2 Android軟件開(kāi)發(fā)</p><p>  Android是一種基于Linux的自由及開(kāi)放源代碼的操作系統(tǒng),主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦,由Google公司和開(kāi)放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開(kāi)發(fā)。尚未有統(tǒng)一中文名稱,中國(guó)大陸地區(qū)較多人使用“安卓”或“安致”。Android操作系統(tǒng)最初由Andy Rubin開(kāi)發(fā),主要支持手機(jī)。2005年8月由Google收購(gòu)注資。2007年11月,Goog

25、le與84家硬件制造商、軟件開(kāi)發(fā)商及電信營(yíng)運(yùn)商組建開(kāi)放手機(jī)聯(lián)盟共同研發(fā)改良Android系統(tǒng)。</p><p>  3.2下位機(jī)主控系統(tǒng)</p><p>  采用單片機(jī)作為整個(gè)系統(tǒng)的核心,用其控制行進(jìn)中的小車。其關(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à)格低

26、廉等優(yōu)點(diǎn)。因此,這種方案是一種較為理想的方案。</p><p>  針對(duì)本設(shè)計(jì)特點(diǎn)——多開(kāi)關(guān)量輸入的復(fù)雜程序控制系統(tǒng),不能用精簡(jiǎn)I/O口和程序存儲(chǔ)器的小體積單片機(jī),D/A、A/D功能也不必選用。根據(jù)這些分析,我選定了STC12C5A60S2單片機(jī)作為本設(shè)計(jì)的主控裝置,51單片機(jī)具有功能強(qiáng)大的位操作指令,I/O口均可按位尋址,程序空間多達(dá)8K,對(duì)于本設(shè)計(jì)也綽綽有余,更可貴的是51單片機(jī)價(jià)格非常低廉。</p&g

27、t;<p>  3.3 電機(jī)驅(qū)動(dòng)模塊</p><p>  我選用了L298N驅(qū)動(dòng)芯片,L298N是ST公司生產(chǎn)的一種高電壓、大電流電機(jī)驅(qū)動(dòng)芯片。該芯片采用15腳封裝。主要特點(diǎn)是:工作電壓高,最高工作電壓可達(dá)46V;輸出電流大,瞬間峰值電流可達(dá)3A,持續(xù)工作電流為2A;額定功率25W。內(nèi)含兩個(gè)H橋的高電壓大電流全橋式驅(qū)動(dòng)器,可以用來(lái)驅(qū)動(dòng)直流電動(dòng)機(jī)和步進(jìn)電動(dòng)機(jī)、繼電器線圈等感性負(fù)載;采用標(biāo)準(zhǔn)邏輯電平信號(hào)

28、控制;具有兩個(gè)使能控制端,在不受輸入信號(hào)影響的情況下允許或禁止器件工作有一個(gè)邏輯電源輸入端,使內(nèi)部邏輯電路部分在低電壓下工作;可以外接檢測(cè)電阻,將變化量反饋給控制電路。使用L298N芯片驅(qū)動(dòng)電機(jī),該芯片可以驅(qū)動(dòng)一臺(tái)兩相步進(jìn)電機(jī)或四相步進(jìn)電機(jī),也可以驅(qū)動(dòng)兩臺(tái)直流電機(jī)。這種調(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)。因此決定采用使用功率三極管作為功率放大器的

29、輸出控制步進(jìn)電機(jī)。</p><p>  3.4 LCD顯示模塊</p><p>  帶中文字庫(kù)的128X64是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)、二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集。利用該模塊靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文

30、人機(jī)交互圖形界面。</p><p>  可以顯示8×4行16×16點(diǎn)陣的漢字。也可完成圖形顯示。低電壓低功耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡(jiǎn)潔得多,且該模塊的價(jià)格也略低于相同點(diǎn)陣的圖形液晶模塊</p><p>  3.5 WiFi模塊 </p><p>  RM04模

31、塊為串口或TTL電平轉(zhuǎn)WIFI通信的一種傳輸轉(zhuǎn)換產(chǎn)品,Uart-Wifi模塊是基于Uart接口的符合wifi無(wú)線網(wǎng)絡(luò)標(biāo)準(zhǔn)的嵌入式模塊,內(nèi)置無(wú)線網(wǎng)絡(luò)協(xié)議IEEE802.11協(xié)議棧以及TCP/IP協(xié)議棧,能夠?qū)崿F(xiàn)用戶串口或TTL電平數(shù)據(jù)到無(wú)線網(wǎng)絡(luò)之間的轉(zhuǎn)換。</p><p>  一般架設(shè)無(wú)線網(wǎng)絡(luò)的基本配備就是無(wú)線網(wǎng)卡及一臺(tái)AP,如此便能以無(wú)線的模式,配合既有的有線架構(gòu)來(lái)分享網(wǎng)絡(luò)資源,架設(shè)費(fèi)用和復(fù)雜程度遠(yuǎn)遠(yuǎn)低于傳統(tǒng)的有

32、線網(wǎng)絡(luò)。如果只是幾臺(tái)電腦的對(duì)等網(wǎng),也可不要AP,只需要每臺(tái)電腦配備</p><p>  無(wú)線網(wǎng)卡。AP為AccessPoint簡(jiǎn)稱,一般翻譯為“無(wú)線訪問(wèn)節(jié)點(diǎn)”,或“橋接器”。它主要在媒體存取控制層MAC中扮演無(wú)線工作站及有線局域網(wǎng)絡(luò)的橋梁。有了AP,就像一般有線網(wǎng)絡(luò)的Hub一般,無(wú)線工作站可以快速且輕易地與網(wǎng)絡(luò)相連。特別是對(duì)于寬帶的使用,WiFi更顯優(yōu)勢(shì),有線寬帶網(wǎng)絡(luò)(ADSL、小區(qū)LAN等)到戶后,連接到一個(gè)A

33、P,然后在電腦中安裝一塊無(wú)線網(wǎng)卡即可。普通的家庭有一個(gè)AP已經(jīng)足夠,甚至用戶的鄰里得到授權(quán)后,則無(wú)需增加端口,也能以共享的方式上網(wǎng)。</p><p><b>  3.6 車體制作</b></p><p>  我選擇的車體是亞克力透明板材。亞克力的中文名稱由英文Acrylics音譯而來(lái),中文俗名有壓克力、阿克力。是丙烯酸類和甲基丙烯酸類化學(xué)品的通稱。包括單體、板材、粒料

34、、樹(shù)脂以及復(fù)合材料。亞克力板由甲基烯酸甲酯單體(MMA)聚合而成,即聚甲基丙烯酸甲酯(PMMA)板材有機(jī)玻璃,是一種經(jīng)過(guò)特殊工藝加工的有機(jī)玻璃。有“塑料皇后”之美譽(yù)。亞克力的研究開(kāi)發(fā),距今已有一百多年的歷史。</p><p>  亞克力板具有水晶一般的透明度,透光率達(dá)92%以上,用染料著色的亞克力板又有很好的展色效果,此外,亞克力板:具有極佳的耐候性,較高的表面硬度和表面光澤以及較好的耐高溫性能。亞克力板有良好的

35、加工性能,按生產(chǎn)工藝可分為澆鑄型和擠壓型兩種。既可采用熱成型(包括模壓,吹塑和真空吸塑),也可用機(jī)械加工方式如鉆、車、洗、切割等。用微電腦控制的機(jī)械切刮和雕刻不僅使加工精度大為提高,而且還可制作出比傳統(tǒng)方式更精美的圖案和造型。另外,亞克力板可采用激光切割和激光雕刻,制作效果奇特的制品。</p><p>  硬度是最能體現(xiàn)澆注亞克力板生產(chǎn)工藝和技術(shù)的參數(shù)之一,是品質(zhì)控制中的重要一環(huán)。硬度能反映出原料MMA純度、板材

36、耐候性以及耐高溫性能等。硬度直接影響到板材是否會(huì)收縮彎曲變形,加工時(shí)表面是否會(huì)出現(xiàn)皸裂等情況。硬度是評(píng)判壓克力板品質(zhì)好壞硬性指標(biāo)之一。澆注亞克力板具有目前最高的硬度指標(biāo)平均達(dá)洛氏硬度值90度。</p><p>  亞克力板且有極佳的耐候性,尤其應(yīng)用于室外,居其他塑膠之冠,并兼具良好的表面硬度與光澤,加工可塑性大,可制成各種所需要的形狀與產(chǎn)品。其板材的種類繁多色彩豐富(含半透明的色板),另一特點(diǎn)是厚板仍能維持高透明

37、度。</p><p><b>  3.7紅外傳感器</b></p><p>  我選用E18-D80NK型紅外避障傳感器,紅外避障傳感器(以下簡(jiǎn)稱紅外)。紅外具有一對(duì)紅外信號(hào)發(fā)射與接收二極管,發(fā)射管發(fā)射一定頻率的紅外信號(hào),接收管接收這種頻率的紅外信號(hào),當(dāng)紅外的檢測(cè)方向遇到障礙物(反射面)時(shí),紅外信號(hào)反射回來(lái)被接收管接收,經(jīng)過(guò)處理之后,通過(guò)數(shù)字傳感器接口返回到機(jī)器人主機(jī)

38、,機(jī)器人即可利用紅外波的返回信號(hào)來(lái)識(shí)別周圍環(huán)境的變化。</p><p><b>  研究成果</b></p><p>  4.1 實(shí)現(xiàn)WiFi模塊與PC或Android通訊</p><p>  通過(guò)小型路由器來(lái)實(shí)現(xiàn)。該方案是在小車端安裝一個(gè)小型路由器,是小車周圍一定范圍具有WIFI覆蓋,然后將手機(jī)連接到路由器IP地址,對(duì)其發(fā)送指令,路由器接收指

39、令后對(duì)單片機(jī)串口發(fā)送數(shù)據(jù)指令,實(shí)現(xiàn)控制。系統(tǒng)框圖如下:</p><p>  圖 1 通訊程序系統(tǒng)框圖</p><p>  通過(guò)比較以上兩種方案。方案一雖然可以實(shí)現(xiàn)小車超遠(yuǎn)程控制,但開(kāi)發(fā)成本較高,相對(duì)于大一學(xué)生來(lái)說(shuō)技術(shù)難度較大,而且控制過(guò)程要消耗上網(wǎng)流量。而方案二則相對(duì)簡(jiǎn)單,開(kāi)發(fā)難度較低,適合制作玩具小車,因此我們選擇了方案二。</p><p>  4.2 完成總體

40、設(shè)計(jì)框圖</p><p>  遙控小車系統(tǒng)總框圖如圖2所示。</p><p><b>  圖 2 控制流程圖</b></p><p>  4.3 硬件系統(tǒng)設(shè)計(jì)</p><p>  4.3.1單片機(jī)電路</p><p><b>  1.單片機(jī)電路</b></p>

41、<p>  在這里,單片機(jī)要實(shí)現(xiàn)對(duì)電機(jī)驅(qū)動(dòng)模塊的控制,同時(shí)還要有路由器進(jìn)行串口通信,為了能夠控制電機(jī)轉(zhuǎn)速,可以使用單片機(jī)的定時(shí)器來(lái)實(shí)現(xiàn),利用單片機(jī)定時(shí)器功能控制IO口產(chǎn)生脈沖,通過(guò)脈沖調(diào)節(jié)電機(jī)轉(zhuǎn)速。</p><p>  考慮到單片機(jī)要實(shí)現(xiàn)以上功能,選擇使用STC12C5A60S2來(lái)構(gòu)成電路。STC12C5A60S2是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。在單

42、芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口。另外 STC89X52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,C

43、PU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。 </p><p>  此外,STC12C5A60S2設(shè)計(jì)和配置了振蕩頻率可為0Hz并可通過(guò)軟件設(shè)置省電模式。空閑模式下,CPU暫停工作,而RAM定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存

44、RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。</p><p><b>  該單片機(jī)主要特性:</b></p><p>  ? 8031 CPU與MCS-51 兼容</p><p>  ? 8K字節(jié)可編程FLASH存儲(chǔ)器(壽命:1000寫/擦循環(huán))<

45、;/p><p>  ? 全靜態(tài)工作:0Hz-24KHz</p><p>  ? 三級(jí)程序存儲(chǔ)器保密鎖定</p><p>  ? 128*8位內(nèi)部RAM</p><p>  ? 32條可編程I/O線</p><p>  ? 兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b>  ? 6個(gè)中斷源

46、</b></p><p><b>  ? 可編程串行通道</b></p><p>  ? 低功耗的閑置和掉電模式</p><p><b>  2.晶振選擇</b></p><p>  由于該課題的小車端是通過(guò)單片機(jī)串口通信接收收手機(jī)是控制指令,因此需要對(duì)單片機(jī)定時(shí)器初值進(jìn)行設(shè)置,若采用常

47、用12M晶振,初值不一定是整數(shù),通信時(shí)便會(huì)產(chǎn)生積累誤差,進(jìn)而產(chǎn)生波特率誤差,影響通信的同步性。采用11.0592M晶振可以得到非常準(zhǔn)確的數(shù)值,因此在制作過(guò)程中最好采用11.0592M或其整數(shù)倍的晶振。</p><p>  4.3.2軟件設(shè)計(jì) </p><p>  單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與一般電子系統(tǒng)設(shè)計(jì)的差別在于,它既要構(gòu)成硬件邏輯電路,也要設(shè)計(jì)相應(yīng)的支持軟件。Keil C51是美國(guó)Keil

48、Software 公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),該系統(tǒng)全WINDOWS界面且?guī)旌瘮?shù)豐富,調(diào)試功能強(qiáng)大、生成代碼率很高。</p><p>  本程序的主要思路是,利用單片機(jī)的計(jì)數(shù)器計(jì)時(shí),控制IO口產(chǎn)生PWM波用于控制電機(jī)轉(zhuǎn)速。利用P0口控制12864液晶顯示。其控制流程大致如下如所示:</p><p><b>  否</b></p>&l

49、t;p><b>  是</b></p><p><b>  否</b></p><p><b>  是</b></p><p><b>  圖3 程序框圖</b></p><p><b>  4.4顯示系統(tǒng)</b></p&

50、gt;<p>  顯示系統(tǒng)既可以選擇使用LED,也可以選擇使用LCD。就本系統(tǒng)的功能來(lái)說(shuō),使用LED已經(jīng)可以實(shí)現(xiàn)功能,不過(guò)考慮到使用LCD,可以輸出英文字符,從而使得顯示系統(tǒng)能夠更加美觀,同時(shí)也能更好的達(dá)到提高自己的目的,所以最后選擇使用液晶屏LCD。</p><p>  由于本次設(shè)計(jì)所要顯示的內(nèi)容不多,并不需要太大的液晶屏來(lái)顯示。所以選擇使用12864來(lái)進(jìn)行顯示。12864液晶每次可以顯示2行16

51、個(gè)字符,總共32個(gè)字符,而且可以顯示所有的ASCII碼,包括標(biāo)點(diǎn),數(shù)字,英文大小寫等,因此,使用該液晶屏可以很好的實(shí)現(xiàn)顯示功能。</p><p>  12864顯示屏的主要技術(shù)指標(biāo)如表2所示。</p><p><b>  表2主要技術(shù)指標(biāo)</b></p><p>  1602液晶顯示屏共有20個(gè)引腳,其各個(gè)引腳的功能如表3所示。</p&g

52、t;<p>  表3 12864顯示屏的引腳</p><p><b>  4.5電機(jī)驅(qū)動(dòng)模塊</b></p><p>  由于小車底盤電機(jī)額定電壓為12V,度電機(jī)驅(qū)動(dòng)模塊選擇了常用12V電機(jī)驅(qū)動(dòng)芯片L298N。</p><p>  L298N恒壓恒流橋式2A驅(qū)動(dòng)芯片,L298N可接受標(biāo)準(zhǔn)TTL邏輯電平信號(hào)VSS,VSS可接4.5

53、~7 V電壓。4腳VS接電源電壓,VS電壓范圍VIH為+2.5~46 V。輸出電流可達(dá)2.5 A,可驅(qū)動(dòng)電感性負(fù)載。1腳和15腳下管的發(fā)射極分別單獨(dú)引出以便接入電流采樣電阻,形成電流傳感信號(hào)。L298可驅(qū)動(dòng)2個(gè)電動(dòng)機(jī),OUT1,OUT2和OUT3,OUT4之間可分別接電動(dòng)。</p><p><b>  4.6電源設(shè)計(jì)</b></p><p>  小車電機(jī)啟動(dòng)時(shí)電流較大

54、,可能會(huì)將電源的電壓瞬間拉低,導(dǎo)致單片機(jī)和路由器不能正常工作,因此必須設(shè)計(jì)一個(gè)可靠的供電系統(tǒng)。</p><p>  解決該問(wèn)題常用以下三種方法:</p><p>  ? 選用性能更好的的電源:</p><p>  ? 采用獨(dú)立電源供電,即使用兩個(gè)電源分別給單片機(jī)和電機(jī)供電;</p><p>  ? 在電源附近并聯(lián)一個(gè)較大值的電容,當(dāng)電機(jī)啟動(dòng)時(shí)

55、,電流較大,電容中的電可以補(bǔ)償一部分電流,保證電壓不至于太低。</p><p>  以上三種方案中,方案1)成本過(guò)高,方案2)電路繁瑣,均不適合小型設(shè)備的應(yīng)用,所以我們選擇了方案3)。</p><p><b>  結(jié) 束 語(yǔ)</b></p><p>  該項(xiàng)目的獨(dú)特創(chuàng)新之處在于小車的控制是通過(guò)手機(jī)來(lái)實(shí)現(xiàn),而不是遙控手柄,從而使用更加方便,實(shí)現(xiàn)用

56、WIFI技術(shù)對(duì)玩具小車進(jìn)行遙控控制,包括小車前進(jìn)、后退、轉(zhuǎn)彎,超聲波測(cè)距,12864顯像等功能。</p><p>  該項(xiàng)目開(kāi)發(fā)的Android軟件和基于WIFI的控制系統(tǒng)不僅可以控制小車,稍做改動(dòng)就可用來(lái)控制電腦、家用電器甚至探測(cè)、排爆機(jī)器人等,通過(guò)路由器橋接的方式可以構(gòu)建成小型的智能家居,同時(shí)也可用于地質(zhì)檢測(cè)設(shè)備的手持終端。因此,該項(xiàng)目的成果將不僅僅局限于一個(gè)遙控小車,更具有價(jià)值的是手機(jī)遠(yuǎn)程控制系統(tǒng)。<

57、/p><p>  如今國(guó)外的幾家公司推出了基于蘋果手機(jī)控制航模和玩具賽車的產(chǎn)品。目前基于Android手機(jī)和WIFI技術(shù)開(kāi)發(fā)的娛樂(lè)軟件較多,而控制機(jī)電產(chǎn)品的軟件和專利相對(duì)較少。 2011年11月數(shù)據(jù),Android占據(jù)中國(guó)智能手機(jī)操作系統(tǒng)市場(chǎng)58%,其應(yīng)用領(lǐng)域和市場(chǎng)份額也在急速向平板電腦、消費(fèi)電子、智能家電領(lǐng)域擴(kuò)張。WIFI具有較強(qiáng)的數(shù)據(jù)傳輸能力,普通智能手機(jī)完全能達(dá)到1M/S以上的速度。因此,今后在此方面的的研究一

58、定會(huì)大大增加,具有很好的實(shí)用價(jià)值。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]郭天祥 51單片機(jī)c語(yǔ)言教程 大陸:電子工業(yè)出版社 2009.01.01</p><p>  [2]孫和平 單片機(jī)微機(jī)原理與接口技術(shù) 冶金工業(yè)出版社 2012.01.15</p><p>  [3]張勇 Gool

59、ge Android開(kāi)發(fā)技術(shù) 西安電子科技大學(xué)出版社 2011.10.01</p><p>  [4]郭宏志 Android應(yīng)用開(kāi)發(fā)詳解 電子工業(yè)出版社 2011.08.01</p><p>  [5]李剛 瘋狂Android講義 電子工業(yè)出版社 2011.06.01</p><p>  [6]林卓然 VB語(yǔ)言程序設(shè)計(jì)(第3版) 電子工業(yè)出版社 2012.06.0

60、1</p><p>  [7]田保軍 VB程序設(shè)計(jì)案例教程 電子工業(yè)出版社 2012.12.01</p><p>  [8]王淵峰 Altium_Designer10 科學(xué)出版社 2011.11</p><p><b>  致 謝:</b></p><p>  感謝劉曉陽(yáng)老師對(duì)我的論文的細(xì)心指點(diǎn)。首先細(xì)致地為我解題;當(dāng)

61、我迷茫于眾多的資料時(shí),他又為我提綱挈領(lǐng),梳理脈絡(luò),使我確立了本文的框架。論文寫作中,每周都得到劉老師的指點(diǎn)。從框架的完善,到內(nèi)容的擴(kuò)充;從行文的用語(yǔ),到格式的規(guī)范,老師都嚴(yán)格要求,力求完美。我再次為老師的付出表示感謝!</p><p><b>  附錄</b></p><p>  程序:#include<reg52.h>#include<math.

62、h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intuchar Buffer =0;      //從串口接收的數(shù)據(jù)uint i=0,j,URTAReceivedCou

63、nt=0,n=1;uchar flag=0;uchar data Tempdatatable[4],CommandDatatable[4];//數(shù)據(jù)包uchar key_stime_counter,hight_votage=15,timeT_counter;   //舵機(jī)的變量bit key_stime_ok;</p><p>

64、;  sbit control_signal=P3^6; //舵機(jī)控制信號(hào)sbit StatusLight=P0^0; //狀態(tài)燈sbit MainLight=P0^1; //主大燈</p><p>  sbit Trig  = P3^4; //雷達(dá)產(chǎn)生脈沖引腳sbit Echo 

65、; = P3^5; //接收雷達(dá)回波引腳</p><p>  /********************************************************************* 名稱 : Delay_1ms()* 功能 : 延時(shí)子程序,延時(shí)時(shí)間為 1ms * x*

66、 輸入 : x (延時(shí)一毫秒的個(gè)數(shù))* 輸出 : 無(wú)***********************************************************************/void Delay_1ms(uint i)//1ms延時(shí){ uchar x,j; for(j=0;j<i

67、;j++) for(x=0;x<=148;x++); }</p><p>  void TurnOnStatusLight(){        StatusLight=0;</p><p>  }/*********************************

68、************************************ 名稱 : Send_Data()* 功能 : 向上位機(jī)傳送字符* 輸入 : 無(wú)* 輸出 : 無(wú)***********************************************************************

69、/void Send_Data(uchar data type,uchar data cmd){   uchar data Buffer[4];     //構(gòu)建數(shù)據(jù)包      uchar *p; 

70、;  uint Send_Count=0;      p = Buffer;   Buffer[0]=0XFF;   Buffer[1]=type;   Buffer[2]=cmd;   Buffer

71、[3]=0XFF;       while(1)   {     if(*p==0XFF)  {    Send_Count++;  //0XFF標(biāo)志統(tǒng)計(jì)位  } 

72、 SBU</p><p>  /********************************************************************協(xié)議規(guī)定:包頭  類型位  數(shù)據(jù)位    結(jié)束位0XFF   1  1  

73、0;   0XFF各命令說(shuō)明:類型位   數(shù)據(jù)位    功能</p><p>  0X00    0X01    前進(jìn)0X00       0X02 

74、   后退0X00       0X03    左轉(zhuǎn)0X00       0X04    右轉(zhuǎn)0X00       

75、;0X00    停止</p><p>  0X01       0X01    舵機(jī)上0X01       0X02    舵機(jī)下</p>

76、<p>  0X02       0X01     車燈亮0X02       0X02     車燈滅</p><p>  0X03  &#

77、160;   雷達(dá)數(shù)據(jù)   發(fā)送雷達(dá)數(shù)據(jù) ***********************************************************************/</p><p>  /*******************************************************************

78、** 名稱 : Com_Int()* 功能 : 串口中斷子函數(shù)* 輸入 : 無(wú)* 輸出 : 無(wú)***********************************************************************/void Com_Int(void) interr

79、upt 4{ uchar temp; ES=0; //關(guān)串口中斷    RI=0; //軟件清除接收中斷 temp=SBUF;   if(temp==0XFF && URTAReceivedCount<2)  { 

80、;     Tempdatatable[0]==0XFF;  //包頭  URTAReceivedCount++;  }  else  {      Tempdatatable[n]=temp;  

81、; n++;     }</p><p>  if(URTAReceivedCount==2)//包尾  {   Tempdatatable[0]=0XFF;     Tempdatatable[3]=0XFF;  n=1;

82、     URTAReceivedCount=0;  //組包完畢  temp="";  //Send_Data(Tempdatatable[1],Tempdatatable[2]);  //發(fā)送組成的數(shù)據(jù)包回去  }</p><p>  

83、CommandDatatable[0]=Tempdatatable[0];  CommandDatatable[1]=Tempdatatable[1];  CommandDatatable[2]=Tempdatatable[2];  CommandDatatable[3]=Tempdatatable[3];</p><p>  ES=1;//開(kāi)串口

84、中斷}</p><p>  /********************************************************************* 名稱 : Com_Init()* 功能 : 串口初始化,晶振11.0592,波特率9600,使能了串口中斷* 輸入 : 無(wú)* 輸出

85、60;: 無(wú)***********************************************************************/void Com_Init(void){     TMOD = 0x21;     PCON = 0x00;&#

86、160;    SCON = 0x50;        TH1 = 0xFd;    //設(shè)置波特率 9600     TL1 = 0xFd; 

87、    TR1 = 1;  //啟動(dòng)定時(shí)器1    ES = 1;  //開(kāi)串口中斷  EA = 1;  //開(kāi)總中斷  IT0=0; EX0=1; }void

88、60;TimerInit(){     control_signal=0;                         EA<

89、;/p><p>  Delay_1ms(100); }</p><p>  /********************************************************************* 名稱 :Moto_Backward()* 功能 : 電機(jī)1、2啟動(dòng),都是后退,整車表現(xiàn)為后退。* 

90、輸入 : 無(wú)* 輸出 : 無(wú)***********************************************************************/void Moto_Backward(){      P1= 0x05;  Delay_1ms(100)

91、;}</p><p>  /********************************************************************* 名稱 :Moto_TurnLeft()* 功能 : 電機(jī)1后退,電機(jī)2前進(jìn),整車表現(xiàn)為左轉(zhuǎn)。* 輸入 : 無(wú)* 輸出 : 無(wú)*

92、**********************************************************************/void Moto_TurnLeft(){    P1= 0x09;  Delay_1ms(100);}/**************************************************

93、******************* 名稱 :Moto_TurnRight()* 功能 : 電機(jī)1前進(jìn),電機(jī)2后退,整車表現(xiàn)為右轉(zhuǎn)。* 輸入 : 無(wú)* 輸出 : 無(wú)***********************************************************************/void

94、 Moto_TurnRight(</p><p>  if (++key_stime_counter>=200)  {       key_stime_counter=0;       control_signal=1;&

95、#160;      key_stime_ok = 1;               // 20ms到       timeT_

96、counter=0;  }    if (key_stime_ok&&(++timeT_counter>=hight_votage))  {      key_stime_ok=0;      &

97、#160;timeT_counter=0;       control_signal=0;              // hight_votage*0.1ms到  }}</p>

98、<p>  void main(){        MainLight=0;     Delay_1ms(200);       Com_Init();//串口初始化   

99、0;       TimerInit();//舵機(jī)初始化      while(1)  {   if(CommandDatatable[0]==0XFF && CommandDatatable[3]==0XFF)&

100、#160;     {           switch (CommandDatatable[1])      //根據(jù)鍵值不同,執(zhí)行不同的內(nèi)容     &

101、#160;       {                   case 0X00:  //類型位0X00,表明是控制數(shù)據(jù)包,進(jìn)入控制數(shù)據(jù)case

102、                      switch(CommandDatatable[2])  //根據(jù)數(shù)據(jù)位的值來(lái)進(jìn)行選擇執(zhí)行不同的動(dòng)作    

103、60;                      {              

104、;               case 0X00:                 </p>

105、<p>  case 0X01:                                

106、      Moto_Forward();                            

107、                break;</p><p>  case 0X02:             &

108、#160;                       Moto_Backward();          

109、                                   break;<

110、/p><p>  case 0X03:                               

111、;        Moto_TurnLeft();                         

112、0;                    break;</p><p>  case 0X04:         

113、;                                    

114、60;  Moto_TurnRight();                               &

115、#160;                    break;              

116、0;                                 }   

117、                                    

118、0; break;        case 0X01:    //類型位0X01,表明是舵機(jī)數(shù)據(jù)包,進(jìn)入舵機(jī)case       switch(CommandDatatable[2])   &#

119、160;     {        case 0X01:                    

120、;SteerEngineTurningUp();                    break;           &#

121、160;     case 0X02:               SteerEngineTurningDown();         

122、 </p><p>  case 0X02:  //類型位0X02,表明是大燈數(shù)據(jù)包,進(jìn)入大燈case</p><p>  switch(CommandDatatable[2])         {     

123、         case 0X01:               MainLight=1;        

124、;       break;              case 0X02:           

125、0;         MainLight=0;                  break;      

126、}               break;</p><p>  default :  TR0=0;TR2=0;          

127、break;   }  }  }}</p><p>  /********************************************************************* 名稱 : extern_int0()* 功能 : 外部中斷0,紅外中斷函數(shù)

128、* 輸入 : 無(wú)* 輸出 : 無(wú)***********************************************************************/void extern_int0(void) interrupt 0 using 0 {    

溫馨提示

  • 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. 眾賞文庫(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論