振弦采集模块的测量模式

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

振弦采集模块的测量模式
VM501-11.jpg

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

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

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

单次测量模式
单次测量是指模块一直处于“ 空闲” 状态, 当收到单次测量指令后, 立即启动单次测量过程的工作流程。 在单次测量模式,每隔 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 接口向模块发送特定的单次测量指令, 模块测量完成后主动上传频率和温度测量结果, 指令格式为:

指令头:固定为 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 通道模块返回:

( 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指令码,并根据使用的通讯协议返回寄存器值。

相关文章
|
1月前
|
数据采集 机器学习/深度学习 运维
从数据感知到决策优化:MyEMS 开源能源管理系统的技术架构与实践效能解析
MyEMS 是一款开源能源管理系统,采用分层解耦与模块化设计,支持多能源协同监测与智能优化调度。系统具备数据采集、分析、预警、碳核算等功能,助力企业实现节能降耗、安全管控与低碳转型,已在百余家全球企业落地应用,具备自主可控、成本低、安全性强等优势,面向虚拟电厂、数字孪生等未来场景持续演进。
103 0
|
8月前
|
SQL 人工智能 数据管理
跨云数据管理平台DMS:构建Data+AI的企业智能Data Mesh
跨云数据管理平台DMS助力企业构建智能Data Mesh,实现Data+AI的统一管理。DMS提供开放式元数据服务OneMeta、一站式智能开发平台和云原生AI数据平台,支持多模数据管理和高效的数据处理。结合PolarDB、AnalyticDB等核心引擎,DMS在多个垂直场景中展现出显著优势,如智能营销和向量搜索,提升业务效率和准确性。通过DataOps和MLOps的融合,DMS为企业提供了从数据到AI模型的全生命周期管理,推动数据驱动的业务创新。
489 0
|
11月前
|
人工智能 编解码 前端开发
深入了解 Three.js 中的材质与光照
Three.js 是一个强大的 JavaScript 库,用于在浏览器中创建和渲染 3D 场景。它的易用性和灵活性使得开发者能够轻松构建丰富的视觉体验。在 Three.js 中,材质与光照是影响物体外观和场景氛围的关键因素。本文将深入探讨 Three.js 中的材质类型、光源类型、光照模型,以及如何将它们结合以实现逼真的效果。
272 4
WK
|
算法
粒子群算法的优缺点分别是什么
粒子群优化(PSO)算法概念简单,易于编程实现,参数少,收敛速度快,全局搜索能力强,并行处理高效。然而,它也容易陷入局部最优,参数设置敏感,缺乏坚实的理论基础,且性能依赖初始种群分布,有时会出现早熟收敛。实际应用中需根据具体问题调整参数以最大化优势。
WK
1613 3
b站如何一次性把up主全部取消关注,让自己去学习
b站如何一次性把up主全部取消关注,让自己去学习
|
Java AndFix 开发工具
毕业5年了还不知道Android热修复?
随着移动端业务复杂程度的增加,传统的版本更新流程显然无法满足业务和开发者的需求, 热修复技术的推出在很大程度上改善了这一局面。国内大部分成熟的主流 App都拥有自己的热更新技术,像手淘、支付宝、微信、QQ、饿了么、美团等。
毕业5年了还不知道Android热修复?
|
存储 前端开发 NoSQL
Umi3与Antd-Pro5中后台全栈项目实战(1)
0、前言 使用umi3和antd pro5从零实现全栈中后台管理系统
242 0
|
前端开发 Java Spring
DTO到entity自动赋值
DTO到entity自动赋值
367 1
DTO到entity自动赋值
|
数据挖掘 数据处理 数据库
案例分享:Qt数据分析处理平台(兼容各国产麒麟系统)(文件域字符串解析,上万文件批量导入,折线图、散点图,正态分布图分析处理导出等)
案例分享:Qt数据分析处理平台(兼容各国产麒麟系统)(文件域字符串解析,上万文件批量导入,折线图、散点图,正态分布图分析处理导出等)
案例分享:Qt数据分析处理平台(兼容各国产麒麟系统)(文件域字符串解析,上万文件批量导入,折线图、散点图,正态分布图分析处理导出等)
|
JavaScript
Vue中 EventBus 的使用,如何实现Vue中的EventBus
Vue中 EventBus 的使用,如何实现Vue中的EventBus