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

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
dj_gold
Рядовой
Сообщения: 20
Зарегистрирован: 10.03.2016{, 20:30}
Репутация: 0
Откуда: Старый Оскол

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

#1

Сообщение dj_gold » 10.03.2016{, 20:36}

Всем привет.
Подскажите как сделать замер частоты 2000 Гц за короткое время с точностью 0,01 Гц.
Или лучше замерить период ?

Airis
Сержант
Сообщения: 175
Зарегистрирован: 24.09.2015{, 07:27}
Репутация: 0

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

#2

Сообщение Airis » 10.03.2016{, 22:51}

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

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

dj_gold
Рядовой
Сообщения: 20
Зарегистрирован: 10.03.2016{, 20:30}
Репутация: 0
Откуда: Старый Оскол

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

#3

Сообщение dj_gold » 10.03.2016{, 23:32}

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

Airis
Сержант
Сообщения: 175
Зарегистрирован: 24.09.2015{, 07:27}
Репутация: 0

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

#4

Сообщение Airis » 11.03.2016{, 00:40}

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

Airis
Сержант
Сообщения: 175
Зарегистрирован: 24.09.2015{, 07:27}
Репутация: 0

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

#5

Сообщение Airis » 11.03.2016{, 01:26}

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

DWD
Лейтенант
Сообщения: 353
Зарегистрирован: 18.10.2015{, 13:51}
Репутация: 5
Откуда: Кривой Рог

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

#6

Сообщение DWD » 11.03.2016{, 09:35}

Широко известны два способа:
1) измеряется количество импульсов неизвестной частоты за заданный период времени.
2) измеряется количество импульсов эталонной (высокой) частоты за один период неизвестной частоты.

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

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

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

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

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

В каком-то старом номере журнала "Радио" была статейка с описанием способа и примера измерения низких частот за короткое время, но с большой точностью. Номер и год не помню...
Последний раз редактировалось DWD 11.03.2016{, 09:38}, всего редактировалось 1 раз.
Изображение

dj_gold
Рядовой
Сообщения: 20
Зарегистрирован: 10.03.2016{, 20:30}
Репутация: 0
Откуда: Старый Оскол

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

#7

Сообщение dj_gold » 19.03.2016{, 16:35}

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

Добавлено (19.03.2016, 16:35)
---------------------------------------------
Как посчитать допустим 100 периодов входного сигнала ?И как можно получить генератор с тактовой частотой процессора ?
Последний раз редактировалось dj_gold 11.03.2016{, 17:44}, всего редактировалось 1 раз.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2284
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 335
Имя: Владимир

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

#8

Сообщение rw6cm » 05.04.2016{, 07:53}

dj_gold писал(а):Подскажите как сделать замер частоты 2000 Гц за короткое время с точностью 0,01 Гц.
Как вариант можно с помощью этого.
Win10-64, FLProg (portable)

dj_gold
Рядовой
Сообщения: 20
Зарегистрирован: 10.03.2016{, 20:30}
Репутация: 0
Откуда: Старый Оскол

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

#9

Сообщение dj_gold » 05.04.2016{, 17:18}

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

Аватара пользователя
rw6cm
Полковник
Сообщения: 2284
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 335
Имя: Владимир

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

#10

Сообщение rw6cm » 06.04.2016{, 08:41}

Подсказка была как за короткое время получить высокую точность.
Считывать PIC-ом с хорошим опорным генератором. Получится не плохая альтернатива дорогим приборам.
С ардуиной врятли это возможно, ее частотно задающие характеристики не блещут высокой точностью  и стабильностью.
Win10-64, FLProg (portable)

Ответить

Вернуться в «Спросить у знатоков»