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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于OSEK/VDX的電動助力系統(tǒng)設計

          基于OSEK/VDX的電動助力系統(tǒng)設計

          作者:燕山大學 臧懷泉 田超 劉敏 時間:2008-08-11 來源:單片機與嵌入式系統(tǒng)應用 收藏

            3 軟件設計

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

            隨著應用進一步復雜化和對性、可靠性要求的提高,為了合理調度多種任務并利用系統(tǒng)資源,基于進行軟件設計逐漸成為了嵌入式系統(tǒng)設計開發(fā)的主流。當前嵌入式有數(shù)百種,它們各具特色。開放源碼的嵌入式實時在成本和技術上具有獨特的優(yōu)勢,并占有越來越重要的地位。本文選擇開源的嵌入式實時操作系統(tǒng)PICOS18作為的軟件開發(fā)平臺。PICOS18是按照OSEK/VDX標準實現(xiàn)的實時操作系統(tǒng)。PICOS18是一個多任務可剝奪型微實時內核,非常小巧,占程序空間(ROM)小于1KB,占數(shù)據空間(RAM)僅為7B,系統(tǒng)代碼容量及運行所需的ROM和RAM也非常少;提供了任務管理、定時器管理、事件管理、中斷管理等功能;基于優(yōu)先級進行任務調度,具有16個優(yōu)先級,系統(tǒng)占用1個,用戶可創(chuàng)建15個任務,每個任務最多還可以擁有8個事件[4].

            3.1 應用軟件開發(fā)

            嵌入式實時操作系統(tǒng)將面向功能的應用開發(fā)轉化為面向任務的應用開發(fā),因此軟件開發(fā)的過程就是將應用系統(tǒng)按照功能細分為多個任務,然后實現(xiàn)每個任務,并為任務確定合適的優(yōu)先級;對于實時性要求高的操作,需要編寫相關的中斷服務程序。

            根據的工作原理,可分為8個任務。

            (1) Task1——車速信號采集

            擴展任務,用于計算車速。上電運行后Task1處于等待狀態(tài), 等待車速計算事件EventSpeed.利用定時器/計數(shù)器TMR0模塊當計數(shù)器溢出時(數(shù)量的轉速信號脈沖后)產生中斷,進入轉速中斷服務程序,記錄脈沖周期總時間,然后設置事件EventSpeed,激活Task1.這時Task1處于就緒狀態(tài),在操作系統(tǒng)調度機制(完全搶占式)的管理下,等到就緒隊列中優(yōu)先級高于Task1的任務都運行完成時,Task1運行,根據所記錄的脈沖時間和脈沖個數(shù),計算出車速,并進行濾波。執(zhí)行完后,激活Task2,清除事件EventSpeed,Task1又處于等待狀態(tài)。

           ?。?) Task2——扭矩信號采集

            基本任務,用于采集扭矩信號。該任務由Task1激活,執(zhí)行頻率與Task1相同。因為車速信號和扭矩信號是EPS系統(tǒng)最重要的兩個參數(shù),所以必須使這兩個參數(shù)及時地更新,以保證助力模式的選擇和助力大小的確定得到及時準確的控制。

           ?。?) Task3——電流反饋信號采集

            基本任務,用于采集電機反饋電流。該任務由Task5激活,系統(tǒng)只有在助力控制時才會激活此任務。該參數(shù)與目標電流的差值,通過PID調節(jié)器的控制,使電機迅速提供相應的扭矩,達到助力的目的。

           ?。?) Task4——故障診斷

            擴展任務,用于故障的監(jiān)測和診斷。上電運行后,等待消息MsgSpeedErr,確定車速正常;等待消息MsgVoltErr,確定電壓正常;等待消息MsgTorqueErr,確定扭矩正常。一旦發(fā)生故障,該任務將立即斷開繼電器,使轉向系統(tǒng)處于機械轉向狀態(tài),避免事故發(fā)生。

           ?。?) Task5——助力模式選擇

            基本任務,用于選擇助力方式以及確定助力控制方式下的目標電流。此任務由Task2激活,通過車速和扭矩的大小,判斷助力模式,在助力控制下通過助力特性曲線得到目標電流。此任務的執(zhí)行次數(shù)與Task1和Task2相同,以保證助力方式和助力大小實時準確。

            (6) Task6——助力控制

            基本任務,助力控制,由Task3激活。通過Task5得到的目標電流,以及Task3電機反饋電流,采用PID調節(jié)器進行閉環(huán)控制,最后通過PWM脈寬調制控制助力電機。

           ?。?) Task7——回正控制

            基本任務,回正控制,由Task5激活。當汽車車速很高時,使電機兩端短路,產生回正阻尼,減小回正超調;當汽車處于低速時,使電機兩端迅速斷路,減小電機阻力,使轉向迅速回正。

            (8) Task8——阻尼控制

            基本任務,阻尼控制,由Task5激活。阻尼控制用于高速時的各種狀態(tài)(回正、轉向和直線行駛)?;卣龝r,阻尼控制可減小系統(tǒng)超調;轉向時,可增加阻力,使駕駛員得到較好的路感;直線行駛時,可減小路面對方向盤的沖擊。

            3.2 任務優(yōu)先級

            PICOS18采用占先式調度方式,即所有任務都是可占先的,每個任務都有一個確定的唯一的優(yōu)先級,任務越重要優(yōu)先級越高。由于助力控制(Task6)任務必須在合適的時刻運行,所以Task6優(yōu)先級最高,回正控制(Task7)、阻尼控制(Task8)次之,其次是故障診斷任務(Task4),其余任務優(yōu)先級按其激活的執(zhí)行順序確定。Task4在開始運行時處于等待狀態(tài)如未監(jiān)測到不正常信號則不再執(zhí)行。Task1、Task2和Task5在按順序執(zhí)行完一個循環(huán)后,繼續(xù)響應轉速中斷,重新執(zhí)行。這種調度方式不僅能采集到最新的車速信號和扭矩信號,使EPS系統(tǒng)實時準確地提供助力,還能提高CPU利用率,充分利用硬件資源。

            3.3 任務配置(OIL)

            PICOS18通過taskdesc.c定義任務的各個參數(shù),并且是用OSEK/VDX規(guī)范中的OIL(OSEK/VDX的實現(xiàn)語言,類似于一個C結構定義)編寫的[5].由于PICOS18沒有提供GUI用于任務的配置,因此只能逐句編寫。任務的參數(shù)定義結構如下:

            4 結論

            本文分析了EPS系統(tǒng)的結構、工作原理和3種控制方式。通過PIC18F458單片機的ECCP模塊控制電機,實現(xiàn)了EPS系統(tǒng)在各種情況下的助力方式。采用嵌入式實時操作系統(tǒng),不僅提高了CPU的利用率,確保了EPS系統(tǒng)的實時性要求,還提高了系統(tǒng)運行的穩(wěn)定性、可靠性以及移植性。

            OSEK/VDX是汽車電子開發(fā)的國際性標準,采用OSEK/VDX規(guī)范開發(fā)的實時系統(tǒng)能夠提高軟件模塊的移植效率、實現(xiàn)軟件模塊的重復利用及在不同電子控制單元之間的通信。采用OSEK/VDX進行汽車電控單元開發(fā)已成為發(fā)展趨勢。

            參考文獻

            [1] 胡建軍,李彤,龔為倫,等。汽車轉向技術進展分析[J].液壓與氣動,2006(12):17-20.

            [2] 陳卓,熊忠陽,李銀國。基于OSEK/VDX操作系統(tǒng)的任務管理機制設計[J].計算機工程。2006,12(36):82-84.

            [3] 羅玉濤?,F(xiàn)代汽車電子控制技術[M].北京:國防工業(yè)出版社,2006:174-202.

            [4] 龔黎明,辜承林?;贠SEK/VDX標準的嵌入式實時操作系統(tǒng)PICOS18[J].電子技術。 2004(5):10-13.

            [5] OSEK/VDX.OSEK Implementation Language Version 2.5. 2004[OL].http://www.osekvdx.org.

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(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); })();