16+
Пятница
22 июня
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Кибернетика

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Nikolay_Po  (05.12.2017 13:13) , в ответ на Согласен. Задержку именно так и реализую. автор: mg
ПМСМ, имея камень с DSP-функциями, способный на произведение векторов и небольшие преобразования Фурье, можно на каждый шаг вычислять взаимокорреляционную функцию между сигналом из ПЗУ и входным сигналом. 
При этом можно убрать компаратор со входа и работать с сигналом АЦП после фильтра для менее дискретного, более "аналогового" определения фазы входного сигнала. Для оценки фазы входного сигнала, можно взять небольшой его отрезок, но такой, чтобы поместились три символа для надёжного захвата. Может оказаться полезным применение оконной функции. Проще всего треугольное окно. На этапе перемножения с окном, полезно выполнить масштабирование амплитуды для снижения ошибок квантования целочисленных БПФ. Имеем указатель фазы и переменную частоты. Указатель указывает на сигнал в ПЗУ, совпадающий с фазой входного сигнала. Каждый такт ФАПЧ вычисляете взаимокорреляционную функцию (ВКФ) входного отрезка с отрезком из ПЗУ по указателю. По пику этой функции видите абсолютный сдвиг фазы от указателя фазы. Для точности, пик определяете по трём точкам в районе максимума, чтобы снизить влияние дискретности отсчётов входного сигнала по времени. Корректируете положение указателя фазы и значение частоты с учётом полученного сдвига. Таким образом, если фаза и частота определены верно, пик ВКФ будет приходится на ноль оси времени. Тем временем, по прерываниям, на более высокой частоте, формируете выходной сигнал, используя свой указатель фазы, применяя к нему заданный фазовый сдвиг и приращивая в соответствии с частотой, обновлённой в коде ФАПЧ. Каждый такт петли ФАПЧ, указатель выходной фазы и значение частоты (скорости) обновляются. При этом выходной сигнал будет иметь малую дискретность по времени, так как формируется на более высокой частоте. Скорость реакции будет зависеть от размера отрезка взаимной корреляции и периода ФАПЧ. Больше размер - больше период усреднения фазы. Нужно правильно подобрать отрезок. Частота выборки ФАПЧ должна быть раза в три выше битовой скорости сигнала, а сравниваемые отрезки содержать примерно три символа, чтобы избежать перескоков. Если вариации частоты сигнала не велики, и в пределах трёх символов выбег по скорости менее половины символа, будет работать и на фиксированной тактовой частоте петли. Если вариация частоты велика, то придётся подстраивать и скорость выборки входного сигнала, и тактовую частоту петли ФАПЧ таким образом, чтобы сравниваемый отрезок взаимокорреляции всегда был примерно одного размера - три символа. Скорость воссоздания выходного сигнала остаётся фиксированной. Вопрос: хватит ли производительности МК? На dsPIC33EP, за менее чем 50% времени CPU, мне удавалось выполнять две ВКФ с частотой выборки 1024Гц и размером 256 отсчётов. На ARM'ах как - не знаю, только предстоит освоить.
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7526 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII