基于LIN總線汽車(chē)前燈運(yùn)動(dòng)控制系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
隨著社會(huì)的發(fā)展,汽車(chē)越來(lái)越普及,汽車(chē)應(yīng)用已變得日益復(fù)雜,而且越來(lái)越多地采用電子驅(qū)動(dòng),因此,將更多創(chuàng)新技術(shù)及專(zhuān)用技術(shù)應(yīng)用在這個(gè)領(lǐng)域也就不足為奇了。隨著汽車(chē)擁有量的增加,發(fā)生交通事故的概率也隨之增加,特別是在夜間行車(chē),兩車(chē)相匯,汽車(chē)前燈的控制就是一個(gè)重要的問(wèn)題,目前汽車(chē)常包含有帶動(dòng)態(tài)位置控制的前燈,特別是對(duì)高強(qiáng)度放電(HID)氙氣燈來(lái)說(shuō),動(dòng)態(tài)位置控制功能非常關(guān)鍵。不過(guò),前燈定位系統(tǒng)對(duì)電子組件提出了非常惡劣的環(huán)境要求。如何降低前燈運(yùn)動(dòng)控制設(shè)計(jì)的復(fù)雜度,節(jié)省時(shí)間、降低成本成為汽車(chē)電子研究的重要課題,本文針對(duì)汽車(chē)前燈控制的要求,介紹一種價(jià)格低,功能較齊,基于LIN總線汽車(chē)前燈運(yùn)動(dòng)控制系統(tǒng)的實(shí)現(xiàn)方法,對(duì)不同的步進(jìn)驅(qū)動(dòng)器/控制器組合,以實(shí)現(xiàn)汽車(chē)前燈運(yùn)動(dòng)控制系統(tǒng)最優(yōu)化的系統(tǒng)設(shè)計(jì)方案。
系統(tǒng)硬件電路設(shè)計(jì)
LIN標(biāo)準(zhǔn)定義了一種車(chē)用分布式電子系統(tǒng)使用的低成本串行通訊系統(tǒng)。LIN是對(duì)現(xiàn)有車(chē)用多網(wǎng)絡(luò)組合的補(bǔ)充,這些組合包括采用控制器局域網(wǎng)絡(luò)(CAN)協(xié)議。LIN標(biāo)準(zhǔn)可以實(shí)現(xiàn)具有成本效益的車(chē)內(nèi)開(kāi)關(guān)、智能傳感器和制動(dòng)器應(yīng)用的通訊網(wǎng)絡(luò)。通訊協(xié)議是基于SCI (UART)數(shù)據(jù)格式,一種單主/多從的概念以及一個(gè)單線(外加地)12V總線。
LIN從節(jié)點(diǎn)對(duì)總節(jié)點(diǎn)發(fā)出的控制信號(hào)進(jìn)行處理,并對(duì)車(chē)燈驅(qū)動(dòng)電路狀態(tài)進(jìn)行測(cè)量。當(dāng)從節(jié)點(diǎn)接收到報(bào)文信息后,對(duì)車(chē)燈發(fā)出相應(yīng)的控制信號(hào),并分析各燈的狀態(tài),若發(fā)生故障,則生成一個(gè)數(shù)據(jù)信息發(fā)送到總節(jié)點(diǎn)。LIN從節(jié)點(diǎn)在檢測(cè)到總節(jié)點(diǎn)發(fā)送的信號(hào)后,先通過(guò)報(bào)文幀進(jìn)行識(shí)別,看其是否屬于自己的報(bào)文信息。若屬于則首先判斷報(bào)文是不是查詢(xún)信息,如果是,則返回一個(gè)響應(yīng)信息,如果是控制信息,則對(duì)相應(yīng)的車(chē)燈進(jìn)行控制,并對(duì)該車(chē)燈驅(qū)動(dòng)電路上的測(cè)量點(diǎn)電位進(jìn)行測(cè)量和進(jìn)行處理??雌涫欠癜l(fā)生故障。若發(fā)生故障,則通過(guò) LIN總線發(fā)送信息給總節(jié)點(diǎn)。并根據(jù)傳感器檢測(cè)到前方來(lái)車(chē)的燈光信號(hào),實(shí)時(shí)的作出判斷,調(diào)整燈光的亮度和變化。圖l示出LIN汽車(chē)前燈控制硬件框圖。
MCU控制單元
設(shè)計(jì)中MCU選用飛思卡爾M68HC08系列的MC68HC908QL4作為L(zhǎng)IN從節(jié)點(diǎn)的MCU,其電路框圖如圖2所示。16引腳TOP封裝的QL4芯片,VDD接+5V電源,SLCTX、SLCRX引腳分別接LIN的收發(fā)器(TJA1020)的TXD、RXD引腳。經(jīng)過(guò)收發(fā)器LIN引腳進(jìn)來(lái)+12V的LIN信號(hào),經(jīng)過(guò)收發(fā)器轉(zhuǎn)換成+5V的接受和發(fā)送信號(hào),分別傳到QL4的接受和發(fā)送引腳。
從節(jié)點(diǎn)在初始化完成后,其它操作都在中斷里面完成。SLIC狀態(tài)向量寄存器(SLCSV)提供一個(gè)索引偏移量直接反映LIN模塊當(dāng)前的工作狀態(tài),它可以和用戶提供的跳轉(zhuǎn)表一起用來(lái)快速進(jìn)入一個(gè)中斷服務(wù)子程序。LIN模塊的所有狀態(tài)在SLCSV里面都有相應(yīng)的值對(duì)應(yīng),其值不僅反映LIN模塊狀態(tài)的索引偏移量,還反映中斷的優(yōu)先級(jí)。
LIN收發(fā)器
本設(shè)計(jì)選用TJAl020作為L(zhǎng)IN收發(fā)器,TJAl020是LIN主/從協(xié)議控制器和LIN物理總線之間的接口,主要用作于車(chē)輛副網(wǎng)絡(luò)。其波特率為2.4~20kbit/s??刂破髟赥XD引腳輸入的發(fā)送數(shù)據(jù)流通過(guò)LIN收發(fā)器轉(zhuǎn)換成LIN總線信號(hào),并由收發(fā)器控制轉(zhuǎn)換速率和波形,減少極低的電磁發(fā)射(EME)。 LIN總線的輸出引腳通過(guò)一個(gè)內(nèi)部終端電阻拉成高電平。收發(fā)器在LIN總線的輸入引腳檢測(cè)數(shù)據(jù)流并通過(guò)引腳RXD發(fā)送到微控制器。
電源模塊
在設(shè)計(jì)中,LIN模塊的電壓調(diào)節(jié)器均采用微功耗、低壓差穩(wěn)壓器LTll2l-5。選用 LTl121-5通過(guò)對(duì)SHDN輸入低電平,能使其進(jìn)入停止模式,這時(shí)靜態(tài)電流只有16mA,因此在總線上沒(méi)有活動(dòng)時(shí),就能達(dá)到減少功耗的目的;此外,該器件還具有防止輸入和輸出電源反向的功能,即使在輸出端不增加二極管的情況下,也能防止電流反向倒流。
車(chē)燈的驅(qū)動(dòng)電路模塊
所設(shè)計(jì)的車(chē)燈驅(qū)動(dòng)電路模塊采用分布式制動(dòng)器控制,其控制框如圖3所示。該控制用于雙前燈的水平定位、旋轉(zhuǎn)及AFS。LIN微步進(jìn)電機(jī)驅(qū)動(dòng)器是一種帶集成有LIN控制/診斷的定位控制器的兩相驅(qū)動(dòng)器,此控制器通過(guò)LIN接口接收高級(jí)定位指令,隨后驅(qū)動(dòng)電機(jī)線圈到達(dá)理想位置。片上位置控制器可為不同電機(jī)類(lèi)型、定位距離以及參數(shù)(如速度、加速度和減速度)而配置。如果系統(tǒng)檢測(cè)到停轉(zhuǎn)狀態(tài),無(wú)傳感器停轉(zhuǎn)檢測(cè)就會(huì)阻止定位器失步并使電機(jī)停止。
控制器命令集的高抽象水平減少了MCU內(nèi)微處理器的負(fù)載。根據(jù)前燈運(yùn)動(dòng)控制軸數(shù)量的不同而將調(diào)整應(yīng)用是直接了當(dāng)?shù)姆椒āR阅K化方式擴(kuò)展硬件和軟件設(shè)計(jì),不會(huì)嚴(yán)重影響對(duì)主微控制器的要求。本系統(tǒng)只用一個(gè)MCU,并且要改變系統(tǒng)控制功能時(shí)增加或移走可選的電機(jī)很方便,花費(fèi)也很少。目前的汽車(chē)常包含有帶動(dòng)態(tài)位置控制的前燈。對(duì)于高強(qiáng)度放電(HID)氙氣燈,這種功能很關(guān)鍵。歐洲安全條例要求能動(dòng)態(tài)控制主前燈光束的垂直位置,避免眩光。如果采用步進(jìn)電機(jī)驅(qū)動(dòng)器芯片,就可為這些應(yīng)用只需幾個(gè)無(wú)源元件的類(lèi)似應(yīng)用設(shè)計(jì)出集成電子電機(jī)驅(qū)動(dòng)器電路。
驅(qū)動(dòng)器芯片通過(guò)一條LIN、I2C或SPI總線得到高水平定位控制和診斷命令指令,并將其轉(zhuǎn)換成驅(qū)動(dòng)步進(jìn)電機(jī)線圈的PWM信號(hào)。集成電機(jī)驅(qū)動(dòng)器電路的優(yōu)點(diǎn)包括能增加系統(tǒng)集成度,減小線束復(fù)雜度并降低EMI輻射,這樣能降低系統(tǒng)成本,加快終端產(chǎn)品面市時(shí)間并提高性能。傳統(tǒng)上來(lái)看,汽車(chē)鹵素前燈系統(tǒng)都裝有一個(gè)手動(dòng)調(diào)節(jié)器,來(lái)對(duì)準(zhǔn)前燈垂直方向。此裝置含有一模擬伺服系統(tǒng),包含有一傳動(dòng)、有刷直流電機(jī)的制動(dòng)器驅(qū)動(dòng)到與手動(dòng)調(diào)節(jié)好的位置相對(duì)應(yīng)的位置。伺服系統(tǒng)的反饋采用一個(gè)連接到制動(dòng)器末端齒輪的電位計(jì),電機(jī)驅(qū)動(dòng)器為一功放。該系統(tǒng)相對(duì)來(lái)說(shuō)價(jià)格低廉。
本設(shè)計(jì)采用的是線性步進(jìn)電機(jī)前燈垂直定位方法。這類(lèi)電機(jī)非常牢靠,并且工作在開(kāi)環(huán)模式下不需要電位計(jì)反饋。線性運(yùn)動(dòng)通過(guò)一個(gè)螺栓/螺母組合實(shí)現(xiàn)。繞螺栓旋轉(zhuǎn)的步進(jìn)電機(jī)有一通過(guò)定子線圈內(nèi)的控制電流帶動(dòng)磁轉(zhuǎn)子。 用于鹵素前燈水平定位系統(tǒng)、垂直定位、全適應(yīng)前照明系統(tǒng)(AFS)等。
汽車(chē)前燈是對(duì)汽車(chē)夜間行駛安全性很關(guān)鍵的器件,控制其位置的電機(jī)必須也工作在自動(dòng)方式,如果通訊總線發(fā)生故障,要將燈轉(zhuǎn)到安全位置。這一要求意味著,驅(qū)動(dòng)器電路必須在不借助外傳感器情況下檢測(cè)停轉(zhuǎn)位置,通過(guò)其微步進(jìn)模式,保證運(yùn)動(dòng)無(wú)聲而平滑。因此,對(duì)任何前燈位置控制架構(gòu),不論是集中式的還是分布式的,這些功能都是很基本的特征。
軟件設(shè)計(jì)
車(chē)燈控制系統(tǒng)主要完成兩個(gè)功能:一是實(shí)現(xiàn)LIN子節(jié)點(diǎn)對(duì)車(chē)燈的控制;二是實(shí)現(xiàn)對(duì)車(chē)燈故障的診斷。在控制中,通過(guò)分析總線電位和驅(qū)動(dòng)電路中輸入、輸出、故障診斷引腳的電位來(lái)判斷系統(tǒng)是否發(fā)生故障。
要使LIN總線節(jié)點(diǎn)有效、實(shí)時(shí)地完成通信任務(wù),軟件設(shè)計(jì)是關(guān)鍵。本設(shè)計(jì)采用結(jié)構(gòu)化程序設(shè)計(jì)方案,具有較好的模塊性、可移植性和可修改性。
LIN信息的接收采用中斷方式,當(dāng)MC68HC908QL4控制器檢測(cè)到符合該節(jié)點(diǎn)要求的信息幀后,首先判斷本地節(jié)點(diǎn)接收到的是什么信息,若為控制信息,則接收2個(gè)字節(jié)的數(shù)據(jù)信息;若為查詢(xún)信息,則將本地節(jié)點(diǎn)車(chē)燈的狀態(tài)以信息幀的形式發(fā)送回主節(jié)點(diǎn),以反映節(jié)點(diǎn)情況。然后判斷,若為接收數(shù)據(jù)幀,則在 SLIC模塊中的數(shù)據(jù)寄存器(SLCDx)上讀取相應(yīng)的信息。最后是根據(jù)數(shù)據(jù)信息中相關(guān)的位進(jìn)行車(chē)燈控制,在發(fā)出控制信號(hào)后,相應(yīng)采集車(chē)燈驅(qū)動(dòng)芯片輸入、輸出和故障診斷引腳的電位,驅(qū)動(dòng)車(chē)燈的運(yùn)動(dòng)狀況,接通水平方向車(chē)燈、接通左右方向車(chē)燈、AFS照明系統(tǒng),通過(guò)對(duì)電位的分析判斷,向驅(qū)動(dòng)電路發(fā)出控制信號(hào),若不需要啟動(dòng)車(chē)燈,則發(fā)送一個(gè)返回信息,返回到掃描車(chē)燈的位置。其程序設(shè)計(jì)車(chē)燈控制的流程如圖4所示。
在系統(tǒng)啟動(dòng)并進(jìn)行初始化以后, 儀表模塊開(kāi)始啟動(dòng)一個(gè)定時(shí)器, 實(shí)現(xiàn)周期性地對(duì)儀表盤(pán)的車(chē)燈按鈕狀態(tài)進(jìn)行掃描, 然后將信息通過(guò) L I N總線傳送到車(chē)燈控制模塊, 該信息包含了駕駛員對(duì)于車(chē)燈狀態(tài)的要求( 開(kāi)通或關(guān)斷) 。車(chē)燈控制模塊同時(shí)對(duì)數(shù)字量診斷輸出的車(chē)燈信息和模擬電流傳感器診斷輸出的車(chē)燈進(jìn)行檢測(cè),對(duì)于出現(xiàn)故障的車(chē)燈信息,通過(guò) L I N總線傳輸?shù)絻x表模塊上。傳輸信息包括車(chē)燈的名稱(chēng)、車(chē)燈所在的位置和車(chē)燈狀態(tài)等 。車(chē)燈控制模塊結(jié)合儀表模塊判斷結(jié)果及儀表盤(pán)的掃描結(jié)果, 決定是否打開(kāi)車(chē)燈或關(guān)閉車(chē)燈。儀表模塊通過(guò) L I N總線接收/傳送車(chē)燈控制模塊的信息。
結(jié)語(yǔ)
基于LIN總線汽車(chē)前燈運(yùn)動(dòng)控制系統(tǒng),能夠通過(guò)LIN總線對(duì)車(chē)燈進(jìn)行線診斷,系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單、性能可靠、功能較齊、價(jià)格低廉等特點(diǎn),對(duì)不同的步進(jìn)驅(qū)動(dòng)器/控制器組合,以實(shí)現(xiàn)汽車(chē)前燈運(yùn)動(dòng)控制系統(tǒng)最優(yōu)化的系統(tǒng)設(shè)計(jì)方案。設(shè)計(jì)了MCU+LIN接口芯片的LIN節(jié)點(diǎn)硬件結(jié)構(gòu),實(shí)現(xiàn)了主機(jī)/從機(jī)任務(wù)的LIN網(wǎng)絡(luò)通訊。目前在國(guó)內(nèi)如何采用總線技術(shù)提高整車(chē)性能,降低制造和維護(hù)成本,已成為汽車(chē)生產(chǎn)廠家關(guān)注的熱點(diǎn)。