基于DSP的嵌入式TCP/IP協(xié)議的研究與實現(xiàn)
為了將以太網通信技術應用于電力自動化系統(tǒng)當中,本文結合電力自動化系統(tǒng)實際詳細分析了嵌入式TCP/IP協(xié)議的選取原則,采用DSP芯片和網卡接口控制芯片設計了以太網接口,介紹了DSP芯片對網卡接口控制芯片的控制過程和TCP/IP協(xié)議棧處理數(shù)據包的流程,完成了嵌入式TCP/IP系統(tǒng)的開發(fā)。該系統(tǒng)可以將數(shù)據按網絡協(xié)議處理,實現(xiàn)數(shù)據的以太網傳輸。
引言
近幾年來,我國電力自動化工作取得了很大進展,電力自動化系統(tǒng)的通信方式也不斷改進。最早是用RS485總線將各種保護、遠動設備聯(lián)在一起,用主從方式與主機通信,方式簡單,技術缺陷也比較多。后來出現(xiàn)的現(xiàn)場總線技術因其組網方便、抗干擾能力強等特點得到廣泛的應用。
現(xiàn)場總線標準有多種,電力自動化系統(tǒng)中最常用的是LONWORKS總線和CAN總線兩種。LONWORKS總線通信速率為78kbps和1.25Mbps,CAN總線通信速率為1Mbps。隨著電網的發(fā)展,現(xiàn)場總線標準不統(tǒng)一、傳輸速率低(最大也僅為1Mbps左右)的局限性逐漸暴露出來。以太網具有通用性強、技術成熟、帶寬迅速增加等特性,工業(yè)控制領域出現(xiàn)嵌入式技術,尤其是DSP技術的發(fā)展和
DSP在工業(yè)控制領域的廣泛應用,使得在電力自動化系統(tǒng)設計時可以利用嵌入式技術實現(xiàn)以太網通信,為電力自動化提供開放式、全分布、可互操作性的通信平臺。網絡傳輸?shù)膶崟r性是電力自動化系統(tǒng)內部通信網的關鍵指標。以太網帶寬達到10Mb/s,可承受的網絡負荷很大,加上交換式智能集線器的使用,選擇10Mb/s以太網作為變電站自動化系統(tǒng)的內部通信網,其網絡傳輸實時性是有保證的。本文將著重討論嵌入式TCP/IP協(xié)議的選擇和DSP實現(xiàn)。
嵌入式協(xié)議的選擇
TCP/IP協(xié)議是一組不同層次上的多個協(xié)議的組合,通常被認為是一個包含鏈路層、網絡層、傳輸層和應用層的四層協(xié)議系統(tǒng)[2]。嵌入式系統(tǒng)是為完成某種特定的功能而設計的專用系統(tǒng)。嵌入式系統(tǒng)不要求(也不可能)實現(xiàn)所有的TCP/IP協(xié)議,所以嵌入式TCP/IP是對TCP/IP協(xié)議族進行選擇而形成的協(xié)議集合。
鏈路層協(xié)議的選擇
鏈路層協(xié)議的選擇鏈路層最基本的功能是將物理層提供的原始傳送比特流可能出錯的物理連接改造為邏輯上無差錯的數(shù)據連接,為其上層協(xié)議發(fā)送和接收數(shù)據包。以太網遵循IEEE802.3所規(guī)定的CSMA/CD(載波監(jiān)聽多路訪問及沖突監(jiān)測)協(xié)議,實現(xiàn)該協(xié)議可以采用通用的NIC(networkinterfacecontroller網絡接口控制)芯片。另外,以太網上數(shù)據的傳輸是采用網絡的MAC地址來進行識別的,這就要求系統(tǒng)有實現(xiàn)IP地址到MAC地址的轉換功能,即ARP(地址解析)協(xié)議。ARP協(xié)議包括ARP請求和ARP響應兩部分,系統(tǒng)要同其他計算機通信,就必須要支持ARP響應。ARP請求在本地建立了一個IP地址到MAC地址的映射,保證了對外通信的有的放矢。RARP(逆地址解析)協(xié)議主要用于解決如何從MAC地址得到IP地址,主要用于無盤工作站中。在本嵌入式系統(tǒng)中可以把IP地址存儲于本地存儲器中,不必從其他服務器得到IP地址,這樣就無需實現(xiàn)RARP協(xié)議。
網絡層協(xié)議的選擇
網絡層主要負責處理數(shù)據包在網絡中的活動。在TCP/IP協(xié)議族中,網絡層協(xié)議包括IP協(xié)議(網際協(xié)議)、ICMP協(xié)議(Internet控制報文協(xié)議)以及IGMP協(xié)議(Internet組管理協(xié)議)等。IP協(xié)議是TCP/IP族的核心協(xié)議,它使異構網絡之間的通信成為可能。因此RTU等系統(tǒng)數(shù)據跨越不同的網絡進行傳輸就必須要實現(xiàn)IP協(xié)議。ICMP中規(guī)定了多種協(xié)議類型和代碼,如果完全的實現(xiàn)也要耗費不少的系統(tǒng)資源,本嵌入式系統(tǒng)中,在ICMP協(xié)議中能夠測試網絡的連通情況即可,因此只需實現(xiàn)ICMP中類型號為0、代碼為0的Ping應答協(xié)議。IGMP協(xié)議主要用于支持主機和路由器進行組播,在將報文發(fā)給多個接收者時,嵌入式TCP/IP作為一種專用系統(tǒng)接入網絡的技術,為了降低處理協(xié)議的復雜程度,可以直接采用廣播方式,不必要采用組播的方式進行通信。因此在設計中不考慮實現(xiàn)IGMP協(xié)議。
傳輸層協(xié)議的選擇
傳輸層主要在兩臺主機之間提供端到端的通信。傳輸層有兩種不相同的傳輸協(xié)議:TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據報協(xié)議)。TCP是面向連接的,在不可靠的網絡服務上提供端到端的可靠字節(jié)流。TCP協(xié)議設計了嚴格的3次建立連接握手過程、4次關閉連接握手過程以及捎帶確認信息并通過滑動窗口進行流量控制的數(shù)據傳輸過程。UDP協(xié)議是用來提供不面向連接的,它只是簡單地把數(shù)據報從一臺主機發(fā)送到另一臺主機,但并不保證該數(shù)據報能到達另一端,可靠性必須由應用層來提供。在微機遠動和故障錄波等實時性要求不太高的設備中采用TCP協(xié)議,保證傳輸?shù)馁|量。在微機保護和自動控制等實時性要求高的設備中采用UDP協(xié)議,其固有的傳輸可靠性低的缺陷可通過應用層的協(xié)議進行彌補。
應用層協(xié)議選擇
應用層協(xié)議主要是指用戶進程。在電力自動化系統(tǒng)中,可以采用國際標準遠動通信協(xié)議IEC60870-5-103或IEC60870-5-104協(xié)議等。IEC61850協(xié)議草案是IEC(國際電工委員會)針對電力系統(tǒng)自動化制定的面向對象和設備的無縫聯(lián)接通信協(xié)議。該協(xié)議正式公布以后,也可以采用。





