秦世林 黃宇飛 劉江東 張見(jiàn)廣
【關(guān)鍵詞】單片機(jī);定速巡航;PID控制;燃油經(jīng)濟(jì)性
【中圖分類號(hào)】U463.6 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】1674-0688(2021)09-0037-05
0 前言
汽車巡航控制系統(tǒng)是控制速度穩(wěn)定的一種輔助駕駛員駕駛車輛的系統(tǒng)。當(dāng)駕駛員駕駛車輛時(shí),車速一旦到達(dá)設(shè)定的巡航系統(tǒng)開(kāi)啟的最低速度后,只需打開(kāi)巡航開(kāi)關(guān),再按下巡航速度設(shè)定鍵,汽車將按設(shè)定的行駛速度穩(wěn)定行駛。若要更改巡航速度,只需按下巡航控制系統(tǒng)的速度調(diào)節(jié)按鈕即可。此時(shí),駕駛員不需要操控油門踏板,僅通過(guò)汽車電子控制單元ECU調(diào)控汽車行駛速度,從而減輕駕駛員的精神負(fù)擔(dān)。
隨著社會(huì)經(jīng)濟(jì)的發(fā)展,中國(guó)進(jìn)入了小康社會(huì),汽車隨著經(jīng)濟(jì)的發(fā)展逐漸走進(jìn)人們的生活,或?yàn)槿藗兊娜粘4焦ぞ?。伴隨智能交通系統(tǒng)的不斷推廣,這種能有效減輕駕駛員駕駛汽車的疲勞程度,從而減少因駕駛員失誤操作而造成的交通事故的產(chǎn)品在普通家庭轎車上的應(yīng)用將急劇增長(zhǎng)。對(duì)駕駛員來(lái)說(shuō),該產(chǎn)品提高了汽車的駕駛安全性和燃油經(jīng)濟(jì)性;對(duì)社會(huì)來(lái)說(shuō),該產(chǎn)品改善了交通狀況。近年來(lái),汽車巡航控制系統(tǒng)得到政府、企業(yè)及高級(jí)研究機(jī)構(gòu)的廣泛關(guān)注。此外,隨著我國(guó)對(duì)于基礎(chǔ)建設(shè)的重視,以道路交通發(fā)展促進(jìn)我國(guó)經(jīng)濟(jì)快速發(fā)展,我國(guó)高速公路四通八達(dá),汽車巡航控制系統(tǒng)具有良好的應(yīng)用前景。
1 汽車巡航控制系統(tǒng)原理及功能
1.1 汽車巡航控制系統(tǒng)原理
在實(shí)體的汽車巡航控制系統(tǒng)中,汽車電子控制單元ECU根據(jù)各傳感器傳來(lái)的信號(hào),經(jīng)過(guò)處理后判斷路況條件的變化,然后經(jīng)過(guò)計(jì)算得到節(jié)氣門開(kāi)度的變化量,汽車電子控制單元ECU再控制節(jié)氣門執(zhí)行器調(diào)節(jié)節(jié)氣門開(kāi)度,使車輛以恒定速度穩(wěn)定行駛,汽車巡航控制系統(tǒng)的基本控制原理如圖1所示。
1.2 汽車巡航控制系統(tǒng)功能
目前,市面上絕大部分的汽車巡航控制系統(tǒng),主要由電子控制單元ECU、巡航控制開(kāi)關(guān)、車速傳感器、節(jié)氣門執(zhí)行器等組成[1]。當(dāng)打開(kāi)汽車巡航控制系統(tǒng)開(kāi)關(guān)以后,若按下設(shè)定鍵時(shí)的當(dāng)前車速為大于40 km/h、小于180 km/h時(shí),車速傳感器就會(huì)將當(dāng)前車速顯示在顯示屏上,還有設(shè)定的巡航車速。在打開(kāi)汽車巡航控制系后,控制器中就會(huì)輸入兩個(gè)信號(hào),一個(gè)是駕駛員駕駛車輛由車速傳感器送來(lái)的實(shí)際車速,另一個(gè)是駕駛員設(shè)置的巡航速度,控制器核對(duì)兩個(gè)信號(hào)的偏差之后,再根據(jù)儲(chǔ)存在儲(chǔ)存單元里的算法經(jīng)過(guò)一定的計(jì)算,得出一個(gè)使實(shí)際行駛速度與巡航車速相等的控制角度。汽車電子控制單元ECU再把這個(gè)角度傳遞給節(jié)氣門執(zhí)行器,控制節(jié)氣門角度變化。此時(shí),若按下巡航加速(或減速)鍵,巡航車速每次將增加(或降低)5 km/h,使汽車定速巡航;若按下取消鍵、開(kāi)關(guān)鍵中的任何一個(gè),汽車巡航控制系統(tǒng)就會(huì)關(guān)閉,汽車駕駛就由駕駛員控制。
2 PID控制器算法
2.1 PID控制的基本算法
工程生產(chǎn)中,應(yīng)用最廣泛的控制方式為PID控制方式,其主要分為以下幾種方式:比例控制方式、積分控制方式、微分控制方式。結(jié)構(gòu)簡(jiǎn)單且穩(wěn)定性好的PID控制器工作可靠,調(diào)整也方便,并且在巡航系統(tǒng)工作過(guò)程中不需要精確的系統(tǒng)模型,所以成為應(yīng)用最常用的控制器[2]。在模擬控制系統(tǒng)中,控制原理如圖2所示。在PID控制策略當(dāng)中,其輸入與輸出關(guān)系式可表示如下:
寫成傳遞函數(shù):
公式(2)中,Kp為比例系數(shù);Ki為積分時(shí)間常數(shù);Kd為微分時(shí)間常數(shù)。經(jīng)過(guò)離散化處理后得到如下公式:
將公式(3)帶入公式(1)中得到:
提供增量的PID控制算式如下:
則推出增量:
一旦確定比例系數(shù)Kp、積分時(shí)間常數(shù)Ki、積分時(shí)間常數(shù)Kd這3個(gè)系數(shù),只需要反復(fù)測(cè)量其偏差,就可以求出控制增量。
2.2 PID各模塊作用
(1)比例模塊。根據(jù)控制系統(tǒng)的偏差信號(hào)e(t),并按一定的比例產(chǎn)生控制作用,使實(shí)際數(shù)據(jù)盡可能地接近輸入數(shù)據(jù),減少誤差。系統(tǒng)的超調(diào)量會(huì)隨著Kp的增大而增大,Kp偏大時(shí),系統(tǒng)震蕩次數(shù)增多,幅度增大且調(diào)節(jié)時(shí)間加長(zhǎng)[3]。
(2)積分模塊主要用于消除凈差,以提高系統(tǒng)的無(wú)差度。隨著Ti的增大,系統(tǒng)的超調(diào)量會(huì)減小,響應(yīng)速度略微變慢[3]。
(3)微分模塊主要用于反映偏差信號(hào)的變化趨勢(shì)或變化速率的大小,能使系統(tǒng)在偏差信號(hào)值變得太大之前,在巡航系統(tǒng)中引入一個(gè)有效的早期修正信號(hào),這樣就能提高系統(tǒng)的動(dòng)作速度,減少調(diào)節(jié)所需的時(shí)間。增大微分時(shí)間Td可以使系統(tǒng)的響應(yīng)速度加快,使系統(tǒng)超調(diào)量變小,從而增強(qiáng)系統(tǒng)的穩(wěn)定性,但這會(huì)使系統(tǒng)抗干擾的能力變?nèi)鮗3]。
2.3 PID控制原理
PID在工程應(yīng)用中十分廣泛,它具有結(jié)構(gòu)簡(jiǎn)單、適應(yīng)性強(qiáng)、工作可靠等優(yōu)勢(shì)。在PID控制中,將駕駛員設(shè)定的速度與車輛的實(shí)際速度相比較得到一個(gè)差值,控制器根據(jù)得到的差值輸出對(duì)發(fā)動(dòng)機(jī)節(jié)氣門的控制量,減少偏差,從而使車輛的行駛速度趨于駕駛員設(shè)定的車速[4]。
3 硬件設(shè)計(jì)
3.1 AT89C52單片機(jī)
本次建模選擇AT89C52單片機(jī)作為MCU模擬。作為本次建模的核心部件,其特點(diǎn)是低電壓、高性能。單片機(jī)內(nèi)不僅有通用的8位中央處理器,而且有8 KB的程序存儲(chǔ)器(8 KB Flash ROM)和256 B的數(shù)據(jù)存儲(chǔ)器(256 B RAM),兼容AT89C51的指令,功能強(qiáng)大、實(shí)用[5]。
3.2 舵機(jī)
在本系統(tǒng)中,采用“輝盛”mg995舵機(jī)控制車速,在Proteus仿真中,通過(guò)AT89C52單片機(jī)控制舵機(jī),用舵機(jī)上的角度代表節(jié)氣門的開(kāi)度。當(dāng)舵機(jī)角度為正時(shí),表示節(jié)氣門開(kāi)度增大,駕駛員加油門,速度增加;當(dāng)舵機(jī)角度為負(fù)時(shí),表示節(jié)氣門開(kāi)度減少,駕駛員開(kāi)始減速,車速下降。舵機(jī)在Proteus仿真如圖3所示。舵機(jī)控制的是節(jié)氣門開(kāi)度,而節(jié)氣門是步進(jìn)電機(jī)式節(jié)氣門。
3.3 LCD1602液晶顯示器
本系統(tǒng)采用性能優(yōu)良、工作可靠的工業(yè)字符型液晶顯示器LCD1602液晶顯示器,利用電壓對(duì)液晶的影響,有電即可顯示。單片機(jī)向?qū)?yīng)的模塊寫入不同的命令和數(shù)據(jù),就可對(duì)顯示方式和顯示內(nèi)容做出不同的選擇,它最多能夠同時(shí)顯示32個(gè)字符。目前,LCD1602液晶顯示器已經(jīng)被廣泛應(yīng)用在眾多領(lǐng)域。LCD1602液晶顯示屏實(shí)物圖如圖4所示。
4 系統(tǒng)軟件原理和流程
4.1 系統(tǒng)軟件原理
本項(xiàng)目建模的汽車巡航控制系統(tǒng),以AT89C52單片機(jī)作為核心部件,用于數(shù)據(jù)處理、初值設(shè)定;使用AD轉(zhuǎn)換器模擬道路狀況的好壞;在仿真電路中方波信號(hào)發(fā)生器發(fā)出一個(gè)固定的信號(hào)表示車速,這個(gè)固定的信號(hào)不會(huì)因?yàn)槎鏅C(jī)的變化而使每次采集的脈沖個(gè)數(shù)變化;模擬車速傳感器信號(hào),用舵機(jī)模擬控制節(jié)氣門開(kāi)度,從而實(shí)現(xiàn)對(duì)車速的控制。單片機(jī)作為對(duì)車速的反饋調(diào)節(jié)模塊,需要把舵機(jī)的角度信號(hào)和AD轉(zhuǎn)換器模擬路況的模擬參數(shù)加進(jìn)單片機(jī)進(jìn)行計(jì)算,經(jīng)過(guò)試驗(yàn)得出,舵機(jī)系數(shù)是(duoji-500)/800,路況系數(shù)是(adval+400)/700。在巡航系統(tǒng)中,設(shè)置了5個(gè)按鍵,用于控制巡航控制系統(tǒng)的開(kāi)關(guān),設(shè)定與調(diào)節(jié)巡航速度。此外,為了模擬駕駛員在實(shí)際行駛過(guò)程中的加油門和減油門,另外設(shè)置了兩個(gè)按鍵,并將檢測(cè)的當(dāng)前車速和巡航控制中設(shè)定的車速顯示在LCD1602液晶顯示器中。
4.2 系統(tǒng)軟件主程序流程圖
本系統(tǒng)軟件主要程序流程圖如圖5所示。從圖5可知,汽車巡航控制系統(tǒng)是模塊化分工配合,各模塊既能分開(kāi)獨(dú)立工作,又能相互配合工作。當(dāng)打開(kāi)巡航控制系統(tǒng)時(shí),系統(tǒng)初始化開(kāi)始,接著所采集的模擬信號(hào)通過(guò)AD轉(zhuǎn)化器轉(zhuǎn)換為數(shù)字信號(hào)輸入單片機(jī),同時(shí)單片機(jī)進(jìn)行按鍵掃描,判斷開(kāi)關(guān)鍵、取消鍵是否打開(kāi);若開(kāi)關(guān)鍵未被按下或取消鍵按下,則單片機(jī)再次進(jìn)行掃描,系統(tǒng)程序再次進(jìn)入初始化;若開(kāi)關(guān)鍵與取消鍵都滿足設(shè)定要求,則系統(tǒng)進(jìn)入巡航速度設(shè)定模塊,當(dāng)汽車實(shí)際車速達(dá)到巡航控制要求范圍大于40 km/h小于180 km/h時(shí),巡航設(shè)定鍵按下,當(dāng)前車速將會(huì)被巡航系統(tǒng)所采樣,并把當(dāng)前行駛的車速作為巡航控制的速度。若巡航控制速度過(guò)快或者緩慢,此時(shí)可以對(duì)巡航控制的車速進(jìn)行調(diào)整,儲(chǔ)存在儲(chǔ)存單元中的PID算法將起作用,車速將隨舵機(jī)轉(zhuǎn)角的變化而變化,巡航控制系統(tǒng)的車速采集模塊時(shí)刻采集當(dāng)前汽車實(shí)際行駛速度,使汽車車速控制在設(shè)定的巡航速度左右。
4.2.1 A/D轉(zhuǎn)換模塊
由圖6 A /D采樣轉(zhuǎn)換流程圖可知,程序開(kāi)始時(shí)先將AD轉(zhuǎn)換器初始化,在初始化過(guò)程中,根據(jù)路面情況,AD轉(zhuǎn)換器會(huì)使滑動(dòng)變阻器產(chǎn)生相應(yīng)的阻值代表路面狀況,表示平路、上坡、下坡的模擬信號(hào),再將模擬信號(hào)轉(zhuǎn)變成數(shù)字信號(hào),然后轉(zhuǎn)換器讀取采樣值,并將數(shù)據(jù)信號(hào)輸送給單片機(jī)工作。
4.2.2 按鍵掃描模塊
單片機(jī)在工作時(shí),內(nèi)部有時(shí)鐘脈沖不停地掃描,掃描各個(gè)引腳在任何時(shí)候的高低電平狀態(tài),讀取并傳送給CPU進(jìn)行處理。按鍵掃描子程序就是一段用來(lái)掃描之前設(shè)定的幾個(gè)特殊的按鍵引腳的狀態(tài),并進(jìn)行處理的函數(shù)段。按鍵掃描子程序如圖7所示。
按鍵按下后,信號(hào)會(huì)出現(xiàn)一定頻率的抖動(dòng),導(dǎo)致單片機(jī)識(shí)別錯(cuò)誤,只按了一次,識(shí)別為按了多次,所以要加入去抖延時(shí)環(huán)節(jié)。單片機(jī)周期性地對(duì)按鍵位置的引腳進(jìn)行掃描,判斷按鍵引腳是否有電平變化,并通過(guò)電平變化的周期判斷是干擾電平還是有按鍵按下,去抖處理后,計(jì)數(shù)按鍵值,判定發(fā)送的是哪個(gè)按鍵功能請(qǐng)求,然后檢測(cè)按鍵是否松開(kāi),若松開(kāi)則進(jìn)行按鍵請(qǐng)求處理;若按鍵沒(méi)有松開(kāi),則繼續(xù)進(jìn)行檢測(cè)。
4.2.3 車速采樣模塊
當(dāng)汽車進(jìn)入巡航控制模式時(shí),汽車在行駛過(guò)程中的當(dāng)前實(shí)時(shí)車速被車速傳感器采集,并將此車速信號(hào)送進(jìn)系統(tǒng)進(jìn)行反饋;其原理如圖8所示。
在本汽車巡航控制系統(tǒng)中,在實(shí)時(shí)車速方面利用信號(hào)發(fā)生器模擬車速傳感器信號(hào),而信號(hào)發(fā)生器傳給單片機(jī)的脈沖是一定的,所以此時(shí)的車速不變化。在本系統(tǒng)中,影響車速的因素還包括舵機(jī)角度及路況,所以在系統(tǒng)計(jì)算車速時(shí),要考慮舵機(jī)參數(shù)和路況參數(shù),從而把車速、路況及步進(jìn)角度三者聯(lián)系起來(lái)。單片機(jī)將以秒為單位采集車速,再把采集到的讀數(shù)值送至計(jì)數(shù)器,進(jìn)而汽車電子控制單元ECU根據(jù)車速與路況函數(shù)圖處理運(yùn)算,計(jì)算出現(xiàn)在的行駛車速,從而完成車速采樣過(guò)程。
5 Proteus仿真模型
經(jīng)過(guò)設(shè)計(jì)選型,在Proteus中建模,最后得到仿真模型(如圖9所示)。
仿真電路包括以下幾大模塊:?jiǎn)纹瑱C(jī)模塊(包含時(shí)鐘電路與復(fù)位電路),進(jìn)行數(shù)據(jù)處理和初值設(shè)定;?譺?訛AD轉(zhuǎn)換模塊,將路面狀況的模擬信號(hào)轉(zhuǎn)化為單片機(jī)能夠讀取的數(shù)字信號(hào),可以通過(guò)改變滑動(dòng)變阻器的阻值調(diào)節(jié)路面狀況;顯示器模塊,將實(shí)際行駛速度與巡航速度顯示到液晶顯示器中;舵機(jī)模塊,模擬節(jié)氣門位置傳感器,通過(guò)控制節(jié)氣門開(kāi)度,從而控制車速;功能按鍵模塊,控制汽車巡航控制系統(tǒng)的基本功能。
在圖9中,有7個(gè)按鍵,從上到下前2個(gè)按鍵是為了模擬汽車實(shí)際行駛過(guò)程中的加速和減速,第一個(gè)按鍵是實(shí)際行駛減速,第二個(gè)按鍵是實(shí)際行駛加速。后面的5個(gè)按鍵從上到下,key1是巡航開(kāi)啟按鍵,key2是設(shè)定車速按鍵,key3是巡航設(shè)定加速按鍵,key4是巡航設(shè)定減速按鍵,key5是巡航關(guān)閉按鍵。在仿真中,電路能正常運(yùn)行,達(dá)到預(yù)期結(jié)果,電路圖無(wú)誤。
6 結(jié)語(yǔ)
本文通過(guò)使用單片機(jī)作為核心部件設(shè)計(jì)出的汽車巡航控制系統(tǒng),具有系統(tǒng)超調(diào)量小、穩(wěn)定時(shí)間快的特點(diǎn)。通過(guò)PID控制能有效實(shí)現(xiàn)車輛穩(wěn)定行駛和滿足汽車巡航要求,并且減輕駕駛員疲勞程度,降低了因駕駛員疲勞誤操作而造成的交通事故的發(fā)生概率,從而提高汽車駕駛安全性,降低燃料的消耗,對(duì)減少環(huán)境污染有不可替代的作用且具有較好的市場(chǎng)應(yīng)用價(jià)值。
參 考 文 獻(xiàn)
[1]田泱,仇成群.基于模糊PID的汽車巡航控制系統(tǒng)設(shè)計(jì)[J].機(jī)械工師,2013(10):60-61.
[2]余黃軍,張昕,任傳喜.汽車自動(dòng)巡航控制系統(tǒng)控制策略與仿真[J].沈陽(yáng)理工大學(xué)學(xué)報(bào),2016,35(4):56-
61.
[3]李琳,吳榮燎,王柏?zé)?,?汽車自動(dòng)巡航控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電工技術(shù),2019(22):3-5.
[4]張寶玉.基于模糊PID的汽車巡航控制系統(tǒng)研究[J].汽車實(shí)用術(shù),2020,45(24):19-21.
[5]馬紹對(duì).汽車巡航控制系統(tǒng)的設(shè)計(jì)[D].蕪湖:安徽工程大學(xué),2015:6-12.