• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于單片機的智能車速度控制系統(tǒng)

      2018-01-22 13:40:45陶佳
      電子產(chǎn)品世界 2017年9期

      陶佳

      摘要:本文重點介紹了基于光電自動尋線智能車的速度控制系統(tǒng)的設計,包含直流電機的驅(qū)動模塊、速度檢測模塊、速度控制策略、速度控制周期等部分。采用兩片MC33886芯片來驅(qū)動電機運行,用反射式紅外對管檢測電機速度,實現(xiàn)對電機的閉環(huán)控制,通過大量的試驗,最終速度控制策略采用了增量式PID控制和BangBang控制相結(jié)合的方法,并創(chuàng)新性地使用兩個中斷相結(jié)合的方法使得速度控制周期為等時的,從而對智能車過彎速度達到良好的控制。

      關鍵詞:速度控制;增量式PID控制;BangBang控制;控制周期

      DOI: 10.3969/j.issn.1005-5517.2017.8.010

      引言

      在智能車制作中,利用ATmega16單片機作為核心控制單元,以攝像頭為路徑識別傳感器,分別設計控制系統(tǒng),使得模型汽車能夠自動準確地按照規(guī)定的橢圓路線行駛,速度控制是智能車控制系統(tǒng)最核心的部分之一,本文就如何設計智能車速度控制系統(tǒng)做了詳細介紹。

      智能車速度控制系統(tǒng)包含電機驅(qū)動模塊,速度檢測模塊,速度控制策略,速度控制周期等,如圖1所示:

      1 電機驅(qū)動模塊

      系統(tǒng)所用電機是RS-380型號的直流電動機,其額定工作電壓為7.2V,能輸出0.9-40W的功率。使用兩片MC33886芯片并聯(lián)來驅(qū)動電機,其中MC33886為H橋式電源開關IC,該IC結(jié)合內(nèi)部控制邏輯、電荷泵、柵極驅(qū)動器、MOSFET輸出電路,可工作在5-40V電壓范圍內(nèi)。通過PWM信號調(diào)節(jié)輸出,進而調(diào)節(jié)電機轉(zhuǎn)速,PWM的控制頻率為1KHz,PWM23可用于正轉(zhuǎn)控制,PWM45可用于反轉(zhuǎn)控制,OUT1和OUT2接于直流電機上,用來實現(xiàn)在直道時快速加速,彎道實現(xiàn)反轉(zhuǎn)剎車來快速減速。電路圖如圖2所示。

      2 速度檢測模塊

      2.1 速度檢測硬件

      直流電機的速度的檢測方案是:用MATLAB自制黑白相間且均勻等分的編碼盤,如圖3(a)所示。將編碼盤黏貼于圓盤上,當圓盤隨著齒輪轉(zhuǎn)動時,利用反射式紅外對管ST188接收強弱交替變化的反射光,再通過I/O口將高低脈沖電平傳給單片機的輸入捕捉中斷中進行計算。自制測速裝配圖和速度檢測模塊原理圖分別如圖3(b)和如圖3(c)所示。

      該方案具有成本低廉、制作容易、負荷小的優(yōu)點,配合單片機的輸入捕捉功能可以實現(xiàn)高精度的速度采集。

      2.2 速度的計算

      方案中的數(shù)字測速的計算方法是采用T法。T法是指在兩個相鄰的輸入脈沖的間隔時間T內(nèi),用一個計數(shù)器對高頻基準信號的脈沖數(shù)進行計數(shù),由計數(shù)值來計算轉(zhuǎn)速,原理圖如圖4所示。

      計算公式推導:設計碼盤格數(shù)為40,旋轉(zhuǎn)一周能產(chǎn)生20個脈沖。高頻基準信號是通過對系統(tǒng)時鐘1 28分頻獲得,實際頻率f0=24M/128=187.5KHz。在T法測速中,測速時間T是用計數(shù)器所得的基準信號脈沖個數(shù)M2來計算的,即T= M2/f0,對應后輪轉(zhuǎn)速為:n=2/ZT=2fO/ZM2,經(jīng)測量小車的后輪周長為17cm,所以小車速度的計算公式如式(1)所示:

      3 速度控制策略

      3.1 增量式PID控制,2l

      本方案采用增量式PID來使智能車能夠勻速穩(wěn)定地行駛,增量式PID的速度檢測信號M2高頻基準信號T計算公式如式(2)所示:

      3.2 BangBang控制

      BangBang控制的思想是:定義速度誤差en為給定速度減去反饋速度,當en大于設定值ek時,就強制輸出一個最大值Um。,;反之,如果速度誤差en小于設定值(-ek)時,就強制輸出一個最小值Umax 在速度誤差較大時,Bang_Bang調(diào)節(jié)比PID調(diào)節(jié)響應速度更快、更及時。計算公式如式3所示。式中en為給定速度減去反饋速度的差值。

      3.3 增量式PID控制配合BangBang控制

      為了實現(xiàn),在賽道曲率變化不大時且智能車高速勻速穩(wěn)定行駛,采用增量式PID控制。在從直道行駛?cè)霃澋罆r,智能車能夠很快地反轉(zhuǎn)剎車,降低速度,從而良好通過彎道:在彎道進入直道時,智能車能夠很快地提高速度,以高速在直道上行駛。我們采用的速度控制策略是增量式PID控制配合Bang_Bang控制,當給定速度與反饋速度相差不大時,采用增量式PID控制,當給定速度與反饋速度相差較大時, 采用Bang_Bang控制,計算公式如式4所示:

      4 速度控制周期

      采用的控制周期方案是:

      測速程序是通過單片機的輸入捕捉中斷來完成的,即車輪每轉(zhuǎn)一周(0.17m),將產(chǎn)生20次中斷,在這20次中斷過程中,能運行20次的速度檢測,如果按照平均車速1 .8m/s計算的話,那么每一次輸入捕捉中斷的時間為:0.17/(18×20)=4.7ms,也就是每隔4.7ms得到一個反饋速度。

      速度控制程序是指單片機每隔一定時間(如lOms)根據(jù)給定的速度和反饋速度進行速度的閉環(huán)控制。反饋速度是通過上面的輸入捕捉中斷方式讀取,給定速度通過查詢方式獲得。速度控制程序在定時中斷程序中執(zhí)行,而定時中斷是通過模數(shù)遞減計數(shù)器來實現(xiàn)的。

      這樣程序在運行中存在兩個中斷,并且輸入捕捉中斷優(yōu)先級高于模數(shù)遞減計數(shù)器的定時中斷。輸入捕捉的頻率為定時中斷的兩倍,這樣,每執(zhí)行一次定時中斷,反饋速度有兩個值,由于兩個值的時間間隔比較短,取前一次的值代表當前速度,并且測速程序執(zhí)行所占有的時間極短,因此輸入捕捉中斷對速度控制程序的影響不大。

      等時控制是指控制程序每隔一定時間執(zhí)行一次,等距控制是指控制程序每隔一定的距離執(zhí)行一次,由于控制周期不受車速控制,所以等時控制優(yōu)于等距控制。方案一采用自制的用反射式紅外對管測速,價格便宜,但控制周期是等時的:方案二采用旋轉(zhuǎn)編碼器測速,價格昂貴,但測速精度相對高,控制周期是等時的。我們的方案用反射式紅外對管測速,價格便宜,控制周期是等時的。電機速度控制的流程圖如圖5所示。

      5 仿真結(jié)果

      圖6為己制作完成的智能車實物照片,我們在自制的跑道上進行了實際測試,得出以下試驗結(jié)果:獲取了一組比較好的PID參數(shù),Kp=50,K1=3,KD=4,在該參數(shù)下,智能車能夠得到較快、較好且平穩(wěn)的速度。當速度誤差e。(給定速度減去反饋速度的差值)大于70cm/s時,電機驅(qū)動輸出Un為90%的占空比;當速度誤差e。(給定速度減去反饋速度的差值)小于-70cm/s時,電機驅(qū)動輸出Un為10%的占空比。在PID和BangBang控制下速度變化范圍較大,實現(xiàn)了快速加速,快速剎車。

      6 結(jié)論

      經(jīng)過大量的實驗調(diào)試,智能車在基于兩片MC33886并聯(lián)組成的驅(qū)動上,能夠?qū)崿F(xiàn)良好的電機正轉(zhuǎn)和反轉(zhuǎn)控制。通過使用反射式紅外管能夠比較穩(wěn)定和精確地檢測速度,計算速度。用于測速的輸入捕捉中斷和用于速度控制定時中斷兩個相結(jié)合能夠很好地實現(xiàn)控制周期等時。使用的PID和BangBang的結(jié)合的控制策略,通過不斷調(diào)試,選擇合理的參數(shù),實現(xiàn)了智能車根據(jù)路徑識別來閉環(huán)調(diào)節(jié)速度,在賽道曲率變化不大時的勻速行駛,在賽道曲率突變時的速度急增急減的效果,并且智能夠使智能車長時間的良好運行,印證了該方法的可靠和有效。

      參考文獻:

      [1]卓晴,黃開勝,邵貝貝學做智能車——挑戰(zhàn)“飛思卡爾”杯[M]北京:北京航空航天大學出版社,2007

      [2]邵貝貝單片機嵌入式應用的在線開發(fā)方法[M]北京:清華大學出版社,2004

      [3]王威HCS12微控制器原理及應用[M]北京北京航空航天大學出版社,2007

      [4]馬潮AVR單片機嵌入式系統(tǒng)原理與應用實踐[M]北京:北京航空航天大學出版社2007endprint

      乐都县| 封开县| 石嘴山市| 大邑县| 达日县| 通山县| 焦作市| 瑞安市| 榕江县| 太仆寺旗| 松滋市| 晋中市| 札达县| 龙江县| 南投市| 丽水市| 景泰县| 灌南县| 石泉县| 正定县| 利川市| 塘沽区| 峡江县| 墨玉县| 壶关县| 惠州市| 龙江县| 抚宁县| 和静县| 五家渠市| 观塘区| 沙湾县| 阜新| 阳原县| 宣恩县| 郁南县| 玉林市| 古蔺县| 无为县| 莆田市| 安丘市|