走迷宮智能小車的研究與實現(xiàn)_第1頁
走迷宮智能小車的研究與實現(xiàn)_第2頁
走迷宮智能小車的研究與實現(xiàn)_第3頁
走迷宮智能小車的研究與實現(xiàn)_第4頁
走迷宮智能小車的研究與實現(xiàn)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘要摘要 走迷宮智能小車主要是基于自主反應(yīng)式智能系統(tǒng)原理。利用反射式紅外傳感器來導(dǎo)引,采用與地面顏色 有較大差別的導(dǎo)引線,紅外一體化接收頭來檢測障礙物的位置,通過改變單片機產(chǎn)生的 PWM 方波的占空比, 使其能在設(shè)計范圍內(nèi)可實現(xiàn)任意角度移動,實現(xiàn)小車識別路線,進(jìn)行自主迷宮探路,判斷并實現(xiàn)自動避障, 選擇正確的行進(jìn)路線。驅(qū)動電機采用直流電機,電機控制方式為單向 PWM 開環(huán)控制。控制核心采用 MSP430 單片機,僅用一塊單片機就實現(xiàn)了信號采集,路線判斷,電機控制。該技術(shù)可以應(yīng)用于無人工廠,倉庫,服 務(wù)機器人等領(lǐng)域。 總體規(guī)劃 對于走迷宮小車控制系統(tǒng)設(shè)計主要有三個方面:一、控制電路設(shè)計;二、傳感

2、器選擇以及安放位置設(shè)計; 三、程序設(shè)計。從總的方面來考慮,傳感器的使用數(shù)量應(yīng)該盡量少以減少單片機的信號處理量,但是又必 須能使小車行駛自如??刂齐娐芬鶕?jù)選用的電機和傳感器來設(shè)計,主要考慮穩(wěn)定性,抗干擾性。 關(guān)鍵詞:MSP430MSP430 迷宮算法 避障尋跡 PWMPWM AbstractAbstract A maze-running intelligent car is mainly based on the principle of automatic response intelligent system. It uses reflective infrared sensor to g

3、uide and the pilot wires are vary different from the ground in color. It uses infrared receiver to detect the position of the obstacle and is by change of PWM square-wave produced by MCU to realize arbitrary angle moving among the designed range and indentifying the route. It can touches maze automa

4、tically, judge and avoid the obstacle automatically, and choose the right marching route. It uses DC Motor as the driving motor. The control mode of the motor is unidirectional PWM open-loop control. This control makes MSP430 MCU as its core. It only uses one MCU to realize the signal collection and

5、 route estimation and motor control. This Technology can be applied in the fields such as unmanned factory and warehouse and Service Robot. The overall plan: The design of the control system of maze-running intelligent car mainly includes three parts: First: the design of the control circuit; Second

6、: the choosing of the sensor and the design of the mount position; Third: Program Design. From a overall perspective, you should use the sensors as few as possible so as to reduce the signal processing amount of the MCU and at the same time you must make the car march freely. The control circuit mus

7、t be designed according the motors and sensors chosen, mainly take the stability and the noise immunity into account. Keywords:Keywords: MSP430MSP430 mazemaze algorithmalgorithm obstacleobstacle avoidanceavoidance PWMPWM 目錄目錄 第一章第一章緒論緒論 .1 第二章第二章 各部件的工作原理各部件的工作原理 .3 2.1 前輪(導(dǎo)向輪).3 2.2電機 .4 2.3反射式紅外傳感

8、器 .5 2.4紅外一體化接收頭 .6 第三章第三章硬件電路硬件電路 .11 3.1電機驅(qū)動電路 .11 3.2反射式紅外傳感器電路 .13 3.3紅外一體化接收頭電路 .14 3.4 處理器電路 .16 第四章第四章電路原理圖電路原理圖 .19 第五章第五章控制算法控制算法 .21 5.1黑線位置判別 .21 5.2巡線算法 .21 5.3搜線算法 .23 5.4障礙物位置判別 .23 5.5轉(zhuǎn)彎控制 .25 5.6 迷宮探路控制 .26 第六章第六章相關(guān)軟件相關(guān)軟件 .29 第七章第七章總結(jié)總結(jié) .35 7.1 本文總結(jié) .35 7.2 進(jìn)一步的工作 .35 致謝致謝 .37 參考文獻(xiàn)參考

9、文獻(xiàn) .39 附錄一附錄一 .41 附錄二附錄二 .42 第一章緒論 當(dāng)今社會,科學(xué)技術(shù)日新月異,時代前進(jìn)的步伐越邁越寬,應(yīng)用自動化設(shè)備,計算機處理,現(xiàn)代化通訊, 數(shù)字化信息,現(xiàn)代化顯示設(shè)備等高新技術(shù)而建立的現(xiàn)代化智能,監(jiān)控等系統(tǒng)已經(jīng)得到充分的發(fā)展與應(yīng)用,智能 機器人也就應(yīng)運而生。同時,在建設(shè)以人為本的和諧社會的過程中,智能服務(wù)機器人能夠完成考古發(fā)掘,海 底揭密,宇宙探索等危險作業(yè),以保證人身安全。 國家中長期科學(xué)和技術(shù)發(fā)展規(guī)劃綱要一文指出:智能 服務(wù)機器人是在非結(jié)構(gòu)環(huán)境下為人類提供必要服務(wù)的多種高技術(shù)集成的智能化裝備。以服務(wù)機器人和危險作 業(yè)機器人應(yīng)用需求為重點,研究設(shè)計方法、制造工藝、智能

10、控制和應(yīng)用系統(tǒng)集成等共性基礎(chǔ)技術(shù)。重點研究 低成本的自組織網(wǎng)絡(luò),個性化的智能機器人。20062020 年,既是國家中長期技術(shù)發(fā)展計劃實現(xiàn)階段,也 是我們最具有活力和最激情洋溢的時段。 該智能小車模型是一輛完全由 PCB 拼裝的小車。所有的機械結(jié)構(gòu)和零部件都安裝固定在電路板上。因此 完全不需要機械加工,非常適合實驗階段機器人的研制。本文簡述了智能巡線避障小車自主走迷宮的設(shè)計思 路和實現(xiàn)過程。包括小車的機械結(jié)構(gòu)、電路、軟件、控制算法、調(diào)試方法等??勺鳛橐话愕脑O(shè)計參考。 小車的左右后輪分別由 2 只 6V 直流減速電機提供動力;前導(dǎo)向輪是一只萬向輪。430 單片機的 PWM 發(fā)生 器產(chǎn)生 4 路(分

11、為兩組)占空比可變的方波,經(jīng)三極管進(jìn)行擴流后分別驅(qū)動后輪左右電機??刂?4 路 PWM 的 比例,不僅可以調(diào)節(jié)小車向前運動的速度,還可通過 4 路 PWM 占空比的差異,改變小車運動方向。 5 只反射式紅外傳感器位于小車前方,3 只位于小車后方,小車周圍還分布有 7 個紅外一體化接收頭來實現(xiàn) 測距功能,將物體與小車的距離分為八個階段,當(dāng)物體離小車很近時實行相應(yīng)的程序以躲避障礙,并用反射 式紅外傳感器查找黑線位置,避免其脫離。 第二章第二章 各部件的工作原理各部件的工作原理 2.1 前輪(導(dǎo)向輪) 前輪是決定小車能否靈活拐彎的關(guān)鍵部分。這輛小車和汽車不同,不是靠前輪擺舵來控制轉(zhuǎn)彎,而是靠 左右后

12、輪速度差來實現(xiàn)轉(zhuǎn)彎控制。這樣前輪實際上是從動輪。下圖中,當(dāng)小車左輪的速度高于右輪時,小車 右轉(zhuǎn)彎;反之,當(dāng)小車右輪的速度高于左輪時, 小車左轉(zhuǎn)彎。前輪的速度可以分解為前進(jìn)的速度和水平側(cè)移的速度。普通的定軸的前輪只能垂直方向前進(jìn), 水平方向是無法左右滑動的。因此小車不可能實現(xiàn)拐彎(實際的結(jié)果是:因為前輪不能活動,右輪也成了從 動輪,兩輪速度一樣,直線前進(jìn)) 。所以前輪一定要能夠側(cè)滑,并能轉(zhuǎn)向。 最簡單的方法是使用萬向輪。一般機械上使用的萬向輪非常的笨重,實驗效果很不理想。這里我們設(shè)計 了一種簡易的萬向輪:用一根鍍鋅鐵絲彎成半圓形作為支架,穿一個小輪。 當(dāng)小車右轉(zhuǎn)彎時,小輪相對于支架左滑動(其實是

13、小輪因為地面摩擦而不動,支架右滑) ,轉(zhuǎn)彎角也隨 之改變;小輪還會根據(jù)轉(zhuǎn)彎量自動地調(diào)整到合適的角度。這種結(jié)構(gòu)小輪是自由的,只要有輕微的力,就能使 小輪滑動,轉(zhuǎn)向非常靈活。 圖 2.1前輪的結(jié)構(gòu) 需要注意的是萬向輪的安裝。要將 U 型半圓支架平行于地面,否則當(dāng)小車左右轉(zhuǎn)時 極易發(fā)生坍塌現(xiàn)象。而且前輪對小車的運行軌跡影響很大,所以出了在安裝時要保證 U 型支架平行于 地面外,還需要對 U 型支架作相應(yīng)的處理,比如潤滑、將 U 型支架兩端持平,以及還應(yīng)保證前輪的活動空間, 避免與前端的傳感器和后端的電池盒發(fā)生碰撞、摩擦。 實際我們所用的萬用輪中間的孔較大,所以很容易發(fā)生側(cè)移,我們可以用皮箱下面的小輪

14、來代替現(xiàn)在 我們所用的前輪,效果可能會好很多。 2.2電機 電機是我們的生活中不可缺少的動力源,常用的有交流電機和直流電機。這里小車的動力采用直流減 速電機直接驅(qū)動,省去了齒輪組、傳動部件等復(fù)雜的機械結(jié)構(gòu)。這里選擇了 6V/300rpm 的電機,速度和力矩 都比較適中。 直流電機的構(gòu)造:在繞有線圈的鐵芯(轉(zhuǎn)子)的外周,有相同數(shù)目的定子(永久磁鐵)相向包圍。通 過整流器的電刷轉(zhuǎn)子斷續(xù)地得到電流,轉(zhuǎn)子與定子的永久磁鐵反復(fù)相吸、排斥,結(jié)果無論他們的相互位置如 何,轉(zhuǎn)子始終能夠沿著一定的方向回轉(zhuǎn)。在永久磁鐵(NS)之間的線圈有電流通過時,產(chǎn)生電磁力,對應(yīng)于 永久磁鐵產(chǎn)生的磁場,N 極產(chǎn)生向上的力,S

15、極產(chǎn)生向下的力。結(jié)果導(dǎo)致線圈旋轉(zhuǎn)。 在線圈旋轉(zhuǎn)的同時,整流器也隨之旋轉(zhuǎn),這樣就能保證電流流向的自動切換以便維持轉(zhuǎn)子向同一方向 的連續(xù)轉(zhuǎn)動。于是,線圈中不斷地產(chǎn)生相同方向的旋轉(zhuǎn)力。 直流電機中的電刷與整流器實際上屬于機械接觸,由于在轉(zhuǎn)軸轉(zhuǎn)動的過程中他們的接觸狀態(tài)不斷發(fā)生 變化,往往產(chǎn)生電氣噪聲,這可能成為誘發(fā) CPU 電路誤動作的原因,因此為了克服噪聲干擾,一般在電機電 源端子上并聯(lián)一個電容器。 電機的安裝采用焊接。電機背面 2 個電源端子用粗銅絲焊在電路板上,克服電機自由轉(zhuǎn)動。電路板上刻 有一比電機略長的槽口,卡住電機,用拉緊的銅絲焊在電路板將電機固定,克服前后運動。 圖 2.3電機 改進(jìn):減

16、速電機成本高,且 300rpm 以上的電機需 12V 供電,不方便。競速車可改為錄音機的磁帶驅(qū)動 電機(約 3000rpm,車輪要減?。?。 用于固定電機的銅絲一般應(yīng)用多股細(xì)銅絲線。若用單股而比較粗的銅線的話有可能會因為小車的抖動而 使電機發(fā)生滑動,從而需要不斷的對電機進(jìn)行加固。 2.3反射式紅外傳感器 反射式紅外傳感器 ST188 采用高發(fā)射功率紅外廣電二極管和高靈敏度光電晶體管組成。檢測距離可調(diào) 整范圍為 415mm;采用非接觸檢測方式??捎糜?IC 卡電度表脈沖數(shù)據(jù)采集、集中抄表系統(tǒng)數(shù)據(jù)采集和傳 真機紙張檢測等。 圖 2.4反射式紅外傳感器工作原理 反射式紅外傳感器中包含一個發(fā)射器 LE

17、D 和一個光探測器(光敏二極管光敏三極管) 。著兩個元件被 封裝在同一個塑料殼體中,并且排列成適合他們工作的理想位置。LED 發(fā)出的一束光被一個表面反射后又回 到探測器中。 圖 1.4 是反射式紅外傳感器的工作原理圖。封裝在矩形殼體中的是發(fā)射器 LED(由左側(cè)的白色方塊表示) 和探測器裝置(在右側(cè)) 。虛線表示光線從發(fā)射器 LED 中發(fā)出并反射回探測器;探測器檢測到的光強大小取 決于物體表面的反射率,而這一光強就是傳感器的輸出值。 如圖所示,選通信號(高電平)經(jīng)過三極管擴流后送到傳感器的 K 腳,如果檢測到黑線,傳感器 C 腳 輸出高電平;否則輸出為低電平。 圖 2.5反射式紅外傳感器及其檢測

18、距離與轉(zhuǎn)換效率的關(guān)系圖 反射式傳感器在高度受控的理想環(huán)境下的工作性能更好,因為影響它輸出的外界因素有很多,如環(huán)境光 的變動、傳感器與被探測物體之間的距離,以及被探測物體的反射率等。為了減少環(huán)境光的干擾,首先需要 調(diào)整傳感器的方位使環(huán)境光不能直接射到探測器。 反射式紅外傳感器 ST188 的最佳探測距離為 6-14mm。所以將傳感器垂直于地面并且調(diào)整傳感器與地面的 距離,大約在 10mm 左右。傳感器引腳很細(xì),容易晃動,需要穿過一塊支撐板以增加強度;同時還可以通過 銅柱的高度或增加墊片來細(xì)調(diào)傳感器離地面的距離。 圖 2.6傳感器安裝圖 2.4紅外一體化接收頭 電視機、唱機等家電中廣泛使用紅外線遙

19、控器。紅外遙控器發(fā)出 38KHz 調(diào)制的紅外線,在接收端,被一 體化紅外接收頭接收,解調(diào)出原始鍵碼值。 因為紅外遙控使用廣泛、成熟、大批量,所以相關(guān)紅外接收、發(fā)射元件價格很低。本方案使用通用遙控 器的一體化紅外接收頭作為檢測元件。 圖 2.7 一體化紅外接收頭工作原理 一體化接收頭內(nèi)部集成有帶通濾波器,它只允許大約 38 kHz 的紅外信號通過。這種僅對 38KHz 敏感的 特性,有助于消除環(huán)境光對遙控器接收的影響。如圖,當(dāng)紅外線發(fā)射管 IR LED)發(fā)出的 38KHz 的紅外線被 一體化接收頭接收時,接收頭輸出“0” 。當(dāng)沒有偵測到紅外線,或非 38KHz 紅外線(如日光燈干擾) ,輸出 “

20、1” 利用一體化紅外接收頭在 38KHz 附近靈敏度的衰減的特性,可以實現(xiàn)測距功能。 圖 2 顯示的是某品牌的紅外線探測器(Panasonic PNA4602M)在 38KHz 附近的靈敏度如果紅外 LED 發(fā)送 頻率為 42 kHz,接收頭的靈敏度是頻率為 38.5 kHz 的 20%左右。 在非 38KHz 頻率下,探測器的靈敏度下降,為了讓探測器探測到紅外線的反射,物體必須離探測器更近, 才能使反射的紅外光更亮。 圖 2.8 接收頭在 38KHz 附近靈敏度曲線 那么,最高靈敏度的頻率可以探測最遠(yuǎn)距離的物體,較低靈敏度的頻率可以探測較近距離物體。距離探測功 能得以實現(xiàn)。選擇 8 個不同頻

21、率,從最高靈敏度到最低靈敏度進(jìn)行依次探測。首先嘗試最高靈敏度頻率,如 果物體被探測到了,就讓僅次于它的高靈敏度頻率測試,觀察是否可以探測到。依賴于不能再讓探測器檢測 到的紅外線頻率,我們就可以大致推斷物體距離處于哪個區(qū)域 圖 2.9 紅外線測距原理 如果需要更高的分辨率,還可通過掃頻法找到臨界頻率,從而更精確的得到物體位置。 下表是本人實測的頻率距離關(guān)系(測量條件:紅外發(fā)光管通過 5mA 電流,用一張 A4 的白紙當(dāng)障礙物): 頻率 38KHZ41KHZ44KHZ48KHZ54KHZ60KHZ67KHZ69KHZ 距離 34.0cm30.0cm25.0cm20.0cm15.0cm10.0cm5

22、.0cm2.5cm 表 1 頻率距離關(guān)系 該方法的缺點是精度差,且對物體顏色深淺比較敏感。對于地圖繪制等精度要求較高的場合不適用。但 對于機器人避障功能或路徑選擇來說,已經(jīng)足夠。 第三章第三章硬件電路硬件電路 3.1電機驅(qū)動電路 此部分是整個小車的大腦,是整個小車運行的核心部件,起著控制小車所有運行狀態(tài)的作用。通常選 用單片機作為小車的核心控制單元。這里選用 MSP430X149 單片機(如下有介紹) 。 考慮到小車必須能夠前進(jìn)、倒退、停止,并能靈活專性,在左右兩輪各裝一個電機分別進(jìn)行驅(qū)動。當(dāng) 左輪電機轉(zhuǎn)速高于右輪電機轉(zhuǎn)速時小車向右轉(zhuǎn),反之則向左轉(zhuǎn)。為了能控制車輪的轉(zhuǎn)速,左右兩輪的轉(zhuǎn)速, 可以

23、采取 PWM 調(diào)速法,即由單片機的 TAi 和 TBi 輸出一系列頻率固定的方波,再通過功率放大來驅(qū)動電機, 在單片機中編程改變輸出方波的占空比就可以改變加到電機上的平均電壓,從而可以改變電機的轉(zhuǎn)速。左右 兩輪兩個電機轉(zhuǎn)速的配合就可以實現(xiàn)小車的前進(jìn)、倒退、轉(zhuǎn)彎等功能。 這里采用簡單小電流 H 橋集成功放電路。如圖所示:該電路上半部分采用 S9013NPN 三極管,下半部分 采用 S9012PNP 三極管。它是一個既可靠又簡單的電路,它的接口很簡單,一是因為它僅有兩個輸入(A 和 B) ;二是因為當(dāng) H 橋集成功放電路的兩邊都導(dǎo)通時也不會造成電源短路(因為同邊上下的三極管不會同時導(dǎo) 通) 。該

24、H 橋集成功放電路比任何將 PNP 三極管安置在上邊的電路(該電路不會發(fā)生自動偏壓)的效率都更 高。 該 H 橋集成功放電路工作時,若將 A 端置為高電平,而將 B 端置為低電平,電機將按一定的方向轉(zhuǎn)動 (參見圖) 。若將 A 端和 B 端電位對調(diào),電機將朝另一方向轉(zhuǎn)動。如果 A 端和 B 端的電位相同,電機將自由 旋轉(zhuǎn)。電路控制的真值示于表中。 “0”為低電平, “1”為高電平。 圖 3.1電機驅(qū)動電路 如圖所示,將 PWM_L1 加到 A 端,PWM_L2 加到 B 端。當(dāng) PWM_L1 為高 PWM_L2 為低時,MG2 通電開始順時 針轉(zhuǎn)動;當(dāng) PWM_L1 為低 PWM_L2 為高時

25、 MG2 逆時針轉(zhuǎn)動??刂?PWM_L1 和 PWM_L2 信號高低電平的時間比,就 可以控制 MG的轉(zhuǎn)速。同樣的方法控制右輪。利用左右輪的速度差還可以轉(zhuǎn)向。 需要注意的是:被二極管分流到電源兩端的電力將造成主板電壓的瞬變或噪聲。更嚴(yán)重的是當(dāng)采用 PWM 信號控制電機時,每次關(guān)斷都會產(chǎn)生這種影響。如果導(dǎo)通三極管又重新開啟,同時反向電動勢電流仍然存在, 結(jié)果三極管將直接導(dǎo)通電源正極和地。這一現(xiàn)象時間的長短取決于續(xù)流二極管的關(guān)斷時間。這一電流稱作過 沖電流,它同樣會產(chǎn)生噪聲。基于以上原因,一條重要的對策是需要在 H 橋集成功放電路上加高速的旁路電 容(瓷質(zhì)電容或鉭電容)來保護電路中的電子元件乃至電

26、池。旁路電容的作用是平滑電流脈動和電源電壓的 瞬變。當(dāng)電壓出現(xiàn)尖峰時,電容將迅速地吸收這一能量,從而使電壓保持恒定。當(dāng)電壓降低時,電容將向電 路中回饋能量,從而使電壓有所回升。 改進(jìn):該電路是用 PWM 來控制電機的。經(jīng)試驗驗證該電路只有開關(guān)的作用,從單片機出來的 PWM 電壓大約在 3.5V 左右,加到電機兩邊最多只有 3V,這遠(yuǎn)遠(yuǎn)低于其耐壓,因此轉(zhuǎn)速也很慢,稍有摩擦就轉(zhuǎn)不動了。因此 需要再增加兩個三極管來進(jìn)行擴流,具體電路如下所示: 圖 3.2改進(jìn)的電機驅(qū)動電路 3.2反射式紅外傳感器電路 這里的尋跡是指小車在白色地板上尋黑線行走,通常采用的方法是紅外探測法。即利用紅外線在不同顏 色的物體

27、表面具有不同的反射性質(zhì)的特點,在小車行駛過程中不斷地向 地面發(fā)射紅外光,當(dāng)紅外光遇到白色紙質(zhì)地板時發(fā)生漫反射,反射光被安裝在小車上的接收管接收; 如果遇到黑線則紅外光被吸收,小車上的接收管接收不倒紅外光。單片機就是否反射回來的紅外光為依據(jù)來 確定黑線的位置和小車的行走路線。紅外探測器探測的距離有限,一般最大不應(yīng)超過 15cm。 這里用反射式紅外傳感器 ST188。當(dāng)小車在白色地面行駛時,裝在車下的紅外發(fā)射管發(fā)射紅外線信號, 經(jīng)白色反射后,被接收管接收,一旦接收管接收到信號,輸出端將輸出低電平;當(dāng)小車行駛到黑線時,紅外 線信號被黑色吸收后,將輸出高電平,從而實現(xiàn)了通過紅線檢測信號的功能。將檢測到

28、的信號送到單片機的 I/O 口,當(dāng) I/O 口檢測到的信號為高電平時,表明紅外光被地上的黑線吸收了,表明小車處在黑色的引線上; 同理,當(dāng) I/O 口檢測到的信號為低電平時,表明小車行駛在白色地面上。 為了提高控制精度,要求傳感器排列緊密,越緊越好。但傳感器排列緊密,傳感器發(fā)射管的光線可能會 從地面反射進(jìn)入臨近傳感器的接收管。所以不能同時開啟這些傳感器。下圖是傳感器電路的一部分。其中 6 和 7 好傳感器是用來記錄車輪轉(zhuǎn)過的圈數(shù),以便于記錄下小車走過的路徑距離。 圖 3.3反射式紅外傳感器電路 傳感器采取脈沖掃描式讀。例如某時刻 P_SEN1 高電平,其余 P_SEN25 低,這樣 1、4 號傳

29、感器的紅外發(fā)射 管亮,其余傳感器不發(fā)射紅外線。等待數(shù)據(jù)穩(wěn)定后,讀取 1、4 號傳感器的數(shù)據(jù)。然后關(guān)閉 1、4 號傳感器, 打開 2、5 號傳感器電源,依次類推,讀取 5 個傳感器的數(shù)據(jù)。這樣可以保證任何時刻都不會有臨近的傳感 器同時工作。從而保證了相鄰傳感器之間不會互相干擾。同時,紅外發(fā)射管是除了電機之外耗電最大的器件, 脈沖工作方式可以大大減少耗電量。 3.3紅外一體化接收頭電路 為了感應(yīng) 360 度范圍內(nèi)的障礙物,傳感器排布采用如下結(jié)構(gòu)。 圖 3.4 紅外測距環(huán)的傳感器布置 上圖注意應(yīng)把發(fā)射管安在接受管后面,防止小車行走時被破壞。每個傳感器組由一只紅外發(fā)射管、一只 一體化紅外接收頭,和一只

30、電容構(gòu)成??梢詼y量該方向是否存在障礙物和判斷障礙物的距離。電容用來穩(wěn)定 電路,防止電源和地發(fā)生短路。 硬件原理:采用一片 MSP430X149 作為控制器。利用 TIMERA 的頻率發(fā)生器模式,產(chǎn)生 38KHz 附近的若干 頻率,從 P6.5 輸出方波。該方波經(jīng)過晶體管 Q18 擴流來增加驅(qū)動能力,給 7 個紅外 LED 供電。為防止互相 干擾,7 只 LED 輪流點亮,每次只亮一只 LED,由 IRE 選擇哪支紅外 LED 被點亮。如果接收到反射回來的紅 外線,接收端將輸出 TTL 電平,被單片機接收,然后執(zhí)行相應(yīng)的避障措施。如果未接收到任何信號,將一直 輸出高電平。 因為一體化接收頭只對

31、38kHz 的方波敏感,而且它內(nèi)部帶有帶通濾波器,所以需要在發(fā)送 38kHz 的時候 發(fā)送一段時間關(guān)閉一段時間,否則傳感器會認(rèn)為它是外界光而將返回的信號當(dāng)作干擾信號而忽略掉。 為了避免各個傳感器之間的相互干擾,需要輪流打開接收器。另外,因為發(fā)光管發(fā)出的光是沿四面八方發(fā) 送的,而且只要打開電源發(fā)射管就會工作,所以也為了避免因別的發(fā)光管帶來的干擾,需要將發(fā)光管包的嚴(yán) 嚴(yán)實實的。 如圖所示為紅外一體化接收頭的作原理:上拉電阻一般選用 1K,如果選用較大的電阻,其上拉的效果 也不是很明顯,有點大材小用的效果;如果選用較小的電阻,有可能方波的低電平就不會下拉到 0 附近。通 過作試驗,我們將上拉電阻選用

32、 300 的電阻,結(jié)果 38KHZ 的方波的低電平大約在 1V 左右,這時單片機有 可能會將它也看作高電平,也就是說相當(dāng)于一直輸出的是高電平。另外,還可以調(diào)整串聯(lián)電阻的大小來調(diào)整 傳感器的測距范圍。電阻越大,測量距離越??;電阻越小,測量距離越大。但因為單片機接收到的電流一般 在 5mA 左右,所以串聯(lián)電阻也不能很小,否則會燒壞單片機。經(jīng)過試驗,我們測得上拉電阻為 1K 串聯(lián)電 阻為 100 時它的測量距離最遠(yuǎn),可達(dá)到 3 米以上。 這七個傳感器所起的作用是不同的。前排三個傳感器用來檢測前方是否有障礙物。若中間的傳感器檢測 到障礙物,左前方的傳感器再檢測左邊是否有障礙物:如果沒有小車左轉(zhuǎn)彎;如果

33、有,再判斷右邊是否有障 礙物:如果沒有,則小車右轉(zhuǎn)彎;如果有小車將向后退,在后退的過程中傳感器還在不斷的檢測障礙物,一 旦發(fā)現(xiàn)左邊(或右邊)沒有障礙物時,小車將向左(或右)轉(zhuǎn)彎。小車中間的兩個傳感器用來改變小車的轉(zhuǎn) 彎半徑,避免小車在轉(zhuǎn)彎的過程中撞到障礙物。小車后排的兩個傳感器是在小車后退的過程中防止小車撞到 后面物體得到。因此,根據(jù)傳感器所起的作用的不同,它們所要測量的距離方為也不同。所以分別給它們不 同的串聯(lián)電阻。經(jīng)試驗我們可以將前面三個傳感器的串聯(lián)電阻裝成 300 的;左右兩邊的 1K;后面的 2K。 3.4 處理器電路 小車采用一片 MSP430X149 作為控制器。它具有 3 路 P

34、WM 控制器和串口。用到 410 個 I/O 口,其中:紅 外一體化接收頭傳感器輸入 5 個輸出口 8 個,反射式紅外傳感器輸入口 5 個控制口 5 個、電機控制口 4 個、 JTAG 占用 4 個 I/O 口。 MSP430X149 的特點是:有五種節(jié)電模式;16 位 RISC 結(jié)構(gòu),125ns 指令周期;6 個 8 位并行端口,且 2 個 8 位端口有中斷能力;保密熔絲的程序代碼保護;具有 2 個捕獲比較寄存器的 16 位定時器 TIMER_A,TIMER_B;兩通道串行通信接口可用于異步或同步模式;串行在系統(tǒng)編程;多達(dá) 60KB FLASH ROM 和 2KBRAM 等等。 圖 3.5單

35、片機工作原理 系統(tǒng)采用 32KHz 晶振作為定時采樣用,主時鐘用 800K 左右的 DCO。另外留有 JTAG 口可以現(xiàn)場編程。并 且還有 19 個引腳未用到,將來還可以擴展其功能。在做 PCB 板時已將這些引腳引出,可以直接使用。 定時器 TIMERA 由一個十六位定時器和多路比較捕獲通道組成。每一個比較捕獲通道都可以十六位 定時器的定時功能為核心進(jìn)行單獨的控制。它還具有以下特性: 輸入時鐘可以有多種選擇,可是慢時鐘,快時鐘以及外部時鐘。 雖然沒有自動重載時間常數(shù)功能,但產(chǎn)生的定時脈沖或 PWM 信號沒有軟件帶來的誤差。 不僅能捕獲外部事件發(fā)生的時間還可以鎖定其發(fā)生時的高低電平。 可實現(xiàn)串行

36、通信;完善的中斷服務(wù)功能;4 種計數(shù)功能選擇;8 種輸出方式選擇和支持多時序控制等。 TIMERA 共有 4 種計數(shù)模式:停止模式、增計數(shù)模式、連續(xù)計數(shù)模式和增減計數(shù)模式。我們用 TIMERA 的增計數(shù)模式來產(chǎn)生 38KHZ 的方波。具體原理為:捕獲比較寄存器 CCR0 用作 TIMERA 增計數(shù)模式的周期寄 存器,因為 CCR0 為 16 位寄存器,所以該模式適用于定時周期小于 65536 的連續(xù)計數(shù)情況。計數(shù)器 TAR 可以 增加計數(shù)到 CCR0 的值,當(dāng)計數(shù)值與 CCR0 的值相等(或定時器值大于 CCR0 的值)時,定時器復(fù)位并從 0 開 始重新計數(shù)。圖 2.8 說明了增計數(shù)模式的計數(shù)

37、過程。當(dāng)定時器的值等于 CCR0 的值時,設(shè)置標(biāo)志位 CCIFG0(捕獲比較中斷標(biāo)志)為 1,而當(dāng)定時器從 CCR0 計數(shù)到 0 時,設(shè)置標(biāo)志位 TAIFG(定時器溢出標(biāo)志)為 1。 圖 3.6 增計數(shù)模式 計數(shù)過程中還可以通過改變 CCR0 的值來重置技術(shù)周期。當(dāng)新周期大于舊周期時,定時器會直接增計數(shù) 到新周期;當(dāng)新周期小于舊周期時,改變 CCR0 時的定值器時鐘相位會影響定時器響應(yīng)新周期的情況。時鐘 為高時改變 CCR0 的值,則定值器會在下一個時鐘上升沿返回到 0,如果時鐘為低時改變 CCR0 的值,則定 時器接受新周期并在返回到 0 之前,繼續(xù)增加一個時鐘周期。 可以隨時間變化任意改變

38、 PWM 信號的占空比,具體的做法是: 保持 CCR0 的值不變(周期不變) 改變 CCRx 值(改變占空比) 圖 3.7增計數(shù)模式時的輸出實例 .TIMERA 的輸出模式由模式控制位 OMx0、OMx1 和 OMx2 決定,共有 8 種輸出模式。除模式 0 外,其他 的輸出都在定時器時鐘上升沿時發(fā)生變化。這里我們將輸出模式選為輸 出模式 7。用該方式產(chǎn)生占空比為 50的 38KHZ 的方波;也可以通過改變 CCRx 的值來改變電機的轉(zhuǎn)速, 使其實現(xiàn)轉(zhuǎn)彎、后退等動作。 TIMERB 的工作原理和 TIMERA 的相仿。 第四章第四章電路原理圖電路原理圖 三型尋跡避障智能小車由機械結(jié)構(gòu)、尋跡電路

39、、避障電路、電機控制模塊和處理器電路五部分組成。 (見附錄三) 機載計算機外部 控制命令輸入 微控制器 MSP430X149 反射式紅外傳感 器電路實現(xiàn)尋跡 發(fā)送 38KHZ 脈沖 發(fā)送 PWM 控 制電機的轉(zhuǎn)速 紅外一體化 接收頭實現(xiàn) 避障 圖 4.1總體結(jié)構(gòu)圖 如圖所示為小車的工作原理。打開電源時先初始化電機驅(qū)動電路、一體化接收頭電路和反射式紅外傳感 器電路。剛開機時小車的初速度很大,有可能不會沿著黑線運行,所以先讓它空跑一段時間。小車在遇到障 礙物之前,會沿著軌跡前進(jìn),遇到左拐彎時實行拐彎程序。若在跑道上放置障礙物,小車實行相應(yīng)的避障程 序。繞過障礙物時小車再繼續(xù)按軌跡前進(jìn)。這有點理想化

40、,實際中不會很完美的將避障和尋跡兩部分接合起 來,所以對尋跡算法有很高的要求,要求當(dāng)小車在繞開障礙物時一旦檢測到黑線就能立刻反應(yīng)過來按照黑線 的軌跡來運行。 我們將紅外一體化接收頭和反射式紅外傳感器分為兩組。第一組包括前排的三個和之間的兩個一體 化接收頭以及五個反射式紅外傳感器,主要是在小車前進(jìn)中用來檢 測黑線和障礙物位置的;另外一組是在小車后退時用到的。這兩組傳感器分別作用,即在前進(jìn)中開啟第 一組,后退時再開啟另外一組。這樣可以有效的利用單片機,也不會造成程序的混亂。 第五章控制算法 5.1黑線位置判別 地面的黑線是導(dǎo)引線,位置讀取和計算的準(zhǔn)確度、穩(wěn)定性將直接影響小車的控制和運行。下圖是實際

41、運 行中出現(xiàn)的情況,黑塊表示感應(yīng)到黑線的傳感器。傳感器的排列比較密,可能 12 個傳感器都能踩到黑線; 轉(zhuǎn)彎處車身傾斜甚至 23 個傳感器都能踩到黑線。應(yīng)該求黑線的中心位置作為結(jié)果。 圖 5.1反射式紅外傳感器的運算圖 計算的方法是從左數(shù),找到第一個黑色傳感器編 i,再從右數(shù),找到第一個黑色傳感器編 j。(i+j)/2 就是黑線中心位置。 這樣算出來的結(jié)果中有小數(shù)部分,用起來不太方便,因此我們將結(jié)果放大 10 倍,再減去之間位置時算 出來的值。 5.2巡線算法 小車是一個非常典型的慣性系統(tǒng)。對于這一類被控對象,PID 算法能簡單有效的進(jìn)行控制。對 PID 算法 做個簡單的說明: 假設(shè)小車中心線

42、在黑線中心線上,偏差為 0,小車正常行駛。如果某時刻檢測到黑線偏左,就要向左轉(zhuǎn) 彎;如果檢測到黑線偏右,就要向右轉(zhuǎn)。偏得越多,就要向黑線方向打越大的舵角。這就是比例控制(P) 遺憾的是,這種方法并不能將小車穩(wěn)定在線上,因為小車有慣性。假設(shè)黑線偏左,說明小車偏右了,需 要左傳舵,等到小車回到中心的時候,停止轉(zhuǎn)舵,可是小車的慣性會使車身繼續(xù)左轉(zhuǎn),直到?jīng)_過黑線,黑線 又偏右。然后控制過程反復(fù),車身是在左右搖擺中向前行走的。這種搖擺叫做“超調(diào)” ,超調(diào)越大,控制越 不穩(wěn)定,容易出軌。 Posit=0 Posit=-0.55 Posit=0.5 Posit=(i+j)/2 為了克服慣性,最簡單的辦法是任

43、何控制動作都提前一點。適當(dāng)調(diào)整提前量可以抵消慣性;另外,即使 偏移量相同的情況下,在不同半徑的彎道,也需要不同的舵角。這些都是比例控制不能實現(xiàn)的。我們除了位 置信息之外,還需要知道軌跡的變化趨勢。 為了實現(xiàn)提前控制,在時間上,除非延長傳感器,否則沒有辦法提前獲知轉(zhuǎn)彎。那么我們只能在控制量 上想辦法。一個函數(shù)的導(dǎo)數(shù),反映了該函數(shù)的變化趨勢。同樣我們可以用黑線位置的微分值來提前得到變化 趨勢。用本次位置減去前次位置求出差值,就大致知道偏移量的變化趨勢。將該差值和比例相加后一起作為 控制量,即可實現(xiàn)提前控制。這就叫做比例微分控制(PD 控制) 下圖是小車的控制系統(tǒng)框圖: 圖 5.2PID 控制算法

44、傳感器位置求出后,減去中心值,得到和中心的偏差量。該偏差量乘以比例系數(shù)得到比例控制量。并且 計算相鄰若干次偏差量之間的差值,乘以微分系數(shù),得到微分控制量。將比例控制量和微分控制量相加,作 為最終的舵角控制量。 積分控制在此系統(tǒng)中沒有使用,原因是舵角到位置之間本身就是積分關(guān)系的,另外積分控制有相當(dāng)大的 滯后,對控制穩(wěn)定性不利。 一般在調(diào)節(jié) P 和 D 時需要先調(diào)節(jié) P 的值,因為比例系數(shù)較微分系數(shù)對小車的影響更大。在調(diào)節(jié) P 的值時 可以先將 D 的值置為 0。當(dāng)發(fā)現(xiàn)小車在偏離黑線卻可以很快的轉(zhuǎn)回來時,P 就調(diào)的差不多了;D 的調(diào)節(jié)相對 簡單。 5.3搜線算法 當(dāng)小車因慣性、超調(diào)、控制失敗、環(huán)境

45、干擾、黑線中斷等原因沖出黑線后,需要啟用錯誤處理算法,重 新搜尋黑線。 這里用了一個最簡單的方法:當(dāng)判斷傳感器沒有讀到黑線位置時,不運算也不輸出,這樣小車就會保持 沖出黑線前最后一刻的姿態(tài),繼續(xù)前進(jìn)。如果黑線中斷或被遮擋,小車會沿原定路線走,如果小車因為超調(diào)、 慣性拐出跑道,會繼續(xù)滿舵轉(zhuǎn)圈尋找黑線。 這種方法簡單,但很多情況下會找不到跑道,在原地打轉(zhuǎn)。所以我們應(yīng)該改進(jìn)算法,使小車在若干秒滿 舵轉(zhuǎn)圈仍然找不到黑線時就放大轉(zhuǎn)圈半徑等。還有,小車如果在轉(zhuǎn)彎時的速度太快,小車來不及處理,很容 易脫離軌道,而且現(xiàn)在我們所采取的程序是讓小車在轉(zhuǎn)彎時如果彎度太大,一個輪的速度就會為 0,而另外 一個的則是全

46、速前進(jìn)。在走直線時,小車的速度也稍有減慢。所以我們需要對程序進(jìn)行相應(yīng)的修改,讓小車 在走直線時能全速前進(jìn);在拐彎時速度能慢下來。 5.4障礙物位置判別 1.方案一: 如圖所示,將障礙物與小車之間的距離分為以下八擋。當(dāng)小車的正前方離障礙物的位置小于參數(shù) 30 時, 將電機反轉(zhuǎn)一定時間然后從左邊繞開它,繼續(xù)向前行進(jìn);同理,可以實現(xiàn)躲避左邊、右邊、后邊的障礙物。 并用反射式紅外傳感器來檢測黑線的位置,使小車能按黑線前進(jìn)。 圖 5.3障礙物距離與參數(shù)的關(guān)系圖 圖 5.4矢量合成法計算距離 用矢量合成法來計算障礙物與小車之間的距離,并將其轉(zhuǎn)換為上圖所示的關(guān)系。如上圖所示,將每個 傳感器的數(shù)據(jù)看成一個推力

47、矢量,并將它們分解在 X 軸和 Y 軸上,F(xiàn)x=F*cosa, Fy=F*sina。注意:由障礙物 產(chǎn)生的矢量由傳感器指向測距環(huán)中心,而由光線產(chǎn)生的矢量由測距環(huán)中指向傳感器。 將各個矢量分解在 X 軸和 Y 軸上后,求 X 軸和 Y 軸上的矢量和,將 Y 軸上的矢量和作為兩輪的共同速度, 而將 X 軸上的矢量和作為兩輪的差速度,這樣就能使小車產(chǎn)生避障的動作。 這樣算下來精度不是很高,而且傳感器的位置本來就沒有對某個點完全對稱。 2.方案二: 用上面的算法會增加復(fù)雜性。最簡單的方法是通過改變串聯(lián)電阻的方法來改變傳感器的測距范圍,這樣, 既可以有效地躲避障礙物,而且也不用增加算法來判斷離障礙物的位

48、置,可以更加準(zhǔn)確的躲避障礙物。 5.5轉(zhuǎn)彎控制 前文已述,只要改變左右兩輪的速度比,即可控制小車的轉(zhuǎn)彎方向。軟件上占空比可設(shè)置為 0100.0%,分別對應(yīng)到寄存器數(shù)據(jù)的 01000。按右圖控制左右輪 PWM 寄存器的值,即可控制轉(zhuǎn)向。 圖 5.5電機轉(zhuǎn)向及轉(zhuǎn)速控制 改進(jìn):改進(jìn):這種方法的速度控制是開環(huán)的。占空比和實際速度、實際轉(zhuǎn)彎角之間并是很不嚴(yán)格的線性。加上電 機的差異、負(fù)重的不同、電池電量的差別、輪胎大小的差別都會造成速度的差異。雖然上面的巡線算法可以 將這些誤差都包進(jìn)反饋環(huán)而得以校正,但會造成控制性能的下降。車輪上可以安裝反射輻條,或者打孔,用 紅外傳感器計算脈沖頻率而測量速度,并做速度

49、反饋,將輪速嚴(yán)格保持在指令給定的速度上,控制性能會有 明顯提高。 5.6 迷宮探路控制 如果迷宮不太復(fù)雜,且主要為縱橫方向的直線,可采用讓小車在路口始終左轉(zhuǎn)或者始終右轉(zhuǎn)的方法走迷 宮,也就是讓小車沿迷宮的邊沿走,只要在出口處放置一個標(biāo)記,讓小車用光電傳感器識別即可。 另外也可以讓小車在每個路口處記錄下支路數(shù),以及已經(jīng)走過的支路,如果此路口不通,退回選擇沒有 走過的支路。這樣最終也能走處迷宮。 最終我們將要讓小車自主學(xué)習(xí),因為小車是靠后輪驅(qū)動,我們通過兩個反射式紅外傳感器記錄下兩個后 輪轉(zhuǎn)過的圈數(shù)(或者走過的路徑) ,當(dāng)小車第一次走出迷宮之后,再一次走時,他將通過最短的路徑走出迷 宮。 另外迷宮

50、圖的設(shè)計如附件所示。 (迷宮圖的設(shè)計是一個很靈活的東西,制作過程我準(zhǔn)備了 更多的材料,我們在今后的實驗過程中,可以根據(jù)需要對迷宮圖加以改進(jìn),比如在復(fù)雜度,在迷宮所走路線 的寬度等等都可以加以改進(jìn),當(dāng)然對軟件的要求也是越來越高。 對于迷宮尋路程序,我們有兩種思路:無記憶自主搜索法和有記憶尋路法.: 一) 無記憶搜索法: 利用小車前面三個傳感器來檢測障礙,設(shè)置向前,向左,向右三個轉(zhuǎn)向優(yōu)先級的高低,來進(jìn)行自主搜索。 直行優(yōu)先級最高,右邊其次,再向左,最后進(jìn)入死胡同后,后退調(diào)頭。當(dāng)小車被障礙物擋住,或者是其他原 因卡住以后,小車將后退一段距離,然后再繼續(xù)尋路。值得改進(jìn)的地方是,讓兩邊的傳感器檢測的距離

51、較近 一些,中間的傳感器檢測距離較遠(yuǎn)一些,對于迷宮探路更加方便。在這里首先需要改硬件電路,讓兩邊給紅 外發(fā)光管定時掃描的定時器和中間的紅外發(fā)光管定時掃描的定時器不一樣就可以設(shè)置不一樣的檢測距離。 二) 有記憶探路法: 既然是有記憶的,就需要對小車走過的行的通的路線進(jìn)行記憶存儲,首先實現(xiàn)一個以鏈表做存儲結(jié)構(gòu) 的棧類型,然后編寫一個求解迷宮的非歸程序。偽代碼如下: 從入口開始 do if (當(dāng)前位置可通) 當(dāng)前位置入棧; if (當(dāng)前位置是出口) 結(jié)束 else 取得當(dāng)前位置當(dāng)前方向上的下一位置為當(dāng)前位置; 將新當(dāng)前位置入棧; else 從棧中彈出棧頂元素為當(dāng)前位置 while(當(dāng)前位置已無下一有

52、效位置 #define PIRE1_H (P2OUT /IRE1 口選通,即打開傳感器 1 的發(fā)光管 P2DIR |= BIT7; /IRE2 口選通,即打開傳感器 2 的發(fā)光管 P6DIR |= BIT5; /IRE3 口選通,即打開傳感器 3 的發(fā)光管 P3DIR |= BIT7; /IRE6 口選通 P3DIR |= BIT5; /IRE7 口選通 P1DIR |= BIT6; /P1.6 口為 TA1 輸出方式,輸出占空比為 50的 38KHZ 方波 P1SEL |= BIT6; TACTL |= TASSEL_2 + TACLR;/TIMER_A 時鐘源選為 SMCLK,清 TAR

53、TACCR0 = 68; /CCR5 約 26.3us 中斷一次,即產(chǎn)生約 38KHZ 的 PWM 輸出 TACCTL1 |= OUTMOD_7;/CCR6 輸出為 reset/set 模式 TACCR1 = 34; /產(chǎn)生占空比為 50的 PWM TACTL |= MC_1; /TIMERA 用于增計數(shù)模式 / 系統(tǒng)時鐘設(shè)定 / DCO 設(shè)置為 1000KHz / ACLK 為 LFXT1(低頻模式) / MCLK 為 DCOCLK / SMLCK 為 DCOCLK void InitClock(void) DCOCTL = 0 x00 + 0 x00; BCSCTL1 = XT2OFF +

54、 DIVA_0 + 0 x05; BCSCTL2 = SELM_0 + DIVM_0 + DIVS_0; void Delay(unsigned int j) /延遲程序 unsigned int i; for(i=0;ij;i+); void Measure_Distance() / 1 PIRE1_H; / 打開 1 號傳感器 Delay(34); / 延遲,等待數(shù)據(jù)穩(wěn)定 if(IRE1_IN=0) / 如果接收到的信號為低電平,表明前方有障礙物 Dat0=1; else Dat0=0; PIRE1_L; / 關(guān)閉 1 號傳感器 /2 PIRE2_H; / 打開 2 號傳感器 Delay

55、(34); / 延遲,等待數(shù)據(jù)穩(wěn)定 if (IRE2_IN=0)/ 如果接收到的信號為低電平,表明左前方有障礙物 Dat1=1; else Dat1=0; PIRE2_L; / 關(guān)閉 2 號傳感器 / 3 PIRE3_H ; / 打開 3 號傳感器 Delay(34); / 延遲,等待數(shù)據(jù)穩(wěn)定 if(IRE3_IN=0) / 如果接收到的信號為低電平,表明右前方有障礙物 Dat2=1; else Dat2=0; PIRE3_L; / 關(guān)閉 3 號傳感器 / 4 PIRE4_H ; / 打開 4 號傳感器 Delay(34); / 延遲,等待數(shù)據(jù)穩(wěn)定 if(IRE4_IN=0) / 如果接收到的

56、信號為低電平,表明右前方有障礙物 Dat3=1; else Dat3=0; PIRE4_L; / 關(guān)閉 4 號傳感器 / 5 PIRE5_H ; / 打開 5 號傳感器 Delay(34); / 延遲,等待數(shù)據(jù)穩(wěn)定 if(IRE5_IN=0) / 如果接收到的信號為低電平,表明右前方有障礙物 Dat4=1; else Dat4=0; PIRE5_L; / 關(guān)閉 5 號傳感器 void main() WDTCTL=WDTPW+WDTHOLD; InitClock(); Init_Sensor2(); while(1) Measure_Distance(); _NOP(); 第七章第七章總結(jié)總結(jié) 7.1 本文總結(jié) 現(xiàn)在小車已經(jīng)能夠獨立的完成尋跡和避障功能了。雖然有時候它不能很完整的走完所規(guī)定的路線,但 從它轉(zhuǎn)彎、直走的軌跡上來說

溫馨提示

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

評論

0/150

提交評論