靈活的現(xiàn)代CPLD汽車(chē)數(shù)字儀表板
汽車(chē)儀表板成為匯集車(chē)輛安全和管理所有信息的神經(jīng)中樞,為駕駛員顯示各種信息。在當(dāng)今的數(shù)字時(shí)代,車(chē)輛儀表系統(tǒng)必須能夠監(jiān)控所有關(guān)鍵功能,該系統(tǒng)甚至是個(gè)性化的。業(yè)界需求發(fā)展導(dǎo)致出現(xiàn)了很多半導(dǎo)體解決方案,從ASSP到全定制器件等。這些方案可能都是功能固定的解決方案,不能靈活地進(jìn)行產(chǎn)品開(kāi)發(fā),無(wú)法滿(mǎn)足設(shè)計(jì)人員的要求。作為對(duì)比,可更新解決方案在一條車(chē)輛產(chǎn)品線(xiàn)上支持多種相似的應(yīng)用,沒(méi)有任何多余的成本開(kāi)銷(xiāo)。這類(lèi)定制解決方案以很低的成本滿(mǎn)足了所有需求。
本文引用地址:http://www.ex-cimer.com/article/104845.htm本文簡(jiǎn)要介紹一種創(chuàng)新的CPLD體系結(jié)構(gòu),完全避免了使用微控制器及其驅(qū)動(dòng)器,從而提供了低成本、低功耗組合數(shù)字儀表板解決方案。這一模擬儀表板解決方案(ADS)高效地實(shí)現(xiàn)了數(shù)字汽車(chē)網(wǎng)絡(luò),充分發(fā)揮了數(shù)字技術(shù)的優(yōu)勢(shì)。
組合儀表板解決方案
傳統(tǒng)上,以機(jī)械方式獲得行駛里程等儀表實(shí)時(shí)輸出,使用模擬驅(qū)動(dòng)器進(jìn)行顯示。然而,隨著這些數(shù)據(jù)輸入的數(shù)字化,步進(jìn)電機(jī)和LED替代了儀表和量表。采用昂貴的微控制器來(lái)處理并顯示數(shù)字輸出。后來(lái)出現(xiàn)了ASSP,導(dǎo)致較高的一次性成本開(kāi)支(NRE),限制了產(chǎn)品更新和改進(jìn)。產(chǎn)品生命周期以及對(duì)不同產(chǎn)品線(xiàn)的支持也是促使采用低廉的可編程替代產(chǎn)品的主要因素。
在指針式儀表顯示板上采用了步進(jìn)電機(jī),將電脈沖轉(zhuǎn)換成不連續(xù)的機(jī)械動(dòng)作。當(dāng)電控制脈沖按照一定的順序加到步進(jìn)電機(jī)上時(shí),電機(jī)軸以不連續(xù)的步進(jìn)增量進(jìn)行旋轉(zhuǎn)。組合數(shù)字儀表一般采用步進(jìn)電機(jī)來(lái)仿效模擬面板和指針顯示板的性能以及視覺(jué)效果,同時(shí)提供數(shù)字設(shè)置需要的非常精確的位置信息。需要對(duì)這些電機(jī)進(jìn)行微步進(jìn)控制,以實(shí)現(xiàn)平穩(wěn)連續(xù)的指針移動(dòng)。此外,測(cè)得的采樣值從車(chē)輛傳感器廣播到相應(yīng)的儀表部位,而采樣數(shù)受限于數(shù)字鏈路的帶寬,在一定的時(shí)間間隔后,每一測(cè)量采樣值才顯示在組合儀表上。在這類(lèi)組合儀表上,迫切需要采取措施克服不能連續(xù)顯示信息的難題,當(dāng)傳感器沒(méi)有向儀表輸出數(shù)據(jù)時(shí),確保指針處于正確的位置。要解決這些難題,必須提高處理能力,從而增加了數(shù)字儀表板系統(tǒng)成本,較低的性?xún)r(jià)比阻礙了其在車(chē)輛中的應(yīng)用。
基于CPLD的組合儀表板控制器
使用CPLD很容易克服這種高成本解決方案所帶來(lái)的限制。采用ADS,客戶(hù)只需要在設(shè)計(jì)中更新或者修改編程文件,實(shí)現(xiàn)產(chǎn)品換代,因此,非常靈活。此外,還可以在現(xiàn)場(chǎng)增添新功能或者更新產(chǎn)品,不但提高了技術(shù)實(shí)現(xiàn)效率,而且還滿(mǎn)足了特殊的用戶(hù)和產(chǎn)品需求。使用相同的基本系統(tǒng),稍作改動(dòng),就很容易在新產(chǎn)品線(xiàn)上采用不同的器件。
利用基于CPLD的ADS,產(chǎn)品開(kāi)發(fā)人員和生產(chǎn)商可以根據(jù)需要從不同的器件中進(jìn)行選擇,而不用擔(dān)心半導(dǎo)體元件過(guò)時(shí)的問(wèn)題。它具有較低的銷(xiāo)售價(jià)格,支持高端功能,未來(lái)擴(kuò)展余地非常大。其體系結(jié)構(gòu)使用Altera的MAX II CPLD,包括6個(gè)模塊:串行傳感器數(shù)據(jù)單元、主移動(dòng)控制和算術(shù)單元,以及4個(gè)PWM發(fā)生器。串行傳感器數(shù)據(jù)單元接收來(lái)自傳感器的輸入,主移動(dòng)控制和算術(shù)單元完成必要的計(jì)算,PWM發(fā)生器為步進(jìn)電機(jī)所有相位提供合適的控制信號(hào),接收來(lái)自主模塊的命令(圖1)。
圖1. 基于CPLD的ADS結(jié)構(gòu)圖
在詳細(xì)說(shuō)明這一ADS體系結(jié)構(gòu)之前,首先要理解窄帶車(chē)輛數(shù)據(jù)網(wǎng)絡(luò)中不同模塊的功能,以及驅(qū)動(dòng)指針儀表板的步進(jìn)電機(jī)是怎樣完成微步進(jìn)控制的。由于組合儀表所有顯示面板并不需要連續(xù)的傳感器數(shù)據(jù),當(dāng)沒(méi)有數(shù)據(jù)時(shí),系統(tǒng)保持指針位置不變。為實(shí)現(xiàn)平穩(wěn)顯示,發(fā)送給指針的移動(dòng)命令是當(dāng)前偏轉(zhuǎn)函數(shù),不會(huì)產(chǎn)生急促的指針步進(jìn)變化。
PWM發(fā)生器
4個(gè)PWM發(fā)生器模塊驅(qū)動(dòng)指針儀表板步進(jìn)電機(jī),指示來(lái)自不同傳感器的數(shù)據(jù)(圖2)。
圖2. PWM發(fā)生器基本結(jié)構(gòu)圖
微步進(jìn)控制功能用于驅(qū)動(dòng)電機(jī),產(chǎn)生平穩(wěn)的電機(jī)旋轉(zhuǎn)。在微步進(jìn)控制中,電機(jī)產(chǎn)生的磁場(chǎng)不是和激勵(lì)線(xiàn)圈平行,而是有一定的角度。這樣,能夠在更多的位置產(chǎn)生保持轉(zhuǎn)矩,使轉(zhuǎn)子保持在激勵(lì)線(xiàn)圈兩個(gè)極軸之間。激勵(lì)線(xiàn)圈加電后,產(chǎn)生的磁通量與流過(guò)的電流成正比。如果所有激勵(lì)線(xiàn)圈加電,就可以通過(guò)兩個(gè)繞組電流的矢量和得到電流方向以及磁場(chǎng)。因此,如果步進(jìn)電機(jī)繞組中的電流逐漸增大,那么可以產(chǎn)生激勵(lì)磁場(chǎng)的一組等距位置,提高電機(jī)的步進(jìn)精度。利用這一原理,步進(jìn)電機(jī)的步長(zhǎng)被分成轉(zhuǎn)軸實(shí)際轉(zhuǎn)動(dòng)的微步長(zhǎng)(圖3)。
圖3. 微步長(zhǎng)控制期間的兩個(gè)正弦電流波形
4個(gè)PWM模塊向步進(jìn)電機(jī)提供固定占空比的恒定PWM脈沖,使指針按照一定的速度轉(zhuǎn)動(dòng),4個(gè)步進(jìn)電機(jī)保持恒速轉(zhuǎn)動(dòng)。它們接收來(lái)自移動(dòng)控制單元的移動(dòng)命令以及方向輸入,在繞組上輸入合適的電壓,使每個(gè)電機(jī)在要求的方向上轉(zhuǎn)動(dòng)一個(gè)微步長(zhǎng)。
移動(dòng)控制和算術(shù)單元
delta發(fā)生器是移動(dòng)控制和算術(shù)單元的主要組件。該模塊接收來(lái)自傳感器的4個(gè)步進(jìn)電機(jī)中每個(gè)電機(jī)的目標(biāo)偏轉(zhuǎn)信號(hào)。接收到目標(biāo)偏轉(zhuǎn)信號(hào)后,兩路信號(hào)被送入各自的PWM模塊中。一路信號(hào),也就是觸發(fā)脈沖,將當(dāng)前的占空比值改為PWM模塊中的下一值。因此,當(dāng)跨距范圍較大時(shí),以較高的頻率發(fā)送脈沖,PWM模塊快速遍歷各占空比值,從而使步進(jìn)電機(jī)以較高的速度旋轉(zhuǎn)。當(dāng)指針達(dá)到目標(biāo)偏轉(zhuǎn)位置后,停止向PWM模塊發(fā)送觸發(fā)脈沖,而PWM模塊輸出占空比恒定的脈沖,使轉(zhuǎn)軸有效地保持位置不變。另一路信號(hào)指示PWM模塊,指針應(yīng)向哪一方向轉(zhuǎn)動(dòng)。
delta發(fā)生器還有另一重要功能,周期性地發(fā)送代表采樣值的數(shù)據(jù)。如果這一信息直接加在步進(jìn)電機(jī)上,那么,指針會(huì)急促轉(zhuǎn)動(dòng)。為避免出現(xiàn)這種轉(zhuǎn)動(dòng),delta發(fā)生器使用修正后的數(shù)值,表示為delta δ。每次接收到新的目標(biāo)偏轉(zhuǎn)值后,發(fā)生器針對(duì)這一指針值重新計(jì)算δ。然后,將這一遞增值δ加到指針當(dāng)前偏轉(zhuǎn)上,其處理速率要比接收到新目標(biāo)偏轉(zhuǎn)值的情況快得多。在整個(gè)過(guò)程中,持續(xù)監(jiān)視單元的當(dāng)前偏轉(zhuǎn)。當(dāng)它變化時(shí),發(fā)送使步進(jìn)電機(jī)按照要求方向步進(jìn)一個(gè)微步長(zhǎng)的命令。如果目標(biāo)偏轉(zhuǎn)值大于當(dāng)前偏轉(zhuǎn)值,那么為順時(shí)針?lè)较颍绻∮诋?dāng)前偏轉(zhuǎn)值,則為逆時(shí)針?lè)较颉?/p>
這樣,在接收兩個(gè)目標(biāo)偏轉(zhuǎn)值間隔期間,指針以較快的速率旋轉(zhuǎn),通過(guò)較小的步長(zhǎng)達(dá)到目標(biāo)值,從而產(chǎn)生平穩(wěn)的旋轉(zhuǎn)。它推斷出能夠覆蓋這一間隔合適的值,無(wú)論輸入怎樣變化,都能夠保持平穩(wěn)轉(zhuǎn)動(dòng)。
傳感器數(shù)據(jù)輸入單元
傳感器數(shù)據(jù)輸入單元使用SPI接口,支持與慢速外設(shè)之間的通信,可以周期性的訪(fǎng)問(wèn)這些外設(shè)。采用主機(jī)/從機(jī)方式和外設(shè)進(jìn)行通信,由主機(jī)發(fā)起數(shù)據(jù)幀。當(dāng)主機(jī)產(chǎn)生一個(gè)時(shí)鐘信號(hào),選擇從機(jī)器件后,可以單向或者雙向傳送數(shù)據(jù)。在CPLD后面實(shí)現(xiàn)SPI從機(jī)模塊,以便系統(tǒng)輸入。傳感器數(shù)據(jù)導(dǎo)入到算術(shù)和移動(dòng)控制單元,是某一傳感器或者新LED數(shù)據(jù)的目標(biāo)偏轉(zhuǎn)值。傳感器數(shù)據(jù)和目標(biāo)地址一同發(fā)送,以區(qū)別其來(lái)源。
很容易在不同的平臺(tái)上調(diào)整基于CPLD的ADS,提高其精度,實(shí)現(xiàn)更高端的功能。它能夠?yàn)椴煌能?chē)型提供不同的裝配布局,只需要在程序上稍作改動(dòng),幾乎沒(méi)有額外成本,開(kāi)發(fā)時(shí)間呈指數(shù)下降。ADS可以結(jié)合可靠的公用汽車(chē)數(shù)字?jǐn)?shù)據(jù)網(wǎng)絡(luò),融入到生產(chǎn)工藝中,而靈活的CPLD很容易實(shí)現(xiàn)置入式功能。
結(jié)論
使用低成本、低邏輯密度CPLD,可以實(shí)現(xiàn)復(fù)雜的ADS,克服傳統(tǒng)儀表板解決方案的缺點(diǎn)。由于A(yíng)DS具有內(nèi)在的可編程優(yōu)勢(shì),設(shè)計(jì)重用意味著能夠使用越來(lái)越多的IP和內(nèi)核庫(kù)來(lái)迅速開(kāi)發(fā)其他解決方案。很容易重新進(jìn)行配置,更快地向用戶(hù)推出新產(chǎn)品。由于產(chǎn)品生命周期較長(zhǎng),比較容易收回NRE,生產(chǎn)商能夠延長(zhǎng)已經(jīng)開(kāi)發(fā)的產(chǎn)品的生命周期,而且沒(méi)有新的NRE投入。
評(píng)論