<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 汽車電子 > 設(shè)計應(yīng)用 > 復(fù)雜路況下智能小車的設(shè)計

          復(fù)雜路況下智能小車的設(shè)計

          作者:傅海軍 段少飛 李炫君 時間:2018-09-27 來源:電子產(chǎn)品世界 收藏
          編者按:本文研究復(fù)雜路況下多功能智能小車的設(shè)計,硬件設(shè)計以STC 89C52RC為核心,通過HC-06藍牙模塊實現(xiàn)與Android手機通訊并實現(xiàn)遠程操控,并利用1602液晶顯示模塊來實現(xiàn)交互。小車驅(qū)動方面采用了L298N為驅(qū)動模塊,另采用ST188紅外光電傳感器以實現(xiàn)小車自動尋路功能。本項目使用的控制軟件是通過MIT APP Inventor平臺設(shè)計的。

          作者 / 傅海軍 段少飛 李炫君 江蘇大學(xué)電氣信息工程學(xué)院(江蘇 鎮(zhèn)江)

          本文引用地址:http://www.ex-cimer.com/article/201809/392389.htm

          江蘇大學(xué)高等教育教改研究立項課題 (2017JGYB045) ;江蘇大學(xué)大學(xué)生科研立項資助項目(15B114)

          摘要:本文研究復(fù)雜路況下多功能的設(shè)計,硬件設(shè)計以STC 89C52RC為核心,通過HC-06藍牙模塊實現(xiàn)與Android手機通訊并實現(xiàn)遠程操控,并利用1602液晶顯示模塊來實現(xiàn)交互。小車驅(qū)動方面采用了L298N為驅(qū)動模塊,另采用ST188紅外光電傳感器以實現(xiàn)小車自動尋路功能。本項目使用的控制軟件是通過MIT APP Inventor平臺設(shè)計的。

          1 引言

            作為智能機器人的雛形,它通過內(nèi)外傳感器感知外部環(huán)境信息和自身狀態(tài),完成相應(yīng)動作。是一個在復(fù)雜環(huán)境中實現(xiàn)自主作業(yè)的自動控制系統(tǒng),屬于陸地自主行駛車輛的一種。它涉及到單片機、傳感器、信息融合、通信接口、導(dǎo)航控制、人工智能以及自動控制等一系列高新技術(shù)。研究適應(yīng)復(fù)雜環(huán)境的智能車對我國科技的發(fā)展具有重要意義,機器對環(huán)境的耐受能力是高于人類的,在諸如火災(zāi)、地震等災(zāi)害后的現(xiàn)場搜救中,這類機器能發(fā)揮出很大作用。目前國內(nèi)外都有類似功能的機器人,但功能還不夠完善且由于行走系統(tǒng)不完善,不能適應(yīng)復(fù)雜環(huán)境。還有未知地區(qū)的探索,如礦洞、極地等,甚至外星探索用的考察車也屬于的研究范圍。本設(shè)計以51單片機為核心,可以實現(xiàn)自動避障、遠程藍牙操控等功能,以應(yīng)對可能出現(xiàn)的復(fù)雜環(huán)境。另外本設(shè)計在開發(fā)時就預(yù)留了其他功能接口,可以方便的實現(xiàn)改裝升級,例如加入視頻監(jiān)控模塊、尋跡模塊等,都很方便。

          2 系統(tǒng)總體設(shè)計

            系統(tǒng)的功能主要依靠四個模塊來完成,分別為藍牙通訊模塊,1602液晶顯示模塊,直流減速電機驅(qū)動模塊,自動避障模塊。設(shè)計以Android手機為控制平臺,通過HC-06藍牙接收模塊與手機端藍牙連接配對,實現(xiàn)手機與51單片機的通訊并通過命令來控制小車行動。一般情況下小車能夠自動探索。L298N電機驅(qū)動模塊同時驅(qū)動兩個電機,通過單片機控制兩個電機分別正、反轉(zhuǎn)來實現(xiàn)智能小車前進、后退、左右轉(zhuǎn)向及掉頭,每一步命令開始或動作結(jié)束,都會在1602液晶顯示模塊和手機端顯示出來,易于控制。系統(tǒng)采用7.2 V電池供電,此電源可直接給L298N供電,51單片機的供電電源采用L298電機驅(qū)動模塊上自帶的5 V電源輸出,這二者正常工作需要共地。系統(tǒng)總框圖如圖1所示。

          3 系統(tǒng)硬件

            系統(tǒng)主要硬件包括:STC89C52最小系統(tǒng)、HC-06藍牙模塊、LCD1602液晶顯示模塊、 電機驅(qū)動模塊等,另外本設(shè)計采用手機來實現(xiàn)遠程控制。硬件原理圖如圖2所示。

            3.1 主控系統(tǒng)選擇

            本系統(tǒng)采用STC89C52RC作為核心,這是STC公司生產(chǎn)的一種低功耗、高性能的8位CMOS微控制器,具有 8K 在系統(tǒng)可編程Flash存儲器,512字節(jié)RAM,是一款十分經(jīng)典的單片機,本設(shè)計采用這款單片機的原因是其性能足夠支持智能小車完成各種復(fù)雜動作,且相關(guān)資料十分豐富,結(jié)構(gòu)簡單,適合研究設(shè)計。

            3.2 HC-06藍牙模塊

            本設(shè)計采用HC-06藍牙模塊作為智能小車與手機端通信的橋梁,選中原因是其應(yīng)用廣泛且價格低廉,在淘寶上就能購買,方便控制成本。為了實現(xiàn)HC-06模塊與手機的正常連接,設(shè)計中使用了MIT APP Inventor平臺編寫了手機端軟件,實際效果與“聊天”類似。使用過程中,手機作為客戶端,HC-06藍牙模塊作為服務(wù)器,實現(xiàn)手機操控單片機的效果。控制軟件界面如圖3所示。

            3.3 L298N電機驅(qū)動模塊

            本設(shè)計選用L298N作為電機驅(qū)動模塊,其特點是工作穩(wěn)定,可實現(xiàn)電機正反轉(zhuǎn)及調(diào)速,啟動性能好,啟動轉(zhuǎn)矩大。其工作電壓可達到36 V,4 A電流,可同時驅(qū)動兩臺直流電機,很適合用于機器人及智能小車的設(shè)計。

            智能小車的電機使用直流減速電機,這是設(shè)計智能小車最常用的電機。這種電機是在普通電機的基礎(chǔ)上加上減速齒輪組,降低電機轉(zhuǎn)速的同時提升扭力,使其可以帶動大質(zhì)量物體運動,舍棄部分速度換取良好的克服復(fù)雜地形的能力。

            3.4 LCD1602液晶顯示模塊

            本設(shè)計采用1602液晶顯示模塊來顯示操作參數(shù),方便用戶的人機交互。1602液晶顯示模塊每一屏可以顯示兩路16位字符,不能顯示中文,可以作為簡單觀測窗口觀測小車狀態(tài)。本次采用十六腳的LCD1602,其數(shù)據(jù)命令接口連接單片機P0口,V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,15腳背光正極,16腳背光負(fù)極,使用中可以根據(jù)實際效果調(diào)整。

            3.5 自動避障模塊

            設(shè)計自動避障模塊采用了ST188紅外光電傳感器,其一般電路如圖4,本設(shè)計中R1=510 Ω,R2=20kΩ,E為輸出端。

            為方便控制小車,設(shè)計中使用了4組ST188光電傳感器l1、l2、r1、r2,其輸出端分別對應(yīng)單片機P3^2、P3^3、P3^6、P3^7口,共有16種不同的狀態(tài),可以劃分為前行(0000)、左轉(zhuǎn)90°(0010、0011)、右轉(zhuǎn)90°(0100、1100)、左轉(zhuǎn)45°(0001、1001)、右轉(zhuǎn)45°(1000)、掉頭(1011、1101、1111)、后退左轉(zhuǎn)90°(0101、0110、0111)、后退右轉(zhuǎn)90°(1010、1110)共8種轉(zhuǎn)向方案,更貼近實際情況。

          4 軟件設(shè)計

            軟件系統(tǒng)流程圖如圖5所示。接上電源后, 程序開始初始化設(shè)置, 藍牙一直在檢測是否收到指令, 如果接收到了指令,則會根據(jù)接收的指令執(zhí)行,否則會一直在循環(huán)檢測。當(dāng)進入了自動探索模式后, 藍牙模塊停止工作,小車根據(jù)紅外傳感器的返回數(shù)據(jù)行動。

          5 實驗成果分析

            小車在實際檢測過程中基本實現(xiàn)了設(shè)計功能,在自動避障模式下,智能小車能靈活地實現(xiàn)避障效果。在藍牙模式下,小車也能正常的按照指令前進、后退和轉(zhuǎn)向,基本實現(xiàn)了預(yù)期功能,小車實物圖如圖6。在系統(tǒng)運行過程中,由于L298N同時控制兩個存在一定差異的電機,造成小車連續(xù)直行時會有微小的偏角,加裝光電測速器可以解決此問題,但由于小車本身行進速度不快,對于前進方向的要求也并不高,所以并不影響小車性能。另外由于電路設(shè)計存在缺陷,在藍牙模塊工作時,1602液晶顯示模塊會出現(xiàn)輕微的閃屏現(xiàn)象,這是由于電壓不穩(wěn)定引起的。

          6 總結(jié)

            本文介紹了一種利用移動端直接控制智能小車的思路。本項目是中國各種電子競賽的熱門項目,網(wǎng)絡(luò)上有很多資料,我們選題時就考慮過這個問題。本項目屬于那種研究的人很多,但怎么研究都不會過時的項目,同時,由于有較多的網(wǎng)上資料及學(xué)院研究相關(guān)項目的人的幫助,智能小車項目也不至于難到我們無處下手的地步,這是一個很適合我們的項目。在這次的項目實戰(zhàn)中,涉及到很多平時為人們忽視的東西,例如將自動避障的紅外探頭朝向地面,再修改部分程序,就能實現(xiàn)尋跡功能,很多東西都是互通的。此次設(shè)計中,單片機的P3口并沒有被充分利用,這說明本設(shè)計的小車仍具有較大的改進空間。另外小車原本的設(shè)計是有視頻錄像模塊的,但考慮到成本及電路優(yōu)化的問題,并沒有將其加入最終成品中,但這也是一個不錯的設(shè)計思路,希望未來有更好的設(shè)計思路和方案。

            參考文獻:

            [1]李曉林,牛昱光, 閻高偉. 單片機原理與接口技術(shù)(第2版)[M]. 北京: 電子工業(yè)出版社, 2011

            [2]喬維德. 改進粒子群優(yōu)化神經(jīng)網(wǎng)絡(luò)的高壓斷路器故障診斷[J]. 常熟理工學(xué)院學(xué)報, 2016,30(2):47-50

            [3]楊桂林. 基于 AT89S51 的智能小車的設(shè)計[ J].單片機開發(fā)與應(yīng)用, 2010(26):124-125.

            [4] 孟祥武, 胡勛, 王立才, 等. 移動推薦系統(tǒng)及其應(yīng)用[J] . 軟件學(xué)報,2013, 24 ( 1 ): 91-100

            [5] 吳建平, 成 毅.“工程對象教學(xué)法” 模式應(yīng)用研究[J]. 成都理工大學(xué)學(xué)報(社會科學(xué)版), 2009, 17(4):85- 88

            [6] 宋 錦. 單片機課程項目教學(xué)法的探索和實踐[J]. 武漢職業(yè)技術(shù)學(xué)院學(xué)報, 2006, 5(6):90-120

            [7] 劉 春 陽, 賈 興 建. 基 于 labbview 的pc機 與 單 片 機 的 串 行 通 信研 究[J]. 電 源 技 木 期 刊,2008,14(1):15-18

            [8] 黃仁祥, 金琦, 易偉. 人人都能開發(fā)安卓APP--APPinventor2 應(yīng)用開發(fā)實戰(zhàn). 機械工業(yè)出版社, 2015.

            [9] 姚培, 張李堅, 周晶香. 基于單片機控制的智能尋跡避障小車[J] . 機電信息, 2010(12):154-193.

            本文來源于《電子產(chǎn)品世界》2018年第10期第36頁,歡迎您寫論文時引用,并注明出處。



          關(guān)鍵詞: 智能小車 藍牙控制 避障 201810

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();