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

一、场景

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

二、Fins Tcp

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

握手固定为:00000000

读写固定为:00000002

错误码 4

00000000:正常

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

00000002:数据太长

00000003:不支持的命令

00000020:超过连接上限

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

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

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

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

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

ICF 1

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

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

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

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

DA1

1 目标节点地址,即PLC IP最后一位的hex
DA2 1 目标单元地址,固定值00
SNA 1 PC网络地址,固定值00
SA1 1 PC节点地址,即PC IP地址最后一位的hex,为0时PLC自己获取
SA2 1 PC单元地址,固定为00
SID 1

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

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

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

MRC 1 主请求码
SRC 1 次请求码,主/次组合:0101读操作 0102写操作 2301强制操作
Parameter N 具体看情况区分

Parameter读写命令格式分类

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

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 01

PC Recevice:

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

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-01 12:36:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-01 12:36:04       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-01 12:36:04       82 阅读
  4. Python语言-面向对象

    2024-05-01 12:36:04       91 阅读

热门阅读

  1. vue钩子函数、生命周期

    2024-05-01 12:36:04       32 阅读
  2. 美易官方:亚马逊第一季度营收1433.13亿美元

    2024-05-01 12:36:04       34 阅读
  3. Fastadmin 日常项目常见用法整理

    2024-05-01 12:36:04       34 阅读
  4. 深入解析Jackson的ObjectMapper:核心功能与方法指南

    2024-05-01 12:36:04       38 阅读
  5. W801学习笔记十六:掌机系统——启动第一个应用

    2024-05-01 12:36:04       39 阅读
  6. 论文辅助笔记:TEMPO 之 utils.py

    2024-05-01 12:36:04       28 阅读
  7. list模拟实现

    2024-05-01 12:36:04       24 阅读
  8. 六石管理学:有目的,再投诉

    2024-05-01 12:36:04       30 阅读
  9. Docker的介绍及与传统虚拟化技术的区别

    2024-05-01 12:36:04       32 阅读
  10. 3D,kd-tree算法原理

    2024-05-01 12:36:04       26 阅读
  11. 互联网的路由选择协议

    2024-05-01 12:36:04       29 阅读