Да, я не ошибся в заголовке. В том виде, в котором этот недостойный представитель семейства измерительных приборов был мной приобретен, он не заслуживал звания частотомера. В данной статье я описываю его доработку, в результате чего его точность и стабильность будет превосходить и более дорогие приборы, а также способ калибровки, доступный любому радиолюбителю, не имеющему доступа к рубидиевым стандартам и прочим благам цивилизации. В принципе, предлагаемая доработка годится практически для любого дешевого частотомера -- проблемы с точностью и стабильностью задающего генератора характерны для них для всех.
Немного теории
Простейший тип цифрового частотомера основан на том принципе, что в течение заданного фиксированного интервала времени подсчитываются импульсы входного напряжения. Если интервал времени выбрать равным одной секунде, результат подсчета окажется равным частоте в герцах. При этом интервал измерения формируется с помощью второго счетчика, который подсчитывает импульсы опорного генератора и выдает сигнал в момент достижения им определенного значения. Подобную схему можно сравнительно просто реализовать на жесткой логике, но в настоящее время ее чаще собирают на каком-нибудь микроконтроллере, используя для счета импульсов и отсчета интервалов времени встроенные в МК счетчики-таймеры. Практически единственным источником погрешности в ней (не считая ограниченной разрядности результата измерения) является неопределенность частоты опорного генератора.
Кварцевая стабилизация позволяет достичь высокой стабильности частоты, но если мы хотим поддерживать частоту с долговременной стабильностью 1·10-6 и выше, мы столкнемся с рядом трудностей. Окажется, что кварц не так стабилен, как казалось: его резонансная частота заметно зависит от температуры и постепенно смещается просто от времени (это явление называется старением), кроме того, в большинстве кварцевых генераторов генерация происходит не на самой резонансной частоте последовательного или параллельного резонанса, а несколько в стороне от нее, и этот сдвиг зависит от емкостей и индуктивностей в цепи кварца, включая паразитные и емкости переходов транзистора. Зависимость этих реактивностей от температуры и режимов транзистора генератора вносит свой существенный вклад в нестабильность частоты. В итоге, если не принимать специальных мер, частота, вырабатываемая кварцевым генератором, может произвольно дрейфовать в пределах до 20 ppm и больше (здесь и далее я буду использовать сокращение ppm, означающее 1 часть на миллион или 1·10-6), в особенности если использовать кварц низкого качества, предназначенный для тактовых генераторов, к стабильности частоты которых не предъявляется особых требований.
Дрейф, связанный со старением кварца, сводят к минимуму за счет изготовления самого резонатора наилучшим образом. Поверхность кварцевой пластины травят, растворяя нарушенный слой, электроды напыляют из золота, исключая их окисление и изменение массы, помещают пластину в вакуумированный баллон, в котором она подвешена таким образом, чтобы минимизировать присоединенную массу подвесной системы, а готовый резонатор подвергают длительной электротермотренировке -- искусственному старению. Для сокращения влияния температуры выбирают особый термостабильный срез, определенным образом ориентированный относительно кристаллографических осей, а кварц или весь кварцевый генератор помещают в термостат, в котором поддерживается постоянная температура. Такие генераторы носят название OCXO. Они дороги, громоздки, потребляют довольно много энергии, требуют значительного времени для выхода на режим, зато дрейф их частоты может быть доведен до 0,01 ppm в год при практически полном отсутствии влияния на частоту внешней температуры.
В другом варианте, более простом -- используют кварцевый резонатор уже не столь высококачественный и дорогой, как в OCXO, но с определенной -- хорошо известной и повторяемой от экземпляра к экземпляру -- зависимостью резонансной частоты от температуры (это достигается высокой точностью ориентирования пластины относительно кристаллографических осей) и искусственно состаренный, а в схему автогенератора вводят варикап, позволяющий в некоторых пределах регулировать частоту. Подаваемое на этот варикап от специальной схемы напряжение зависит от температуры таким образом, чтобы изменение частоты, им вызванное, компенсировало ее отклонения, вызванные действием температуры. Такие генераторы называются TCXO -- по стабильности частоты они примерно на порядок или два хуже, чем OCXO (дрейф 0,1-2 ppm/год, температурная зависимость 0,5-2 ppm в рабочем диапазоне температур). Но при этом весь генератор может быть весьма миниатюрным, потребляет не более нескольких миллиампер, не требует времени на разогрев и стоит, конечно, дороже простого нестабилизированного кварцевого генератора, но значительно дешевле, чем термостатированный "Гиацинт".
Каковы же требования к точности и стабильности частоты опорного генератора для простого радиолюбителя, к примеру, конструирующего или ремонтирующего аппаратуру для любительской радиосвязи? К примеру, при работе в эфире в однополосной модуляции разница между частотами передатчика и приемника не должна превышать 50 Гц, иначе голос будет звучать неестественно. На частотах самого высокочастотного радиолюбительского КВ диапазона - 28 МГц это соответствует 1,75 ppm, а на 144 МГц - 0,35 ppm. Расстройка в 1 кГц (максимально допустимая для узкополосной ЧМ) на диапазоне 430 МГц - около 2,5 ppm. Таким образом, необходимая точность уж точно не хуже 1 ppm, а в некоторых случаях желательно иметь и более высокую.
Внутренности прибора
Открутим винты и заглянем под крышку. Прибор выполнен на восьмиразрядном микроконтроллере HT48C30-1 фирмы Holtek в 28-ногом корпусе. Где-то треть его печатной платы занимают цепи подготовки сигнала -- компараторы, отключаемые аттенюатор и фильтр низких частот, делитель частоты на 10 и тому подобное. Эта часть скрыта под металлическим экраном, крепящимся к плате тремя маленькими винтиками. Ее мы трогать не будем (но экран придется снять, чтобы вынуть плату из корпуса -- один из крепежных саморезов расположен под ним). Остальную плату занимает простейший блок питания на 5 В на интегральном стабилизаторе 7805, собственно микроконтроллер с обвязкой, кварцевый генератор на 8 МГц, от которого тактируется МК, и "эталонный" генератор на 10 МГц под запаянным экраном, который никак не связан с остальной частью частотомера и не принимает никакого участия в его работе, а его выходной сигнал просто выведен на разъем на задней стенке. Слово "эталонный" я взял в кавычки по той причине, что он не отличается какой-то точностью и стабильностью и с прогревом уползает по частоте почти на 100 Гц, а частота его отличалась от номинала более чем на 300 Гц. Мы его трогать не будем, смысла в этом никакого. А интересует нас генератор на 8 МГц, распаянный прямо на плате рядом с микроконтроллером. Именно он здесь определяет точность и стабильность измерений частотомера. Несмотря на это, мы здесь видим обычный кварцевый генератор на одном транзисторе с коррекцией частоты в небольших пределах с помощью подстроечного конденсатора и обычном ширпотребном кварце в корпусе HC49. Никаких попыток термокомпенсации или термостабилизации здесь не было предпринято, что и привело к удручающе низкой стабильности: выбег частоты генератора от момента включения до условной стабилизации (на которую потребовались несколько часов) превышал 200 Гц, что соответствует нестабильности частоты 25 ppm и, в общем, типично для такого нестабилизированного кварцевого генератора. При этом абсолютная ошибка измерения после прогрева составила на частоте 8 МГц 170 Гц или 21 ppm. Таким образом, частотомер этот оказался не более точным, чем отображение частоты в осциллографе или соответствующая функция мультиметра, и его параметры никак не укладывались в заявленные в инструкции 10 ppm погрешности (тут хотелось бы заметить, что точность 20 ppm не стесняются указывать в характеристиках производители десятикратно более дорогих приборов, но они эти 20 ppm хотя бы гарантируют).
Что делать?
Простейшим вариантом исправления является установка на место штатного кварцевого генератора TCXO -- термокомпенсированного кварцевого генератора, или OCXO -- термостатированного кварцевого генератора. Анализ рынка показал, что на 8 МГц или кратные частоты последних не делают (стандартные частоты для OCXO -- это 5 и 10 МГц). К тому же стоят они дорого, требуют достаточно мощного источника питания для нагревателя термостата, так что установка такого генератора, как минимум, обойдется в сумму, равную стоимости частотомера. Генератор же типа TCXO удалось найти в ближайшем радиомагазине за 1000 рублей (сейчас цена поднялась до 1500 руб.), правда, на 16 МГц, зато с заявленной в datasheet'е начальной точностью частоты 0,2ppm, то есть практически раз в сто лучше "родного". Его и будем "имплантировать" в схему прибора.
Тут сразу следует отметить: TCXO с выходом, рассчитанным на стандартные логические уровни (ТТЛ или HCMOS) встречаются довольно редко. В основном на выходе большинства таких генераторов -- синусоида или трапеция с амплитудой в несколько сотен милливольт и очень низкой нагрузочной способностью.
Опорный генератор
Приобретенный TCXO выполнен в довольно стандартном для подобных изделий прямоугольном четвероногом корпусе размерами 18х12 мм с маркировкой "TCXO230 16.000" и отверстием для подстройки частоты в небольших пределах. Полное его наименование TCXO14-16.000M-1.5-5V-S-P-E. В прилагаемом даташите было указано, что напряжение питания 5 В, а выходное напряжение 1 В от пика до пика на нагрузке не менее 10 кОм. Осциллограф показал, что напряжение даже чуть больше, но любая попытка это напряжение "разогнать" до логических уровней простым способом на одном-двух транзисторах спотыкалась о крайне низкую нагрузочную способность выхода. Поэтому для формирования меандра с логическими уровнями я воспользовался компаратором MAX999. Опорный уровень компаратора, подаваемый на его инвертирующий вход, задается обычным делителем напряжения на 10 с конденсатором в нижнем плече, а входной сигнал подается на неинвертирующий вход. А дальше все просто -- этот меандр подается на делитель частоты на 2 на триггере микросхемы 74HC74, на его выходе получается меандр с частотой 8 МГц. Второй триггер я, чтобы не оставлять неподключенным, также задействововал, так что у меня есть и выход 4 МГц, который я вывел на заднюю панель взамен тех самых "эталонных" 10 МГц (на схеме не рисовал, все аналогично первому триггеру). Вся схема собрана на небольшой печатной плате размерами 45х35 мм. Потребляемый ток всей платы -- 17 мА. Плату рекомендуется поместить в экран, чтобы частотомер не был источником радиопомех.
Крайне желательно перед дальнейшими действиями, собрав плату, запаяв в нее TCXO, припаяв к плате провода питания и кабель для выходного сигнала и отмыв флюс -- подать на нее питание и погонять несколько дней (а лучше пару недель) в климатической камере для стабилизации параметров.
Подключение к частотомеру
Для подключения опорного генератора к частотомеру достаточно с помощью отрезка любого коаксиального кабеля или экранированного провода подать меандр с его выхода на вывод 21 микроконтроллера, соединенный на плате с одним из выводов кварца, который нужно выпаять. При этом не обязательно выпаивать из платы другие компоненты кварцевого генератора, как рекомендует Денис Дубов (R3XCR) -- автор статьи, не требуется и "хотя бы немного приводить к синусу" этот сигнал. Питание платы подключите в любом удобном месте, где есть пять вольт. Перед включением убедитесь в правильном подключении питания. Если вы все сделали правильно, частотомер заработает сразу после включения, в противном случае он просто не проявит признаков жизни, так как тактирования микроконтроллера не будет.
Калибровка
Автор вышеупомянутой статьи для калибровки просто взял рубидиевый стандарт частоты. Как я завидую тем людям, которые могут просто взять с полки рубидиевый стандарт! У большинства радиолюбителей такой возможности нет, а те, у кого он есть, не будут, наверное, покупать частотомер ценой 5000 рублей. А что есть у радиолюбителей, причем у всех? Это сигналы вещательных радиостанций на коротких волнах. Крупные, принадлежащие государствам или вещательным корпорациям, радиостанции стран "первого мира" практически всегда имеют весьма стабильные частоты, отклонения которых от номинала не превышают долей герца.
Но на вход частотомера не подашь сигнал вещательной радиостанции. Поэтому нам понадобится связной радиоприемник с хорошим синтезатором частоты. Я пользовался приемником "Малахит" первой версии (китайским), и с тем же успехом повторил операцию с помощью трансивера Icom IC-718. Приемник или трансивер перед работой надо хорошо прогреть и затем убедиться, что частота настройки его достаточно стабильна и не уходит более чем на 1 Гц за несколько минут. Также нужно хорошо прогреть сам частотомер, дав ему непрерывно поработать пару суток.
Подключив временно к выходу опорного генератора кусочек провода, настройте приемник на 7999,000 кГц. в режиме верхней боковой полосы. Вы услышите тон биений, и при точной настройке опорного генератора и калибровке синтезатора частоты приемника частота этих биений будет ровно 1 кГц. В реальности так, конечно же, не будет. И теперь надо узнать, насколько ошибается шкала приемника, а насколько -- опорный генератор. Для этого перестройтесь на вторую гармонику генератора -- 15999,000 кГц, а затем найдите ближайшую вещательную станцию на диапазоне 19 метров немного ниже по частоте (например, 15245 кГц -- BBC, или 14996 кГц -- стандарт времени и частоты), и настройтесь на килогерц ниже. Вы также услышите биения. Измерьте частоту этих биений с точностью до 1 Гц. Проще всего сделать это с помощью Android-приложения Spectroid, установив в его настройках максимальные значения FFT Size и Decimations во вкладке Audio и растянув на экране область частот 950-1050 Гц -- программа сама найдет пик на спектре и подпишет его частоту. Запишите эту частоту. А затем, перестроившись обратно на частоту второй гармоники опорного генератора минус килогерц, вращением подстроечного резистора в TCXO добейтесь той же самой частоты биений, если она отличается больше чем на 3 Гц (0,2 ppm). Если же погрешность меньше -- крутить подстроечник, добиваясь лучшего, не стоит. У меня именно так и вышло -- ничего не пришлось подстраивать.
Более корректно было бы замерить частоту биений на хотя бы трех-четырех отстоящих друг от друга по частоте станциях, построить прямую линию методом наименьших квадратов, вычислить частоту в нужной нам точке... Но напомню: приемник не идеален. Частота его опоры плавает, и чем дольше мы будем упражняться, тем сильнее этот уход частоты скажется, и тем хуже будет точность.
В итоге погрешность показаний свежеоткалиброванного частотомера окажется в пределах 0,2..0,3 ppm -- то есть практически на два порядка лучше, чем в оригинальной конструкции.
При наличии хорошего эталона частоты предпочтительно воспользоваться, конечно же, им. В качестве такого эталона можно использовать GPS приемник с выходом 10 МГц. Я такой возможностью воспользовался, и через месяц после доработки увидел удивительную картину (на КДПВ): частотомер показывал ровно 10 000 000 Гц! После прогрева в последнем разряде ноль сменился на единицу, которая иногда перескакивала на двойку. Ну что ж, прекрасно! Если честно, я ожидал худших результатов, особенно по прошествии времени.
Что еще доработать
Увы, непригодный опорный генератор -- не единственный недостаток этого частотомера. В его корпусе при работе получается довольно жарко из-за сильного нагрева чересчур миниатюрного силового трансформатора, при полном отсутствии в корпусе вентиляционных отверстий. Трансформатор подогревает и опорный генератор, что отрицательно сказывается на стабильности частоты. Да и для надежности такая "печка" не очень. Поэтому трансформатор стоит заменить - в корпус вполне помещается тороид из серии ТТП-15, который при длительной работе остается едва теплым. Неплохим вариантом будет также вынести блок питания наружу.
Входные цепи частотомера не отличаются высокой чувствительностью. Минимальное входное напряжение, при котором он устойчиво работает, у моего экземпляра -- 0,1 В амплитуды. Другие владельцы сообщают о еще более низкой чувствительности.Кстати, и здесь руководство по эксплуатации врет: заявленная чувствительность -- 25 мВ при частоте ниже 8 МГц и 50 на более высоких частотах. К сожалению, исправить этот недостаток без значительных переделок схемы (той самой трети печатной платы под съемным экраном) невозможно. Регулировкой подстроечного резистора на плате частотомера можно несколько повысить чувствительность, но довести ее до заявленной не удается. Я решил эту проблему использованием выносного щупа-компаратора по схеме И.Нечаева (И.Нечаев. Щуп-компаратор для частотомера // Радио. 2014. №7. С. 20), который работает до 100 МГц при напряжении на входе начиная с 25-30 мВ.
Заключение
Конечно, ожидать каких-либо вменяемых метрологических характеристик от простейших частотомеров ценой 5-10 тысяч рублей трудно. Доработка подобного прибора путем замены опорного генератора на термокомпенсированный превращает такой прибор, по сути игрушку - в достаточно точный частотомер.
qbertych
Спасибо, простое и изящное решение.
Иногда TCXO еще привязывают к GPS-приемнику для большей стабильности. Вот, например, здесь хватило модуля за 30 евро. Может сейчас есть что-то еще дешевле?
jar_ohty Автор
Это называется GNSS-disciplined oscillator, и это то, что я использовал для контроля калибровки -- именно с него я получил ту самую красивую цифру на КДПВ. Но в качестве опорника для частотомера такой генератор неудобен прежде всего тем, что спутники могут в глубине помещения просто не ловиться. Придется подключать наружную антенну, и если кабель до нее длиннее, чем 2-3 метра, он должен быть не RG-58, а потолще, иначе на полутора гигагерцах потери будут слишком велики.
jar_ohty Автор
Что же касается модуля за 30 евро (на самом деле, такой модуль можно купить на озоне за 700 рублей, а на алиэкспрессе и того дешевле), то ничего хорошего с него не получается. Дело в том, что GPS синхронизирует часы в приемнике с хорошей точностью. Это мягко говоря - отклонение секундного импульса от "истинной" секунды с часов спутника лежит в пределах 50 нс. Но если мы попробуем генерировать в приемнике 10 МГц "в лоб", мы получим фазовый шум в те же самые 50 нс уже при длительности периода в 100 нс. Что и видно в видео. Чтобы это работало хорошо, нужно, чтобы TCXO с подстраиваемой напряжением частотой и малым фазовым шумом медленно подстраивался таким образом, чтобы в каждом генерируемом приемником интервале в среднем было нужное количество периодов и фаза его сигнала совпадала со средним началом секунды. Не очень простая задача реализовать такое на коленке. Я брал напрокат у океанологов готовый прибор)
qbertych
Ясно, спасибо.