關於LPC2378的CAN轉以太網網關

學識都 人氣:1.51W
關於LPC2378的CAN轉以太網網關

引言
  
  現場總線是應用在生產現場、在微機化測量控制設備之間實現雙向串行多節點數字通信的系統,也被稱爲開放式、數字化、多點通信的底層控制網絡[1]。現場總線是當今自動化技術發展的熱點之一,被譽爲自動化領域的計算機局域網。CAN 總線[6]作爲現場總線的一種,由於採用了許多新技術及獨特的設計,與一般的通信總線相比,CAN 總線的數據通信具有突出的可靠性、實時性和靈活性[4]。
  以太網 (Ethernet)作爲構築互連網的一種最普及的局域網技術,具有較好的技術穩定性和傳輸數據的高效性等特點,此外,以太網還可以方便的與幹線網絡連接,整個控制系統還能夠支持互連網絡的遠程訪問。因此,使用以太網作爲工業控制的上層網絡有着十分明顯的優勢[2]。
  本文給出了一種基於LPC2378 的CAN 總線和以太網互聯的網關設計方案[3],有效解決了底層現場總線與上層控制系統的互聯問題。
  
  1 硬件設計
  
  網關主要由微控器模塊,以太網接口模塊,CAN 接口模塊構成。微控器模塊主要實現以太網協議和CAN 協議的互相轉換,以太網接口模塊主要實現以太網數據的發送和接收,CAN 接口模塊主要實現CAN 數據的發送和接收。
  
  1.1 微控器選型
  本設計採用 Philips 公司的LPC2378 作爲主控器,LPC2378 是一款基於ARM7TDMI 內核的32 位微處理器,工作頻率高達72MHz,內嵌512kB 的Flash 程序存儲器,ARM 局部總線上有32kB 的SRAM,可以進行高性能的CPU 訪問,內部集成2 路CAN 控制器和1 個以太網控制器,只要加上CAN 收發器和網絡變壓器即可組成CAN 轉以太網網關,大大簡化了電路。
  
  1.2 以太網接口模塊
  LPC2378 內部集成以太網控制器,支持10M 或100Mbps PHY 器件,與標準802.3 完全兼容,內部含16kB 靜態RAM,也可用作通用SRAM,帶有分散/集中式DMA 的DMA 管理器以及幀描述符數組,加上網絡變壓器後通過RJ45 接口與以太網相連。
  
  1.3 CAN 接口模塊
  LPC2378 內部集成2 路CAN 控制器,在任何一路外面加上CAN 收發器都可以組成CAN接口電路,本設計採用CTM8251 作爲CAN 收發器,其主要功能是將CAN 控制器的邏輯電平轉換爲CAN 總線的差分電平,並具有DC 2500V 隔離功能,省略了傳統電路的光電隔離模塊,簡化了電路,接口速率高達1Mbit/s。
  
  2 軟件設計
  
  網關軟件設計主要包括以太網模塊通信,CAN 模塊通信,以太網協議與CAN 協議的相互轉換三個部分。
  
  2.1 以太網模塊通信
  以太網模塊通信主要包括以太網控制器的初始化和TCP/IP 協議的嵌入兩部分,主程序通過調用以太網模塊通信程序驅動以太網控制器。
  2.1.1 以太網控制器的初始化
  以太網控制器的`初始化主要有設置以太網MAC 寄存器,工作模式,定義發送緩衝區的大小,IP 地址、子網掩碼。
  2.1.2 TCP/IP 協議的嵌入
  TCP/IP 協議作爲以太網通信協議嵌入到微處理器中[5],其主要作用是管理以太網報文的發送和接收,實現遠程主機與網關的通信。
  因爲本網關主要應用於井下控制系統,對數據的傳輸實時性要求較高,所以在傳輸層使用UDP 協議,該協議是一種無連接協議,只把從TCP/IP 應用層中的得到的消息簡單分組爲數據報,所以一般UDP 的運行速度要比TCP 快40%,適合工業控制系統。
  在網絡層,設計主要採用了IP 協議作爲傳輸協議,IP 協議是整個TCP/IP 協議的核心,傳輸層的UDP 協議要以IP 數據報的格式進行傳輸。
  另外,在網絡通信中,還需要用到ARP 協議,其功能是根據目標IP 地址查詢對應的MAC 地址。
  2.2 CAN 模塊通信
  CAN 模塊通信主要包括CAN 模塊的初始化,CAN 數據的發送和接收,主程序通過調用CAN 模塊通信程序驅動CAN 控制器。