新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > CAN總線與以太網(wǎng)系統(tǒng)互連中網(wǎng)關(guān)的設(shè)計與實現(xiàn)

CAN總線與以太網(wǎng)系統(tǒng)互連中網(wǎng)關(guān)的設(shè)計與實現(xiàn)

作者: 時間:2012-05-05 來源:網(wǎng)絡(luò) 收藏

1 引言

科技和社會的發(fā)展,使20世紀(jì)末的全球化市場競爭空前激烈。競爭中的企業(yè)逐漸開始實施計算機集成制造系統(tǒng),采用系統(tǒng)集成、信息集成的觀點來組織工業(yè)生產(chǎn)。在這個系統(tǒng)中,為實現(xiàn)現(xiàn)場智能設(shè)備之間的多點數(shù)字通信,計算機測控技術(shù)與計算機網(wǎng)絡(luò)緊密地結(jié)合在一起,產(chǎn)生了能在工業(yè)現(xiàn)場環(huán)境運行、性能可靠、造價低廉的現(xiàn)場總線(FieldBus)技術(shù)。

現(xiàn)場總線是用于生產(chǎn)制造現(xiàn)場的最底層通信網(wǎng)絡(luò),它實現(xiàn)了微機化的現(xiàn)場測量控制儀器或設(shè)備之間的雙向串行多節(jié)點數(shù)字通信。現(xiàn)場總線技術(shù)的關(guān)鍵是使自動控制系統(tǒng)與現(xiàn)場設(shè)備具備通信能力,將它們連接成網(wǎng)絡(luò)系統(tǒng),實現(xiàn)現(xiàn)場通信網(wǎng)絡(luò)與控制系統(tǒng)的集成。作為網(wǎng)絡(luò)系統(tǒng),它具有開放統(tǒng)一的通信協(xié)議。

就是現(xiàn)場總線技術(shù)在工業(yè)應(yīng)用中形成的一個成熟技術(shù)標(biāo)準(zhǔn)。它的協(xié)議建立在ISO/OSI模型基礎(chǔ)之上,但只采用了該模型底層的物理層、數(shù)據(jù)鏈路層和頂層的應(yīng)用層。在大型企業(yè)自動化系統(tǒng)中,上層企業(yè)管理層和生產(chǎn)監(jiān)控層一般采用的都是以太網(wǎng)和PC機,而在下層車間現(xiàn)場都是采用現(xiàn)場總線和單片機測控設(shè)備。上下兩層的溝通,通常采用工業(yè)控制機加以太網(wǎng)卡,再加上PC機插槽上的接口卡或并行打印口的EPP接口卡來實現(xiàn)。這種連接方式成本高,開發(fā)周期長。針對這種情況,我們設(shè)計一種單獨的CAN以太網(wǎng)互連系統(tǒng),成功地實現(xiàn)以太網(wǎng)和現(xiàn)有網(wǎng)的直接數(shù)據(jù)互聯(lián)。

2 系統(tǒng)總體設(shè)計

是一個設(shè)備互連總線型控制網(wǎng)絡(luò)。在CAN總線上可以掛接多達(dá)110個設(shè)備節(jié)點,各設(shè)備間可以自主相互通信,實現(xiàn)復(fù)雜網(wǎng)絡(luò)控制系統(tǒng)。但設(shè)備信息層無法直接到達(dá)信息管理層,要想設(shè)備信息進(jìn)入信息管理層就要通過一種數(shù)據(jù)。

這里我們設(shè)計了一個SX52用于CAN總線與以太網(wǎng)的互連。系統(tǒng)總體分為三部分:現(xiàn)場測控網(wǎng)絡(luò)(CAN網(wǎng)絡(luò))、嵌入式透明SX52網(wǎng)關(guān)、以太網(wǎng)信息管理終端(如監(jiān)控平臺和網(wǎng)絡(luò)數(shù)據(jù)庫等)。以太網(wǎng)信息管理終端與CAN總線上的CAN節(jié)點通過ETHERNET,SX52網(wǎng)關(guān),CANBUS相互通信,其中SX52網(wǎng)關(guān)起到核心的異構(gòu)網(wǎng)絡(luò)的互連作用。

協(xié)議轉(zhuǎn)換是異構(gòu)網(wǎng)絡(luò)互連的技術(shù)關(guān)鍵和難點,協(xié)議轉(zhuǎn)換一般可采用分層轉(zhuǎn)換的方法,自低向上逐層進(jìn)行。目前互連大都是在網(wǎng)際層或網(wǎng)絡(luò)層展開的,因而必須對互連層以下各層協(xié)議逐層向上轉(zhuǎn)換,這種轉(zhuǎn)換方法的依據(jù)是協(xié)議分層的基本原理:即低層支持高層,高層調(diào)用低層,低層斷開連接后,高層連接也隨之?dāng)嚅_,但高層斷開連接卻不會影響低層。從網(wǎng)絡(luò)的分層結(jié)構(gòu)上來看,我們設(shè)計的互連系統(tǒng)具有如圖一所示的分層結(jié)構(gòu)。以太網(wǎng)上運行TCP/IP協(xié)議,它具有應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、以太網(wǎng)數(shù)據(jù)鏈路層和物理層;CAN總線具有應(yīng)用層、數(shù)據(jù)鏈路層和物理層,其中應(yīng)用層由用戶自己定義,數(shù)據(jù)鏈路層和物理層由CAN協(xié)議所定義;SX52數(shù)據(jù)網(wǎng)關(guān)具有物理層、數(shù)據(jù)鏈路層和應(yīng)用層,其應(yīng)用層也就是ETHERNET與CAN的信息數(shù)據(jù)交換層,SX52微控制器在此層相互解釋并轉(zhuǎn)發(fā)這兩種不同協(xié)議的數(shù)據(jù)。

在本設(shè)計中,SX52網(wǎng)關(guān)被設(shè)計成了一個透明數(shù)據(jù)網(wǎng)關(guān),也就是在以太網(wǎng)應(yīng)用層構(gòu)建和解析完整的CAN協(xié)議數(shù)據(jù)包,CAN協(xié)議數(shù)據(jù)包作為TCP/IP網(wǎng)絡(luò)應(yīng)用層的數(shù)據(jù)進(jìn)行傳輸,它對通信數(shù)據(jù)的具體實際意義不做任何解釋。之所以把數(shù)據(jù)網(wǎng)關(guān)設(shè)計成透明式,是基于以下三個方面的考慮:1)透明式網(wǎng)關(guān)設(shè)計相對不透明網(wǎng)關(guān)來說較簡單,在硬件上無須擴展大容量的數(shù)據(jù)存儲器用于緩存通信數(shù)據(jù);軟件上也不用考慮數(shù)據(jù)的聚集和分發(fā)處理,降低了程序設(shè)計的復(fù)雜度、提高了通信的速度和實時性。2)透明式網(wǎng)關(guān)的適應(yīng)性強,它可以應(yīng)用于不同的項目要求,而不透明網(wǎng)關(guān)則要根據(jù)不同要求對網(wǎng)關(guān)程序作出不同的修改。3)因為協(xié)議轉(zhuǎn)換設(shè)計簡單,沒有較多復(fù)雜處理,從而提高了通信的可靠性。

CAN總線網(wǎng)絡(luò)的最大通信速率為1Mpbs,而以太網(wǎng)現(xiàn)在一般為10Mbps。這里就需考慮兩者之間的速度匹配問題,這里可以從兩個方面解決這個問題:一是在網(wǎng)關(guān)上使用較大的RAM,用來作為通信數(shù)據(jù)緩沖器,提高網(wǎng)路傳輸?shù)男?。二是限制以太網(wǎng)向CAN總線傳輸?shù)臄?shù)據(jù)量,使它小于CAN總線的通信速率。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉