智能小車建模研究 自動化畢業(yè)論文
《智能小車建模研究 自動化畢業(yè)論文》由會員分享,可在線閱讀,更多相關(guān)《智能小車建模研究 自動化畢業(yè)論文(56頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 學(xué)號__200531470020__ 密級________________ 武漢大學(xué)本科畢業(yè)論文 智能小車建模研究 院(系)名 稱:動力與機械學(xué)院 專 業(yè) 名 稱 :自動化 學(xué) 生 姓 名 : 指 導(dǎo) 教 師 : 副教授 二○○九年六月 鄭 重 申 明 本人
2、呈交的學(xué)位論文,是在導(dǎo)師的指導(dǎo)下,獨立進行研究工作所取得的成果,所有數(shù)據(jù)、圖片資料真實可靠。盡我所知,除文中已經(jīng)注明引用的內(nèi)容外,本學(xué)位論文的研究成果不包含他人享有著作權(quán)的內(nèi)容。對本論文所涉及的研究工作做出貢獻的其他個人和集體,均已在文中以明確的方式標(biāo)明。本學(xué)位論文的知識產(chǎn)權(quán)歸屬于培養(yǎng)單位。 本人簽名: 日期: BACHELORS DEGREE THESIS OF WUHAN UNIVERSITY Modelling of a Smart Car
3、 College :Power and Mechanical Engineering Subject :Automation Name :Wang Xuezhu Director :Zhuan Xiangtao Associate Professor June 2009 摘 要 本課題源自全國大學(xué)生智能汽車競賽,建模的對象為前輪轉(zhuǎn)向、后輪驅(qū)動的智能小車。論文采用機理分析和實驗測試相結(jié)合的方法,建立了該智能小車在平面上運動的雙輸入雙輸出模型。根據(jù)小車運行和控制特點,輸入量選取智能小車的舵機控制
4、信號和電機控制信號,分別控制車輛轉(zhuǎn)向和前進速度,輸出量選取智能小車任意時刻在平面上的坐標(biāo)。首先通過機理分析得到智能小車的模型結(jié)構(gòu),舵機模型為帶延遲的一階微分方程,電機模型為一階微分方程,在轉(zhuǎn)向時需要在電機模型中加入前輪轉(zhuǎn)向?qū)λ俣鹊挠绊?,然后,通過運動學(xué)分析建立智能小車的整車模型結(jié)構(gòu)。其次,通過實驗測試獲取不同情況下小車運行數(shù)據(jù)。接著運用最小二乘法估計出模型中的未知參數(shù)。將得到的模型和實際小車行駛情況進行對比,驗證了此模型的有效性和可靠性。 關(guān)鍵詞:智能車;建模;參數(shù)估計 ABSTRACT This study origins from the Sm
5、art Car Competition for National University Students, and the modelling object is a four-wheel electric smart car. The mechanism analysis method and experimental modelling method are employed to establish a two-input two-output mathematical model for a smart car. The input of the model is servo cont
6、rol signal and motor control signal, which respectively controls the smart car’s turning and speed, and the output of this model is complanate coordinate of the smart car, which has two degree of freedom. Firstly, the model structure is obtained by using mechanism analysis method. Then, the data of
7、various scenarios for the step responses of the system are measured under different input. With least squares method applied, the parameters of the model are identified. Comparing the simulation result (using the identified model) and the actual experience data (using the smart car running with the
8、same setting), we can see that this model is validated and proved to be reliable. Key words: smart car; modelling; parameter estimation 目錄 第1章 緒論 1 1.1 課題背景 1 1.2 研究現(xiàn)狀 2 1.2.1 汽車?yán)碚?2 1.2.2 系統(tǒng)辨識 3 1.3 本文所作的工作 5 1.4 本文結(jié)構(gòu) 6 第2章 機理分析確定小車模型結(jié)構(gòu) 7 2.1 總述 7 2.2 舵機模型結(jié)構(gòu) 7 2.3 電機模型結(jié)構(gòu) 9 2
9、.3.1 小車的行駛阻力 10 2.3.2 小車的動力供應(yīng) 11 2.3.3 電機模型 13 2.4 小車運動學(xué)模型 14 2.5 小結(jié) 15 第3章 小車模型參數(shù)估計 17 3.1 總述 17 3.2 舵機模型參數(shù)估計 17 3.2.1 前輪偏角測量方法 17 3.2.2 實驗設(shè)計 19 3.2.3 數(shù)據(jù)處理 20 3.3 前輪偏角為0時的電機模型參數(shù)估計 24 3.3.1 小車速度測量方法 24 3.3.2 實驗設(shè)計 25 3.3.3 數(shù)據(jù)處理 25 3.4 前輪偏角對小車速度的影響 28 3.5 小結(jié) 30 第4章 模型驗證 31 4.1 使用Si
10、mulink搭建模型 31 4.2 模型驗證 33 4.3 小結(jié) 35 第5章 結(jié)論與展望 37 參考文獻 40 致謝 42 附錄 43 第1章 緒論 1.1 課題背景 隨著現(xiàn)代科技的飛速發(fā)展,人們對智能化的要求也越來越高,車輛的智能化也被提出。智能車通過結(jié)合傳感器技術(shù)和自動駕駛技術(shù),實現(xiàn)汽車的自動駕駛,將“人—汽車—道路”這一系統(tǒng)中的“人”去除掉,以減少違反交通規(guī)則、擁堵和事故的發(fā)生,提高行駛安全,因此智能車受到越來越多的關(guān)注。全國大學(xué)生智能汽車競賽就是在這個背景下舉行的。 該競賽由教育部高等學(xué)校自動化專業(yè)教學(xué)指導(dǎo)分委員會主辦,參賽隊伍使用競賽組委會提供的統(tǒng)一的汽
11、車模型,使用飛思卡爾半導(dǎo)體公司的8位、16位微控制器作為核心控制模塊,通過增加道路傳感器、設(shè)計電機驅(qū)動電路、編寫相應(yīng)軟件以及裝配模型車,制作一個能夠自主識別道路的模型汽車。比賽時參賽的智能小車在用KT板鋪好的白色跑道上,沿跑道中心的黑色引導(dǎo)線行進,以完成時間最短者為優(yōu)勝。該競賽涉及控制、模式識別、傳感技術(shù)、電子、電氣、計算機、機械及車輛工程等諸多學(xué)科,對培養(yǎng)學(xué)生的知識融合和動手能力具有良好的推動作用[1]。迄今這項大賽已經(jīng)舉辦了三屆,第三屆有來自一百多所高校的五百多支隊伍參賽,該競賽的影響力越來越大,而且隨著這幾年的發(fā)展,各個參賽智能小車的速度也越來越快。 全國大學(xué)生智能汽車競賽的跑道使用為
12、厚約0.5cm白色KT板鋪成,跑道寬60cm,KT板的中心貼有2.5cm寬的黑色電工膠帶作為引導(dǎo)線。而智能小車長約28cm,寬約17cm,相對而言跑道較窄。比賽中要求小車行駛時不能偏離跑道,否則成績無效,對速度較快的智能小車提出了很高的控制要求,設(shè)計的控制器是否足夠穩(wěn)、準(zhǔn)、快決定了比賽的結(jié)果。目前常用的智能小車控制器為PID控制器和模糊控制器。對于PID控制器的設(shè)計在沒有小車模型的情況下只能根據(jù)反復(fù)調(diào)車來整定參數(shù),而對于模糊控制器的設(shè)計也是通過調(diào)車經(jīng)驗來設(shè)計模糊控制規(guī)則,這樣設(shè)計控制器,對人的主觀因素依賴很大,難以取得較好的控制效果。而且根據(jù)調(diào)車經(jīng)驗得到的參數(shù)往往適應(yīng)性較差,在路面摩擦系數(shù)、電
13、池電壓和輪胎磨損程度等條件發(fā)生改變時,這些控制器難以適應(yīng)最新變化,會出現(xiàn)超調(diào)或是調(diào)節(jié)量不足的現(xiàn)象,難以在不同環(huán)境下都滿足穩(wěn)、準(zhǔn)、快的控制要求。在比賽中可以看到,由于跑道使用的KT板材料不一樣,比賽時的路面摩擦和平時訓(xùn)練時的路面摩擦有較大差異,因而根據(jù)經(jīng)驗調(diào)試的控制器的實際運行很難達到滿意的效果。 基于這樣的情況,我們需要對智能小車的結(jié)構(gòu)進行研究,建立準(zhǔn)確可靠的數(shù)學(xué)模型,并及時更新模型參數(shù),以提高控制精度。因為已知小車的數(shù)學(xué)模型,就可分析和改善控制系統(tǒng)的性能,整定控制器的參數(shù),設(shè)計特殊控制規(guī)律等,也可以進行最優(yōu)控制、自適應(yīng)控制和自整定控制等控制器的設(shè)計和應(yīng)用,確保小車在各種環(huán)境下都能正常運行[
14、2, 3]。而且可以將建立的模型用于仿真研究,實現(xiàn)對智能小車運行的模擬仿真,從而更方便地分析、制定控制策略。同時,對智能小車結(jié)構(gòu)的分析還可以為優(yōu)化小車結(jié)構(gòu)提供理論依據(jù)。 1.2 研究現(xiàn)狀 1.2.1 汽車?yán)碚? 對智能小車進行建模研究,首先要對智能小車進行動力學(xué)分析。長期以來,人們一直在很大程度上習(xí)慣按縱向、垂向和橫向分別獨立研究車輛動力學(xué)問題,即縱向動力學(xué)、行駛動力學(xué)和操縱動力學(xué)。 (1)縱向動力學(xué)??v向動力學(xué)研究車輛直線運動及其控制的問題,主要是車輛沿前進方向的受力與其運動的關(guān)系。車輛的行駛阻力主要有加速阻力、滾動阻力、空氣阻力和坡度阻力等;對車輛動力及功率的供應(yīng)能力主要由發(fā)動機功率
15、和傳動系機械效率決定[4]。 (2)行駛動力學(xué)。行駛動力學(xué)主要研究由路面的不平激勵,通過懸架和輪胎垂向力引起的車身跳動和俯仰以及車輪的運動。行駛動力學(xué)研究的首要問題是建立考慮懸架特性在內(nèi)的車輛動力學(xué)模型——具有七自由度的整車系統(tǒng)模型:假定車身是一個剛體,當(dāng)車輛在水平面做勻速直線運動時,車身具有上下跳動、俯仰、側(cè)傾三個自由度;兩個前輪分別具有垂向運動的自由度;獨立懸架的兩個后輪垂向運動的自由度,或非獨立懸架中后軸的垂向跳動和側(cè)傾轉(zhuǎn)動兩個自由度[5]。當(dāng)汽車對稱于其縱軸線,且左、右車轍的路面不平度函數(shù)相等,此時汽車車身只有垂直振動和俯仰振動,這兩個自由度的振動對平順性影響最大,通??梢院喕癁樗淖?/p>
16、由度的半車模型[6]。 (3)操縱動力學(xué)。操縱動力學(xué)研究車輛的操縱特性,主要與輪胎側(cè)向力有關(guān),并由此引起車輛側(cè)滑、橫擺和側(cè)傾運動。最簡單的車輛操縱模型可由一單質(zhì)量剛體來表示,該剛體在外力和外力矩作用下具有在道路水平面運動的三個自由度,即縱向運動、側(cè)向運動及橫擺運動。輪式車輛的轉(zhuǎn)向機構(gòu)通常按實現(xiàn)阿克曼轉(zhuǎn)向(不計輪胎側(cè)偏的無側(cè)滑轉(zhuǎn)向)來設(shè)計。轉(zhuǎn)向機構(gòu)多為空間機構(gòu),結(jié)構(gòu)和運動參數(shù)較多,運動關(guān)系復(fù)雜,通過對轉(zhuǎn)向相關(guān)部件的運動進行解析即可導(dǎo)出轉(zhuǎn)向傳動機構(gòu)的基本運動方程[7, 8]。當(dāng)車輛側(cè)向加速度小于0.4g時,通常意味著車輛在高附著路面做小轉(zhuǎn)向運動,操縱性能在線性域工況內(nèi),可使用線性模型對操縱性能進
17、行定量分析。 實際中的車輛同時會受到縱向、垂向和橫向三個方向的輸入,各方向所表現(xiàn)的運動響應(yīng)特性必然是相互作用、相互耦合的。隨著功能強大的計算機技術(shù)和動力學(xué)分析軟件的發(fā)展,已經(jīng)能夠?qū)⑷齻€方向的動力學(xué)問題結(jié)合起來進行研究,對車輛動力學(xué)問題的分析也可能擴展到更復(fù)雜的工況及非線性域[9]。但對三個方向分開處理仍很常用,因為這樣做可以減少模型的自由度,從而減少分析工作量,易于處理。而且如果對車輛的工作狀況及條件進行適當(dāng)限制,那么三個方向的耦合關(guān)系則可能不太顯著。比如,當(dāng)車輛在水平粗糙路面勻速直線行駛時,問題將集中在行駛動力學(xué)特性方面;當(dāng)車輛在水平路面勻速轉(zhuǎn)彎行駛時,那些主導(dǎo)操縱性能的力和運動對縱向和垂
18、向特性則無顯著影響。 與傳統(tǒng)的集中質(zhì)量模型相比,近代發(fā)展起來的多剛體系統(tǒng)動力學(xué)可大大提高復(fù)雜車輛模型的精度。隨著計算機技術(shù)的飛速發(fā)展,車輛的多剛體模型逐步向多柔體模型發(fā)展,考慮車輛中一些柔性體(如橡膠襯套等)的剛?cè)狁詈夏P鸵材軌虮痪_地建立,對車輛多體系統(tǒng)動力學(xué)建模的研究正在迅速發(fā)展著[10]。 同樣迅速發(fā)展的還有對車輛的動態(tài)建模。建立可以實時適應(yīng)外部條件變化的車輛動態(tài)模型,可以使車輛在不同條件下都能實現(xiàn)優(yōu)秀的控制[11]?!盾囕v動態(tài)數(shù)學(xué)模型輔助的慣性導(dǎo)航系統(tǒng)》[12]提出了一種利用車輛的動態(tài)數(shù)學(xué)模型改善車載低成本慣性導(dǎo)航系統(tǒng)精度的方法,它通過車輛的運動學(xué)模型和非完整約束條件得到虛擬的位置
19、和速度觀測量,與前向速度一起輔助慣性導(dǎo)航系統(tǒng),慣性導(dǎo)航系統(tǒng)修正后的方位角又用來改善車輛的運動學(xué)數(shù)學(xué)模型。 1.2.2 系統(tǒng)辨識 在對智能小車的建模中,不僅要進行理論分析,還要使用系統(tǒng)辨識來估計某些難以建模部分以及某些未知的參數(shù)。系統(tǒng)辨識是從系統(tǒng)的輸入輸出數(shù)據(jù)建立系統(tǒng)數(shù)學(xué)模型的理論和方法,它包括確定系統(tǒng)數(shù)學(xué)模型結(jié)構(gòu)和估計數(shù)學(xué)模型參數(shù)。 如圖1.1所示,系統(tǒng)辨識的基本過程一般包括以下4個主要階段: 圖1.1 系統(tǒng)辨識的基本過程 (1)根據(jù)系統(tǒng)建模目的及已有的驗前知識,設(shè)計系統(tǒng)辨識試驗。在設(shè)計試驗時,首先要根據(jù)試驗對象確定所要觀測的變量,其中
20、輸入變量通常由設(shè)計者給定,而輸出變量則要通過檢測獲得。實踐中常用的輸入信號有階躍信號、方波、窄脈沖、偽隨機二進制序列等。 (2)選擇合適的模型類型和結(jié)構(gòu)。模型的結(jié)構(gòu)類型選擇主要取決于模型的應(yīng)用目的及精度要求,往往需要在其精度與復(fù)雜度之間進行權(quán)衡折中。對被辨識過程物理意義的認(rèn)識在結(jié)構(gòu)確定過程中往往有很大作用。模型結(jié)構(gòu)確定在線性定常系統(tǒng)中指的是階次與純滯后的確定,通過對模型的線性化、離散化等處理,很多模型也可以簡化為線性定常的離散系統(tǒng),以方便模型的辨識。 (3)根據(jù)實驗觀測到的輸入輸出數(shù)據(jù),估計模型中的未知參數(shù)。模型結(jié)構(gòu)確定后,其中未知部分就需要通過試驗數(shù)據(jù)去估計。參數(shù)估計的要求是使辨識出來的
21、模型與實際過程在某種意義上是最接近的,最常用的參數(shù)估計算法是最小二乘類算法。 (4)對所獲得的數(shù)學(xué)模型進行驗證。被辨識出來得模型,需要通過檢驗來確定它是否是可靠的,或是否真實反映對象的特性。為了得到可靠的數(shù)學(xué)模型,需要進行多次試驗。而且用一套數(shù)據(jù)辨識出來的模型,需要另一套數(shù)據(jù)來驗證或修改。如此交錯地核對,才可能使模型的質(zhì)量得到保證[13]。 在系統(tǒng)辨識中,當(dāng)模型結(jié)構(gòu)未知時,需要首先進行模型結(jié)構(gòu)的辨識。在線性系統(tǒng)的模型結(jié)構(gòu)辨識方面,主要有基于行列式比的方法,基于損失函數(shù)方法和基于信息準(zhǔn)則的方法。用基于行列式比的方法定階,不涉及參數(shù)估計問題,基于損失函數(shù)的方法則借助于最小二乘估計,基于信息準(zhǔn)則
22、的方法則依賴于對模型噪聲的似然估計。在非線性系統(tǒng)結(jié)構(gòu)辨識方面尚沒有切實可行的較通用的方法,一般采用機理分析。 當(dāng)模型結(jié)構(gòu)已知時就只需要對模型參數(shù)進行辨識,即進行參數(shù)估計。最小二乘法是最常用的參數(shù)估計的數(shù)學(xué)方法,它使數(shù)學(xué)模型在誤差平方和最小的意義上擬合實驗數(shù)據(jù)。最小二乘法在參數(shù)估計領(lǐng)域是一種基本方法,它將參數(shù)估計問題轉(zhuǎn)化為一個確定性的最優(yōu)化問題來處理,因此它不同于其它一些參數(shù)估計方法,不涉及有關(guān)量的概率和統(tǒng)計描述。最小二乘法是對整批數(shù)據(jù)進行處理的一種算法,可以用于線性系統(tǒng)參數(shù)估計,包括動態(tài)的、靜態(tài)的、參數(shù)的或非參數(shù)的模型辨識。通過對基本的最小二乘法進行擴展和改進生成的新的算法,可以滿足在實際應(yīng)
23、用中的不同要求。例如,當(dāng)新數(shù)據(jù)源源而來時,為了減少數(shù)據(jù)存儲量、避免求逆、減少計算量,需要引入遞推算法,以減少計算量和內(nèi)存量,還可以很好地滿足在線實時辨識與自適應(yīng)控制的需要[14]。除了最小二乘類算法外,還有很多系統(tǒng)辨識算法,如極大似然算法,卡爾曼濾波算法,模型參考自適應(yīng)辨識法,隨機數(shù)直接搜索法,隨機逼近法,Bayes方法,神經(jīng)網(wǎng)絡(luò)法,遺傳算法等。這些算法的適應(yīng)范圍各不相同,可以根據(jù)實際情況選用并加以改造[15]。 1.3 本文所作的工作 智能小車使用的微控制器為MC9S12DG128,它的內(nèi)部集成了CPU、存儲器、定時器、SCI、SPI、A/D轉(zhuǎn)換器、PWM等多種功能,在本課題中主要使用P
24、WM模塊對電機和舵機進行控制,使用ECT模塊實現(xiàn)定時中斷和實時測速,使用SCI模塊實現(xiàn)單片機和電腦的串行通信。 本課題采用機理分析和實驗測試相結(jié)合的方法,對前輪轉(zhuǎn)向、后輪驅(qū)動的智能小車,建立了小車在平面上運動的雙輸入雙輸出模型。輸入量選擇智能小車的舵機控制信號和電機控制信號,分別控制車輛轉(zhuǎn)向和前進速度,輸出量選擇智能小車任意時刻在平面上的坐標(biāo)。具體做法是:首先通過機理分析得到智能小車的模型結(jié)構(gòu)。對智能小車的轉(zhuǎn)向、驅(qū)動等環(huán)節(jié)分別從理論上進行分析建模,并通過運動學(xué)分析建立智能小車的整車模型結(jié)構(gòu)。其次通過實驗測試估計模型中的未知參數(shù)。設(shè)計實驗并編寫程序控制小車運行,觀測小車在不同輸入下的響應(yīng)結(jié)果,
25、然后編寫參數(shù)估計的程序,辨識模型參數(shù)。最后將所得模型的仿真結(jié)果和實際小車行駛情況進行對比,以進一步優(yōu)化模型結(jié)構(gòu)和模型辨識程序。 1.4 本文結(jié)構(gòu) 第1章是緒論,介紹了本課題的背景,汽車?yán)碚摵拖到y(tǒng)辨識的研究現(xiàn)狀,本課題的研究方向和目的意義。 第2章是機理分析確定小車模型結(jié)構(gòu),本章分為三個部分,分別對舵機、電機和車輛運動學(xué)進行理論分析,得到了智能小車的模型結(jié)構(gòu)。 第3章是小車模型參數(shù)估計,本章通過測量某個智能小車的階躍響應(yīng)數(shù)據(jù),運用最小二乘法分別對舵機模型、電機模型進行參數(shù)估計,得到小車模型。 第4章是模型驗證,首先使用Simulink搭建模型并進行仿真,然后將模型仿真結(jié)果與小車實際運行
26、情況作比較,驗證模型的正確性。 第5章是結(jié)論與展望,對本文的研究結(jié)果做出總結(jié),并提出進一步研究的發(fā)展方向。 第2章 機理分析確定小車模型結(jié)構(gòu) 2.1 總述 該智能小車為一個前輪轉(zhuǎn)向、后輪驅(qū)動的四輪小車,使用7.2V的Ni-Cd電池作為電源。小車的前輪為導(dǎo)向輪,由Futaba S3010直流舵機控制前輪的偏轉(zhuǎn)角度,實現(xiàn)小車轉(zhuǎn)向。后輪為驅(qū)動輪,由RS380-ST直流電機帶動后輪轉(zhuǎn)動,從而驅(qū)動小車行進。后輪的方向和車身方向保持一致,不發(fā)生偏轉(zhuǎn)。小車車身可假定為一個剛體,不考慮車身的上下跳動、俯仰、側(cè)傾等狀況。 智能小車在水平面運動時,輸入量選取舵機控制信號和電機控制信號,分別控
27、制車輛轉(zhuǎn)向和前進速度,輸出量選取小車在該平面上的坐標(biāo),當(dāng)使用直角坐標(biāo)系時,輸出量為當(dāng)前坐標(biāo)[X,Y],于是小車模型為一個雙輸入雙輸出的數(shù)學(xué)模型。 首先將小車模型分為三部分分別進行理論研究: (1)舵機輸入輸出模型。舵機控制前輪轉(zhuǎn)向,其輸入為舵機控制信號PWM波的占空比,輸出為小車前輪偏角。 (2)電機輸入輸出模型。電機控制小車速度,其輸入為電機控制信號PWM波的占空比,輸出為小車后輪速度。 (3)小車運動學(xué)模型。輸入為小車速度和轉(zhuǎn)角,輸出為小車當(dāng)前坐標(biāo)。 2.2 舵機模型結(jié)構(gòu) 智能小車前輪轉(zhuǎn)向使用的舵機型號為Futaba S3010,這是一個直流電動舵機,可使用的電源為4V-6V直
28、流電壓。鑒于提高電壓可以提高舵機響應(yīng)速度,實際應(yīng)用中使用+6V直流電壓。舵機的控制信號為PWM信號,由單片機MC9S12DG128中的PWM模塊產(chǎn)生,并送到舵機的控制線上。 PWM(Pulse Width Modulation)信號是一個脈沖寬度調(diào)制方波,該方波的周期一定,其占空比(脈沖寬度與信號周期的比值)被調(diào)制用來對一個具體的模擬信號電平進行數(shù)字編碼。PWM輸出的電壓以一種通或斷的重復(fù)脈沖序列被加到模擬負(fù)載上,實現(xiàn)一定的模擬信號電平,是利用微處理器的數(shù)字輸出來對模擬電路進行控制的一種非常有效的技術(shù)。 舵機是一個典型的位置隨動閉環(huán)系統(tǒng),在其控制線上輸人一個PWM信號,通過內(nèi)部的位置反饋,
29、使其舵盤輸出轉(zhuǎn)角正比于給定的PWM控制信號的脈寬。表2.1為Futaba S3010的基本參數(shù),輸入PWM信號的周期為20ms,舵機轉(zhuǎn)角同輸入信號的脈寬呈線性關(guān)系,-60對應(yīng)于920us脈寬,0對應(yīng)于1520us脈寬,60對應(yīng)于2120us脈寬。 表2.1 Futaba S3010舵機的基本參數(shù) 消費電流(參考值為6.0V時): 停止時 MAX 15 [mA](無負(fù)荷) 動作時 145 + 30 [mA](無負(fù)荷) 輸出扭矩: 6.0V時 6.5 + 1.3 [ Kg.cm] 動作速度: 6.0V時 0.16 + 0.02 [Sec/60度] 動作方向
30、: CW pulse窄(1520 → 920 [us]) CCW pulse寬(1520 → 2120 [us]) 動作角度: CW 60 + 10 [度] CCW 60 + 10 [度] 晃動量: MAX 0.3 [mm] Futaba S3010內(nèi)部結(jié)構(gòu)由Tricore GM1510直流電機、S256控制電路板、減速齒輪組、5K位置反饋電位器、舵盤等構(gòu)成,其中位置反饋電位器和舵盤相連接,電位器上的電壓反映舵盤的位置。 圖2.1 舵機工作原理圖 該舵機的基本工作原理如圖2.1所示,舵機內(nèi)部的基準(zhǔn)電路產(chǎn)生周期為20ms、寬度為1.5ms的基準(zhǔn)信號,PWM控制
31、信號由接收機的通道進入信號調(diào)制芯片,獲得直流偏置電壓;將直流偏置電壓與反饋電位器的電壓比較,獲得電壓差輸出;電壓差的正負(fù)輸出到電機驅(qū)動芯片決定電機的正反轉(zhuǎn);電機的轉(zhuǎn)動通過級聯(lián)減速齒輪帶動反饋電位器旋轉(zhuǎn),使反饋電位器的電壓趨近直流偏置電壓,當(dāng)電壓差為0時電機停止轉(zhuǎn)動[16]。 上述是對舵機基本工作原理的介紹,在具體設(shè)計舵機時,往往不只是用簡單的位置反饋控制,而是通過較復(fù)雜的控制方法以實現(xiàn)良好的響應(yīng)特性。例如在《基于極點配置的電動舵機控制器設(shè)計》[17]一文中,建立了舵機內(nèi)部的直流電機的數(shù)學(xué)模型,然后運用基于傳遞函數(shù)的極點配置方法,設(shè)計了一個包含前饋控制和反饋控制的位置伺服系統(tǒng)控制器。在《電動舵
32、機系統(tǒng)控制律的一種工程設(shè)計方法》[18]一文中,建立了包括功率變換器、直流電機和減速器在內(nèi)的電動舵機系統(tǒng)的數(shù)學(xué)模型,提出了電動舵機系統(tǒng)的位置、轉(zhuǎn)速和電流三閉環(huán)控制結(jié)構(gòu),并詳細(xì)闡述了三閉環(huán)調(diào)節(jié)器的工程設(shè)計方法。 鑒于Futaba S3010內(nèi)部具體控制策略未知,直流電機參數(shù)和齒輪組減速器參數(shù)也未知,無法通過對舵機內(nèi)部結(jié)構(gòu)的分析得到具體的數(shù)學(xué)模型。但通過以上分析以及表2.1可以看出,舵機響應(yīng)存在機械延遲和電延遲,是一個大延遲系統(tǒng),經(jīng)過閉環(huán)控制后的舵機動態(tài)過程可以用帶延遲的一階慣性環(huán)節(jié)近似表示。因此可以設(shè)舵盤轉(zhuǎn)角的數(shù)學(xué)模型為: (2.1) 式中為穩(wěn)態(tài)時輸出的舵盤轉(zhuǎn)角,與控制舵機的PWM波的
33、占空比有關(guān)。 在單片機MC9S12DG128中,控制PWM周期的寄存器為PWMPER,控制PWM占空比的寄存器為PWMDTY,且PWM占空比=PWMDTY/PWMPER。設(shè)PWMDTY隨時間變化的函數(shù)為,由于舵盤轉(zhuǎn)角正比于給定的PWM控制信號的脈寬,所以應(yīng)有一次函數(shù)。設(shè)舵盤轉(zhuǎn)角為,則式(2.1)可用微分方程表示為: (2.2) 根據(jù)式(2.2)求出了舵盤轉(zhuǎn)角,于是小車的前輪偏角可以根據(jù)對前輪轉(zhuǎn)向機構(gòu)的幾何分析計算得到。設(shè)前輪偏角為,前輪偏角與舵盤轉(zhuǎn)角的關(guān)系為 (2.3) 則綜合式(2.2)和式(2.3)即為舵機
34、模型。 2.3 電機模型結(jié)構(gòu) 智能小車后輪的驅(qū)動電機型號為RS380-ST,這是一個7.2V的永磁直流電機,最大功率可達26.5W。適用于該直流電機的調(diào)速方法為改變電樞端電壓調(diào)速?,F(xiàn)在廣泛使用的直流電機驅(qū)動電路是H橋電路,通過單片機輸出不同占空比的PWM信號來近似不同幅度的電壓,以達到控制速度的目的。 建立電機輸入輸出模型,需要分析行駛過程中小車的動力需求與動力供應(yīng),即小車的行駛阻力和動力與傳動系統(tǒng)。小車的行駛阻力主要包括加速阻力、滾動阻力、空氣阻力和坡度阻力等。小車的驅(qū)動力是由電機的轉(zhuǎn)矩經(jīng)傳動系傳至驅(qū)動輪上得到的。小車的行駛方程為
35、 (2.4) 式中,為驅(qū)動力,為行駛阻力之和。 2.3.1 小車的行駛阻力 小車在水平路面上勻速行駛時,忽略其內(nèi)部機械摩擦損耗,需要克服的阻力主要是來自地面的滾動阻力和來自空氣的空氣阻力,分別以符號和表示。小車加速時,還要克服加速阻力,以符號表示。如果小車在坡道上行駛,則還要受到重力沿坡道方向的分力,稱為坡度阻力,以符號表示。 滾動阻力是指車輪沿水平面滾動時產(chǎn)生的各項阻力的總和,其產(chǎn)生原因是:車輪滾動時,輪胎和路面的接觸區(qū)域產(chǎn)生法向、切向的相互作用力,并使相應(yīng)部位的輪胎和支承路面發(fā)生變形。當(dāng)彈性輪胎在硬路面上滾動時,主要考慮輪胎的變形。此時輪胎由于內(nèi)部摩擦產(chǎn)生彈性遲滯
36、損失,使輪胎變形時對它所做的功不能完全回收,部分能量轉(zhuǎn)化為熱能散失,稱為彈性物質(zhì)的遲滯損失。這種遲滯損失在小車運動中表現(xiàn)為阻礙車輪滾動的阻力偶[19]。為了克服這個滾動阻力偶矩,需要施加的推力大小為即為滾動阻力。滾動阻力的計算方法是 (2.5) 式中,是小車總質(zhì)量,是重力加速度,是滾動阻力系數(shù)。滾動阻力系數(shù)可以通過力矩平衡條件計算得到,在車速較小時基本不變,可視為常數(shù)。 在轉(zhuǎn)彎行駛時,輪胎發(fā)生側(cè)偏現(xiàn)象,滾動阻力會大幅度增加,在一般的動力性分析中常不考慮轉(zhuǎn)彎增加的阻力。但智能小車的驅(qū)動力較小,在轉(zhuǎn)彎時可明顯看到滾動阻力的增加對其
37、速度的影響,因此應(yīng)加入修正因子。用符號表示由于轉(zhuǎn)彎而增加的滾動阻力,且,則式(2.5)修正為 。 (2.6) 其中為前輪偏角的函數(shù),可以通過實驗進行估計。 空氣阻力是車輛在直線行駛時受到的空氣作用力在行駛方向上的分力,包括壓力阻力和摩擦阻力。車輛行駛空氣阻力大致與氣流相對速度的動壓力 成正比,一般可表示為 (2.7) 式中,為空氣阻力系數(shù),為空氣密度,為車輛行駛方向的投影面積,為車輛和空氣的相對速度,在無風(fēng)時即為車輛的行駛速度。 當(dāng)行駛速度較低時,較小,
38、車輛克服空氣阻力所消耗的功率很低,因此在實際運用中對低速行進的車輛可以忽略空氣阻力,以簡化計算公式[20]。本課題研究的智能小車最大速度一般為3m/s,屬于低速行駛,因此空氣阻力可以忽略不計。 車輛在做加速運動時需要克服的慣性力即為加速阻力,又稱為慣性阻力,它等于車輛質(zhì)量和加速度的乘積。然而車輛在加速時,不僅其平移質(zhì)量要產(chǎn)生慣性力,其旋轉(zhuǎn)質(zhì)量也要產(chǎn)生慣性力偶矩,車輛實際受到的慣性阻力應(yīng)為車輛的平動質(zhì)量和旋轉(zhuǎn)質(zhì)量之和與加速度的乘積。由于旋轉(zhuǎn)質(zhì)量難以進行汁算,一般引入旋轉(zhuǎn)部分等效質(zhì)量換算系數(shù)(),使車輛的旋轉(zhuǎn)質(zhì)量=,將旋轉(zhuǎn)質(zhì)量轉(zhuǎn)化為平移質(zhì)量從而簡化計算。因此小車的加速阻力為
39、 (2.8) 小車在坡道上行駛時,小車重力沿坡道方向的分力表現(xiàn)為小車的坡度阻力,坡度為的坡道,坡度阻力為 (2.9) 較小時,,式(2.9)可以寫作。在本課題研究中,不考慮坡道情況,只研究小車在水平路面上的運動模型,故=0。 綜上所述,智能小車受到的行駛阻力之和為 (2.10) 2.3.2 小車的動力供應(yīng) 智能小車的動力是由RS380-ST電機提供的,這是一個永磁直流電動機。其基本工作原理是:定子通過永磁體產(chǎn)生一個固定磁場,轉(zhuǎn)子由一系列電磁體構(gòu)成,輸入電流通過轉(zhuǎn)子中的電樞繞組時產(chǎn)生
40、磁場,該磁場與定子的磁場產(chǎn)生力的作用,由于定子是固定不動的,因此轉(zhuǎn)子在力的作用下轉(zhuǎn)動。 直流電動機的機械特性方程式為 (2.11) 式中,為電機轉(zhuǎn)速,單位為r/min,為電樞端的輸入電壓,為電樞繞組電阻,為串入電樞回路的調(diào)節(jié)電阻,為電樞電流,為電動勢常數(shù),為轉(zhuǎn)矩常數(shù),為電磁轉(zhuǎn)矩,為每極磁通量,忽略電樞反應(yīng)影響,則為常數(shù)[21]。 設(shè)為機械轉(zhuǎn)矩輸出,為空載轉(zhuǎn)矩。忽略機組軸系轉(zhuǎn)動慣量,則,代入式(2.11)可得 (2.12) 設(shè)為驅(qū)動力,為施加于驅(qū)動輪的力臂。則有
41、 (2.13) 將乘以電機角速度,得到電機的輸出機械功率 (2.14) 將式(2.12)、式(2.13)代入式(2.14)可得 (2.15) 當(dāng)電機的輸入電壓為7.2V時,其主要參數(shù)如表2.2所示。從表中可以看出,電壓一定時,轉(zhuǎn)矩隨電流增大而增大,轉(zhuǎn)速隨電流增大而減小。電機功率則與轉(zhuǎn)矩和轉(zhuǎn)速之積成正比。 表2.2 =7.2V時電機的主要參數(shù) 無負(fù)荷 最大效率(64.6%)
42、最大功率(26.68W) 停止 電流 轉(zhuǎn)速 電流 轉(zhuǎn)速 轉(zhuǎn)矩 電流 轉(zhuǎn)速 轉(zhuǎn)矩 電流 轉(zhuǎn)矩 A rpm A rpm g.cm A rpm g.cm A g.cm 0.49 15300 2.85 13100 99 8.61 7650 340 16.72 680 小車使用的RS380-ST電動機通過改變其電樞端電壓進行調(diào)速。由式(2.11)可知,輸出的轉(zhuǎn)矩一定時,轉(zhuǎn)速與電樞端電壓成正比??刂妻D(zhuǎn)速最常見方法是施加一個PWM信號,使其占空比對應(yīng)于所需速度,電機起到一個低通濾波器作用,將該PWM信號轉(zhuǎn)換為有效直流電平作為電樞端電壓,從而控制
43、電機轉(zhuǎn)速。PWM信號由單片機MC9S12DG128中的PWM模塊產(chǎn)生,并可以通過改變寄存器PWMDTY的值來改變占空比??刂齐姍C的PWM信號的周期為100ms,在單片機中控制PWM周期的寄存器PWMPER=200,設(shè)控制PWM占空比的寄存器PWMDTY的值隨時間變化的函數(shù)為,電池電壓為,則 (2.16) 將式(2.16)代入式(2.15)可得: (2.17) 2.3.3 電機模型 設(shè)小車后輪驅(qū)動速度為,則 (2.18) 聯(lián)合式(2.17)和式
44、(2.18)可得 (2.19) 由式(2.4)和式(2.10)可得 (2.20) 將式(2.20)代入式(2.19),整理可得: (2.21) 令 則式(2.21)可簡化為 (2.22) 式(2.22)即為電機模型,其中為常數(shù),只和電機自身特性有關(guān);和電池電壓成正比,不變時也為常數(shù);代表小車在直線行駛時受到的阻力之和(主要是滾動摩擦力),在路面情況不變時為常量;代表由于轉(zhuǎn)彎而增加的滾動阻力,隨前輪偏角的改變而改變。 2.4 小車運動學(xué)模型 目前常用
45、的汽車運動學(xué)模型有:單輪模型、雙輪自行車模型和四輪模型。單輪模型研究車輛沿直線行駛的情況,主要用于描述車輛的制動和驅(qū)動性能。雙輪模型假定左右轉(zhuǎn)向輪的轉(zhuǎn)向角和側(cè)偏角相等,主要用于描述汽車轉(zhuǎn)彎和前向動力控制。四輪模型則考慮到了左右轉(zhuǎn)向輪轉(zhuǎn)向角的不相等和側(cè)偏角的不相等,更加接近于實際情況,涉及了兩個前輪之間協(xié)調(diào)性的問題[22, 23]。本課題中單輪模型不足以描述智能小車的運動情況,四輪模型則較復(fù)雜,不便于計算,因此采用可以描述小車轉(zhuǎn)向和驅(qū)動性能的兩輪模型。 圖2.2 小車平面運動示意圖[24] 圖2.2為小車在平面上運動的示意圖,并假定小車車輪做無滑動
46、的純滾動運動。圖中,F(xiàn)和M分別為小車的前輪軸心和后輪軸心,兩軸心F和M之間的距離為。P為小車上任意點,P到M的距離為,PM與小車中軸線的夾角為。前輪輪面平行軸線與小車中軸線的夾角(即前輪偏角)為,小車中軸線與X軸的夾角為。 由圖可以得到點P和點M的關(guān)系為 (2.23) 小車是后輪驅(qū)動,故沿小車中軸線方向上的速度即為小車速度,根據(jù)圖中所示的幾何關(guān)系,可知 (2.24) 不考慮車輪滑動,則M點的坐標(biāo)可由下式確定
47、 (2.25) 根據(jù)式(2.23)、式(2.24)和式(2.25)可得P點的坐標(biāo)為: (2.26) 因此,以小車上任意點P為參考點的運動學(xué)模型為: (2.27) 為了簡化模型,選擇后輪軸心M為參考點,則運動學(xué)模型為: (2.28) 2.5 小結(jié) 本章通過對智能小車結(jié)構(gòu)的理論分析,得到了前輪轉(zhuǎn)向、后輪驅(qū)動的智能小
48、車的模型結(jié)構(gòu)。在第2.2節(jié)中,通過對舵機內(nèi)部結(jié)構(gòu)的分析,得到了舵機輸入(PWM占空比)和輸出(前輪偏角)的基本關(guān)系,見式(2.2)和式(2.3)。在第2.3節(jié)中,通過對永磁直流電機的原理分析,得到電機輸入(PWM占空比)和輸出(小車速度)的關(guān)系,見式(2.22)。在2.4中,通過對四輪小車運動學(xué)模型的分析,得到雙輸入(前輪偏角和小車速度)雙輸出(小車上任意點的坐標(biāo)(x,y))模型,見式(2.27)。 智能小車整車模型的輸入量選取舵機控制信號PWM的占空比和電機控制信號PWM的占空比,輸出量選取小車后輪軸心M的坐標(biāo)。 則智能小車的整車模型結(jié)構(gòu)為: (2.29)
49、 第3章 小車模型參數(shù)估計 3.1 總述 參數(shù)估計是從已知系統(tǒng)數(shù)學(xué)模型的結(jié)構(gòu)估計其參數(shù)的方法。分析智能小車的模型結(jié)構(gòu)可以看到:舵機模型(見式(2.2)和式(2.3))中有三部分需要辨識:舵機的時間常數(shù),時間延遲,舵機穩(wěn)態(tài)時輸出的舵盤轉(zhuǎn)角和輸入占空比的函數(shù)關(guān)系。根據(jù)參加智能汽車競賽時所做的測試,知道是一個分段線性函數(shù)。而舵盤轉(zhuǎn)角和前輪偏角的函數(shù)關(guān)系可以根據(jù)前輪轉(zhuǎn)向機構(gòu)的幾何關(guān)系計算得到,不需要辨識。電機模型(見式(2.22))中有四部分需要辨識,,,和。其中為時間常數(shù),只和電機自身特性及電池電壓相關(guān),代表小車在直線行駛時受到的阻力之和,
50、在路面情況不變時為常量,代表小車轉(zhuǎn)向時受到的額外阻力,隨前輪偏角的增加而增加。運動學(xué)模型(見式(2.28))中的參數(shù)均已知,前后輪軸心之間的距離可直接測得,沒有需要估計的參數(shù)。 本章分為三個部分: (1)設(shè)計舵機控制實驗,對舵機模型的參數(shù)進行估計。 (2)保持小車前輪偏角為0,以排除轉(zhuǎn)向?qū)π≤囁俣鹊挠绊?,設(shè)計電機控制實驗,對,,進行估計。 (3)給定電機輸入,改變舵機位置,即改變前輪偏角,觀測小車速度的變化,對進行估計。 3.2 舵機模型參數(shù)估計 舵機模型的輸入量為舵機控制信號PWM的占空比,輸出量為前輪偏角,需要使用傳感器測量。設(shè)計實驗測試舵機的輸入輸出數(shù)據(jù),然后通過數(shù)據(jù)處理來估
51、計舵機模型參數(shù)、和函數(shù)。 3.2.1 前輪偏角測量方法 測量角度的傳感器有很多種,高精度的激光角度干涉儀,旋轉(zhuǎn)編碼器(常用于多圈的角度測量),基于霍爾器件的非接觸式角度傳感器,基于電位器的旋轉(zhuǎn)角度傳感器等等??紤]到價格和安裝方便,選擇行程為30mm、阻值100K的直滑電位器,通過測量位移來測量角度。 直滑電位器的安裝方式如圖3.1所示,圖中灰色部分為固定的轉(zhuǎn)軸,直滑電位器固定在小車底盤上,其手柄隨舵機輸出臂的轉(zhuǎn)動而做橫向移動,通過測量舵機輸出臂末端轉(zhuǎn)過的橫向距離就可計算得出舵盤的轉(zhuǎn)角和前輪偏角。該直滑電位器有三個引腳,分別連接電位器的兩端和手柄。在連接電位器兩端的兩個引腳上加5V電壓,并
52、將第三個引腳接單片機的模數(shù)轉(zhuǎn)換通道PAD1,讀出引腳電壓,則讀出的電壓值就代表電位器手柄的位置。 (a) 前輪偏角為0的情況 (b) 前輪偏角不為0的情況 圖3.1 前輪偏角測量示意圖 由圖中的幾何關(guān)系可以看出,當(dāng)舵機輸出臂由垂直位置開始旋轉(zhuǎn),直滑電位器手柄向右移動的距離為時,舵盤的轉(zhuǎn)角為。在舵盤轉(zhuǎn)角較小時,故和近似成線性關(guān)系。設(shè)經(jīng)過電位器電平經(jīng)A/D轉(zhuǎn)換(8位精度)后的數(shù)值為,已知直滑電位器總行程為30mm,則,和成線性關(guān)系,故和舵盤轉(zhuǎn)角也近似成線性關(guān)系。由圖中的幾何關(guān)系還可以得到前輪偏角=,實際測量可知=0
53、.253rad(即),=15.5mm,電位器手柄橫向位移為時電位器電平的A/D轉(zhuǎn)換結(jié)果為47,因此前輪偏角和的函數(shù)關(guān)系為 (3.1) 根據(jù)式(3.1)即可由單片機對電位器電平A/D轉(zhuǎn)換后的結(jié)果直接求得前輪偏角,而不必求出舵盤轉(zhuǎn)角后再用式(2.3)中的來求前輪偏角。 為了便于在電腦上處理前輪偏角的測量結(jié)果,使用串口通信將單片機測得的數(shù)據(jù)發(fā)送到上位機(電腦)中。單片機MC9S12DG128中有專門的異步通訊模塊SCI,它是一個全雙工異步串行通信接口,用于MCU與其他計算機之間進行通信。串口通信使用RS-232-C通信標(biāo)準(zhǔn),設(shè)置串行通信波特率為9600,無奇偶校驗位
54、,1位停止位,每次可以發(fā)送8位二進制數(shù)碼,即每次可發(fā)送無符號整數(shù)的范圍為0-255。在電腦上使用串口調(diào)試軟件,即可顯示從串口發(fā)上來的數(shù)據(jù),并可將其保存到文本文檔中,以備數(shù)據(jù)處理時使用。 3.2.2 實驗設(shè)計 舵機的輸入量為舵機控制信號PWM的占空比,輸出量為前輪偏角,實際測量中單片機測得的輸出量是電位器電平經(jīng)過A/D轉(zhuǎn)換后的值,在舵盤轉(zhuǎn)角較小時和近似成線性關(guān)系,故可以用代替作為輸出量。根據(jù)之前對舵機的分析可知這是一個帶延遲的一階慣性環(huán)節(jié),考慮通過分析其階躍響應(yīng)來估計參數(shù)。 具體實驗方法為:將小車放在跑道上,對舵機的輸入量給定一個階躍信號,并延時0.25s,以使舵機在轉(zhuǎn)動前處于正中位置,前
55、輪偏角為0;然后每0.005s讀一次電位器電平的A/D轉(zhuǎn)換結(jié)果,并存入數(shù)組[500]中,直到讀夠500次(共2.5s),將數(shù)組[500]發(fā)送到電腦上進行下一步數(shù)據(jù)處理。 寫入單片機的舵機測試程序的流程圖見圖3.2。 圖3.2 舵機測試程序流程圖 3.2.3 數(shù)據(jù)處理 由于在舵盤轉(zhuǎn)角較小時,和近似成線性關(guān)系,故舵機模型式(2.2)可轉(zhuǎn)化為: (3.2) 需要估計的參數(shù)為、和,其中可以由的曲線上直接讀出。經(jīng)過實驗可知當(dāng)=5600時,前輪偏角為0,即。故進行階躍響應(yīng)實驗時,輸入的應(yīng)是初值為5600的階躍信號,且=5600時=80。的穩(wěn)態(tài)值為,故
56、 (3.3) 考慮使用最小二乘法對和進行參數(shù)估計。最小二乘法是最常用的參數(shù)估計方法,它使數(shù)學(xué)模型在誤差平方和最小的意義上擬合實驗數(shù)據(jù)。最小二乘擬合的基本步驟是:給定線性無關(guān)的函數(shù)系為基函數(shù),確定擬合的目標(biāo)函數(shù)為 (3.4) 對給定的m個數(shù)據(jù),求取擬合參數(shù),使擬合殘差平方和最小,即 (3.5) 擬合殘差平方和最小時,式(3.5)等號左邊的函數(shù)對各個擬合參數(shù)的偏導(dǎo)數(shù)為0,即對k=0,1,…,n,有 (3.6) 從而有 (3.7) 式(3.7)可以
57、寫作矩陣型式: (3.8) 其中, ,[25] 在實際使用中,用MATLAB優(yōu)化工具箱可以方便的解決線性、非線性最小二乘擬合問題。對于線性最小二乘擬合,可以調(diào)用多項式擬合函數(shù)polyfit(x,y,n),其中x,y為待擬合數(shù)據(jù),n為目標(biāo)函數(shù)的階次。對于非線性最小二乘擬合,可以調(diào)用函數(shù)lsqcurvefit(fun,x0,xdata,ydata),其中fun為目標(biāo)函數(shù),x0為初始解向量,xdata和ydata為待擬合數(shù)據(jù)。 以舵機的輸入為=5100的階躍信號為例。運行測角度程序,單片機采集的電位器電平信號經(jīng)串口發(fā)送到
58、電腦上,存放地址為d:\data_servo\5100 1.txt。使用Matlab的數(shù)據(jù)處理程序如下: t=0:0.005:2.495; %一共500個數(shù)據(jù),為時2.5s m=textread(d:\data_servo\5100 1.txt,%s); %讀取存放數(shù)據(jù)的文件 m1=m (7:506); %去除串口調(diào)試助手加在數(shù)據(jù)前后的注釋 y1=hex2dec(m1); %將原來的十六進制數(shù)據(jù)轉(zhuǎn)換為十進制數(shù)據(jù) plot(t,y1);grid on; %將數(shù)據(jù)用圖像顯示,見圖3.3,圖中橫坐標(biāo)為時間,單位為s,縱坐標(biāo)為,無單位。
59、圖3.3 舵機輸入=5100時的圖像 可見第0.25s輸入量發(fā)生跳變后,舵機經(jīng)過一個短暫的延時,然后迅速變化到最終角度。使用下面的程序放大0.5s到1s的區(qū)域,如圖3.4中的實線所示。 t2=0:0.005:0.5; y2=y1(50:150); plot(t2,y2); 圖3.4 圖3.3中0.25s到0.75s部分 觀察圖3.4可看出,舵機延遲約0.035s,即=0.035s。對延時后的數(shù)據(jù)進行最小二乘擬合以求得和的值,程序如下: t3=0:0.005:0.465; y3=y1(57:150); %去除前0.035s f=inline(
60、a(1)+(80-a(1))*exp(-t3/a(2)),a,t3); %去除延遲后的舵機模型。已知的初始值為80,式中a(1)為穩(wěn)態(tài)值,a(2)為時間常數(shù) x0=[1 1]; %x0為非線性最小二乘擬合的初始解向量 [xx,res]=lsqcurvefit(f,x0,t3,y3) %非線性最小二乘擬合,xx為[a(1) a(2)] 擬合結(jié)果為a(1)= 27.8125,a(2)= 0.0311,即=0.0311s,在=5100時的穩(wěn)態(tài)值=27.8125。又有=0.035s,代入式(3.3),可得模型 繪制該模型的仿真結(jié)果,如圖3.4中虛線所示,其中縱坐標(biāo)為根據(jù)上式仿真
61、得到的。 分別令=5000,5100,5200,5300,5400,5800,5900,6000,6100,6200,運行測角度程序,可以得到舵機平均延時=0.03s,使用Matlab進行最小二乘擬合,可得平均時間常數(shù)=0.03s,對應(yīng)于不同的值如圖3.5所示,圖中橫坐標(biāo)為,縱坐標(biāo)為。 圖3.5 對應(yīng)于不同的值 使用polyfit(x,y,1)語句,對和分段做多項式擬合,可得 (3.9) 又有 (3.10) 之前已根據(jù)前輪轉(zhuǎn)向機構(gòu)的幾何關(guān)系推出式(3.1):
62、 (3.1) 聯(lián)合以上三個方程即為舵機模型,其輸入為PWM的占空比控制量,輸出為前輪偏角。 3.3 前輪偏角為0時的電機模型參數(shù)估計 電機模型的輸入量為電機控制信號PWM的占空比,輸出量為小車速度,需要使用傳感器測量。前輪偏角為0時,=0,電機模型中需要辨識的參數(shù)為,和。設(shè)計實驗測試舵機的輸入輸出數(shù)據(jù),然后通過數(shù)據(jù)處理來估計電機模型參數(shù),和。 3.3.1 小車速度測量方法 對小車測速的方式很多,有霍爾元件測速、光電編碼器測速、旋轉(zhuǎn)編碼器測速等?;驹矶际菍④囕喌霓D(zhuǎn)動轉(zhuǎn)變?yōu)槊}沖信號,然后使用單片機的定時器/計數(shù)器模塊對脈沖信號計數(shù)得到速度。 使用霍爾元件測速,需要
63、在小車的齒輪盤上安裝一圈磁片,車輪和齒輪盤同步轉(zhuǎn)動,磁片也隨之轉(zhuǎn)動,通過固定在齒輪盤一角的霍爾傳感器即可感知磁片的經(jīng)過,產(chǎn)生脈沖信號。安裝N個磁片,則齒輪盤旋轉(zhuǎn)一周可產(chǎn)生N個脈沖。對脈沖信號計數(shù)即可得到速度。其優(yōu)點是簡便實用,缺點是精度低,磁片數(shù)目決定了測速精度,而齒輪盤的大小、磁片的大小和霍爾傳感器的精度限制了磁片數(shù)目。 使用光電編碼器測速有多種實現(xiàn)方法,例如,在齒輪盤上貼黑白相間的紙盤,用紅外發(fā)射接收管檢測黑白變化產(chǎn)生脈沖,或是在轉(zhuǎn)軸上安裝光柵,在光柵兩側(cè)安裝光電對管,光柵轉(zhuǎn)動則光電對管通/斷變化產(chǎn)生脈沖,等等。都是通過紅外線的反射或?qū)ι洌瑱z測車輪的轉(zhuǎn)動,和霍爾元件測速的方法差不多。其精
64、度比霍爾傳感器高,輕巧,且無需破壞齒輪盤。 旋轉(zhuǎn)編碼器的精度更高,它利用車模后軸的齒輪傳動編碼器的齒輪,使編碼器輸出一定頻率的方波信號,在速度不太慢的情況下輸出的方波頻率與實際速度的線性關(guān)系較好。設(shè)定單片機的ECT模塊為脈沖累加功能,檢測信號的上升沿,就能采集這些脈沖,根據(jù)一段時間內(nèi)采集到的脈沖數(shù)即可計算出當(dāng)前的車速。 為達到較高的測速精度,在智能小車上使用100線的旋轉(zhuǎn)編碼器進行測速。該編碼器旋轉(zhuǎn)一周產(chǎn)生100個脈沖,編碼器齒輪的齒數(shù)為18,與編碼器齒輪嚙合的車模后軸主傳動盤的齒數(shù)為76,因此小車后輪轉(zhuǎn)動一周時編碼器產(chǎn)生的脈沖數(shù)為100*76/18。已知小車車輪半徑為0.026m,設(shè)0.
65、01s內(nèi)采集到得脈沖數(shù)為,則小車速度和的關(guān)系為: (3.11) 3.3.2 實驗設(shè)計 電機模型的輸入量為電機控制信號(PWM)的占空比設(shè)置項。將小車放在跑道上,對給定一個階躍信號,使小車開始前進,同時保持舵機不動,前輪偏角為0。然后每0.01s讀一次脈沖累加器數(shù)據(jù),并存入數(shù)組[500]中,直到讀夠500次(共5s),[500]中的數(shù)據(jù)即為每10ms內(nèi)旋轉(zhuǎn)編碼器產(chǎn)生的脈沖數(shù)。通過對其階躍響應(yīng)進行分析即可得到電機模型的參數(shù)。 寫入單片機的電機測試程序的流程圖見圖3.6。 圖3.6 電機測試程序流程圖 3.3.3 數(shù)據(jù)處理 電機模型見式(2.22),根據(jù),代入,可得
66、 (3.12) 令,,,則式(3.12)可變?yōu)椋? (3.13) 前輪偏角為0時為0,故不考慮,需要估計的參數(shù)為、和。 考慮到小車速度受外界干擾較大,令的幅值為40,運行測速程序,測10組,將10組取平均值以消弱外界干擾的影響。平均值保存在d:\data\m40.txt中,以備最小二乘擬合使用。在使用最小二乘法估計參數(shù)時,考慮到電機剛啟動時性能不穩(wěn),在擬合時去除前0.1s的數(shù)據(jù);3s后速度變化緩慢,易受外界干擾,且由于實驗條件所限,跑道長度不夠,速度較大時在3.5s后小車會撞墻,因此再去除3s后的數(shù)據(jù)。使用最小二乘法對剩余的數(shù)據(jù)進行擬合,估計輸入量為時的模型參數(shù)和。然后擬合對應(yīng)于不同的值,估計參數(shù)和。 使用Matlab實現(xiàn)最小二乘法估計參數(shù)的程序如下: m1=textread(d:\data\m40.txt,%s); y =hex2dec(m1); %y為10組測速數(shù)據(jù)取平均值后得到的 t=0.01:0.01:5; plot(t,y,k); %繪制隨時間變化的曲線,如圖3.7(a)中實線所示,其中橫坐標(biāo)為
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。