|
|
  |
Интерполировать синус по 5 точкам на период, Как сделать просто и точно (дешево и сердито)? |
|
|
|
Oct 19 2016, 13:07
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(ViKo @ Oct 19 2016, 19:33)  Опять Wolfram. Что это за зверь такой? Mathematica. В закромах лежит, попробуйте, имхо куда лучше матлаба.
Цитата(ViKo @ Oct 19 2016, 19:33)  Этот путь понятен. Ходил. У меня есть свой матлабовский файл с полиномами разных степеней. Стряхну пыль, посимулирую.А другие варианты есть? ну брать те же несколько соседних точек и теми же наименьшими квадратами, но уже правда нелинейными, натягивать на них синус, а не полином.
|
|
|
|
Guest_TSerg_*
|
Oct 19 2016, 15:05
|
Guests

|
Сшивание синусоиды параболой по 6-ти точкам ( 5 точек уже явно неудовлетворительно ): http://shot.qip.ru/00gZ9L-1OPovQH3t/По 9-ми точкам вполне удовлетворительно, с т.з. визуализации: http://shot.qip.ru/00gZ9L-5OPovQH3v/P.S. Еще косинусная интерполяция: float CosInterpolate(float v1, float v2, float a) { float angle = a * PI; float prc = (1.0f - cos(angle)) * 0.5f; return v1*(1.0f - prc) + v2*prc; }
|
|
|
|
|
Oct 20 2016, 13:56
|
Знающий
   
Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866

|
Цитата Нет, период не известен. Даже, что синус, тоже притянуто за уши. Просто в документации будет записано "полоса частот такая-то". Если для максимальной частоты у меня выходит 5 выборок АЦП на период, желаю продемонстрировать, что наблюдается "синус". Для демонстрации "синуса" нужно ИМХО смотреть на спектр сигнала и на количество и соотношение гармоник: какие, сколько, каково соотношение между ними и т.д. Из наблюдения за колебанием во временной области ничего разумного заключить нельзя. Поэтому, сделать Фурье, для максимальной частоты будет хорошо наблюдаемая гармоника в районе fs/5, что и требуется показать.
Сообщение отредактировал serjj - Oct 20 2016, 13:58
|
|
|
|
Guest_TSerg_*
|
Oct 20 2016, 15:07
|
Guests

|
Цитата(serjj @ Oct 20 2016, 16:56)  для максимальной частоты будет хорошо наблюдаемая гармоника в районе fs/5, что и требуется показать. Так я и предложил эмуляцию на крайних частотах  P.S. Т.е. должны быть два режима: измерительный (в диапазоне нормальных частот), когда все по честному и тестово-демонстрационный, в диапазоне крайних частот, когда делается симуляция по 1..3 крайним тестовым частотам, значения которых оговорены в ПМ. P.P.S. И это не обман Заказчика, поскольку мы, на основе реальных измерений, алгоритмически выявляем крайние частоты и показываем их наличие в удобной и понятной для всех визуальной форме.
|
|
|
|
Guest_TSerg_*
|
Oct 20 2016, 16:22
|
Guests

|
Цитата(serjj @ Oct 20 2016, 19:12)  Удобная и понятная для всех визуальная форма - это спектр. Да, но у ТС похоже что-то вроде генератора частот с визуализацией сигнала во временной области. Мы не знаем всех ньюансов ТЗ, а потому и гадать не будем.
|
|
|
|
|
Oct 20 2016, 17:38
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
В свое время вот эту статью нашел (здесь в форуме и автор был, и ссылку на эту статью я давал). Также несколько других, представляющих интерес. По этим статьям в MATLAB экспериментировал. Сейчас пересмотрел. Вижу, что интерполяция сплайном Эрмита по 6 точкам, как в статье, дает примерно такой же результат, как интерполяция полиномом 5 степени. Но проще. TSerg, гадание, зачем это нужно, не понадобится, если заглянуть в мой профиль.
|
|
|
|
Guest_TSerg_*
|
Oct 20 2016, 18:09
|
Guests

|
Цитата(ViKo @ Oct 20 2016, 20:38)  гадание, зачем это нужно, не понадобится, если заглянуть в мой профиль Дефки? Голые? Цитата(ViKo @ Oct 20 2016, 20:38)  Вижу, что интерполяция сплайном Эрмита по 6 точкам Косинусом проще и не хуже.
|
|
|
|
|
Oct 21 2016, 11:08
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(ViKo @ Oct 21 2016, 05:38)  Частота выборок в 5 раз больше частоты сигнала - это большая передискретизация? Да. Фильтр простой будет, скажем 5 умножений на константы на входной частоте дискретизации, зависит от требований к подавлению. Цитата(ViKo @ Oct 21 2016, 05:38)  Мне не нужно в реальном времени фильтровать. Поэтому все эти полифазные фильтры, хитроумные перетрахивания операторов (Фарроу) не нужны. Нужны формулы, а как их использовать, найдем способ. Не имеет значения, в реальном, не в реальном, зачем лишние вычисления, параболический Фарроу - простой способ любой отсчёт вычислить промежуточный, но требует побольше чем 5 отсчётов на период, увеличиваем в два раза до 10, половина отсчётов остаётся исходная, нужно вычислить только вторую половину между исходными отсчётами, а это всего лишь ФНЧ симметричный с чётным количеством коэффициентов, который даёт задержку в пол такта исходной частоты дискретизации, единственное требование к которому - АЧХ константная вплоть до вашей крайней частоты.
|
|
|
|
|
Oct 21 2016, 12:01
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(ViKo @ Oct 21 2016, 14:53)  Так а почему сразу по 10 выборкам не интерполировать... Вы 5 на период задали в исходной постановке. Цитата(ViKo @ Oct 21 2016, 14:53)  И почему он столько требует? Потому что простой, чем меньше передискретизация тем сложнее интерполятор для вычисления произвольной точки между исходными отсчётами.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|