0 引言
隨著工業(yè)以太網(wǎng)的迅猛發(fā)展,各種家電設備、儀器儀表以及工業(yè)生產(chǎn)過程中的數(shù)據(jù)采集和控制設置正在逐步走向網(wǎng)絡化,以實現(xiàn)網(wǎng)絡資源共享。但是,由于工業(yè)生產(chǎn)中很多儀表設備都采用嵌入式系統(tǒng),只能提供串口通信,而無法直接連接到以太網(wǎng)上,所以,以太網(wǎng)串口服務器在工業(yè)以太網(wǎng)和儀表設備之間具有非常重要的橋接作用。
以太網(wǎng)串口服務器可以將配有串口的設備連接到局域網(wǎng)或廣域網(wǎng)中,并實現(xiàn)儀表設備的串口數(shù)據(jù)幀和以太網(wǎng)數(shù)據(jù)幀之間的相互轉換和發(fā)送,從而通過以太網(wǎng)啟動工業(yè)設備的串口,將工業(yè)生產(chǎn)中的遠端設備所發(fā)送的串行數(shù)據(jù)傳送到任何一臺計算機上,就像它們近在咫尺一樣。目前,以太網(wǎng)串口服務器的開發(fā)和應用非常普遍,其中以美國B&B公司提供的以太網(wǎng)串口服務器ESP904的應用較為典型,它利用因特網(wǎng)的高帶寬、遠距離等特性,可以讓傳統(tǒng)的RS-232/422/485設備立即聯(lián)網(wǎng),并在任何位置通過網(wǎng)絡來管理和配置遠程的串口設備,因而是工業(yè)應用的理想選擇。
1 ESP904的主要特性
ESP904是B&B公司專為苛刻的工業(yè)環(huán)境應用而設計的VlinxTM ESP系列以太網(wǎng)串口服務器,該器件具有由IP30認證的輕巧堅固的金屬外殼,可支持TCP服務器、TCP客戶端、UDP、虛擬COM和配對(Pair)模式,并可自動偵測10/100Mbps以太網(wǎng)端口,而且安裝便捷。它可以通過ESP管理器、Web和Telnet控制臺管理以進行遠程升級或恢復默認設置,也可以對控制模式進行遠程手動管理,并可通過LED指示燈提供快捷的運行狀態(tài)顯示。設計時,可以通過軟件選擇RS-232、RS-422或者RS-485端口,而且,半/全雙工皆可。此外,ESP904還帶有局域網(wǎng)RJ45接口和串口DB9公頭接口,可管理并支持多個TCP連接,也可為windows NT/2000/XP/VISTA提供虛擬COM驅(qū)動。
如果已經(jīng)有一個串口設備,并處于以太網(wǎng)局域網(wǎng)或廣域網(wǎng)中,那么,就可以用串口服務器與該串品設備相匹配。就好像控制室的計算機顯示設備直接連到監(jiān)控器上一樣,這樣,不需要離開辦公桌就可以使其發(fā)揮更大功能,甚至可以在局域網(wǎng)之外通過網(wǎng)絡進行故障診斷。ESP9 04四端口以太網(wǎng)串口服務器提供有以太網(wǎng)到RS232\RS422\RS485的串口連接,可通過局域網(wǎng)或廣域網(wǎng)使用直接IP模式、虛擬COM模式或者配對(Pair)模式進行連接。
虛擬COM口模式使用ESP管理器軟件中的Install Virtual COM來在windows中安裝驅(qū)動程序,新的COM口會出現(xiàn)在計算機的Windows設備管理器中,這樣就在局域網(wǎng)或者廣域網(wǎng)中的計算機和以太網(wǎng)串口服務器的IP地址間創(chuàng)建了一個虛擬的連接。Windows應用程序使用標準Windows API指令并通過這個虛擬連接來實現(xiàn)通訊,從而與ESP904上一個端口的遠程串行設備相連以進行通訊。連接建立后,局域網(wǎng)對程序和串口設備來說就是透明的,這就好像這些串口設備與PC上的物理COM口直接連接一樣。虛擬串行端口軟件可將應用數(shù)據(jù)轉換為IP數(shù)據(jù)包,并通過網(wǎng)絡發(fā)送到ESP904,ESP904又可以將IP數(shù)據(jù)包轉換為串行數(shù)據(jù),并把數(shù)據(jù)發(fā)送到ESP904上的串行端口。使用這種模式,ESP904必須設置為TCP服務器或者UDP服務器并指派通訊端口號,虛擬串口驅(qū)動的就是TCP或者UDP客戶端。
IP直連模式允許應用程序使用TCP/IP或者UDP/IP套間字程序與以太網(wǎng)串口服務器上的串口直接建立連接。在這種應用中,串口服務器被配置為TCP或者UDP服務器。運行在PC上的套間字程序可與串口服務器的IP地址建立通訊連接。服務器的串口可以直接發(fā)送和接收數(shù)據(jù)。當使用UDP協(xié)議時,服務器就被配置為廣播數(shù)據(jù)來接收和發(fā)送來自多IP地址的數(shù)據(jù)。如果自己編寫應用方案,一般推薦選擇這種連接模式。
配對(Pair)模式也叫串行隧道模式,在這個模式下,串行數(shù)據(jù)被封裝在數(shù)據(jù)包中并通過以太網(wǎng)傳送。通過使用兩個以太網(wǎng)串口服務器和一個局域網(wǎng),任何兩個能夠用串口通訊的串行設備將都能夠使用ESP904和局域網(wǎng)進行通訊,此時串行服務器可以自動處理網(wǎng)絡端通訊。在此模式中。有兩個ESP904服務器連接到網(wǎng)絡,一個配置為TCP或者UDP客戶端,另一個則為TCP/UDP服務器,且這兩個串口服務器都用其對接設備的IP地址來編程。只要電纜長度適合你的局域網(wǎng)或廣域網(wǎng)的規(guī)模,這種操作模式可以在任意兩個串口設備之間建立串口連接。
此外,ESP904以太網(wǎng)串口服務器的心跳連接保護功能也可以在虛擬串口模式或者串行隧道模式下為用戶提供穩(wěn)定的通訊,ESP904以太網(wǎng)串口服務器的這個特征可以在系統(tǒng)掉電或者以太網(wǎng)連接丟失等原因造成臨時通訊丟失的情況下恢復連接。一般情況下,如果通訊中斷,串口服務器的心跳特征會每隔5秒鐘嘗試重新建立一次連接,直至連接恢復。如果沒有這一便捷功能,一旦設備失去連接,通訊中斷,就只有通過人工修復才能重新建立連接。
ESP904的管理器軟件也可為用戶提供完整的辦公桌管理功能,包括配置設備、固件升級以及監(jiān)控活動狀態(tài),其監(jiān)控端口功能允許使用局域網(wǎng)或者廣域網(wǎng)中的任意一臺PC,來對網(wǎng)絡及連接到網(wǎng)絡中的設備進行實時監(jiān)控、診斷,并顯示關聯(lián)硬件的通訊狀態(tài)。
2 ESP904以太網(wǎng)串口服務器的配置
ESP904提供有ESP管理器軟件、網(wǎng)頁服務器、控制臺模式和遠程登錄模式等4種不同的接口方式來配置以太網(wǎng)串口服務器,從而可以很方
便地對ESP904的屬性進行配置或恢復默認設置,也可以對控制模式進行遠程手動管理。下面介紹怎樣通過ESP管理器對ESP904串口服務器進行設置。
安裝并運行VLINX ESP管理器可自動尋找并顯示網(wǎng)絡上所有ESP904串口服務器的名稱、IP地址、網(wǎng)絡協(xié)議、端口號及端口狀態(tài),每個串口服務器對應四個串口端口,雙擊ESP904管理器列表上的服務器屬性,就會彈出圖1所示的對話框。
圖1所示的對話框中的服務器名稱(Server)用于給串行服務器指派最多由16個字符組成的名字,以便區(qū)別局域網(wǎng)上的多個串行服務器,當
ESP管理器在局域網(wǎng)中發(fā)現(xiàn)了串行服務器,就會顯示串行名字和IP地址,以允許用戶區(qū)別不同的串行服務器。
DHCP是局域網(wǎng)管理系統(tǒng)的一部分。DHCP域提供有兩個選擇:不使能和使能,不使能是正常的或者缺省設置。當使能時,ESP904發(fā)送DHCP
請求到DHCP服務器,并要求分派動態(tài)IP地址、子網(wǎng)掩碼和網(wǎng)關給ESP904。如果DHCP在網(wǎng)絡上不可用,則在10秒后,ESP904超時,但缺省值將
保留。主服務器與客戶端之間的通訊軟件要求連接到一個具體的IP地址串口服務器。如果DHCP重新分派一個不同的IP地址,軟件將不能夠與硬件通訊,因此,推薦使用一個靜態(tài)的IP地址。一般在使用ESP904串口服務器時,其IP地址就已經(jīng)分配好了,所以不需要使能DHCP。
ESP904上的串口波特率必須與連接設備的波特率相匹配,除非使用虛擬串口模式。在虛擬串口模式下,軟件程序?qū)⒔⒋谠O置。
網(wǎng)絡通訊協(xié)議的選擇要根據(jù)實際需要來確定使用TCP還是UDP協(xié)議。如果應用不要求UDP,就選擇TCP,它能保證穩(wěn)定的通訊并有差錯檢查;然而,UDP能提供更快的傳輸。但應注意,根據(jù)選擇TCP和UDP協(xié)議模式的不同,它們的一些參數(shù)設置選項也不同。
圖1對話框里允許用戶輸入2個ASCII字符來分割一條消息的開始和結尾,當一條包含這些分隔符的消息在串行端口被接收到時,在串行緩沖區(qū)所包含的數(shù)據(jù)將被打包為以太網(wǎng)數(shù)據(jù)包并發(fā)送到以太網(wǎng)端口。如果只有分隔符1被設置(分隔符2為0或者空),ESP901/902收到分隔符1就將串行緩沖區(qū)的數(shù)據(jù)打包為以太網(wǎng)數(shù)據(jù)包,并發(fā)送到以太網(wǎng)端口。如果接收到的串行數(shù)據(jù)大于1KB,它將自動打包為以太網(wǎng)數(shù)據(jù)包并發(fā)送到以太網(wǎng)端口。
Force Transmit參數(shù)表示允許用戶設置數(shù)據(jù)傳輸之間的最大時間限制,設置值乘以100 ms就是Force Transmit時間,當所花費的時間達到這個域配置的時間時,TCP/IP協(xié)議將在當前串行緩沖區(qū)打包數(shù)據(jù)并將其發(fā)送到以太網(wǎng)端口。
TCP/UDP端口的缺省值為4000、4001、4002、4003,它們分別單獨對應串口服務器的端口1、2、3、4,如果端口號屬性被修改,那么,
被安裝電腦的設備管理器虛擬COM口設置也將被改變。在直接IP或者虛擬COM操作模式中,ESP904菜單里的端口號設置必須與虛擬COM或者套間字軟件端口設置相匹配。
服務器串行端口可根據(jù)需要配置為控制臺(Console)模式、升級(Upgrade)模式、缺省模式、RS232模式、RS422模式和RS485模式,用戶
可以根據(jù)需要對端口進行配置。下面分別對各種操作模式進行介紹。
在控制臺模式,ESP904管理器軟件可從運行在PC上的超級終端與串口服務器進行通訊,PC通過串口線連接到服務器的端口1的232串口上。由于PC為DTE設備,904串口配置為DTE(DB9),所以,必須使用交叉線。
在升級模式,更新的固件能通過串口從PC上傳到904的端口1(端口1為RS-232串口)。也可以通過網(wǎng)絡連接,用ESP管理器和虛擬串口與904端口1形成映射來進行升級,從而上傳新的固件到服務器。
在缺省模式,當服務器屬性更新時,所有的配置設置將返回到他們的缺省值。ESP904端口的缺省設置為:端口1為控制臺模式,端口2、3、4為RS-232模式。
RS232模式、RS422模式和RS485模式的選擇將服務器端口分別配置為RS232接口、RS422接口和RS485接口,當服務器被更新時,服務器上
選擇的端口將變成對應的接口。
3 ESP904在ROV控制體系中的應用
傳統(tǒng)的水下機器人內(nèi)部數(shù)據(jù)通信系統(tǒng)是基于串行總線的通訊系統(tǒng)。但是,隨著近年來以太網(wǎng)技術的快速發(fā)展,特別是高速以太網(wǎng)技術的發(fā)展,極大地減少了數(shù)據(jù)在網(wǎng)絡傳輸上的延遲,而工業(yè)以太網(wǎng)交換機能夠把控制網(wǎng)絡分成若干個相互獨立的沖突域,故可避免不同沖突域之間的節(jié)點因競爭線路而發(fā)生碰撞,從而提高了數(shù)據(jù)在網(wǎng)絡中傳輸?shù)目煽啃院头€(wěn)定性。因此,在工業(yè)控制中,越來越多的傳統(tǒng)現(xiàn)場總線控制網(wǎng)絡被工業(yè)以太網(wǎng)所代替,并已發(fā)展成為一個技術趨勢。為此,本文的HYSUB130-4000 ROV(ROV,Remotely Operated Vehicle)系統(tǒng)在遙控水下機器人控制系統(tǒng)中也采用了光纖以太網(wǎng)通訊體系結構。
HYSUB130-4000 ROV系統(tǒng)除了較多的控制計算機接入到以太網(wǎng)網(wǎng)絡體系中外,還有很多嵌入式控制模塊,這些模塊只能提供串口通訊模
式。為了能將這些嵌入式控制模塊接入到遙控水下機器人的以太網(wǎng)控制系統(tǒng)中,本系統(tǒng)在開發(fā)過程中采用了以太網(wǎng)串口服務器ESP904,它的串口轉以太網(wǎng)性能可以很好的解決這個問題。HYSUB130-4000ROV系統(tǒng)的以太網(wǎng)控制體系如圖2所示。
本系統(tǒng)中的甲板控制計算機和ROV本體控制計算機是ROV控制系統(tǒng)里的主控制計算機,是ROV系統(tǒng)的大腦和“指揮中心”,其他計算機用
于輔助管理視頻、導航數(shù)據(jù)、切換控制等操作。除此之外,HYSUB130-4000ROV系統(tǒng)還采用了ESP904以太網(wǎng)串口服務器來將眾多嵌入式控制模
塊接入以太網(wǎng)。甲板串口服務器ESP904連接ROV本體遠程控制模塊、駕駛員操縱桿控制模塊、7功能機械手操縱桿控制模塊和電源分配單元控制模塊,它們通過RS-485總線連接到ESP904服務器的串行端口。水下ROV本體串口服務器ESP904連接CTD傳感器、遠程I/O控制模塊、采樣藍控制模塊和工具閥箱控制模塊,它們分別根據(jù)需要通過RS-232或者RS-485總線連接到ESP904的串行端口上,這樣就可以使以太網(wǎng)控制系統(tǒng)中的任何一臺計算機都通過以太網(wǎng)像訪問真正的串口設備一樣去訪問分別連接到ESP904串口服務器上的設備。
4 結束語
由于遙控水下機器人控制系統(tǒng)的慣性較大,其控制周期接近于秒級,因此,通過實踐證明,以太網(wǎng)數(shù)據(jù)傳輸能夠很好的滿足遙控水下機器人控制體系的控制性能,而且可以通過交換機擴展以太網(wǎng)串口服務器,同時在理論上還可以擴展任意多串口設備,因而可以使更多設備通過網(wǎng)絡進行通訊,并為設備的擴展提供了更大的接口空間。此外,通過ESP904以太網(wǎng)串口服務器可還以實時查看狀態(tài),完成配置,并通過網(wǎng)絡中的任意計算機實現(xiàn)本地網(wǎng)絡及相關設備的故障診斷,也能實時檢測通訊中斷情況,保持通訊暢通,從而極大地方便實際應用。