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

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > CAN總線與以太網系統互連中網關的設計與實現

          CAN總線與以太網系統互連中網關的設計與實現

          作者: 時間:2012-05-05 來源:網絡 收藏

          3 CAN協議分析

          CAN是遵從OSI模型,按照OSI基準模型,CAN結構劃分為兩層:數據鏈路層和物理層。按照IEEE802.2和802.3標準,數據鏈路層又劃分為:

          邏輯鏈路控制(LLC)

          媒體訪問控制(MAC)

          物理層又劃分為:

          物理信令(PLS)

          物理媒體附屬裝置(PMA)

          媒體相關接口(MDI)

          MAC子層運行借助稱之為“故障界定實體(FCE)”的管理實體進行監(jiān)控。故障界定是使判別短暫干擾和永久性故障成為可能的一種自檢機制。物理層可借助檢測和管理物理媒體故障實體進行監(jiān)控(例如總線短路或中斷,總線故障管理)。LLC和MAC兩個同等的協議實體通過交換幀或協議數據單元(PDU—Protocol Data Unit)相互通信。

          LLC子層提供的功能包括:幀接收濾波、超載通告和恢復管理。其中,超載通告功能是如果接收器內部條件要求延遲下一個LLC數據幀或LLC遠程幀,則通過LLC子層開始發(fā)送超載幀最多可產生兩個超載幀,以延遲下一個數據幀或遠程幀。

          按照網絡的OSI七層模型來看,網絡完成了最下面兩層協議的工作,即物理層和數據鏈路層,它們由CAN控制器的硬件實現電平轉換和幀的封裝。在實際應用中,還需要建立自己的上層協議。這里設計了一種簡單實用的“命令項+數據項”結構,其完整數據幀結構如圖二所示。

          考慮到工業(yè)控制中的功能一般不多,因此命令項的長度設定為1BYTE(可以描述256種命令)。在數據項里設置數據長度是考慮到是短幀傳送(數據幀,每幀數據只有8BYTE),有的命令所需的數據參數可能大于7BYTE,同時很有可能返回的數據也較大,所以,這里設置一個字節(jié)的數據長度項,就可使用戶定義數據幀長度達到256字節(jié)。

          4 SX52的TCP/IP協議棧的設計

          ARP協議可以實現邏輯地址到物理地址的動態(tài)映射。以太網接口支持一個唯一的48-bit的物理地址。在SX52中,ARP協議是通過一個“IP地址對應以太網地址”的單登記核實現。當遠程主機需要知道它的物理地址時,遠程主機會向它發(fā)送ARP請求,這時它就會響應這個遠程主機的請求,告訴對方自己的物理地址。當應用層需要傳輸IP數據包時,SX52 ARP協議也可以請求遠程目的物理地址。

          要傳輸的Internet數據包數據包在以太網控制器的發(fā)送緩沖區(qū)中被構建,它使用最近接收到的數據包的目的以太網地址作為發(fā)送數據包的目的地址。當然,這可能不是正確的以太網地址,因此,在實際發(fā)送數據包之前,ARP協議將檢查發(fā)送數據包中的IP地址是否存在于ARP核中,如果發(fā)送數據包中的IP地址在這個核中,在以太網發(fā)送緩沖區(qū)中的數據包將使用ARP核中的以太網地址更新,如果不在,則ARP協議將發(fā)送一個ARP請求包,然后等待一個應答。一旦這個ARP應答接收到,這個ARP核將使用剛接收到的目標以太網地址更新,接著,等待發(fā)送的數據包也將使用這個以太網地址更新,然后被發(fā)送出去。如果發(fā)送的ARP請求包沒有應答,導致ARP定時器超時,這是等待發(fā)送的數據包將被廢棄,正常的協議棧繼續(xù)運行。

          IP協議是TCP/IP協議族中最為核心的協議。所有的TCP、UDP、ICMP及IGMP數據都以IP數據報格式傳輸。IP提供不可靠、無連接的數據報傳送服務,不能保證IP數據報成功地到達目的地。如果發(fā)生某種錯誤時,如某個路由器暫時用完了緩沖區(qū),IP有一個簡單的錯誤處理算法:丟棄該數據報,然后發(fā)送ICMP 消息報給信源端。任何要求的可靠性必須由上層來提供。無連接的意思是IP并不維護任何關于后續(xù)數據報的狀態(tài)信息,每個數據報的處理是相互獨立的。這也說明,IP數據報可以不按發(fā)送順序接收。在本設計中,IP協議是針對特殊的應用環(huán)境下的合理簡化。的控制網絡是一種短幀、實時網絡,所以,IP數據包無須分片(MF=DF=0),同時,設置IP服務類型為一般類型,其頭長為20字節(jié),首部長度字段為5,壽命TTL設置為64。

          TCP向應用層提供一種面向連接的、可靠的字節(jié)流服務。在面向工業(yè)控制上的應用時,可以對復雜的TCP協議做合理的簡化,因為CAN網絡傳輸速度較快,數據量小且l0Mpbs的以太網傳輸一般不會發(fā)生阻塞,以太網上的主機也會有足夠的能力及時處理通信數據。所以可以固定超時與重傳的時間為5s,此外RTL8019AS上有兩個1500字節(jié)的接收緩沖區(qū),且CAN網絡為控制網,信息量小,所以可以固定接受窗口為1400字節(jié)。設計中采用一般的TCP服務就可以滿足應用,所以可以忽略緊急指針和選項和填充字段的值。通過上述的三點簡化,實際上大大簡化了TCP協議的實現,因為TCP的超時與重傳的時間的確定和窗口大小的控制有著較復雜的算法和實現機制。

          5 創(chuàng)新點總結

          本文的創(chuàng)新點是針對傳統工業(yè)控制自動化現場總線連接方式成本高,開發(fā)周期長的不足之處,設計一種單獨的CAN以太網互連系統,成功地實現以太網和現有CAN總線網的直接數據互聯?,F場總線通過與因特網、企業(yè)內部網相連,使自動控制系統與現場設備成為企業(yè)綜合自動化系統和信息系統的一個組成部分。系統在開放性、互操作性、現場設備智能化、系統結構、對現場環(huán)境適應性等性能方面得到了很大的提高,成功實現兩個異類網絡的數據通信。

          參考文獻:

          [1] 鄒益仁 馬增良 等,現場總線控制系統的設計和開發(fā),2003,國防工業(yè)出版社

          [2] 鄭文波 控制網絡技術,2001,清華大學出版社

          [3] Ed.Taylor ,鄭巖 鄧凌 譯,網絡互連技術指南,2001,人民郵電出版社

          [4] 李明 嵌入式互連網絡接口的設計與開發(fā),2002,工業(yè)控制計算機

          [5] 鄧遵義,寧樣,劉保國.基于CAN總線的分布式機器人控制系統設計. 微計算機信息[J].2006年的22卷6-2期:第254-256頁


          上一頁 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); })();