联系我们

山杰电子负载通讯协议简介

2013/6/10 11:02:56

暂无图片。

详细介绍


  电子负载通讯协议

电子负载通讯 概述

山杰SJ9系列电子负载,支持Modbus应用协议。其数据帧结构包含4个部分:

附加地址

功能码

数据

差错校验


      为保证通讯的可靠性,应当保证每帧数据间隔应当大于3.5倍单字节字符传输时间,如果波特率为9600,则帧与帧之间的时间间隔就必须大于11*3.5/9600=0.004秒。

负载采用双向异步通讯,固定1位起始位,8位数据位,1位停止位。支持无校验、奇校验、偶校验三种校验方式。支持2400、9600、14400、28800、57600、115200共6种波特率选择。

1)附加地址与通讯参数设置

附加地址为单字节16进制数据,负载只响应附加地址与本机附加地址一致的请求数据帧。

2)设置附加地址

依次按电子负载Shift+0按键进入主菜单,负载显示“MENU CONFIG”,按Enter键确认,此时负载进入config配置菜单,按上下键直到负载显示“CONFIG ADDRESS SET”,提示进行附加地址设置,按Enter进入,此时负载显示“ADDRESS  ADDR=  xxx”,提示当前的附加地址,如果用户需要修改此地址,按数字键编辑,并按Enter确认。请注意,这个地址应该是1~200之间的整数。

3)选择校验方式

依次按电子负载Shift+0按键进入主菜单,负载显示“MENU CONFIG”,按Enter键确认,此时负载进入config配置菜单,按上下键直到负载显示“CONFIG  COMM.PARITY”,提示选择校验方式,按Enter进入,此时负载显示“COMM.PAR xxxxx”,提示当前的校验方式,用户可以使用上下键选择适合自己的校验方式,并按Enter确认。目前负载只支持无校验、奇校验、偶校验、共3种校验方式选择。

电子负载 通讯口DB9的定义:

    1  +5V

   2 发送数据 TXD

   3 接收数据 RXD

     4  NC

     5  GND

     6  NC

     7  NC

     8  NC

     9  NC


电子负载选择通讯波特率:

依次按Shift+0按键进入主菜单,负载显示“MENU CONFIG”,按Enter键确认,此时负载进入config配置菜单,按上下键直到负载显示“CONFIG BAUDRATE SET”,提示选择波特率,按Enter进入,此时负载显示“BUADRATE  xxxxx”,提示当前的波特率,用户可以使用上下键选择适合自己的波特率,并按Enter确认。目前负载只支持2400、9600、14400、28800、57600、115200共6种波特率选择。

   数据

在部分命令帧中,数据是定长的,但在另外部分帧中,数据又是不定长的。遵循Modbus协议,数据域中的16进制数据,以及浮点数,都是高字节在前,低字节在后。另外,在写线圈的输出值中,数据必须为0x0000及0xFF00,其中0x0000表示位置零,0xFF00表示位置1。

 功能码

功能码为单字节16进制数据,目前只开放以下4种功能模式

功能码

说明

0x01

读线圈,按位寻址读取数据

0x05

写线圈,按位寻址写数据

0x03

读寄存器,按字寻址读取数据

0x10

写寄存器,按字寻址写数据

差错校验

负载采用循环冗余校验(CRC),CRC结果为单字,其低字节在前,高字节在后。其生成规律如下。

a) 设置一个16位的CRC寄存器,并赋以初值0xFFFF。

b) 将数据帧中的第一个字节,也就是附加地址,与CRC寄存器的低8位按位异或,并保存在CRC寄存器中。

c) CRC寄存器右移1位,并检测移出的最低位是否为1,如果最低位为1,则将CRC寄存器与固定数0xA001异或。

d) 重复步骤c共8次。

e) 对数据帧的下一个字节重复步骤b,c,d,直到数据域的最后一个数据。

f) 最后的CRC寄存器中的内容,就是最后的校验值,将其附加在数据帧的最后一个数据之后,并保持低8位在前,高8为在后的放置。



更多图片