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

Кто любит RISC в жизни, заходим, не стесняемся.
Sergi
Мучитель микросхем
Сообщения: 412
Зарегистрирован: Ср янв 04, 2012 11:57:40
Откуда: Алчевск

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

Сообщение Sergi »

Про ток фазы был теоретический пример. Есть такой предмет - теория электропривода. Интересующиеся могут почитать. Я читал когда первый частотник на меге делал лет 10 назад. И разгон и стабилизацию и защиту АД делал.
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

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

Сообщение ivan dimir »

Мне кажется .Что на Меге .Да и не на меге на stm32 одной микросхемы будет мало.
ravr
Открыл глаза
Сообщения: 41
Зарегистрирован: Чт ноя 04, 2021 19:53:46

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

Сообщение ravr »

не в тему так не в тему
Последний раз редактировалось ravr Вт ноя 09, 2021 20:59:43, всего редактировалось 1 раз.
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

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

Сообщение ivan dimir »

Только эта схема не в тему.
Аватара пользователя
EAV_04
Грызет канифоль
Сообщения: 263
Зарегистрирован: Ср май 02, 2012 07:57:31
Откуда: Горно-Алтайск

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

Сообщение EAV_04 »

Повторил я его эксперимент со своим двигателем - результат потребляемая мощность увеличилась в два раза, двигатель быстрее крутиться не стал, мощности не добавилось, но при малых оборотах дергается, потому что ключи открываются тогда когда это не нужно?
Смысл читать все 500 страниц, когда не стыковка на первой странице.

С какой прошивкой и двигателем пробовали, может он звездой подключен? Я кручу этим ПЧ пилу ЭПЧ-3 (220В, 3Квт, 400 Гц) , ручную циркулярку на таком же моторе. Знакомому собрал на компрессор и на циркулярку 3 Квт. от 0 до 75 Гц. все прекрасно работает. При условии, что сеть 220 нормальная.
Подписка уважаемого автора в яндексе.А у нас на Украине он отключён

Там и на Гугле архив есть. Или он тоже у Вас забанен?
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

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

Остается только одно: приобрести самый дешевый китайский частотник на 3 фазы, подключиться во время работы логическим анализатором напрямую к процессору и посмотреть что он выдает.

А повторить, а повторить любую радиолюбительскую конструкцию из инета можно, и много раз.
Аватара пользователя
EAV_04
Грызет канифоль
Сообщения: 263
Зарегистрирован: Ср май 02, 2012 07:57:31
Откуда: Горно-Алтайск

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

Сообщение EAV_04 »

Ну так приобретите, подключитесь , проанализируйте и сделайте своё... Только вопрос зачем, когда все уже придумано. А если у Вас что то пошло не так, то это не значит что это плохая конструкция..
В той теме на 563 стр., тоже было много всяких "блестящих"идей, на разных МК и с разными способами модуляции и управления. Но дальше теории и диванных споров дело ни у кого не пошло. Автор, DC-AC (в миру Дмитрий), использовал не просто 3-х фазный ШИМ ,а генератор скалярной, трёхфазной, пространственно-векторной ШИМ. Сделал свою конструкцию на доступном МК и элементной базе. Популярно изложил теорию и практику изготовление ЧП. С 2014 года ведет поддержку и совершенствование своего проекта, за что ему много раз было сказано большое СПАСИБО , радиолюбителями со стажем и чайниками в силовой электронике...
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

EAV_04 писал(а):сделайте своё...
За чем?
Чем ваше устройство лучше заводского, пусть и китайского?
У нас, сейчас, дешевле купить готовое, чем свое собрать.
Да и было бы что крутить, а так если рассматривать - а лишь бы что б было, это к соседу к моему, у него все есть что душе угодно, и да же больше.
Аватара пользователя
EAV_04
Грызет канифоль
Сообщения: 263
Зарегистрирован: Ср май 02, 2012 07:57:31
Откуда: Горно-Алтайск

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

Сообщение EAV_04 »

Согласен. Но напомню что тему ТС начал с этого :
частотник на stm32 хочу сделать частотник не знаю с чего начать? Сбора инфы.Её мало.3 фазы создать не проблема.В теории по крайней мере.

Добавлено after 10 minutes 15 seconds:
Есть примеры но они размыты .С механическими датчиками.

Я просто пытался ему помочь и подсказать проверенный мной и многими другими вариант ЧП. Я не хотел ни кого учить, обсуждать и доказывать, что лучше или хуже. Купить сейчас можно все, но Радиокот -сайт для самодельшиков, а не обзоров купленных товаров. Мне например нравиться процесс изготовления своими руками и еще больше получаю удовольствия, когда все это заработает и начинает приносить пользу. :beer:
Теперь по поводу этой просьбы:
.........Хорош сам процесс .Но нужно стремиться к результату.Есть 3 фазный двигатель асинхронный 200 герц правда на 36 в.Шлейф машинка 1990г.Есть цель запустить её на полную........

Подскажите как это сделать?

Была в великой и могучей СА машина МТО на базе ЗИЛ 131, там весь инструмент был 36 В 200 Гц
и крутился он от такого ПЧ.
Мой друг в деревне, после развала и растаскивания армии, все это успешно использует с минимальными потярями..
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

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

Сообщение ivan dimir »

Ну спасибо. За добрые напутствия.А кроме этой схемы функциональной в нете я ни чего не встречал.
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

Получил я ваш синус, даже научился амплитуду регулировать, именно тем методом про который тут все торочили, по крайне мере не которые.
Спойлер
Показан синус с одной, скажем так, фазы, примерно синус 100Гц
верхний и нижний ключи работают в паре, один без другого не работает.
Характеристика изменения амплитуды не линейна
Изображение
Если, к примеру, взять за максимум напряжение 220В, то получается
Изображение
Но это все было сделано на Атмега168 16МГц, частота ШИМ 7812Гц,
для формирования отсчетов для 3 фаз требуется ~55% процессорного времени.

Позже посмотрю чего стоит stm32 с его DMA каналами, думаю разрешение ШИМ по боле можно получить, против 255 у Атмеги168.
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

Ну я включаю независимо таймер 1 и таймер 14 - задатчик CCR.
В этом режиме я не могу стабильный синус получить, синусоида дрожит по горизонтали и по вертикали, а местами ожно плавать начинает.
Код таймера
Спойлер

Код: Выделить всё

TIM4->CR1 = 0;
TIM4->CR2 |= TIM_CR2_MMS_2;   // 100: Compare - сигнал OC1REF используется в качестве TRGO
TIM4->PSC = 0;
TIM4->ARR = 512;
TIM4->CCMR1 |= TIM_CCMR1_OC1M;   // 111: режим 2 PWM
TIM4->CCR1 = 359;
а вот так стабильно, как вкопанная
Спойлер

Код: Выделить всё

TIM4->PSC = 0;
TIM4->ARR = 1;
TIM4->CR2 |= TIM_CR2_MMS_1;   // 010: Update - событие обновления формирует сигнал TRGO
Sergi
Мучитель микросхем
Сообщения: 412
Зарегистрирован: Ср янв 04, 2012 11:57:40
Откуда: Алчевск

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

Сообщение Sergi »

Это не я писал. У меня независимые таймеры. TRGO не использую.
В прерывании прописал функцию U/F. Стартует плавно,блок питания не перегружает.
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

Если говорим про stm32, то говорим и про DMA.
А разогнать проц ... я и Мегу могу раскочегарить, Меги с успехом гонятся до 27МГц, а не который экземпляры работают и от 32МГц.

Так что stm32+DMA, для подгрузки измененных таблиц прерывание половинка и полный, и ни каких лишних прерываний.

Вопрос состоит: по чему хваленый OC1REF - TRGO плохо работает? Пока без всяких прерываний, грузим в DMA заранее подготовленную таблицу.
Sergi
Мучитель микросхем
Сообщения: 412
Зарегистрирован: Ср янв 04, 2012 11:57:40
Откуда: Алчевск

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

Сообщение Sergi »

Немного не понятно. Сигнал TRGO используется для синхронизации/тактирования двух и более таймеров. Сигнал запроса транзакции DMA формируется таймером отдельно по условию(переполнение,сравнение). Если вы делаете загрузку регистров TIM1 через DMA по переполнению самого TIM1 из таблицы- это понятно,но зачем здесь TRGO? Если делаете формирование частоты на другом таймере и по его переполнению/сравнению делаете запрос DMA для загрузки параметров в TIM1 CCRx,то зачем здесь TRGO? Связать таймеры? По мне это лишнее.И это все без прерываний. И разгонять ничего не надо. У меня TIM1 работает с предделителем на 9,28 МГц и с центрированным ШИМ выходит 4,64 МГц.
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

Если делать на stm32 как на меге, я бы пошел таким способом, использовал бы всего один таймер, TIM1.
настроил бы его на генерацию шим, к примеру 4кГц, +прерывание по переполнению,
в прерывании использовал бы dds-синтез таблицы синуса
и грузил бы это все в CCR1 CCR2 CCR3.

Просто и, не знаю, может не совсем эффективно.

Но речь идет о stm32 и хваленом DMA, чисто все на аппаратном уровне, возможно это или нет?

Идея состоит в том, что бы TIM4 использовать задатчиком частоты для TIM1.
TIM1 в slave и подключен к сигналу TRGO TIM4.

Я пытаюсь эту частоту с генерировать с помощью ШИМ TIM4, то есть что то вроде сумматора.

Включил для контроля вывод канала ШИМ TIM4, ШИМ идеален, а вот на TIM1 передается с большим джитером.
Sergi
Мучитель микросхем
Сообщения: 412
Зарегистрирован: Ср янв 04, 2012 11:57:40
Откуда: Алчевск

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

Сообщение Sergi »

В моем случае я использую TIM1 просто как формирователь нужного напряжения(тока) на 3х фазах -> 6ти выводах с известным мертвым временем и отключением выходов при активном сигнале BRK. Сколько раз перегрузится таймер 5,50,500 раз не важно. Задал 50% в CCR и получил 50% от напряжения питания. Частота работы зависит от скорости работы ключей, потерь в обмотках и "писка" в ушах. Я выбрал 19,5 кГц. А вот второй таймер генерит и выходную частоту и амплитуду(в случае загрузки TIM1 в прерывании) для загрузки по DMA. И не важно сколько циклов будет работать TIM1: 120 или 121 или 119. Например для получения частоты до 200 Гц с шириной таблицы 120 отсчетов максимальная частота второго таймера должна быть 24 кГц. А для установки выходной частоты с точностью 1 Гц таймер должен работать на частоте не менее 24*200=4,8 МГц.
Чисто аппаратно генерить можно и нужно. Таблицу хранить в ОЗУ. А вот коррекцию таблицы по амплитуде (загрузке в TIM1->CCRx) проводить уже средствами процессора. Разгон -> формирование U/f,перегрузка по току фазы,стабилизация оборотов в случае с АД с обратной связью.
Опять же процессор формирует сигнал брейк при нештатных ситуациях и ключи закрываются и не сгорают или подачу необходимого сигнала для начальной установки ротора и может корректировать старт по таблице со смещением согласно датчиков Холла,если такие предусмотрены, в двигателе с фазным(магнитным) ротором.
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

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

Сообщение ivan dimir »

Управлять наверное нужно напряжение /частота преобразование и частота идёт на таймер 1.Может так.А вот реализация напряжение частота?А датчики Холла где устанавливать?
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

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

Сообщение Dimon456 »

Sergi писал(а):Задал 50% в CCR и получил 50% от напряжения питания.
Вы что, на полуволне регулируете? Покажите таблицу синуса.
Sergi
Мучитель микросхем
Сообщения: 412
Зарегистрирован: Ср янв 04, 2012 11:57:40
Откуда: Алчевск

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

Сообщение Sergi »

Нет,вот часть таблицы - синус,по часовой,120 отсчетов на период,3 фазы,120+-120 единиц амплитуды.

Код: Выделить всё

{{120,224,16},{126,221,13},{133,217,10},{139,213,8},{145,209,6},{151,205,4},
  {157,200,3},{163,196,1},{169,190,1},{174,185,0},{180,180,0},{185,174,0},
  {191,169,1},{196,163,2},{200,157,3},{205,151,4},{209,145,6},{213,139,8},
  {217,133,10},{221,126,13},{224,120,16},{227,114,19},{230,107,23},{232,101,27},
  {234,95,31},{236,89,35},{237,83,40},{239,77,44},{239,71,49},{240,66,55},         //30
  {240,60,60},{240,55,66},{240,49,71},{239,44,77},{237,40,83},{236,35,89},
  {234,31,95},{232,27,101},{230,23,107},{227,19,114},{224,16,120},{221,13,126},
  {217,10,133},{213,8,139},{209,6,145},{205,4,151},{200,3,157},{196,2,163},
  {191,1,169},{185,0,174},{180,0,180},{174,0,185},{169,1,191},{163,2,196},
  {157,3,200},{151,4,205},{145,6,209},{139,8,213},{133,10,217},{126,13,221},      //60
  {120,16,224},{114,19,227},{107,23,230},{101,27,232},{95,31,234},{89,35,236},
  {83,40,237},{77,44,239},{71,49,239},{66,55,240},{60,60,240},{55,66,240},
  {49,71,239},{44,77,238},{40,83,237},{35,89,236},{31,95,234},{27,101,232},
  {23,107,230},{19,114,227},{16,120,224},{13,126,221},{10,133,217},{8,139,213},
  {6,145,209},{4,151,205},{3,157,200},{2,163,196},{1,169,191},{0,175,185},         //90
  {0,180,180},{0,185,175},{1,191,169},{2,196,163},{3,200,157},{4,205,151},
  {6,209,145},{8,213,139},{10,217,133},{13,221,126},{16,224,120},{19,227,114},
  {23,230,107},{27,232,101},{31,234,95},{35,236,89},{40,237,83},{44,239,77},
  {49,239,71},{55,240,66},{60,240,60},{66,240,55},{71,239,49},{77,239,44},
  {83,237,40},{89,236,35},{95,234,31},{101,232,27},{107,230,23},{114,227,19}      //120
  }


Добавлено after 7 minutes 20 seconds:
Например я делаю коррекцию по току. Во время одного периода измеряю ток,во время следующего выдаю измененную таблицу согласно измерениям. Еще проверяю на превышение максимума, тогда делаю аварийный стоп.

Добавлено after 5 minutes 31 second:
Это часть таблицы. Она многомерная,есть прямоугольник,можно изменить на трапецию (читал что так больше энергии используется на пользу), и это все вдвойне - против часовой.
Ответить

Вернуться в «ARM»