NA300串口RS485主从使用说明 点击:483 | 回复:0



我思故我在

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 10回
  • 年度积分:0
  • 历史总积分:204
  • 注册:2017年8月01日
发表于:2017-11-17 09:30:27
楼主

RS485接口

CPU模块提供两个标准的RS485串口与其他外部设备通讯。串口定义如下图:

 

软件配置

 

MODBUS RTU从站:

CPU集成的两个标准RS485接口,可以作为MODBUS RTU从站与触摸屏等主站设备通信,此时协议选MODBUS RTU,如下图所示:

 

CPU内寄存器MODBUS通信地址对应表

分类前缀

测点类型

读操作功能码

写操作功能码

规约地址范围

 

 

0x

Q

01

05 / 15

0000002047

M

01

05 / 15

1000026383

N

01

05 / 15

3000034095

 

1x

I

02


0000002047

S

02


1000014095

 

 

3x

IW

04


0000000511

SW

04


0500009095

事件

04


1000016173

 

 

 

 

4x

MW

03

06 / 16

0000016383

QW

03

06 / 16

2000020511

NW

03

06 / 16

2100025095

Clock

03

16

3000030004

Clock

03

06/ 16

1999019996

V

03

06 / 16

3100047383


MODBUS RTU主站:

CPU集成的两个标准RS485接口,可以作为MODBUS RTU主站读取变频器、智能仪表等设备的数据,此时协议选自由口,如下图所示:


功能描述

该功能模块用于实现标准 MODBUS 主站规约的数据读写功能,自动对 MODBUS 规约信文进行解析,CRC 校验核对和数据长度核对,用户只要填写数据读写地址及功能码即可完成简单的通信功能。功能块的调用需要定时触发,定时时间间隔即为数据读写的周期,最   小周期不能小于 50ms,通信过程中根据从站数据响应时间适当调整通讯时间间隔,否则有可能出现数据读取错误或者读取不到的现象。

通讯状态指示:

SW21COM1 发送状态)、SW23COM2 发送状态)

0:正在发送

1:发送成功

2:发送失败

SW22COM1 接收状态)、SW24COM2 接收状态)

0:正在接收

1:成功接收

2:串口故障

3:接收超时

4:字符间隔过长

5:超过信文最大字符数

7:返回信文不正确

8:请求信文不正确

9:检验出错

 

图标调用

LD 中的表示形式:


 

 

FBD 中的表示形式:





IL 中的表示形式:

              CAL MODRW (PORT:=Port, ADR:=Address, CODE:=Code, R:=Register, N:=Number, DATA:=Data)

ST 中的表示形式:

              MODRW (PORT:=Port, ADR:=Address, CODE:=Code, R:=Register, N:=Number, DATA:=Data);


参数说明


 

例:


 

 

 

 

说明:上例表示每秒钟用 CPU 的串口 1 从地址为 1 的从站,用 03 功能码读取从 0 开始的连续 30 个寄存器的数据,读到的数据存储在%MW100 开始的连续 30 个字寄存器里。

    注:此功能模块,需要采用上升沿触发的方式控制读取命令发送,读命令发送的时间间隔应大于接收超时时间,并且大于仪表数据返回时间。
    如:仪表返回数据时间为 80ms,一般建议 100ms 读取一次数据,接受超时时间设置为90ms


 



热门招聘
相关主题

官方公众号

智造工程师