專利名稱::一種車載can總線網絡的節(jié)電方法
技術領域:
:本發(fā)明屬于電子
技術領域:
,涉及一種車載CAN總線網絡,特別是一種車載CAN總線網絡的節(jié)電方法。
背景技術:
:隨著汽車電子的快速發(fā)展,汽車上的用電設備和控制器模塊數(shù)量不斷增長,高級的車上甚至達到上百個之多。傳統(tǒng)的汽車CAN總線控制模塊的供電系統(tǒng)和其他功率設備的供電輸入是直接通過汽車電源供給的。傳統(tǒng)方式中不管這些用電設備需不需要,都向其供電,雖然不工作的設備能耗很低,但是長時間也必定浪費相當多的能量。由于車上蓄電池的電量是有限的,汽車長時間不用,會出現(xiàn)電源能量耗盡和汽車不能啟動的現(xiàn)象。因此如何更有效更合理使用電源,是目前大多數(shù)汽車生產廠家所面臨的一大難題。
發(fā)明內容本發(fā)明的目的是針對現(xiàn)有的汽車控制器所存在的上述問題,而提出了一種通過CAN總線實現(xiàn)控制器模塊節(jié)電的方法,使控制器模塊在不需要處理任務的時候處于低功耗的模式來達到節(jié)電的目的。本發(fā)明的目的可通過下列技術方案來實現(xiàn)一種車載CAN總線網絡的節(jié)電方法,CAN總線上設有作為節(jié)點的控制器模塊,其特征在于,在程序設定下,本車載CAN總線網絡實現(xiàn)節(jié)電的方法能使控制器模塊在沒有工作需求的情況下進入低功耗模式。在上述的一種車載CAN總線網絡的節(jié)電方法中,所述的控制器模塊分為作為主節(jié)點的主控制器模塊和作為從節(jié)點的從控制器模塊,所述的主控制器模塊和從控制器模塊均包括收發(fā)器和具有定時器的控制器,主控制器模塊具有"正常狀態(tài)"、"睡眠狀態(tài)"、"喚醒狀態(tài)"、"喚醒等待狀態(tài)"和"睡眠等待狀態(tài)"這五種狀態(tài),本車載CAN總線網絡實現(xiàn)節(jié)電的方法控制控制器模塊實現(xiàn)狀態(tài)切換包括如下步驟a、主控制器模塊和從控制器模塊上電初始化后首先進入"正常狀態(tài)":在這個狀態(tài)下,主控制器模塊和從控制器模塊的應用程序處于正常模式;當主控制器模塊的睡眠條件出現(xiàn)時,主控制器模塊向從控制器模塊發(fā)送睡眠消息并啟動主定時器計時;若從控制器模塊的睡眠消息接收完畢或等待時間超過主定時器設定時間后,進入步驟b;b、主控制器模塊進入"睡眠等待狀態(tài)"在這個狀態(tài),主控制器模塊沒有應用消息的發(fā)出,只能發(fā)送控制消息;主控制器模塊的收發(fā)器偵聽CAN總線信號并啟動主定時器重新計時;主定時器設定時間內,若有主控制器模塊的喚醒條件的出現(xiàn),則進入步驟c;若在主定時器設定的時間內沒有主控制器模塊的喚醒條件的出現(xiàn),則進入步驟d;C、主控制器模塊進入"喚醒狀態(tài)"在這個狀態(tài),主控制器模塊沒有應用消息的發(fā)出,只能發(fā)送控制消息;主控制器模塊由應用程序重新啟動主定時器并向從控制器模塊發(fā)送喚醒控制消息,喚醒從控制器模塊,使CAN總線保持在"喚醒狀態(tài)";主定時器計時過后,進入"正常狀態(tài)"返回步驟a;d、主控制器模塊進入"睡眠狀態(tài)"在這個狀態(tài),主控制器模塊的控制器進入低功耗模式,并且不能進行CAN總線的通訊;當主控制器模塊檢測到顯性電平時,啟動主定時器,并進入步驟e;若有主控制器模塊的喚醒條件出現(xiàn),則啟動主定時器,并向從控制器模塊發(fā)送喚醒控制消息,返回步驟c;e、主控制器模塊進入"喚醒等待狀態(tài)"在這個狀態(tài),主控制器模塊沒有應用消息的發(fā)出,只能發(fā)送控制消息;在主定時器設定的時間內沒有接收到應用消息,則返回步驟d;若主控制器模塊有喚醒條件出現(xiàn),則啟動主定時器,向從控制器模塊周期性發(fā)送喚醒控制消息,并返回步驟C;若在主定時器設定時間內接收到應用消息,則進入"正常狀態(tài)",返回步驟a。喚醒條件指的是有功能需求和顯示需求,相應的睡眠條件就是指沒有這些功能需求和顯示需求。在上述的一種車載CAN總線網絡的節(jié)電方法中,從控制器模塊接收到睡眠消息后,進入"睡眠狀態(tài)"。在上述的一種車載CAN總線網絡的節(jié)電方法中,當從控制器模塊的睡眠條件出現(xiàn)時,主控制器模塊向從控制器模塊發(fā)送睡眠消息,從控制器模塊進入"睡眠狀態(tài)"。在上述的一種車載CAN總線網絡的節(jié)電方法中,從控制器模塊處于"睡眠狀態(tài)"下時,當從控制器模塊的收發(fā)器偵聽CAN總線信號后進入"喚醒等待狀態(tài)"并啟動從定時器計時,在設定時間內接收到主控制器模塊發(fā)出的喚醒控制消息后進入"正常狀態(tài)";在設定時間內未收到喚醒控制消息則返回"睡眠狀態(tài)"。CAN總線可采用高速CAN總線,其通訊速率為500kbit/s,也可以是低速CAN,其通訊速率為125kbit/s或中速CAN總線,其通訊速率為250kbit/s。與現(xiàn)有技術相比,利用本車載CAN總線網絡的節(jié)電方法可使各控制器模塊在各種狀態(tài)之間進行切換,使控制器模塊在不需要處理任務的時候處于低功耗狀態(tài)以達到節(jié)電的目的。并且在主控制器模塊的"正常狀態(tài)"、"睡眠狀態(tài)"和"喚醒狀態(tài)"之間添加了"喚醒等待狀態(tài)"和"睡眠等待狀態(tài)"這兩個中間過渡態(tài),避免主控制器模塊在"喚醒狀態(tài)"、"睡眠狀態(tài)"和"正常狀態(tài)"之間切換過渡頻繁,保持網絡的穩(wěn)定性。圖1是本發(fā)明提供的主控制器模塊的狀態(tài)切換示意圖。圖2是本發(fā)明提供的從控制器模塊的狀態(tài)切換示意圖。具體實施例方式以下是本發(fā)明的具體實施例并結合附圖,對本發(fā)明的技術方案作進一步的描述,但本發(fā)明并不限于這些實施例。本申請中的節(jié)電方法只對非點火控制器模塊有效,非點火控制器模塊之間的通信方式為CAN總線,本實施例中,CAN總線采用高速CAN總線,其通訊速率為500kbit/s。CAN總線網絡中具有作為主節(jié)點的主控制器模塊和作為從節(jié)點的從控制器模塊。本實施例中,CAN總線網絡中的車身控制器模塊作為CAN網絡的主節(jié)點,組合儀表控制器模塊是從節(jié)點,并可以加入更多的控制器模塊進行節(jié)電管理,這些控制器模塊均包括收發(fā)器和控制器,其中的控制器還具有定時器。如圖1所示,主控制器模塊的狀態(tài)共有"正常狀態(tài)"、"睡眠狀態(tài)"、"喚醒狀態(tài)"、"喚醒等待狀態(tài)"和"睡眠等待狀態(tài)"這五種狀態(tài)。并且它們的定義如下"睡眠狀態(tài)"在這個狀態(tài),主控制器模塊的控制器進入低功耗模式,并且不能進行CAN總線的通訊。"喚醒狀態(tài)"在這個狀態(tài),作為主節(jié)點的主控制器模塊由應用程序啟動其所屬的主定時器并觸發(fā)發(fā)送喚醒控制消息。"喚醒等待狀態(tài)"在這個狀態(tài),當一個處于"睡眠狀態(tài)"的主控制器模塊在CAN總線上檢測到一個顯性電平后會轉換到這個狀態(tài)。如果主定時器設定的時間內沒有任何應用消息的應用,該主控制器模塊會回到"睡眠狀態(tài)";如果在這個主定時器設定的時間內有應用消息的應用,該主控制器模塊轉換到"正常狀態(tài)"。"正常狀態(tài)"在這個狀態(tài),主控制器模塊的應用程序處于正常模式,主控制器模塊能發(fā)送周期應用消息和事件應用消息,直到睡眠條件的出現(xiàn),此后如果從控制器模塊都接收完畢睡眠消息,該主控制器模塊會轉換到"睡眠等待狀態(tài)"。如果等待超時,也將進入"睡眠等待狀態(tài)"。"睡眠等待狀態(tài)"在這個狀態(tài),主控制器模塊準備進入"睡眠狀態(tài)",并且如果沒有CAN總線的通訊請求,所有的控制器模塊都準備進入"睡眠狀態(tài)"。作為主節(jié)點的主控制器模塊啟動主定時器,并偵聽CAN總線的信號,在這個主定時器的設定時間內,如果有應用消息的應用,會重新啟動該主定時器;對于做為主節(jié)點的主控制器模塊,并且有通訊的需求,它會轉換到"喚醒狀態(tài)"并發(fā)送喚醒控制消息使CAN總線保持在"喚醒狀態(tài)"。在所屬定時器設定的時間以后還沒有通訊的需求,該節(jié)點會轉換到"睡眠狀態(tài)"。如圖2所示,從控制器模塊則有"睡眠狀態(tài)"、"正常狀態(tài)"和"喚醒等待狀態(tài)"這三種狀態(tài)。"睡眠狀態(tài)"在這個狀態(tài),從控制器模塊的控制器進入低功耗模式,并且不能進行CAN總線的通訊。"正常狀態(tài)"在這個狀態(tài),從控制器模塊的應用程序處于正常模式,直到睡眠條件的出現(xiàn)或接收到主控制器模塊發(fā)出的睡眠消息。"喚醒等待狀態(tài)"在這個狀態(tài),當一個處于"睡眠狀態(tài)"的從控制器模塊在CAN總線上檢測到一個顯性電平后會轉換到這個狀態(tài)。如果在其所屬的從定時器設定的時間內沒有任何應用消息的應用,該從控制器模塊會回到"睡眠狀態(tài)";如果在這個從定時器設定的時間內有應用消息的應用,該從控制器模塊轉換到"正常狀態(tài)"。本車載CAN總線網絡實現(xiàn)節(jié)電的方法包括如下步驟a、主控制器模塊和從控制器模塊上電初始化后首先進入"正常狀態(tài)":在這個狀態(tài)下,主控制器模塊和從控制器模塊的應用程序處于正常模式;當主控制器模塊的睡眠條件出現(xiàn)時,主控制器模塊向從控制器模塊發(fā)送睡眠消息并啟動主定時器計時;若從控制器模塊的睡眠消息接收完畢或等待時間超過主定時器設定時間后,進入步驟b;從控制器模塊接收到睡眠消息后,進入"睡眠狀態(tài)"。當從控制器模塊的睡眠條件出現(xiàn)時,主控制器模塊向從控制器模塊發(fā)送睡眠消息,從控制器模塊進入"睡眠狀態(tài)"。主控制器模塊將睡眠消息發(fā)送到CAN總線網絡上,由所需的從控制器模塊自行接收。b、主控制器模塊進入"睡眠等待狀態(tài)":此狀態(tài)下,主控制器模塊的收發(fā)器偵聽CAN總線信號并啟動主定時器重新計時;主定時器設定時間內,若有主控制器模塊的喚醒條件的出現(xiàn),則進入步驟c;若在主定時器設定的時間內沒有主控制器模塊的喚醒條件的出現(xiàn),則進入步驟d;C、主控制器模塊進入"喚醒狀態(tài)"在這個狀態(tài)下,主控制器模塊由應用程序重新啟動主定時器并向從控制器模塊發(fā)送喚醒控制消息,喚醒從控制器模塊,使CAN總線保持在"喚醒狀態(tài)";主定時器計時過后,進入"正常狀態(tài)"返回步驟a;d、主控制器模塊進入"睡眠狀態(tài)"在這個狀態(tài),主控制器模塊的控制器進入低功耗模式,并且不能進行CAN總線的通訊;當主控制器模塊檢測到顯性電平時,啟動主定時器,并進入步驟e;若有主控制器模塊的喚醒條件出現(xiàn),則啟動主定時器,并向從控制器模塊發(fā)送喚醒控制消息,返回步驟c;從控制器模塊處于睡眠狀態(tài)下時,當從控制器模塊的收發(fā)器偵聽CAN總線信號后進入"喚醒等待狀態(tài)"并啟動從定時器計時,在設定時間內接收到主控制器模塊發(fā)出的喚醒控制消息后進入"正常狀態(tài)";在設定時間內未收到喚醒控制消息則返回"睡眠狀態(tài)"。從控制器模塊接收到喚醒控制消息后,進入"喚醒等待狀態(tài)",啟動從定時器計時;若在設定時間內接收到應用消息則進入"正常狀態(tài)",反之則進入"睡眠狀態(tài)"。e、主控制器模塊進入"喚醒等待狀態(tài)":在主定時器設定的時間內沒有接收到應用消息,則返回步驟d;若主控制器模塊有喚醒條件出現(xiàn),則啟動主定時器,向從控制器模塊周期性發(fā)送喚醒控制消息,并返回步驟c;若在主定時器設定時間內接收到應用消息,則進入"正常狀態(tài)",返回步驟a。當CAN總線網絡處于"睡眠狀態(tài)"時,所有控制器模塊的收發(fā)器處于低功耗并能監(jiān)控CAN總線上的喚醒事件,當收發(fā)器不接收和發(fā)送信號時,相應的控制器也不工作,網絡靜態(tài)電流約為20MA,因而有效節(jié)電。"正常狀態(tài)"時,當主控制器模塊的睡眠條件出現(xiàn),并且未滿足向"睡眠等待狀態(tài)"進行切換的條件前,主控制器模塊啟動相應主定時器,并向CAN總線網絡上發(fā)送激活控制消息,以保持總線網絡處于"正常狀態(tài)",直至滿足向"睡眠等待狀態(tài)"切換的條件為止。當主控制器模塊處于"喚醒狀態(tài)",并且相應定時器定時過后,滿足向"正常狀態(tài)"切換的條件時,主控制器模塊向CAN總線網絡周期性發(fā)出激活控制消息,使CAN總線網絡進入"正常狀態(tài)"。當主控制器模塊滿足條件由"喚醒等待狀態(tài)"向"正常狀態(tài)"切換時,向CAN總線網絡周期性發(fā)出激活控制消息,使CAN總線網絡進入"正常狀態(tài)"。表1為主節(jié)點(車身控制器BCM)的睡眠條件<table>tableseeoriginaldocumentpage7</column></row><table><table>tableseeoriginaldocumentpage8</column></row><table>表2表3為從節(jié)點(儀表控制器ICU)的睡眠條件<table>tableseeoriginaldocumentpage8</column></row><table>表3從節(jié)點由主節(jié)點喚醒。本文中所描述的具體實施例僅僅是對本發(fā)明精神作舉例說明。本發(fā)明所屬
技術領域:
的技術人員可以對所描述的具體實施例做各種各樣的修改或補充或采用類似的方式替代,但并不會偏離本發(fā)明的精神或者超越所附權利要求書所定義的范圍。權利要求一種車載CAN總線網絡的節(jié)電方法,CAN總線上設有作為節(jié)點的控制器模塊,其特征在于,在程序設定下,本車載CAN總線網絡實現(xiàn)節(jié)電的方法能使控制器模塊在沒有工作需求的情況下進入低功耗模式。2.根據(jù)權利要求l所述的一種車載CAN總線網絡的節(jié)電方法,其特征在于,所述的控制器模塊分為作為主節(jié)點的主控制器模塊和作為從節(jié)點的從控制器模塊,所述的主控制器模塊和從控制器模塊均包括收發(fā)器和具有定時器的控制器,主控制器模塊具有"正常狀態(tài)"、"睡眠狀態(tài)"、"喚醒狀態(tài)"、"喚醒等待狀態(tài)"和"睡眠等待狀態(tài)"這五種狀態(tài),本車載CAN總線網絡實現(xiàn)節(jié)電的方法控制控制器模塊實現(xiàn)狀態(tài)切換包括如下步驟a、主控制器模塊和從控制器模塊上電初始化后首先進入"正常狀態(tài)":在這個狀態(tài)下,主控制器模塊和從控制器模塊的應用程序處于正常模式;當主控制器模塊的睡眠條件出現(xiàn)時,主控制器模塊向從控制器模塊發(fā)送睡眠消息并啟動主定時器計時;若從控制器模塊的睡眠消息接收完畢或等待時間超過主定時器設定時間后,進入步驟b;b、主控制器模塊進入"睡眠等待狀態(tài)"在這個狀態(tài),主控制器模塊沒有應用消息的發(fā)出,只能發(fā)送控制消息;主控制器模塊的收發(fā)器偵聽CAN總線信號并啟動主定時器重新計時;主定時器設定時間內,若有主控制器模塊的喚醒條件的出現(xiàn),則進入步驟c;若在主定時器設定的時間內沒有主控制器模塊的喚醒條件的出現(xiàn),則進入步驟d;C、主控制器模塊進入"喚醒狀態(tài)"在這個狀態(tài),主控制器模塊沒有應用消息的發(fā)出,只能發(fā)送控制消息;主控制器模塊由應用程序重新啟動主定時器并向從控制器模塊發(fā)送喚醒控制消息,喚醒從控制器模塊,使CAN總線保持在"喚醒狀態(tài)";主定時器計時過后,進入"正常狀態(tài)"返回步驟a;d、主控制器模塊進入"睡眠狀態(tài)":在這個狀態(tài),主控制器模塊的控制器進入低功耗模式,并且不能進行CAN總線的通訊;當主控制器模塊檢測到顯性電平時,啟動主定時器,并進入步驟e;若有主控制器模塊的喚醒條件出現(xiàn),則啟動主定時器,并向從控制器模塊發(fā)送喚醒控制消息,返回步驟C;e、主控制器模塊進入"喚醒等待狀態(tài)"在這個狀態(tài),主控制器模塊沒有應用消息的發(fā)出,只能發(fā)送控制消息;在主定時器設定的時間內沒有接收到應用消息,則返回步驟d;若主控制器模塊有喚醒條件出現(xiàn),則啟動主定時器,向從控制器模塊周期性發(fā)送喚醒控制消息,并返回步驟C;若在主定時器設定時間內接收到應用消息,則進入"正常狀態(tài)",返回步驟a。3.根據(jù)權利要求1或2所述的一種車載CAN總線網絡的節(jié)電方法,其特征在于,從控制器模塊接收到睡眠消息后,進入"睡眠狀態(tài)"。4.根據(jù)權利要求1或2所述的一種車載CAN總線網絡的節(jié)電方法,其特征在于,當從控制器模塊的睡眠條件出現(xiàn)時,主控制器模塊向從控制器模塊發(fā)送睡眠消息,從控制器模塊進入"睡眠狀態(tài)"。5.根據(jù)權利要求1或2所述的一種車載CAN總線網絡的節(jié)電方法,其特征在于,從控制器模塊處于"睡眠狀態(tài)"下時,當從控制器模塊的收發(fā)器偵聽CAN總線信號后進入"喚醒等待狀態(tài)"并啟動從定時器計時,在設定時間內接收到主控制器模塊發(fā)出的喚醒控制消息后進入"正常狀態(tài)";在設定時間內未收到喚醒控制消息則返回"睡眠狀態(tài)"。全文摘要本發(fā)明提供了一種車載CAN總線網絡的節(jié)電方法,電子
技術領域:
。它解決了現(xiàn)有的汽車用電設備無論工作與否都向其輸送電能,造成電能浪費的問題。本車載CAN總線網絡的節(jié)電方法,CAN總線上設有作為節(jié)點的控制器模塊,在程序設定下,本車載CAN總線網絡實現(xiàn)節(jié)電的方法能使控制器模塊在沒有工作需求的情況下進入低功耗模式。本車載CAN總線網絡的節(jié)電方法可使各控制器模塊在各種狀態(tài)之間進行切換,使控制器模塊在不需要處理任務的時候處于低功耗狀態(tài)以達到節(jié)電的目的。文檔編號H04L12/40GK101700762SQ20091031011公開日2010年5月5日申請日期2009年11月20日優(yōu)先權日2009年11月20日發(fā)明者丁武俊,朱祝陽,李書福,李亞南,楊健,熊想濤,王建磊,由毅,蔡偉杰,趙福全,鄭士岑,陳文強申請人:浙江吉利汽車研究院有限公司;浙江吉利控股集團有限公司