工業以太網控制系統是集散控制系統(DCS)和現場總線控制系統(FCS)之后產生的一種新型的工業控制系統。由于以太網技術具有成本低、通信速率和帶寬高、兼容性好、軟硬件資源豐富、廣泛的技術支持基礎和強大的持續發展潛力等諸多優點,在過程控制領域的管理層已被廣泛應用。事實證明,通過一些實時通信增強措施及工業應用高可靠性網絡的設計和實施,以大網可以滿足工業現場環境要求,并可直接向下延伸應用于工業現場設備間的通信。其中EtherNet/IP協議就在此列。
01
EtherNET/IP是什么
EtherNet/IP協議從90年代后期開始開發并由國際組織ODVA于 2001年發布并管理。EtherNet/IP使用標準以太網的物理和數據鏈路層,協議通過TCP/IP數據包傳輸,是最成熟和最完整的工業以太網解決方案之一,在工業制造業中得到廣泛使用。
EtherNET/IP是CIP(Commen Idustrial protocal)協議組中的一員。CIP定義了應用層的對象結構,且獨立于物理層傳輸介質,提供了開放網絡和開放系統所必需的互操作性和互換性。CIP用戶在其統一的通信架構之下,可根據需求選擇最適合的網絡,DeviceNET是CIP使用CAN網絡傳輸的實現,通過以太網傳輸的 CIP 協議即為 EtherNet/IP.
CIP是嚴格遵守面向對象方式的上層協議,每個CIP對象具有屬性(數據)、服務(命令)、連接、和行為(屬性和服務間的關系)。
CIP包括一個廣泛的對象庫(Object Library)來支持通用網絡服務如文件傳輸,和自動化行業常用的模擬和數字IO的輸入輸出,HMI、運動控制等。為保證互操作性,同一對象在不同設備中實現的行為完全相同。一個設備包括的一組對象即為本設備的對象模型(Object Model)。
CIP將標準的對象組定義為Device Profiles。Device Profile指定配置選項和I/O數據格式,屬于同一Device Profile的設備將響應所有相同的命令,并擁有相同的網絡行為,以此保證網絡中不同品牌設備間的互操作性。
02
EtherNET/IP 協議架構
● 通常使用TCP傳輸的顯示消息(explicit messages)和使用UDP傳輸隱式消息(implicit messages)。基于TCP面向連接的傳輸特性,顯示消息通常是低實時性數據,但要求高準確性,例如配置設備信息,上傳或下載程序等。而UDP則無需建立連接,可單點對多點的進行傳輸,也就是說UDP比TCP更加高效,因此常被用于如實時數據、運動控制數據等隱式消息的傳輸。
● EtherNet/IP在全球制造業中被廣泛采用。通常,制造業廠商直接采購商用EtherNet/IP SDK,而美國Pryramid公司作為最知名的EtherNet/IP SDK提供商在行業內享有盛譽。美國Pryramid 公司成立于1990年,總部位于密歇根州。Pryramid公司的EtherNet/IP SDK是經過市場和產品驗證的商用協議棧產品,保證協議的穩定和可靠性。
● 如所有通信協議的形式,EtherNet/IP SDK同樣分為Adapter和Scanner兩端。協議棧SDK可以軟件源代碼的形式提供給客戶,為使用多個不同軟硬件平臺的客戶提供自主移植的便利條件。同時,客戶也可以選擇編譯好的DLL形式的SDK。
03
EtherNet/IP SDK介紹
一、EtherNet/IP Scanner SDK,是用于開發EtherNet/IP掃描器設備的軟件包。Pryramid公司提供的EtherNet/IP Scanner SDK 已經通過ODVA CT18一致性測試,客戶購買的Scanner SDK包括如下內容:
平臺兼容性和可移植性:
? 提供 Win XP,Vista和 Win 7,8,10 (32 and 64 bit)的例程;? 提供以下操作系統的模板:? Fido,Linux,Netburner,VxWorks,WinCE,Windows? 例程中的程序塊與平臺隔離,方便移植到其它平臺? 通用的 API 接口:C, C#和C++ (Microsoft Windows DLL)
交付內容:
? EtherNet /IP Scanner 源碼(源碼版),包括源文件、DLLs 和Windows的運行組件;? Scanner(Client) 例程源碼 (Microsoft Visual C++, Visual C#, Visual Basic and .NET)? 用戶手冊? STC 文件示例 (用于ODVA EtherNet/IP 協議一致性測試軟件)
? EDS 文件示例
部分API列表:? ScannerStart? ScannerStop? RegisterObjectsForClientProcessin? RegisterRequestsForClientProcessing? OpenConnection? OpenConnectionByteEPATH? CloseConnection? ReconfigureConnection? ResetConnection? AddAssemblyInstance? RemoveAssemblyInstance? RemoveAllAssemblyInstances? AddAssemblyMember? ...
二、EtherNet/IP Adapter SDK,是用于開發EtherNet/IP適配器設備的軟件包。Pryramid公司提供的EtherNet/IP Adapter SDK 在兼容性和和交付內容上和Scanner SDK相同。Adapter提供的功能請可以參考如下功能列表:
部分API列表:? RegisterEventCallBack? LogEventCallbackType? RegisterMessageCallBack? LogMessageCallbackType? AdapterStartAdapterStop? GetNumConnections? GetConnectionInstances? GetConnectionState? GetConnectionRunIdleFlag? GetConnectionInternalCfg? GetConnectionStats? SendUnconnectedRequest? ReturnValue? GetUnconnectedResponse? GetClientRequest? StartRequestGroup? StopRequestGroup...? ...
-
以太網
+關注
關注
40文章
5419瀏覽量
171600 -
工業
+關注
關注
3文章
1824瀏覽量
46519 -
控制軟件
+關注
關注
2文章
35瀏覽量
12837
發布評論請先 登錄
相關推薦
評論