Страница 1 из 1

Замер низкой частоты

Добавлено: 10.03.2016{, 20:36}
dj_gold
Всем привет.
Подскажите как сделать замер частоты 2000 Гц за короткое время с точностью 0,01 Гц.
Или лучше замерить период ?

Замер низкой частоты

Добавлено: 10.03.2016{, 22:51}
Airis
Скоростным счетчиком можно измерить количество импульсов за определенный период времени, или длительность импульса - паузы. Но разрядность этих измерений целое количество импульсов и минимальный период в 1 µs.
Если мерить количество импульсов, то для такой большей точности надо мерить очень длительный время (как минимум 100 секунд). При маленькой длительности измерение ошибка будет +- 1Hz.
А если мерить период (длительность импульса - паузы), то при минимальным квантом измерении 1 µs ошибка будет как минимум 3-4 Hz.
Для таких точных изменений надо что то, что способна мерить время хотя бы в ns.

Добавлено (10.03.2016, 22:51)
---------------------------------------------
P.S. Уточнение.
Если мерить период (длительность импульса - паузы), то ошибка будет 8 Hz. Например, диапазон 2005-2012Hz будет давать одинаковое длительность периода = 498 µs.

Замер низкой частоты

Добавлено: 10.03.2016{, 23:32}
dj_gold
Если мерить период сигнала за определенное время точность еще больше реальна ...Просто не пойму как это реализовать в этой программе.С помощью 2х таймеров что ли...
А вообще реально видел замер 2200Гц с точностью 6 знаков после запятой.За время 200 мс.

Замер низкой частоты

Добавлено: 11.03.2016{, 00:40}
Airis
dj_gold писал(а):С помощью 2х таймеров что ли...
Для этого в программе блок есть "Скоростной счетчик".
dj_gold писал(а):А вообще реально видел замер 2200Гц с точностью 6 знаков после запятой.За время 200 мс.
Не знаю каким способом можно измерить частоту с такой точностью. Если просто мерить количество импульсов за 200 ms, то при 2200 Hz будет насчитано 440 импульсов, но такое же количество будет и при частоте 2198 - 2202 Hz. Счетчик может считать только целое количество импульсов.
Возможно это как то можно сделать используя принцип аналогово цифрового преобразование с большей частотой дискретизации. Но фиг его знает ка это можно сделать на Arduino.

Замер низкой частоты

Добавлено: 11.03.2016{, 01:26}
Airis
Вот такая идея.
6192285.png
Но это только нерабочий пример, как можно посчитать частоту с боле высокой точностью. В реальном проекте для этого надо использовать аппаратный счетчик и генератор.

Замер низкой частоты

Добавлено: 11.03.2016{, 09:35}
DWD
Широко известны два способа:
1) измеряется количество импульсов неизвестной частоты за заданный период времени.
2) измеряется количество импульсов эталонной (высокой) частоты за один период неизвестной частоты.

Первый подходит только для измерения относительно высоких частот, так как при низких требуется долго ждать результат:
измерение 1 сек - минимальная частота 1 Гц,
измерение 10 сек - минимальная частота 0,1 Гц.

Второй, наоборот, позволяет уменьшить время измерения  низкочастотных сигналов или увеличить точность измерения.
При любом времени измерения точность целиком зависит от эталонной частоты - чем она выше, тем точнее.

При измеряемой частоте 2000Гц минимальное время измерения будет 500мс или пол секунды. Меньше - ни как.

Для получения точности до 0,01 Гц требуется соответственно увличивать эталонную измерительную частоту:
2000Гц/0,01Гц=200 000Гц =200КГц.

Если МК выработает такую частоту с соответсвующей точностью и стабильностью, то все измерения можно будет произвести программно. Иначе придётся ставить дополнительный кварцованый генератор с делителем для получения требуемой частоты 200КГц.

В каком-то старом номере журнала "Радио" была статейка с описанием способа и примера измерения низких частот за короткое время, но с большой точностью. Номер и год не помню...

Замер низкой частоты

Добавлено: 19.03.2016{, 16:35}
dj_gold
А если делать замер 100 периодов?У меня сделан магнитометр там прямая частота 2000 Гц после компаратора считается примерно за 100 мс с точностью 0.01 Гц .Там считается 100 периодов сигнала.
Как то с помощью 2х счетчиков один считает входной сигнал второй тактовые импульсы как то так .Просто не сображу как описать...(Умножить сигнал можно хоть в 1000 раз но не хочется городить лишний огород...  Частота входного сигнала измеряется методом временных ворот. Суть метода заключается в подсчете количества
импульсов измеряемого и опорного сигналов за определенный промежуток
времени. 
   Для подсчета количества импульсов измеряемого сигнала используется счетный вход аппаратного таймера. В
качестве опорного сигнала используется тактовый сигнал микроконтроллера.
     Интервал времени, в течение которого выполняются подсчеты импульсов, отмеряется с помощью схемы
захвата аппаратного таймера Т1 и программной задержки. Как то так наверное)

Добавлено (19.03.2016, 16:35)
---------------------------------------------
Как посчитать допустим 100 периодов входного сигнала ?И как можно получить генератор с тактовой частотой процессора ?

Замер низкой частоты

Добавлено: 05.04.2016{, 07:53}
rw6cm
dj_gold писал(а):Подскажите как сделать замер частоты 2000 Гц за короткое время с точностью 0,01 Гц.
Как вариант можно с помощью этого.

Замер низкой частоты

Добавлено: 05.04.2016{, 17:18}
dj_gold
Да умножить я могу хоть в 1000 раз а смысл? Мерить нечем все равно. Максимум у счетчика 130 кГц.И считать надо максимум за 0.2 секунды вряд ли такая точность получится...

Замер низкой частоты

Добавлено: 06.04.2016{, 08:41}
rw6cm
Подсказка была как за короткое время получить высокую точность.
Считывать PIC-ом с хорошим опорным генератором. Получится не плохая альтернатива дорогим приборам.
С ардуиной врятли это возможно, ее частотно задающие характеристики не блещут высокой точностью  и стабильностью.