Например TDA7294

Форум РадиоКот • Просмотр темы - частотник на stm32f0
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вс окт 06, 2024 19:22:18

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 65 ]    , , 3,  
Автор Сообщение
В сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 13:01:50 
Сверлит текстолит когтями

Карма: -11
Рейтинг сообщений: 118
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1212
Рейтинг сообщения: 0
Я же сказал - это шутка, но, к примеру, на F100 с размером флеша 128кБат вполне реализуем.
F100 - это Cortex-M3 что-ль? На нём тем более таблицы глупо использовать. Потому как по формуле синусоиду генерить - однозначно быстрее.

А вы пытаетесь туда затрамбовать 65536 отсчетов.
Максиму что таймер возьмет 65536/10000 = 6,5536
Ничего не понятно... Что такое "65536/10000"? Причём тут оно. Зачем что-то куда-то "трамбовать"?
Складывается впечатление что вы не понимаете как работает ШИМ.... :dont_know:

Еще раз, коэффициент гармоник для ступенчатой функции не зависит от количества точек таблицы, единственное что меняется, это дискретность таблицы, градусов.
Так по сколько градусов будут скачки вашей синусоиды по таблице размером 128 отсчётов?
Разницу между скачками 360/128 градусов (у вас) и 360/65536 градусов (у меня) понимаете?
Если для вас нет разницы между ними?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 13:43:46 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
jcxz писал(а):
Складывается впечатление что вы не понимаете как работает ШИМ....
Ну дык объясни.
Объясни мне, не понимающему, как в таймер, принимающий 10000 отсчетов, запихать 65536 отсчетов с генерированных
jcxz писал(а):
по формуле синусоиду генерить - однозначно быстрее.
jcxz писал(а):
Разницу между скачками 360/128 градусов (у вас) и 360/65536 градусов (у меня) понимаете?
Вопрос не уместен, пока на выше вопрос не ответите.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 14:01:42 
Сверлит текстолит когтями

Карма: -11
Рейтинг сообщений: 118
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1212
Рейтинг сообщения: 0
Объясни мне, не понимающему, как в таймер, принимающий 10000 отсчетов, запихать 65536 отсчетов
Нет, не смогу. Так как не знаю ни что такое "таймер принимающий 10000 отсчётов", ни что такое эти "отсчёты" и зачем они нужны для генерации синусоиды? :shock:
Вроде любой вменяемый человек должен знать, что синусоида генерится по формуле y=sin(x); где x - угол изменяющийся со скоростью генерируемого синуса. И вызывается эта функция с частотой ШИМа.
У меня угол (x) имеет точность = 16 бит. Результат sin(x) - тоже 16 бит. Отсюда и качество генерируемой синусоиды.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 14:15:16 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: -3
Вот уже кое что
jcxz писал(а):
И вызывается эта функция с частотой ШИМа.
А частота ШИМ, к примеру, 10кГц.
jcxz писал(а):
Результат sin(x) - тоже 16 бит.
Мы об этом уже говорили
jcxz писал(а):
Разрешение ШИМ определяется соотношением = частота_тактирования_таймера/частота_ШИМ
Ну и, хочу шим 10кГц 16БИТ
Dimon456 писал(а):
FFFF*10кГц = 655МГц


Вернуться наверх
 
Дискретные силовые полупроводники SUNCO для широкого применения

Компания SUNCO выпускает такие компоненты, как Si- и SiCFET-транзисторы, дискретные IGBT и IGBT-модули, SiC-диоды, диодные мосты, диоды Шоттки, TVS-диоды, TVS-тиристоры и многое другое, являясь одним из крупнейших в мире производителей дискретных полупроводниковых компонентов с полным циклом производства и продаж. Продукция компании применяется ведущими мировыми производителями. В статье можно ознакомиться с ассортиментом продукции.

Подробнее>>
В сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 14:49:17 
Сверлит текстолит когтями

Карма: -11
Рейтинг сообщений: 118
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1212
Рейтинг сообщения: 3
Ну и, хочу шим 10кГц 16БИТ
Dimon456 писал(а):
FFFF*10кГц = 655МГц
Вы похоже не понимаете что такое ШИМ, что такое "частота ШИМ-а". Советую почитать специальную литературу.

А вот так генерится синусоида с хорошей точностью по частоте и с максимально возможной точностью по амплитуде (для данного ШИМ-таймера). Без всяких таблиц и прочей чуши:
Код:
#define F_TIM 16000000 //[Гц] частота тактирования таймера
#define F_PWM 10000    //[Гц] частота ШИМ-а
#define F_SIN 15       //[Гц] частота синусоиды

#define B16 0x00010000ul
#define divRound(a, b) (((a) + (b) / 2u) / (b)) //деление a/b с округлением до ближайшего целого
#define PHASE_STEP (divRound((u64)F_SIN << 32, F_PWM)) //шаг фазы генератора; формат U0.32
#define PERIOD_TIM (F_TIM / F_PWM)                     //период таймера ШИМ

//Sinus. {x} == angle[rad] / PI * 2^15
//return: {-2^15+1...+2^15-1} == {-1...+1}
s16 Sine(s16 x) { ... }

u16 magnitude = ...;  //должно быть в диапазоне 0...PERIOD_TIM

void Gen() //выполняется с частотой F_PWM
{
  static u32 phase;
  phase += PHASE_STEP;
  u16 x = phase >> 16;
  u16 ccr0 = ((u32)((s32)sin(x + B16 * 0 / 3) * magnitude) >> 16) + PERIOD_TIM / 2;
  u16 ccr1 = ((u32)((s32)sin(x + B16 * 1 / 3) * magnitude) >> 16) + PERIOD_TIM / 2;
  u16 ccr2 = ((u32)((s32)sin(x + B16 * 2 / 3) * magnitude) >> 16) + PERIOD_TIM / 2;
  //ccr0,ccr1,ccr2 - значения, записываемые в регистры сравнения таймера для всех 3-х фаз
}
Изучайте.

Примерно так у меня и реализовано. Частоту можно менять плавно, амплитуду - тоже. Никаких дёрганий и вибраций на любой скорости вращения.
Естественно - это только псевдокод. В реале у меня он оптимизирован (вычисляется не один сэмпл за раз, а массив сэмплов; из которого потом ISR ШИМ-а пихает значения в регистры сравнения таймера). И вычисления все оптимизированы под STM8.
И в реале у меня F_SIN - не константа, а также может плавно меняться, для плавного разгона/торможения. Точнее - плавно меняется производная от неё величина - PHASE_STEP.


Вернуться наверх
 
Материалы вебинара «Пленочные конденсаторы Hongfa для источников питания и силовой электроники»

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 18:00:24 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
jcxz писал(а):
Вы похоже не понимаете что такое ШИМ, что такое "частота ШИМ-а".
Возможно и не понимаю.
Из приведенного вами кода вижу следующее:
В основе кода лежит dds синтез
Код:
  static u32 phase;
  phase += PHASE_STEP;
  u16 x = phase >> 16;
32 разрядный сумматор, на stm32 операция бы выполнялась за один так, ну или около того +-.
Сдвиг на 16 бит приводит результат к 16 битам.
Что далее:
Код:
F_PWM 10000    //[Гц] частота ШИМ-а
Код:
#define PERIOD_TIM (F_TIM / F_PWM)                     //период таймера ШИМ
Период таймера ШИМ составляет 16000000/10000 = 1600
Было бы 1023 я бы сказал что 10 битный ШИМ, 2048 - 11 битный ШИМ, 1600 - что-то между 10 и 11 бит. Но всяко ШИМ не 16 бит.
Отсюда следует что в регистр ARR таймера должно быть записано PERIOD_TIM.

Что далее: синус мне не удалось посчитать и сравнить, скорее всего используется компилятор с++, так как sin(x) принимает тип float.
Остается загадкой
Код:
//Sinus. {x} == angle[rad] / PI * 2^15
хотя возврат
Код:
//return: {-2^15+1...+2^15-1} == {-1...+1}
и что это
Код:
s16 Sine(s16 x) { ... }
возможно какая-то таблица создается на этапе компиляции.
Одним словом...

Но все таки я посчитал синус и сравнил
Спойлер
Код:
      65536 точек      128 точек
            
0      800,00      800,00
512      839,25      839,25
1024      878,41      878,41
1536      917,38      917,38
2048      956,07      956,07
2560      994,38      994,38
3072      1032,23      1032,23
3584      1069,51      1069,51
4096      1106,15      1106,15
4608      1142,04      1142,04
5120      1177,12      1177,12
5632      1211,28      1211,28
6144      1244,46      1244,46
6656      1276,56      1276,56
и вот же зараза какая, да же с десятичными знаками циферка в циферку совпадает.
Просто, ради интереса, какой компилятор используется и сколько полностью код выполняется?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 19:04:46 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 411
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2491
Рейтинг сообщения: 0
и вот же зараза какая, да же с десятичными знаками циферка в циферку совпадает.
Во всех 511 точках между каждой из 128 совпадает?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вт дек 21, 2021 22:57:13 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
VladislavS, это частный случай, на каких-то кратных частотах.
Этот друг полином считает, сразу бы сказал, только что точнее будет
СпойлерИзображение
слева на право: библиотечная функция avr-gcc, таблица в 65536 точек, 128 и 256 для сравнения, и последнее fix полином.
Время выполнения на какой-то частоте МК, не важно.
16 и 32 это числа сумматора на частоте 50 Гц.
и с другой стороны, а как насчет такого фикса?
СпойлерИзображение


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Чт дек 23, 2021 12:48:24 
Сверлит текстолит когтями

Карма: -11
Рейтинг сообщений: 118
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1212
Рейтинг сообщения: 0
Было бы 1023 я бы сказал что 10 битный ШИМ, 2048 - 11 битный ШИМ, 1600 - что-то между 10 и 11 бит. Но всяко ШИМ не 16 бит.
И что? Главное - синус считается с точностью 16 бит. А фаза (угол) - вообще с точностью 32 бита. Это и даёт точность выходного сигнала по частоте и уровню.

скорее всего используется компилятор с++, так как sin(x) принимает тип float.
Вы исходники си-шные читать умеете? Где вы там видите sin(float ...)? Вы видите там объявление функции Sine()? Как она объявлена и комментарий к ней прочитали? Там совершенно явно указаны типы аргумента и результата функции. Перечитйте ещё раз.
Кроме того - ранее я уже писал что большая часть кода - на ассемблере. Тот исходник, что я привел - псевдокод, иллюстрирующий алгоритм вычислений (так как если даже си тут похоже мало кто понимает, то ассемблер STM8 боюсь вообще никто не сможет понять :dont_know: ). В реальности код этот у меня написан на ассемблере.

возможно какая-то таблица создается на этапе компиляции.
Да уж.... похоже неизлечимый случай.... У вас какая-то зацикленность на таблицах. :dont_know: 4-й раз повторяю: Я НЕ ИСПОЛЬЗОВАЛ ТАБЛИЦ. Никаких.

Вспоминайте школьный курс математики и вычисление функций при помощи полиномов. Синус прекрасно аппроксимируется полиномом 7-го порядка. Ещё раз: совершенно без таблиц! И с точностью лучше 16 бит.

и вот же зараза какая, да же с десятичными знаками циферка в циферку совпадает.
Теперь возьмите квадрат, измерьте его от 1-го угла до 3-го, а потом от 2-го до 4-го. Результаты совпали? Совпали. Получили = X. Теперь возьмите окружность диаметром = X, измерьте её диаметр. Равен X. Вот же зараза - и у квадрата тоже по всем сделанным измерениям получили X! Означает ли это, что квадрат полностью аналогичен окружности? :)))
Означает ли это, что если колёса сделать квадратными, то телега будет ездить так же, как на круглых? :)))
Вот это примерно то же самое, что вы сделали.

Просто, ради интереса, какой компилятор используется и сколько полностью код выполняется?
Компилятор - IAR (на 8К он даже бесплатен, старые его версии), 2-й вопрос - неясен. Очевидно, что код выполняется от момента включения контроллера до его выключения. :dont_know:

Добавлено after 7 minutes 27 seconds:
это частный случай, на каких-то кратных частотах.
Ещё раз читаем пример про круг и квадрат. И пытаемся постигнуть смысл аллегории....


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Чт дек 23, 2021 15:08:01 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
jcxz писал(а):
4-й раз повторяю: Я НЕ ИСПОЛЬЗОВАЛ ТАБЛИЦ. Никаких.
Dimon456 писал(а):
Этот друг полином считает, сразу бы сказал
Мне не удалось найти в инете готового решения
Код:
{-2^15+1...+2^15-1}
единственное что нашлось
Код:
{-2^14 ... 2^14}
Вам удалось создать "инвертор" с чистым синусом
jcxz писал(а):
Синус прекрасно аппроксимируется полиномом 7-го порядка.
У меня комповый бесперебоник есть с полиномом 3-го порядка.
jcxz писал(а):
Очевидно, что код выполняется от момента включения контроллера до его выключения.
Имелось ввиду сколько времени тратится на расчет одной точки. Я привел пример 16,25us.

Но вы забыли одно, dds-синтез таит в себе один минус, и чем частота ШИМ ниже, тем этот минус больше становится.
Но это, в принципе, не важно.

Для частотных приводов ШИМ лежит в районе 4кГц, а "восмикрут", который уже куча людей собрало и продемонстрировало, использует таблицу всего в 18 точек.

Вашим способом довольно трудно получить
Спойлертакого рода формы сигнала
Изображение
не нравится таблица в 128 точек, и есть куча флеш памяти, используйте таблицу в 256 точек, 512 точек, до хоть в 32кБайта, и с любым разрешением ШИМ, хоть 8 бит, хоть 10 бит, хоть ваши 1600.

PS. Тут в одном проекте, для вывода на ws2812, использовали таблицу в 2048 байт, и не че, хотя можно было бы и на лету рассчитывать, сэкономили бы 2 кило флеша и + потратили бы насколько лишних десятков тактов.

Все, дискуссия на эту тему закончена.


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Чт дек 23, 2021 23:08:28 
Сверлит текстолит когтями

Карма: -11
Рейтинг сообщений: 118
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1212
Рейтинг сообщения: 0
Мне не удалось найти в инете готового решения
За инет ничего не скажу, я последние ~15 лет использую такой код:
Код:
//Синус. Аргумент R0 == угол[радиан] / PI * 2^31
//Результат: R0{-2^31+1...+2^31-1} == {-1...+1}
s32 sine(s32 x)
{
  static s32 const sineT[] = {
    -248273015,  //A6=-0.9248890576
    845095976,   //A5=3.1482278419
    -53406011,   //A4=-0.1989528976
    -1377768453, //A3=-5.1325874557
    -830572,     //A2=-0.0030941259
    843345115,   //A1=3.1417053758
    -266};       //A0=-0.0000009929
  s32 const *p = sineT;
  s32 i, y;
  if ((i = x << 1) < 0) i = -i;
  i >>= 1;
  y = *p++;
  do y = (s32)((s64)y * i >> 31) + *p++;
  while (p != sineT + ncell(sineT));
  if ((y <<= 2) < 0) y = -y;
  if (y >> 30) y = B30 - 1;    //ограничим диапазоном 0...2^30-1
  if (x < 0) y = -y;
  return y << 1;
}

На STM8 портировал его на 16 бит и перевёл в асм. Если интересно - могу закинуть.

Имелось ввиду сколько времени тратится на расчет одной точки. Я привел пример 16,25us.
Железа готового под рукой нет, а вручную считать лень. Но думаю у меня конечно значительно больше загрузка CPU. Если не изменяет память, то загрузка CPU при работе мотора была 80-90%. Правда это суммарно - туда ещё работа с UART-ами входит и пр., но львиная доля это конечно генерация синусоид.

Вашим способом довольно трудно получить такого рода формы сигнала
На STM8? Так красный - это же обычная синусоида. Она у меня как раз и получается.
Синий - похож на векторную модуляцию. Тоже непонятно почему "трудно получить"? На STM8 я его не реализовывал, а на Cortex-M как раз с помощью той же sine() и получаю. Причём для него нужно ещё меньше - всего 2 вызова sine() на квант, а не 3 (как в синусной модуляции), правда с дополнительной математикой.
И опять - без таблиц! 8)
Причём на Cortex-M у меня в коде 2 варианта работы векторного модулятора: 1)табличный; 2)с использованием 2-х sine(). И 2-й всего примерно на 0.5%-1% больше грузит CPU, чем 1-й (144МГц, ШИМ=10кГц). Всего то...
Остальные графики не узнаю кто это.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вс дек 26, 2021 21:13:22 
Нашел транзистор. Понюхал.

Зарегистрирован: Пн май 28, 2018 11:19:03
Сообщений: 183
Рейтинг сообщения: 0
и нахрена вам таблица нужна ? U/F= const. вот и всё решение
а вектор , тута полный разброд , нет обратной связи значит говнокод


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Сб янв 01, 2022 14:41:12 
Открыл глаза

Зарегистрирован: Чт ноя 04, 2021 19:53:46
Сообщений: 41
Рейтинг сообщения: 0
вариант частотника на базе stm8s003.
энкодер пока подключен напрямую, защита от кз ещё не работает (потому что до конца не собрано) и не проверялась (возможно с 817_ми оптронами быстродействие будет недостаточно, надо ещё сделать защиту по скорости изменения напряжения на шине 310V).
в этот раз собрал выпрямители вспомогательного ип из диодов 1N4148, не так компактно зато совсем не греются.
регулирование частоты сделано примерно так же как и в прошлых конструкциях - переключение таблиц + манипуляции с регистрами ARR и RCR.
в качестве эксперимента введена компенсация дедтайма и напряжения на шине DC_310.

прошивка, код, схема, pcb -
https://www.upload.ee/files/13758598/3ph_STM8S.zip.html


Вложения:
схема_stm8_od.gif [103.69 KiB]
Скачиваний: 171
test_0.jpg [69.56 KiB]
Скачиваний: 144
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вс янв 02, 2022 19:49:49 
Нашел транзистор. Понюхал.

Зарегистрирован: Пн май 28, 2018 11:19:03
Сообщений: 183
Рейтинг сообщения: 0
2SC5587 я так понял , это тормозной резистор ? если так то ждите салюта , вот вам проверенная схема
https://youtu.be/fppsJjcryuM


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Пн янв 03, 2022 23:15:20 
Открыл глаза

Зарегистрирован: Чт ноя 04, 2021 19:53:46
Сообщений: 41
Рейтинг сообщения: 0
это не тормозной резистор.

подключил к схеме на stm8 однофазный конденсаторный двигатель с двумя одинаковыми обмотками (от дренажного насоса). потеря момента заметна но не очень велика, обороты регулируются, реверс работает. а вот ещё один конденсаторный двигатель с разными обмотками хотя и регулируется но совсем не тянет.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Ср янв 05, 2022 07:10:16 
Это не хвост, это антенна
Аватар пользователя

Карма: -16
Рейтинг сообщений: -136
Зарегистрирован: Чт фев 19, 2015 12:41:04
Сообщений: 1406
Рейтинг сообщения: 0
Здорово, что на STM8 одноразовой сделали.

"надо ещё сделать защиту по скорости изменения напряжения на шине 310V"

Просто феноменально крутая идея. Кстати, сам думал о защите силовой части во время отладки с помощью электронного предохранителя на IGBT в цепи +310В. Как Вы думаете насчет этого? По сути, такой предохранитель можно устанавливать временно в процессе отладки, а управлять им классическим трансформатором тока.

Добавлено after 31 minute 7 seconds:
А это не хотите попробовать.
Вложение:

Если X1 (в схеме) управлять микросхемой PFC то получиться стабилизатор тока. А тиристоры можно переключать с частотой 0-400 Гц всего. Преимущество в том, что шина постоянного тока стабилизирует именно ток, двигатель возьмет столько ЭДС сколько ему нужно и вычислять V/F просто не нужно как и вычислять синус его вычислит сам двигатель когда будет крутиться. Переключай себе тиристоры неспешно и всего то. Для выключения тиристоров ток от X1 PFC можно временно прервать на 63 мкс.

_________________
"Every profession is a conspiracy against the uninitiated" (B. Shaw)
"A textbook can be defined as a book unsuitable for reading" (B. Shaw)
Tautology is humor in "this" place (Vigo Carpathian)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Ср янв 05, 2022 09:18:20 
Открыл глаза

Зарегистрирован: Чт ноя 04, 2021 19:53:46
Сообщений: 41
Рейтинг сообщения: 0
Astrahard писал(а):
Здорово, что на STM8 одноразовой сделали.

раньше может и да, а теперь не удивлюсь если stm8s003 стоит сопоставимо с какой нибудь RPi или ESP32.
Astrahard писал(а):
Просто феноменально крутая идея.

если не ошибаюсь у "восьмикрута" защита от кз по такому принципу работает.
Astrahard писал(а):
с помощью электронного предохранителя на IGBT в цепи +310В.

если до конденсаторов то бесполезно, если после то конфликтует с необходимостью иметь конденсаторы поближе. плюс потери на предохранителе. и не защищает от замыкания на корпус.
Astrahard писал(а):
А это не хотите попробовать.

Вы эту схему несколько лет назад предложили насколько я помню. неужто за столько времени не попробовали её собрать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Ср янв 05, 2022 11:57:54 
Это не хвост, это антенна
Аватар пользователя

Карма: -16
Рейтинг сообщений: -136
Зарегистрирован: Чт фев 19, 2015 12:41:04
Сообщений: 1406
Рейтинг сообщения: 0
Я ее собрал в Микрокапе. А насчет предохранителя на IGBT, то конечно после конденсатора. А после IGBT предохранителя конденсатор 20-50нФ*630В. Маленький конденсатор не сожжет транзисторы потому, что его энергия как раз соответствует пределу терпимости MOSFET (IGBT) в режиме КЗ.


Да, кстати
Вложение:


Таким образом можно сделать частотник вовсе без микроконтроллера.

_________________
"Every profession is a conspiracy against the uninitiated" (B. Shaw)
"A textbook can be defined as a book unsuitable for reading" (B. Shaw)
Tautology is humor in "this" place (Vigo Carpathian)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Чт янв 06, 2022 17:20:37 
Открыл глаза

Зарегистрирован: Чт ноя 04, 2021 19:53:46
Сообщений: 41
Рейтинг сообщения: 0
чтож, сделайте. возможно это будет интересно.
а я пожалуй доработаю самую первую схему.


Вложения:
pcb.jpg [66.72 KiB]
Скачиваний: 133
схема.gif [72.38 KiB]
Скачиваний: 126
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: частотник на stm32f0
СообщениеДобавлено: Вс янв 16, 2022 11:24:55 
Мучитель микросхем

Карма: 15
Рейтинг сообщений: 35
Зарегистрирован: Ср окт 15, 2008 09:33:03
Сообщений: 476
Откуда: Воронеж
Рейтинг сообщения: 0
Я понял что говорил Dimon456!!!
В случае с stm8 имеем частоту тактирования 16МГц. Частоту ШИМ желаем 10кГц. Отсюда следует что счетчик будет считать до 16000000/10000 = 1600. Таким образом в ШИМ регистр счетчика можно запихнуть значения от 1 до 1600 (может от 0 до 1599 к этому придираться не стоит). ШИМ будет генерироваться с точностью 1/1600. И не более. В счетчик не засунешь 15.45, а только 15. Отсюда следует что проводить вычисления с точностью более 1/1600 можно, но бесполезно. Тогда и считать синус с точностью 16бит не требуется, ибо все равно придется округлять до точности в 1/1600 в конце. Можно считать с меньшей точностью. Как минимум можно не считать полином 7 степени, а взять степень поменьше. Ну или вообще использовать таблицу и DDS.
Я профан в приводе, поэтому не могу сказать куда можно использовать освободившееся время процессора.

p.s.
Для stm32f0 имеем 48МГц и при 10кГц ШИМ будем иметь максимальное значение счетчика уже 4800 и точность в 1/4800 соответственно.
Можно еще прикинуть неточности от пульсации напряжения после конденсатора и выпрямителя. После этого 0.1% точности в шиме покажутся идеалом.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 65 ]    , , 3,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y