首頁 > 新聞係統 > 傳感器 > 傳感器技術 正文 > 論壇 返回 打印

基於LIN總線的車用無刷直流電機控製器設計

       1、前言

       隨著汽车部件的電動化、自動化程度不斷提高和對汽車電機的噪聲、電磁兼容、效率的高要求,永磁無刷直流電機正在逐步替代有刷的永磁直流電機 。永磁無刷電機具有體積小、壽命長、效率高、結構簡單、可靠性好等優點,利用它作為汽車部件的驅動執行元件可有效地提高汽車部件的性能。例如在Freightliner公司的M2係列商務車上,采用無刷電機驅動其空調係統的鼓風機,更好地調節了送風速度 。

       由於汽車總線技術的日趨成熟,汽車內多個電機單元的控製方式正從傳統的集中式線束控製向分布式總線控製轉變。分布式總線控製可以減少線束,降低成本,便於各個電機控製單元和車內其它電控單元一起形成一個綜合協調的控製係統,提高各控製單元的運行可靠性,減少冗餘的傳感器及相應的軟硬件配置,實現信息交換和資源共享。目前常用的汽車總線包括CAN、LIN等,其中LIN麵向低速場合的應用。作者設計基於LIN总线的无刷直流电机控制器,該控製器以文獻中介紹的MC68HC908MR16單片機、PC33896前置驅動器、MC33399LIN收發器為核心構成,以低廉的成本獲得了較好的控製性能。

        2、基於LIN總線的無刷直流電機控製係統

       LIN總線是一種新型的低成本汽車車身總線,1999年由歐洲汽車製造商Audi、BMW、Daimler2Chrysler、Volvo、Volkswagen、VCT等公司和半導體廠商Motorola共同組成的LIN協會推出,從2003年開始投入使用。

       LIN總線使用串行通信協議,它有下麵的特性:單主機多從機組織(即無需總線仲裁) ; 基於普通UART/SCI接口的低成本硬件實現,低成本軟件或作為純狀態機;從機節點不需要石英或陶瓷諧振器即可以實現自同步;保證信號傳輸的延遲時間;低成本的單線通信介質,通信速率最大可達20kb/s。一個LIN網絡由1個主節點、最多不超過15個從節點組成。所有節點都有一個從機任務,從機任務分為接收任務和發送任務,主節點還有一個主機任務。LIN網絡上的通信總是由主機任務所發起,主機任務傳輸報文幀頭,報文幀頭包括同步間隔場、同步場和標誌符場;從機任務作出報文響應,報文響應包括2、4或8字節的數據場和校驗場,報文幀頭和報文響應組成完整的報文幀。

       LIN總線作為CAN總線的補充,主要用於車身控製。車身網絡主要連接對象有座椅、車門、空調和儀表顯示等係統。基於LIN總線的全自動空調係統結構框圖如圖1 所示。其中空調中央控製單元起CAN /LIN網關和LIN主節點的作用,其他單元為從節點,分為傳感器從節點和執行從節點。傳感器從節點將溫度、濕度、日照強度等環境狀態值發送給主節點,主節點根據這些狀態值以及駕駛員設定的車內溫度等參數進行綜合決策,向執行從節點傳達控製命令,執行從節點依據命令進行相應的動作。這樣的空調係統有效實現節點的分布式控製,減少汽車上的安裝線束,同時實現真正的全自動控製,使得空調係統各部件協調運行,從而使室內溫度達到並保持在駕駛員設定值上,創造一個舒適的室內環境。由於無刷直流電機擁有良好的調速性能,所以空調係統中一些執行從節點把它作為驅動部件,如壓縮機、鼓風機、冷卻風扇等。這些從節點分別和主節點之間構成了基於LIN總線的無刷直流電機速度閉環控製,主節點通過決策算法給定電機轉速,轉速的反饋和控製算法由從節點來完成,從節點即是作者所要設計的控製器。


圖1 基於LIN總線的空調係統

       3、控製器硬件結構

       控製器結構框圖如圖2所示,圖中包括:電源管理模塊、MC68HC908MR16 單片機控製模塊、PC33896 前置驅動模塊、三相FET 全橋模塊、MC33399LIN物理層通信模塊。


圖2 控製器結構框圖

       霍爾傳感器檢測電機轉子的位置,它是3個脈寬為180°(電角度) 、互差120°(電角度)的信號。單片機的定時器輸入捕捉單元捕捉到位置信號的變化,實現定子繞組電流的換向,確保定子產生的磁場與轉子永磁磁場保持平均的垂直關係,以利產生最大轉矩。同時,通過定時器記錄的2次換向之間的時間間隔,可計算出電機的轉速,根據目標轉速與計算轉速之間的差值通過PI算法調節PWM占空比,從而控製電機的轉速。電機的目標轉速、起/停、正/反轉等信息來自LIN總線的報文幀。

        3.1 電源管理模塊

       現代汽車內部的電氣負載不斷增加,未來汽車上將采用42V電係代替現有的12V 電係供電。但要完全實現這一轉變,還有諸多問題尚未解決,現主要采用42V /12V的雙電源供電來作為一種過渡方案。作者設計的控製器考慮這一發展趨勢,在12V的電機應用中,控製器采用單12V電源供電;在42V的電機應用中,控製器采用42V /12V 雙電源供電。同時電源管理模塊中含有一塊12V /5V的電源調壓芯片LT1211。

       3.2 單片機控製模塊

       單片機控製模塊以MC68HC908MR16單片機為核心,它是一款專門用於電機控製的8 位單片機。工作溫度範圍達到- 40~105℃,完全適應汽车內的工作環境。片內帶有12位、6通道PWM模塊,產生6路PWM邏輯信號(可設定為6路獨立或者3對兩兩互補) ;定時器A的0, 1, 2三個通道用來捕捉位置傳感器信號的變化,通道3負責記錄通道2的位置信號產生變化的時刻; 10位A /D轉換器,轉換時間為16 - 17μs,能快速完成電池電壓監測任務;出錯信號輸入,用於發生在過流或過熱的情況下產生中斷,進而封鎖PWM輸出;特有的快速8位乘法和16位除法指令,使得它具有較高的運算能力,能完成較為複雜的控製算法; 768B 片內RAM 和16kB 片內Flash存儲器,具有在線編程能力和保密功能;係統保護特性,包括看門狗複位、低電壓禁止複位等增強了程序的穩定性和可靠性。

        3.3 前置驅動模塊

       前置驅動模塊的核心是PC33896,它是新推出的專用於汽車電子42V /12V 係統的三相FET前置驅動器。片內含有DC /DC降壓電路、電流采樣放大器、SPI 通信口及各種保護電路等。PC33896直接接收來自單片機的6路PWM邏輯信號,將其轉換成用來驅動6個FET柵極的驅動信號。若汽車係統供電電壓是新的42V電係,片內的DC /DC將之降到大約15V 左右用於FET柵極電路驅動,節省了開通和關斷FET所耗散的功率;若汽車電源供電電壓采用的是現行的12V電係,某些場合電源電壓會不足以驅動FET柵極,此時電荷泵電路將之提升到至少10V左右,確保FET的正常驅動。內部電流采樣放大器用來測量直流母線電流。單片機能通過SP I口發送指令,配置PC33896 (如DC /DC和電荷泵的工作與否、電流放大器的放大倍數等)以及診斷其故障。

        3.4 LIN物理層通信模塊

        MC33399是麵向汽車電子應用的LIN收發器芯片,它和單片機的SCI口構成LIN通信的物理基礎。它有正常和睡眠兩種工作模式,總線上的喚醒幀可將其從睡眠模式喚醒。

       4、控製器的軟件設計

        由於單片機的內嵌硬件模塊和PC33896功能較強,使單片機有足夠的資源完成較為複雜的控製策略,從而使控製器的性能大大提高。

       4.1 主程序結構

       係統的程序采用前後台結構。前台是中斷級,後台是任務級。任務級由一個死循環和一個LIN通信服務程序構成。死循環內包含一個有限狀態機和一個10ms服務程序,有限狀態機如圖3所示。係統上電,完成初始化任務後進入死循環。一旦發生SCI接收中斷,中斷服務程序判斷接收到的是否為同步間隔場。若為同步間隔場,程序在退出中斷服務時並不返回到死循環中,而是進入LIN通信服務程序,進行報文幀的接收和處理。完成通信服務後,程序重新返回死循環。依據接收的報文幀,有限狀態機切換到相應的狀態。為保護電機,圖中正轉態和反轉態之間的轉換強製經曆了中間的停止態過渡。當發生過流或者低電壓等出錯事件時,控製器進入出錯態,它關斷所有PWM輸出,並記錄錯誤代碼。控製器接收到總線的睡眠幀後,進入睡眠態,總線的喚醒信號將重新激活控製器。在正轉態或反轉態時,死循環內的10ms服務程序每間隔10ms執行一次,完成電機轉速計算、PI控製算法、電池電壓讀取等任務。


圖3 主程序有限狀態機

       4.2 LIN通信報文幀的定製

       LIN总线是一種主從機通信模式,報文幀的定製在LIN網絡軟件總體設計時進行。文中的无刷直流电机控制器是總線上的一個從節點,它響應的報文幀如表1所示。標誌符“0x3C”是下載命令幀,用於主節點向所有從節點廣播命令和數據,其中第一個數據字節為“00”的是睡眠幀。標誌符“0x3D”是上傳命令幀,它觸發一個從節點(由一個優先的下載幀編址)向主機上傳數據。標誌符“0x20”是無刷電機控製幀,用於控製器接收主節點的控製信息,第一個數據字節為“01”要求電機正轉,為“02”是反轉,為“04”是停止,第三、第四兩個數據字節是電機轉速的給定值。標誌符“0x21”是電機狀態幀,用於控製器向主節點傳輸信息,第一、第二兩個數據字節是電機的實際轉速,第三、第四兩個字節表示電池電壓。

表1 控製器響應的LIN報文幀

       4.3 軟件中的中斷服務程序

       4.3.1 定時器A0、A1、A2輸入捕捉中斷( inputcap2ture ISR1)

       當定時器A0、A1、A2監測到位置信號有跳變沿時,引起輸入捕捉中斷inputcap ture ISR1。中斷程序中通過讀取3個引腳的當前電平,並結合前一次中斷中讀入的值,查詢換向表完成換向。

       4.3.2 定時器A3輸入捕捉中斷( inputcap ture ISR2)

       定時器A3監測到A2 通道的位置信號有上升沿跳變時,引起輸入捕捉中斷inputcap ture ISR2。中斷程序讀取定時器A3通道捕捉寄存器的當前值,結合前一次中斷中讀入的值和定時器A的溢出次數,算出一個位置脈衝周期內對定時器A的高頻時鍾脈衝的計數,結果用於速度的計算。

       4.3.3 定時器B溢出中斷(TIMERB ISR)

       定時器B每隔10ms溢出中斷一次,中斷程序中置位標誌位timerflag,從而使得主程序死循環內的10ms服務程序能被執行。

       定時器A3、定時器B的中斷允許在LIN通信服務程序中被關閉,而換向中斷被保留,從而保證了通信的可靠性和電機的運行穩定。

       5、試驗結果

       采用所設計的控製器,以一台無刷直流電機(其規格等同於額定電壓為48V、額定功率為150W 的客車空調鼓風機驅動用無刷電機)為試驗對象,試驗圖如圖4所示。


圖4 試驗圖

       圖4中控製器采用42V /12V雙電壓供電。LIN圖4 試驗圖總線的主節點由PC機來模擬,它通過RS232 串口經由一塊RS232轉LIN的接口卡PC card與LIN总线相連,其LIN 通信的軟件利用Labview界麵環境開發。

       實際運行結果表明:電機能快速起動、製動、準確及時跟蹤主節點的給定速度,控製器運行穩定、可靠,能滿足實時控製的要求。

       6、結論

       作者所設計基於LIN總線的无刷直流电机控制器,硬件電路結構簡單,兼容未來汽车的42V供電電係,具有高的性價比。此外,由於LIN總線是一種開放的協議,該控製器不僅適用於汽車電子領域,還可用於工業控製、家電等其他領域。



http://www.autooo.net/autooo/chuangan/jishu/2007-12-06/42086.html