在线客服

在线客服
工作时间

周一周六 8:30-17:30

联系方式

咨询热线
0755-85244813

文章详情

当前位置: 首页> 文章详情
新川伺服X6A通用型MODBUS通信使用方法
专栏:X6系列伺服驱动器
发布日期:2018-05-24
阅读量:253
收藏:
1.1 通信协议1.1.1 适用范围1. 适用系列:X6系列伺服驱动器。2. 适用网络:支持ModBus协议,RTU格式,具备RS485总线的“单主多从”通讯网络。 一种典型的RTU消息帧格式如下:起始位设备地址功能码数据CRC校验结束符T1-T2-T3-T48Bit8Bitn*8Bit16BitT1-T2-T3-T41.1.2 物理接...

1.1          通信协议

1.1.1       适用范围

1.      适用系列:X6系列伺服驱动器。

2.      适用网络:支持ModBus协议,RTU格式,具备RS485总线的“单主多从”通讯网络。

 

一种典型的RTU消息帧格式如下:

起始位

设备地址

功能码

数据

CRC校验

结束符

T1-T2-T3-T4

8Bit

8Bit

n*8Bit

16Bit

T1-T2-T3-T4

1.1.2       物理接口

RS485异步半双工通讯模式。

RS485端子默认数据格式为:1-8-N-1,波特率:9600bps

数据格式1-8-N-1/21-8-O-1/21-8-E-1/2,波特率4800bps9600bps19200bps38400bps57600bps115200bps可选,可通过功能代码Pn601Pn602设定选择。

1.1.3       协议格式

21.png

ADU(Application Data Unit)中的校验是ADU前三部分的CRC16校验和通过高低字节交换而得。在协议格式中,CRC校验的低字节在前,高字节在后。

1.1.4       命令解释

命令代码0x03:读取伺服驱动器功能代码

ADU部分内容

字节数

范围

主机发送请求:

从机地址

1

0-0FEH

命令码

1

0x03

寄存器起始地址

2

0x0000-0x0FFFF

寄存器数目

2

0x0000-0x0008

CRC校验(低字节在前)

2


从机应答:

从机地址

1

本机地址

命令码

1

0x03

读取字节数

1

2*寄存器数目

寄存器内容

2*寄存器数目


CRC校验

2


命令代码0x06: 写伺服驱动器单一功能代码

ADU部分内容

字节数

范围

主机发送请求:

从机地址

1

0-0FEH

命令码

1

0x06

寄存器地址

2

0x0000-0x0FFFF

寄存器内容

2

0x0000-0x0FFFF

CRC校验

2


从机应答:

从机地址

1

本机地址

命令码

1

0x06

寄存器地址

2

0x0000-0x0FFFF

寄存器内容

2

0x0000-0x0FFFF

CRC校验

2


 

命令代码0x10:改写伺服驱动器多个连续功能代码

ADU部分内容

字节数

范围

主机发送请求:

从机地址

1

0-0FEH

命令码

1

0x10

寄存器起始地址

2

0x0000-0x0FFFF

寄存器数目

2

0x0000-0x0008

寄存器内容字节数

1

2*寄存器数目

寄存器内容

2*寄存器数目


CRC校验

2


从机应答:

从机地址

1

本机地址

命令码

1

0x10

寄存器起始地址

2

0x0000-0x0FFFF

寄存器数目

2

0x0000-0x0008

CRC校验

2


命令代码0x08:线路诊断

ADU部分内容

字节数

范围

主机发送请求:

从机地址

1

0-0FEH

命令码

1

0x08

子功能码

2

0x0000

数据

2

0x0000-0x0FFFF

CRC校验

2


从机应答:

从机地址

1

本机地址

命令码

1

0x08

子功能码

2

0x0000

数据

2

0x0000-0x0FFFF

CRC校验

2


注:0x08命令码只是用于检查线路是否连通。

1.1.5       协议格式说明

1.1.5.1         地址码

伺服驱动器从机地址。设定范围1-247

1.1.5.2         功能码

功能码

功能

03H

读取伺服驱动器功能代码

06H

写伺服驱动器单一功能代码(对于32bit的功能代码,请勿使用此操作)

10H

写伺服驱动器多个连续功能代码

(对于32bit的功能代码,请用10H操作,且一个功能码占据2个长度)

08H

线路诊断

1.1.6       CRC校验

发送设备首先计算CRC值,并附在发送信息中。接收设备接收后将重新计算CRC值,并且把计算值与接收的CRC值做比较。如果两个值不相等,则说明发送过程中有错误发生。

CRC校验的计算过程

1)         定义一个CRC寄存器,并赋一个初值,FFFFH

2)         将发送信息的第一个字节与CRC寄存器的值进行异或计算,并将结果放到CRC寄存器中。从地址码开始,起始位和停止位不参加计算。

3)         提取和检查LSBCRC寄存器的最低位)。

4)         CRC寄存器的各位向右移动一位,最高位用0补充。

5)         如果LSB1,把CRC寄存器的值与A001H进行异或计算,并将结果放到CRC寄存器中。

6)         重复步骤345,直到完成8次移位。

7)         重复步骤23456,处理发送信息的下一个字节。连续重复以上过程,直到处理完发送信息的所有字节。

8)         计算完毕,CRC寄存器的内容即为CRC校验的值。

9)         发送时先发送CRC校验值的低字节,后发送高字节。

1.1.7       线路诊断及设置0x08详细说明

 

子功能码

请求数据

应答数据

子功能意义

0000H

#data16

与请求数据相同

线路诊断

1.1.8       异常响应

当主机发送错误数据或外界干扰导致伺服接收到错误数据时,将发回一条异常响应信息。异常响应的数据结构:

ADU部分内容

字节数

说明

地址码

1

从机地址

功能码

1

等于发送的功能码+0x80

异常码

1

见异常码表

CRC校验(L

2

CRC16

CRC校验(H

CRC16

异常码表:

数据

含义

01

CRC校验错误

02

功能码不正确

04

发送数据长度不正确

08

寄存器地址错误

10

寄存器数码错误

20

寄存器修改错误

40

EEPROM

注:若功能码错误,则异常码为0x02

1.1.9       通讯地址定义

下表为功能参数地址

组别

功能参数

MODBUS首地址

状态显示

bb

3E00H

监视模式

Un000

2000 H

用户参数

Pn000

0000 H

Pn100

0100 H

Pn200

0200 H

Pn300

0300 H

Pn400

0400 H

Pn500

0500 H

Pn600

0600 H

Pn700

0700 H

Pn800

0800 H

辅助功能

Fn000

3F00 H

注:功能地址在对应首地址基础上偏移,比如功能参数Pn001地址为Pn000基础上偏移1,也即0001H

 

上一页:新川伺服X6A通用型参考接线图
下一页:找不到相关信息