感知世界的力量
您当前的位置 : 首 页 >> 新闻动态 >> 行业新闻

联系我们Contact Us

广州市斯巴拓电子科技有限公司

广州市斯巴拓电子科技有限公司

电话:020-82019036  020-29890053

传真:020-82019876

邮箱:sbtchina@sbtchina.cn

网址:

地址:广东省广州市南沙区大岗镇豪岗大道148号A座二楼

压力传感器标准Modbus RTU协议怎么使用教程

发布日期:2020-08-10 作者: 点击:

压力传感器标准Modbus RTU协议怎么使用教程

基本指令集详述

详细的指令集说明如下列章节所述。

1.模块地址

客户可通过2种途径设置地址,一种是通过拨码开关设定,最多可设定63种,具体设置方法已在1.2.4中说明,拨码开关需在通电前拨好位置,第二种通过软件设置,将SW1SW6的拨码开关都上拨到off档。拨码开关通电前拨才有效。

指令格式:01 10 00 00 00 01 02 00 02 27 91(使用前需解锁)地址由01改为02时代码格式

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

00

00

01

02

00

02

27

91

返回格式:01 10 00 00 00 01 01 C9

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

00

00

01

01

C9

2.波特率设置

放大器出厂时默认波特率为9600, 修改为115200,输入格式如下

指令格式:01 10 00 01 00 01 02 00 07 E6 43, 手动发送指令后将系统波特率选择到115200(使用前需解锁)

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

01

00

01

02

00

07

E6

43

返回格式:01 10 00 01 00 01 50 09(应答的数据是在变送器切换成新的波特率后返回的,如果上位机未及时切换到新的波特率,则无法收到数据)

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

01

00

01

50

09

3.数据帧格式

放大器出厂时默认为06(8位数据位,无校验,2位停止位)选项格式,修改为48位数据位,奇校验,1位停止位)选项时

指令格式:01 10 00 02 00 01 02 00 04 A6 71,手动发送指令后将校验位、数据位、停止位在上位机上设置成4中内容(使用前需解锁)

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

02

00

01

02

00

04

A6

71

返回格式:01 10 00 02 00 01 A0 09(应答的数据是在变送器切换成新的数据帧格式后返回的,如果上位机未及时切换到新的数据帧格式,则无法收到数据)

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

02

00

01

A0

09

4.协议类型设置

协议可通过拨码开关设置,参考1.2.4,也可通过软件设置,如将Modbus RUT改成自由协议

指令格式:01 10 00 03 00 01 02 00 00 A6 63

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

03

00

01

02

00

00

A6

63

返回格式:01 10 00 03 00 01 F1 C9

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

03

00

01

F1

C9

00(自由协议),01Modbus RTU)02ASCII),协议类型切换后,数字帧格式将恢复成默认值。

5.指令应答延时设置

当延时10ms时

指令格式:01 10 00 04 00 01 02 00 10 A6 18

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

04

00

01

02

00

10

A6

18

返回格式:01 10 00 04 00 01 40 08

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

04

00

01

40

08

单位为ms,应答延时用于RS485通信,因为RS485是半双工,只能发或收,不能同时发收。有些主机收发切换比较慢,导致应答指令丢失,所以通过合理设置应答延时时间可避免指令丢失。

6.锁定/解锁系统配置

指令格式:01 10 00 05 00 01 02 5A A5 5C DE

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

05

00

01

02

5A

A5

5C

DE

返回格式:01 10 00 05 00 01 11 C8

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

05

00

01

11

C8

防止模块运行过程中收到错误指令导致系统配置被意外修改。一旦配置被锁定,模块将无法接收外部串口命令进行修改,直到锁定被解除。
包括:模块地址、波特率、数字帧格式、协议类型、恢复出厂设置等寄存器。写入0x5AA5解锁系统配置;读此寄存器将返回0

放大器上电后默认为锁定状态。

7.固件版本

返回模块内部程序版本号给上位机

指令格式:01 03 00 06 00 01 64 0B

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

03

00

06

00

01

64

0B

返回格式:01 03 02 00 64 B9 AF

模块地址

功能代码

字节数

第一组寄存器数据

CRC16校验

01

03

02

00

64

B9

AF

8.恢复出厂设置

指令格式:01 10 00 07 00 01 02 00 55 67 D8

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

07

00

01

02

00

55

67

D8

返回格式:01 10 00 07 00 01 B0 08

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

07

00

01

B0

08

注意此操作将删除放大器内部所有用户设置参数和标定结果,并且不可恢复,请慎用!

9.读取测量值

指令格式:01 03 00 1E 00 02 A4 0D

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

03

00

1E

00

02

A4

0D

返回格式:01 03 04 00 00 01 62 7A 4A(数据根据实际情况变化)

模块地址

功能代码

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

03

04

00

00

01

62

7A

4A

测量值为AD内码值经零点和增益标定并转换的值。

10.AD转换速度

默认AD转换速度为120,当改为240

指令格式:01 10 00 20 00 01 02 00 05 61 33

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

20

00

01

02

00

05

61

33

返回格式:01 10 00 20 00 01 00 03

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

20

00

01

00

03

模拟信号到数字信号的转换,简称AD转换,AD转换速度越快,采样精度越低。

AD采样速率就是称重设备对称台上物品重量的检测速度,通常在每秒几次至几百次之间,高速的称重应用,可达几千次,对于一个既定的称重设备,AD速率越快,AD检测的数据精度会相对越差,而AD速率越慢,AD检测的精度会相对越高。因此应根据实称重对速率的需要,合理选择能满足需要的最低档的速率进行AD采样,能最大限度提高检测精度,从而在速度和精度上取得最佳平衡点。

11.拉压双向

将单向改为双向时

指令格式:01 10 00 21 00 01 02 00 00 A0 E1

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

21

00

01

02

00

00

A0

E1

返回格式:01 10 00 21 00 01 51 C3

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

21

00

01

51

C3

设置极性:0x00:双向;0x01:单向

12.滤波类型

默认为09:滑动平均滤波+一阶滤波,改为08:中位值滤波+一阶滤波时

指令格式:01 10 00 22 00 01 02 00 08 A1 14

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

22

00

01

02

00

08

A1

14

返回格式:01 10 00 22 00 01 A1 C3

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

22

00

01

A1

C3

根据不同应用场合选择合适的滤波方式
0x00:不使用       0x01:平均值滤波
0x02:中位值滤波   0x03:一阶滤波
0x04:滑动平均滤波 0x05:中位值平均滤波
0x06:滑动中位值平均滤波
0x07:平均值滤波 一阶滤波
0x08:中位值滤波 一阶滤波
0x09:滑动平均滤波 一阶滤波
0x0A:中位值平均滤波 一阶滤波

滤波强度:AD采样后的数据,由于各种原因,往往会混杂各种来自于不同原因的噪声在其中,为了得到一个尽可能接近真实的称重数据,称重设备会采用数字滤波的方式进行数据信号处理,而AD滤波强度,是这个数据处理的一个重要参数,一般地,滤波强度越小,数据输出的信号响应速度越快,但是对噪声滤除的效果也越差;而滤波强度越大,则输出的信号响应速度越慢,但是对于噪声滤除的效果会越好,在响应速度和滤波效果之间,合理取舍,寻找最佳平衡点,是用好一个称重设备关键的一步,这个没有确定的标准,需要使用者根据现场情况,做一个权衡取舍,究竟是速度优先,还是稳定优先,根据客户实际需要而定。

13.波特强度

波特强度改为10时

指令格式:01 10 00 23 00 01 02 00 10 A0 CF

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

23

00

01

02

00

10

A0

CF

返回格式:01 10 00 23 00 01 F0 03

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

23

00

01

F0

03

范围:0~50,数字越大,滤波越强

14.零点内码值

指令格式:01 10 00 24 00 02 04 7F FF FF FF 10 D8

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

24

00

02

04

7F

FF

FF

FF

10

D8

返回格式:01 10 00 24 00 02 01 C3

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

24

00

02

01

C3

零点对应的AD内码值;范围:-8000000~8000000
写入:0x7fffffff将当前内码设为零点内码

零点就是称重的基准点,在这个基准上增减的重量就是实际称重的重量。零点标定,顾名思义,就是在标定的时候,作为基准记录的一个零点,然后在此基础上做的重量标定。

15.零点测量值

指令格式:01 10 00 26 00 02 04 00 00 00 00 71 9D

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

26

00

02

04

00

00

00

00

71

9D

返回格式:01 10 00 26 00 02 A0 03

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

26

00

02

A0

03

16.增益内码值

指令格式:01 10 00 28 00 02 04 7f ff ff ff 45 D8

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

28

00

02

04

7f

ff

ff

ff

45

D8

返回格式:01 10 00 28 00 02 C1 C0

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

28

00

02

C1

C0

17.增益测量值

指令格式:01 10 00 2A 00 02 04 4E 20 27 10 16 7D

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

2A

00

02

04

4E

20

27

10

16

7D

返回格式:01 10 00 2A 00 02 60 00

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

2A

00

02

60

00

放上砝码,输入想要标定的值,比如放1KG砝码到10KG压力传感器上,设定测量值为1000。当标定好后,放置2KG的砝码到压力传感器上,读取的测量值为2000

18.读取AD内码

指令格式:01 03 00 2C 00 02 05 C2

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

03

00

2C

00

02

05

C2

返回格式:01 03 04 FF FF E5 B0 B1 33(数据根据实际情况变化)

模块地址

功能代码

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

03

04

FF

FF

E5

B0

B1

33

模块返回当前AD内码值给主机。

19.多点修正关闭

指令格式:01 10 00 3C 00 01 02 00 01 62 AC

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

3C

00

01

02

00

01

62

AC

返回格式:01 10 00 3C 00 01 C1 C5

模块地址

寄存器起始地址

寄存器数量

CRC16校验

01

00

3C

00

01

C1

C5

此寄存器为只写,写入任何非零值关闭多点修正,读此寄存器将返回0

20.多点修正数量

指令格式:01 03 00 3D 00 01 15 C6

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

03

00

3D

00

01

15

C6

返回格式:01 03 02 00 00 B8 44

模块地址

功能代码

字节数

寄存器数据

CRC16校验

01

03

02

00

00

B4

44

此寄存器为只读,读取此寄存器返回内部多点修正的数量,写此寄存器无效

21.第N点内码值

指令格式:01 10 00 3E 00 02 04 7F FF FF FF 59 63

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

3E

00

02

04

7F

FF

FF

FF

59

63

返回格式:01 10 00 3E 00 02 20 04

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

3E

00

02

20

04

N点对应的AD内码值;范围:-8000000~8000000;如果对本寄存器写入0x7fffffff,则用当前的AD内码值替代;

21.第N点测量值

指令格式:01 10 00 40 00 02 04 00 01 00 00 A6 5F

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

40

00

02

04

00

01

00

02

A6

5F

返回格式:01 10 00 40 00 02 40 1C

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

40

00

02

40

1C

N点对应的测量值;范围:-8000000~8000000;

22.插入修正值

指令格式:01 10 00 42 00 01 02 00 10 A8 BE

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

42

00

01

02

00

10

A8

BE



返回格式:01 10 00 42 00 01 A1 DD

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

42

00

01

A1

DD

先将AD内码写入第N点内码值寄存器;再写N点测量值寄存器;然后写0x01到本寄存器,模块会将数据插入到内部的多点修正数据表中;数据表最多支持50个点,寄存器为只写;读取返回0

23.读取毛重

指令格式:01 03 00 50 00 02 C4 1A

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

03

00

50

00

02

C4

1A

返回格式:01 03 04 FF FF C1 F0 AB C3(数据根据实际情况变化)

模块地址

功能代码

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

03

04

FF

FF

C1

F0

AB

C3

毛重=净重+皮重

24.读取净重

指令格式:01 03 00 52 00 02 65 DA

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

03

00

52

00

02

65

DA

返回格式:01 03 04 FF FF C1 EF EA 0B(数据根据实际情况变化)

模块地址

功能代码

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

03

04

FF

FF

C1

EF

EA

OB

净重=毛重-皮重

25.去皮

指令格式:01 10 00 54 00 02 04 7F FF FF FF DF 34

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

54

00

02

04

7F

FF

FF

FF

DF

34

返回格式:01 10 00 54 00 02 00 18

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

54

00

02

00

18

皮重值;范围:-8000000~8000000;写入0x7fffffff执行自动去皮

当设备称重的物品有包装时,如果我们只需要称重物品自身的重量,就要把包装物作为皮重预去除。可以把包装实物直接放在称台上,然后去皮,写入0x7fffffff执行自动去皮。如果包装不便分开,而且已知包装的重量,则可以通过发送指令把皮重重量输入称重设备,这个就是所谓的数字去皮。

26.设置最大称量

指令格式:01 10 00 56 00 02 04 00 00 C3 50 26 75

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

56

00

02

04

00

00

C3

50

26

75

返回格式:01 10 00 56 00 02 A1 D8

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

56

00

02

A1

D8

举例说明:有一个称重设备,它最大能称重的重量是100.00KG,称重时数字跳动变化的最小数字是0.02KG,那么这个称的最大称重,就是100.00KG,也就是说100.00KG是这个称能称量的最大称量分度值就是0.02KG,使用称台功能前需先设置最大称量和分度。

27.称台分度

指令格式:01 10 00 58 00 01 02 00 09 6B 4E

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

58

00

01

02

00

09

6B

4E

返回格式:01 10 00 58 00 01 80 1A

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

58

00

01

80

1A

称台分度值;使用称台功能前需先设置此值。0x00:0.0001   0x01:0.0002   0x02:0x0005
0x03:0.001    0x04:0.002    0x05:0.005
0x06:0.01     0x07:0.02     0x08;0.05
0x09:0.1      0x0A:0.2      0x0B:0.5
0x0C:1        0x0D:2        0x0E:5
0x0F:10       0x10:20       0x11:50

28.零点标定时的砝码重量

指令格式:01 10 00 59 00 02 04 00 00 00 00 36 F9

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

59

00

02

04

00

00

00

00

36

F9

返回格式:01 10 00 59 00 02 91 DB

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

59

00

02

91

DB

此寄存器为零点标定对应的砝码重量值;使用称台功能前需先设置此值

29.增益标定时的砝码重量

指令格式:01 10 00 5B 00 02 04 27 10 00 00 BC 51

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

第一组寄存器数据

第二组寄存器数据

CRC16校验

01

10

00

5B

00

02

04

27

10

00

00

BC

51

返回格式:01 10 00 5B 00 02 30 1B

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

5B

00

02

30

1B

此寄存器为增益标定对应的砝码重量值;使用称台功能前需先设置此值

30.手动置零范围

指令格式:01 10 00 5D 00 01 02 00 01 6A DD

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

5D

00

01

02

00

01

6A

DD

返回格式:01 10 00 5D 00 01 90 1B

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

5D

00

01

90

1B

手动置零就是通过外部按键或者命令让称重设备把当前的称重数据直接作为当前零点,只要当前称重重量不超过手动置零的范围,称重设备就会立即将显示清零复位。

31.执行手动置零

指令格式:01 10 00 5E 00 01 02 00 01 6A EE

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

5E

00

01

02

00

01

6A

EE

返回格式:01 10 00 5E 00 01 60 1B

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

5E

00

01

60

1B

32.开机置零范围

指令格式:01 10 00 5E 00 01 02 00 01 6A EE

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

5E

00

01

02

00

01

6A

EE

返回格式:01 10 00 5E 00 01 60 1B

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

5E

00

01

60

1B

33.设置自动零位跟踪范围

指令格式:01 10 00 60 00 01 02 00 01 6E 30

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

60

00

01

02

00

01

6E

30

返回格式:01 10 00 60 00 01 01 D7

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

60

00

01

01

D7

参数范围:0~10000;单位:0.1d;设置0时关闭零位跟踪功能

开机使用中的称重设备,会因为AD温飘,传感器温飘蠕变等各种原因,AD信号输出会发生漂移现象,设备内的零点跟踪校准程序会对这个非常缓慢的漂移做自动跟踪,抵消这个漂移,但是这个零点跟踪的方式是有速度和范围的。

34.设置自动零位跟踪时间

指令格式:01 10 00 61 00 01 02 00 10 AF ED

模块地址

功能代码

寄存器起始地址

寄存器数量

字节数

寄存器数据

CRC16校验

01

10

00

61

00

01

02

00

10

AF

ED

返回格式:01 10 00 61 00 01 50 17

模块地址

功能代码

寄存器起始地址

寄存器数量

CRC16校验

01

10

00

61

00

01

50

17

  使用步骤

8.1连接好线,通电

8.2握手

8.3零位标定

8.4增益标定

8.5读取测量值使用

※以上是放大器的基本操作,如需使用称台功能,除以上步骤外,另加以下步骤

8.6设置最大称量和分度

8.7设置(零位标定&增益标定)砝码重量

※零位跟踪功能是基于称台使用的,所以要先设置称台功能,才能使用零位跟踪功能。

 

 

压力传感器.png

本文网址:/news/508.html

关键词:压力传感器,标准ModbusRTU,ModbusRTU

最近浏览:

联系我们

020-82019036 

020-29890053

 官方网站公众号二维码.png小程序二维码.png

    官方网站              微信公众号            微信小程序


传真:020-82019876

邮箱:sbtchina@sbtchina.cn

网址:

关于我们
公司地址

总部地址:广东省广州市南沙区大

岗镇豪岗大道148号A座二楼


苏州分厂:江苏省常州市武进国家

高新技术产业开发区

Copyright © 广州市斯巴拓电子科技有限公司   粤ICP备12065418号  技术支持:天呈汇
企业分站 | 网站地图 | RSS | XML | 热推产品  |  主营区域: 天津 上海 北京 南京 镇江 深圳 广东 东莞 广州 昆山
在线客服
分享 一键分享