Теория
Математика описана много где, мне понравилось тут http://www.dsplib.ru/content/gmsk/gmsk.html, написано для GMSK, но многое верно и для GFSK.
Суть такова, что при пропускании исходной последовательности нулей и единиц через фильтр Гауса из нее отфильтровывается высокочастотная составляющая и резкие фронты сглаживаются. Получившийся после этого сигнал частотно модулируют, как было описано для FSK, и получают GFSK.
Это позволяет уменьшить ширину спектра входного сигнала (те сиськи из статьи про FSK) и использовать индекс модуляции меньше 2-х.
Практика
Для получения GFSK в GnuRadio я использую вот такой flowgraf:
Рис.1. Flowgraf для получения GFSK
В остальном все также, в качестве источника используется либо генератор случайных байт, либо фиксированный вектор. Throttle блок обеспечивает привязку графа к реальному времени. Модулятор модулирует, FFT - показывает спектр получившегося сигнала, Quadrature Demod показывает на осциллографе мгновенную частоту сигнала.
На выходной сигнал влияют три параметра.
- Параметр BT фильтра Гауса, определяющий, так сказать, силу сглаживания. По умолчанию BT=0.35.
- Количество отсчетов на один бит или Sample_per_symbol или
- Чувствительность или Sensitivity, задающая максимальную частоту девиации.
Давайте разберемся, как выглядит влияние этих параметров на выходной GFSK сигнал.
Частотная манипуляция
Если подать GFSK сигнал на вход блока Quadrature_demod, то на выходе получится примерно вот такая картина.
Рис.2. Изменение мгновенной частоты в зависимости от передаваемых данных.
Напомню, что Quadrature_demod выдает на осциллограф мгновенную частоту квадратурного сигнала, вычисляя разницу аргументов комплексных чисел, подаваемых на вход.Как можно видеть, при GFSK модуляции, как и при FSK, передаваемые 0 и 1 кодируются изменением частоты, однако, в отличии от FSK, прямоугольные фронты сглажены и частота плавно меняется от до .
Параметр BT
Сглаживание фронтов зависит от параметра BT.
Рис.3. Изменение частоты GFSK сигнала в зависимости от параметра BT
Еще раз приведу ссылку на статью с толковым описанием функции фильтра Гауса http://www.dsplib.ru/content/gmsk/gmsk.html.Чем больше BT, тем меньше сглаживание. При BT=1 сглаживание отсутствует и GFSK превращается в FSK. При BT<0.3 становится сложно различать 0 и 1. На практике, как правило, используют BT=0.35.
В частотной области, увеличение или уменьшение BT выглядит как расширение или сужение спектра сигнала вне основной полосы .
Рис.4. Спектр GFSK сигнала при различных значениях параметра BT
Чувствительность Sensitivity
Этот параметр задает частоту девиации. При этом следует помнить, что речь идет о нормированной частоте, поэтому задается она в радианах. Вот график мгновенной частоты, там хорошо это видно:
Рис.5. Частота девиации определяется параметром Sensitivity
В частотной области частота девиации определяет ширину основной полосы GFSK сигнала.
Рис.6. Спектр GFSK сигнала при различных значениях Sensitivity
Кстати, небольшой лайфхак. Блок FFT_sink при градуировки оси частот опирается на параметр Sample_Rate. Если указать его не 8 МГц, а 6.28 МГц, то координатная сетка по частотам в МГц (Frequency) будет соответствовать нормированным частотам в радианах.
Количество отсчетов на один бит "Samples per Symbol"
Рис.7. Каждый бит кодируется 8-ю отсчетами.
Рис.8. Samples_per_symbol=4. Переходы от одной частоты к другой уже не такие плавные.
Рис.9. Переход от передачи 1 к передачи 0 происходит за 16 шагов.
В частотной области изменение Samples_per_symbol влияет на GFSK сигнал также, как и на CPFSK
Рис.10. Спектр GFSK сигнала при различной скорости передачи.
При уменьшении ширина основных лепестков на частотах иувеличивается. При этом увеличиваются и боковые лепестки за пределами основной полосы сигнала, что расширяет спектр при неизменном параметре BT.
Спвсибо!!!
ОтветитьУдалитьОгромное спасибо!!!!
Поиск в интернете по
'gfsk как это работает'
'Что такое gfsk'
'Gfsk примеры расчётов' ничего путного не дало.
А вам спасибо!!! Вы всё объяснили т разжевали. С картинками:)
Чтоб спасибо тебе сказать, аж аккаунт хухла завёл!:)
Betting on 1xbet korean is a hassle to solve - Legalbet.co.kr
ОтветитьУдалитьThere is no way to find all the 카지노사이트 information on 메리트카지노 1xbet korean. Betting on 1xbet korean is a hassle 1xbet korean to solve, but you are already there.