Есть сигнал записан в PCM Wave File 16bit 48000 через приложение "SDR Sharp".
Сигнал представляет собой ШИМ где 0 это длинный фронт 1 — короткий, повторяющейся циклически.
Проблема в том что при записи забыли выставить точную частоту в SDR Sharp и поэтому в нем много шума.
Я пытался визуально декодировать его, но это достаточно сложно (и лениво).
Вопрос:
1) Есть ли утилиты способные "выцепить" паттерн из этого сигнала, учитывая то что сигнал повторяется?
2) Может быть можно его обработать в каком то аудио-редакторе, что бы усилить полезный сигнал. Дабы можно было бы проанализировать его визуально.
Я пробовал шумодав из Audacity (который берет за основу пример шума), но походу он только делает хуже.
Здравствуйте, nen777w, Вы писали:
N>Есть ли утилиты способные "выцепить" паттерн из этого сигнала, учитывая то что сигнал повторяется?
Попробуйте sigrok/PulseView — может, у них есть декодеры под этот формат. А сам SDR-софт этого не понимает?
N>Я пробовал шумодав из Audacity (который берет за основу пример шума), но походу он только делает хуже.
Эти шумодавы тупо ослабляют частоты, наиболее выраженные в шуме, но сигнал при этом достаточно сильно меняется, и только для ушей остается похожим на оригинал.
N>>Есть ли утилиты способные "выцепить" паттерн из этого сигнала, учитывая то что сигнал повторяется? ЕМ>Попробуйте sigrok/PulseView — может, у них есть декодеры под этот формат.
Спасибо посмотрю.
ЕМ>А сам SDR-софт этого не понимает?
ХЗ, может плагины какие то есть под SDRSharp, но я не смог найти.
N>>Есть ли утилиты способные "выцепить" паттерн из этого сигнала, учитывая то что сигнал повторяется? ЕМ>Попробуйте sigrok/PulseView — может, у них есть декодеры под этот формат. А сам SDR-софт этого не понимает?
Попробовал. Удобная штука.
Но вот вопрос. Как экспортировать данные в ASCII 0/1 формате?
Я открыл сигнал.
Кликнул по каналу и выбрал в Conversion: to logic via schmitt-trigger.
Программа отлично определила форму длинных и коротких импульсов.
Еще, так как файл большой, я поставил макреры данные между которыми мне хотелось бы экспортировать.
Как ей (программе) объяснить что длинный фронт это 0 а короткий 1 и экспортировать полученное или в HEX или BIN формате?
Здравствуйте, nen777w, Вы писали:
N>Как ей (программе) объяснить что длинный фронт это 0 а короткий 1
Этим занимаются декодеры протоколов — нужно добавить декодер к проекту, и указать источник сигнала. Навскидку я там не нашел подходящих.
N>и экспортировать полученное или в HEX или BIN формате?
В HEX он вроде умеет, но нужен декодер. Если не найдете готового декодера, можно экспортировать в CSV вместе со шкалой времени, и на любом языке сколхозить декодер длительностей.
N>>Как ей (программе) объяснить что длинный фронт это 0 а короткий 1 ЕМ>Этим занимаются декодеры протоколов — нужно добавить декодер к проекту, и указать источник сигнала. Навскидку я там не нашел подходящих.
Да подразобрался еще немного. По сути проект open source, значит можно попробовать допилить. Наверно этим и займусь в ближайшее время.
Здравствуйте, nen777w, Вы писали:
N>По сути проект open source, значит можно попробовать допилить.
Если не лень, можно написать декодер на питоне, но это имеет смысл, если формат мало-мальски востребован. Иначе, на мой взгляд, Вам будет проще экспортировать в CSV, и любым скриптом расшифровать длительности.