Нет деления в алгоритме численного дифференцирования - PullRequest
0 голосов
/ 11 марта 2020

Я пытаюсь понять алгоритм, который оценивает скорость движущегося элемента. Датчики положения отбираются с изменяющейся, но довольно большой скоростью (от 16 до 24 мс / с), и скорость вычисляется как простая разница между двумя последними значениями.

Формула для скорости равна v = f(x_(n+1)) - f(x_n), и в соответствии со всеми численными подходами, которые я ожидал v = (f(x+h) - f(x)) / h

Я действительно не понимаю, почему это разделение опущено. При каких обстоятельствах это разделение можно игнорировать?

Эта система реализована на ПЛИС.

Ответы [ 2 ]

0 голосов
/ 14 марта 2020

Благодаря многим комментариям я смог понять проблему:

Единице, вычисляющей скорость, не нужно знать период времени. Вычитая следующее значение выборки из предыдущего, получим выходные значения. Эти значения представляют собой функцию, то есть линейно зависят от скорости. Одним из способов понять это является то, что этот вывод является своего рода «скоростью без единиц измерения». Выходной сигнал можно затем манипулировать (избыточной дискретизацией, пониженной дискретизацией) для достижения желаемого качества сигнала.

Чтобы иметь возможность определять скорость в некоторых точных единицах (например, м / с), по меньшей мере, должна быть задана частота дискретизации. В случае вращательного движения также необходимы другие константы, такие как радиус оси, на которой установлен датчик, и т. Д. c. Это происходит в более поздний момент.

0 голосов
/ 12 марта 2020

Его можно игнорировать, если h равно 1, так как деление на 1 не используется.

...