Andre

Скорость Нарастания Фронта Импульса

8 сообщений в этой теме

Andre    0

Подскажите, какой алгоритм лучше всего придумать для определения скорости нарастания фронта импульса. Т.е. я генерирую пилообразный сигнал и необходимо измерить две точки (время между ними и изменение напряжения), а потом разделить напряжение на время. В конце это значение необходимо вывести на семисегментный индикатор! Буду признателен за помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
Alex    528

Какая частота сигнала ? Точнее время нарастания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Andre    0

Частоту конкретно я не задаю. Я просто подаю на вход АЦП линейно изменяющееся напряжение..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
o_l_e_g    1 638
Частоту конкретно я не задаю. Я просто подаю на вход АЦП линейно изменяющееся напряжение..

Если время оцифровки АЦП много меньше длины фронта и нарастание линейное, алгоритм прост. Считываем значение с АЦП, запускаем таймер с временем много меньше длины фронта, по окончании отсчета времени, снова читаем АЦП, далее вычитаем эти два значения и результат делим на длину времени отсчета таймера, получаем dV/dt, что и есть скорость нарастания...вроде так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если учесть время преобразования, как вносимую погрешность во временной интервал, то надо сначала запустить таймер, потом сделать замер АЦП. Следующий шаг - остановить таймер и сделать еще замер. В таком случае два замера АЦП (две погрешности) будут иметь одинаковое смещение во времени относительно измерительного периода и компенсируют друг друга. Но так как сигнал - пила, то лучше проводить синхронные измерения по линейному участку, чтобы не попасть на излом формы сигнала. Здесь, наверное, придется подключить прерывание по компаратору, как синхронизирующее, для запуска всей процедуры.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Andre    0

а можно пример кода небольшой ? очень нужно...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    528
Частоту конкретно я не задаю. Я просто подаю на вход АЦП линейно изменяющееся напряжение..
А мы тем более не знаем.

Для выполнения конкретной задачи необходимо знать условие этой задачи. Вы не рассказали ничего.

Здесь всётаки не экстрасенсы :)

Диапазон измеряемых значений какой (от и до) ?

На чём пример ? (язык)

Какой МК ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Andre    0

МК51, ассемблер.

диапазон - допустим от 0 до 5 В

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас