欧姆龙PLC HostLink协议整理

1、常用的存储器功能区

CIO:

输入继电器  272 点(17 CH) 0.00~16.15

输出继电器  272 点(17 CH) 100.00~116.15

内部辅助继电器  4,800 点(300 CH) 1200.00~1499.15 (1200~1499 CH)

37,504 点(2,344 CH) 3800.00~6143.15 (3800~6143 CH)

内部辅助继电器:

8,192 点(512 CH) W000.00~W511.15  (W0~W511 CH)

暂时存储继电器:

16 点 TR0~TR15

保持继电器:

8,192 点(512 CH) H0.00~H511.15 (H0~H511 CH)

特殊辅助继电器:

只读(不可写入) 7168 点(448 CH) A0.00~A447.15 (A0~A447CH)

可读/写 8192 点(512 CH) A448.00~A959.15 (A448~A959 CH)

定时器:

4,096 点 T0~T4095

计数器:

4,096 点 C0~C4095

DM 区:

32K 字 D0~D32767

数据寄存器:

16 点(16 位) DR0~DR15

变址寄存器:

16 点(32 位) IR0~IR15

任务标志:

32 点 TK0000~TK0031

2、HostLink串口测试典型设置:9600 E-7-2

3、Hostlink通讯协议有两种模式:C-mode和FINS

1.Cmode:专用于hostlink通讯指令,采用的是ASCII码,适用于所有OMRON的PLC通讯。只能上位机发出指令给CPU,CPU无法主动发数据给上位机。

2.FINS:采用的二进制码,适用于新开发的PLC,可用在多种网络设备(Controller  Link,  Ethernet,  etc),可被 CPU、IO模块、上位机主动发出,不同的指令分别适用于不同的信息接受单元。有两种链接协议:CMND和hostlink,当上位机是做发送源时,必须采用hostlink协议。

4、通信协议报文整理

HostLink通讯协议的数据,由4部分组成。

1. 头代码

2. FINS命令

3. 异或校验

4. 结束码

以下的数据用于串口调试工具下发给PLC,所以以下由上述的1、2部分组成

头代码:红色      FINS命令:蓝色

@00FA0000000000101B00064000001

红色部分数据分析:

@后的1-2位,为PLC地址,默认PLC地址为0,可设定0--31

@后的FA为头编码,可为”FA”  “RD”  “WR”

@后的第5位为等待时间,默认为0*10ms

后面的数据从右到左依次是:ICF\DA2\SA2\SID各占一个字节默认为00,具体设定可参照HostLink(具体可参考 HOSTLINK 通讯参考手册 W342-E1-15 第 3-3-3 节)

操作示例

(1)读取CIO100一个字

@00FA0000000000101B00064000001

读取:0101    写入:0102

功能码B0:指定相应寄存器类型 (详见附表1)

006400: 0064为存储器的编号(16进制的0064为10进制的100)

0064后的00为存储器的位(HEX 00)

0001:读取1个字

(2)写CIO100.05-100.09位地址

@00FA00000000001023100640500050101000001

0102:写数据

31:W存储区

006405:100.05(十进制100.05)

0005:连续写5个位

0101000001:写5个位的数据

(3)下发数据:@00FA000000000010231001E06000100

返回数据:@00FA00400000000102000040*\CR

下发的内容:写数据(0102)到W存储区(31)的W30寄存器(001E)寄存器W30.06(06),连续写1个字节(0001)写的内容为0(00)

返回的内容:返回之前的操作为写(0102),数据正常写入(0000)。数据后面附带的(*\CR)为异或校验的结束符。

(4)读写D存储区

RD指令命令格式

@00RD10230006

读取站00地址为W1023的0006个字

5、报文格式

欧姆龙CPM1A型plc与上位计算机通信的顺序是上位机先发出命令信息给PLC,PLC返回响应信息给上位 机。每次通信发送/接受的一组数据称为一“帧”。帧由少于131个字符的数据构成,若发送数据要进行分割 帧发送,分割帧的结尾用CR码一个字符的分界符来代替终终止符。发送帧的一方具有发送权,发送方发送 完一帧后,将发送权交给接受方。

发送帧的基本格式为:

@

机号

识别码

正文

FCS

终止符

其中:

@ ——为帧开始标志;

机号——指定与上位机通信的PLC(在PLC的DM6653中设置);

识别码——该帧的通信命令码(两个字节);

正文——设置命令参数;

FCS——帧校验码(两个字符),它是从@开始到正文结束的所有字符的ASCⅡ码按位异或运算的结果;

终止符——命令结束符,设置“*”和“回车”两个字符表示命令结束。

响应的基本格式为:

@

机号

识别码

结束码

正文

FCS

终止符

其中:

@ ----为帧开始标志;

机号----应答的的PLC号,与上位机指定的PLC号相同;

识别码----该帧的通信命令码,和上位机所发的命令码相同;

结束码----返回命令结束有无错误等状态;

正文——设置命令参数,仅在上位机有读数据时生效;

FCS——帧校验码,由PLC计算给出,计算方法同上;

终止符——命令结束符。

6、注意点

通讯协议如果是ASCII 码传输,则  1 WORD data = 4 BYTE character

即:1个字二进制数,采用AS II码传输 ,则会转为4个字节AS II码去传输

word是计量单位,对应16bit=2字节,字节≠字符,

character是字符,可容纳一个1字节ASII码,也可以容纳一个unicode编码的2字节汉字。

7、131个最大字符由来

按照以下进行命令通讯,则根据官方手册确定命令格式如下:

①起始符@,该符号必须置于每个命令的开头;//1个 ASCII 码=1字节

②节点号即PLC单元号,用于辨识PLC,范围为0~30(BCD数);//2个 ASCII 码

③命令符即发送命令的目的,设置2个字符的命令代码;//2个 ASCII 码

④操作内容表示命令符操作的参数,命令不同,内容也不一样,最多31word;//31*4=122个ASCII 码

⑤校验符为FCS校验,对校验的内容进行异或运算,结果为2个字符;//2个 ASCII 码

⑥结束符为*号+回车键;//*号和回车各是1个,共2个 ASCII 码

统计1+2+2+122+2+2=131个 ASCII 码,即131字符。

欧姆龙PLC HostLink协议整理的更多相关文章

  1. 欧姆龙plc通讯协议格式

    欧姆龙CPM1A型plc与上位计算机通信的顺序是上位机先发出命令信息给PLC,PLC返回响应信息给上位 机.每次通信发送/接受的一组数据称为一"帧".帧由少于131个字符的数据构成 ...

  2. MODBUS协议整理——功能码简述

    1.Modbus简介——来自维基百科 Modbus是一种串行通信协议,是Modicon于1979年,为使用可编程逻辑控制器(PLC)而发表的.Modbus是工业领域通信协议的业界标准,并且现在是工业电 ...

  3. c#基于TCP/IP、CIP协议的欧姆龙PLC通信

    一.关于CIP协议 CIP通信是Common Industrial Protocl(CIP)的简称,它是一个点到点的面向对象协议,能够实现工业器件(传感器,执行器)之间的连接,和高等级的控制器之间的连 ...

  4. 【转】常用PLC通讯协议

    三菱FX系列PLC通讯测试 发送帧(Hex): 起始(STX) 02 命令(CMD) 30 首地址(ADDRESS) 30 30 41 30 字节数(BYTES) 30 31 终止(ETX) 03 校 ...

  5. AHB协议整理 AMBA

    本文对AHB协议作了简单整理,整理自两篇文章: AHB总线协议 AHB重点难点总结 1. 简介 AHB总线规范是AMBA总线规范的一部分,AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计 ...

  6. SIP协议整理

    本文记录开发.实现IMS项目时,整理的SIP协议基础知识:若有侵权,请告之. SIP协议 1.      SIP协议简介 SIP是一个应用层的控制协议,可以用来建立.修改.和终止多媒体会话(或者会议) ...

  7. HTTP 协议整理(转)

    HTTP 协议 作为web开发人员,了解一些http协议的知识很有必要.本文简单介绍了HTTP协议的知识,若有错误的地方,望大家斧正. 1.HTTP协议是什么? http协议是一个应用层的协议.规定了 ...

  8. 基于ModBus-TCP/IT 台达PLC 通讯协议解析

    客户端发送:19 B2 00 00 00 06 06 03 00 27 00 02 上面是modbus客户端发出的报文内容,为modbus tcp/ip协议格式,其前面的六个字节为头字节( heade ...

  9. HTTP协议整理

    一.概念 1.HTTP协议:即超文本传输协议(Hypertext transfer protocol).是一种详细规定了浏览器和Web服务器之间互相通信的规则,它允许将超文本标记语言(HTML)文档从 ...

随机推荐

  1. sed命令的使用

    1.sed格式.理解 (1)找谁  干什么 (2)想找谁,就把谁保护起来 2.sed基本操作 操作文件oldboy.txt I am lizhenya teacher! I teach linux. ...

  2. 安装或更新时,pip出错,“No module named ‘pip’”

    解决办法: 在pycharm终端(Terminal)中 首先执行 :python -m ensurepip 然后执行 :python -m pip install --upgrade pip

  3. Sentry Web 性能监控 - Trends

    系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...

  4. npm配置镜像及nrm使用

    ​ 淘宝npm镜像 搜索地址:http://npm.taobao.org/ registry地址:http://registry.npm.taobao.org/ cnpmjs镜像 搜索地址:http: ...

  5. C#中的文本到语音

    本演示说明了如何使用c#.net Windows Forms应用程序中的system.speech库将文本转换为语音.Microsoft .NET框架提供System.Speech.Synthesis ...

  6. AI:用软件逻辑做硬件爆款

    "我们的野心不止那么一点点." 百度集团副总裁.百度智能生活事业群组(SLG)总经理.小度CEO景鲲曾多次对外表达过这样的观点. 在2021年百度世界大会上,小度又一口气发布了四款 ...

  7. js-监听网络状态

    <script> // 监听网络状态 window.addEventListener("online", function(){ alert("网络连接了&q ...

  8. C语言学习笔记---3.字符串格式化输入输出

    1.C语言字符串 字符串(character string)是一个或多个字符的序列,例如:"Zing went the strings of my heart!" C语言没有专门用 ...

  9. POJ3625Building Roads

    Building Roads Description Farmer John had just acquired several new farms! He wants to connect the ...

  10. Docker系列(5)- 常用命令(1) | 帮助命令

    帮助命令 [root@localhost ~]# docker version #显示docker的版本信息 [root@localhost ~]# docker info #显示docker的系统信 ...