Pull to refresh
113
63.8

Embedded SW/Firmware Engineer

Send message

Используемая модуляция - BPSK ( двоичная фазовая манипуляция), то есть при изменении двоичного значения данных формируемая синусоида несущей частоты меняет фазу на 180 градусов, а по сути - инвертируется.

Как в декодированном BPSK потоке семплов найти начало бита данных, если уже долгое время передаются только нули или только единицы?

Определять откуда стреляют в зоне СВО.

Пусть излучатель посылает bpsk сигнал непрерывно 010101. Тогда приемник сможет подстроить свою фазу гетеродина через Costas loop.

Вот и получится синхронизация фазы излучателя и гетеродина.

Цель моего текста даже не в том чтобы сделать дальномер, а в том, чтобы предложить использовать аудио обработку для изучения основ ЦОС в институтах.

эх... узнаю себя лет 20 назад...

Хорошая новость. Значит мне суждено её прожить минимум 20 лет...

Если нет синхронизации, то относительно чего Вы измеряете сдвиг фазы в зависимости от расстояния?

Относительно предыдущего положения спикера.

 как Вы сделали синхронизацию по фазе излучаемого сигнала и опорного в точке приема?

Хороший вопрос. Пока никак. Синхронизацию по фазе - это тема для дальнейших исследований.

 как вы без синхронизации фазу определяете.

Да. Определяю фазу без синхронизации. Абсолютное значение без синхронизации генераторов тут не получить.
Зато можно зарегистрировать факт перемещения источника/приёмника.

Только на приемнике?

На передатчике тоже. Теоретически можно же по радио попробовать получать синхронизацию фазы генератора на передатчике и гетеродина на приемнике.
Радиоволны намного быстрее звука.
Надо лишь сделать какой-то радио синхронизатор.

Надо нормальный микрофон с усилителем, брать Arduino\STM32, оцифровывать отраженный сигнал с помощью АЦП, сохранять в массив.

Вы можете порекомендовать отладочную плату с микроконтроллером, аудиокодеком и SD картой?

оцифровывать отраженный сигнал с помощью АЦП

В тексте нет никакого отраженного сигнала. Вы про что?

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

Вы можете порекомендовать отладочную плату с микроконтроллером, аудиокодеком и SD картой?

Подкину еще идейку для исследований: 4 микрофона

Это называется Sound Source Localization (SSL)
https://www.youtube.com/watch?v=erwi-TFy5Dk
американские школьники это делают в 7м классе

Абсолютное расстояние можно измерить сонаром, который измеряет TOF.

А если наблюдать за фазой, то тут измерять на разных частотах, синхронизовать гетеродин и решать СЛАУ.

Но если хотите делать это одновременно нужно убрать нормирование сигнала из алгоритма.

Почему? Можно же сначала полосовым фильтром выделить нужную несущую, а затем выполнить её нормирование. И подавай в смеситель.

Алгоритм, который вы пытаетесь изобрести называется FMCW

Это не FMCW. В тексте приемник ничего предварительно не излучал.

  • не используйте "С" на этапе экспериментов. Когда надо будет делать конечное устройство с готовым алгоритмом - тогда да. Для экспериментов есть python с numpy, scipy, matplotlib и juniper notebook. С ними скорость разработки вырастет в десятки раз.

Плохой совет. То что написано на Cи можно мигрировать куда угодно: MCU, PC, ядро OS.
А то, что написано на python - это скрипты-однодневни, которые вскоре оказываются в корзине. Да ещё и Python тупой синтаксис.

  • никогда не знаешь отражение от которой из поверхностей будет сильнее - от стены с обоями, в которую ты целишься, или от гладкого твердого потолка.

  • отражения от разных объектов складываются создавая новый виртуальный объект, там где физически ничего нет.

В моем тексте ни слова про отражения. Это полностью пассивные измерения. Приёмник ничего не излучает.

Зачем сенсорный экран? Параметры можно смотреть и задавать через UART CLI.

не нужно лишний UART в MCU занимать

Нехватка UART это не проблема.

UART-CLI может работать на одном UART c каким-нибудь другим бинарным или текстовым протоколом: ModeBus, AT-commands, yModem, Pelco-D и проч. Просто CLI не будет отвечать бинарные на кракозябры

Подобно, тому как в 100-Base-TХ в одной витой паке одновременно циркулируют протоколы Ethernet, CSMA/CD, ARP, RARP, NDP и проч

А один UART уж точно есть во всех MCU.

1
23 ...

Information

Rating
94-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity

Specialization

Embedded Software Engineer, DevOps
Senior
Git
Bash
CI/CD
C
Embedded system
Programming microcontrollers
Software development
Algorithms and data structures
System Programming
Development of drivers