柴 華, 劉建峰, 顧強源, 呂洪智, 耿偉峰
(長城汽車股份有限公司 河北省汽車技術創新中心, 河北 保定 071000)
在每輛車上,我們都會看到車輛的外燈(近光燈、遠光燈、轉向燈、霧燈等),根據市場的需求,燈光所起到的作用不僅是照明,還承擔了車輛的娛樂氣氛烘托。隨著技術的發展,外部燈光也由普通的鹵素大燈逐步升級為LED大燈,LED技術讓燈光更加智能化,尤其是目前市場流行的貫穿式前后大燈造型,給了整車更多應用場景,燈光閃爍并伴隨音樂播放的音樂燈光秀,順應了用戶對車輛個性化功能的追求,它也成為了各個車企爭先開發研究的熱點功能。
現有音樂燈光秀功能是通過存儲燈光秀效果軟件到各個控制器。由整車廠提出需求,供應商開發供貨到整車廠,整車廠只能得到固定的音樂對應固定的燈光秀效果,若市場和用戶想要改變或增加新的燈光秀功能,需要再次功能定義,功能開發,整車相關系統再次變更測試,周期長、成本高。為解決此問題,降低周期和成本,應用SOA服務架構開發音樂燈光秀功能應運而生。
現有車輛音樂燈光秀功能,采用“獨立軟件+特定硬件”,ECU的軟硬件開發全部由供應商完成,用戶只能在主機頁面選擇車輛已經存儲好的音樂和燈光秀。因為已經提前預設在車內控制器軟件中,不會存在延時問題,但是生成預設軟件需要投入很大的成本,且更新升級周期長,軟件占用空間大,需要各控制器具備較大的存儲空間,這對ECU軟硬件資源和能力的浪費是顯而易見的。
現有音樂燈光秀架構如圖1所示。

圖1 音樂燈光秀架構
1) 影音系統:為整車提供影音娛樂功能和人機交互頁面設置軟件,可以進行音樂設置和音量控制。通過功放驅動揚聲器進行播放,音樂頻率通過CAN從影音系統傳輸到整車控制系統。
2) 整車控制系統:主要負責實現音樂燈光秀功能邏輯軟件,通過CAN信號從車輛電源系統和擋位系統獲取整車電源狀態和擋位狀態,用于判斷音樂燈光秀功能進入條件是否滿足,進入條件滿足后,通過CAN信號將燈光秀模式傳遞到車輛外燈系統和車窗系統。
3) 電源系統:提供整車電源狀態,并通過CAN信號傳遞到整車控制系統。
4) 擋位系統:提供整車擋位狀態,并通過CAN信號傳遞到整車控制系統。
5) 外燈系統:接收整車控制系統CAN信號,并提供整車外燈狀態及外燈驅動。外燈包含整車外部所有燈光:遠光燈、近光燈、前霧燈、后霧燈、前轉向燈、后轉向燈、晝間行車燈、制動燈、牌照燈、角燈。
6) 車窗系統:接收整車控制系統CAN信號,并在燈光秀開啟時驅動車窗開啟。
7) 車窗:車窗執行單元。
8) 外燈:外燈執行單元。
音樂燈光秀功能設計開發采用CP-AUTOSAR,涉及到的各系統之間交互均采用CAN通信協議,通過硬線或網絡信號進行系統間交互,涉及到信號發送方和接收方。舉例見表1。

表1 功能設計開發示例
新功能優化或新增首先會影響信號的變更,且嵌入式軟件的開發會影響到各系統信號定義及信號接收方發送方的改變,成本高、更改量大、周期長,不能快速響應市場新功能的需求。
本文意在介紹應用SOA服務架構設計開發音樂燈光秀功能系統方案,通過較低的成本、較短的研發周期、較小更改量來滿足市場對新功能快速迭代的需求,開發一款可以自我成長的汽車。
SOA(Service-Oriented Architecture) 面向服務的一種架構,是一種設計思想和方法論。在SOA架構中會涉及到服務、接口等概念,但服務是最核心的抽象手段和系統最基礎的描述單元;接口是指能被其他模塊調用的函數名稱或一個封裝的API。
服務分為服務提供者(實現服務功能)、服務消費者(使用服務接口,調用服務),如圖2~圖4所示。

圖2 只消費A

圖3 只消費B

圖4 消費A+B
服務是SOA服務架構的最小單元,根據消費者調用服務的方法,服務提供者和服務消費者有以下3種關系。圖2,消費方只請求服務A,此時可以理解為功能A的開發;圖3,消費方只請求服務B,此時可以理解為功能B的開發;圖4,消費方同時請求服務A和B,雖然仍然是A和B的接口,但是服務提供方不再單一,可以理解為一個新功能C的開發。
若音樂燈光秀功能開發采用SOA服務架構,可根據外燈系統和影音系統中不同的服務接口組合,根據不同的功能需求請求不同的音樂和燈光秀服務接口,可快速生成不同種類的音樂燈光秀效果,更改周期會大大縮短。SOA服務架構圖如圖5所示。

圖5 音樂燈光秀SOA架構
在SOA架構,音樂燈光秀功能可拆分為外燈控制服務(遠光燈控制接口、近光燈控制接口、轉向燈控制接口、位置燈控制接口…)、外燈狀態服務(遠光燈狀態接口、近光燈狀態接口、轉向燈狀態接口、危險報警燈狀態接口、位置燈狀態接口…)、電源狀態服務、擋位狀態服務、車窗控制服務等,見表2。

表2 音樂燈光秀功能
1) 影音系統: 提供HMI頁面設置,用戶可在上面選擇音樂燈光秀APP,APP版本可根據后臺功能的更新隨時更新。提供用戶音樂設置和音量控制,并能語音開啟音樂燈光秀。作為音樂燈光秀功能的消費方,可直接請求中央處理單元服務接口來判斷進入音樂燈光秀功能條件,并控制音樂燈光秀的開啟和關閉。
2) 中央處理單元:作為服務提供方,提供音樂燈光秀服務:外燈控制服務、外燈狀態服務、電源狀態服務、擋位狀態服務、車窗控制服務。通過S2S模塊將服務接口轉換成CAN信號,通過CAN將信號傳遞到區域控制器。
3) 區域控制器:將中央處理單元傳送的CAN信號進行整理并進行燈光秀軟件邏輯處理。同步驅動外燈和車窗。
4) S2S:服務轉換信號處理模塊。
5) 車窗:車窗執行單元。
6) 外燈:外燈執行單元。
1) 用戶通過HMI人機交互頁面進行音樂燈光秀設置。影音系統根據用戶開啟功能需求,請求中央處理單元的電源狀態服務接口、擋位狀態服務接口、危險報警燈狀態服務接口。
2) 影音系統根據電源狀態服務接口、擋位狀態服務接口、外燈狀態服務中的危險報警燈狀態服務接口信息,判斷整車是否滿足進入音樂燈光秀功能,當電源狀態服務接口為1(OFF)時,擋位狀態服務接口為0(P)且危險報警燈狀態服務接口為1(未激活)時,則成功進入音樂燈光秀功能;當電源狀態服務接口為非1(OFF)時,或擋位狀態服務接口為非0(P)時,或危險報警燈服務接口為非1(未激活)時,則進入音樂燈光秀功能失敗,需在影音系統中控頁面顯示失敗原因提示用戶,3s后消失。同步影音系統退出音樂燈光秀頁面,恢復到HMI人機交互首頁。
3) 當成功進入音樂燈光秀功能后,音樂開始播放,影音系統同步將音樂頻律用CAN傳遞到區域控制器,同時影音系統請求外燈控制服務和車窗控制服務。當功能定義燈光秀只涉及到遠光燈、近光燈、位置燈時,則影音系統請求遠光燈控制服務接口為0(開啟),請求近光燈控制服務接口為0(開啟)、位置燈控制服務接口為0(開啟),影音系統請求車窗控制服務接口為0(開啟);當服務成功執行后,近光燈控制服務接口、遠光燈控制服務接口、位置燈控制服務接口、車窗控制服務接口均反饋到影音系統。
4) 中央處理單元通過S2S將服務轉換成信號通過CAN傳遞到區域控制器處理。區域控制器收到CAN信號后(音樂頻律和車窗、外燈開啟信號) 驅動車窗開啟,近光燈、遠光燈、位置燈伴隨音樂同步閃爍。
5) 音樂播放完畢后,影音系統判斷音樂燈光秀功能退出,影音系統請求外燈控制服務和車窗控制服務。當功能定義燈光秀只涉及到遠光燈、近光燈、位置燈時,則影音系統請求遠光燈控制服務接口為1(關閉),請求近光燈控制服務接口為1(關閉),位置燈控制服務接口為1(關閉),影音系統請求車窗控制服務接口為1(關閉)。當服務成功執行后,近光燈控制服務接口、遠光燈控制服務接口、位置燈控制服務接口、車窗控制服務接口均反饋到影音系統。
6) 音樂燈光秀功能退出,影音系統恢復到HMI人機交互首頁,為下一次用戶使用音樂燈光秀做準備。
備注:若功能定義燈光秀只涉及到遠光燈、轉向燈兩個燈時,則影音系統可只請求遠光燈控制服務接口為0(開啟),請求轉向燈控制服務接口為0(開啟) 即可,當服務成功執行后,遠光燈控制服務接口、轉向燈控制服務接口均反饋到影音系統。
音樂燈光秀在功能定義變更時可以通過服務接口不同組合快速進行功能迭代,極大縮短了周期和開發成本,能快速響應市場的需求并增強用戶體驗感。
1) 本方案中音樂燈光秀功能采用SOA電子電氣架構,功能集成化,軟件可統一控制處理。
2) 本方案中將實現音樂燈光秀功能各系統能力抽象為標準服務,方便消費方訂閱多個或單個服務接口,擴大了使用場景。
3) 本方案中音樂燈光秀功能需要有多個燈光效果時,標準服務接口可根據功能定義隨意組合,車輛會以低成本、短周期、小更改量,來滿足市場的需求。
為了滿足市場對功能的快速迭代需求,縮短變更周期,本方案中音樂燈光秀功能應用面向服務SOA架構,采用軟硬件解耦,通過標準服務接口進行交互,功能應用層進行組合,實現不同的燈光秀功能定義,在最小范圍內完成功能升級,以最快捷有效的方式來滿足市場用戶的需求。