9

VM系列振弦采集读数模块的测量模式

 1 year ago
source link: https://blog.51cto.com/u_15704174/5894604
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

VM系列振弦采集读数模块的测量模式

推荐 原创

河北稳控科技VM系列振弦采集读数模块的测量模式

模块有连续测量和单次测量两种测量模式, 通过向测量模式寄存器 WKMOD.[0]写入 1 使模块工作于连续测量工作模式, 写入 0 使模块工作于单次测量工作模式。 WKMOD.[15]用来设置是否在模块“ 忙” 时禁用数字接口,当数字接口被禁用期间,模块不会收到任何经由数字接口传输的数据或指令, 当数字接口不被禁用时,模块内部维持传感器测量优先的逻辑,收到的指令会在模块完成当次测量后得到响应。

VM系列振弦采集读数模块的测量模式_寄存器

连续测量模式

在连续测量模式下,模块每间隔一定的时间自动进行一次传感器激励和数据读取操作, 相邻两次测量的时间间隔由寄存器 MM_INTE 进行设置,单位为毫秒。

无论是连续测量模式还是单次测量模式,在每次向传感器发送激励信号之前均会等待MM_INTE 毫秒,所以,连续测量时间间隔也称为“ 激励前等待时长” 。

单次测量模式

单次测量是指模块一直处于“ 空闲” 状态, 当收到单次测量指令后, 立即启动单次测量过程的工作流程。 在单次测量模式,每隔 3 秒在 RTS 管脚输出一次短促高脉冲( 10ms)表示当前处于单次工作模式。 有四类指令可以触发一次单次测量。

( 1)使用专用$指令集指令

通过 UART 接口向模块发送单次测量指令$MSFR=x 或者$MSFT=x。

例: 在单次测量模式下

向模块发送单次测量指令: $MSFR=3\r\n

模块开始完成 3 次测量,当完成后输出频率测量结果数据: $FR=1343.3Hz\r\n

向模块发送单次测量指令: $MSFT=3\r\n

模块开始完成 3 次测量,当完成后输出频率和温度测量结果数据:

$FR=1343.3Hz\t$TE=30.2’C\r\n

( 2) 使用专用单次测量指令 0xAAAA 或 0xAAAB

通过 UART 接口向模块发送特定的单次测量指令, 模块测量完成后主动上传频率和温度测量结果, 指令格式为:

VM系列振弦采集读数模块的测量模式_寄存器_02

指令头:固定为 16 进制 AAAA 或者 AAAB 两个字节, AAAA 指令仅返回频率值, AAAB 指令返回频率和温度值。

功能码: 0x1x、 0x3x 或 0x7x, 末尾“ x” 表示进行几次激励和读数操作。 0x1x 功能码表示直接进行 x 次测量读数, 0x3x 表示测量前清除历史数据(历史数据会影响到数据滤波,详见“ 3.14 数据滤波” ), 0x7x 表示测量过程中检测到传感器信号质量合格或者达到 x 次立即停止测量过程。

当使用 AAAA 指令进行单次频率测量时,在指定的 x 次测量完成后会主动输出频率值( 上述“ 返回数据帧” ),若当前设置了滤波功能则输出频率值为 x 次的滤波值,若未设置滤波功能,则输出频率值为最后一次测量的实时频率值。 频率值用 2 个字节表示,高字节在前, 单位为 0.1Hz。当使用 AAAB 指令进行单次频率测量时,在指定的 x 次测量完成后会主动输出频率值和温度值,若当前设置了滤波功能则输出值为 x 次的滤波值,若未设置滤波功能,则输出频率和温度值为最后一次测量的实时值。频率值用 2 个字节表示、温度值用 2 个字节表示。

单次测量时, 测量次数尽量>=3 次,且推荐使用高压激励方法、开启历史数据滤波功能。 若采用扫频法,可能首次测量失败,影响最终结果计算( 若使用了历史数据滤波功能)。

例: 在单次测量模式下

向模块发送单次测量指令: AA AA 01 13 68

模块开始完成 3 次测量,当完成后输出频率测量结果数据:

单通道模块返回: AA AA 01 13 34 3A D6, 频率值为(0x34*256+0x3A)/10=1337.0Hz。

4 通道模块返回:

8 通道模块返回:

向模块发送单次测量指令: AA AB 01 13 69

模块开始完成 3 次测量,当完成后输出频率和温度测量结果数据:

单通道模块返回: AA AB 01 13 34 3A 00 F5 CC, 频率值 1337.0Hz,温度值 24.5℃。

4 通道模块返回:

8 通道模块返回:

VM系列振弦采集读数模块的测量模式_自动化监测_03

( 3) 向系统功能寄存器写入单次测量指令码

使用数字接口,任意一种通讯协议,向系统功能寄存器 SYS_FUN 写入 0x1x、 0x3x 或者 0x7x指令码, 触发一次单次测量。使用这种方法时,模块遵循主从通讯机制,在完成测量后不会主动上传数据,可以通过读取系统状态寄存器 SYS_STA.[4]来判断当前是否已经完成了本次单次测量,并在检测到完成时读取频率寄存器 S_FRQ 获得本次测量的频率结果。

例:在单次测量模式下使用 MODBUS 协议

向模块发送单次测量指令: 01 06 00 03 00 13 38 07

模块返回 MODBUS 应答数据: 01 06 00 03 00 13 38 07

模块开始完成 3 次测量,当完成后不输出任何信息,需要读取 SYS_STA.[4]来判断测量是否完成。

( 4)直接读取频率寄存器 S_FRQ

在单次测量模式下使用 MODBUS 或 AABB 通讯协议读取频率寄存器 S_FRQ, VM 模块执行 0x73指令码,并根据使用的通讯协议返回寄存器值。

VM系列振弦采集读数模块的测量模式_振弦采集模块_04

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK