Теория работы частотомера

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
Ghost in shell
Держит паяльник хвостом
Сообщения: 936
Зарегистрирован: Пн июн 15, 2009 06:01:38
Откуда: USSR

Теория работы частотомера

Сообщение Ghost in shell »

Собственно, вопрос:
Какая связь между диапазоном измерения и временем счета импульсов? Ясно, что чем дольше считаем импульсы, тем точнее результат. Но где оптимум?
Кот гуляет сам по себе, но вблизи холодильника.
Реклама
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Теория работы частотомера

Сообщение МитяРа »

Ghost in shell писал(а):Какая связь между диапазоном измерения и временем счета импульсов?
Строгой прямой зависимости нет..
Ghost in shell писал(а):чем дольше считаем импульсы, тем точнее результат.
Это не ко всем диапазонам применимо.. Да и на практике ждать результатов измерения несколько секунд не всегда приемлемо..
Разные диапазоны можно ведь по разному измерять.. Большие - считаем импульсы за базу времени, а на маленьких - измеряем период входных импульсов, а потом вычисляем частоту..
Ghost in shell писал(а):Но где оптимум?
Как в одном сериале говорится: "Истина, где-то там.." :)
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Реклама
Аватара пользователя
Goldsmith
Опытный кот
Сообщения: 736
Зарегистрирован: Пн янв 10, 2011 03:06:36
Откуда: Ростов-на-Дону
Контактная информация:

Re: Теория работы частотомера

Сообщение Goldsmith »

Ghost in shell писал(а):Ясно, что чем дольше считаем импульсы, тем точнее результат. Но где оптимум?
Оптимум определяется требованиями к прибору.

Например, если нужна точность измерения частоты 1%, достаточно выбрать опорную частоту в 100 раз ниже измеряемой. Аналогично в случае измерения периода: период опорного сигнала должен быть минимум в 100 раз меньше измеряемого периода.

Если нужна точность измерения выше (ниже), соответственно следует изменить соотношение частоты/периода опорного и измеряемого сигналов. Плата за увеличение точности - пропорциональное увеличение времени измерения.
Любой дурак может писать код. Настоящий профессионал - это тот, кто способен постоянно создавать продукт высокого качества, укладываясь при этом в бюджет.
J. Ganssle
Аватара пользователя
Callous
Встал на лапы
Сообщения: 115
Зарегистрирован: Вс апр 20, 2008 16:54:13
Откуда: Украина, Чернигов

Re: Теория работы частотомера

Сообщение Callous »

Все выше написанное применимо только к измерению постоянной частоты, если частота сигнала плавает или просто меняется, то вполне логично что чем дольше измерение тем менее точный результат. все зависит от конкретных условий.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Теория работы частотомера

Сообщение МитяРа »

Callous писал(а):все зависит от конкретных условий.
Полностью согласен.. Если будет конкретно написано, что предполагается измерять, то уже можно что-то точно предложить..

А при измерении плавающей частоты, тут тоже возможны варианты, как например: считаем импульсы за 10 баз времени, а потом делим на эти-же 10...
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Реклама
Аватара пользователя
aen
Модератор
Сообщения: 11940
Зарегистрирован: Пт апр 28, 2006 15:26:07
Откуда: Россия.
Контактная информация:

Re: Теория работы частотомера

Сообщение aen »

Еще зависит от стабильности задающего кварцевого генератора. В обычной схеме кварцевого генератора стабильность частоты будет порядка 10 в минус пятой степени и при такой стабильности задающего генератора, не имеет смысла делать разрядность частотомера больше 5 - 6 разрядов и соответственно период света в одну секунду при такой стабильности совершенно не нужен.
Можно для интереса посмотреть задающие генераторы промышленных частотомеров и все поймете. Это очень сложная штука.
Реклама
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Теория работы частотомера

Сообщение Леонид Иванович »

Ghost in shell писал(а):Собственно, вопрос: Какая связь между диапазоном измерения и временем счета импульсов?
Если используется метод обратного счета, то связи никакой. Время измерения определяет относительную точность, независимо от значения измеряемой частоты. А измеряется количество импульсов заполнения N опорной частоты, которое укладывается в M целых периодов входной частоты. Частота определяется по формуле Fref * M / N.
Аватара пользователя
Ghost in shell
Держит паяльник хвостом
Сообщения: 936
Зарегистрирован: Пн июн 15, 2009 06:01:38
Откуда: USSR

Re: Теория работы частотомера

Сообщение Ghost in shell »

Если будет конкретно написано, что предполагается измерять, то уже можно что-то точно предложить..
Всем спасибо за ответы!
Имеется в виду шпиндель (к чему патрон крепится) токарного станка. Диапазон там - от 30 до 1000 оборотов в минуту. При работе, само собой, частота "плывет". На 5-10%, ИМХО.
Кот гуляет сам по себе, но вблизи холодильника.
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Теория работы частотомера

Сообщение МитяРа »

Ghost in shell писал(а):Диапазон там - от 30 до 1000 оборотов в минуту.
Значит частота от 0.5 до 17 Гц..
Можно измерять или период или длительность импульса от датчика..

А датчик оборотов какой планируешь сделать или применить ?
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
Aladdin
Друг Кота
Сообщения: 3532
Зарегистрирован: Пн янв 26, 2009 00:10:51
Откуда: Москва

Re: Теория работы частотомера

Сообщение Aladdin »

Тогда лучше не частоту измерять, а отклонение от номинала.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Теория работы частотомера

Сообщение akl »

Ничегонеработает писал(а):Если используется метод обратного счета, то связи никакой. Время измерения определяет относительную точность, независимо от значения измеряемой частоты. А измеряется количество импульсов заполнения N опорной частоты, которое укладывается в M целых периодов входной частоты. Частота определяется по формуле Fref * M / N.
Если можно, два маленьких дополнения
-абсолютная погрешность измерения этим методом рассчитывается по выражению П=Fx/(Fref*Tизмер.)
-Fref совершенно не обязательно должна быть "правильной", что делает "метод обратного счета" особенно привлекательным в любительских целях. Т.е. если кварцевый резонатор 5'007'789,012 Гц обеспечивает наибольшую стабильность параметров именно при такой частоте генерации, то ее и нужно поддерживать и, соответственно, подставлять в выражение для расчета измеряемой частоты.
Ghost in shell писал(а):Имеется в виду шпиндель (к чему патрон крепится) токарного станка. Диапазон там - от 30 до 1000 оборотов в минуту. При работе, само собой, частота "плывет". На 5-10%, ИМХО.
Для тахометров именно этот метод дает отличные результаты. Выражение для тахометра S[об/мин]=60*Fref * M /(N*K), где K-число импульсов датчика за один оборот.
Аватара пользователя
Goldsmith
Опытный кот
Сообщения: 736
Зарегистрирован: Пн янв 10, 2011 03:06:36
Откуда: Ростов-на-Дону
Контактная информация:

Re: Теория работы частотомера

Сообщение Goldsmith »

Callous писал(а):Все выше написанное применимо только к измерению постоянной частоты, если частота сигнала плавает или просто меняется, то вполне логично что чем дольше измерение тем менее точный результат. все зависит от конкретных условий.
По определению:
ЧАСТОТА колебаний - количественная характеристика периодических колебаний, равная отношению числа циклов колебаний ко времени их совершения.
(Большой энциклопедический политехнический словарь).

Дла непериодических колебаний само понятие частоты лишено физического смысла, и непонятно, что именно мы измеряем. Какую-то среднюю температуру по больнице.
Ghost in shell писал(а):Имеется в виду шпиндель (к чему патрон крепится) токарного станка. Диапазон там - от 30 до 1000 оборотов в минуту.
Я решал аналогичную задачу для своей самодельной сверлилки с ЧПУ, только там обороты шпинделя повыше - от 1.000 до 35.000 RPM. Измерял длительность оборота шпинделя, использовал для этого 16-разрядный таймер-счетчик МК AVR. Выход оптического датчика подавал на вход захвата таймера. Для тактирования таймера использовал тактовый генератор МК с переменным коэффициентом деления - выбирал его таким образом, чтобы счетчик не переполнялся, но и не опускался ниже 5.000 единиц. Для данной задачи такая точность более чем достаточна.
Любой дурак может писать код. Настоящий профессионал - это тот, кто способен постоянно создавать продукт высокого качества, укладываясь при этом в бюджет.
J. Ganssle
sezador
Открыл глаза
Сообщения: 68
Зарегистрирован: Сб июн 05, 2010 10:04:08
Контактная информация:

Re: Теория работы частотомера

Сообщение sezador »

Ghost in shell писал(а):Какая связь между диапазоном измерения и временем счета импульсов? Ясно, что чем дольше считаем импульсы, тем точнее результат. Но где оптимум?
Допустим, что и для малой, и для высокой частоты задано одно и то же время измерения. Например, одна секунда. Тогда для частот, превышающих частоту встроенного в электронно-счетный частотомер задающего кварцевого генератора, погрешность будет меньше если в течение этой самой одной секунды считать импульсы, полученные из входного сигнала. А если частота входного сигнала ниже частоты задающего генератора, то наоборот - из входной частоты формируем "окно" длительностью около одной секунды и заполняем его импульсами от встроенного задающего генератора, подсчет которых дает значение, пропорциональное периоду следования входных импульсов. Из периода вычисляем искомую частоту. Сделал как-то макет такого частотомера, так он у меня 5 Гц измерял с погрешностью в тысячные доли процента...
Инженер из СССР
Аватара пользователя
Ghost in shell
Держит паяльник хвостом
Сообщения: 936
Зарегистрирован: Пн июн 15, 2009 06:01:38
Откуда: USSR

Re: Теория работы частотомера

Сообщение Ghost in shell »

МитяРа писал(а):А датчик оборотов какой планируешь сделать или применить ?
готовый датчик от струйного принтера (сейчас их много выбрасывают, полюбили лазерники).
Еще надо определится с количеством импульсов за оборот. Предполагаю использовать TMR2 в PIC16F72, там 2 делителя и предзагрузка не сбрасывается при переполнении.
Еще бы с теминологией определится:
Ничегонеработает писал(а):
"Если используется метод обратного счета, то связи никакой. Время измерения определяет
относительную точность, независимо от значения измеряемой частоты.
А измеряется количество импульсов заполнения N опорной частоты, которое укладывается
в M целых периодов входной частоты. Частота определяется по формуле Fref * M / N."
Fref - это что? (да простится мое невежество)
Т.е. стартует счет и отсчитывается некое целое число входных импульсов М, а N - число импульсов опорной частоты, поторые прошли за тоже время, что и все М. Уффф... :o
Последний раз редактировалось Ghost in shell Пн июл 04, 2011 10:03:41, всего редактировалось 1 раз.
Кот гуляет сам по себе, но вблизи холодильника.
SmarTrunk
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Re: Теория работы частотомера

Сообщение SmarTrunk »

Fref - опорная частота
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Теория работы частотомера

Сообщение Леонид Иванович »

Ghost in shell писал(а):Т.е. стартует счет и отсчитывается некое целое число входных импульсов М, а N - число импульсов опорной частоты, поторые прошли за тоже время, что и все М. Уффф... :o
Принцип измерения частоты неоднократно обсуждался на разных форумах, поинтересуйтесь имеющимися наработками, прежде чем делать свою. Когда-то я описывал кратко принцип здесь:
http://radiokot.ru/forum/viewtopic.php?f=20&t=27831

Есть и на electronix хорошая ветка по этому поводу:
http://electronix.ru/forum/index.php?sh ... 9796&st=15

Свой частотомер я показывал тут, но более полного описания, увы, до сих пор не сделал:
http://radiokot.ru/forum/viewtopic.php?p=425206#p425206
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теория работы частотомера

Сообщение clawham »

http://radiokot.ru/forum/viewtopic.php? ... 98#p881798
vjz наработка очень точно меряет чатсоты от 0.001 герца до 20 мегагерц!(можно и выше с внешним делителем)
в меню есть задание коэффициентов на который будет умножаться частота и есть счетчик подсчета кол-ва импульсов который делится на произвольно заданный коэффициент
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Теория работы частотомера

Сообщение Леонид Иванович »

clawham писал(а):есть счетчик подсчета кол-ва импульсов который делится на произвольно заданный коэффициент
Что это значит и для чего это?
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теория работы частотомера

Сообщение clawham »

например :
1) электросчетчик выдаёт 1 герц на 3200 ватт и 1600 импульсов за 1 киловаттчас следовательно
нужно частоту умножать на 3200 и выводить на экран а подсчет киловаттчасов наоборот надо кол-во импульсов делить на 1600

2) спидометр - 6 герц = 1 км/ч следовательно герцы надо умножить на 6 чтоб показывал не попугаи а км/ч, а вот пробег - наоборот - 600 импульсов на 1 километр...чтоб показать правильный пробег нужно общее кол-во импульсов поделить на 600 и тогда получим пробег в километрах

3) Тахометр - аналогично другим примерам - один оборот двигла = 2 импульса на катушку зажигания...чтоб получить обороты в секунду надо умножить герцы на 0.5 .... если надо оборот в минуту то надо герцы умножить на 30....дальше кол-во оборотов всего надо поделить например на 6000 и получим пробег на 4-й передаче вне зависимости ездили мы год на первой-второй по городу или на трассе - удобно для наглядного расхода ресура двигателя...ибо мотору наплевать едеш ты или на холостую тарахтиш - ресурс съедается примерно одинаково....

4) есть проц арм с тучей систем тактования умножителей и т.д. ...ты вывел по таймеру каждые 1000 тактов системы меняет состояние пина - чтоб померять реальную частоту в герцах нужно умножить на 2000 или чтоб увидеть в мегагерцах - умножить на 0.002 помоему( не считал точно)

суть понятна?
а бывает надо просто знать половинную частоту (например из транса с выпрямителем в розетку - покажет же 100 герц ибо будет и положительная и отрицательная полуволны...чтоб увидеть реальную чатсоту сети - умножаем на 0.5
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Ghost in shell
Держит паяльник хвостом
Сообщения: 936
Зарегистрирован: Пн июн 15, 2009 06:01:38
Откуда: USSR

Re: Теория работы частотомера

Сообщение Ghost in shell »

набросал я эскиз кода (часть, относящаяся к измерению частоты)

Код: Выделить всё

volatile unsigned int S; 	// результат в об/мин
volatile unsigned int M; 	// измеряемая частота
volatile char N; 		// опорная частота
volatile int M; 		// результат имерения
volatile bit Z = 0; 		// 0 - разрешение измерения

void interrupt isr (void)	// обработчик прерываний
{
if (TMR2IF) // опрос флага прерывания по переполнению TMR2
// TMR2 генерит сотые доли секунды
{
N++;
TMR2IF = 0;		// сброс флага прерывания по переполнению TMR2
GIE = 1; 		// разрешены все немаскированные прерывания
}
}	// конец обработчика прерываний


void main (void)

stTMR2();	// запуск TMR2 настроен  на 100 Hz

for (;;)
{

if ((RC0 == 1) & (Z == 0))	// измеряемая величина
{
M++;
}

if (M == 5)	// считать по 5 измеряемых импульсов
{
TMR2ON = 0;	// выключить TMR2
Z = 1;		// останов счета
S = 60*100*M/N;
M = 0;
N = 0;
Z = 0;		// запуск счета
TMR2ON = 1;	// включить TMR2
}

}
Кот гуляет сам по себе, но вблизи холодильника.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»