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