文章来源:由「百度新聞」平台非商業用途取用"http://www.eepw.com.cn/article/196982.htm"
汽車電子化是現代汽車發展的重要標志。汽車電子的廣泛使用,使現代汽車比以往汽車變得更節能、更安全、更舒適。但當汽車內部電子設備采用傳統的點對點方式連接時,電子設備的不斷增加會導致連線大幅度增加,致使車輛重量隨之增加,并削弱了車輛性能。為適應汽車電子設備迅速增加的需求,汽車電子網絡應運而生。汽車內部已經基本形成了從低速到高速、從電纜到光纖、從有線到無線、從離散ECU的數據通信到中央智能控制的復雜網絡系統。其中,在車身低速電子設備連接方面,低速CAN總線和LIN總線構成的混合網絡正受到越來越廣泛的關注和使用。汽車門鎖作為汽車車身的重要部件之一,實現基于CANLIN網絡的汽車門鎖單元,有助于提高汽車車身的總體電子化水平。本文引用地址:http:www.eepw.com.cnarticle196982.htm汽車門鎖是汽車車身的重要部件之一,從汽車發明至今,經歷了機械式、電氣化至電子化的發展過程。汽車電子門鎖是采用電子電路控制的以電磁鐵、微型電動機和鎖體作為執行機構的機電一體化的安全裝置。采用汽車電子門鎖,駕駛員可以不用金屬鑰匙就能方便地開關汽車車門,而且能有效增強汽車門鎖的安全性能。相對于執行機構,汽車電子門鎖的電子線路部分具有極大的靈活性,由此可以將汽車電子門鎖分為按鍵式、撥盤式、電子鑰匙式、觸摸式、生物特征式等多種類型。其中,采用電子鑰匙的無線遙控鎖具有安全、可靠、方案成熟等優點,因此經常被用作汽車電子門鎖。傳統的汽車電子門鎖采用點對點的方式與汽車車身的其它電子設備互聯,伴隨著汽車電子網絡化的趨勢,汽車電子門鎖開始逐漸采用網絡化的結構。1汽車門鎖模塊的系統結構在本系統中,汽車車身控制網絡采用CANLIN混合結構,按功能劃分可分為各個模塊:除門鎖模塊外,車身系統還包括座椅模塊、控制面板模塊以及燈組模塊。模塊之間通過CAN總線互聯,各個模塊內部使用LIN總線互聯。門鎖模塊是車身電子設備中重要的一部分。通過主節點管理的無線遙控門鎖,可以很便捷地對各個車門的智能電控單元進行控制,同時及時反饋節點運行狀態信息,極大地方便了操作和維護。自動門鎖單元中包括一個主節點和從節點(四個門鎖單元),其結構如圖1所示。主節點作為車身網絡中門鎖模塊的網關,將各種控制命令、車身狀態數據在LIN總線與CAN總線之間轉發,使LIN總線與CAN總線無縫結合為一個整體。門鎖模塊主節點的另一項主要功能是管理門鎖。門鎖采用無線電遙控并結合按鍵控制的控制方式。按鍵安裝在車身內部,當駕駛員處于車身內部時,可以通過按鍵控制車門的開關鎖,此時控制單元不需要進行開鎖密碼檢查。另外,車鎖也可以以無線遙控方式進行控制。該鎖由微型發射機、接收天線和微控制器等組成。微型發射機安裝在鑰匙手柄里,使用鋰電池供電并具有晶體振蕩電路,能發出穩定的約40MHz的載波。密碼信號發生器提供一個調頻代碼,天線接收裝置接收信號后,送入信號接收器進行放大、調頻、檢波和信號波形修正,最后再輸入到比較電路,與主門鎖單元中存儲的密碼進行比較,如果一致就執行開關鎖。主節點通過LIN總線給各個子門鎖控制單元發送命令來控制開關鎖,子節點接收到命令后,觸發電動機傳動機構,操縱車門開鎖或關鎖。若在10分鐘內有15個或更多的密碼輸入錯誤,則系統就認為有人企圖竊車,于是停止接收任何信號,包括正確的密碼信號。系統處于鎖死狀態后,駕駛員必須用車門的機械鑰匙插入車鎖孔,才能開啟車門。系統從鎖死狀態恢復到正常工作狀態,可以通過復位門鎖控制模塊實現。另外,如果開鎖后,30秒后未打開車門,則車門將自動關鎖。子節點通過LIN總線與主節點互聯,接收主節點發送的命令或返回反饋信息。實際使用的門鎖是電機式的自動車門鎖,該鎖由可逆式電動機、傳動裝置及鎖體總成構成。其工作原理是:由電動機帶動齒輪齒條,進而驅動鎖體總成,實現鎖緊或開啟車門。因此,門鎖模塊子節點的功能主要是通過驅動電路控制可逆式電動機的正轉或反轉,實現開關鎖。2汽車門鎖模塊的硬件設計汽車門鎖模塊由主節點和若干子節點構成,如圖2所示。主節點與子節點之間的通信采用LIN總線,LIN總線通信基于標準的SCI(UART)硬件接口、單主多從且不需要穩定時基,僅需要三根線連接(電源線、地線、數據線),有效地降低了硬件成本。微控制器一般都具有SCI(UART)接口,因此只需在微控制器外圍加上LIN總線收發芯片,就能構成一個LIN總線上的通信節點。LIN總線收發器采用Motorola公司的MC33399。MC33399符合LIN規范,能與中速網絡中的多個節點進行數字通信,波形修正可減少EMI干擾。另外,MC33399具有低電流睡眠模式和專門的叫醒輸入管腳,使LIN控制節點可以處于低功耗運行狀態[3]。門鎖單元的主節點的微控制器采用Motorola公司的16位微控制器單元MC9S12DP256。該芯片內部模塊包括16位CPU(HCS12CPU)、256K字節的FlashEEPROM、12.0K字節的RAM、4.0K字節的EEPROM、兩個串行通信接口(SCI)、二十九個數字IO通道、五個CAN2.0AB軟件兼容模型(MSCAN12)等。因此,控制節點無需再外擴存儲單元,IO資源也完全滿足車身控制的需求,CAN通信接口可以直接使用片上自帶的CAN模塊。遙控門鎖采用NORDIC公司的nRF401無線收發芯片。nRF401芯片所需擴展的外圍器件較少,可以直接連接單片機串口發送接收數據,無需對數據進行曼徹斯特編碼,降低了編程和使用的難度。nRF401芯片采用4MHz晶振產生振蕩頻率,經頻率合成器合成為40MHz的工作頻率,天線使用微帶天線直接設計在電路板上,通過Din、Dout接口與MC9S12DP256連接。門鎖單元子節點微控制器采用PHILIPS公司的低成本FLASH單片機P89LPC904。P89LPC904內部自帶1KBFlash程序存儲器、128字節RAM數據存儲器、高精度的內部RC振蕩器(不需要外接振蕩器件),具有兩個通道的8位AD輸入。同時,它具有空閑和掉電兩種不同的掉電節電模式。在LIN總線空閑的時候,系統能切換到節電模式。由于在應用中要驅動小馬達,門鎖單元需要使用到Motorola的H-bridge電機驅動芯片。微控制器的輸出接口不能直接驅動電機,需要通過MC33887的電源IC芯片給門鎖單元提供驅動能力。在電機驅動過程中,也會把電流值適時地轉換成電壓信號反饋給P89LPC904,供門鎖控制中的故障檢測之用。3車鎖模塊的軟件設計系統軟件設計包括主節點與子節點兩部分。車鎖模塊主節點通過CAN總線接收車身網絡總控制單元的控制命令,并返回當前車鎖的開關狀態以及故障信息。同時,它向車鎖模塊的子節點發送控制命令,接收狀態信息。主節點需要對CAN和LIN總線間的數據幀進行合適的轉換。系統中的CAN總線采用CAN2.0B標準幀格式通信。標準格式的CAN2.0B數據幀包括仲裁場、控制場、數據場三部分。SOF(幀起始)標志數據幀和遠程幀的開始,由一個顯位構成。仲裁場由標識符和RTR(遠程發送請求位)組成。RTR在數據幀為顯位,而在遠程幀中必須為隱位,門鎖單元主節點的標識符為0x50。控制場中,標準幀的IDE位為顯位,r0為保留位,DLC為數據長度碼[4]。CAN2.0B標準幀格式如圖3所示。LIN總線通信通過報文幀進行,報文幀格式如圖4所示。同步間隙表示新報文幀的開始,同步間隙由主任務(主節點內)產生。同步場的字節域為0x55。從任務總是能檢測到同步間隙以及同步場字節流。如果檢測到新的同步間隙、同步場,則中止正在進行的傳輸任務,而開始新的報文幀傳輸。報文頭的標識符由6bit組成,取值范圍為0到63。除去少數保留特定用途之外,均可以用作通信ID,門鎖單元中的LIN節點的標識符分配如表1所示。主節點通過LIN總線發送LOCK_DOOR幀給各個門鎖單元,其中包括對門鎖的鎖定解鎖命令。子節點接收報文幀后,解析幀中的數據域,數據域中的第一字節標記解鎖指令,bit0對應左前門,bit1對應右前門,bit2對應左后門,bit3對應右后門。第二字節標記鎖定指令,對應關系與解鎖指令相同。兩個后門鎖LOCK_R_L和LOCK_R_R則發送響應幀LOCK_DOOR_RL_STATUS和LOCK_DOOR_RR_STATUS來向主節點反饋系統故障和門鎖馬達執行時的故障信息。兩個前門鎖除了發送這些信息外,還發送門鎖開關狀態信息給主節點,主節點利用這些信息可以再次產生鎖定解鎖命令。另外,主節點通過CAN總線接收到車身總控制單元的遠程幀后,需回復數據幀,通知總控制單元當前各個門鎖狀態。當門鎖單元由于輸入錯誤密碼而處于死鎖狀態時,接收到總控制單元的復位命令幀后,門鎖單元主節點恢復接收密碼信號。遙控門鎖與鑰匙之間通過簡單的通信協議進行開關鎖,包括一個字節的幀頭0x80、2bit的命令、6bit的幀長、數據域以及校驗和。對于遙控開關鎖命令的數據域即開關鎖命令密碼,需要進行一定的加密。實際上,遙控門鎖和鑰匙各持有一個密鑰,鑰匙首先從遙控門鎖處獲取一個隨機生成的明鑰,然后利用明鑰和密鑰對車門密碼進行加密,然后發送給遙控門鎖,遙控門鎖根據明鑰和密鑰對接收數據進行解密,獲得密碼后驗證正誤。基于安全可靠方面的考慮,發送明鑰、發送密碼等一系列過程都是基于連接的通信。遙控開關鎖命令幀格式如圖5所示。命令字段劃分為:0x00請求獲得明鑰,0x01發送密碼開鎖,0x02發送密碼關鎖。主節點應用程序基于COS實時操作系統。MC9S12DP256微控制器上已移植了COS實時操作系統,COS內核小巧、高效,對系統性能開銷很小;而且基于多任務的操作系統開發應用程序可使得開發更為快捷、容易,同時增強了可移植性。主節點功能劃分為不同任務各自獨立執行。主節點在完成對CAN、LIN通信接口以及nRF401芯片的初始化后,創建任務進程OS_CAN_PROCESS、OS_LIN_PROCESS、OS_WIRELESS_PROCESS并使它們等待信號量,獲得信號量后執行各自的操作。其中,它們等待的信號量由相應的中斷處理程序發出,驅動各個任務執行,執行完任務后,繼續在信號量上等待。OS_MAIN_TASK是主節點的主任務,等待消息隊列,根據返回的消息來區分不同的操作狀態。OS_CAN_PROCESS與OS_LIN_PROCESS為CAN、LIN總線的數據接收任務,接收數據后放入緩沖區,并設置狀態位,然后通過消息隊列通知OS_MAIN_TASK進行適當的處理。CAN、LIN總線數據發送則直接通過OS_MAIN_TASK發起。OS_WIRELESS_PROCESS管理無線通信的連接。無線連接具有多個狀態,包括LISTEN、CONNECTED、FIRST_SEND、CLOSED等,分別代表等待連接、連接建立、明鑰已發送、連接關閉。無線連接狀態切換時需要通過消息隊列通知OS_MAIN_TASK,主任務根據不同連接狀態進行管理控制。OS_MAIN_TASK任務流程如圖6所示。子節點程序相對簡單,同時子節點控制芯片的能力較弱,因此程序設計基于前后臺方式。子節點通過LIN總線接收主節點的命令幀后,通過驅動電路帶動電機開關鎖。在開關鎖的過程中監控電機電流,檢查是否發生故障,并返回汽車門鎖狀態信息以及故障情況。子節點的工作流程如圖7所示。隨著汽車的電子網絡化發展,低成本的LIN網絡將會得到越來越廣泛的應用。本文介紹并實現的基于CANLIN混合網絡的自動門鎖控制模塊是汽車車身控制中的典型應用,它提高了車身整體的自動化程度,有著良好的應用前景。
關鍵字標籤:密碼門鎖廠商
|