<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 無刷直流電機在汽車系統(tǒng)的設計

          無刷直流電機在汽車系統(tǒng)的設計

          作者: 時間:2016-11-09 來源:網絡 收藏

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

          本文引用地址:http://www.ex-cimer.com/article/201611/317978.htm

            2、基于LIN總線的無刷直流電機控制系統(tǒng)

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

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

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

            

            圖1 基于LIN總線的空調系統(tǒng)

            3、控制器硬件結構

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

            

            圖2 控制器結構框圖

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

            3.1 電源管理模塊

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

            3.2 單片機控制模塊

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

            3.3 前置驅動模塊

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

            3.4 LIN物理層通信模塊

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

            4、控制器的軟件設計

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

            4.1 主程序結構

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

            

            圖3 主程序有限狀態(tài)機

            4.2 LIN通信報文幀的定制

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

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

            

            4.3 軟件中的中斷服務程序

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

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

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

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

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

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

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

            5、試驗結果

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

            

            圖4 試驗圖

            圖4中控制器采用42V /12V雙電壓供電。LIN圖4 試驗圖總線的主節(jié)點由PC機來模擬,它通過RS232 串口經由一塊RS232轉LIN的接口卡PC card與LIN總線相連,其LIN 通信的軟件利用Labview界面環(huán)境開發(fā)。

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

            6、結論

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



          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();