1 引言 隨著Internet的普及和工業自動化的迅速發展.網絡已深入家庭、辦公室、工廠和自動化控制領域。E—Link網絡連接控制器內含高速微處理器和以太網接口電路,串口設備經過它就可方便地進人因特網來實現測控系統的數據資源共享,它是連接以太網和串口設備的橋梁。以太網接口電路完成lOBaseT以太網物理層的通信,在高速微處理器內部用C51語言寫入了TCP/IP協議及其他(RS-232、RS-485、CAN等)轉換協議。因此通過E—Link上網的串口設備簡單,不涉及各種復雜的網絡協議,只涉及與E—Link的數據交換。 2 E—Link數據傳輸器簡介 2.1 產品特色 E—Link數據傳輸器是一種微型Internet接入模塊.可以將分布式串口設備或其他各種用戶的智能系統接入Internet,利用模塊內部的TCP/IP網絡協議及10Base—T網絡接口連接到以太網,方便地實現串口設備的聯網。E—Link數據傳輸器具有體積小巧_功耗低,成本低和使用方便等優點。 串口設備可將自身運行狀態和工作參數等信息以TCP或UDP數據包的方式提供給監控者,亦可實現信息的實時傳輸。這種方法有以下幾個特點:(1)沒有距離和國界的限制,只要有以太網即可通信;(2)利用廣泛存在的網絡資源。無需鋪設現場總線;(3)實時傳送,傳輸速率高.串行速率可達115.2 kb/s。 E—Link數據傳輸器可廣泛用于通訊系統、工廠自動化系統、銀行和保險系統、遠程分散式設備控制、大型零售系統、樓宇自動管理系統和智能自動報警及消防聯動系統。 2.2 主要技術指標 MC[I為16位AVR MEGA高速處理器,晶體振蕩器的頻率為14.745 6 MHz,其外部存儲器容量為32 KB,內部FLASH存儲器的容量為:128 KB.可以提供16 MI/s的運算處理能力。 支持協議:ARP、IP、UDP、TCP、ICMP、DHCP 和DNS。 網絡接口:RJ45(10BASE一T)以太網接口。 接口形式:RS232、RS422、.RS485、CAN總線。 串行速率:300 b/s—115 200 b/s。 最大傳輸速率:300KB/s。 產品尺寸:8.0 emXlO.O cm或更小。 供電方式:AC或DC供電。 軟件支持:Windows XP.Windows 2000.WindowsNT,Windows 95/98/ME。Unix Ware SVR4-2,UnixWare 7 SVR5,SCO Open Server,SCO UNIX,Linuxfixed tty for 2.0.x, 2.2.x和I,inux real tty for 2.O-36,2.2.x,2.4.x(所有驅動均在系統TCP/IP網絡下)。 開發板具有32路開關量雙向I/O控制和8路10位A/D轉換器。 開發環境:使用免費的AVR—GCC C語言編程.用戶無需考慮再次購買昂貴的AVR專用C語言編譯器(例如IAR FORAVR、ImageCraftICCforAVR及CodeVison C等),而且本開發系統是FREE—WARE,可以完全按照要求對系統進行裁剪,高效率地完成開發工作。 3 硬件系統 3.1 基本配置和選件 E—Link數據傳輸器的基本配置包括:一個E—Link模塊、一個軟盤或光盤(設置和應用軟件)、一條通訊接口電纜(模塊與串口設備通信)和一本技術說明書。 3.2 E—Link數據傳輸器的外形 E—Link數據傳輸器的外形如圖1所示。其中Jl是電源接口。接AC7V"12V或:DC9V"15V;J2是設備接口,是9針DB9插座,RS232電平;J3是RJ-45網線插座,通過網線接到HUB或數據交換機上;J4是編程器端口,用來升級單片機內程序以實現不同功能,如RS232_rIEP/IP轉換、WebServer、A/D遠程數據采集和HTTPD控制等。 3.3參數設置連接 E—Link工作參數的設置和性能測試通過PC來完成。用隨機提供的E—Link通信接口電纜將PC的COM串口與E_Link的J2端口相連。E—Link上的J3端口用RJ45與以太網相連。E—Link電源可以通過J1插座外供,外接電源為15 V直流電源。E一Link的參數設置和性能測試需要在PC上運行設置軟件。連接方式如圖2所示。 3.4 應用系統的連接 所謂應用系統連接,是指在實際應用條件下用戶的串口設備通過E—Link上網方式的連接。串口設備可用RS232、。RS485、RS422及CAN總線4種方式與E—Link相連,如圖3所示。 E_Link數據傳輸器還可以與單片機系統直接連接,作為單片機系統的一部分,如圖4所示。 4 軟件系統 4.1 軟件設計 采用標準的TCP/IP協議.因為任何能上網的計算機都采用這一協議。如果要遠程傳輸數據,可以利用現成的WindoWS的SOCKET函數或Linux下的網絡函數直接編程,實現PC到E—Link的數據傳輸。 4.2 網絡與E—Link E—Link數據傳輸器使用的是TCP/IP協議,內部協議有TCP、UDP、IP、ARP及簡單的應用層處理協議.上層軟件可以使用VB、VC中的通用SOCKET函數.但是要注意選用UDP和TCP。應避免在一網段內出現相同的IP地址和物理地址。 從網絡可以給E一Link發送二種類型的數據;一種是設置數據:一種是通過E—Link發送到串口的數據。 (1)設置包 上層可以設置E—Link的密碼、板卡IP地址、網關IP地址和板卡的物理地址(密碼的設置是為了保證不被篡改)?梢允褂脤iT的串口監控程序進行設置.也可以使用Windows 9x/NT/2000提供的超級終端軟件進行設置。如果網路上有DHCP服務器.可以讓其自行設置。發送設置數據給E—Link,E—Link對自身進行設置,并不把數據送到串口。 E—Link必須初始化。初始化數據格式為設置4位密碼、IP地址、網關地址和物理地址。如果未被設置,它的初始化數據在X5045中為{\S′,\′E′E′,E′T′,′O,′K′,′O′,′O′′,′O′′,192,168,0,8,20,192,168,0,159,O,192,168,O,8,36}。 重新設置IP的時候,最好使用和E—Link的IP地址同一網段內的主機對其設置。比如192.168.0.XXX.設置格式如下: 密碼設置—″SETSMM:″(7)+舊密碼(4)+新密碼(4),15字節; IP設置—″SETSIP:″(7)+密碼(4)+新IP(4),15字節: 網關設置—″SETSGT:″(7)+密碼(4)+新GATE(4),15字節; 物理地址設置—″SETSMA:″(7)+密碼(4)+新物理地址(61,17字節。 下面是一個要發送的IP設置數據包(VB中): Dim IpSet(1 To 151 As Byt\′字符串 IPSSet(1)=&H53′\′S、′ IoSet(2)=&H45\′\′E、′ IpSet(31=&H54\′\′′T′ IPSet(4)=&H53\′\′S\′ IpSet(5)&ti49′\′n It,Set(6)=&H50\′′P′ IpSet(7)=&H3A′′:′ 。堋涿艽a IpSet(81=&H38′\′0′ IpSet(9)=&H38\′\′O\′ IpSet(10)=&H38′′0′ IpSet(11)=&H38\′\′0\′ \′IP地址 IpSet(12)=192 IpSet(13)=168 IpSet(14)=0 IpSet(15)=8 設置成功,E—Link返回數據 {l′S′,′E′,′T′,′st′,′B′,′E′,′O′,′K′,Oxod,Oxoa}; 發送設置包給E—Link,E—Link對自身進行設置,并不把數據送到串口。 (2)發送數據包 如果不是設置包.則E—Link將UDP/TCP數據包接收后.將UDP/TCP中的數據部分取出。并通過串口送出。通信協議使用標準的RS232、RS422或RS485。在網絡數據傳輸中,因為RTL8019AS的內部RAM有限.最好不要一次發送超過4500字節的數據,否則可能溢出.如果E一Link的處理速度不夠快或者網卡本身的原因產生溢出,則E—Link返回數據串f′O′,′V′,′E′′R′,′L′,′O′,′W′,OxOd,OxOal,并拋棄存儲區中的數據包。 4.3 串口與E—Link 串口到E—Link沒有固定的結束符(也可以設定結束符,例如0x0A和0x0D等),在串口的數據傳送中加上時間的控制,當最后一個數據發送完成后的20 ms,E—Link認為數據接收結束,并對數據包進行處理。當接收緩沖區每收到一個數據E—Link就對數據包進行處理,后臺發送。如果數據較多.應適當增大接收緩沖區的容量,以避免數據溢出造成丟失。 一般情況下.下位機根據最近一次接收的IP和端口返回數據。比如上一次一個IP地址為192.168.0.159,端口為8000的數據*來,并且由E—Link發送給串口,如果串口過來數據,則仍返回此IP和端口。 如果下位機要作為主動方發送到一個目標IP,首先要發一個″SETSIP:″+IP地址(total llbytes)數據串。E—Link向網絡查詢此IP的物理地址.如果成功則返回數據串f\′S′,\′E′,1′,\′,S\′,′B\′,E\′,\′0\′,\′K\′,0xod,0xOa},當串口接收到該數據串時,就可以發送數據包,得到數據后,E—Link按照申請到的物理地址和目標IP發送此數據包,端口使用8000。 給串口準備的數據空間是10 KB,不要一次發送超過10 KB的數據,否則會有I\′O′,′V′,′E′,′R′,′L′,′O′,′W′,0xod,0xoa,數據串返回,并拋棄此數據包。 5 結束語 E—link數據傳輸器可應用于工業自動化系統、電信通信系統、遠程分散式設備控制、智能自動報警及消防聯動系統和智能小區樓宇自動管理系統等。E—Link網絡數據傳輸器還可用于構建新一代的以太網測控系統.用以改造現有的由現場總線組成的分布式控制系統和開發生產網絡測控設備。它將推動家用電器智能化和網絡化。并使人們的生活方式發生深刻的變化。 |