国产欧美日韩精品a在线观看-国产欧美日韩精品一区二区三区-国产欧美日韩精品综合-国产欧美中文字幕-一区二区三区精品国产-一区二区三区精品国产欧美

ACS880-07C
關(guān)注中國自動化產(chǎn)業(yè)發(fā)展的先行者!
隨著會計的發(fā)展,追蹤碳足跡
CAIAC 2025
2024
工業(yè)智能邊緣計算2024年會
2023年工業(yè)安全大會
OICT公益講堂
當前位置:首頁 >> 案例 >> 案例首頁

案例頻道

汽車總線電控系統(tǒng)的軟件解決方案
  • 企業(yè):控制網(wǎng)     領域:PLC /PAC/PCC/RTU     行業(yè):金融/保險    
  • 點擊數(shù):1343     發(fā)布時間:2005-10-19 17:29:25
  • 分享到:
汽車總線控制是汽車發(fā)展的趨勢,本文結(jié)合某種品牌的商務車的總線拓撲結(jié)構(gòu),提出了汽車總線的軟件架構(gòu),并采用了一種新的通過查表來進行邏輯判斷方法,最后給出了基于實時操作系統(tǒng)的解決方案。



    現(xiàn)代汽車的功能日新月異,而每增加一項功能都要增加相應的電氣連接,使得分布車體各處的電纜趨于龐大和昂貴,且導致設計、安裝、調(diào)試和維護的困難。傳統(tǒng)的電氣控制系統(tǒng)設計已不能滿足汽車對安全性、性能和便利性的要求這種技術(shù)進展,現(xiàn)場總線技術(shù)的應用就是這種進展導致的必然結(jié)果。

    1、汽車總線的優(yōu)點

    汽車總線主要具有以下優(yōu)點:

    網(wǎng)絡總線式結(jié)構(gòu),只需一根通訊電纜連接,由軟件邏輯控制替代傳統(tǒng)的直接線束控制 。
 
    線路簡化,減少線束連接復雜性。

    無需專用配電盒,部件數(shù)量減少,可靠性能增加,總線節(jié)點控制器(ECU)可靠性很高(是目前汽車電器可靠性的幾十倍)。

    可實現(xiàn)實時診斷、測試和報警功能。

    系統(tǒng)可任意擴展。

    更高的可靠性、更好的服務贏得市場,汽車總線的人性化設計功能更加貼近汽車制造商與客戶 。

    搭建通用信息平臺,為客戶提供方便,為企業(yè)創(chuàng)造價值。

    汽車總線提供更完善的車況信息,用戶自我服務變?yōu)榭赡埽档土酥圃鞆S與服務成本:(1)集中顯示;(2)歷史查詢;(3)診斷與測試;(4)語音提示 。

    準黑匣子功能。

    2、拓撲結(jié)構(gòu)

    在某品牌商務車上,我們使用了六個通訊節(jié)點代替了繁雜的線束,其拓撲結(jié)構(gòu)和各個節(jié)點完成的主要功能見圖1。



圖1 總線節(jié)點分布圖

    3、軟件架構(gòu)

    按照功能,我們將軟件分成三層次,即驅(qū)動層、轉(zhuǎn)換層和規(guī)則處理層。其中,轉(zhuǎn)換層包括輸入驅(qū)動和輸出驅(qū)動模塊,轉(zhuǎn)換層包括輸入轉(zhuǎn)換和輸出轉(zhuǎn)換模塊。為了實現(xiàn)各層各模塊之間的通訊,我們定義了三類消息:驅(qū)動層和轉(zhuǎn)換層的消息稱之為狀態(tài)消息,轉(zhuǎn)換層的輸入轉(zhuǎn)換和輸出轉(zhuǎn)換間的消息稱為接口消息,轉(zhuǎn)換層和規(guī)則處理層的消息稱之為器件消息。



圖2 軟件架構(gòu)

    輸入驅(qū)動子模塊負責將輸入引腳的電平變化轉(zhuǎn)變?yōu)檩斎霠顟B(tài)消息發(fā)送給轉(zhuǎn)換層,輸出驅(qū)動模塊將從轉(zhuǎn)換層接受的輸出狀態(tài)消息轉(zhuǎn)變?yōu)閷嶋H引腳的電平變化;輸入轉(zhuǎn)換模塊將從驅(qū)動層接收的輸入狀態(tài)消息轉(zhuǎn)換為輸入器件消息發(fā)送給規(guī)則層作進一步的轉(zhuǎn)換,或者轉(zhuǎn)換為接口消息送交輸出轉(zhuǎn)換模塊進行轉(zhuǎn)換輸出;輸出轉(zhuǎn)換模塊將從規(guī)則層接收的輸出器件狀態(tài)消息或者直接由輸入轉(zhuǎn)換模塊來的接口消息轉(zhuǎn)換為輸出狀態(tài)消息發(fā)送給驅(qū)動層;規(guī)則處理模塊把從輸入轉(zhuǎn)換模塊接收的輸入器件消息映射為輸出器件消息發(fā)送給輸出轉(zhuǎn)換模塊。規(guī)則層和轉(zhuǎn)換層的主要區(qū)別在于當涉及多個節(jié)點進行邏輯關(guān)系運算時,使用規(guī)則層進行轉(zhuǎn)換,而只在同一個節(jié)點進行邏輯關(guān)系運算時使用轉(zhuǎn)換層進行轉(zhuǎn)換。另外,為了處理復雜的邏輯關(guān)系,我們也允許規(guī)則處理模塊自己給自己發(fā)送消息,這時的消息也成為輸入器件消息,同樣輸出轉(zhuǎn)換模塊也可以自己給自己發(fā)消息,這時的消息也為接口消息。

    在整個系統(tǒng)中,運行規(guī)則處理層的節(jié)點只有一個,該節(jié)點稱為主ECU,其他節(jié)點稱為子ECU,主ECU的轉(zhuǎn)換層和規(guī)則處理層可以直接通訊,而子ECU的轉(zhuǎn)換層和主ECU規(guī)則處理層間的通訊通過通訊管理模塊來實現(xiàn)。子ECU之間不直接進行消息的交換,必須通過主ECU聯(lián)絡。在實際的使用中,我們使用的是CAN總線,使用的芯片是自帶CAN收發(fā)器的atmel CC03。

    為了使轉(zhuǎn)換層和規(guī)則處理層的處理方法一致,同時為了讓系統(tǒng)在增加新的功能時,不對軟件作任何修改,我們摒棄了在程序中直接用If-Then-Else對每一種情況進行邏輯判斷的傳統(tǒng)方法,代之以類似于專家系統(tǒng)的規(guī)則匹配進行邏輯判斷。該方法的基本思想是:將各組邏輯關(guān)系按一定的組織關(guān)系存儲在數(shù)組中,每組邏輯關(guān)系我們稱之為一組規(guī)則,規(guī)則的每個條件和結(jié)論都稱之為因子,當有消息到來時,在數(shù)組中查找該消息的所屬的規(guī)則,如果找到,則判斷該組規(guī)則的條件是否都滿足,是,則得到Then的結(jié)果,如果有必要,在條件不滿足時得到Else的結(jié)果。該算法的關(guān)鍵是對各種邏輯關(guān)系的組織,目前我們采取的方法是將條件和結(jié)論都表示成二元組(S,ID),這里的ID表示引腳或器件的邏輯編號,S的最高兩位用來區(qū)分條件和結(jié)論,接下來的一位表示消息的類型,S的其他位表示狀態(tài)等信息。當S的最高位為10時表示條件,而00為Then的結(jié)論, 01為else結(jié)論,當有的消息需要延時一段時間發(fā)送時,使用11作為延時標志,這時S的其他位和ID一起表示延時的時間。類型字段只需一位來表示,并且只在結(jié)論因子中有效,對于輸入轉(zhuǎn)換模塊,通過1、0來區(qū)分是發(fā)送給規(guī)則處理模塊還是直接發(fā)給輸出轉(zhuǎn)換模塊,輸出轉(zhuǎn)換模塊用1、0來區(qū)分是發(fā)給輸出驅(qū)動模塊還是發(fā)給自己,而規(guī)則處理模塊用它來區(qū)分是發(fā)給轉(zhuǎn)換模塊還是發(fā)給自己。

    對于邏輯[<喇叭按鈕:按下]==[>喇叭:鳴][Else]==[>喇叭:關(guān)],輸入轉(zhuǎn)換數(shù)組中將表示成:

    (10000000 00000101)(00100000 10000110)(01100001 10000110)

    這里喇叭按鈕的編號為5,狀態(tài)值為0表示按下,喇叭的編號為134,由于喇叭的按鈕和喇叭不在一個節(jié)點上,產(chǎn)生的是輸入器件消息(類型為1)。當喇叭按鈕有按下的時候,輸入驅(qū)動模塊將其打包成消息(0x80,0x05)發(fā)送給輸入轉(zhuǎn)換層,輸入轉(zhuǎn)換模塊通過在轉(zhuǎn)換數(shù)組中查找到ID為5的規(guī)則,通過判斷該組規(guī)則,得到(0x20,0x85)的器件消息,然后經(jīng)過通訊模塊,將其發(fā)送給規(guī)則處理模塊,規(guī)則處理模塊將處理后的消息,發(fā)給相關(guān)的子節(jié)點,經(jīng)輸出轉(zhuǎn)換后由輸出驅(qū)動模塊執(zhí)行。

    4、軟件實現(xiàn)

    上述的軟件構(gòu)架的實現(xiàn),我們可以采用不同的方案,下面給出基于實時操作系統(tǒng)的一般實現(xiàn),并假定汽車總線是CAN的情況。與各個模塊相對應,對于子ECU,我們定義了五個任務和兩個中斷服務,分別是輸入轉(zhuǎn)換任務(TskInTrans)、輸出轉(zhuǎn)換任務(TskOutTrans)、延時處理任務(TskDly)、輸出驅(qū)動任務(TskOutput)和發(fā)送任務(TskCANSend),中斷服務包括輸入中斷服務(ISPIn)和CAN接受中斷服務(ISPCAN),而對于主ECU,還需一個規(guī)則處理任務(TskRule)。為了實現(xiàn)任務間以及中斷和任務間的通訊,定義了四個郵箱和一個延時數(shù)組,分別是輸入轉(zhuǎn)換郵箱(MailInTrans)、輸出轉(zhuǎn)換郵箱(MailOutTrans)、輸出郵箱(MailOutput)、發(fā)送郵箱(MailCANSend)及延時數(shù)組ArrDly,對于主ECU還需增設規(guī)則處理郵箱(MailRule),這里的消息被定義成一個二元組(Val,ID),ID編號,Val為狀態(tài)值,而延時數(shù)組的每個元素還包括一個延時字段是個三元組。主ECU的各個任務以及和中斷服務間的通訊關(guān)系如圖3。



圖3 主ECU各任務及中斷通訊間的關(guān)系

    圖中的延時數(shù)組用虛框表示,它類似于消息郵箱,與郵箱中的消息相比,還包括一個延時的時間字段,另外在往延時數(shù)組中放入消息時,它不會產(chǎn)生任務調(diào)度。延時數(shù)組中的延時消息來自于輸出轉(zhuǎn)換任務和規(guī)則處理任務,延時任務定時執(zhí)行,它每隔一個時間單位,例如20ms,查詢一下延時數(shù)組,并將非空的元素的時間節(jié)拍減一,如果時間節(jié)拍為0,則根據(jù)Type字段,將其放入規(guī)則郵箱或輸出轉(zhuǎn)換郵箱。

    對于總線中斷服務程序,主ECU和子ECU的處理方式稍微有的不同,對于主ECU,它將總線上來的消息送到規(guī)則處理郵箱 而子ECU則將其放入輸出轉(zhuǎn)換郵箱;而對于發(fā)送的任務,主ECU的消息來自于規(guī)則處理任務,子ECU的發(fā)送消息來自于輸入轉(zhuǎn)換任務。

    采用郵箱進行消息傳遞的并利用查表方法進行邏輯判斷,轉(zhuǎn)換任務和規(guī)則處理任務流程很類似,限于篇幅,這里僅給出輸入轉(zhuǎn)換任務的流程圖和示意性代碼,另外,對于CAN及輸入輸出的驅(qū)動程序,與具體的硬件有關(guān),這里也不在贅述。

    輸入轉(zhuǎn)換任務的示意性代碼如下(基于Keil C編寫):

    void TskInTrans () reentrant
    {  StrYz  Msg; 定義一個消息變量
      for( ; ; )
      {     Msg =(StrYz *)MsgPend(MailInTrans);//等待輸入轉(zhuǎn)換郵箱的消息
         While Not EndofInTrans            轉(zhuǎn)換表沒查完
         {  SeekRule(Msg->ID);從當前規(guī)則開始,以消息的編號尋找所屬規(guī)則
           if  (IsAllOkJK(CurrentRule))// 如果都滿足,則根據(jù)消息的類型,將所有的
                      PostMsg();           Then因子發(fā)往規(guī)則郵箱或輸出轉(zhuǎn)換郵箱
               else    否則,移到Else部分后,再將Else因子發(fā)往相應的郵箱
             {  MoveToElse();
           PostMsg();
            }
            MoveToNextRule(); 移到下組規(guī)則
         }
      }
    }

    5、結(jié)束語

    汽車總線控制是汽車產(chǎn)業(yè)的發(fā)展方向,要想進行總線控制,必須從軟件和硬件兩個方面著手,而使用嵌入式操作系統(tǒng)對軟硬件進行管理,不論是實時性還是從可靠性來講,都具有無可比擬的優(yōu)勢,目前,我們正在研究基于實時操作系統(tǒng)的汽車總線控制系統(tǒng),并已在實驗室中在某種商務車上得以實現(xiàn),相信不久的將來,該套系統(tǒng)將會得到廣泛應用。

熱點新聞

推薦產(chǎn)品

x
  • 在線反饋
1.我有以下需求:



2.詳細的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 久久国产国内精品对话对白 | 亚洲视频中文字幕 | 成人毛片免费免费 | 欧美久久精品 | 一级黄色免费网站 | 亚洲成人午夜影院 | 午夜欧美成人久久久久久 | 久草手机在线观看 | 国产一区二区三区不卡免费观看 | 黄色亚洲网站 | 国产成人免费视频精品一区二区 | 国产精品久久免费视频 | 欧美性精品hd在线观看 | 91高清国产经典在线观看 | 草草影院ccyy免费看片 | 国产精品女在线观看 | www.午夜| 日韩在线观看一区 | 亚洲va在线va天堂va四虎 | 91久久精一区二区三区大全 | 欧美国产视频 | 在线播放成人高清免费视频 | 国产高清成人mv在线观看 | 国产99视频在线观看 | 2019在线亚洲成年视频网站 | 亚洲人成综合在线播放 | 国产精品成人久久久久 | 91精品视品在线播放 | 67194欧美成l人在线观看免费 | 一级片中文字幕 | 国产精品久久久久久免费播放 | 欧美区一区二区三 | 99色视频在线 | 全午夜免费一级毛片 | 97视频免费播放观看在线视频 | 久草视频资源在线 | 日韩欧美在线视频观看 | 亚洲国产成人综合精品2020 | 国产午夜毛片一区二区三区 | 天天五月天丁香婷婷深爱综合 | 精品一区二区三区在线视频 |