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

Calculating the speed a variable increases (python)

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

如果您有任何其他我遗漏的方法,我将不胜感激。 提前谢谢你。

这就是我计算速度的方式:

首先在顶部添加这个 import time

然后是开始时间变量

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

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

因此你再添加这个

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π )