Работаем с сигналами. Часть 4-я.

PSK или фазовая манипуляция, в отличии от FSK или MFSK абсолютно лишена "человечности", если в последних, что-то журчит и переливается и так или иначе на слух музыкально(до определенных скоростей) и достаточно понятно по определению, то PSK и ее производные такие как QAM, этого лишены напрочь. Не лишне будет напомнить, что до определенного момента существовало мнение, что фазовая манипуляция(говорим о цифре) вообще не пригодна для устойчивой и надежной связи, со временем правда выяснили, что это большое заблуждение. Действительно есть определенные проблемы, мы их рассмотрим, эти проблемы осложняют анализ реальных сигналов иногда вынуждая делать ошибочные выводы.

Фазовую манипуляцию принято визуализировать на фазовой плоскости, где в случае соблюдения ряда условий, отображается так называемое фазовое созвездие, какие это условия? Это точное соответствие несущей и тактовой частот, и порядка самой манипуляции. Практически все фазовые вьюверы обеспечивают возможность выставить любую частоту несущей, тактовой и выбрать порядок. Давайте на этом немного заостримся, что бы выставить нужные частоты их нужно знать, если их не знать или они не известны, то толк от возможности их выставить просто нулевой, что это значит? Это значит, что если софт имеет распрекрасный фазовый фьювер, но не имеет инструмента для определения точного значения несущей, тактовой и порядка, это дуриловка самая настоящая, тонкие намеки на то, что все это можно подобрать(ужас то какой) в серьез рассматривать нельзя, почему? Да, хотя бы по этому, это один и тот же сигнал:



Те кто плотно занимается анализом, прекрасно в курсе подобных вещей, те кто об этом не осведомлен, с энтузиазмом и надеждой пускаются в увлекательную игру "сотвори созвездие какое тебе нравится" честно пытаясь подобрать частоты несущей, тактовой и порядок. ;) Может быть все таки это свойство конкретного фазовового вьювера, результат его не правильной работы? Увы, любой нормальный вьювер должен себя так вести, к примеру Code-300, при всем при том, что работу его вьювера назвать нормальной трудно vthreadforum=8topic=18904page=0#msg101219 В Code-300 фазовый вьювер ну скажем так, помягче, плохонький, в отличии от вьювера SkySweeper'a который просто ужасен, фактически это бестолковые игрушки которые позволяют в лучшем случае увидеть то, что и так известно, все это не к тому, что в SV+ входит крутой вьювер(хотя если честно я старался), а к тому, что вьювер без инструментов вещь не сильно-то и нужная если не сказать бесполезная.

Если с тактовой частотой мы разобрались в предыдущих разделах, то с определением порядка PSK и точного значения несущей начнем разбираться прямо сейчас, c практически идеальных сигналов. Возьмем к примеру этот же. После загрузки его в SV+ и, напоминаю, обязательной проверке на пригодность, от того, что сигнал заявлен как образец вовсе не следует, что он именно таким и является, измеряем тактовую, c точностью до герца. Уже это не трудно и известно как. Зачем такая точность? Затем, что если мерить ее по обычному спектру, то получая значение к примеру 1208 Гц или что-то около того, 90% решают, что тактовая 1200 Гц, и оказываются абсолютно не правыми, нужно мерить, а не угадывать, анализ, как уже говорилось, это не подгонка результата под свои догадки, а вывод по конкретным и ясным цифрам и значениям. Измерили, получили 1199.69 Гц, до герца это будет 1200, это тактовая. Несущая определяется автоматически вместе с порядком PSK, для чего используется модуль возведения сигнала в степень. Выделив спектр сигнала маркерами частоты вызываем модуль возведения в степень, примерно так:



Верх формы этого модуля рассматривать не будем, там ничего нового, в низу, после стандартной "лупы" и индикатора процесса, окно, где указана средняя частота(предполагаемая несущая, очень грубая оценка) которая вычисляется при вызове модуля по маркерам частоты которыми выделяли сигнал на первом шаге, рис. 1. Значение в этом окне можно и нужно будет менять, с помощью кнопок. Кнопка xn, запускает процесс пересчета, то есть обновляет окно, в любой момент когда это потребуется. Следующее окно с цифрой, это степень в которую возводится сигнал, цифру можно менять. Control - включает, с перерисовкой, маркер нуля рис. 4, маркер нужно будет совмещать как можно точнее с несущей путем изменения значений тактовой частоты. S(t)=S(t)' - предыскажения вносимые в сигнал для тяжелых случаев, когда несущую определить проблема, на самом деле с появлением амплитудно-фазового корректора необходимость в этой функции отпала, так как реально помогает в очень ограниченных случаях, осталось от старых версий, архаизм короче, практически ей не пользуюсь уже. Разберемся по картинке, что тут происходило. На первом шаге, выделили маркерами частоты сигнал по спектру и вызвали модуль возведения сигнала в степень. Шаг 2 заменили порядок степени на четвертый и пересчитали, кнопка xn. После персчета, шаг 3, ясно обнаруживаются несущая и боковые(спектральные линии), включаем маркер нуля для точного установления значения несущей, чекбокс Control рис 4. Играясь(прибавляя, отнимая и перерисовывая кнопкой xn) значением частоты несущей совмещаем маркер нуля и несущую шаг 5, считываем значение несущей, 1588 герц. Порядок PSK равен степени, при возведениии в которую появились спектральные линии, подчеркиваю появились, потому что если возведете в восьмую, линии так же будут, то есть момент появления линий важен, а не наличия в принципе, на хороших сигналах и в щестнадцатой степени линии будут, зашумленные но явные. Все у нас готово для осознанного вызова фазового вьювера, разницу почувствуйте, мы будем не просто тыкать в кнопки ожидая чуда, а внесем совершенно конкретные значения, и если что-то пойдет не так, как ожидается, будет повод подумать, а не просто чего-то там перебирать. :)

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



Рассмотрим то, что под областью отображения спектра высокого разрешения, цифра 1 окно где рисуется созвездие, вертикальный слайдер - регулировка размера изображения(АРУ, как это принято в других вьюверах не используется, возможно потом введу), CarrierTone - сюда руками вписывается измеренное значение частоты несущей, число целое, по умолчанию при вызове модуля там среднее между маркерамами частоты, как видите дробное, отображается дробное, заносится руками только целое. SpeedModulation - то же самое, заносится руками точная реальная(измеренная) частота манипуляции, число целое, отображается дробное при работе.
n-PSK - порядок PSK полученный по измерениям, выбирается из списка, изменить можно в любой момент.
SyncTakt - включает/выключает синхронизацию по тактовой частоте.
NonStop - запускает процесс в кольцо, то есть по достижении конца файла, все начинается сначала и так пока электричество не кончится.
use RRC filter - используется RRC фильтр с альфой = значению возле слайдера, сладер меняет это значение, пока нас это не очень волнует.
PLL slow - увеличивает постоянную времени ФАПЧ по несущей, для QAM модуляции, рассмотрим это позже.
Summary - при выключенной тактовой синхронизации на некоторых сигналах позволяет увидеть сами переходы, сомнительной необходимости вещь, но осталась от прежних версий.
Life - включает динамическое обновление созвездия, нужно довольно часто, иногда не нужно.
WriteIQ - запись в файл квадратурных каналов, оставим на время боюсь это нужно единицам. Слайдеры сверху в низ, Delay - реальная задержка скорости отрисовки, работает только при включенном Life.
Time of life - фиктивное время динамического обновления, работает только при включенном Life, чем меньше значение тем быстрее обновление, но тем меньше точек на плоскости в текущий момент времени.
Contrast- регулировка яркости точек, аккуратней - ярче, не значит лучше.
Go! - когда активна, запускает фазовый вьювер.
Clear - обнуляет окно вывода.
Break - останавливает процесс, начать можно только с начала, то есть это не стоп/старт, а полное прерывание. LoadFile - загрузка файла для визуализации, вызывает список файлов которые можно загрузить в модуль, в списке будут только файлы открытые на текущий момент в SV+, то есть абы какой файл не загрузить, только те, с какими работаем.

Ну и загрузим файл с каким работали.



Форма поменяет вид, появится инструментарий для амплитудно-фазовой корректировки рис 1, оставим это на потом, заполним поля измеренными значениями выставим флажки как на рис2 и нажмем Go!, получим отличное, в полном соответствии с измерениями фазовое созвездие PSK-4, можно поиграть с флажками и слайдерами. Кроме того можно быть уверенным, что это действительно PSK-4 с тактовой 1200 и несущей 1588 Герц, ведь мы ничего не подгоняли, а все просто измерили и убедились в своих измерениях.

Все описанное выше, это классический, правильный способ определения параметров PSK сигналов, существует еще один метод форсированный, он менее трудоемок, но чреват ошибками и требует наличия определенных навыков. Рассмотрим его, используется окно вывода амплитудно-фазового корректора, не сам корректор, а его функции отображения.

Работаем с тем же самым файлом, загружаем его в SV+, выделяем маркерами частоты спектр, выделяем маркерами времени какой либо фрагмент, вызываем фазовый вьювер, и сразу загружаем файл для отображения на фазовой плоскости, как уже говорилось, окно отображения спектра высокого разрешения меняет вид, так как если загружается файл, то однозначно спектр высокого разрешения не интересует пользователя, получится примерно так:



Слайдер внизу окна это навигация по файлу, левое крайнее положение соответствует началу файла, крайнее правое концу, слайдер стоит в крайнем левом, в начале файла как видим ничего нет, по этому и в окне отображения то же нет ничего, подвинем слайдер до появления хоть чего нибудь, примерно как на последней картинке, отрегулировав вертикальным слайдером масштаб получим графический спектр сигнала в первой степени(см. режим Mode = X^n, n=1), то есть собственно сам сигнал. Если мышкой побегать по полю отображения, то в левом нижнем углу формы фазового вьювера будут бегать циферки F = XXXX, это частота которая соответствует положению курсора, частота может быть, если обратите внимание отрицательной, пусть это не беспокоит сильно, спектр отображается в комплексном виде, кроме того частота пересчитывается в немного другой вид, заточенный под перенос в окно CarrierTone. Если кликнуть левой кнопкой иыши значение частоты курсора впишется в окно CarrierTone, если будет включен режим АМ, то значение будет вписано в окно SpeedManipulation. Красная линия это частота на которой работает ФАПЧ, зеленые линии это места где должны быть боковые, для значения тактовой в окне SpeedManipulation, сейчас там 100. Определим значение тактовой. Для этого переводим аплитудно-фазовый корректор в режим АМ. Подберм масштаб и посмотрим, что видно. Режим АМ, это та же самая огибающая, и точно так же позволяет увидеть тактовую частоту, если точно на пике кликнуть левой кнопкой, то ее значение впишется в окно SpeedManipulation, тут есть один момент, это окно не для измерений частот, по этому значение тактовой может оказаться сильно не точным, сдвиг на один пиксел может привести к большой погрешности, у меня получилось 1205.68 Герц, оставим так.



Переводим АФК в режим возведения в степень, и меняем степень до тех пор пока не появится знакомая картинка, пик с несущей и боковыми по краям, это произойдет на 4-й степени, вид будет примерно такой:



Теперь если кликнуть точно на пике несущей, свовместятся линии ФАПЧ и несущей, линии боковых, а значение несущей частоты впишется в окно CarrierTone, осталось поменять значение порядка на 4-й, на самом вьювере, выставить флажки и запустить сам процесс. После того как ФАПЧ по несущей и тактовой захватят эти частоты, картинка примет знакомый вид. Чем метод плох? Тем, что это косвенная возможность, она не закладывалась именно для этого, точность определения частот очень плохая, и если по несущей, ФАПЧ еще как то способна отработать большую погрешность, то по тактовой 5 герц это очень много, и на захват требуется довольно приличное время и не факт, что он вообще произойдет, именно по этому требуемая точность определения частот по несущей и тактовой не хуже одного герца, реально как видим вьювер справляется и с худшими параметрами, но нужны гарантии, а не крайние пределы работы ФАПЧ, так вот гарантия, это предварительная установка с точностью не хуже одного герца, не смотря на то, что этот вьювер легко обходит по этим вещам все какие мне довелось увидеть(допускаю, что настоящих-то я и не видел). Само собой мы говорим о вьюверах универсальных, узко заточенные вьюверы под конкретные сигналы и задачи не в счет.

Собственно и все, технология определения и визуализации PSK освещена в полном объеме, освойте на хороших сигналах, важно это понять и закрепить, потому что следующая часть будет посвящена тем трудностям и тонкостям которые возникают в реальности, и нам будет не до азов анализа сигналов PSK. getQuotation();






Рекомендуемый контент




Copyright © 2010-2017 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.