最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

欧姆龙CP系列PLC以太网modbusTCP通讯

IT圈 admin 80浏览 0评论

2024年6月11日发(作者:家恬然)

欧姆龙CP系列PLC以太网modbusTCP通讯

BCNet-CP模块内部集成ModbusTCP通讯服务器,因此ModbusTCP客户机,如支持

ModbusTCP的组态软件、OPC服务器、PLC以及实现ModbusTCP客户机的高级语言开发

的软件等,可以直接访问欧姆龙CP系列PLC的内部数据区,Modbus协议地址在BCNet内

部已经被默认映射到CP系列PLC的地址区,实现的功能号包括:FC1、FC2、FC3、FC5、

FC6、FC15和FC16。

ModbusTCP协议帧格式:

事务

处理

标识

0x0

事务

处理

标识

0x0 0x0 0x0 0x0 后面的字节

协议

标识

协议标

识符

长度字段(高

字节)

长度字段

(低字节)

从站地

数据地址

(高字

节)

数据地

址(低字

节)

指令

数(高

字节)

指令

数(低

字节)

1、地址映射表

说明:

Modbus从

站地址

000001~

025001~

033201~

041401~

056901~

061001~

065101~

400001~

406151~

406671~

407191~

408191~

412291~

417001~

450001~

CP系列PLC内部软元

CIO区:CIO0.0~

工作区:WR0.0~

保持区:HR0.0~

数据

类型

计算公式

CIOm.n = 000001+m*16+n ①

WRm.n = 025001+m*16+n ①

HRm.n = 033201+m*16+n ①

功能号

最大指

令数

辅助区:AR0.0~

定时器完成标志:TCF0~

计数器完成标志:CCF0~

任务标志:TK0~

CIO区:CIO0~

工作区:WR0~

保持区:HR0~

辅助区:AR0~

定时器:TIM0~

计数器:CNT0~

数据内存:DM0~

外部内存:EM0~

TIMm= 408191+m

CNTm= 412291+m

DMm = 417001+m

EMm = 450001+m

ARm.n = 041401+m*16+n ①

TCFm= 056901+m

CCFm = 061001+m

TKm = 065101+m

CIOm = 400001+m

WRm = 406151+m

HRm = 406671+m

ARm = 407191+m

FC1(读线圈)

FC5(写单个线圈)

FC15(写多个线圈)

FC1:512

FC5:1

FC3(读寄存器)

FC6(写单个寄存器)

FC16(写多个寄存器)

FC3:125

FC16:125

FC6:1

①、该项为对应存储区的位操作,例如CIO100.3,则m=100,n=3,计算公式为:000001+100*16+3=001604。

在Modbus的对应地址为0区的01604地址。

2、用ModScan32测试

解压产品光盘使用手册通讯测试软件下的modscan2_。

1. 运行ModScan32软件。

2. 选择菜单Connection/Connect,选择Remote TCP/IP Server,输入BCNet-CP的IP地址,

Service端口为502;点击[OK]按钮,如图1所示。

图1

3. 在子窗口“ModSca1”中设置Device ID为PLC的站地址(如1),功能号选择

03:HOLDING REGISTER,Address = 0001,Length = 100。

4. 子窗口数据区显示400001~400100的16进制数据,其对应于欧姆龙CP系列PLC的寄

存器CIO0到CIO100的数值,如图2所示。

图2

双击子窗口数据区的数据可以修改数值。

2024年6月11日发(作者:家恬然)

欧姆龙CP系列PLC以太网modbusTCP通讯

BCNet-CP模块内部集成ModbusTCP通讯服务器,因此ModbusTCP客户机,如支持

ModbusTCP的组态软件、OPC服务器、PLC以及实现ModbusTCP客户机的高级语言开发

的软件等,可以直接访问欧姆龙CP系列PLC的内部数据区,Modbus协议地址在BCNet内

部已经被默认映射到CP系列PLC的地址区,实现的功能号包括:FC1、FC2、FC3、FC5、

FC6、FC15和FC16。

ModbusTCP协议帧格式:

事务

处理

标识

0x0

事务

处理

标识

0x0 0x0 0x0 0x0 后面的字节

协议

标识

协议标

识符

长度字段(高

字节)

长度字段

(低字节)

从站地

数据地址

(高字

节)

数据地

址(低字

节)

指令

数(高

字节)

指令

数(低

字节)

1、地址映射表

说明:

Modbus从

站地址

000001~

025001~

033201~

041401~

056901~

061001~

065101~

400001~

406151~

406671~

407191~

408191~

412291~

417001~

450001~

CP系列PLC内部软元

CIO区:CIO0.0~

工作区:WR0.0~

保持区:HR0.0~

数据

类型

计算公式

CIOm.n = 000001+m*16+n ①

WRm.n = 025001+m*16+n ①

HRm.n = 033201+m*16+n ①

功能号

最大指

令数

辅助区:AR0.0~

定时器完成标志:TCF0~

计数器完成标志:CCF0~

任务标志:TK0~

CIO区:CIO0~

工作区:WR0~

保持区:HR0~

辅助区:AR0~

定时器:TIM0~

计数器:CNT0~

数据内存:DM0~

外部内存:EM0~

TIMm= 408191+m

CNTm= 412291+m

DMm = 417001+m

EMm = 450001+m

ARm.n = 041401+m*16+n ①

TCFm= 056901+m

CCFm = 061001+m

TKm = 065101+m

CIOm = 400001+m

WRm = 406151+m

HRm = 406671+m

ARm = 407191+m

FC1(读线圈)

FC5(写单个线圈)

FC15(写多个线圈)

FC1:512

FC5:1

FC3(读寄存器)

FC6(写单个寄存器)

FC16(写多个寄存器)

FC3:125

FC16:125

FC6:1

①、该项为对应存储区的位操作,例如CIO100.3,则m=100,n=3,计算公式为:000001+100*16+3=001604。

在Modbus的对应地址为0区的01604地址。

2、用ModScan32测试

解压产品光盘使用手册通讯测试软件下的modscan2_。

1. 运行ModScan32软件。

2. 选择菜单Connection/Connect,选择Remote TCP/IP Server,输入BCNet-CP的IP地址,

Service端口为502;点击[OK]按钮,如图1所示。

图1

3. 在子窗口“ModSca1”中设置Device ID为PLC的站地址(如1),功能号选择

03:HOLDING REGISTER,Address = 0001,Length = 100。

4. 子窗口数据区显示400001~400100的16进制数据,其对应于欧姆龙CP系列PLC的寄

存器CIO0到CIO100的数值,如图2所示。

图2

双击子窗口数据区的数据可以修改数值。

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论