《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于FINS協議的OMRON PLC與上位機以太網通信的實現
基于FINS協議的OMRON PLC與上位機以太網通信的實現
摘要: 工業以太網作為工業現場信息采集的重要網絡具有速率高、通信距離遠、抗干擾性好等特點,已經得到廣泛應用。本文所介紹的三種OMRON PLC與上位機以太網通信的方法均在實際工程中驗證成功。
Abstract:
Key words :

  0 引言

  在現代工業自動化控制系統中,可編程邏輯控制器(PLC)作為常用的現場控制設備,上位機作為數據采集及人機界面的一種已經得到廣泛使用。過去,在工程項目開發中,PLC和上位機間的通信常采用RS-232C或者RS-485串行方式,這種方法很難滿足數據量大、通信距離遠、實時性要求高的控制系統。隨著互聯網技術的發展、普及與推廣,以太網技術得到了迅速的發展,其傳輸速率的提高和交換技術的應用,解決了以太網通信的非確定性問題,使得工業以太網能夠廣泛應用于工業信息控制領域,也是工業信息控制未來的發展趨勢。

  FINS(factory interface network service)通信協議是歐姆龍公司開發的用于工業自動化控制網絡的指令/響應系統。使用FINS指令可實現各種網絡間的無縫通信,包括用于信息網絡的 Etherne(以太網),用于控制網絡的Controller Link和SYSMAC LINK。通過編程發送FINS指令,上位機或PLC就能夠讀寫另一個PLC數據區的內容,甚至控制其運行狀態,從而簡化了用戶程序。FINS協議支持工業以太網,這就為OMRON PLC與上位機以太網通信的實現提供了可能。

  1 OMRON PLC與上位機通信方式

  目前,在歐姆龍PLC網絡組成中,上位機和PLC的通信可以采用RS232C/485串行通信、Controller Link通信和工業以太網通信三種方式。它們的主要性能參數如表1所示。

主要性能參數

  文獻[3]介紹了采用RS232C/485串行通信的方案,其通信速率僅為9600b/s,速率較慢,很難適應現代數據量大、通信距離較遠、實時性要求較高的控制系統。

  文獻[2]中給出了基于FINS協議的Controller Link通信的設計方案,其最高速率可以達到2Mb/s,整個網絡的最大傳輸距離為500m,硬件上需要在上位機安裝CLK支持卡,其擴展性及應用的靈活性沒有工業以太網好。

  在三種通信方式中,工業以太網的優勢是相當明顯的。其傳輸速率可以達到10/100Mb/s(取決于實際網絡環境);兩個節點之間的傳輸距離可以達到 100m,對于整個網絡的傳輸距離沒有限制;網絡內最大節點數可以達到254個,可以實現1(PLC):N(PC)、N:N、N:1等多種網絡形式。這些都為構架各種規模的工業網絡信息系統提供了有利的條件,具有良好的擴展性、實用性、靈活性。目前使用的上位機都配有以太網卡,所以上位機側無需增加額外的硬件設備。因此,采用工業以太網方式對提高工廠的自動化信息控制水平具有很大的現實意義。

  2 以太網FINS通信

  在以太網FINS通信中,各種數據信息是以UDP/IP包或者TCP/IP包的方式在以太網上發送和接收的。其中,在Internet層遠程設備使用的是 IP地址,而在應用層使用的則是FINS節點地址。傳輸層中定義了本地UDP或TCP端口號,它為應用層(即FINS通信)提供通信端口,其默認設置為 9600。用戶可以根據實際情況自行修改,但是在同一網絡中,各設備的通信端口號必須保持一致。圖1 FINS以太網通信協議模型

FINS以太網通信協議模型

  通常以太網通信使用的是IP地址,而在FINS通信中則是使用網絡號、節點號以及單元號來對不同設備(包括PLC、PC等現場設備)進行地址定義的。這就為不同網絡之間各種設備的通信提供了統一的尋址方式。在以太網FINS通信中,歐姆龍的以太網單元一項重要的功能就是能在IP地址和Fins節點地址之間進行轉換,其轉換方式有自動轉換、IP地址表和復合地址表三種方式,其地址轉換數量依據模塊型號和轉換方式的不同還有相應的限制。以太網FINS通信服務是一種基于UDP/IP的通信方式,稱為FINS/UDP方式,歐姆龍相關的以太網產品都支持這種方式。此外,CS1W-ETN21和CJ1W- ETN21以太網通信模塊還支持TCP/IP協議,稱為FINS/TCP方式。

  2.1 FI NS/UDP方式

  FINS/UDP方式是一種使用UDP/IP協議的FINS通信方式。UDP/IP是一種無連接的通信協議。當一條信息從一個節點發到另一個時,這兩個節點是沒有明確連接的對等關系的。UDP協議具有較快的傳輸速度,但是數據通信的可靠性沒有TCP協議高。

UDP幀結構

  如圖2所示,是一個在以太網中發送和接收所使用的UDP幀結構。FINS/UDP方式使用的是一種嵌套格式數據包,即Ethernet報頭、IP報頭、 UDP報頭和FINS幀。一個UDP數據段(FINS 幀)超過1472字節將被分成若干個數據包來傳送。分開的UDP數據將在UDP/IP協議層自動組合。通常不需要關注應用層的數據分段,但是在一個多層 IP網絡中1427字節的UDP包可能無法發送。在這種系統中就需要使用FINS/TCP方式。

    2.2 FINS幀結構

  FINS 幀分為FINS指令幀和FINS響應幀兩種形式。指令幀在發送FINS指令時使用,響應幀則在接收到FINS指令后對其返回響應時使用。它們都是由一個 FINS報頭(存儲傳輸控制信息)、一個FINS指令域(存儲一個FINS指令)以及一個FINS參數/數據域(存儲指令參數和發送/響應數據)所組成的。響應幀FINS指令域的內容與所接收到的指令幀的FINS指令域相同。具體結構見圖3、圖4。

FINS響應幀

  ICF為信息控制域,用于標明指令和響應;RSV為系統保留;GCT為網關允許數目;DNA為目的網絡號;DA1為目的節點號;DA2為目的單元號;SNA為源網絡號;SA1為源節點號;SA2為源單元號;SID為服務和響應的標識號,可任意設置,指令和響應對應相同;MRC和SRC分別為 FINS指令的主指令和從指令;參數/數據域,用于標明所操作的數據地址、范圍等,在響應幀中前兩個字節MRES和SRES構成響應碼,用來診斷錯誤信息。

  3 FinsGateway和SYSMAC Compolet控件介紹

  FinsGateway是OMRON FINS通信協議的驅動程序,它為計算機上的32位Windows操作系統提供一個工業自動化網絡環境。FinsGateway集成了不同的網絡協議,并為FINS通信和數據鏈接提供驅動程序和接口庫函數。它通過創建高性能的虛擬存儲區EventMemory,為不同的用戶程序提供數據的接入和共享。利用 FinsGateway,計算機可以通過各層網絡(包括網絡互聯)訪問網絡上的PLC,通過接口庫函數,用戶還可以開發程序。

FinsGateway和SYSMAC Compolet控件介紹

  SYSMAC Compolet是歐姆龍公司專門為FINS通信開發的Active X控件,它是架構在FinsGateway這個驅動程序下的VB控件,對Fins指令做了進一步集成和優化。SYSMAC Compolet為SYSMAC C/CS1/CV系列的PLC提供應用程序編程接口,在開發時只需要調用該控件,編寫程序更便捷,語句更簡單,配合使用FinsGateway,通過計算機就可以方便地控制訪問PLC,直接對其操作而不需要掌握相應的Fins指令知識。

  4 OMRON PLC與上位機以太網通信的實現

  OMRON PLC與上位機的以太網通信依靠發送FINS指令實現。上位機發送FINS指令可以直接讀取或寫入PLC相應的數據,PLC部分無需編寫接收和發送程序。文獻[1]給出了運用VC++異步套接字類CAsyncSocket與OMRON PLC進行以太網通信的方法。本例中采用FINS/UDP方式,具體如圖7所示。上位機利用Visual Basic 6.0進行程序開發,具體實現向PLC發送FINS指令(讀取內存區域,指令代碼0101)讀取DM100開始的150個字數據的功能。相較于文獻[1] 介紹的方法,本文中為不同層次的使用者提供了三種方法來實現這一個功能,增加了系統開發的選擇性。圖7上位機與PLC通過以太網通信

上位機與PLC通過以太網通信

  在進行上位機程序編程之前首先要完成上位機和PLC的以太網單元的設置。

  (1)設置上位機的IP地址為10.72.18.11,子網掩碼為255.255.255.0,它的FINS節點號默認為11。

  (2)通過歐姆龍CX-Programmer軟件,在IO表中將PLC CSIW-ETN11以太網單元的IP地址設置為10.72.18.19,子網掩碼為255.255.255.0,FINS節點號設置為19。地址轉換方式設置為自動生成(動態)。FINS/UDP端口為9600(默認)。保存后下傳至PLC。

  下面主要介紹三種方法來實現上述功能。

  4.1 使用Micosoft Wi nsock控件

  在VB中新建一個Standard.EXE文件。添加Winsock控件,對象命名為"Winsock1",發送Fins命令程序如下:

  編譯保存后即可。

   4.2 使用FINSGateway中的OMRON FinsMessaging Control

  (1)在上位機中安裝Finsgateway軟件,并在Service Manager中啟動CPU_UNIT和ETN_UNIT。

  (2)ETN UNIT屬性中,在"UDP Nodes"中手動添加PLC的IP地址(10.72.18.19)和FINS地址(0.19.0)。在"Commuincation Unit Settings"中設置端口號(9600)和FINS-IP地址轉換方式為自動生成(動態)。

  (3)在VB中新建一個standard.EXE文件。添加OMRON FinsGateway FinsMessaging Control,對象名為"FinsMsgl"。

   (4)在form區添加一個Command button(命名為"Command1")作為發送Fins指令之用;同時添加一個textbox(命名為"Text1")作為顯示所接受數據之用。

  (5)在"Conmand1"中的"Click"事件中添加如下代碼:

Private Sub Command1_C1ick()FinsMsg1.sendFinsCommand0,19,0,"0101820064000096"End Sub
在"FinsMsg1"中的"OnReceive"事件中添加如下代碼:
Private Sub FinsMsg1_OnReceive ()
Dim net As Integer,node As Integer,unit AsInteger
Text1.Text=Fins Msg1.receive Message(net,node,unit,vbString)
End Sub

  編譯保存后即可。

  4.3 使用FinsGateway和SYSMAC Compolet

  (1)在上位機中安裝Fins Gateway和SYSMACCompolet軟件。啟動FinsGateway的Service Manager,并啟動CPU UNIT和ETN UNIT。

  (2)同4.2中第(2)點。

  (3)在VB中新建一個Standard.EXE文件。添加OMRON SYSMAC CS Control,對象名為"SYSMAC CS11"。

  (4)在對象"SYSMACCS11"屬性中,選擇"Communication"標簽,選中"ActivateCoCommunication"并設置PLC的Fins地址(0.19.0)。

  (5)在form區添加一個Command button(命名為"Command1")作為發送Fins指令之用;同時添加一個text box(命名為"Text1")作為顯示所接受數據之用。

  (6)在"Conmand1"中的"Click"事件中添加如下代碼:

Private Sub Command1_Click()
Text1.Text=SYSMAC_CS1 1.readArea(plcAreaDM,100,150,vbString)
End Sub

  編譯保存后即可。

  5 結束語

  工業以太網作為工業現場信息采集的重要網絡具有速率高、通信距離遠、抗干擾性好等特點,已經得到廣泛應用。本文所介紹的三種OMRON PLC與上位機以太網通信的方法均在實際工程中驗證成功。這三種方法從本質上來說其實是一樣的,但具體使用和實現過程有所不同。第一種方法不需要另外購置歐姆龍相關軟件,但需要對FINS通信底層協議以及Fins幀結構及其封裝過程有比較全面的了解,程序編寫較為復雜,適用于有一定開發經驗的高級用戶。第二種方法需要掌握Fin s幀結構以及FinsGateway的相關配置,但是對發送指令和接收數據的程序編寫較為簡單,適用于中級用戶。在第三種方法中,使用了SYSMAC Compolet中簡單易懂的編程語言,即可完成上位機的程序開發,整個程序編寫過程簡單明了,可以大幅縮減通信程序的開發時間,適用于那些開發經驗較少的初級用戶。后面兩種方法需要另外購置歐姆龍軟件,這是在程序開發時需要注意的。這三種方法都可利用工業以太網實現OMRON PLC與上位機的通信,具有實時性好、速度快、可靠性高、運行穩定等優點。在PLC控制系統中采用以太網單元通信后,使工業自動化與生產管理自動化有機地結合到了一起,簡化了系統設計。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲综合不卡| 另类国产ts人妖高潮视频| 欧美一区二区免费| 在线亚洲精品| 亚洲另类黄色| 亚洲国产另类精品专区| 伊人狠狠色j香婷婷综合| 国产日韩欧美在线播放不卡| 国产精品国产三级国产普通话蜜臀 | 欧美色图一区二区三区| 欧美精品97| 欧美国产一区二区| 欧美sm重口味系列视频在线观看| 久久亚洲精选| 麻豆精品91| 欧美成人亚洲| 欧美激情国产高清| 欧美日韩1区| 欧美三区在线观看| 欧美视频日韩视频在线观看| 欧美日韩第一区| 欧美日韩亚洲三区| 欧美性猛交xxxx乱大交退制版| 欧美日韩一区二区在线观看| 欧美日韩高清在线播放| 欧美日韩一区二区免费在线观看| 欧美日韩日本视频| 国产精品久久久久久久7电影| 国产精品成人一区二区艾草| 国产精品videosex极品| 国产精品视频内| 国产日韩欧美亚洲一区| 国语自产精品视频在线看一大j8 | 国产精品久久毛片a| 国产精品三级久久久久久电影| 国产精品腿扒开做爽爽爽挤奶网站| 国产精品一区二区男女羞羞无遮挡| 国产欧美日韩一区二区三区在线观看 | 亚洲丁香婷深爱综合| 亚洲国产日韩一区二区| 亚洲精品一区二区三区福利| 夜夜夜精品看看| 午夜精品一区二区三区在线播放| 久久国产精品99国产| 久久一区二区三区四区五区| 欧美电影免费观看大全| 欧美日韩一区二区三区免费看 | 亚洲三级影院| 亚洲免费视频网站| 亚洲第一级黄色片| 欧美岛国在线观看| 欧美理论片在线观看| 欧美性色综合| 国产一区二区三区四区hd| 亚洲第一精品电影| 日韩一级免费观看| 性色av一区二区三区| 亚洲福利电影| 中文在线不卡| 久久久久久久久久久久久久一区| 欧美福利影院| 国产精品久在线观看| 黄色日韩在线| 中日韩美女免费视频网址在线观看 | 国产色综合天天综合网| 亚洲国产精品久久久久婷婷884 | 亚洲欧美日韩在线一区| 久久久亚洲高清| 欧美日韩一区二区高清| 国产综合色产在线精品| 亚洲欧洲一级| 欧美一级大片在线免费观看| 一级成人国产| 久久人体大胆视频| 欧美体内she精视频在线观看| 国产真实乱子伦精品视频| 99国产精品国产精品毛片| 欧美一区二区精品久久911| 国产精品99久久久久久久久久久久| 欧美一区观看| 欧美日韩一区二区三区四区五区| 国产日韩欧美黄色| 艳女tv在线观看国产一区| 久久精品国产视频| 销魂美女一区二区三区视频在线| 欧美大片专区| 狠狠久久婷婷| 性xx色xx综合久久久xx| 亚洲视频大全| 欧美好骚综合网| 狠狠色丁香久久婷婷综合丁香| 一道本一区二区| 亚洲精品日韩久久| 久久精品中文| 国产精品视频免费观看www| 亚洲精品在线观| 亚洲国产日本| 久久不射2019中文字幕| 国产精品久久久久久久电影 | 午夜精品www| 亚洲影院高清在线| 欧美国产激情| 在线观看欧美日韩国产| 欧美一级在线亚洲天堂| 亚洲欧美三级伦理| 欧美日韩少妇| 亚洲精品乱码久久久久久蜜桃91| 亚洲欧美成人网| 久久久成人网| 国产精品资源在线观看| 一区二区三区导航| 日韩一级免费| 欧美黄色免费| 最新亚洲激情| 亚洲免费大片| 欧美精品一区三区| 亚洲国产欧美一区二区三区久久| 亚洲第一在线综合网站| 久久男女视频| 韩国美女久久| 久久精品国产精品亚洲精品| 久久精品国产精品亚洲精品| 国产欧美日韩中文字幕在线| 亚洲一区国产精品| 亚洲欧美伊人| 国产精品视频免费观看| 亚洲欧美日韩在线| 久久国内精品视频| 国产欧美一区二区三区国产幕精品 | 亚洲一区二区在线播放| 欧美日韩亚洲一区二| 99re66热这里只有精品4| 一区二区三区视频在线播放| 欧美日韩久久不卡| 一本到12不卡视频在线dvd| av成人老司机| 欧美午夜精品理论片a级大开眼界| 日韩一区二区精品葵司在线| 亚洲一区二区精品| 国产精品乱人伦一区二区| 亚洲——在线| 欧美专区亚洲专区| 韩国福利一区| 亚洲精品资源美女情侣酒店| 欧美精品黄色| 中文久久乱码一区二区| 欧美一区影院| 激情综合色综合久久| 亚洲人成久久| 亚洲免费精彩视频| 欧美久久综合| 一区二区三区精品久久久| 亚洲欧美国产一区二区三区| 国产农村妇女精品一区二区 | 久久国产欧美精品| 嫩模写真一区二区三区三州| 亚洲另类在线视频| 欧美一区在线看| 亚洲国产精品久久久久婷婷老年| 亚洲一区二区三区精品视频| 国产情侣一区| 亚洲精品午夜精品| 国产精品美女一区二区| 久久av一区二区三区漫画| 欧美精品日韩综合在线| 亚洲伊人色欲综合网| 美女视频网站黄色亚洲| 中国成人亚色综合网站| 久久人体大胆视频| 夜夜嗨av一区二区三区网页| 久久久久久久一区二区三区| 亚洲精品国产精品国自产观看| 性高湖久久久久久久久| 激情久久影院| 亚洲综合好骚| 国产无一区二区| 99视频有精品| 国产手机视频精品| 中文av一区二区| 韩日精品视频一区| 亚洲自拍16p| 亚洲大胆女人| 欧美在线不卡视频| 91久久精品国产91性色| 欧美在线国产| 亚洲人体大胆视频| 久久久久国产精品午夜一区| 亚洲成色www8888| 欧美一区二区三区啪啪| 精品福利免费观看| 午夜视频一区在线观看| 一区二区亚洲精品| 亚洲在线黄色| 亚洲欧洲一区二区在线播放| 新67194成人永久网站| 亚洲福利视频在线| 亚洲一区二区三区视频播放| 激情成人中文字幕| 亚洲午夜在线| 一区二区三区在线视频免费观看|