Skryppy 1 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба Здравствуйте. Я сгенерировал bpsk сигнал лабораторным генератором, затем оцифровал векторным анализатором и сохранил на 0 ПЧ комплексные данные. Полученный файл на анализаторе строит хорошую глазковую диаграмму и фазовые созвездия. При воспроизведении данного файла в матлаб, получаю плохие результаты (спектр похож, а фаза нет). Может кто-то уже такое делал и укажет мне, что я делаю неправильно. Несущая = 1575.42 МГц, частота модуляции = 1.023 МГц, фильтр - корень из Найквиста с alfa = 0.5. P.S. сам файл данных импортировался в векторный генератор и воспроизводил правильный сигнал, так что дело в настройках модели матлаба. etalon_bpsk_file.rar Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба В 27.11.2022 в 14:54, Skryppy сказал: Может кто-то уже такое делал и укажет мне, что я делаю неправильно. Для начала неплохо оцифровывать сигнал на частоте, строго кратной символьной, а то у Вас сейчас примерно 12.5122... отсчета на символ, Вы даже приемный фильтр толком не сделаете. Кстати, а где он в модели? Начните пока с этого. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Skryppy 1 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба Сигнал уже правильно отфильтрован и оцифрован. Фильтр стоит в лабораторном генераторе, который сгенерировал ВЧ сигнал, его отключить нельзя, можно выбрать один из трёх вариантов. Сигнал стандарта GPS, 1575.42/1.023 = 1540 . Если сторонний лабораторный генератор воспроизводит данный оцифрованный файл как надо, то и матлаб должен, осталось выбрать правильные настройки. Я с ними игрался, пока не подобрал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quato_a 3 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба нужно определится с какой fs у вас оцифрованные данные в файле. я подозреваю сигнал у вас после квадратурного демодулятора с фильтром Найквиста. нужно восстановить несущую через ФАПЧ и реализовать символьную синхронизацию (например детектор Гарднера), тогда можно будет увидеть корректные квадратурные созвездия. посмотрите настройки векторного анализатора, полагаю все это он реализует 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stealthisname 7 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба берём данные из файла и определяем количество отсчетов на символ в записанном сигнале load('DataEtalonGenerator.mat'); y0 = Y; sps0 = (12.8/1.023); % 12.5122 % старый sps задаемся необходимым целым количеством отсчетов на символ и передискретизирем сигнал в новой тактовой sps = 20; % новый sps t0 = (0:numel(Y)-1).'; % старая шкала времени t = (0:(sps0/sps):numel(Y)-1).'; % новая шкала времени y = interp1(t0,y0,t,'spline'); % % plot(t0,y0,t,y); data_out_struct.time = []; data_out_struct.signals.values = y; data_out_struct.signals.dimentions = 1; в блоке Eye Diagram задаем указанное новое количество отсчетов на символ глаз диаграмма точно стала лучше на вид, по ней видно, с каких точек можно строить созвездие, период известен, так как мы сами задали количество отсчетов на символ в передискретизированном сигнале так как Вам точнее известна частота дискретизации записанного сигнала, Вы можете точнее передискретизировать записанный сигнал, а значит и получить лучший результат 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба В 27.11.2022 в 19:31, Skryppy сказал: Сигнал уже правильно отфильтрован и оцифрован. Я не знаю, откуда у Вас такая уверенность, но лично я уверен в одном - сигнал, который Вы прикрепили в первом посте, оцифрован на частоте 12.8 МГц, что дает 12.512218963... отсчетов на символ. А стандартные средства Матлаба заточены на работу только с кратным целочисленным соотношением частот дискретизации/символьной. Играться здесь бесполезно и бессмысленно. В 27.11.2022 в 19:31, Skryppy сказал: Фильтр стоит в лабораторном генераторе, который сгенерировал ВЧ сигнал, его отключить нельзя, можно выбрать один из трёх вариантов. Речь не про фильтр в передатчике, речь про фильтр в приемнике. Вы уверены, что сгенеренный файл получен после аналогичного RRC? Я нет. В 27.11.2022 в 19:31, Skryppy сказал: Сигнал стандарта GPS, 1572.45/1.023 = 1540 . Информация, не имеющая смысла в контексте темы. В 27.11.2022 в 19:31, Skryppy сказал: Если сторонний лабораторный генератор воспроизводит данный оцифрованный файл как надо, то и матлаб должен, осталось выбрать правильные настройки. Нет проблем, делайте в матлабе ресемплинг Вашего сигнала на кратный самплингрэйт и все получиться. Вот картинка после передискретизации Вашего сигнала на 25 отсчетов на символ после RRC фильтра, аналогичного фильтру в передатчике: 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Skryppy 1 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба Спасибо всем, буду завтра тестировать модель, вроде всё понятно. Лабораторное оборудование уже не доступно мне, поэтому точную частоту дискретизации и другие настройки уже не могу посмотреть. Единственное, не понятно , как вы определили, что тактовая частота близка к 12.8 МГц? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 ноября, 2022 Опубликовано 27 ноября, 2022 · Жалоба В 27.11.2022 в 21:31, Skryppy сказал: Единственное, не понятно , как вы определили, что тактовая частота близка к 12.8 МГц? Можно через оценку символьной частоты по исходному сигналу. А можно и через переменную XDelta в файле DataEtalonGenerator.mat, которая, судя по названию и значению, соответствует интервалу дискретизации:) 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться