采用CAN總線的轎車車窗智能控制系統(tǒng)實現(xiàn)原理
3 系統(tǒng)硬件設(shè)計
系統(tǒng)左前節(jié)點單元除具有全局控制外,其余節(jié)點單元只負(fù)責(zé)控制本地車窗,硬件設(shè)計僅多一個按鍵K4,主要在于軟件設(shè)計。該系統(tǒng)設(shè)計的控制電路不僅支持節(jié)點單元間的CAN總線通信,還要檢測壓電傳感器和負(fù)載電流等模擬量,判斷各種邏輯,通過驅(qū)動器實現(xiàn)控制功能。
該系統(tǒng)采用片內(nèi)含有CAN控制器的P8xC591作為節(jié)點單元主控制器。P8xC591采用強(qiáng)大的80C51指令集;內(nèi)部集成有SJAl000 CAN控制器的PeliCAN功能;全靜態(tài)內(nèi)核提供了擴(kuò)展的節(jié)電方式:振蕩器停止和恢復(fù)而不丟失數(shù)據(jù);改進(jìn)的1:l內(nèi)部時鐘分頻器在12 MHz外部時鐘頻率時實現(xiàn)500ns指令周期。
控制器P8xC2591讀取按鍵信息,驅(qū)動車窗電機(jī)按預(yù)先編制的軟件指令運行,同時監(jiān)測傳感器的輸出電壓和負(fù)載電流,作為車窗在上升(下降)過程中與障礙物夾持時的邏輯判斷,然后驅(qū)動電機(jī)。為了防止車窗玻璃上升到頂部或下降到底部時,電動機(jī)受到?jīng)_擊堵轉(zhuǎn)而降低電動車窗機(jī)械的使用壽命,該系統(tǒng)設(shè)計具有軟停止功能,并且手動或自動上升、下降時都有此功能。當(dāng)玻璃上升(下降)快到頂(底)部時,在上升軟停止點切斷電動機(jī)的電源使其停止工作,通過電動機(jī)的慣性使玻璃上升(下降)到頂(底)部。
各節(jié)點單元相關(guān)命令和狀態(tài)通過CAN控制器以報文格式由CAN總線完成與其他節(jié)點單元信息間的傳輸和共享。系統(tǒng)節(jié)點單元硬件設(shè)計框圖如圖3所示。
電機(jī)驅(qū)動電路采用汽車電子專用的電機(jī)驅(qū)動器MC33486。該器件帶有兩個雙高端開關(guān)和兩個預(yù)驅(qū)動低端開關(guān),其低端開關(guān)可外接兩個MOSFET管,可連續(xù)輸出10 A的電流。同時能夠采集電機(jī)電流,利用它反饋給單片機(jī)A/D轉(zhuǎn)換采樣模塊得到電機(jī)電流值,完成電機(jī)控制,實現(xiàn)車窗堵轉(zhuǎn)和防夾功能。系統(tǒng)通過濾波電容降低噪聲的耦合,收發(fā)器PCA82C250與CAN總線之間加接光電隔離器6N137,采用DC—DC變換器隔離電源,總線兩端接終端電阻以消除反射信號。
4 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件設(shè)計目主要包括CAN控制器初始化、節(jié)點發(fā)送接收報文和主控程序3個模塊。
4.1 CAN控制器初始化
CAN控制器上電或硬件復(fù)位后必須初始化,包括操作模式、驗收濾波器、總線位定時、中斷和配置TXDC輸出引腳。
4.2 節(jié)點發(fā)送/接收報文
報文的發(fā)送由CAN控制器遵循CAN協(xié)議規(guī)范自動完成。首先CPU必須將待發(fā)送的數(shù)據(jù)按特定格式組合成一幀報文,進(jìn)入CAN控制發(fā)送緩沖器中,并置位命令寄存器中的發(fā)送請求標(biāo)志,發(fā)送處理可通過中斷請求或查詢狀態(tài)標(biāo)志進(jìn)行控制。其發(fā)送程序分發(fā)送遠(yuǎn)程幀和數(shù)據(jù)幀兩種,遠(yuǎn)程幀無數(shù)據(jù)場。
報文的接收程序負(fù)責(zé)節(jié)點報文的接收以及總線關(guān)閉、錯誤報警、接收溢出等其他情況處理。報文的收發(fā)主要有中斷接收方式和查詢接收方式。軟件設(shè)計采用報文接收的查詢中斷控制方式和報文發(fā)送的中斷控制方式。報文的發(fā)送/接收程序流程如圖4所示。
評論