欧姆龙 eip协议

1. EIP 是什么?

EIP 全称:

EtherNet/IP = Ethernet Industrial Protocol

它不是简单的“以太网 TCP/IP 通信”,而是在标准 Ethernet/TCP/IP 之上运行 CIP(Common Industrial Protocol)。

可以理解成:

┌─────────────────────────┐
│       应用层:CIP       │
├─────────────────────────┤
│    EtherNet/IP (EIP)    │
├─────────────────────────┤
│       TCP / UDP         │
├─────────────────────────┤
│       Ethernet          │
└─────────────────────────┘

2. 欧姆龙 PLC 为什么使用 EIP?

欧姆龙的 NJ/NX/NY 等控制器支持 EtherNet/IP 后,可以直接和很多设备通信:

             EtherNet/IP
                  │
      ┌───────────┼───────────┐
      ▼           ▼           ▼
   欧姆龙PLC    机器人      变频器
                           │
                           ▼
                         伺服
      │
      ├── 远程IO
      ├── 安全设备
      ├── 条码枪
      └── 其他PLC

所以在自动化产线里非常常见。


3. EIP 最重要的两种通信

这是你学习欧姆龙 EIP 时最应该先搞懂的。

① I/O 通信

也叫:

Implicit Messaging / Cyclic I/O

例如:

PLC ───────────────→ 远程IO
    输出数据

PLC ←─────────────── 远程IO
    输入数据

它类似:

PLC输出区 → Device
Device输入区 → PLC输入区

而且是周期性自动交换。

例如:

PLC
Output Assembly
     │
     │ EtherNet/IP
     ▼
机器人
Input Assembly

这种特别适合:

  • PLC ↔ 远程 IO
  • PLC ↔ 机器人
  • PLC ↔ 变频器
  • PLC ↔ 伺服
  • PLC ↔ 其他控制器

② Explicit Messaging

这是另外一种。

PLC
 │
 │ Request
 ▼
设备
 │
 │ Response
 ▼
PLC

它更像:

读某个参数
写某个参数
读取设备信息
修改配置

底层通常涉及 CIP Object。

例如:

Class
Instance
Attribute

也就是常见的:

CIP:
Class ID
Instance ID
Attribute ID

4. EIP 和普通 TCP Socket 不一样

这是很多刚开始学习的人最容易搞混的。

普通 TCP:

C# / C++
      │
      │ TCP Socket
      ▼
设备

你自己定义:

01 03 00 10 ...

而 EIP:

PLC
 │
 ▼
EtherNet/IP
 │
 ▼
CIP
 │
 ├── Assembly Object
 ├── Identity Object
 ├── Connection Manager
 ├── Message Router
 └── ...

所以 EIP 本质上是一个工业协议栈,不是“给 PLC 开一个 TCP 端口然后发数据”。


5. 如果你想用 C++ / C# 与欧姆龙 PLC 通信

这就很有意思了。

可以做:

C++ / C#
      │
      │ EtherNet/IP
      ▼
欧姆龙 PLC

如果你以后想开发工业自动化商业软件,EIP 非常值得研究。

尤其可以做:

PC工业软件
     │
     ├── EtherNet/IP
     ├── Modbus TCP
     ├── OPC UA
     ├── S7
     └── MC Protocol
             │
             ▼
          PLC网络

然后做成一个统一的:

工业设备通信 SDK / 测试软件 / PLC 数据采集平台。

这和你之前考虑的 C++ WebServer + 工厂 ATE + MES 其实可以很好地结合起来。

posted on 2026-10-06 23:53  lydstory  阅读(4)  评论(0)    收藏  举报

导航