技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于以太網(wǎng)的控制器網(wǎng)絡(luò)的嵌入式網(wǎng)關(guān)開(kāi)發(fā)

基于以太網(wǎng)的控制器網(wǎng)絡(luò)的嵌入式網(wǎng)關(guān)開(kāi)發(fā)

時(shí)間:2008-04-30 10:52:00來(lái)源:ronggang

導(dǎo)語(yǔ):?本文介紹了基于以太網(wǎng)和控制器區(qū)域網(wǎng)總線(xiàn)通信系統(tǒng)的集成通信網(wǎng)關(guān)系統(tǒng)的開(kāi)發(fā)。系統(tǒng)開(kāi)發(fā)的目的是在以太網(wǎng)和控制器區(qū)域網(wǎng)總線(xiàn)之間交換實(shí)時(shí)控制信息,以實(shí)現(xiàn)分布式控制和監(jiān)測(cè)
  本地控制器網(wǎng)絡(luò)(CAN)由于低成本和高可靠性,已經(jīng)在工業(yè)分布式控制系統(tǒng)中廣泛使用。以太網(wǎng)的低成本和易配置特性也使得其在計(jì)算機(jī)通信網(wǎng)絡(luò)中廣泛應(yīng)用。本文介紹了基于以太網(wǎng)和控制器區(qū)域網(wǎng)總線(xiàn)通信系統(tǒng)的集成通信網(wǎng)關(guān)系統(tǒng)的開(kāi)發(fā)。系統(tǒng)開(kāi)發(fā)的目的是在以太網(wǎng)和控制器區(qū)域網(wǎng)總線(xiàn)之間交換實(shí)時(shí)控制信息,以實(shí)現(xiàn)分布式控制和監(jiān)測(cè)。 1 硬件平臺(tái)設(shè)計(jì)   嵌入式處理器可編程邏輯電路設(shè)計(jì)方面最大的挑戰(zhàn)之一就是為適合速度要求非常廣泛的應(yīng)用。在低端,系統(tǒng)要求可能少于10MIPS;在高端,系統(tǒng)可能要求好幾百 MIPS。不同系統(tǒng)需要的范圍不同。完全滿(mǎn)足范圍需要的解決方案需要提供可編程設(shè)備配置、操作以及精通嵌入式處理器的用戶(hù)。網(wǎng)關(guān)系統(tǒng)的設(shè)計(jì)建立在 Altera Excalibur[3]嵌入式處理器基礎(chǔ)上,它可以提供最佳的解決方案,擁有較優(yōu)的適應(yīng)性和強(qiáng)大的性能?;诤诵牟糠諷OPC[4]的ARM系統(tǒng)設(shè)計(jì)結(jié)構(gòu)如圖1所示??刂破骶W(wǎng)關(guān)結(jié)構(gòu)如圖2所示。
  1.1 軟核CAN控制器設(shè)計(jì)   使用AMBA總線(xiàn)接口的Soft CAN控制器是為了進(jìn)行控制器網(wǎng)絡(luò)通信設(shè)計(jì)開(kāi)發(fā)的,它能在網(wǎng)關(guān)系統(tǒng)平臺(tái)上運(yùn)行。該Soft CAN控制器具備CAN 2.0B[1]規(guī)范的所有協(xié)議功能,包括錯(cuò)誤處理能力、填充位產(chǎn)生、循環(huán)冗余碼校驗(yàn)(CRC)、主動(dòng)/被動(dòng)錯(cuò)誤幀和擴(kuò)展幀技術(shù)支持。Soft CAN控制器也能支持如下應(yīng)用發(fā)展:信息過(guò)濾、信息封裝、信息發(fā)送緩沖、信息接收緩沖以及發(fā)送、接收和錯(cuò)誤事件的中斷觸發(fā)。Soft CAN控制器提供AMBA兼容接口以實(shí)現(xiàn)數(shù)據(jù)高速傳輸,也提供中斷支持實(shí)現(xiàn)系統(tǒng)快速響應(yīng)。   1.2 Soft CAN控制器模擬驗(yàn)證   Soft CAN控制器模擬驗(yàn)證平臺(tái)設(shè)計(jì)如圖3所示。
  Soft CAN控制器的綜合模擬/驗(yàn)證輸出波形(如圖4)說(shuō)明了其控制器工作狀態(tài)正確。
  從圖4所示的驗(yàn)證輸出結(jié)果,可以得出以下結(jié)論:  ?。?)Soft CAN控制器#1狀態(tài):   “00000000000000000000000000001000” ——>Soft CAN控制器正在控制CAN數(shù)據(jù)線(xiàn)信號(hào)。  ?。?)Soft CAN 控制器#2狀態(tài):   “00000000000000000000000000001000” ——> Soft CAN控制器正在控制CAN數(shù)據(jù)線(xiàn)信號(hào)。  ?。?)Soft CAN 控制器#1 TX緩沖器:標(biāo)識(shí) -“11101101000”,數(shù)據(jù)-“10011001100110011001100110011001”。   (4)Soft CAN 控制器#1 TX緩沖器:標(biāo)識(shí)- NA,數(shù)據(jù)-NA。 2 軟件設(shè)計(jì)   軟件設(shè)計(jì)包括實(shí)時(shí)操作系統(tǒng)[5]移植、異常處理支持、設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)和文件系統(tǒng)開(kāi)發(fā)等。   2.1 實(shí)時(shí)操作系統(tǒng)移植   eCos被成功地移植到網(wǎng)關(guān)系統(tǒng)硬件平臺(tái),為應(yīng)用系統(tǒng)的開(kāi)發(fā)提供實(shí)時(shí)服務(wù)。由于eCos的分層結(jié)構(gòu)使得其移植靈活并容易,所有結(jié)構(gòu)和平臺(tái)的絕對(duì)代碼都在硬件抽象層(HAL)實(shí)現(xiàn)。   2.1.1 系統(tǒng)啟動(dòng)模式   本系統(tǒng)移植提供四種啟動(dòng)模式。  ?。?)ROM啟動(dòng)模式。在ROM啟動(dòng)模式中,應(yīng)用程序儲(chǔ)存在EPXA1開(kāi)發(fā)板的閃存中,并從那里啟動(dòng)。  ?。?)ROM-RAM啟動(dòng)模式。在ROM-RAM啟動(dòng)模式中,應(yīng)用程序存儲(chǔ)在閃存中。啟動(dòng)程序?qū)⑾葟拈W存中運(yùn)行,并且初始化系統(tǒng)。在系統(tǒng)初始化后,eCos應(yīng)用程序?qū)?huì)從閃存中自動(dòng)復(fù)制到SDRAM中,接著在SDRAM中以更高的速度運(yùn)行。  ?。?)RAM啟動(dòng)模式。在RAM啟動(dòng)模式中,eCos應(yīng)用程序會(huì)通過(guò)EPXA1板上的調(diào)試器(例如RedBoot加載到其板的SDRAM內(nèi)存中)啟動(dòng)。這主要是為了調(diào)試。   2.1.2 線(xiàn)程管理   EPXA1 eCos移植完全支持多線(xiàn)程編程模式。除了任務(wù)同步支持外,它還提供了一系列可選擇的調(diào)度算法。   2.1.3 系統(tǒng)定時(shí)支持   系統(tǒng)的定時(shí)基準(zhǔn)由Altera EPXA1平臺(tái)上的系統(tǒng)定時(shí)器提供,定時(shí)器頻率為150MHz。系統(tǒng)的脈沖周期為10毫秒。在EPXA1 上移植的eCos控制通過(guò)內(nèi)核使用的時(shí)鐘或計(jì)時(shí)設(shè)備進(jìn)行暫停、延時(shí)和調(diào)度服務(wù),供系統(tǒng)內(nèi)核使用。   2.2 異常處理   所有的異常,包括FIQ和IRQ中斷[7],都跳轉(zhuǎn)到矢量0地址,每個(gè)中斷矢量占4字節(jié)。這里僅有一個(gè)指令空間,它須立即跳轉(zhuǎn)到內(nèi)存中更高地址的代碼。中斷源必須進(jìn)行解碼。由于每一個(gè)矢量服務(wù)例程都對(duì)應(yīng)一個(gè)不同的CPU模式的入口,所以需要對(duì)每一個(gè)異常有一個(gè)不同的VSR,它知道怎樣從中斷控制器完全正確地保存CPU狀態(tài)。這個(gè)異常處理機(jī)制包含一個(gè)分離的中斷處理方案。在這個(gè)方案中,中斷處理劃分為兩部分。第一部分稱(chēng)之為中斷服務(wù)程序或ISR;第二部分是延遲服務(wù)程序或DSR。這種劃分明確地顧及 到了DSRs與正在執(zhí)行的中斷同時(shí)運(yùn)行,因此允許當(dāng)正在執(zhí)行低級(jí)別的中斷時(shí)其他內(nèi)在具有更高優(yōu)先級(jí)別的中斷發(fā)生及接受處理。   2.3 設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)   2.3.1 閃存設(shè)備驅(qū)動(dòng)程序   本項(xiàng)目開(kāi)發(fā)了基于Intel 28F320C閃存的驅(qū)動(dòng)程序。Boot-loader用它來(lái)儲(chǔ)存映像、配置信息和閃存內(nèi)的數(shù)據(jù)。這個(gè)設(shè)備驅(qū)動(dòng)程序提供廣泛的操作支持。   (1)閃存查詢(xún):可從閃存中重新獲得廠(chǎng)商和零件號(hào)碼代碼。  ?。?)閃存區(qū)塊擦除:擦掉閃存中的模塊。  ?。?)閃存編程緩沖:允許在閃存中寫(xiě)入一緩沖的數(shù)據(jù)。   (4)閃存區(qū)段上鎖/開(kāi)啟:允許閃存中的內(nèi)容受到保護(hù)。   2.3.2 以太網(wǎng)接口設(shè)備驅(qū)動(dòng)程序   以太網(wǎng)設(shè)備驅(qū)動(dòng)程序支持以太網(wǎng)控制器SMC91C111,它可以提供雙重速度10/100Mbps的通信支持。以太網(wǎng)設(shè)備Lan91C111提供所有發(fā)送、接收與事件中斷等必要的功能,以支持與BSD TCP/IP 堆棧的集成實(shí)現(xiàn)TCP/IP網(wǎng)絡(luò)協(xié)議。   2.3.3 Soft CAN控制器設(shè)備驅(qū)動(dòng)程序   此設(shè)備驅(qū)動(dòng)程序提供了對(duì)控制器區(qū)域網(wǎng)絡(luò)通信的支持,以實(shí)現(xiàn)發(fā)送、接收及中斷處理功能。圖5為驅(qū)動(dòng)程序流程圖。
  2.4 嵌入式文件系統(tǒng)開(kāi)發(fā)   為了使信息保存與交換更加高效,本項(xiàng)目開(kāi)發(fā)了基于閃存和RAM的文件系統(tǒng)。該文件系統(tǒng)提供廣泛的文件操作支持:文件新建、文件刪除、文件復(fù)制、文件重命名和文件移動(dòng),還有目錄支持。文件系統(tǒng)可以交叉操作,文件可以在基于文件系統(tǒng)的閃存和RAM之間實(shí)現(xiàn)復(fù)制或移動(dòng)。   2.5 調(diào)試支持   一般地,硬件模擬方法需要花費(fèi)大量的資金。為了實(shí)現(xiàn)低成本設(shè)計(jì),釆用了基于軟件的調(diào)試方法。這個(gè)基于軟件的EPXA1平臺(tái)調(diào)試工具已經(jīng)集成到該網(wǎng)關(guān)平臺(tái)中,在系統(tǒng)開(kāi)發(fā)中提供調(diào)試功能。這個(gè)調(diào)試器可以使用串行端口或以太網(wǎng)信道實(shí)現(xiàn)與主機(jī)間的通信。這個(gè)軟件調(diào)試器提供一般的調(diào)試功能,諸如:?jiǎn)尾竭\(yùn)行、變量訪(fǎng)問(wèn)、處理器寄存器恢復(fù)、資源等級(jí)調(diào)試和斷點(diǎn)支持。 3 系統(tǒng)集成   3.1 網(wǎng)絡(luò)實(shí)時(shí)焊接控制系統(tǒng)應(yīng)用   此應(yīng)用提供了一個(gè)分布式的網(wǎng)絡(luò)解決方案,以監(jiān)控一個(gè)分布式的實(shí)時(shí)焊接控制網(wǎng)絡(luò)。用戶(hù)可以通過(guò)因特網(wǎng)監(jiān)控SMD[8]定位焊接控制網(wǎng)絡(luò)。SMD定位焊接系統(tǒng)如圖6所示。
  該應(yīng)用系統(tǒng)基于嵌入式網(wǎng)絡(luò)服務(wù)器的支持,為遠(yuǎn)程計(jì)算機(jī)動(dòng)態(tài)生成需要的網(wǎng)頁(yè),即監(jiān)控和配置。   3.2 系統(tǒng)驗(yàn)證以及結(jié)論   該網(wǎng)關(guān)系統(tǒng)的實(shí)時(shí)性能可通過(guò)使用儀器運(yùn)行相關(guān)任務(wù)進(jìn)行評(píng)測(cè)。對(duì)該整套實(shí)驗(yàn)操作所收集到的數(shù)據(jù)進(jìn)行分析,得出平均值、最大值以及最小值;再計(jì)算出樣品方差;測(cè)量出獲得實(shí)時(shí)時(shí)鐘計(jì)時(shí)數(shù)值所需的時(shí)間,再減去其他時(shí)間。所得到的數(shù)據(jù)說(shuō)明??。   為了確保監(jiān)控系統(tǒng)的網(wǎng)頁(yè)不會(huì)丟失任何控制器區(qū)域網(wǎng)信息,已采取了如下結(jié)構(gòu)的接收計(jì)時(shí)測(cè)量方法:網(wǎng)絡(luò)監(jiān)控系統(tǒng)的控制器網(wǎng)絡(luò)通信速度為125Kbps,系統(tǒng)運(yùn)行頻率為75MHz,控制器區(qū)域網(wǎng)絡(luò)標(biāo)準(zhǔn)限制了最小間幀間隔為3位節(jié)拍。因而一個(gè)滿(mǎn)荷的控制器網(wǎng)絡(luò)中,控制器區(qū)域網(wǎng)絡(luò)信息幀之間的空閑時(shí)間可以用式(1)計(jì)算:   從eCos的實(shí)時(shí)特性所顯示的結(jié)果,可以得到中斷反應(yīng)時(shí)間為5.31微秒。所以可以從式(2)得到計(jì)時(shí)結(jié)果。   通過(guò)以上驗(yàn)證得知,網(wǎng)絡(luò)監(jiān)控系統(tǒng)網(wǎng)頁(yè)能夠監(jiān)控SMD定位焊接控制網(wǎng)絡(luò),即使網(wǎng)絡(luò)總線(xiàn)滿(mǎn)荷時(shí)也不會(huì)丟失任何一個(gè)實(shí)時(shí)的監(jiān)控信息。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:基于多電平控制的高壓大功率...

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。