Как добавить эффект частоты дискретизации в уравнение разности? - PullRequest
1 голос
/ 14 января 2011

Я хочу реализовать приведенные ниже разностные уравнения для разработки аккумулятора и дифференциатора:

Аккумулятор:
y[n] = y[n-1] + x[n], где y[n] - это n-й выход, а x[n] - это n* вход *. 1007 *

Дифференциатор:
y[n] = x[n] - x[n-1], где y[n] - это n-й выход, а x[n] - это n-й вход.

Аккумулятор:

double xn, yn, yn1 = 0;
std::vector<double> InputVector = GetInputVector(), OutputVector;
for(int i=0; i<MAX_NUM_INPUTS; i++)
{
    if (IsFinished()) break;
    yn = yn1 + xn;
    yn1 = yn;
    OutputVector.push_back(yn);
}

Дифференциатор:

double xn, yn, xn1 = 0;
std::vector<double> InputVector = GetInputVector(), OutputVector;
for(int i=0; i<MAX_NUM_INPUTS; i++)
{
    if (IsFinished()) break;
    yn = xn - xn1;
    xn1 = xn;
    OutputVector.push_back(yn);
}

Данные во входном векторе получены из непрерывного сигнала времени.Другими словами, производится выборка для получения этого дискретного сигнала времени.И у него есть частота дискретизации T d .

. При увеличении частоты дискретизации входного сигнала происходит амплитуда выхода аккумулятора.Это ожидаемо, так как, как представляется, существует больше образцов для дифференциации.С другой стороны, с увеличением частоты дискретизации выходная амплитуда дифференциатора уменьшается.Амплитуды как дифференциатора, так и интегратора являются правильными (при значениях, которые математика говорит, что они должны быть), когда частота дискретизации является унитарной (т. Е. 1,0 выборка / секунда).

Мой вопрос;обнулить ли влияние частоты дискретизации на выходной вектор?

Мой общий вопрос:
Предположим, что я получаю разностное уравнение из произвольной причинной передаточной функции с дискретным временем H(z).В этом случае разностное уравнение может быть чем угодно.Как я могу свести на нет влияние частоты дискретизации в этом общем случае?

(Пожалуйста, обратитесь к этой ветке форума для более подробной информации: Соответствующая ветка форума )

1 Ответ

0 голосов
/ 14 января 2011

Для дифференциатора: чтобы получить одинаковые результаты для различных интервалов выборки, разделите результат y на Td.

Для аккумулятора (интегратор): умножение ввода x на Td.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...