国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

智能小車的設(shè)計與制作

2013-09-03 06:32張凱杰
關(guān)鍵詞:控制算法舵機紅外

張凱杰

【摘 要】智能小車以freescale半導(dǎo)體公司生產(chǎn)的16位HCS12單片機為核心控制器,采用紅外式光電管對比賽賽道進行掃描和檢測,提取出賽道上黑線位置的信息。同時,智能小車通過測速裝置獲取當(dāng)前速度,并利用PID反饋對舵機進行調(diào)節(jié),最終使小車達到可以自動尋跡的效果,提高小車的行駛速度和穩(wěn)定性。

【關(guān) 鍵 詞】智能車,HCS12單片機, PID控制

【中圖分類號】F407.471【文獻標(biāo)識碼】A【文章編號】1672-5158(2013)07-0205-02

一 前言

智能運輸系統(tǒng)作為未來交通發(fā)展趨勢之一,為解決城市交通擁擠和堵塞問題提供了有效途徑。從八十年代以來,美國、日本、歐洲等發(fā)達國家和地區(qū)競相投入巨額資金和大量人力,開始大規(guī)模的進行交通運輸智能化的研究,取得了許多重要成果。而作為智能車——路系統(tǒng)(Intelligent Vehicle—Highway Systems,簡稱IVHS)的重要一部份,智能車在世界各國的研究也隨著計算機技術(shù)、網(wǎng)絡(luò)技術(shù)、通訊技術(shù)的飛速發(fā)展而不斷深入。

本文以“飛思卡爾”杯全國大學(xué)生智能汽車競賽為背景,對智能車控制系統(tǒng)進行了深入的討論,以作者參與制作的智能模型車為例簡要介紹了智能模型車的設(shè)計制作全過程,主要涉及到機械電子、傳感器技術(shù)、驅(qū)動控制技術(shù)、自動控制、人工智能等多個領(lǐng)域的研究及技術(shù)融合。

本設(shè)計通過采用HCS12單片機為控制核心,實現(xiàn)對小車的智能控制。該控制系統(tǒng)不僅在現(xiàn)代汽車產(chǎn)業(yè)中有很大使用價值,在智能機器人領(lǐng)域亦有很大用途,尤其是當(dāng)今時代機器人研究方面具有很好的發(fā)展前景,故本設(shè)計與實際聯(lián)系緊密,具有重要的現(xiàn)實意義。

二 總體設(shè)計分析

(1) 設(shè)計要求:

在本次競賽中,要求所設(shè)計的小車具有自動尋跡的功能,能在指跑道上高速,穩(wěn)定地運行。跑道為黑白兩色。其背景色為白色,跑道中央有一條黑線作為小車行進的依據(jù)。很明顯,我們要設(shè)計的小車是要能沿黑線的正常行駛,并在此基礎(chǔ)上,盡量提高小車行駛速度。

(2)傳感器部分:在傳感器方案的選擇中, 智能小車采用光電傳感器來采集路面信息。使用紅外傳感器最大的優(yōu)點就是結(jié)構(gòu)簡明,實現(xiàn)方便,成本低廉,免去了繁復(fù)的圖像處理工作,反應(yīng)靈敏,響應(yīng)時間低,便于近距離路面情況的檢測。但紅外傳感器的缺點是,它所獲取的信息是不完全的,只能對路面情況作簡單的黑白判別,檢測距離有限,而且容易受到諸多擾動的影響,抗干擾能力較差,背景光源,器件之間的差異,傳感器高度位置的差異等都將對其造成干擾。在本次比賽中,賽道只有黑白兩種顏色,小車只要能區(qū)分黑白兩色就可以。采集到準(zhǔn)確的路面信息。經(jīng)過綜合考慮,在本項目中采用紅外光電傳感器作為信息采集元件。

(3) 控制算法部分:

在小車的運行中,主要有方向和速度的控制,即舵機和電機的控制,這兩個控制是系統(tǒng)軟件的核心操作,對小車的性能有著決定性的作用。對舵機的控制,要達到的目的就是:在任何情況下,總能給舵機一個合適的偏移量,保證小車能始終連貫地沿黑線以最少距離行駛。小車在比賽中采用了PID控制技術(shù)。PID控制在比例控制的基礎(chǔ)上加入了積分和微分控制,可以抑制振蕩,加快收斂速度,調(diào)節(jié)適當(dāng)?shù)膮?shù)可以有效地解決方案一的不足。不過,P,I,D三個參數(shù)的設(shè)定較難,需要不斷進行調(diào)試,憑經(jīng)驗來設(shè)定,因此其適應(yīng)性較差。在我們的選擇中,根據(jù)比賽規(guī)則,賽道模型與相關(guān)參數(shù)已給定,即小車運行的環(huán)境基本上已經(jīng)確定,可通過不斷調(diào)試來獲得最優(yōu)的參數(shù)。因此我們選用的是PID算法來對舵機進行控制。對驅(qū)動電機的控制(即速度控制),要達到的目的就是在行駛過程中,小車要有最有效的加速和減速機制。高效的加速算法使小車能在直道上高速行駛,而快速減速則保證了小車運行的穩(wěn)定,流暢。為了精確控制速度,時時對速度進行監(jiān)控,我們還引入了閉環(huán)控制的思想,在硬件設(shè)計,增加了速度傳感器實時采集速度信息。

(4) 車模外觀(見圖1)

三 硬件設(shè)計

(1)電源管理電路:

系統(tǒng)由6節(jié)1.2V鎳鎘充電電池組成電池組。穩(wěn)定的電源是整個系統(tǒng)的關(guān)鍵,所以在電源設(shè)計的時候必須考慮穩(wěn)壓芯片的效率以及各個模塊之間的影響,采取必要的隔離措施處理互相干擾。本系統(tǒng)采用了2片5V穩(wěn)壓芯片L M2575分別給系統(tǒng)芯片和紅外探測器供電。一片6 V穩(wěn)壓芯片L M1117給舵機供電,7.2 V電源可以直接給電機供電。

(2)紅外探測電路:

10對反射式紅外傳感器探測到的信息直接輸入到MC9 S12D G128B的10個A/D 通道。該紅外測試電路的有效測試距離可達20cm。小車在運動中不斷的掃描跑道,當(dāng)發(fā)射管D1掃描到黑線的時候 ,發(fā)出的信號幾乎全被黑線吸收,幾乎沒有反射信號,接收管 D2接收不到信號,此時D2不導(dǎo)通 ,輸出端輸出高電平發(fā)光管D3不發(fā)光;當(dāng)發(fā)射管 D1 掃描到白色跑道的時候,發(fā)出的信號幾乎全被反射回來,接收管 D2接收到發(fā)射管D1發(fā)射出經(jīng)反射物反射的信號,輸出端OUT(L M576 的第8腳) 輸出低電平使發(fā)光管D3發(fā)光 。通過發(fā)光二極管的熄滅可以確定小車是否在跑道上,為調(diào)試帶來很大的方便 。本電路的最大持點是紅外線發(fā)射部分不設(shè)專門的信號發(fā)生電路,而是直接從接收部分的檢測電路LM576的5 腳引入信號,這樣既簡化了線路和調(diào)試工作 ,又防止了周圍環(huán)境變化和元件參數(shù)變化對收發(fā)頻率造成的差異 ,實現(xiàn)了紅外線發(fā)射與接收工作頻率的同步自動跟蹤,使電路的穩(wěn)定性和抗干擾能力大大加強 。 輸出信號通過數(shù)字濾波后進入MCU中的14路A/D通道采集路況信息。

在實際的測試中,可以在獨立的的紅外接收管上安裝黑色套管可以完全避免相鄰發(fā)光管的影響 。由于紅外探測部分耗電量比較大 ,可以利用紅外接收管響應(yīng)速度快的特點,讓紅外發(fā)射管只在檢測瞬間發(fā)射紅外線即可 。 紅外發(fā)射管工作在周期窄脈沖方式下,大大降低了平均工作電流,從而降低了整個發(fā)射電路的電量消耗。

(3)電機驅(qū)動電路:(見圖2)

電路圖我們(見圖3)可以看出,它具有兩個半橋構(gòu)成:

由于在實際的比賽過程中,我們已經(jīng)利用剎車裝置進行減速,并不需要通過給電機加反向電壓來減速(在調(diào)試過程中,曾經(jīng)試過用這種的方法進行減速,但是弊大于利,有時會由于電機反轉(zhuǎn),出現(xiàn)倒車現(xiàn)象)因此,可以只使用其半橋,并將兩個半橋并聯(lián),以增大其驅(qū)動能力。

(4)傳感器電路:

接收發(fā)射部份(見圖4)

傳感器由兩部份構(gòu)成,一部份為發(fā)射部份,一部分為接收部份。發(fā)射部份由一個振蕩管(J1_1)發(fā)出180KHz頻率的振蕩波后,經(jīng)三級管(Q1_1NPN)放大,激光管(D1_1)放射。接收部份由一個相匹配180KHz的接收管(J1_2)接收返回的光強,經(jīng)過電容(C1_1)濾波后直接接入單片機用以判別電壓高低。由于接收的波屬于較高頻段的波,因此電容(C1_1)是必須的,否則的話電磁干擾會非常的嚴(yán)重,指示燈(D1_1)會常亮,實際過程中要不斷試電容(C1_1)的大小,選擇合適的值以使接收管正常工作。

控制部份:(見圖5)

由于采用了數(shù)字傳感器的防干擾算法,因此必須分時控制傳感器的開斷,實際中我們使用74LS138作為控制器,由主控模塊的3根線來控制傳感器的開斷。

(5)PCB設(shè)計圖:

傳感器PCB圖;(見圖6) 主控板PCB圖:(見圖7)

四 軟件設(shè)計

(1)開發(fā)環(huán)境介紹:

本系統(tǒng)使用了 Metrowerks 公司提供的 CodeWarrior for HCS12教學(xué)用版本,它是面向以 HC12 或 S12 為 CPU 的單片機嵌入式應(yīng)用開發(fā)的軟件包,包括集成開發(fā)環(huán)境 IDE、處理專家?guī)?,全芯片仿真、C 交叉編譯器、匯編器、鏈接器以及 BDM 調(diào)試器。

(2)軟件結(jié)構(gòu)

軟件主要包括:路徑識別、方向控制、速度測量、速度控制等四個模塊。軟件流程可分為以下幾部分:初始化、得到 AD 轉(zhuǎn)換數(shù)據(jù)并轉(zhuǎn)換為角度偏差、根據(jù)角度偏差控制舵機、根據(jù)角度偏差和當(dāng)前速度控制電機轉(zhuǎn)速和制動。軟件結(jié)構(gòu)框圖見圖8。

(3)PID控制:

PID控制器是控制系統(tǒng)中技術(shù)比較成熟,而且應(yīng)用最廣泛的一種控制器。它的結(jié)構(gòu)簡單,參數(shù)容易調(diào)整,因此在工業(yè)的各個領(lǐng)域中都有應(yīng)用。PID最先出現(xiàn)在模擬控制系統(tǒng)中,傳統(tǒng)的模擬PID控制器是通過硬件(電子元件、氣動和液壓元件)來實現(xiàn)它的功能的。隨著計算機的出現(xiàn),把它移植到計算機控制系統(tǒng)中來,將原來的硬件實現(xiàn)的功能用軟件代替,從而形成數(shù)字PID控制器,其算法則稱為數(shù)字PID算法。數(shù)字PID控制器具有非常強的靈活性,可以根據(jù)試驗和經(jīng)驗在線調(diào)整參數(shù),因此可以得到更好的控制性能。由于幾乎所有的單片機都擁有硬件PWM,因此基于軟件PID和硬件PWM技術(shù)的直流電機測控技術(shù)正向數(shù)字化、高可靠性發(fā)展,本文所述的舵機控制就是采用該控制方法。數(shù)字PID分為位置式控制算法和增量式控制算法。為了降低計算量及得到穩(wěn)定的結(jié)果,舵機控制采用增量式控制算法。其公式如下: △Uk=Kp*[ek-ek-1]+Ki*ek+Kd*[ek-2ek-1+ek-2]

輸出增量△Uk只與本次偏差ek、上次偏差ek上上次偏差ek-2有關(guān),因此CPU只要知道每一時刻的ek、ek-1、ek-2的值就能執(zhí)行PID算式,并輸出舵機控制量,從而有效地控制舵機的轉(zhuǎn)向。

由于PID控制器是用軟件來實現(xiàn)的,靈活性很大,因此能夠根據(jù)具體要求相應(yīng)地改進部分PID控制算法。在電動機控制系統(tǒng)中,控制量的輸出值要受到元器件或執(zhí)行機構(gòu)性能的約束(如電源電壓的限制、放大器飽和等),因此它的變化應(yīng)在有限的范圍內(nèi),如果控制量的計算結(jié)果超出該范圍,那么實際執(zhí)行的控制量就不再是計算值了,產(chǎn)生的結(jié)果與預(yù)期的不相符,稱為飽和效應(yīng)。PID控制中的積分環(huán)節(jié)目的是消除靜態(tài)誤差,提高控制精度。但當(dāng)電動機的啟動或停車時,短時間內(nèi)系統(tǒng)輸出很大的偏差,會使積分積累很大,從而引起強烈的積分飽和效應(yīng),這將會造成系統(tǒng)振蕩,調(diào)節(jié)時間延長等不利結(jié)果。

在本文所述的智能車中,為了避免出現(xiàn)積分飽和現(xiàn)象,對PID控制器的積分環(huán)節(jié)做了兩個改進:積分分離法和遇限削弱積分法。

積分分離法的思路是:當(dāng)被控量與給定值的偏差較大時,去掉積分,以避免積分飽和效應(yīng)的產(chǎn)生;當(dāng)被控量與給定值比較接近時。重新引入積分,發(fā)揮積分的作用,消除靜態(tài)誤差,從而既保證了控制的精度又避免了振蕩的產(chǎn)生。

本文所述的具體實現(xiàn)是:人為引入一個量X=24.44,x值的確定大約為智能車的三個光電對管對應(yīng)反饋值的偏差,即當(dāng)偏差小于24.44則引入積分環(huán)節(jié),當(dāng)偏差大于等于24.44則去掉積分環(huán)節(jié)。為此在積分項中乘以一個人為引入的系數(shù)B.

其公式如下:

B=1,ek

B=0, ek≥X, X=24.44

引入B后,可建立公式:

△Uk=Kp*[ek-ek-1]+B*Ki*ek+Kd*[ek-2ek-1+ek-2]

遇限削弱積分法的思路是:一旦控制量仉進入飽和區(qū),便停止進行增大積分項的運算,而只進行使積分減少(即所謂削弱)的運算。具體過程是:在根據(jù)PID算式計算Uk前,先判斷前一次的控制量Uk-1是否到達極限范圍,如果到達極限說明已經(jīng)進入飽和區(qū),這時再根據(jù)偏差的正負(fù),來判斷控制量是使系統(tǒng)加大超調(diào)還是減小超調(diào),如果是減小超調(diào),則保留積分項,否則取消積分項。遇限削弱法在進入極限范圍后,有條件的去繼續(xù)積分或取消積分,從而避免控制量長時間停留在飽和區(qū)。本系統(tǒng)的具體實現(xiàn)是:在積分項中再人為引入一個系數(shù)c當(dāng)判斷后需要保留積分項則C=1;否則C=0。那么最終的舵機PID控制算式如下:

△Uk=Kp*[ek-ek-1]+B*C*Ki*ek+Kd*[ek-2ek-1+ek-2]

間接PID驅(qū)動電機控制算法簡介:

智能車模型的驅(qū)動電機是直流電機,同樣可以直接用PID控制算法,但是利用PID算法需要有系統(tǒng)的直接反饋值,如舵機算法中的反饋值通過光電傳感檢測獲得,而驅(qū)動電機要想直接獲得反饋值必須在硬件上設(shè)計車速傳感器,這必然給硬件選擇、硬件設(shè)計、PCB板設(shè)計、軟件實現(xiàn)帶來比較大的工作量;同時加上車速傳感器之后智能車的重量也會增加,這樣會增加驅(qū)動電機的負(fù)載,耗電速度快;同時智能車過重也會給舵機的轉(zhuǎn)向帶來負(fù)面影響,因為連接舵機和連桿的硬件是塑料做的東西,而且是兩三個塑料卡在一起的,當(dāng)智能車要轉(zhuǎn)彎時,舵機轉(zhuǎn)動的力是一定的,如果車身太重的話那么舵機轉(zhuǎn)彎的力就會帶不動前輪,而使這些力消耗在這幾塊塑料上,時間長了這些力就會使塑料變形,破壞車的硬件結(jié)構(gòu),影響車的性能,給車的行駛帶來不穩(wěn)定性和不可靠性。

然而加上車速傳感器之后又能給驅(qū)動電機帶來直接的控制,能比較有效、及時地改變驅(qū)動電機的轉(zhuǎn)速,為智能車行駛提供比較好的參考。

本文所述的驅(qū)動電機間接PID控制算法的思想是:把舵機的PID控制算法的輸出控制量當(dāng)作驅(qū)動電機的控制算法的輸入量,經(jīng)過一定的算法之后,輸出量做為驅(qū)動電機的輸出控制量,從而實現(xiàn)驅(qū)動電機的間接PID控制算法。

舵機的輸出控制量為Uk的公式為:

Uk=△Uk+Uk-1

其中△Uk玩為舵機輸出控制量的增量,Uk-1為舵機前一

次的輸出控制量。把Uk作為驅(qū)動電機的輸入量。設(shè)驅(qū)動電機的輸出控制量為M, 其公式如下:

M=(SV-BRV4)*Uk+BR4+SV, Uk≤0

M=(SV-BlV4)*Uk+Bl4+SV, Uk>0

常量C為當(dāng)智能車在直線上行駛時驅(qū)動電機的控制量,常量BRV4為當(dāng)智能車在最大右轉(zhuǎn)行駛時驅(qū)動電機的控制量。常量BR4為當(dāng)智能車在最大右轉(zhuǎn)行駛時舵機的理論控制值,常量BlV4為當(dāng)智能車在最大左轉(zhuǎn)行駛時驅(qū)動電機的控制量,常量Bl4為當(dāng)智能車在最大左轉(zhuǎn)行駛時機的理論控制值。則公式中M的算式為一元一次分段線性方程。

智能車左轉(zhuǎn)的驅(qū)動電機控制量是線性減小的,而右轉(zhuǎn)的驅(qū)動電機控制量是線性增加的。驅(qū)動電機控制量的線性變化優(yōu)點在于能夠使電機控制量的變化平穩(wěn),有利于小車在轉(zhuǎn)彎時均勻地增加或減小控制量,從而使小車能夠在轉(zhuǎn)彎時保持平穩(wěn)的速度行駛,不至于出現(xiàn)停頓現(xiàn)象。

參考文獻

[1] 卓晴 黃開勝 邵貝貝 等.學(xué)做智能車. 北京:北京航空航天出版社,2007年3月第1版

[2] 第四屆全國大學(xué)生“飛思卡爾”杯智能汽車競賽秘書處,競速比賽規(guī)則與賽場紀(jì)律,2008/12

[3] National Semiconductor,LM2940 Datasheet,1999/06

[4] National Semiconductor,LM1117 Datasheet,2004/06

[5] 楊杰 吳凡.粗糙表面可見光散射特性的實驗研究. 中國測試,2009,02期

[6] HAMAMATSU,Light modulation photo IC S7136,2007/07

[7] 邵貝貝.單片機嵌入式應(yīng)用的在線開發(fā)方法. 北京:清華大學(xué)出版社,2004年10月第1版

[8] 邵貝貝.UCOS-II 嵌入式實時操作系統(tǒng). 北京:清華大學(xué)出版社,2002年10月第1版

[9] MC9S12DG128B Device User Guide ,Version 1.2,Motorola,2000/ 05/12—2000/08/17

猜你喜歡
控制算法舵機紅外
網(wǎng)紅外賣
基于dSPACE和PLC的控制算法測試系統(tǒng)設(shè)計
基于藍(lán)牙轉(zhuǎn)紅外的遙控裝置
海太克HS—1100WP數(shù)字舵機
超音速舵機保護器
基于DCS的過程實時控制平臺的研究
衛(wèi)星姿控系統(tǒng)半物理仿真中轉(zhuǎn)臺控制算法的實現(xiàn)
馬靜坡 元像·宋陵
菜鳥看模型
攝影欣賞
黄梅县| 霍邱县| 沂源县| 南雄市| 惠水县| 星座| 呼玛县| 温宿县| 三河市| 白玉县| 集贤县| 顺义区| 确山县| 嵩明县| 河津市| 鞍山市| 固镇县| 连江县| 云和县| 海盐县| 阳泉市| 巴青县| 鹤山市| 肃北| 琼结县| 临泉县| 互助| 林州市| 娱乐| 漯河市| 邻水| 油尖旺区| 桂林市| 临汾市| 射阳县| 泰顺县| 易门县| 纳雍县| 中牟县| 宁安市| 专栏|