MODBUS与高速指令说明手册.docx

上传人:b****0 文档编号:10110049 上传时间:2023-05-23 格式:DOCX 页数:12 大小:19.98KB
下载 相关 举报
MODBUS与高速指令说明手册.docx_第1页
第1页 / 共12页
MODBUS与高速指令说明手册.docx_第2页
第2页 / 共12页
MODBUS与高速指令说明手册.docx_第3页
第3页 / 共12页
MODBUS与高速指令说明手册.docx_第4页
第4页 / 共12页
MODBUS与高速指令说明手册.docx_第5页
第5页 / 共12页
MODBUS与高速指令说明手册.docx_第6页
第6页 / 共12页
MODBUS与高速指令说明手册.docx_第7页
第7页 / 共12页
MODBUS与高速指令说明手册.docx_第8页
第8页 / 共12页
MODBUS与高速指令说明手册.docx_第9页
第9页 / 共12页
MODBUS与高速指令说明手册.docx_第10页
第10页 / 共12页
MODBUS与高速指令说明手册.docx_第11页
第11页 / 共12页
MODBUS与高速指令说明手册.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

MODBUS与高速指令说明手册.docx

《MODBUS与高速指令说明手册.docx》由会员分享,可在线阅读,更多相关《MODBUS与高速指令说明手册.docx(12页珍藏版)》请在冰点文库上搜索。

MODBUS与高速指令说明手册.docx

MODBUS与高速指令说明手册

MODBUS指令使用说明

一、指令形式(都为16位指令):

功能码

功能

MODBUS指令

操作数

01H

读线圈指令

COLR

OP0:

从站站号

OP1:

MODBUS线圈地址

OP2:

线圈个数

OP3:

本地线圈地址

02H

读输入线圈指令

INPR

OP0:

从站站号

OP1:

MODBUS线圈地址

OP2:

线圈个数

OP3:

本地线圈地址

03H

读出寄存器内容

REGR

OP0:

从站站号

OP1:

MODBUS寄存器地址

OP2:

寄存器个数

OP3:

本地寄存器地址

04H

读出输入寄存器内容

INRR

OP0:

从站站号

OP1:

MODBUS寄存器地址

OP2:

寄存器个数

OP3:

本地寄存器地址

05H

写单个线圈指令

COLW

OP0:

从站站号

OP1:

MODBUS线圈地址

OP2:

本地线圈地址

06H

写单个寄存器指令

REGW

OP0:

从站站号

OP1:

MODBUS寄存器地址

OP2:

本地寄存器地址

10H

写多个寄存器指令

MRGW

OP0:

从站站号

OP1:

MODBUS寄存器地址

OP2:

寄存器个数

OP3:

本地寄存器地址

0FH

写多个线圈指令

MCLW

OP0:

从站站号

OP1:

MODBUS线圈地址

OP2:

线圈个数

OP3:

本地线圈地址

 

 

 

 

注:

当从站站号填写0时,以广播模式进行发送。

二、MODBUS通讯协议:

RTU格式

三、通讯变量的地址分配:

位元件

Modbus地址(16进制)

M0~M1535

0000H~05FFH

X0~X377

4000H~40FFH

Y0~Y377

4800H~48FFH

S0~S999

5000H~53E7H

M8000~M8255

6000H~60FFH

T0~T255(线圈)

6C00H~6CFFH

C0~C255(线圈)

6E00H~6EFFH

T0~T255(触点)

6D00H~6DFFH

C0~C255(触点)

6F00H~6FFFH

字元件

Modbus地址(16进制)

D0000~D7999

1000H~2F3FH

D8000~D8255

3000H~30FFH

T0~T255

3C00H~3CFFH

C0~C199

3E00H~3EC7H

C200~C255(32位)

3F00H~3F37H

 

 

四、MODBUS指令占用寄存器:

自由协议相关寄存器被占用。

D7000~D7099:

报文发送区。

D7100~D7199:

报文接收区。

D7994:

通讯状态编码显示

00H:

正常状态

01H:

功能码错误

02H:

非法变量地址

03H:

错误数据

04H:

变量个数越界(从站反馈)

11H:

发送校验错误

81H:

从站号错误

82H:

变量个数越界

83H:

超时

84H:

接收校验错误

D7998:

本站站号设置(000-为主站,001-254为从站)

当前报文为广播模式时,以下寄存器不会被更新:

D7995:

从站正确返回的报文个数

D7996:

从站错误返回/超时的报文个数

D7997:

最后一个不能正常通讯的从站地址

M8128:

成功通讯状态位

M8129:

失败通讯状态位

五、使用MODBUS指令需知:

1.在第一个扫描周期对通讯参数进行设置(D8120)—选择自由协议、发送转接收,波特率设置为9600,停止位、奇偶位和数据位(总数据位必须设置为9位或者10位,总数据位=数据位+校验位(奇偶校验=1Bit,无校验=0Bit)+停止位),对本站站号进行设置(D7998)。

主站设置示意图:

从站设置示意图:

2.在第一个扫描周期所有MODBUS指令均不会被执行。

3.变量个数限制:

位型变量200个,字型变量32个。

4.若用户使用MODBUS功能,梯形图禁止使用:

1梯形图自由协议功能函数及其资源区;

2RS485通讯协议网络;

3MODBUS接收区/发送区。

如不遵循以上规则,可能导致MODBUS通讯出错。

5.推荐采用步序指令来进行MODBUS指令编程,通过M8128/M8129的状态来确认当前MODBUS指令是否执行完毕(读取状态后复位M8128/M8129),如下示例:

刷新、高数计数、脉冲指令使用说明  

高速处理

助记符

功能

REF

输入/输出刷新

DHSCS

比较置位(高速计数器)

DHSCR

比较复位(高速计数器)

DHSZ

区间比较(高速计数器)

SPD

脉冲密度

PLSV

可变速脉冲输出

PMW

脉冲调制

DPLSR

带加减速的脉冲输出

DPLSY

脉冲输出

ZRN

原点回归

DRVA

绝对定位

DRVI

相对定位

 

PLSNEXT/PLSNT

脉冲段切换

STOP

脉冲停止

PLSMV

脉冲数立即刷新

PLSA

绝对位置多段脉冲控制

 

 

 

注意:

MP1一体机无上面蓝色与绿色部分字体指令,只包含有黑色字体指令。

MP2一体机具备以上所有指令功能。

输入输出刷新

FNC50

16位指令REF(连续执行型)

REF

 

 

 

 

 

输入/输出刷新点数。

指定起始软元件号。

功能和动作 该可编程控制器采用输入输出批次刷新方式。

输入端信息在0步运算前存入输入映像存储区。

输出端在执行END指令后,由输出映像存储区通过锁存存储器输出。

但是,在运算过程中,需要最新的输入信息以及希望立即输出运算结果时,可以使用该输入输出刷新指令。

 

程序范例一:

输入刷新

当X0=ON时,PLC会立即读取X000~X007,X010~X017输入点状态,输入信号更新,并没有输入延迟。

程序范例二:

输出刷新

当X0=ON时,PLC会立即读取Y000~Y007输入点状态,输出信号立即更新,不必等到END指令才输出。

● n可指定为K1~K184之间的任何数,但是只对X0-X7,X10,X11,Y0-Y7作处理。

● 在FOR~NEXT指令之间、标号(新步号)~CJ(老步号)之间,一般需要REF指令。

● 在有输入输出动作的中断处理被执行中,在中断子程序中进行输入输出刷新,获取最新的输入信息并且及时输出运算结果。

● 输出刷新中的输出接点将在输出继电器或晶体管应答时间后动作。

继电器输出型的应答滞后时间为10ms,晶体管输出型约为0.2ms以下。

高速计数器的编号

MP1系列可编程控制器的内置高速计数器如下表所示,按计数器的编号C分配在输入X000、X001X004、X005,X000~X005不可重复使用。

不作为高速计数器使用的输入端口可以作为普通口使用。

不作为高速计数器使用的高速计数器编号可以作为数值存储用的32位数据存储器使用。

U:

增计数输入  A:

A相输入 

D:

减计数输入  B:

B相输入  

高速计数器编号

 

单相单计数输入

AB相计数输入

 

C235

C236

C251

C252

X000

U/D

 

A

 

X001

 

U/D

 

A

X004

 

 

B

 

X005

 

 

 

B

方向标志

M8235

M8236

M8251

M8252

 

 

 

 

 

功能

1.对于单项单计数输入,用户通过启动前对M8235M8236置位来改变C235-C236的计数方向。

例如:

setM8235或强制M8235=ON时,C235减计数。

2.对于AB计数,用户可以通过监控M8251M8252,知道计数方向。

例如:

如果M8251=ON,则得知C251为减计数,输入端为A相为X0,B相为X4。

最高响应频率

当两个高速计数器同时使用情况下,合计的处理频率不得超过总计数频率数60K。

单项计数器(C235~C236):

1路最高60K;2路同时计数,则每一路最高30K

双相计数器(C251~C255):

1路最高30K;2路同时计数,则每一路最高15K

单独使用SPD指令单路输入最高80K,两路同时输入,每一路最高40K

比较置位(高速计数器用)

FNC53

32位指令DHSCS(连续执行型)

D

HSCS

 

 

 

 

● 

比较值。

高速计数器编号。

比较结果。

 

机能和动作

 

● 当由DHSCS指令

所指之高速计数器产生加1或减1变化时,DHSCS指令会立即比较动作,当高速计数器现在值等于由

所指定的比较值时,由

所指定之软元件会变为ON,之后即使比较结果变成不相等,该软元件仍然保持ON状态。

● 高速计数器是根据计数输入的OFF→ON以中断方式计数。

计数器的当前值等于设定值时,输出触点立即工作,不受扫描周期的影响。

● 支持比较值

在线更改。

● 支持C235,C236单项单计数方向启动前更改M8235、M8236。

● 输出:

Y:

Y2Y3

I:

计数器序号为C235/C251时,中断指定为I010;计数器序号为C236/C252时,中断指定为I020.

M,S:

任意

程序范例一:

● DHSCS指令的比较结果

可以指定为I□0(□=1~2),□不可使用重复编号,计数器到达计数值时,发生中断,执行该中断服务程序。

● M8059为I10~I20高速计数器中断禁止标志,即:

当M8059=ON时,I10~I20的中断被全部禁止。

 

注意事项

 

● 该指令为32位指令,必须作为DHSCS指令输入。

● 使用这些指令时,计数器必须为高速计数器表格中的计数器,否则报警。

并且最多同时有两路输入,所以在使用时,要选对相应的计数器。

● 每路输入最多支持三个指令(最多两条DHSCS/DHSCR,一条DHSZ),否则出错。

● 若一路使用多个指令,则这多条指令使用的计数器必须为同一计数器,否则出错。

● 在任何时候,每一路DHSZ指令只能使用一次,否则出错。

● DHSCS指令不仅有置/复位功能,还有高速计数中断功能。

● DHSCS/DHSCR/DHSZ指令的输出执行,都是实时进行的。

● DHSCS/DHSCR/DHSZ指令可以与计数器C235/C251C236/C252任意匹配,当选中某个计数器后,就决定了它的计数方式。

● 对任一个输入口(X0/X4),SPD和高速计数(DHSCS/DHSCR/DHSZ)不可同时使用。

● 计数过程中,不能修改计数器的值,如用DMOV指令送数是不允许的。

指令中的比较输出,都随计数输入的当前值寄存器的变化而动作,因此,即使通过传送指令改变当前值,只要没有计数输入,比较输出就不会发生变化。

若要修改成功,必须先断开相关指令的线圈。

● 计数器具有掉电保持功能,即断电后再上电时,计数器以上一次的值为起点开始计。

● 这些指令在脉冲输入时比较结果动作。

因此,即使使用DMOV指令等改写作为比较对象的字软元件的内容,以及将计数器的当前值在程序上复位,使作为比较结果的输出,内置ON或OFF的条件,但是单纯驱动指令不能改变比较结果。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2