柴 華, 劉建峰, 顧強(qiáng)源, 呂洪智, 耿偉峰
(長城汽車股份有限公司 河北省汽車技術(shù)創(chuàng)新中心, 河北 保定 071000)
在每輛車上,我們都會(huì)看到車輛的外燈(近光燈、遠(yuǎn)光燈、轉(zhuǎn)向燈、霧燈等),根據(jù)市場的需求,燈光所起到的作用不僅是照明,還承擔(dān)了車輛的娛樂氣氛烘托。隨著技術(shù)的發(fā)展,外部燈光也由普通的鹵素大燈逐步升級為LED大燈,LED技術(shù)讓燈光更加智能化,尤其是目前市場流行的貫穿式前后大燈造型,給了整車更多應(yīng)用場景,燈光閃爍并伴隨音樂播放的音樂燈光秀,順應(yīng)了用戶對車輛個(gè)性化功能的追求,它也成為了各個(gè)車企爭先開發(fā)研究的熱點(diǎn)功能。
現(xiàn)有音樂燈光秀功能是通過存儲(chǔ)燈光秀效果軟件到各個(gè)控制器。由整車廠提出需求,供應(yīng)商開發(fā)供貨到整車廠,整車廠只能得到固定的音樂對應(yīng)固定的燈光秀效果,若市場和用戶想要改變或增加新的燈光秀功能,需要再次功能定義,功能開發(fā),整車相關(guān)系統(tǒng)再次變更測試,周期長、成本高。為解決此問題,降低周期和成本,應(yīng)用SOA服務(wù)架構(gòu)開發(fā)音樂燈光秀功能應(yīng)運(yùn)而生。
現(xiàn)有車輛音樂燈光秀功能,采用“獨(dú)立軟件+特定硬件”,ECU的軟硬件開發(fā)全部由供應(yīng)商完成,用戶只能在主機(jī)頁面選擇車輛已經(jīng)存儲(chǔ)好的音樂和燈光秀。因?yàn)橐呀?jīng)提前預(yù)設(shè)在車內(nèi)控制器軟件中,不會(huì)存在延時(shí)問題,但是生成預(yù)設(shè)軟件需要投入很大的成本,且更新升級周期長,軟件占用空間大,需要各控制器具備較大的存儲(chǔ)空間,這對ECU軟硬件資源和能力的浪費(fèi)是顯而易見的。
現(xiàn)有音樂燈光秀架構(gòu)如圖1所示。
圖1 音樂燈光秀架構(gòu)
1) 影音系統(tǒng):為整車提供影音娛樂功能和人機(jī)交互頁面設(shè)置軟件,可以進(jìn)行音樂設(shè)置和音量控制。通過功放驅(qū)動(dòng)揚(yáng)聲器進(jìn)行播放,音樂頻率通過CAN從影音系統(tǒng)傳輸?shù)秸嚳刂葡到y(tǒng)。
2) 整車控制系統(tǒng):主要負(fù)責(zé)實(shí)現(xiàn)音樂燈光秀功能邏輯軟件,通過CAN信號從車輛電源系統(tǒng)和擋位系統(tǒng)獲取整車電源狀態(tài)和擋位狀態(tài),用于判斷音樂燈光秀功能進(jìn)入條件是否滿足,進(jìn)入條件滿足后,通過CAN信號將燈光秀模式傳遞到車輛外燈系統(tǒng)和車窗系統(tǒng)。
3) 電源系統(tǒng):提供整車電源狀態(tài),并通過CAN信號傳遞到整車控制系統(tǒng)。
4) 擋位系統(tǒng):提供整車擋位狀態(tài),并通過CAN信號傳遞到整車控制系統(tǒng)。
5) 外燈系統(tǒng):接收整車控制系統(tǒng)CAN信號,并提供整車外燈狀態(tài)及外燈驅(qū)動(dòng)。外燈包含整車外部所有燈光:遠(yuǎn)光燈、近光燈、前霧燈、后霧燈、前轉(zhuǎn)向燈、后轉(zhuǎn)向燈、晝間行車燈、制動(dòng)燈、牌照燈、角燈。
6) 車窗系統(tǒng):接收整車控制系統(tǒng)CAN信號,并在燈光秀開啟時(shí)驅(qū)動(dòng)車窗開啟。
7) 車窗:車窗執(zhí)行單元。
8) 外燈:外燈執(zhí)行單元。
音樂燈光秀功能設(shè)計(jì)開發(fā)采用CP-AUTOSAR,涉及到的各系統(tǒng)之間交互均采用CAN通信協(xié)議,通過硬線或網(wǎng)絡(luò)信號進(jìn)行系統(tǒng)間交互,涉及到信號發(fā)送方和接收方。舉例見表1。
表1 功能設(shè)計(jì)開發(fā)示例
新功能優(yōu)化或新增首先會(huì)影響信號的變更,且嵌入式軟件的開發(fā)會(huì)影響到各系統(tǒng)信號定義及信號接收方發(fā)送方的改變,成本高、更改量大、周期長,不能快速響應(yīng)市場新功能的需求。
本文意在介紹應(yīng)用SOA服務(wù)架構(gòu)設(shè)計(jì)開發(fā)音樂燈光秀功能系統(tǒng)方案,通過較低的成本、較短的研發(fā)周期、較小更改量來滿足市場對新功能快速迭代的需求,開發(fā)一款可以自我成長的汽車。
SOA(Service-Oriented Architecture) 面向服務(wù)的一種架構(gòu),是一種設(shè)計(jì)思想和方法論。在SOA架構(gòu)中會(huì)涉及到服務(wù)、接口等概念,但服務(wù)是最核心的抽象手段和系統(tǒng)最基礎(chǔ)的描述單元;接口是指能被其他模塊調(diào)用的函數(shù)名稱或一個(gè)封裝的API。
服務(wù)分為服務(wù)提供者(實(shí)現(xiàn)服務(wù)功能)、服務(wù)消費(fèi)者(使用服務(wù)接口,調(diào)用服務(wù)),如圖2~圖4所示。
圖2 只消費(fèi)A
圖3 只消費(fèi)B
圖4 消費(fèi)A+B
服務(wù)是SOA服務(wù)架構(gòu)的最小單元,根據(jù)消費(fèi)者調(diào)用服務(wù)的方法,服務(wù)提供者和服務(wù)消費(fèi)者有以下3種關(guān)系。圖2,消費(fèi)方只請求服務(wù)A,此時(shí)可以理解為功能A的開發(fā);圖3,消費(fèi)方只請求服務(wù)B,此時(shí)可以理解為功能B的開發(fā);圖4,消費(fèi)方同時(shí)請求服務(wù)A和B,雖然仍然是A和B的接口,但是服務(wù)提供方不再單一,可以理解為一個(gè)新功能C的開發(fā)。
若音樂燈光秀功能開發(fā)采用SOA服務(wù)架構(gòu),可根據(jù)外燈系統(tǒng)和影音系統(tǒng)中不同的服務(wù)接口組合,根據(jù)不同的功能需求請求不同的音樂和燈光秀服務(wù)接口,可快速生成不同種類的音樂燈光秀效果,更改周期會(huì)大大縮短。SOA服務(wù)架構(gòu)圖如圖5所示。
圖5 音樂燈光秀SOA架構(gòu)
在SOA架構(gòu),音樂燈光秀功能可拆分為外燈控制服務(wù)(遠(yuǎn)光燈控制接口、近光燈控制接口、轉(zhuǎn)向燈控制接口、位置燈控制接口…)、外燈狀態(tài)服務(wù)(遠(yuǎn)光燈狀態(tài)接口、近光燈狀態(tài)接口、轉(zhuǎn)向燈狀態(tài)接口、危險(xiǎn)報(bào)警燈狀態(tài)接口、位置燈狀態(tài)接口…)、電源狀態(tài)服務(wù)、擋位狀態(tài)服務(wù)、車窗控制服務(wù)等,見表2。
表2 音樂燈光秀功能
1) 影音系統(tǒng): 提供HMI頁面設(shè)置,用戶可在上面選擇音樂燈光秀APP,APP版本可根據(jù)后臺(tái)功能的更新隨時(shí)更新。提供用戶音樂設(shè)置和音量控制,并能語音開啟音樂燈光秀。作為音樂燈光秀功能的消費(fèi)方,可直接請求中央處理單元服務(wù)接口來判斷進(jìn)入音樂燈光秀功能條件,并控制音樂燈光秀的開啟和關(guān)閉。
2) 中央處理單元:作為服務(wù)提供方,提供音樂燈光秀服務(wù):外燈控制服務(wù)、外燈狀態(tài)服務(wù)、電源狀態(tài)服務(wù)、擋位狀態(tài)服務(wù)、車窗控制服務(wù)。通過S2S模塊將服務(wù)接口轉(zhuǎn)換成CAN信號,通過CAN將信號傳遞到區(qū)域控制器。
3) 區(qū)域控制器:將中央處理單元傳送的CAN信號進(jìn)行整理并進(jìn)行燈光秀軟件邏輯處理。同步驅(qū)動(dòng)外燈和車窗。
4) S2S:服務(wù)轉(zhuǎn)換信號處理模塊。
5) 車窗:車窗執(zhí)行單元。
6) 外燈:外燈執(zhí)行單元。
1) 用戶通過HMI人機(jī)交互頁面進(jìn)行音樂燈光秀設(shè)置。影音系統(tǒng)根據(jù)用戶開啟功能需求,請求中央處理單元的電源狀態(tài)服務(wù)接口、擋位狀態(tài)服務(wù)接口、危險(xiǎn)報(bào)警燈狀態(tài)服務(wù)接口。
2) 影音系統(tǒng)根據(jù)電源狀態(tài)服務(wù)接口、擋位狀態(tài)服務(wù)接口、外燈狀態(tài)服務(wù)中的危險(xiǎn)報(bào)警燈狀態(tài)服務(wù)接口信息,判斷整車是否滿足進(jìn)入音樂燈光秀功能,當(dāng)電源狀態(tài)服務(wù)接口為1(OFF)時(shí),擋位狀態(tài)服務(wù)接口為0(P)且危險(xiǎn)報(bào)警燈狀態(tài)服務(wù)接口為1(未激活)時(shí),則成功進(jìn)入音樂燈光秀功能;當(dāng)電源狀態(tài)服務(wù)接口為非1(OFF)時(shí),或擋位狀態(tài)服務(wù)接口為非0(P)時(shí),或危險(xiǎn)報(bào)警燈服務(wù)接口為非1(未激活)時(shí),則進(jìn)入音樂燈光秀功能失敗,需在影音系統(tǒng)中控頁面顯示失敗原因提示用戶,3s后消失。同步影音系統(tǒng)退出音樂燈光秀頁面,恢復(fù)到HMI人機(jī)交互首頁。
3) 當(dāng)成功進(jìn)入音樂燈光秀功能后,音樂開始播放,影音系統(tǒng)同步將音樂頻律用CAN傳遞到區(qū)域控制器,同時(shí)影音系統(tǒng)請求外燈控制服務(wù)和車窗控制服務(wù)。當(dāng)功能定義燈光秀只涉及到遠(yuǎn)光燈、近光燈、位置燈時(shí),則影音系統(tǒng)請求遠(yuǎn)光燈控制服務(wù)接口為0(開啟),請求近光燈控制服務(wù)接口為0(開啟)、位置燈控制服務(wù)接口為0(開啟),影音系統(tǒng)請求車窗控制服務(wù)接口為0(開啟);當(dāng)服務(wù)成功執(zhí)行后,近光燈控制服務(wù)接口、遠(yuǎn)光燈控制服務(wù)接口、位置燈控制服務(wù)接口、車窗控制服務(wù)接口均反饋到影音系統(tǒng)。
4) 中央處理單元通過S2S將服務(wù)轉(zhuǎn)換成信號通過CAN傳遞到區(qū)域控制器處理。區(qū)域控制器收到CAN信號后(音樂頻律和車窗、外燈開啟信號) 驅(qū)動(dòng)車窗開啟,近光燈、遠(yuǎn)光燈、位置燈伴隨音樂同步閃爍。
5) 音樂播放完畢后,影音系統(tǒng)判斷音樂燈光秀功能退出,影音系統(tǒng)請求外燈控制服務(wù)和車窗控制服務(wù)。當(dāng)功能定義燈光秀只涉及到遠(yuǎn)光燈、近光燈、位置燈時(shí),則影音系統(tǒng)請求遠(yuǎn)光燈控制服務(wù)接口為1(關(guān)閉),請求近光燈控制服務(wù)接口為1(關(guān)閉),位置燈控制服務(wù)接口為1(關(guān)閉),影音系統(tǒng)請求車窗控制服務(wù)接口為1(關(guān)閉)。當(dāng)服務(wù)成功執(zhí)行后,近光燈控制服務(wù)接口、遠(yuǎn)光燈控制服務(wù)接口、位置燈控制服務(wù)接口、車窗控制服務(wù)接口均反饋到影音系統(tǒng)。
6) 音樂燈光秀功能退出,影音系統(tǒng)恢復(fù)到HMI人機(jī)交互首頁,為下一次用戶使用音樂燈光秀做準(zhǔn)備。
備注:若功能定義燈光秀只涉及到遠(yuǎn)光燈、轉(zhuǎn)向燈兩個(gè)燈時(shí),則影音系統(tǒng)可只請求遠(yuǎn)光燈控制服務(wù)接口為0(開啟),請求轉(zhuǎn)向燈控制服務(wù)接口為0(開啟) 即可,當(dāng)服務(wù)成功執(zhí)行后,遠(yuǎn)光燈控制服務(wù)接口、轉(zhuǎn)向燈控制服務(wù)接口均反饋到影音系統(tǒng)。
音樂燈光秀在功能定義變更時(shí)可以通過服務(wù)接口不同組合快速進(jìn)行功能迭代,極大縮短了周期和開發(fā)成本,能快速響應(yīng)市場的需求并增強(qiáng)用戶體驗(yàn)感。
1) 本方案中音樂燈光秀功能采用SOA電子電氣架構(gòu),功能集成化,軟件可統(tǒng)一控制處理。
2) 本方案中將實(shí)現(xiàn)音樂燈光秀功能各系統(tǒng)能力抽象為標(biāo)準(zhǔn)服務(wù),方便消費(fèi)方訂閱多個(gè)或單個(gè)服務(wù)接口,擴(kuò)大了使用場景。
3) 本方案中音樂燈光秀功能需要有多個(gè)燈光效果時(shí),標(biāo)準(zhǔn)服務(wù)接口可根據(jù)功能定義隨意組合,車輛會(huì)以低成本、短周期、小更改量,來滿足市場的需求。
為了滿足市場對功能的快速迭代需求,縮短變更周期,本方案中音樂燈光秀功能應(yīng)用面向服務(wù)SOA架構(gòu),采用軟硬件解耦,通過標(biāo)準(zhǔn)服務(wù)接口進(jìn)行交互,功能應(yīng)用層進(jìn)行組合,實(shí)現(xiàn)不同的燈光秀功能定義,在最小范圍內(nèi)完成功能升級,以最快捷有效的方式來滿足市場用戶的需求。