Перейти к содержанию
    

Nikolay_Po

Участник
  • Постов

    9
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. Беру полосовой фильтр 4-го порядка, такой: z plane Denominator Numerator 0 1.000000000E+000 4.897393680E-002 1 3.156595753E+000 1.382087237E-001 2 4.297982543E+000 1.831212979E-001 3 2.864855754E+000 1.382087237E-001 4 8.248016793E-001 4.897393680E-002 В Octave: tf2sos([4.897393680E-002, 1.382087237E-001, 1.831212979E-001, 1.382087237E-001, 4.897393680E-002], [1.000000000E+000, 3.156595753E+000, 4.297982543E+000, 2.864855754E+000, 8.248016793E-001]) ans = 0.048974 0.093684 0.048974 1.000000 1.675990 0.919131 1.000000 0.909161 1.000000 1.000000 1.480605 0.897371 Так и должно быть? Коэффициенты - эллиптического фильтра из ELLF.EXE (Copyright 2014 by Stephen L. Moshier, http://www.moshier.net/ellf.zip). На входе tf2sos 10 коэффициентов, 9 не считая a0. А на выходе 12 коэффициентов, из них значащих всего 8. Немного странно. Или это свойство эллиптического фильтра? Вот Баттерворт с той же полосой: z plane Denominator Numerator 0 1.000000000E+000 7.242292251E-003 1 3.118290694E+000 0.000000000E+000 2 4.185016757E+000 -1.448458450E-002 3 2.742317079E+000 0.000000000E+000 4 7.742169529E-001 7.242292251E-003 Octave: tf2sos([7.242292251E-003, 0.000000000E+000, -1.448458450E-002, 0.000000000E+000, 7.242292251E-003], [1.000000000E+000, 3.118290694E+000, 4.185016757E+000, 2.742317079E+000, 7.742169529E-001]) ans = 0.0072423 0.0144846 0.0072423 1.0000000 1.6355921 0.8908491 1.0000000 -2.0000000 1.0000000 1.0000000 1.4826986 0.8690775 Нужно проверять работу таких каскадов. Отпишусь по результатам. Удивительно, но это работает! Вставил результат tf2sos, всего два каскада, после пересчёта в 16-бит целые в цепочку фильтров модели системы. Работает! Не думал, что так просто. Потратил много времени на самообучение, многое понял, но результата не было до сих пор. Нужно было спросить совета раньше. andyp, спасибо за помощь!
  2. Спасибо, signal в дистрибутив для Windows действительно включён: signal | 1.3.2 | C:\Octave\OCTAVE~1.1\share\octave\packages\signal-1.3.2 Пробую, но пока ничего не выходит с Октавой. Пробую преобразование полосового фильтра: >> help lp2bp error: help: the 'lp2bp' function belongs to the signal package from Octave Forge but has not yet been implemented. Жаль... tf2sos есть в наличии. Разбираюсь.
  3. Дело в том, что сам сервер пакетов лежит. Что из консоли Октавы "error: get_forge_pkg: could not read URL, please verify internet connection", что по кнопке "Browse Packages": "Sourceforge project sites are currently under maintenance. Please check back later. We thank you for your patience."
  4. Спасибо за подсказку пакета. Попробую, отпишусь. Жаль, сервер с пакетами Октав сейчас "лежит" на обслуживании: "Sourceforge project sites are currently under maintenance. Please check back later. We thank you for your patience".
  5. Нет. Библиотечные фильтры SIMD работают только с вещественными коэффициентами. Есть способ, пусть ценой увеличения количества каскадов, добавить комплексно-сопряжённые множители? Спасибо. Посмотрел тему. Свелось к рекомендации использовать готовые функции Mathlab. Мне нужна лицензионная чистота для коммерческого применения. Покупать Mathlab не планирую. Попробую поискать в GNU Octave. До сих пор использовал CRAN R, но в R не нашёл таких функций, к сожалению.
  6. Здравствуйте! Стоит задача разбить цифровой фильтр 4-го порядка (верно?) на каскад биквадратных звеньев. Нули и полюсы рассчитал при помощи программы ELLF.EXE. Полюсы и нули такие: Полюсы Нули Re Im Re Im 1 -0.76593 0.62206 -0.18492 0.98275 2 -0.86692 0.47769 -0.97603 0.21763 3 -0.78424 0.56677 -0.61162 0.79115 4 -0.82839 0.50674 -0.93307 0.35970 Вот так они лежат на z-плоскости: Хочу разбить на биквадртаные звенья для использования с библиотекой CMSIS DSP. У меня уже успешно работает каскад из двух биквадратных фильтров CMSIS (рассчитал коэффициенты численным методом). Но тем же способом рассчитать с нуля более сложный фильтр не выходит. Слишком много локальных минимумов и экстремумов у оценки результата. Поэтому хочу попробовать классическими методами. К сожалению, в своё время не освоил ЦОС в должном объёме. Прошу помощи. Выше нули и полюсы полосового фильтра, удовлетворяющего мои требования. Нужно разбить фильтр на биквадратные каскады. Как я понимаю задачу, у меня фильтр четвёртого порядка. Но его нули и полюсы - не комплексно-сопряжённые. А биквадратное звено - второго порядка, но с комплексно-сопряжёнными нулями и полюсами. Или я не верно понимаю? Если верно, значит, для фильтра четвёртого порядка понадобиться больше двух звеньев второго порядка. Это не страшно, ресурсы позволяют задействовать до восьми биквадратных звеньев (лучше до 6). Но как их разбивать? Выписывать на бумагу нули и полюсы и раскрывать их произведения? Какие есть приёмы? Спасибо.
  7. Переферия в серии EP работает медленнее ядра. Обращение, в том числе и к регистрам специального назначения, занимает два такта, а не один, как в предыдущих сериях dsPIC и PIC24. Таймер же имеет прямую связь с выводом, поэтому результат совпадает с ожидаемым. Вдруг кому пригодится.
  8. [sOLVED] Это N-Channel UltraFET Power MOSFET 80 V, 75 A, 14 mΩ Нужно было смотреть нижнюю строку маркировки, а не верхнюю. Всем спасибо за внимание! B)
  9. Помогите найти данные транзисторов, фото ниже. Предыстория тоже. При работе от батарей, когда аккумуляторы уже были на исходе, вероятно от удара молнии (была гроза, ИБП стоял на чердаке) вышибло пару ключей IGBT на "высокой" стороне. Выход преобразователя, +/-400В, оказался закорочен. Что привело к выходу из строя всех 12-шт ключей мостовой схемы на "низкой" стороне. Так как батареи уже были на исходе, ничего, кроме ключей, не сгорело. Ни предохранители на батарейном разъёме, ни резисторы в цепях затворов, ни драйверы что по низкой, что по высокой стороне. Всё тихо-мирно "схлопнулось" в ноль без дыма и взрывов. Все корпуса транзисторов целы, затворы звонятся как единицы Ом, сток-исток порядка 6..9мОм. Спеклись. Но драйверы без повреждений: сетевое питание отсутствовало, а аккумуляторы на последнем издыхании не смогли дать достаточно тока для взрывов и пламени.
×
×
  • Создать...