FM020 Modbus通讯模块使用说明书资料.docx

上传人:b****6 文档编号:3301698 上传时间:2022-11-21 格式:DOCX 页数:32 大小:397.75KB
下载 相关 举报
FM020 Modbus通讯模块使用说明书资料.docx_第1页
第1页 / 共32页
FM020 Modbus通讯模块使用说明书资料.docx_第2页
第2页 / 共32页
FM020 Modbus通讯模块使用说明书资料.docx_第3页
第3页 / 共32页
FM020 Modbus通讯模块使用说明书资料.docx_第4页
第4页 / 共32页
FM020 Modbus通讯模块使用说明书资料.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

FM020 Modbus通讯模块使用说明书资料.docx

《FM020 Modbus通讯模块使用说明书资料.docx》由会员分享,可在线阅读,更多相关《FM020 Modbus通讯模块使用说明书资料.docx(32页珍藏版)》请在冰豆网上搜索。

FM020 Modbus通讯模块使用说明书资料.docx

FM020Modbus通讯模块使用说明书资料

文件名称:

FM020Modbus通讯模块使用说明书

文件编号:

J12-C12-000005

项目名称:

SM/FM硬件技术改进开发

项目编号:

B12014H-1-J

物料编码:

3020200121/3020200168

版本号:

A

文件密级:

普通

文件状态:

CFC

受控标识:

不受控

拟制:

杜泽峰高志强_____________________________________________________________________________________________________________________________2012年1月13日

审核:

魏晓亮2012年1月13日

会签:

批准:

王弢2012年1月13日

 

文件发放范围:

修订页

序号

版本号

修订内容简述

拟制/日期

审核

批准

1

A

创建

杜泽锋/09-05-13

李乐义

王弢

2

A/01

增补用户参数配置状态说明

杜泽锋/09-09-10

李乐义

王弢

3

A

硬件改板升级,修订相关技术指标及指示灯状态说明(原文件为北和项目A0603X,现转为西和项目B12014H-1-JH,且文件编号由A09-C12-000050变更为J12-C12-000005)

杜泽峰/2012-1-13

魏晓亮

王弢

4

5

6

7

8

9

10

11

12

13

14

15

16

注:

自新文件J12-C12-000005正式发布起,北和原文件《FM020Modbus通讯模块使用说明书》,文件编号A09-C12-000050,A/01版本作废!

FM020

Modbus通讯模块使用说明书

概述

图1FM020模块外观示意图

FM020模块是Modbus通讯模块,支持Profibus-DP总线协议与Modbus协议,通过Profibus-DP总线与控制器进行参数与数据交换实现DP从站功能,同时通过Modbus通讯协议获取或下发Modbus数据,支持功能码01、02、03、04、05、06、0F、10。

FM020模块在Profibus-DP一侧只能做Profibus-DP从站;在Modbus一侧既可以做Modbus主站,也可以做Modbus从站。

FM020模块支持的最大从站数必须同时满足输入/输出数据长度最多各1000byte,输入/输出数据之和最大1200byte,以及对于Modbus主站逻辑模块数目小于等于22*,对于Modbus从站逻辑模块数目小于等于的26*约束条件。

Modbus通讯采用应答方式。

应答方式是主站向某个从站发出命令,然后等待从站的应答,从站接到主站命令后,执行命令,并将执行结果返回给主站作为应答,然后等待下一个命令。

主站发出命令到从站应答命令之间的时间间隔成为超时时间,用户可通过模块组态参数“TimeofReplay”进行设置。

Modbus物理层采用RS485和RS232(2选1),传输速率可达115.2kbps,支持RTU模式和ACSII模式(2选1)。

FM020模块由功能模板和壳体组成,采用DIN35导轨或平面独立安装,模块面板上提供Profibus-DP及Modbus通讯接口、电源输入接口、模块站地址拨码开关、Profibus-DP和Modbus终端匹配拨码开关。

FM020Modbus通讯模块的外观结构如图1所示。

原理说明

FM020在数据存储RAM中建立了Profibus-DP到Modbus的映射数据区,由软件实现Profibus-DP和Modbus协议转换及数据交换。

FM020模块的硬件原理框图如图2所示。

图2FM020模块硬件原理框图

 

FM020(Master)的协议转换原理

首先,在FM020(Master)的数据存储器中建立“Modbus报文队列”,即Modbus报文序列。

它是用户依据应用的要求,在Profibus-DP主站配置FM020(Master)时,组态配置选择后自动形成,并在Profibus-DP主站与FM020(Master)建立连接通讯时初始化并传送到数据存储器中。

关于如何依据应用要求,在组态配置时选择Modbus通信功能,详见“产品应用实例”一节。

FM020(Master)在数据存储器中建立Profibus-DP数据区和Modbus数据区,Profibus-DP主站与FM020(Master)的通信数据都存储在Profibus-DP数据区中,Profibus-DP通信数据分为输入和输出数据。

Modbus主站与Modbus从站的通信数据都存储在Modbus数据区中,Modbus通信数据分为输入和输出数据,写入(如05H、06H、0FH、10H功能)Modbus从站的数据为输出数据,与Profibus-DP的输出数据对应;读取(如01H、02H、03H、04H功能)Modbus从站的数据为输入数据,与Profibus-DP的输入数据对应。

Modbus输入数据区存放需要上报的数据,模块每轮询一遍Modbus从站,做一次Modbus输入数据区和Profibus-DP输入数据区的数据交换,然后SPC3就可以把Modbus上报的数据报给主控;Modbus输出数据区存放需要下发的数据,模块下发完数据,做一次Profibus-DP输出数据区和Modbus输出数据区的数据交换。

FM020(Master)模块的协议转换原理如图3所示。

图3FM020(Master)模块协议转换原理图示

 

FM020(Slave)的协议转换原理

与FM020(Master)一样在数据存储器中建立Profibus-DP数据区和Modbus数据区,通过Profibus-DP输入/输出与对应的Modbus存储区交换数据,实现Modbus到Profibus-DP的数据通信。

FM020(Slave)接收Modbus报文,并根据Modbus主站的指令读写Modbus数据区,同时发送Modbus回答报文。

每完成一次Profibus-DP数据通信,按照用户配置的Profibus-DP的I/O地址和Modbus地址的对应关系,进行一次两个数据存储区的数据交换。

FM020(Slave)模块的协议转换原理如图4所示。

图4FM020(Slave)模块协议转换原理图示

 

使用说明

FM020的冗余配置

由于FM系列硬件设备为单DP总线结构,并且FM020只提供单Modbus总线接口,因此,此处所述的FM020模块的冗余配置是针对于Modbus总线而言的,也即采用双FM020模块在DP总线双模块主、备配置环境下,提供两个Modbus总线接口(仅支持RS485方式,不支持RS232方式冗余),用于实现Modbus总线的冗余。

需要说明的是,FM系列硬件设备的单DP总线只需连接到FM020模块DPA或DPB任意一个接口即可,同时,在物理上主、备配置的FM020模块除DP从站地址外,组态时参数设置必须相同,即或者全为Modbus主站,或者全为Modbus从站,否则会造成通讯故障。

详细配置图示由图5所示。

 

图5FM020模块冗余配置图示

 

状态指示灯说明

FM020上电后,其面板上的状态及通讯指示灯显示当前的工作和通讯状态。

具体组合状态及含义由表1给出。

FM020模块与FM系列主控模块通过Profibus-DP总线进行数据交换。

模块面板上有四个状态指示灯分别代表模块运行和通信状态,可以方便地对模块的工作及运行状态进行监测。

表1状态指示灯组合及含义

RUN(绿)

COM(黄)

TXD(黄)

RXD(黄)

含义

模块运行正常,通讯数据收发正常,同时模块作为ModBus主站时运行在工作状态。

ModBus主或从站发送数据

ModBus主或从站接收数据

模块没有配置ModBus从站;或ModBus通信故障;或模块作为ModBus主站时运行在备用状态

模块作为ModBus从站时运行在备用状态

模块等待初始化或未得到正确的初始化数据;DP通讯未建立或DP通讯线路故障。

模块掉电或其它严重故障

其它组合

未定义

通讯接口定义

FM020模块Profibus-DP冗余通讯接口位于模块面板的左侧上方,其引脚定义由表2给出。

表2Profibus-DPDB9连接器信号定义

DB9孔座

定义

Profibus-DPA网

3

DPA+

5

GND

8

DPA-

Profibus-DPB网

3

DPA+

5

GND

8

DPA-

注:

FM系列硬件系统的Profibus-DP为单总线结构,因此,使用时DPA/DPB接口任选一个连接即可。

FM020模块Modbus通讯接口位于模块面板的右侧,其引脚定义由表3给出。

表3Modbus双连接器信号定义

序号

定义

ModbusRS485方式凤凰端子

A1

RS485+

A2

RS485-

A3

MBGND

A4

SGND

ModbusRS232方式DB9孔座

2

TXD

3

RXD

5

GND

电源接口定义

FM020模块的电源接口说明见表4所示。

表4电源供电端子信号定义

端子序号

定义

A1

NC

A2

24V-

A3

24V-

A4

24V+

终端匹配拨码开关的设置

FM020模块面板上有两个终端匹配拨码开关(DPTR、MODBUSTR),通过拨码开关选择是否为Profibus-DP总线和Modbus总线的RS485接口连接有源匹配电阻网络。

DPTR:

用于设置Profibus-DP总线的RS485接口是否连接终端匹配电阻,默认连接。

MODBUSTR:

用于设置Modbus总线的RS485接口是否连接终端匹配电阻,默认不接。

每个拨码开关的全部键位要拨成一致。

同时拨向“ON”为接通终端匹配电阻;同时拨向“OFF”为断开终端匹配电阻。

模块站地址拨码开关的设置

FM020模块面板上有一个8位站地址拨码开关“DPSlaveadds”用于设置FM020模块的Profibus-DP从站地址。

拨向“ON”,该位二进制数值为“0”;拨向“OFF”,该位二进制数值为“1”。

主控站号=20×K1+21×K2+22×K3+23×K4+24×K5+25×K6+26×K7+27×K8

(其中Ki=0(i=1~8)表示第i位拨码的二进制数值)

例如:

33号站的拨码开关从高位到低位依次设定为“10000100”,对应的十进制数值33就是FM020模块的DP从站地址号。

Modbus通讯信息说明

Modbus通讯协议是主/从通信协议。

主站发送报文,只有与主站发送报文中呼叫地址相同的从站才向主站发送回答报文。

FM020模块的从站地址范围1~247,协议中的0地址为广播报文发送模式,FM020模块未使用0地址功能。

Modbus协议传送方式

Modbus通讯协议有两种传送方式:

RTU(二进制)方式和ASCII方式,两种传输模式不能混用;FM020支持上述两种方式(2选1,组态设定)。

两种方式如表5所示:

表5Modbus协议传送方式说明

特性

ASCII(7位)

RTU(8位)

编码系统

十六进制(ASCII码)

二进制

每一个字符的位数

开始位

1位

1位

数据位(最低有效位第一位)

7位

8位

奇偶校验(任选)

1位(此位用于奇偶校验,无校验则无该位)

1位(此位用于奇偶校验,无校验则无该位)

停止位

1位或2位

1位或2位

错误校验

LRC(即纵向冗余校验)

CRC(即循环冗余校验)

 

Modbus存储区

Modbus涉及到的设备存储区以0xxxx、1xxxx、3xxxx、4xxxx为标识,如表6所示。

表6Modbus存储区说明

Modbus

存储区标识符

类型

读/写

名称

存储单元地址

0xxxx

读写

线圈

00001~0xxxx

1xxxx

只读

离散量输入

10001~1xxxx

3xxxx

只读

输入寄存器

30001~3xxxx

4xxxx

读写

保持寄存器

40001~4xxxx

功能码定义

功能码是主机用来通知从机应执行何种动作,从机作为响应发送与从主机发送来的相同功能码,表明从机已响应主机进行操作。

如果从机发送的功能码的最高位为1(功能码大于127),则表明从机没有响应操作或发送出错。

表7列出了FM020支持的Modbus功能码的含义和作用。

表7支持的功能码定义

功能码

数据类型

名称

作用(对主站而言)

1(01H)

Bit

读取多个开关量输出值

取得一组开关量数据(不支持广播方式)

2(02H)

Bit

读取多个开关量输入值

取得一组开关量数据(不支持广播方式)

3(03H)

Word

读取多个模拟量输出值

取得一组模拟量数据(不支持广播方式)

4(04H)

Word

读取多个模拟量输入值

取得一组模拟量数据(不支持广播方式)

5(05H)

Bit

强制单个开关量输出值

向从站发送一个开关量点值(不支持广播方式)

6(06H)

Word

预置单个模拟量输出值

向从站发送一个模拟量点值(不支持广播方式)

15(0FH)

Bit

发送多个开关量

向从站发送多个开关量点值(不支持广播方式)

16(10H)

Word

发送多个模拟量

向从站发送多个模拟量点值(不支持广播方式)

128(80H)

异常应答码

用作从站异常应答(约定内使用的异常功能码

是128,不支持广播方式)

注:

对于第三方从站模块,对未列出的功能码不做任何响应,即不响应非自己配置站号的各类RTU帧。

诊断信息码定义

当发现主站的请求报文有误时,从站会在应答报文中将功能码的最高位(bit7)置1,同时发送一个字节长度的错误代码。

错误代码1~7分别代表不同的错误类型,具体含义参见表8。

在接收到错误代码后,用户应根据错误类型采取响应的措施,并重新发送请求。

表8支持的诊断信息码定义

错误代码

含义

原因

1

非法的功能码

从站不支持该功能码

2

非法的数据地址

数据起始地址设置不正确

3

数据范围溢出

数据长度设置不正确

4

连接设备错误

从机设备故障

5

确认收到请求

从机需较长时间来处理,先确认收到

6

忙,拒收请求

从站设备忙

7

收到请求但不确认

不执行请求

组态参数设置说明

模块选择配置说明

FM020支持的最大从站数量必须同时满足输入/输出数据最多各1000byte,输入输出数据之和最大1200byte,以及和从站数目小于等于26*。

FM020为多功能型(逻辑上,非物理设备)设备。

每个模块代表Modbus支持的一种可能模块类型,组态时根据所接Modbus从站设备功能选择所需的模块,其中必须选择的两个模块为:

通讯状态字Status和通讯控制字Control。

Status为设备状态模块,4个字节输入,各字节说明如下所述。

第一个字节各位意义如下:

D7

D6

D5

D4~D1

D0

保留

CRC、LRC、奇偶校验

主、备用状态

异常功能码

主、从离线状态

第1位表示是否有Modbus从站或者主站离线。

此设备作为Modbus主站时标志是否有Modbus从站设备离线,当回复超时并且达到最大重发次数时置为1,最大重发次数可通过组态参数配置;

此设备作为Modbus从站时标志是否有Modbus主站是否离线,当一定时间没有主站轮询时置为1,时间可通过组态参数配置。

第2~5位表示异常功能码,如果多个从站都有异常时,此变量滚动显示。

第6位表示主、备用状态,1为主状态,此时BAK灯灭;0为备用状态,此时BAK灯亮。

第7位表示CRC、LRC或奇偶校验出错,1表示有错误发生。

第8位暂保留。

该字节除第六位上报64次后清零。

第二个字节各位意义如下:

D7~D4

D3~D0

输出数据传输帧数

输入数据传输帧数

低4位(Bit0~Bit3)表示输入数据分几帧传输;高4位(Bit4~Bit7)表示输出数据分几帧传输。

如字节2为16#23,表示输入数据分3帧传输,输出数据分2帧传输。

输入输出数据分几帧传输的计算方法如下:

FM020通过解析主控下发的配置数据,计算出每一帧输入数据的长度和每一帧输出数据的长度。

其中输入数据长度为:

4字节的Status状态字+开辟DP输入缓冲区的占位模块的字节长度;输出数据长度为:

2字节的Control状态字+开辟DP输出缓冲区的占位模块的字节长度。

还需要注意的是FM020模块单帧输出数据长度应控制在124字节以内,否则会导致其他IO模块离线!

比如按下图方式组态时,则每帧输入数据长度为:

4+15*2=34Byte;每帧输出数据长度为:

2+15*2=32Byte。

而总的输入数据长度为:

4+FM020模块通过每个Modbus从站的参数数据计算出的输入数据长度(单位:

字节);

总的输出数据长度为:

2+FM020模块通过每个Modbus从站的参数数据计算出的输入数据长度(单位:

字节)。

然后根据总的输入/输出数据长度和每帧的输入输出长度计算出输入和输出数据各分几帧传输。

第三个字节各位意义如下:

D7~D4

D3~D0

当前输出数据为第几帧

当前输入数据为第几帧

低4位(Bit0~Bit3)表示当前输入数据是第几帧;高4位(Bit4~Bit7)表示当前为第几帧输出数据。

如字节3为16#21,表示当前输入是第1帧数据,并且当前为第2帧输出数据。

注:

起始输入数据帧和输出数据帧均从1开始计数。

第四个字节目前未使用,保留。

Control为设备控制模块,2个字节输出,各字节说明如下所述。

第一个字节各位意义如下:

D3~D7

D2

D1

D0

不用

Modbus写允许

Modbus读允许

启动Modbus设备

第1位表示是否启动Modbus通信,1启动,BAK灯灭;0不启动,BAK灯亮。

第2位表示读允许,只允许Modbus读命令。

1表示允许,0表示不允许。

第3位表示写允许,只允许Modbus写命令。

1表示允许,0表示不允许。

第二个字节各位意义如下:

D7~D4

D3~D0

下发第几帧输出数据

请求第几帧输入数据

低4位(Bit0~Bit3)表示上位机请求第几帧输入数据;高4位(Bit4~Bit7)表示当前下发的输出数据是第几帧;

注:

1、起始输入数据帧和输出数据帧均从1开始计数。

2、特殊情况下,当FM020接收到的字节2为16#00时,模块只接收Control状态字,并且只上传Status状态字,不上传和接收Modbus数据。

3、当FM020发现上位机请求的输入数据帧大于实际的最大输入数据帧个数时,模块自动复位;当FM020发现上位机下发的输出数据帧大于实际计算出的输出数据帧个数时,模块自动复位。

FM020的Modbus冗余通信规约

Status和Control模块可以实现控制FM020的Modbus冗余通信,约定条件如下:

1、两个FM020初时同时上电初始化后都进入备用状态,不进行Modbus通信,待接收上位机下发的控制命令后,此时DP从站地址编号偏小的FM020为主,DP从站地址编号偏大的FM020为备;如果两个FM020在初时先后依次上电,则先上电的为主,后上电的为备。

2、正常运行后,一个FM020处于工作状态,另一个FM020处于备用状态。

上位机在一定周期内判断工作的FM020上报的状态字(Status),如果有故障发生,并且备用FM020的DP工作正常,上位机则通过控制字(Control)下发命令停止工作的FM020,同时启用备用的FM020;如果备用FM020的存在DP故障,则不进行切换。

3、正常运行后,一个FM020处于工作状态,另一个FM020处于备用状态。

上位机在一定周期内判断工作的FM020的DP状态,如果有DP通讯故障发生,并且备用FM020的DP工作正常,上位机则通过控制字(Control)下发命令启用备用的FM020,同时上位机清原先运行的FM020的DP状态及控制字(Control)中的RUN位和状态字(Status)中的RUN_STANDBY位;如果备用FM020的DP故障,则不进行切换。

4、当两个FM020的DP均正常,而Modbus均断线时,则会不停的切换寻检;

5、当CRC、LRC、奇偶校验出错、Modbus异常功能码等错误发生,则不进行切换;

6、当两个模块的反馈主从状态均为主,则重新初始化模块(过程与上电初始化过程相同);

7、当DP通讯故障时,则停止FM020的Modbus通信。

FM020的Modbus功能模块说明

每个Modbus从站设备可以对应一种功能的Modbus模块,所以一共可以最多添加19~23*个Modbus模块,FM020(Master)与Modbus模块类型对应关系如表9。

表9aFM020(Master)与Modbus模块类型对应关系表

模块类型

Profibus-DPI/O

数据存储区

对应Modbus

报文功能及存储区

其他参数配置

readXbits

(0xxxx),X=1~256

输入数据

(%IB,152字节)

功能码01H,0xxxx

读取X个线圈状态

1.从站地址:

1-247

2.起始地址0-65535

(取决于Modbus设备)

readXbits

(1xxxx),X=1~256

输入数据

(%IB,152字节)

功能码02H,1xxxx

读取X个离散量输入状态

1.从站地址:

1-247;

2.起始地址0-65535

(取决于Modbus设备)

readXwords

(4xxxx),X=1~60

输入数据

(%IW,152字节)

功能码03H,4xxxx

读取X个保持寄存器值

1.从站地址:

1-247;

2.起始地址0-65535

(取决于Modbus设备)

readXwords

(3xxxx),X=1~60

输入数据

(%IW,152字节)

功能码04H,3xxxx

读取X个输入寄存器值

1.从站地址:

1-247;

2.起始地址0-65535

(取决于Modbus设备)

WriteXbits

(0xxxx),X=1~256

输出数据

(%QB,152字节)

功能码0FH,0xxxx

写入X个连续线圈状态

1.从站地址:

1-247;

2.起始地址0-65535

(取决于Modbus设备)

Write

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1