Автор |
Сообщение |
|
Дата: 05 Май 2006 13:23:00
#
Пытаюсь воссоздать модулятор сигнала HFDL. Результаты своих трудов записываю в WAV файл.
Открываю его в CoolEditore и сравниваю с образцами скачанными из интернета. Полное сходство по форме и спектру сигнала. На слух тоже похожи.
Следующим шагом заворачиваю сигнал через выход наушников на микрофонный вход. Запускаю программу PC-HFDL и пытаюсь увидеть некое подобие переданного пакета. Прога видит в лучшем случае правильную преамбулу(угадывает скорость и вид модуляции) в пакете полный хлам, причем каждый раз разный :-( Проделываю аналогичную процедуру со скачанным образцом - все ОК. Декодирует пакет однозначно. На картинке справа при моем сигнале равномерно размытый по оси Х эллипс. При образце - две красивые группы на 0 градусов и 180. Смотрел свой сигнал через Spectrum Viewer - показывает красивое фазовое созвездие.
Может кто может подсказать, что за хрень такая.
Поднесущая на месте, скорость манипуляции совпадает, частоту дискретизации менять пробовал....
пока ничего не помогло
У кого-нибудь есть мысли по этому поводу??? Help, please
|
|
Дата: 05 Май 2006 13:36:34
#
SIgor
Мечта есть у меня, когда нибудь, всё таки, станет правилом, при таких вопросах сразу выкладывать файлы, угадывать дело не благодарное. ;) А образец затребуют, это же очевидно.
|
Реклама Google
|
|
|
Дата: 05 Май 2006 13:50:44
#
|
|
Дата: 05 Май 2006 14:02:00
#
SIgor
Code 300 пишет:
DATA RATE 300 SINGLE SLOT
SLOT CRC ERROR
Skysweeper, однако, молодец, и без контрольной суммы дает результат:
UPLINK HFDL MESSAGE
Frequency Error : -2 Hz Data Rate : 300 bps Interleaver : 1.8 s
UL Msg : 7
Date : May 5, 2006
Time : 14:02:07
MPDU HEADER
MID
Pdu Type : 1 = MPDU
Direction : 0 = Uplink
O : 0x3
Number of Addr : 0x8
Parity : 0x0
Ground Station Id: 0x8
Name : Johannesburg, South Africa
Status : Synchronized
AIRCRAFT ADDRESS
A/C ID : 0x1c
MDF
Parity : 0x0
DDR : Reserved
Number of LPDUs : 0x7
LPDU Sizes : 0x11 0x9d 0x41 0x24 0x4d 0x61 0x1
AIRCRAFT ADDRESS
A/C ID : 0xe8
MDF
Parity : 0x0
DDR : 1 = 300 bps
Number of LPDUs : 0x4
LPDU Sizes : 0x1 0x95 0x19 0x85
AIRCRAFT ADDRESS
A/C ID : 0x2b
MDF
Parity : 0x1
DDR : 1 = 300 bps
Number of LPDUs : 0x2
LPDU Sizes : 0x42 0x11
AIRCRAFT ADDRESS
A/C ID : 0xe
MDF
Parity : 0x0
DDR : Reserved
Number of LPDUs : 0xe
LPDU Sizes : 0x0 0x40 0x5 0x83 0x8d 0x1 0x11 0x5b 0x41 0x3 0x47 0x12 0x11 0x89
AIRCRAFT ADDRESS
A/C ID : 0x2c
MDF
Parity : 0x0
DDR : 4 = 1800 bps
Number of LPDUs : 0xe
LPDU Sizes : 0x40 0xd1 0x89 0x7c 0x33 0x3e 0x1 0x83 0xdd 0xc6 0x45 0x19 0x11 0xf2
AIRCRAFT ADDRESS
A/C ID : 0xc8
MDF
Parity : 0x0
DDR : 4 = 1800 bps
Number of LPDUs : 0x5
LPDU Sizes : 0x7 0x2 0x13 0x21 0x89
AIRCRAFT ADDRESS
A/C ID : 0x21
MDF
Parity : 0x1
DDR : 1 = 300 bps
Number of LPDUs : 0x0
LPDU Sizes :
AIRCRAFT ADDRESS
A/C ID : 0x0
MDF
Parity : 0x0
DDR : Reserved
Number of LPDUs : 0x0
LPDU Sizes :
|
|
Дата: 05 Май 2006 14:05:09
#
SIgor
А что за софт для кодировки Вы используете?
И зачем это все нужно?
Вот, кстати, пакет в 16-ричном виде:
UPLINK HFDL MESSAGE
Frequency Error : -2 Hz Data Rate : 300 bps Interleaver : 1.8 s
7d 88 1c 7a 10 9c 40 23 4c 60 00 e8 42 00 94 18 }..z..@#L`.hB...
84 2b 23 41 10 0e e0 ff 3f 04 82 8c 00 10 5a 40 .+#A..`.?.....Z@
02 46 11 10 88 2c e8 3f d0 88 7b 32 3d 00 82 dc .F...,h?P.{2=..
c5 44 18 10 f1 c8 58 06 01 12 20 88 21 03 00 c0 ED..qHX... .!..@
d8 30 0c 14 X0.. |
|
Дата: 05 Май 2006 14:05:25
#
john_qkk
Т.е. пакет нормальный? Проблема в PC-HFDL???
|
|
Дата: 05 Май 2006 14:07:16
#
Софт собственного производства. А нужно для доработки отечественных радиостанций до ихнего стандарта, но до этого еще очень далеко. Я еще только начал разбираться :-)
|
|
Дата: 05 Май 2006 14:13:09
#
SIgor
Я так понимаю, что CRC в вашем пакете неправильная. Она всегда ноль.
В реальных пакетах CRC отлична от нуля, и выглядит, например, так:
CRC : 0x2429 TRUE
|
|
Дата: 05 Май 2006 14:14:35
#
Думаю, Вам надо установить SkySweeper, там уйма опций для "расковыривания" пакетов.
|
|
Дата: 05 Май 2006 14:17:46
#
SIgor
Я так понимаю, что CRC в вашем пакете неправильная. Она всегда ноль.
В реальных пакетах CRC отлична от нуля, и выглядит, например, так:
CRC : 0x2429 TRUE
CRC в моем пакете еще вообще нет :-)
Пока я пытаюсь удостовериться, что я нигде не перевернул младший и старший биты, но для этого нужно однозначно демодулировать пакет, а пока у меня каждый раз новый результат. Буду ставить SkySweeper.
|
|
Дата: 05 Май 2006 14:25:13
#
SIgor
В Skysweeper всегда получается один и тот же результат декодирования.
В PCHFDL, действительно, все время разное...
|
|
Дата: 05 Май 2006 14:27:56
#
SIgor
Сигнал сформирован похоже не правильно. Не спешите браковать PC-HFDL
|
|
Дата: 05 Май 2006 14:39:25
#
SIgor
Да, не правильное формирование, сейчас картинки сделаю, думаю сами все поймете.
p.s. В принципе это и так видно при возведении во вторую степень, но с ходу причину не понять, чуть подождите.
|
|
Дата: 05 Май 2006 15:24:54
#
SIgor
Вот правильный hfdl
Вот Ваш
Разница видна существенная, на правильном и боковых после возведения во вторую степень две, и сам он имеет вид, после, э-э-э аппроксимации симпатичный, на Вашем, нет одной спектральной линии, и вид его после аппроксимации не важный.
Проблема как мне кажется, в том, что на правильном сигнале фаза меняется от 0 до 180 и несущая занимает одно из крайних положений, а у Вас фаза меняется от 180 до -180 и несущая занимает центральное положение то есть 0, ошибка где-то в формирователе. На фазовой плоскости 180 и -180 превращаются в 360 и вместе с несущей на 0 дают ту же картинку ФМ-2(при возведении в квадрат этот косяк заметен), но сам сигнал становится не информативным, искаженным, что и отражает PC-HFDL. В общем сигнал Ваш не верно сформирован. |
|
Дата: 05 Май 2006 15:38:57
#
Спасибо, буду копать до появления второй спектральной составляющей.
|
|
Дата: 05 Май 2006 15:44:55 · Поправил: SergUA6
#
SIgor
Да похоже Вы все время прибавляете фазовый сдвиг при формировании, а его нужно и прибавлять и вычитать, или ошибка в алгоритме, там где надо он не вычитает, а прибавляет или наоборот,ну в общем то разберетесь.
|
|
Дата: 05 Май 2006 18:56:14 · Поправил: SergUA6
#
SIgor
Ну что ошибку не нашли? ;-) В общем у меня закрались кое-какие сомнения, и возможно я в корне не прав, не могли бы положить запись сигнала сразу после формирования, без конечной фильтрации. Сигнал не правильно формируется, но причины не те о которых я подумал и сказал.
|
|
Дата: 06 Май 2006 21:03:34
#
SIgor
буду копать до появления второй спектральной составляющей
Вы бы пока не торопились, не совсем ясно где копать, все, что я говорил выше может(и похоже так оно и есть) быть не верным. Вопрос такой, используете ли Вы формирующий фильтр модулирующего сигнала, так называемый shaping filter? Дело в том, что модулирование в лоб, у меня дает примерно такие же результаты, что в общем то и понятно, но вот проблема, я не занимался плотно синтезом сигналов, и пока не знаю как правильно эти фильтры расчитываются, и как собственно применяются, как то не задумывался особо, каким образом в деталях модулируют несущую, частотой манипуляции ее превышающую... 8-( Вот теперь задумался.
|
|
Дата: 10 Май 2006 10:46:18
#
SergUA6
Ошибку пока не нашел. Запись сигнала без фильтрации положу немного позднее. Модулируется сигнал следующим образом
if(bit) Sample[SampCnt++] = 10000*sin(((double)SampCnt*CentralFreq*2*pi/SampleRate) + pi);
else Sample[SampCnt++] = 10000*sin((double)SampCnt*CentralFreq*2*pi/SampleRate);
где SampCnt - непрерывный счетчик в течении всей модуляции
CentralFreq - поднесущая
SampleRate - частота дискретизации
на каждый бит формируется SampleRate/1800 отсчетов
Так что "грабли" пока не найдены. Поиск продолжается :-)
|
|
Дата: 10 Май 2006 11:13:07
#
SIgor
В общем картина такая... Мне кажется, нужно использовать shaping filter, но особой уверенности у меня нет, и вот почему. На сайте лежит пример HFDL http://www.radioscanner.ru/files/records/hdfl.wav который обладает всеми теми же особенностями, что и Ваш сигнал, и который так же не декодируется PC-HFDL. Обкатывая АКФ( http://www.radioscanner.ru/forum/index.php?action=vthread&forum=21&topic=16848&page=2 ) я обратил внимание, что Ваш сигнал и образец на сайте имеют одинаковые АКФ, а вот примеры которые есть у меня и которые декодирует PC-HFDL имеют другой вид АКФ. Выводы, уже более обоснованные, можно сделать такие, скорее всего есть некоторая разновидность, или в протоколах, или в формировании сигнала HFDL, одну из которых PC-HFDL просто не любит, или не знает, SkySweeper в этом плане по круче будет. В примере который на сайте, так же нет явной второй линии при возведении сигнала в степень, так что ошибок у Вас скорее всего нет, а есть проблема с PC-HFDL. |
|
Дата: 10 Май 2006 12:45:13
#
SergUA6
Фильтр на выходе у меня используется. Только его основное предназначение уменьшить полосу сигнала и на декодирование он влияние оказывать явно не должен.
А можно для сравнения ваши примеры кинуть мне на мыло.
|
|
Дата: 10 Май 2006 12:53:44 · Поправил: SergUA6
#
SIgor
Так вроде бы определились, что проблема не у Вас, а у PC-HFDL. Вот сигнал который и PC-HFDL и SkySweeper декодирует http://www.radioscanner.ru/uploader/2006/hfdl300bps.wav
p.s. Я не про тот фильтр, а про тот, который формирует примерно вот такой компактный спектр
обычно это или косинусный фильтр или его какая модификация, и применяется он не к результирующему сигналу, а к модулирующей последовательности. |
|
Дата: 18 Май 2006 14:37:08
#
В результате своих исследований пришел к следующему:
1. SkySweeper хорошо декодирует любые пакеты(независимо от того осмысленная в них информация или бред), но абсолютно отказывается распознавать пакеты со скоростями 1200 и 1800 бит/с. Т.е. принимать с эфира он их явно не сможет(это так если кому пригодится)
2. PC-HFDL абсолютно не воспринимает бредовые пакеты, но хорошо работает с осмыссленными пакетами на любых скоростях
3. Code300 не хочет хавать пока никакие мои пакеты :-(
Это было так краткий отчет о проделанной работе(вдруг кому пригодится)
А теперь вопрос(скорее всего к SergUA6) какие по вашему мнению в этих прогах используются алгоритмы для демодуляции???
Мне кажется что SkySweeper использует жесткое декодирование по Витерби, в PC-HFDL скорее всего попытка реализовать мягкое декодирование, про Code300 пока ничего сказать не могу. Стоит вопрос в выборе алгоритма демодуляции и вот думаю в какую сторону смотреть :-)
|
|
Дата: 18 Май 2006 16:39:54
#
|
|
Дата: 18 Май 2006 17:14:45
#
Мои выводы основываются на чистых незашумленных пакетах. Возможно PC-HFDL использует более кривой алоритм демодуляции, чем SkySweeper. Code300 этот пакет тоже не разпознает за нормальный. При анализе этого сигнала(с сайта) я не могу выделить в нем фазового созвездия. Потом в нем также отсутствует(по предложенной Вами методике) нижняя спектральная составляющая. Я могу предположить, что PC-HFDL при декодировании использует оценку импульсной характеристики канала и в этом случае неправильная ИХ формирующего фильтра передатчика может привести к полному непониманию демодулятором сигнала (что наблюдалось на ранее сформированных мной сигналах).
Сказать что сигнал с примера левый я не могу(SkySweeper его все таки понимает), но мне кажется что он не достоин называться примером сигнала HFDL :-)
Я тоже, к сожалению, не знаю где что используется :-)
|
|
Дата: 18 Май 2006 17:33:32
#
SIgor
Понятно, у меня вообще ощущение, давнее правда, что SkySweeper просто пишет пакеты в память, а потом их разбирает, то есть работает не совсем в real-time, потому, что когда они следуют друг за другом быстро, он частенько их пропускает и конкретно сбоит, ну это так предположение.
|
|
Дата: 25 Фев 2009 14:55:51
#
|
|
Дата: 25 Фев 2009 21:18:42
#
Mexico
Записи очень низкого качества... - серьезному анализу не поддаются. Если чисто на слух, то больше похожа на LINK-11.
|
|
Дата: 25 Фев 2009 21:22:22 · Поправил: Ангстрем (25 Фев 2009 21:22:46)
#
подскажите пожалуйста, это HFDL
Похоже на обычный LINK11 при кривой настройке приёмника и всё.
|
|
Дата: 25 Фев 2009 22:15:47
#
Нет, это не HFDL, и на Link-11 тоже не похоже. Более что-либо сказать невозможно, ибо Вы скинули записи формате, исключающем возможность их дальнейшего анализа.
|
Реклама Google |
|