传感器的动态频率,传感器的动态频率响应

首页 > 机动车 > 作者:YD1662024-01-28 13:37:06

我们在为客户做技术支持时,经常会被问到有关数据时效性的问题,比如:

传感器数据的输出频率是多少?
这个速度是否可以修改?

还有客户使用C 、python等语言将传感器数据打印到控制台,查看数据的时间戳觉得数据不稳定。

本篇文章我就问朋友们详细解答这类问题。

坤维科技的六维力传感器产品都是使用24位分辨率的数模转换芯片进行传感器微应变信号的采集,然后进行解析转换,最后通过串口等数字接口输出。这里存在采样速率数据输出速率两个速率,这都关系到最终客户获得数据的时效性。

目前坤维科技标准型号的六维力传感器产品的采样速率都大于1000Hz,传感器解析好的数据会放置在寄存器,然后使用硬件定时器,命令传感器严格按照1000Hz,也就是1毫秒一帧的速率发送出力和力矩的数据。所以可以说在默认状态下,您在上位机的输入端口处拿到的数据速度是严格的1000Hz,这个速度是稳定的。如果您使用逻辑分析仪或者示波器,就可以看到目前数字总线上的数据是严格按照1000Hz的速度被发送出来的。另外,为了满足客户多样的需求,我们可以为客户修改传感器的采集速率和数据输出速率,具体哪些型号可以修改和修改的范围,还请您在采购时与销售工程师沟通好。

下面我为朋友们介绍使用时间戳查看数据是否稳定的问题。坤维科技的传感器产品支持很多种通信协议,很多客户使用422或者485串口再通过USB转换器将数据接入到电脑的USB口,这样很方便,但其实直接这样使用不能获得稳定的数据,也无法获得稳定的数据时间戳。这主要是系统的一项属性设置系统的时间精度两方面的原因。

我们常用的电脑linux或windows系统,为了适配更多的USB设备,会把这类串口转USB设备的一个叫做延时计时器的属性默认设置成16ms。我们也可以理解为,默认情况下,咱们的linux或者windows系统的电脑,允许USB口收集16ms的数据后,一次性通知系统处理。这样一来,很多客户使用C 或者python等语言设计的接收程序,会把收到的一整包多个帧的数据记作同一个时间戳,这个时候客户收到的数据是不稳定的,不是1ms一帧,而且如果只看时间戳的话,就会觉得传感器输出的数据总是有多个帧是同一时间收到。

传感器的动态频率,传感器的动态频率响应(1)

传感器的动态频率,传感器的动态频率响应(2)

为此,我们这里为客户提供了指引文件,让您可以把这个16ms的延时计时器设置修改成最短的1ms,这个设置只需要设置一次,以后每次重启系统针对这个USB设备的延时计时器设置值就都是1ms了。但是,这是一项我们所用电脑的系统的设置,所以当您更换新的电脑或者更换新的系统时,还需要重新设置一下。

如果我们做完延时计时器的修改,在接收1000Hz的传感器数据时,无论是画成曲线还是打印到控制台都会觉得流畅稳定很多,因为我们的系统已经在每1ms处理一帧传感器数据了。但这个时候如果看数据时间戳,还是会看到很多连续帧的时间戳是完全一样的。这是因为目前咱们普遍使用linux和windows系统不支持1秒钟获取1000次时间戳,这么快的速度会让系统总是返回同一个时间戳,这样如果您只看时间戳,或者完全依赖时间戳画图的话,就会觉得电脑是在同一时间收到了很多数据。

我们建议您如果查看数据,请查看一段比较长时间的,比如10秒内的数据,统计1万帧数据的时间戳差值是不是10秒;如果画图,就设置两帧数据的时间间隔是固定的1毫秒,采用第一帧数据的时间戳为起始时间,然后每隔1ms画一个点,这样看到的数据就是流畅稳定的了。

好,这就是客户关心的传感器数据时效性问题,我们致力于为客户提供稳定、准确的六维力、力矩数据,会为您提供优质专业的技术支持。如果您想要优质的力觉测量方案,请关注坤维科技。

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.