工业互联网通讯协议—欧姆龙CP系列(Fins tcp)

一、场景

近期公司要对欧姆龙CP系列设备的数据采集,于是就研究了下欧姆龙的Fins Tcp协议。

二、Fins Tcp

组成字节说明
固定头446494E53 FINS对应的ASCII码的十六进制
长度4后面剩余指令的长度
命令4

握手指令为:00000000;应答为00000001

读写固定为:00000002

错误码4

00000000:正常

00000001:头不是‘FINS’(ASCII code)

00000002:数据太长

00000003:不支持的命令

00000020:超过连接上限

00000021:指定的节点已经处于连接中

00000022:尝试去连接一个受保护的网络节点,该节点还未配置到PLC中

00000023:客户端FINS节点地址超范围

00000024:当前客户端的节点地址已被使用

00000025:所有的节点地址已被使用

ICF1

信息控制域,发送固定为80(1000 0000),响应固定位C0(1100 0000)。

bit0:0表示需要回复,1表示不需要回复;

bit6: 0表示发送,1表示响应

RSV1固定值00,系统预留
GCT1固定值02,(Permissible Number of Gateways)
DNA1固定值00,目标网络号,即PLC网络地址。01-7F: 目标网络地址(1到127)

DA1

1目标节点地址,即PLC IP最后一位的hex
DA21目标单元地址,固定值00
SNA1PC网络地址,固定值00
SA11PC节点地址,即PC IP地址最后一位的hex,为0时PLC自己获取
SA21PC单元地址,固定为00
SID1

固定值00,用于表示数据发送的过程,00-FF,用于检测响应请求是否正确。

当发送节点与响应节点SID值相同,则代表响应的数据是请求的数据;

不同时,代表响应的数据非请求数据

MRC1主请求码
SRC1次请求码,主/次组合:0101读操作 0102写操作 2301强制操作
ParameterN具体看情况区分

Parameter读写命令格式分类

组成字节说明
Area1D位:02,D字:82; W位:31,W字:B1; C位:30,C字:B0
Address3起始地址(2bit)+位地址(1bit)
Length2读取或写入的数据长度
Value2写操作时的数据

Parameter中PLC回复报文
组成字节说明
错误码2错误码(先判断错误码,再去解析后面的数值)
数据Length * 2读取到的数值,每个数值占2字节
  • 握手报文

Socket连接上后,需要第一时间发送握手报文,否则PLC会断开与PC的连接。

PC Send: 

46 49 4E 53 00 00 00 0C 00 00 00 00 00 00 00 00 00 00 00 00

PC Recevice:(PLC的IP:192.168.5.178),即0xB2对应的178

46 49 4E 53 00 00 00 10 00 00 00 01 00 00 00 00 00 00 00 03 00 00 00 B2
  • 读取点位报文

  • 25
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
### 回答1: LabVIEW是一种图形化编程环境,可以帮助用户快速构建各种不同的应用程序。对于欧姆龙OMRON PLC和FINS/TCP NJ501 CJ2M的网口TCP通信,我们可以使用LabVIEW来实现。 首先,我们需要在LabVIEW中安装适用于OMRON PLC的TCP/IP套件,该套件可以帮助我们与PLC进行通信。接下来,我们需要创建一个TCP/IP客户端,用于与PLC建立连接。 在LabVIEW中,可以通过使用数据流来传输和接收数据。我们可以创建一个用于与PLC通信的循环,该循环包括以下步骤: 1. 建立连接:使用TCP/IP客户端节点来建立与PLC的连接。我们需要指定PLC的IP地址和端口号。 2. 发送命令:通过TCP/IP客户端发送需要执行的命令给PLC。命令可以是读取或写入PLC的数据,如读取PLC的寄存器或在PLC中写入数据。 3. 接收响应:从PLC接收响应数据。响应数据可以是PLC读取的数据或执行结果的确认信息。 4. 断开连接:当通信完成后,我们可以使用TCP/IP客户端节点来断开与PLC的连接。 通过这种方式,我们可以在LabVIEW中实现与OMRON PLC和FINS/TCP NJ501 CJ2M的网口TCP通信。LabVIEW提供了丰富的TCP/IP通信功能和界面设计工具,有助于简化通信过程和数据处理操作。 ### 回答2: 在LabVIEW中使用TCP/IP协议欧姆龙Omron PLC(型号:NJ501 CJ2M)进行通信时,可以按照以下步骤进行配置和实施。 1. 首先,确保LabVIEW的开发环境已经正确安装和配置。 2. 在LabVIEW中,打开“工具”菜单,并选择“网口通讯工具”。 3. 在网口通讯工具中,点击“新建”按钮创建一个新的网口通讯对象。 4. 在通讯对象的属性设置中,选择TCP/IP协议,并输入PLC的IP地址和端口号。确保PLC和计算机连接在同一个局域网内。 5. 建立通讯连接后,可以使用LabVIEW提供的TCP/IP通讯函数进行数据的读取和写入。例如,可以使用“TCP/IP客户端读取.vi”函数来读取PLC中的数据。 6. 在读取数据时,输入PLC中寄存器的地址和长度,通过该函数读取到的数据可以在LabVIEW中进行进一步处理和分析。 7. 在写入数据时,同样需要输入PLC中寄存器的地址和长度,以及要写入的数据值。通过该函数可以将数据写入PLC中,实现对PLC的控制。 需要注意的是,获取PLC的数据和控制PLC之前,要确保已经正确配置了PLC的端口号和地址,并将PLC与计算机通过网线连接稳定。 此外,还需要了解PLC的寄存器地址和功能码的具体设置,以便正确地读取和写入数据。 以上是使用LabVIEW与欧姆龙Omron PLC(NJ501 CJ2M)通过TCP/IP进行通信的基本流程。根据实际需要,还可以进一步扩展和优化这个通信过程。 ### 回答3: LabVIEW是一款强大的图形化编程环境,可以用于各种领域的数据采集、控制和监测等应用。在LabVIEW中,我们可以通过使用TCP/IP协议来实现与欧姆龙OMRON PLC的通信。 要实现LabVIEW与OMRON PLC的TCP通信,我们需要知道PLC的IP地址和端口号。首先,我们需要在LabVIEW中创建一个TCP客户端,然后设置该客户端的目标IP地址为OMRON PLC的IP地址,目标端口号为PLC的FINS/TCP端口。 接下来,我们可以使用LabVIEW提供的TCP相关函数和VI来实现与PLC的通信。例如,我们可以使用"TCP Open Connection"函数来打开与PLC的连接,然后使用"TCP Write"函数向PLC发送指令,同时使用"TCP Read"函数来读取PLC返回的数据。 在与欧姆龙OMRON PLC进行通信时,我们需要使用FINS命令来与PLC进行数据交换。FINS是OMRON PLC通信协议的一种,可以实现数据的读取和写入。对于NJ501 CJ2M PLC,我们可以先编写FINS命令,然后将命令发送给PLC进行执行。 总结起来,要实现LabVIEW与欧姆龙OMRON PLC的TCP通信,我们需要先设置PLC的IP地址和端口号,然后在LabVIEW中创建TCP客户端,使用相应的TCP函数和VI来实现数据的读取和写入。同时,我们还需要使用FINS命令来与PLC进行数据交换。通过以上步骤,我们可以在LabVIEW中实现与OMRON PLC的通信。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.Qubb

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值