|
|
  |
Измерение параметров радиосигнала, Методы, алгоритмы, литература |
|
|
|
Mar 2 2009, 18:17
|
Участник

Группа: Участник
Сообщений: 41
Регистрация: 20-09-08
Пользователь №: 40 352

|
Цитата Вообщем пора начинать чета делать (: ы
ммм... идея такая - сначала хочу смоделировать модуляторы ЧМн и ФМн, поиграться с их спектрами, поузнавать их... юзая те статейки, что выше
Как на ваш вгзляд, где это рациональней делать, что бы в дальнейшем удобней было? В Матлабе, в Симулинке или на Делфи? я выбрал бы Матлаб по следующим причинам: Матлаб/Симулинк - для этой задачи взял бы матлаб, так как в нем можно очень просто в рамках одной программы как работать с сигналами, так и создавать струкурные алгоритмы, без которых классификатор как-то сложно представить. Симулинк как-то больше для моделирования/прототипирования реал-тайм систем. Матлаб/Дельфи - Опять же матлаб, так как в нем множество готовых функций, особенно если есть тулбоксы communications, signal processing, которые можно использовать на этапе "обкатки/тестирования" идей, не тратя драгоценное время на написание функций, которые возможно и не пойдут в окончательный вариант. Так что по совокупности, имхо, матлаб. Как вариант, сейчас набирает популярность python, как альтернатива Матлабу, особенно с модулями NumPy, SciPy.
--------------------
A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away (Antoine de Saint-Exupery)
|
|
|
|
|
Mar 2 2009, 19:39
|
Участник

Группа: Участник
Сообщений: 41
Регистрация: 20-09-08
Пользователь №: 40 352

|
Цитата(COCAINE @ Mar 2 2009, 21:38)  leksa спасибо... С Матлабом практически не работал, поэтому вопрос - позволит ли он создать модулятор с конечным результатом - синал в *.wav Пожалуйста  Позволит. Например, вот так: script %Test_PSK clear close all clc nSamp = 8; numSymb = 1000; M = 4; SNR = 14; a=0.5; msg_orig = randsrc(numSymb, 1, 0:M-1);% случайная последовательность y = pskmod(msg_orig,M);% Собственно, модулятор, функция из comm toolbox, можешь сделать свой вариант figure(1)%смотрим графики plot(real(y),'b- .'),grid on,hold on plot(imag(y),'r- .'),grid on,hold off msg_tx = rcosflt(y,1,nSamp,'fir/sqrt',a);% формирующий фильтр - корень из приподн косинуса с срезом 0,5. figure(2) plot(real(msg_tx),'b- .'),grid on,hold on plot(imag(msg_tx),'r- .'),grid on,hold off msg_txn=awgn(msg_tx,SNR,'measured');% добавляем белый шум, опять же функция из тулбокса figure(3) plot(real(msg_txn),'b- .'),grid on,hold on plot(imag(msg_txn),'r- .'),grid on,hold off figure(4) scatterplot(msg_txn,nSamp,0,'b .') msg_txn=(msg_txn*0.9)/max(abs(msg_txn));%перед записью в файл важно сделать нормировку, чтобы элементы массива не превышали по модулю 1, иначе сигнал обрежется по амплитуде (особенности работы функции wavwrite) Fs=2400*8; bits_resol=16; FILENAME=['PSK_Signal_numSymb=' num2str(numSymb) '.wav']; wavwrite([real(msg_tx) imag(msg_tx)],Fs,bits_resol,FILENAME);%чтобы записать комплексный сигнал в стерео wav надо представить его в виде матрицы с 2 столбцами. [signal_from_wav,Fs,bits]=wavread(FILENAME);% а это уже чтение из файла signal_from_wav=signal_from_wav(:,1)+j*signal_from_wav(:,2);% обратно из матрицы с 2 столбцами в комплексный сигнал. figure(5)%смотрим сигнал из файла plot(real(signal_from_wav),'b- .'),grid on,hold on plot(imag(signal_from_wav),'r- .'),grid on,hold off Такой вот туториал По(д)смотреть чужой код для матлаба можно здесь обмен файлами для матлабУдачи!
Сообщение отредактировал leksa - Mar 2 2009, 19:40
--------------------
A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away (Antoine de Saint-Exupery)
|
|
|
|
|
Mar 5 2009, 18:32
|
Частый гость
 
Группа: Свой
Сообщений: 131
Регистрация: 17-08-08
Из: Киев
Пользователь №: 39 650

|
RadioJuniorпопробуйте спросить тут Докуметация по СВЧ-техникеleksaпоковырялся немного в матлабе. Попробывал ваш вариант модулятора. пару вопросов: 1. Я все никак не могу понять про комплексный сигнал... могли бы вы популярно объяснить что это такое? 2. Для чего нужен формирующий фильтр?
Сообщение отредактировал COCAINE - Mar 5 2009, 18:34
|
|
|
|
|
Mar 5 2009, 23:09
|
Участник

Группа: Участник
Сообщений: 41
Регистрация: 20-09-08
Пользователь №: 40 352

|
leksaпоковырялся немного в матлабе. Попробывал ваш вариант модулятора. пару вопросов: 1. Я все никак не могу понять про комплексный сигнал... могли бы вы популярно объяснить что это такое? 2. Для чего нужен формирующий фильтр? [/quote] по 1 пункту: посмотрите в книгах, которые рекомендовали в этой теме, например: http://electronix.ru/forum/index.php?showt...%E0%E9%EE%ED%F1Баскакова и Гоноровского, например. Вот здесь по простому объясняют: http://wapedia.mobi/en/Quadrature_amplitude_modulationТам типа про КАМ, но вы на этом не зацикливайтесь на месте I и Q могут быть любые низкочастотные сигналы В двух словах обьяснить сложно. Физический смысл в том, что на одной несущей частоте можно передавать такой сигнал: g(t)=I(t)*cos(wt)-Q(t)*sin(wt). Если на приемной стороне такой сигнал умножить на cos(wt), то получится следующее: I(t)/2+(I(t)*cos(2wt)-Q(t)*sin(2wt)).То есть низкочастотный сигнал I(t) и два высокочастотных сигнала. Пропускаем через ФНЧ, на выходе остается только низкочастотный сигнал I(t). А если умножим принятый сигнал на sin(wt) и пропустим через ФНЧ то получим Q(t). То есть I(t) и Q(t) можно разделить на приемной стороне. Используя математику можно доказать что принятый сигнал можно еще представить в таком виде: g(t)=a(t)*cos(wt+p(t)) где a(t)=sqrt(I(t)^2+Q(t)^2) p(t)=arctan(Q(t)/I(t)), а также, что есть такое равенство: g(t)=Re(v(t)*exp(j*wt)) где v(t)=I(t)+j*Q(t). То есть вся полезная информация какая есть в g(t), представлена в I и Q, несущее колебание это просто переносчик информации. В тоже время эту же полезную информацию можно записать в виде комплексного числа v(t), причем оказывается, что v(t) можно представить еще и в таком виде. v(t)=a(t)*exp(j*p(t)). То есть модулированному сигналу можно поставить в соответствие эквивалентное комплексное число, с которым во многих случаях оказывается проще работать чем с сигналами на поднесущих. Более того, умножение данного комплексного сигнала на A2*exp(j*w1*t+phi) эквивалентно сдвигу исходного сигнала по частоте несущей на w1 и по фазе на phi и увеличению уровня огибающей в A2. Работая с комплексным сигналом легко реализовывать алгоритмы приема сигналов как цифровой, так и аналоговой модуляции. В общем, устал уже писать, спать пора, надеюсь как-то прояснил картину... По 2 пункту: Формирующий фильтр выполняет 2 задачи. 1 - Подавляет значительную часть внеполосных составляющих модулированного сигнала, чтобы минимизировать соканальные помехи, уменьшить требуемую полосу для передачи, повысив спектральную эффективность. 2 - Формирует такую форму импульса модулирующего сигнала, с которой согласован согласованный фильтр приемника. Помимо этого импульсная характеристика должна быть подобрана таким образом, чтобы на выходе согласованного фильтра отсутствовала межсимвольная интерференция. В общем надо читать Прокиса, Скляра, если на русском. На английском мне понравилась такая книга: Communication systems. S.Haykin Emule, torrents, rapidlibrary.com в помощь, где точно скачать не знаю.
Сообщение отредактировал leksa - Mar 5 2009, 23:10
--------------------
A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away (Antoine de Saint-Exupery)
|
|
|
|
|
Mar 6 2009, 07:04
|
Частый гость
 
Группа: Участник
Сообщений: 117
Регистрация: 28-01-08
Пользователь №: 34 498

|
Цитата(COCAINE @ Mar 5 2009, 21:32)  1. Я все никак не могу понять про комплексный сигнал... могли бы вы популярно объяснить что это такое? 2. Для чего нужен формирующий фильтр? Тут вы все поймете http://st.ess.ru/publications/articles/digmodch/serdukov.pdf
|
|
|
|
|
Mar 6 2009, 10:26
|
Частый гость
 
Группа: Свой
Сообщений: 131
Регистрация: 17-08-08
Из: Киев
Пользователь №: 39 650

|
Цитата На английском мне понравилась такая книга: Communication systems. S.Haykin http://rapidshare.com/files/3706020/Commun...-4ed-Haykin.zip
Сообщение отредактировал COCAINE - Mar 6 2009, 10:27
|
|
|
|
|
Mar 6 2009, 13:01
|
Участник

Группа: Участник
Сообщений: 41
Регистрация: 20-09-08
Пользователь №: 40 352

|
Цитата(COCAINE @ Mar 6 2009, 13:26)  Спасибо за ссылку, правда у меня то она есть, но может еще кому пригодится. В смысле я рекомендовал её к прочтению, там вопрос данный раскрыт, и неплохо. Только про комплексную огибающую в этой книге надо в приложении смотреть.
--------------------
A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away (Antoine de Saint-Exupery)
|
|
|
|
|
Mar 6 2009, 13:27
|
Частый гость
 
Группа: Свой
Сообщений: 131
Регистрация: 17-08-08
Из: Киев
Пользователь №: 39 650

|
Вот за что люблю зарубежную литературу (и не только литературу) так это за просту изложения. Наши светила науки как наворотят блин, хер че поймешь. Такое впечатление, что они книги пишут только для себя, и то ради того, что бы паказать как много они знают формул (: Вообщем я к чему... все очень просто и понятно написано про квадратурные сигналы в этой пэдээфке. Но что самое интересное у Лайонса есть книга, переведена она на русский и есть в эл. виде. Настолько все просто и понятно... я даже мягко говоря а#уел  Кому надо она здесь http://depositfiles.com/ru/files/t2996640y (ессиче, линк не мой, спер с какогото сайта... ы) Цитата понятия аналитического сигнала и комплексной огибающей ок, проштудируем (: что-то на эту тему видел у Сергиенка (еще одна великолепнишая книга на русском, что очень большая редкость)
Сообщение отредактировал COCAINE - Mar 6 2009, 13:41
|
|
|
|
|
Mar 7 2009, 20:14
|
Частый гость
 
Группа: Свой
Сообщений: 131
Регистрация: 17-08-08
Из: Киев
Пользователь №: 39 650

|
leksaхм ... Цитата Физический смысл в том, что на одной несущей частоте можно передавать такой сигнал: g(t)=I(t)*cos(wt)-Q(t)*sin(wt). Если на приемной стороне такой сигнал умножить на cos(wt), то получится следующее: I(t)/2+(I(t)*cos(2wt)-Q(t)*sin(2wt)).То есть низкочастотный сигнал I(t) и два высокочастотных сигнала. Пропускаем через ФНЧ, на выходе остается только низкочастотный сигнал I(t). А если умножим принятый сигнал на sin(wt) и пропустим через ФНЧ то получим Q(t). То есть I(t) и Q(t) можно разделить на приемной стороне. Используя математику можно доказать что принятый сигнал можно еще представить в таком виде: g(t)=a(t)*cos(wt+p(t)) где a(t)=sqrt(I(t)^2+Q(t)^2) p(t)=arctan(Q(t)/I(t)), а также, что есть такое равенство: g(t)=Re(v(t)*exp(j*wt)) где v(t)=I(t)+j*Q(t). То есть вся полезная информация какая есть в g(t), представлена в I и Q, несущее колебание это просто переносчик информации. В тоже время эту же полезную информацию можно записать в виде комплексного числа v(t), причем оказывается, что v(t) можно представить еще и в таком виде. v(t)=a(t)*exp(j*p(t)). То есть модулированному сигналу можно поставить в соответствие эквивалентное комплексное число, с которым во многих случаях оказывается проще работать чем с сигналами на поднесущих. Более того, умножение данного комплексного сигнала на A2*exp(j*w1*t+phi) ладно, допустим это все понятно... хотя нет, не совсем... это что получается, квадратурные (комплексные) сигналы используются для увеличение информативности канала в 2 раза (т.к. I и Q передаются одновременно)? Т.е. для передачи нам нужно разделить все сообщение на I и Q составляющие, получить сигнал вида - g(t)=I(t)*cos(wt)-Q(t)*sin(wt) и в таком виде передать его в эфир (занимая одну несущую)? ы вроде логично (: ы но... тогда почему в вашем примере два графика - рил и имидж? Какое отношение PSK-сигнал имеет к комплексным сигналам? хм  вот тут я теряюсь... Если мои рассуждения верны - то мы должны получить ТОЛЬКО синус с изменяющейся фазой... или не так? от куда там взялись два графика? вот тут вопросов не возникат
Сообщение отредактировал COCAINE - Mar 7 2009, 20:46
|
|
|
|
|
Mar 8 2009, 09:14
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(COCAINE @ Mar 7 2009, 23:14)  leksaладно, допустим это все понятно... хотя нет, не совсем... это что получается, квадратурные (комплексные) сигналы используются для увеличение информативности канала в 2 раза (т.к. I и Q передаются одновременно)? Т.е. для передачи нам нужно разделить все сообщение на I и Q составляющие, получить сигнал вида - g(t)=I(t)*cos(wt)-Q(t)*sin(wt) и в таком виде передать его в эфир (занимая одну несущую)? ы вроде логично (: ы но... тогда почему в вашем примере два графика - рил и имидж? Какое отношение PSK-сигнал имеет к комплексным сигналам? хм  вот тут я теряюсь... Если мои рассуждения верны - то мы должны получить ТОЛЬКО синус с изменяющейся фазой... или не так? от куда там взялись два графика? Любой сигнал представляется в комплексном виде, разлагается по ортогональным сигналам синус и косинус, почему и представлятся точкой в декартовой системе координат. На каждом символьном интервале вы получаете не только синус а сумму 2-x базовых векторов соответствующую координатам передаваемой точки сигнального созвездия. Сергиенко не самая лучшая книжка по которой можно что-то понять. Похоже не по специальности диплом, тяжело будет если вникать.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|