一:测量原理
本传感器采用高精度耐磨线性电阻,作为测量核心部件。其主体为长条形线性电阻器,移动部件为低电阻率的金属导体。通过测量金属导体在线性电阻器上的位置,来达到测量位移的目的。
其原理如下图所示:
二:传感器技术参数
|
单位 |
数值 |
描述 |
|
供电电压 |
V ( DC ) |
7-24 |
建议为 12V |
|
测量范围 |
mm |
0-10 0-20 0-50 0-100 |
|
|
测量精度 |
0-10 |
um |
6.6 |
测量值 *0.066% , 6.6um |
0-20 |
um |
13.2 |
测量值 *0.066% , 13.2um |
|
0-50 |
Um |
33 |
测量值 *0.066% , 33um |
|
0-100 |
Um |
66 |
测量值 *0.066% , 66um |
|
显示分辨率 |
UM |
1 |
|
|
测量分辨率 |
0-10 |
Um |
0.15 |
量大量程 / 65535 |
0-20 |
Um |
0.3 |
||
0-50 |
Um |
0.75 |
||
0-100 |
um |
1.5 |
||
尺寸 |
mm |
250mm |
可调节长度 40mm |
三:安装方式
传感器固定方式的两端固定,固定孔直径为 8.5mm ,如下图所示:
如上图所示,传感器安装孔在两头,中间有一个长度调节套,可以调节两个安装孔的间距,以适应现场,降低施工要求。
传感器伸缩杆为自动回缩式,以保证传感器能精确的测量到变化值。
安装时,先在离裂缝两侧的安全距离处打孔,固定膨胀螺丝。然后装传感器伸缩杆拉出(约全量程的 1/4 到 1/3 ),然后通过延长杆和长度调节套,调节两个安装孔间的间距与膨胀螺丝的位置大致相同,此时将两个孔套在膨胀螺丝螺杆上,然后固定即可。
螺丝安装方式图:
四:接线说明
传感器输出引经来 4 根,其功能如下:
颜色 |
功能 |
颜色 |
功能 |
红 |
电源正 |
蓝 |
RS485-A |
黑 |
电源负 |
绿 |
RS485-B |
五:通讯协议
本机支持两种通讯协议,一种为标准 MODBUS 协议,另一种为简易协议。以下是两种协议的详细说明:
5.1 MODBUS
l 所有的寄存器为 16 位。
l 设备地址码范围为 1-249 。 250(FAH) 为广播地址。
l 标准协议,方便用 PLC ,组态软件等进行二次应用开发。
l 每次读取参数最多为 32 字节,即 16 个寄存器
5.1.1 命令格式
主机读取类命令 |
||||||||||||||
说明 |
地址 |
功能码 |
起始地址 |
寄存器数量 |
CRC16 |
|||||||||
长度 |
1Byte |
1Byte |
2Byte |
2Byte |
2BYte |
|||||||||
示例 |
01H |
03H |
0001H |
0003H |
95CBH |
|||||||||
此示例为在地址为 01H 的设备第 0001H 地址开始,读取 0003H 个寄存器内容 |
||||||||||||||
读取类命令设备返回:正常 |
||||||||||||||
说明 |
地址 |
功能码 |
返回字节数 |
数据内容 |
CRC16 |
|||||||||
长度 |
1Byte |
1Byte |
1Byte |
N Byte |
2BYte |
|||||||||
示例 |
01H |
03H |
06H |
DAT1,..DAT6 |
CRCH,CRCL |
|||||||||
设备返回内容共计 3 个寄存器 6 个字节 |
||||||||||||||
读取类命令设备返回:异常 |
||||||||||||||
说明 |
地址 |
功能码 |
返回字节数 |
错误代码 |
CRC16 |
|||||||||
长度 |
1Byte |
1Byte |
1Byte |
1 Byte |
2BYte |
|||||||||
示例 |
01H |
03H |
81H |
ErrCode |
CRCH,CRCL |
|||||||||
设备返回异常数据时,返回数据字节数始终为 81H ,位为 1 代表错误,其他为数量, 81H 的含意为:返回错误,错误代码有一个字节。错误来源为 ErrCode |
||||||||||||||
ErrCode |
01: 起始位置不存在 02 :所访问的寄存器有一部分不存在 03 :读取的寄存器总长度超限(即超过 16 个寄存器)。 04: 其他错误。 8FH: 无效命令。 |
设置类命令 (06H) 操作寄存器数量 =1 |
|||||||||||||||||
说明 |
地址 |
功能码 |
操作地址 |
|
数据内容 |
CRC16 |
|||||||||||
长度 |
1Byte |
1Byte |
2Byte |
|
N Byte |
2BYte |
|||||||||||
示例 |
01H |
06H |
0001H |
|
12H,34H |
D57DH |
|||||||||||
向地址为 01H 的设备写入数据,向 0001H 寄存器,写入 1234H 。 |
|||||||||||||||||
主机设置类命令 (10H) 操作寄存器数量 >= 1, <= 16 。可代替 06 命令字 |
|||||||||||||||||
说明 |
地址 |
功能码 |
起始地址 |
寄存器数量 |
数据内容 |
CRC16 |
|||||||||||
长度 |
1Byte |
1Byte |
2Byte |
2 Byte |
N Byte |
2BYte |
|||||||||||
示例 |
01H |
10H |
0001H |
0002H |
12H,34H,56H,78H |
FE36H |
|||||||||||
向地址为 01H 的设备写入数据,从 0001H 寄存器,连续写入两个寄存器内容,内容依次为 1234H,5678H 。 |
|||||||||||||||||
设置类命令设备返回:正常 (06H) |
|||||||||||||||||
说明 |
设备地址 |
功能码 |
操作地址 |
|
CRC16 |
||||||||||||
长度 |
1Byte |
1Byte |
2Byte |
|
2BYte |
||||||||||||
示例 |
01H |
06H |
0001H |
|
2019H |
||||||||||||
设备返回数据正常 . |
|||||||||||||||||
设置类命令设备返回:正常 (10H) |
|||||||||||||||||
说明 |
设备地址 |
功能码 |
起始地址 |
寄存器数量 |
CRC16 |
||||||||||||
长度 |
1Byte |
1Byte |
2Byte |
2 Byte |
2BYte |
||||||||||||
示例 |
01H |
10H |
0001H |
0002H |
1008H |
||||||||||||
设备返回数据正常 . |
|||||||||||||||||
设置类命令设备返回:异常 (06H) |
|||||||||||||||||
说明 |
地址 |
功能码 |
起始地址 |
|
错误代码 |
CRC16 |
|||||||||||
长度 |
1Byte |
1Byte |
2Byte |
2Byte |
1Byte |
2BYte |
|||||||||||
示例 |
01H |
06H |
0001H |
8001H |
ErrCode |
CRCH,CRCL |
|||||||||||
设备返回数据异常,此时寄存器数量位置 1 ,代表此次操作失败,错误来源为 ErrCode |
|||||||||||||||||
ErrCode |
01: 起始地址不存在。 02 :所操作的寄存器有一部分不存在。 03 :操作的寄存器总长度超限(超过 16 个寄存器)。 04 :写入失败。 05 :写入参数有误。 06 :其他错误。 8FH: 无效命令。 |
||||||||||||||||
设置类命令设备返回:异常 (10H) |
|||||||||||||||||
说明 |
地址 |
功能码 |
起始地址 |
寄存器数量 |
错误代码 |
CRC16 |
|||||||||||
长度 |
1Byte |
1Byte |
2Byte |
2 Byte |
1Byte |
2BYte |
|||||||||||
示例 |
01H |
10H |
0001H |
8002H |
ErrCode |
CRCH,CRCL |
|||||||||||
设备返回数据异常,此时寄存器数量位置 1 ,代表此次操作失败,错误来源为 ErrCode |
|||||||||||||||||
ErrCode |
01: 起始地址不存在。 02 :所操作的寄存器有一部分不存在。 03 :操作的寄存器总长度超限(超过 16 个寄存器)。 04 :写入失败。 05 :写入参数有误。 06 :其他错误。 8FH: 无效命令。 |
5.1.2 寄存器地址列表
名称 |
地址 |
读写 |
初值 |
说明 |
测量值 (MEA_RESULT) |
0000H 0001H |
只读 |
|
当前距离值,可为负数,负数为补码格式输出 |
预留 |
|
|
|
|
地址 (ADDR) |
1000H |
读写 |
0080H |
取值范围为 1-249 , 250 为广播命令 |
相对零点 ( RelativeZero ) |
1001H 1002H |
读写 |
0000H 0000H |
设备测量值为:实际值 - 相对零点 |
复位参数 |
1FFFH |
只写 |
----- |
随意写入任何值,传感器 1000-1FFE 之间的寄存器即恢复出厂时的初值 |
预留 |
|
|
|
|
传感器名称 |
2000H 2007H |
只读 |
|
共 8 个寄存器, 16 字节 |
传感器型号 |
2008H 200FH |
只读 |
|
共 8 个寄存器, 16 字节 |
其他信息 |
2010H 2017H |
只读 |
|
共 8 个寄存器, 16 字节 |
预留 |
…… |
|
|
|
5.1.3 :命令示例
读取测量值(地址 80H )
80 03 00 00 00 02 DA 1A
数据返回(如测量值为 23456um )
80 03 04 00 00 5B A0 50 73
设置传感器地址(由 80H ,设置为 81H )
80 10 10 00 00 01 00 81 C9 A9
返回正常
80 10 10 00 00 01 1B 18
返回异常(写入错误)
80 10 10 00 80 01 04 58 20
5.2 简易协议
l 本机所有命令无明显结束位,以大于 5MS 的时间间隔作为本组命令结束的依据。
l 本机所有命令校验码为前面所有字节和的补码( CS )。
l 设备地址范围为 01H..F9H(1-249) , FA(250) 为广播地址。
l 测量命令不响应广播地址。
5.2.1: 命令格式
主机读取类命令: CMD-R 读取类命令的命令码 , 详情见表 CMD-R |
|||||
说明 |
地址 |
功能码 |
命令码 |
校验 |
|
长度 |
1Byte |
1Byte |
1Byte |
1BYte |
|
示例 |
ADDR |
06H |
CMD-R |
CS |
|
读取类命令设备返回: |
|||||
说明 |
地址 |
功能码 |
命令码 |
数据内容 |
校验 |
长度 |
1Byte |
1Byte |
1Byte |
N 字节 |
1BYte |
示例 |
ADDR |
06H |
CMD-R | 80H |
DAT1...DATN |
CS |
主机设置类命令: CMD-W 设置类命令的命令码,详情见表 CMD-W |
|||||||
说明 |
地址 |
功能码 |
命令码 |
数据内容 |
校验 |
||
长度 |
1Byte |
1Byte |
1Byte |
nBytes |
1BYte |
||
示例 |
ADDR |
04H |
CMD-W |
Dat1....dat2 |
CS |
||
设置类命令设备返回:成功 |
|||||||
说明 |
地址 |
功能码 |
|
校验 |
|||
长度 |
1Byte |
1Byte |
|
1BYte |
|||
示例 |
ADDR |
04H |
|
CS |
|||
设置类命令设备返回:失败 |
|||||||
说明 |
地址 |
功能码 |
错误码 |
校验 |
|||
长度 |
1Byte |
1Byte |
1Byte |
1BYte |
|||
示例 |
ADDR |
84H |
ErrCode |
CS |
5.2.2 :命令列表
CMD-R 及数据内容说明
CMD-R |
说明 |
传感器返回数据内容 |
01H |
读取基本参数 |
ADDR, RelativeZero (4Bytes) |
02H |
读取测量值 |
2BH(2DH), 3XH, 3XH, 3XH, 3XH, 3XH, 3XH ( ASCII ) |
10H |
读取设备名称 |
DAT1,DAT2……DAT16 |
11H |
读取设备型号 |
DAT1,DAT2……DAT16 |
12H |
读取其他信息 |
DAT1,DAT2……DAT16 |
CMD-W 及数据内容说明
CMD-W |
说明 |
传感器返回数据内容 |
01H |
设置地址 |
ADDR(1Byte) |
02H |
设置相对零点 |
RelativeZero (4Bytes) 高位在前,低位在后 |
5.2.3 :命令示例
读取测量值(地址 80H )
80 06 02 78
数据返回(如测量值为 23456um )
80 06 82 2B 30 32 33 34 35 36 99
设置传感器地址(由 80H ,设置为 81H )
80 04 01 81 FA
返回正常
80 04 7C
返回异常(写入错误)
80 04 04 78