基于MC9S08DZ60的AMT手柄ECU的設計
本設計中,手柄ECU可以通過CAN總線向AMT_ECU傳遞駕駛員的駕駛意圖,AMT的ECU根據手柄ECU所傳遞的報文信息控制變速器進行換擋動作。同時,AMT的ECU也可以通過CAN總線把變速器的當前狀態(例如檔位狀態和故障狀態)傳送給換擋手柄電路。駕乘人員通過換擋手柄選擇當前期望的擋位,手柄ECU根據接收到霍爾傳感器傳遞的手柄位置信息,執行輸入信號處理,并將處理后的擋位信息通過CAN總線發送給AMT的ECU,傳遞駕駛員的駕駛意圖。AMT的ECU根據手柄ECU所傳遞的報文信息控制變速器的換擋動作。由于自身有單片機作為處理單元,可以采用CAN/LIN總線的方式與TCU通信,基本不占用TCU的接口資源。當信號采集電路出現問題時,單片機可自行診斷,簡單故障甚至可代替TCU進行處理[1]。本設計控制電路結構簡單、成本低廉、功能強。
1 硬件設計
本設計硬件電路是以MC9S08DZ60微控制器為核心,主要包括單片機外圍電路、電源轉換電路、開關量輸出處理電路以及CAN通信電路。
1.1 單片機最小系統
由于手柄ECU系統小但功能全,因此采用摩托羅拉公司的8位微控制器MC9S08DZ60。該微控制器尺寸小、成本低、功能強大、資源齊全,具有很高的性能價格比,適合汽車手柄換擋的功能要求以及汽車的運行環境。其主要資源包括:一個CAN模塊、一個串行外設接口SPI模塊、兩個串行通信接口SCI模塊、多達24通道的12 bit的A/D轉換模塊、一個基本時鐘模塊、60 KB的片上Flash、4 KB的片上RAM、2 KB的E2PROM、看門狗定時器(COP Watch-dog),另外還有I2C總線模塊和多個定時器、計數器等。該控制器采用PLL鎖相環技術,能夠產生最高40 MHz的總線頻率。其獨特的片上仿真/調試模塊(BDC)更是大大簡化了設計,從而確保了MC9S08DZ60在本設計中的應用地位[3]。其外圍電路如圖1所示。

1.2 電源模塊
該模塊采用7805(U1)芯片實現+12 V轉換成+5 V,MIC29510-3.3(U2)芯片實現+5 V轉換+3.3 V,從而滿足了整個系統的供電,包括單片機的供電。其電路圖如圖2。

1.3 開關量處理模塊
為了使開關量輸入信號更加可靠,每一個開關量的輸入都要通過上拉、限流等處理后送入單片機。當手柄選到期望擋位、進入霍爾傳感器的磁柵范圍內時,傳感器輸出的高電平信號為+3.3 V;其余傳感器輸入端的磁柵范圍內沒有接通的,輸出低電平信號為0 V。本設計采用的霍爾傳感器輸入電壓為+12 V。
1.4 CAN通信電路
本設計作為整車分布式控制系統的一個節點,與其他車載控制器通信采用CAN網絡通信。本設計采集系統狀態量,并通過CAN命令消息上傳給整車控制器進行工作,CAN收發器采用PHILIPS公司的PCA82C250收發器。其硬件電路如圖3所示。

同時,本設計還預留了一個開關量輸出電路,它與CAN總線的功能相同。其電路如圖4,其中包括執行機構驅動電路。
2 軟件設計
系統軟件設計主要包括數據采集存儲和CAN通信兩大模塊。
2.1 CAN通信模塊
MC9S08DZ60內部集成了應用CAN 2.0A/B協議的CAN控制器,包含5個先進先出的接收寄存器、3個使用本地優先級的發送寄存器。在ID識別方面提供了64 bit的掩碼寄存器,可分用為2個32 bit的滿值寄存器,或4個16 bit、8個8 bit的寄存器,這使總線上的消息尋址更加靈活方便。為滿足低功耗需求,該模塊提供睡眠、掉電和MSCAN使能3種模式[5]。
CAN總線中的數據幀由7個不同的位場組成:幀起始、仲裁場、控制場、數據場、CRC場、應答場、幀結尾。其中數據場的長度可以為0,但模塊封裝的幀最多不超過8個字節。根據仲裁位的不同可分為標準幀(11 bit標識符)和擴展幀(29 bit標識符)。擴展幀格式包括4個ID寄存器IRD0~IRD3,8個數據寄存器DSR0和1個數據長度寄存器DLR,其中IRD0首位是ID28,IRD3末位是ID0。兩者之間還存有信號標識位SRR、IDE和RTR[4]。
2.2 CAN通信協議
CAN總線的通信采用主叫輪詢方式。由于CAN的限制,每個網絡內子節點不宜超過1 000個,這里取10 bit作為源和目的設備的ID標識。因為ID28只能為1,這里規定ID27~ID18為幀源ID,而ID17~ID8為幀目的ID。因為通信需要傳輸的數據多于8個字節,這里把DSR0作為傳輸多幀數據的總幀數寄存器,把DSR1作為傳輸多幀數據的當前幀數寄存器,DSR2作為幀功能寄存器,DSR3~DSR6傳輸數據,DSR7為校驗寄存器[2]。
霍爾傳感器相關文章:霍爾傳感器工作原理
霍爾傳感器相關文章:霍爾傳感器原理
評論