Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: частотник на stm32f4

Пн ноя 15, 2021 21:49:22

Мои 3 фазы на attiny44, управление по частоте и амплитуде.
3x.jpeg
(122.49 KiB) Скачиваний: 1373

Re: частотник на stm32f4

Пн ноя 15, 2021 21:57:10

И все таки мне не понятно
Sergi писал(а):Задал 50% в CCR и получил 50% от напряжения питания.
насколько я понимаю, что бы получить 50% надо синус сжать не только с верху но и с низу.

Re: частотник на stm32f4

Пн ноя 15, 2021 22:07:17

Представьте что одна фаза это управляемый ЦАП. Максимум - напряжение питания,минимум - 0, а середина 1/2 питания.Если на всех фазах будет 1/2 питания ток не потечет,разница напряжений = 0. А как часто и по какому закону мы будем ему давать утавки его не касается, он должен отработать цифру в напряжение. У нас 3 ЦАП и управляем ими через 120 градусов, вот и все. Еще бывают двухфазные контроллеры - для шаговых двигателей, там тоже можно синус сделать при дроблении шага.

Re: частотник на stm32f4

Пн ноя 15, 2021 22:14:07

Так
или не так?

Re: частотник на stm32f4

Пн ноя 15, 2021 22:16:12

Я управление не увидел.Только 3 фазы.Контроллер На attini44?.

Re: частотник на stm32f4

Пн ноя 15, 2021 22:18:26

Так,только для удобства длина таблицы должна быть кратна 3м. Амплитуда любая 8-16 бит,"максимум - 1" записать в TIM1->ARR.

Re: частотник на stm32f4

Пн ноя 15, 2021 22:24:54

Sergi писал(а):Так
мне все равно не понятно
Sergi писал(а):Задал 50% в CCR и получил 50% от напряжения питания.
или может таймер в stm умеет так делать.
Я вот формулу использовал, что бы нижний край поджать и в результате у меня вот такая вот х получилась, нелинейная

Re: частотник на stm32f4

Пн ноя 15, 2021 22:32:04

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

Re: частотник на stm32f4

Пн ноя 15, 2021 22:40:49

Я управление не увидел.Только 3 фазы.Контроллер На attini44?.

Управление по двум АЦП.

Re: частотник на stm32f4

Пн ноя 15, 2021 22:51:25

Sergi писал(а):Смотреть статьи про ЦАП на таймере.
А ссылку на эту статью можно?

Re: частотник на stm32f4

Пн ноя 15, 2021 22:56:52

я ни чего там не увидел.3 фазы а если сделать 3 фазы прямые и 3 инверсные можно программно.Ваша атини позволяет выполнить данную задачу?

Re: частотник на stm32f4

Пн ноя 15, 2021 23:21:44

я ни чего там не увидел.3 фазы а если сделать 3 фазы прямые и 3 инверсные можно программно.Ваша атини позволяет выполнить данную задачу?

Процессор управляет выходными драйверами, которые обеспечивают инверсию и мертвую зону программно или схемно. Драйвера брал с контроллера мотор колеса, уже не помню схему, 10 лет прошло. Крутил 3-х фазный двиг. ЖД стрелочного перевода МСТ-0.3.

Re: частотник на stm32f4

Вт ноя 16, 2021 06:33:36

Первый результат в гугле - https://russianblogs.com/article/2448851884/

Re: частотник на stm32f4

Вт ноя 16, 2021 07:58:14

А, ну теперь понятно все стало.
Stm таймер, а особенно такой продвинутый, как TIM1 умеет считать амплитуду синуса в любой момент времени, достаточно задать
Sergi писал(а):Задал 50% в CCR и получил 50% от напряжения питания.
Всегда считал, что модуль CRC бесполезен, лучше бы за место его синусоидальный генератор или таблицу Брадиса засунули.

Re: частотник на stm32f4

Вт ноя 16, 2021 08:43:53

Dimon456 писал(а):Всегда считал, что модуль CRC бесполезен

для силового преобразователя очень полезен в комплексе с dma. позволяет в фоновом низкоприоритетном режиме осуществлять циклический контроль целостности прошивки не отвлекая вычислительные мощности.

Re: частотник на stm32f4

Ср ноя 17, 2021 17:09:24

Такая интересная тема и заглохла, давайте продолжим.

Разберем первую проблему
В моем случае я использую TIM1 ... Я выбрал 19,5 кГц. А вот второй таймер генерит и выходную частоту и амплитуду(в случае загрузки TIM1 в прерывании) для загрузки по DMA. И не важно сколько циклов будет работать TIM1: 120 или 121 или 119. Например для получения частоты до 200 Гц с шириной таблицы 120 отсчетов максимальная частота второго таймера должна быть 24 кГц. А для установки выходной частоты с точностью 1 Гц таймер должен работать на частоте не менее 24*200=4,8 МГц.
А как ты решил проблему рассинхронизации?
Насколько я понимаю, в TIM1 работающий на частоте 19,5кГц, мы должны подавать частоты кратные, к примеру 19,5 39 78 и тп, и так же в низ 19,5 9,75 4,875.
А когда 24 кГц и 19,5 кГц ... здесь да же буферизация TIM1 не поможет, мы же работает не на rc-цепочку 10кОм+100nF, которая могла бы сгладить не впопад выбросы?

Вторая проблема, моя проблема, dds-синтез таблицы на этом же таймере TIM1.
С буферизацией проблем нет, это большой плюс.
Проблема заключается в следующем:
при частоте работы таймера TIM1 4кГц и формируемой выходной частоте 200Гц требуется 20 точек таблицы синуса,
при частоте таймера TIM1 8кГц и той же частоте 200Гц уже 40 точек,
при TIM1 16кГц 200Гц 80 точек.

Вот и так крути и эдак крути, либо рассинхронизация, либо не достаточное количество точек.

Re: частотник на stm32f4

Ср ноя 17, 2021 20:15:42

А мне кажется чем больше точек у синуса тем лучше характеристика синуса.А так не синус а пила какая то

Re: частотник на stm32f4

Чт ноя 18, 2021 06:54:39

Немного теории. Момент на валу двигателя зависит от магнитного потока в обмотках. Магнитный поток создается ТОКОМ в обмотках. Так как обмотка двигателя упрощенно представляет собой RL фильтр, для создания синусоидального тока необходимо синусоидальное напряжение. Это относится 99% двигателей и обусловлено конструкцией обмоток статора и короткозамкнутого или намагниченного ротора. Есть специальные двигатели которым нужна другая форма тока, например некоторые модельные безщеточные питают прямоугольным напряжением.
Питание обычного АД напряжением отличным от синусоидального возможно, но есть недостатки. Полезную работу в основном создает первая гармоника. Четные гармоники только греют обмотки и железо. Нечетные еще какой-то вклад на пользу имеют, но минусов больше. Поэтому мы стараемся сделать синус. Отличия формы тока синуса от идеала покажут что есть гармоники.
Согласен что в моем случае на высоких частотах (выше 160 Гц) новое задание для ССРх будет приходить раньше чем таймер отработает 240 отсчетов. Максимальная ошибка будет при несовпадении частот задания и ШИМ на 1/4 периода. И чем выше частота тем больше вклад ошибки в результат. И форма напряжения отличается от синуса. Я провел эксперимент и увеличил частоту ШИМ вдвое. Ключевые транзисторы не стали греться сильнее,до обмоток не добрался.Поведение двигателя не изменилось. Мало того даже при питании прямоугольным напряжением форма тока обмоток была близка к синусоидальной. Двигатель очень хороший RL фильтр. И да, ток в истоках транзисторов нижнего плеча имеет отрицательную полуволну. Это работают обратные диоды (в моем случае транзисторы нижнего плеча) замыкая ток обмотки когда верхние ключи закрываются.
Делать ли какую-то синхронизацию таймеров? Пока не решил. Покручу мотор,посмотрю.Может на трапецию перейду.

Re: частотник на stm32f4

Чт ноя 18, 2021 08:04:26

Sergi писал(а):и увеличил частоту ШИМ вдвое
это смотря что применяем:
IRG4PH50UDPbF UltraFast: Optimized for high operating frequencies up to 40 kHz in hard switching
IRAMX16UP60B FPWM=16kHz
а эти FGH40N60SFD тупа не идут, горят как спички.
Sergi писал(а):когда верхние ключи закрываются
открываются нижние ключи, за минусом Dead-time. Да же и слушать не хочу про обратные диоды.
Sergi писал(а):Делать ли какую-то синхронизацию таймеров?
как можно синхронизировать не синхронизируемое, сами же пишите
Sergi писал(а):на высоких частотах (выше 160 Гц) новое задание для ССРх будет приходить раньше чем таймер отработает 240 отсчетов
Это не только на высоких частотах, но и на низких, таймер будет пропускать чуть ли не половину таблицы.

Re: частотник на stm32f4

Чт ноя 18, 2021 09:49:48

Нет,таблицу отрабатываю всю. Я писал про один отсчет таблицы. На осциллограмме склоны синуса получаются неровными/горбатыми. Неровности увеличиваются когда частоты становятся близкими. При разнице в 10 раз ошибка должна быть не более 2,5%. Вот и думаю - зачем мне именно синус? Если таблицу укоротить до 30 на вид будет тоже самое,но стабильнее. При прямоугольнике таблица 6 отсчетов.
Ответить