uBlox NEO-7M: GPSDO или путь к GPSDO?

19.9.2014

Появилась веская причина поднять интересную и всегда актуальную тему — получение точного и стабильного опорного сигнала для узкополосной радиосвязи на высоких частотах. Предложенные ранее решения, например, от уважаемых G3RUH и I2PHD, были неоднократно успешно повторены и показали прекрасные результаты (точность установки частоты определялась мазером на GPS спутнике, а стабильность частоты (значение девиации Аллана) получалась 5*10E(-12) при тау = 10 сек, что соответствует 0.05 Гц на частоте несущей 10 ГГц). Однако было одно «но» — ориентация решения на использование специализированного GPS приемника Rockwell/Conexant/Navman Jupiter GPS, который уже давно снят с производства.

В августе с.г. в Yahoo конференции Softrock SDR появилась информация от Warren, 9V1TD о «Frequency agile GPS reference for less than $30». Информация была похожа на реализованную мечту многих поколений УКВистов — маленький (размером 35 х 25 мм) GPS приемник на модуле uBlox NEO-7M обеспечивал высочайшую точность и стабильность частоты выходного опорного сигнала. При этом стоимость платы составляла всего 22-26 USD на eBay. И что самое интересное — выходной опорный сигнал мог программно устанавливаться от 0.25Гц до 10 МГц (в отличие от упомянутого выше старого приемника Rockwell/Conexant/Navman Jupiter GPS, который имел выход опорного сигнала только на 10 кГц). В общем — фантастика!

Устоять было не возможно — заказ был размещен на eBay у продавца goodlucksell и получен в Москве уже через 10 дней.

NEO7_ebay

Рис.1. Комплект поставки — плата приемника с модулем NEO-7M и активная антенна

Много полезного по теме можно почерпнуть ознакомившись со страницей Alan, G4ZFQ .

Для подключения приемника использовался стандартный конвертер интерфейсов USB <-> RS232 TTL на микросхеме SiLabs CP2102, который обеспечивает сигналы RXD и TXD с уровнями 3.3 В.

В связи с тем, что прикладываемая активная GPS антенна имела короткий кабель было решено заменить ее на другую обычную активную GPS антенну со стандартным усилением 24 дБ и питанием 3.3В (питание подается по центральной жиле антенного разъема).

NEO7M_stand

Рис.2. Активная безымянная GPS антенна, плата приемника NEO-7M, конвертер USB <-> RS232 TTL

Для конфигурации приемника используется ПО uBlox  u-Center V8.11.

Устанавливаем драйвер конвертера USB<->RS232 TTL, определяем виртуальный COM порт для конвертера.

Запускаем программу u-center и конфигурируем GPS приемник:

  • Receiver -> Port -> выбираем виртульный COM порт конвертера USB <-> RS232
  • Receiver -> Baudrate -> 9600
  • Receiver -> Generation -> u-blox 7
  • Receiver -> Action -> Save config

Питание GPS приемника +5В также поступает от платы конвертера USB <-> RS232 и подается на встроенный LDO стабилизатор +3.3В.

Для получения выходного опорного сигнала следует подпаяться к контакту 3 — сигнал «Timepulse» модуля NEO-7M (см. схему ниже — TNX K9IVB).

NEO-7M_K9IVB withUART_USB

Рис.3. Принципиальная схема GPS приемника на основе модуля NEO-7M

Теперь следует сконфигурировать частоту опорного сигнала в ПО u-Center:
View -> Configuration view -> TP5

NEO7_config_ubloxcentre_

 Рис.4. Окно конфигурации выходного опорного сигнала

Устанавливаем требуемую частоту, скважность в режиме захвата/сопровождения. Шаг перестройки частоты может быть 1 Гц, скважность желательно устанавливать 50% для минимизации уровня гармоник.

Итак, все готово для проведения испытаний. К выходу опорного сигнала подключаем анализатор спектра и осциллограф. И вот с этого момента радостная мысль о реализованной мечте многих поколений УКВистов постепенно начинает пригасать…

А дело в том, что на анализаторе спектра мы видим совершенно разные картины спектра выходного сигнала в зависимости от установленной частоты. В результате некоторого анализа мы мысленно делим выходные частоты опорного сигнала на два типа — «хорошие» и «плохие» частоты. При этом «плохих» частот существенно больше… Дальнейший анализ показывает, что к «хорошим» частотам относятся частоты, которые образуются от целочисленного деления частоты внутреннего тактового генератора частотой 48 МГц.

Итак, «хорошие» выходные частоты опорного генератора:

  • 24.000 МГц
  • 16.000 МГц
  • 12.000 МГц
  • 8.000 МГц
  • 6.000 МГц
  • 4.000 МГц
  • 3.000 МГц
  • 2.000 МГц

«Плохие» частоты — почти все остальные…  🙁

Проиллюстрируем это результатами измерений спектра выходного опорного сигнала.

Spectr_24000

Рис.5. Спектр выходного опорного сигнала 24.000 МГц

Spectr_18000

Рис.6. Спектр выходного опорного сигнала 18.000 МГц

Spectr_16000

Рис.7. Спектр выходного опорного сигнала 16.000 МГц

Spectr_12000

Рис.8. Спектр выходного опорного сигнала 12.000 МГц

 Spectr_8000

Рис.9. Спектр выходного опорного сигнала 8.000 МГц

Spectr_6000

Рис.10. Спектр выходного опорного сигнала 6.000 МГц

Spectr_4000

Рис.11. Спектр выходного опорного сигнала 4.000 МГц

Измеряем фазовый шум с расстройкой 10 кГц от несущей для «хороших» опорных частот

PN_24000

Рис. 12. Фазовый шум на «хорошей» частоте 24.000 МГц = -95 дБн/Гц @ 10 кГц

PN_16000

Рис. 13. Фазовый шум на «хорошей» частоте 16.000 МГц = -98 дБн/Гц @ 10 кГц

PN_12000

Рис. 14. Фазовый шум на «хорошей» частоте 12.000 МГц = -100 дБн/Гц @ 10 кГц

PN_8000

Рис. 15. Фазовый шум на «хорошей» частоте 8.000 МГц = -105 дБн/Гц @ 10 кГц

PN_6000

Рис. 16. Фазовый шум на «хорошей» частоте 6.000 МГц = -107дБн/Гц @ 10 кГц

PN_4000

Рис. 17. Фазовый шум на «хорошей» частоте 4.000 МГц = -109 дБн/Гц @ 10 кГц

PN_2000

Рис. 18. Фазовый шум на «хорошей» частоте 2.000 МГц = -116 дБн/Гц @ 10 кГц

 А теперь смотрим спектр выходного опорного сигнала для «плохих» частот

Spectr_10000

 Рис.19. Спектр выходного опорного сигнала на «плохую» частоту 10.000 МГц в полосе обзора 10 МГц

Spectr_10000_50

 Рис.20. Спектр выходного опорного сигнала на «плохую» частоту 10.000 МГц в полосе обзора 50 МГц

Spectr_5000

 Рис.21. Спектр выходного опорного сигнала на «плохую» частоту 5.000 МГц

Spectr_6550

Рис.22. Спектр выходного опорного сигнала на «плохую» частоту 6.550 МГц

Spectr_6570

Рис.23. Спектр выходного опорного сигнала на «плохую» частоту 6.570 МГц

Проверяем выходной опорный сигнал осциллографом

NEO7M_6000kHz_nojitter_Рис. 24. Выходной опорный сигнал для «хорошей» частоты 6.000 МГц — обратите внимание на малый джиттер (указанный красными стрелками)

 NEO7M_6570kHz_jitter_Рис. 25. Выходной опорный сигнал для «плохой» частоты 6.570 МГц — обратите внимание на очень большой джиттер (указанный красными стрелками)

Для определения стабильности частоты измеряем девиацию Аллана

NEO-7M 6MHz out ADEV

Рис.26. Девиация Аллана для «хорошей» частоты 6.000 МГц — здесь вполне хорошие результаты

В результате проведенных измерений и информации, полученной из документации и конференций, наиболее вероятно, что решение получения опорного сигнала в модуле NEO-7M не является решением GPSDO (GPS Disciplined Oscillator), а представляет собой NCO (Numerically Controlled Oscillator), где вставка или удаление импульсов в фиксированный период времени в опорном сигнале происходит не петлей регулирования, а в результате расчета процессора. В результате этого в спектре выходного сигнала появляется высокий фазовый шум и нежелательные продукты преобразования.

Что понравилось:

  • доступность решения — в настоящее время существует несколько типов GPS приемников, имеющих частотный выход опорного сигнала
  • не высокая цена
  • высокая стабильность опорного сигнала
  • возможность использования устройства как частотного калибратора

Что не понравилось:

  • высокий (для опорного генератора) уровень фазовых шумов. Даже для «чистой» частоты 4 МГц уровень ФШ составляет только -109 дБн/Гц @ 10 кГц. При этом хорошие опорные генераторы на эти частоты обеспечивают  уровень ФШ лучше -140 дБн/Гц. Принимая во внимание, что при умножении опорной частоты в 10 раз  фазовый шум увеличивается на 20 дБ, то сложно сказать для каких ответственных применений может использоваться напрямую такое решение.
  • «грязный» спектр выходного сигнала для «плохих» частот
  • невозможность одновременной поддержки GPS и ГЛОНАСС в NEO-7M в данной версии ПО модуля

И, наконец, традиционный вопрос — что делать

На мой взгляд не все так плохо и можно попытаться получить хороший результат вернувшись к классической схеме GPSDO. Для этого следует добавить внешний OCXO, делитель частоты OCXO, внешний фазовый детектор и пропорционально-интегрирующий фильтр с большой постоянной времени. То есть фактически вернуться опять к решениям,  предложенным G3RUH и I2PHD и упомянутых в начале. Однако в нашем случае мы сможем использовать доступный GPS приемник и существенно более высокочастотный опорный сигнал, что крайне важно для получения низких фазовых шумов.

Ссылки: