《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 业界动态 > EPA智能模块网络接口的设计及实现

EPA智能模块网络接口的设计及实现

2008-02-25
作者:陈清洪1,2,秦大同1

摘 要:介紹了工業(yè)以太網(wǎng)" title="工業(yè)以太網(wǎng)">工業(yè)以太網(wǎng)的體系結(jié)構(gòu)及網(wǎng)絡(luò)接口" title="網(wǎng)絡(luò)接口">網(wǎng)絡(luò)接口在遠(yuǎn)程監(jiān)控" title="遠(yuǎn)程監(jiān)控">遠(yuǎn)程監(jiān)控中的作用,設(shè)計(jì)了EPA智能模塊" title="智能模塊">智能模塊網(wǎng)絡(luò)接口硬件電路并給出了軟件實(shí)現(xiàn)方法的程序流程框圖,實(shí)現(xiàn)了對(duì)現(xiàn)場設(shè)備的遠(yuǎn)程監(jiān)控和訪問的功能。
關(guān)鍵詞: 工業(yè)以太網(wǎng)(EPA)? 智能模塊? 遠(yuǎn)程DMA? 數(shù)據(jù)封裝

?

??? 基于工業(yè)以太網(wǎng)的現(xiàn)場總線控制系統(tǒng)是新型控制系統(tǒng)的發(fā)展方向。隨著計(jì)算機(jī)、控制、通信技術(shù)的發(fā)展,模擬儀表向智能儀表發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)向現(xiàn)場設(shè)備延伸,底層控制儀表由分立設(shè)備向共享設(shè)備發(fā)展[1]。
  ?在工業(yè)以太網(wǎng)遠(yuǎn)程控制系統(tǒng)中,人們可以通過計(jì)算機(jī)網(wǎng)絡(luò)對(duì)工業(yè)現(xiàn)場" title="工業(yè)現(xiàn)場">工業(yè)現(xiàn)場設(shè)備的運(yùn)行狀態(tài)進(jìn)行監(jiān)視,而且還可以通過網(wǎng)絡(luò)對(duì)現(xiàn)場設(shè)備的運(yùn)行參數(shù)進(jìn)行修改,使之按最佳的狀態(tài)運(yùn)行,實(shí)現(xiàn)效益的最大化。如何使現(xiàn)場設(shè)備與局域網(wǎng)絡(luò)有效連接并實(shí)現(xiàn)可靠的網(wǎng)絡(luò)通信就成為工業(yè)控制領(lǐng)域關(guān)注的問題。筆者要探討的就是在EPA智能模塊中,如何實(shí)現(xiàn)網(wǎng)絡(luò)接口,使之與現(xiàn)場設(shè)備和局域網(wǎng)絡(luò)有效連接。
1 EPA系統(tǒng)的體系結(jié)構(gòu)
  《EPA(Ethernet for Plant Automation)標(biāo)準(zhǔn)》(全稱《用于工業(yè)測量與控制系統(tǒng)的EPA系統(tǒng)結(jié)構(gòu)與通信標(biāo)準(zhǔn)》)是在國家“863”計(jì)劃支持下,由國內(nèi)部分高校、科技院所、高新技術(shù)企業(yè)起草的我國第一個(gè)擁有自主知識(shí)產(chǎn)權(quán)的現(xiàn)場總線國家標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)被國際電工委員會(huì)IEC作為PAS標(biāo)準(zhǔn)(Pulblic Available Specification)予以發(fā)布,并被IEC接收為正在制定的國際實(shí)時(shí)以太網(wǎng)標(biāo)準(zhǔn)IEC61784-2中的實(shí)時(shí)以太網(wǎng)類型14(Common Profile Family 14, CPF 14),成為我國第一個(gè)被國際認(rèn)可和接受的工業(yè)自動(dòng)化領(lǐng)域的標(biāo)準(zhǔn)。
??? 對(duì)于采用以太網(wǎng)等技術(shù)所帶來的網(wǎng)絡(luò)安全問題,《EPA標(biāo)準(zhǔn)》規(guī)定了從企業(yè)信息管理層、過程監(jiān)控層和現(xiàn)場設(shè)備層三個(gè)層次(如圖1所示)的分層化的網(wǎng)絡(luò)安全管理措施[2]。

?

?


  EPA現(xiàn)場設(shè)備采用特定的網(wǎng)絡(luò)安全管理功能塊,對(duì)其接收到的所有報(bào)文進(jìn)行訪問權(quán)限、訪問密碼等檢測,只有合法的報(bào)文才能得到處理,而其他非法報(bào)文將直接予以丟棄,避免了非法報(bào)文的干擾。
  在過程監(jiān)控層,采用EPA網(wǎng)絡(luò)對(duì)不同微網(wǎng)段進(jìn)行邏輯隔離,以防止非法報(bào)文流量干擾EPA網(wǎng)絡(luò)的正常通信,占用網(wǎng)絡(luò)帶寬資源。
  對(duì)于來自于互聯(lián)網(wǎng)上的遠(yuǎn)程訪問,則采用EPA代理服務(wù)器以及各種可用的信息網(wǎng)絡(luò)安全管理措施,以防止遠(yuǎn)程非法訪問。
  筆者研究的EPA智能模塊就是為了解決現(xiàn)場設(shè)備層中現(xiàn)場設(shè)備與控制層的連接問題,以實(shí)現(xiàn)對(duì)現(xiàn)場設(shè)備的遠(yuǎn)程監(jiān)控和管理。而現(xiàn)場設(shè)備中有大量的參數(shù)或信息需要通過網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程調(diào)節(jié)和控制,以滿足遠(yuǎn)程監(jiān)控要求。要實(shí)現(xiàn)這一過程,現(xiàn)場設(shè)備與局域網(wǎng)進(jìn)行信息交換的橋梁——EPA智能模塊中的網(wǎng)絡(luò)接口電路部分成為關(guān)鍵,下面就這一問題進(jìn)行探討。
2 電路主要芯片介紹
2.1?混合信號(hào)ISP FLASH微控制器C8051F020介紹
???? C8051F020是CYGNAL公司生產(chǎn)的100腳TQFT封裝8位MCU芯片,它使用CYGNAL的專利CIP-51微控制器內(nèi)核。CIP-51與MCS-51TM 指令集完全兼容,可以使用標(biāo)準(zhǔn)803x/805x的匯編器和編譯器進(jìn)行軟件開發(fā)。CIP-51內(nèi)核具有標(biāo)準(zhǔn)8052的所有外設(shè)部件,包括5個(gè)16位的計(jì)數(shù)器/定時(shí)器、兩個(gè)全雙工UART、256字節(jié)內(nèi)部RAM、128字節(jié)特殊功能寄存器SFR地址空間及8個(gè)字節(jié)寬的I/O端口[3]。
  除了完全兼容8051并提高了執(zhí)行速度,CIP-51還提供多達(dá)22個(gè)中斷源,允許大量的模擬和數(shù)字外設(shè)中斷微控制器。在設(shè)計(jì)一個(gè)多任務(wù)實(shí)時(shí)系統(tǒng)時(shí)這些增加的中斷源是非常有用的。CIP-51內(nèi)部還有一個(gè)獨(dú)立運(yùn)行的時(shí)鐘發(fā)生器,系統(tǒng)可以選擇使用內(nèi)部時(shí)鐘或者外部時(shí)鐘,運(yùn)行中可以進(jìn)行切換, CIP-51內(nèi)核還集成了64KB FLASH,4KB片內(nèi)SRAM。包含的仿真電路和JTAG接口能夠方便用戶進(jìn)行開發(fā)和在線調(diào)試。C8051F020在51內(nèi)核的基礎(chǔ)上集成了許多模擬外設(shè)和數(shù)字外設(shè)以及在線編程控制模塊JTAG。
2.2?以太網(wǎng)控制器RTL8019AS介紹
??? RTL8019AS的結(jié)構(gòu)如圖2所示。RTL8019AS是由Realtek公司生產(chǎn)的基于ISA總線的8/16位10MB以太網(wǎng)控制器。它的主要特點(diǎn)有:100腳PQFP封裝,體積??;支持Ethernet II 與IEEE802.3 10Base5,10Base2,10BaseT標(biāo)準(zhǔn);支持全雙工通信,收發(fā)可以同時(shí)達(dá)到10Mbps的速度;內(nèi)建數(shù)據(jù)預(yù)讀功能以提高性能;支持UTP、AUI和BNC三種接口且能自動(dòng)檢測;支持對(duì)10BaseT拓?fù)浣Y(jié)構(gòu)的自動(dòng)極性修正;內(nèi)置16KB雙口SRAM,用于收發(fā)緩沖;支持8/16位數(shù)據(jù)總線,16個(gè)I/O基地址選擇,有8個(gè)中斷源;有4個(gè)診斷輸出引腳,可編程控制4個(gè)LED幫助了解工作狀態(tài);支持三種節(jié)電方式[4]。

?


??? RTL8019AS內(nèi)部可分為遠(yuǎn)程DMA接口、本地DMA接口、MAC(介質(zhì)訪問控制)邏輯、數(shù)據(jù)編碼解碼邏輯和其他端口。遠(yuǎn)程DMA接口是單片機(jī)對(duì)RTL8019AS內(nèi)部RAM進(jìn)行讀寫的總線,單片機(jī)收發(fā)數(shù)據(jù)只需對(duì)遠(yuǎn)程DMA操作。本地DMA接口是RTL8019AS與網(wǎng)線的連接通道,完成控制器與網(wǎng)線的數(shù)據(jù)交換。MAC(介質(zhì)訪問控制)邏輯完成以下功能:當(dāng)單片機(jī)向網(wǎng)上發(fā)送數(shù)據(jù)時(shí),先將一幀數(shù)據(jù)通過遠(yuǎn)程DMA通道送到RTL8019AS中的發(fā)送緩存區(qū),然后發(fā)出傳送命令;當(dāng)RTL8019AS完成了上一幀的發(fā)送后,再開始此幀的發(fā)送。RTL8019接收到的數(shù)據(jù)通過MAC比較、CRC校驗(yàn)后,由FIFO存到接收緩沖區(qū);收滿一幀后,以中斷或寄存器標(biāo)志的方式通知主處理器。FIFO邏輯對(duì)收發(fā)數(shù)據(jù)作16字節(jié)的緩沖,以減少對(duì)本地DMA請(qǐng)求的頻率。要接收和發(fā)送數(shù)據(jù)包就必須通過DMA讀寫RTL8019AS內(nèi)部的16KB RAM。它實(shí)際上是雙端口的RAM,有兩套總線連接到該RAM,一套總線是RTL8019AS讀或?qū)懺揜AM,即本地DMA;另一套總線是單片機(jī)讀或?qū)懺揜AM,即遠(yuǎn)程DMA。
  RTL8019AS具有32位輸入輸出地址。其中00H~0FH共16個(gè)地址,為寄存器地址。寄存器分為4頁:PAGE0、PAGE1、PAGE2、PAGE3,由RTL8019AS的CR(Command Register命令寄存器)中的PS1、PS0位來決定要訪問的頁。遠(yuǎn)程DMA地址包括10H~17H,都可以用來做遠(yuǎn)程DMA端口。復(fù)位端口包括18H~1FH共8個(gè)地址,功能一樣,用于RTL8019AS復(fù)位。
3? 硬件實(shí)現(xiàn)電路原理
?? ?網(wǎng)絡(luò)接口的硬件實(shí)現(xiàn)電路如圖3所示。RTL8019AS的JP引腳接高電平,使之工作在跳線工作模式;IOCS16B通過一個(gè)27電阻接地,使RTL8019AS工作在8位數(shù)據(jù)傳輸方式;AEN是地址許可引腳,低電平有效;IORB與IOWB引腳分別與C8051F020的/RD和/WD相連;RTL8019AS的復(fù)位由C8051F020的P5口第2腳控制;RTL8019AS內(nèi)置了10BASE-T收發(fā)器,它與以太網(wǎng)的連接通過一個(gè)隔離變壓器后接入一個(gè)RJ45接口。

?


 ? 在本設(shè)計(jì)中采用了Hanrun公司的HR901170A作為連接網(wǎng)絡(luò)的接口,它內(nèi)部有隔離變壓器,所以設(shè)計(jì)的智能模塊網(wǎng)絡(luò)接口電路不再需要考慮隔離變壓器,簡化了電路。
  RTL8019AS的地址線有20根,在這里只用了SA0~SA9,低8位通過鎖存器74HC573連接到C8051F020的P7口(A0~A7),SA8和SA9分別與C8051F020的P4.3、P6.7(A19與A15)連接。C8051F020訪問RTL8019AS的寄存器的地址為0X8000~0X8010,其中0X8000~0X800F為訪問4頁寄存器用的地址(訪問前要先指定頁面),0X8010為遠(yuǎn)程DMA地址,RTL8019AS的復(fù)位端口地址沒有使用。RTL8019AS的數(shù)據(jù)線有16根,因?yàn)楣ぷ饔?位方式,所以只用了D7~D0,與C8051F020的P7口連接。地址線和數(shù)據(jù)線共用一個(gè)口,這樣可以節(jié)約單片機(jī)的接口,用于智能模塊的其他功能的實(shí)現(xiàn),讓EPA智能模塊的功能更加強(qiáng)大。
  同時(shí)在設(shè)計(jì)時(shí)還考慮了工業(yè)現(xiàn)場采集的各種信號(hào)對(duì)EPA智能模塊的干擾問題,將智能模塊的輸入信號(hào)處理電路的供電與單片機(jī)及網(wǎng)絡(luò)接口的供電完全獨(dú)立,以消除干擾。
4 軟件實(shí)現(xiàn)
????系統(tǒng)軟件實(shí)現(xiàn)流程圖見圖4所示。

?


??? 系統(tǒng)在上電復(fù)位后,首先要進(jìn)行系統(tǒng)初始化,即對(duì)其工作參數(shù)進(jìn)行設(shè)置,以確保其正常工作。其中主要是對(duì)一些寄存器進(jìn)行配置。例如接收配置寄存器、發(fā)送配置寄存器、數(shù)據(jù)配置寄存器、中斷屏蔽寄存器、多組播地址寄存器等等,同時(shí)設(shè)置系統(tǒng)本身的48位物理地址(每個(gè)地址都是惟一的,在網(wǎng)絡(luò)中進(jìn)行區(qū)分)。另外,對(duì)芯片內(nèi)置的16KB RAM進(jìn)行分配。這里設(shè)置為發(fā)送緩沖區(qū)和接收緩沖區(qū),各自的空間大小由自己決定,并有專門的內(nèi)存指針確定地址的起始。當(dāng)所有初始化完成之后,就開始查詢工作。其軟件流程圖見圖4。當(dāng)有數(shù)據(jù)到來時(shí),先將其目的地址與系統(tǒng)的物理地址相比較,如果地址不相符,則將該數(shù)據(jù)丟棄;如相符,則開始數(shù)據(jù)接收。當(dāng)有數(shù)據(jù)要發(fā)送時(shí),先將待發(fā)送的數(shù)據(jù)按幀格式進(jìn)行封裝,需要設(shè)置以太網(wǎng)目的地址、源地址、協(xié)議類型,再按所設(shè)置的協(xié)議類型來設(shè)置數(shù)據(jù)段;然后給出發(fā)送緩沖區(qū)首地址和數(shù)據(jù)包長度,啟動(dòng)發(fā)送命令,通過遠(yuǎn)程DMA通道送到RTL8019AS中的發(fā)送緩沖區(qū),即可實(shí)現(xiàn)RTL8019AS的發(fā)送功能,并將結(jié)果寫入狀態(tài)寄存器中。再啟動(dòng)本地DMA,將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上。由于協(xié)議類型很多,有TCP、UDP、ARP、RARP、SNMP等,為了保證數(shù)據(jù)的可靠傳輸,在此采用了TCP數(shù)據(jù)封裝。在單片機(jī)中寫入相應(yīng)的TCP控制程序,如數(shù)據(jù)的拆包、打包等處理,以確保測控時(shí)數(shù)據(jù)的正確傳輸。
??? 本文所設(shè)計(jì)的EPA智能模塊網(wǎng)絡(luò)接口電路已應(yīng)用到重慶某公司的國家創(chuàng)新基金項(xiàng)目《EPA智能模塊》,完全實(shí)現(xiàn)了遠(yuǎn)程監(jiān)控與訪問,實(shí)現(xiàn)了遠(yuǎn)程參數(shù)的修改以調(diào)節(jié)現(xiàn)場設(shè)備的運(yùn)行。對(duì)于那些生產(chǎn)現(xiàn)場工藝環(huán)節(jié)較多、控制精度和實(shí)時(shí)條件要求較高、需要隨時(shí)了解現(xiàn)場設(shè)備運(yùn)行情況以便進(jìn)行參數(shù)調(diào)節(jié)和控制的工業(yè)現(xiàn)場,該模塊提供了一種簡便有效、經(jīng)濟(jì)實(shí)用的實(shí)現(xiàn)方法,可以推廣到實(shí)行網(wǎng)絡(luò)化控制的工業(yè)現(xiàn)場。
參考文獻(xiàn)
[1]? 馮冬芹.淺談以太網(wǎng)應(yīng)用于工業(yè)現(xiàn)場的關(guān)鍵技術(shù)[J].世界儀表與自動(dòng)化,2002,(8).
[2]? 高露,于海兵. EPA體系結(jié)構(gòu).計(jì)算機(jī)工程,2004,(9).
[3]? 鮑可敬,趙念強(qiáng).C8051F單片機(jī)原理及應(yīng)用.北京:中國電力出版社,2006.
[4]? Realtek Semiconductor CORP. Realtek Full-Duplex Ethernet Controller with Plug and Play Function,2001,4.
[5]? Andrew S.Tanenbaum. Computer Networks.4th ed. 2004.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。

相關(guān)內(nèi)容