基于MC9S08DZ60的AMT手柄ECU的設(shè)計(jì)
本設(shè)計(jì)中,手柄ECU可以通過(guò)CAN總線向AMT_ECU傳遞駕駛員的駕駛意圖,AMT的ECU根據(jù)手柄ECU所傳遞的報(bào)文信息控制變速器進(jìn)行換擋動(dòng)作。同時(shí),AMT的ECU也可以通過(guò)CAN總線把變速器的當(dāng)前狀態(tài)(例如檔位狀態(tài)和故障狀態(tài))傳送給換擋手柄電路。駕乘人員通過(guò)換擋手柄選擇當(dāng)前期望的擋位,手柄ECU根據(jù)接收到霍爾傳感器傳遞的手柄位置信息,執(zhí)行輸入信號(hào)處理,并將處理后的擋位信息通過(guò)CAN總線發(fā)送給AMT的ECU,傳遞駕駛員的駕駛意圖。AMT的ECU根據(jù)手柄ECU所傳遞的報(bào)文信息控制變速器的換擋動(dòng)作。由于自身有單片機(jī)作為處理單元,可以采用CAN/LIN總線的方式與TCU通信,基本不占用TCU的接口資源。當(dāng)信號(hào)采集電路出現(xiàn)問(wèn)題時(shí),單片機(jī)可自行診斷,簡(jiǎn)單故障甚至可代替TCU進(jìn)行處理[1]。本設(shè)計(jì)控制電路結(jié)構(gòu)簡(jiǎn)單、成本低廉、功能強(qiáng)。
1 硬件設(shè)計(jì)
本設(shè)計(jì)硬件電路是以MC9S08DZ60微控制器為核心,主要包括單片機(jī)外圍電路、電源轉(zhuǎn)換電路、開(kāi)關(guān)量輸出處理電路以及CAN通信電路。
1.1 單片機(jī)最小系統(tǒng)
由于手柄ECU系統(tǒng)小但功能全,因此采用摩托羅拉公司的8位微控制器MC9S08DZ60。該微控制器尺寸小、成本低、功能強(qiáng)大、資源齊全,具有很高的性能價(jià)格比,適合汽車(chē)手柄換擋的功能要求以及汽車(chē)的運(yùn)行環(huán)境。其主要資源包括:一個(gè)CAN模塊、一個(gè)串行外設(shè)接口SPI模塊、兩個(gè)串行通信接口SCI模塊、多達(dá)24通道的12 bit的A/D轉(zhuǎn)換模塊、一個(gè)基本時(shí)鐘模塊、60 KB的片上Flash、4 KB的片上RAM、2 KB的E2PROM、看門(mén)狗定時(shí)器(COP Watch-dog),另外還有I2C總線模塊和多個(gè)定時(shí)器、計(jì)數(shù)器等。該控制器采用PLL鎖相環(huán)技術(shù),能夠產(chǎn)生最高40 MHz的總線頻率。其獨(dú)特的片上仿真/調(diào)試模塊(BDC)更是大大簡(jiǎn)化了設(shè)計(jì),從而確保了MC9S08DZ60在本設(shè)計(jì)中的應(yīng)用地位[3]。其外圍電路如圖1所示。
1.2 電源模塊
該模塊采用7805(U1)芯片實(shí)現(xiàn)+12 V轉(zhuǎn)換成+5 V,MIC29510-3.3(U2)芯片實(shí)現(xiàn)+5 V轉(zhuǎn)換+3.3 V,從而滿足了整個(gè)系統(tǒng)的供電,包括單片機(jī)的供電。其電路圖如圖2。
1.3 開(kāi)關(guān)量處理模塊
為了使開(kāi)關(guān)量輸入信號(hào)更加可靠,每一個(gè)開(kāi)關(guān)量的輸入都要通過(guò)上拉、限流等處理后送入單片機(jī)。當(dāng)手柄選到期望擋位、進(jìn)入霍爾傳感器的磁柵范圍內(nèi)時(shí),傳感器輸出的高電平信號(hào)為+3.3 V;其余傳感器輸入端的磁柵范圍內(nèi)沒(méi)有接通的,輸出低電平信號(hào)為0 V。本設(shè)計(jì)采用的霍爾傳感器輸入電壓為+12 V。
1.4 CAN通信電路
本設(shè)計(jì)作為整車(chē)分布式控制系統(tǒng)的一個(gè)節(jié)點(diǎn),與其他車(chē)載控制器通信采用CAN網(wǎng)絡(luò)通信。本設(shè)計(jì)采集系統(tǒng)狀態(tài)量,并通過(guò)CAN命令消息上傳給整車(chē)控制器進(jìn)行工作,CAN收發(fā)器采用PHILIPS公司的PCA82C250收發(fā)器。其硬件電路如圖3所示。
同時(shí),本設(shè)計(jì)還預(yù)留了一個(gè)開(kāi)關(guān)量輸出電路,它與CAN總線的功能相同。其電路如圖4,其中包括執(zhí)行機(jī)構(gòu)驅(qū)動(dòng)電路。
2 軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)主要包括數(shù)據(jù)采集存儲(chǔ)和CAN通信兩大模塊。
2.1 CAN通信模塊
MC9S08DZ60內(nèi)部集成了應(yīng)用CAN 2.0A/B協(xié)議的CAN控制器,包含5個(gè)先進(jìn)先出的接收寄存器、3個(gè)使用本地優(yōu)先級(jí)的發(fā)送寄存器。在ID識(shí)別方面提供了64 bit的掩碼寄存器,可分用為2個(gè)32 bit的滿值寄存器,或4個(gè)16 bit、8個(gè)8 bit的寄存器,這使總線上的消息尋址更加靈活方便。為滿足低功耗需求,該模塊提供睡眠、掉電和MSCAN使能3種模式[5]。
CAN總線中的數(shù)據(jù)幀由7個(gè)不同的位場(chǎng)組成:幀起始、仲裁場(chǎng)、控制場(chǎng)、數(shù)據(jù)場(chǎng)、CRC場(chǎng)、應(yīng)答場(chǎng)、幀結(jié)尾。其中數(shù)據(jù)場(chǎng)的長(zhǎng)度可以為0,但模塊封裝的幀最多不超過(guò)8個(gè)字節(jié)。根據(jù)仲裁位的不同可分為標(biāo)準(zhǔn)幀(11 bit標(biāo)識(shí)符)和擴(kuò)展幀(29 bit標(biāo)識(shí)符)。擴(kuò)展幀格式包括4個(gè)ID寄存器IRD0~I(xiàn)RD3,8個(gè)數(shù)據(jù)寄存器DSR0和1個(gè)數(shù)據(jù)長(zhǎng)度寄存器DLR,其中IRD0首位是ID28,IRD3末位是ID0。兩者之間還存有信號(hào)標(biāo)識(shí)位SRR、IDE和RTR[4]。
2.2 CAN通信協(xié)議
CAN總線的通信采用主叫輪詢方式。由于CAN的限制,每個(gè)網(wǎng)絡(luò)內(nèi)子節(jié)點(diǎn)不宜超過(guò)1 000個(gè),這里取10 bit作為源和目的設(shè)備的ID標(biāo)識(shí)。因?yàn)镮D28只能為1,這里規(guī)定ID27~I(xiàn)D18為幀源ID,而ID17~I(xiàn)D8為幀目的ID。因?yàn)橥ㄐ判枰獋鬏數(shù)臄?shù)據(jù)多于8個(gè)字節(jié),這里把DSR0作為傳輸多幀數(shù)據(jù)的總幀數(shù)寄存器,把DSR1作為傳輸多幀數(shù)據(jù)的當(dāng)前幀數(shù)寄存器,DSR2作為幀功能寄存器,DSR3~DSR6傳輸數(shù)據(jù),DSR7為校驗(yàn)寄存器[2]。
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評(píng)論