计算变量增加的速度(python)

2024-04-20 00:20:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个小问题,在谷歌搜索了一段时间后,我真的不知道该怎么解决。 我的项目包括一个rasberry pi和一个旋转编码器,我将使用它作为传感器来观察轴的旋转速度。然后用Python对其进行编码。我的问题是我不知道如何计算这个。旋转编码器直接连接到轴上,并将以与轴相同的速度旋转,如果使用this code,变量“计数器”将每“点击”一次递增1。假设这就是我必须要做的,我需要知道如何计算计数器增加的速度,从而得到轴的速度。这是因为轴始终以不同的速度旋转。 我之所以需要知道轴旋转的速度,是因为我有一个显示速度的UI

如果您还有我错过的其他方法,我也将不胜感激。 先谢谢你


Tags: 项目方法ui编码pi计数器code传感器
1条回答
网友
1楼 · 发布于 2024-04-20 00:20:18

这是我计算速度的方法:

首先在顶部加上这个 import time

然后是一个开始时间变量

clk = 17
dt = 18
starttime = time.time() ## used to calculate a duration

如果从time.time()中减去starttime,将得到定义开始时间变量后的时间 (time.time()-starttime)

所以你再加上这个

if dtState != clkState:
    counter += 1
    timetakentospinshaft = time.time() - starttime ## this is how long the shaft took to spin 360 degrees
    starttime = time.time() # resetting the duartion

现在你有了所用的时间,所以你可以用距离除以时间来计算速度 (速度=距离/时间)

可通过将轴的长度乘以2π(周长计算)来计算距离 (距离=轴的长度*2π)

相关问题 更多 >