⚙️Частотник 8bit на Arduino Новое ядро и тесты
HTML-код
- Опубликовано: 10 апр 2020
- Новая версия частотника на Ардуино
Теория и практика формирования векторной широтно-импульсной модуляции в частоных преобразователях.
Группа ВК tdm_lab
Домашняя страница проекта в EasyEDA
easyeda.com/torcevda/vfd-mega...
Код тестовой программы: yadi.sk/d/Oq1xcf-NmlSlFQ
Exсel файл с расчетами ШИМ: yadi.sk/i/qQR2shrJZ_mmZw
Интересные сайты: Паяльник cxem.net/
***************************************
Для прямой помощи каналу, перевод с банковских карт:
yoomoney.ru/to/4100116712276152
//**************************************************
Arduino Micro Atmega32u4 ali.pub/4m7upw
//************************************************** - Наука
Перфекционизмом попахивает.
Жаль,лайк только один можно
За труды и изыскания спасибо !
Большое спасибо за старания и ваш труд.
Удивила Осцилограмма))) Она почти Чистая) Ты реально Молодец - Побольше бы таких Инженеров!!!
С нетерпением ждем финала эпопеи!
Афигенно!
Огромное спасибо за труды!
Здорово, красивая плата получилась
Шикарно!
Always interesting ideas to get inspiration in the Arduino community thanks for sharing.
Чётко! Молодец
Молоток!!!
Всё чётко и плата красивая 👍
Спасибо!
Красава!
Здорово!
Огромное спасибо за проект. Вы очень крутую работу проделали - молодец. Подскажите пожалуйста, будете ли делать прошивку и для управления однофазными двигателями ( помпы, вентиляторы, циркуляционные насосы ), в этом есть большая необходимость.
Респект и уважуха тебе. Вот у меня вопросик нарисовался, если взять двигатель от электроусилителя руля калины. И переделать его для деления в градусах и удержания в нужном его. Это реально сделать.
Well done sir
Здраствуйте!
Подскажите, как вы выбирали, рассчитывали радиатор для охлаждения? И какой выбрали?
Изысканно! Сам захотел повторить ! Схема и прошивка на сайте?
Здравствуйте
Автор канала можете показать осциллограммы всех 6 ШИМ в логическом анализаторе спасибо
Sir, please help!!
Have It PFC PROTECTION?
Тут вся красота в 8 битной Arduino Nano на ATmega 328P. Это триумф разума над Ардуиной!
Тут Atmega32u4 на плате Micro, это чуть более продвинутый МК, но в целом да:) Вот продолжение ruclips.net/video/C6E3k61QaAU/видео.html
Подскажите, чтобы 4квт трехфазник крутить , нужно модуль igbt менять на соответствующий?
Да, этот 1,5кВт максимум.
Автор молодца ! поглядел прошивку ... ну не плохо ... хотя я бы от ардуино отказался иработал с мегой на прямую ...
В рассыпухе дороже чем в сборе. А программно я и так напрямую работаю, не считая загрузчика, который в любой момент можно снести.
@@TDMLab да не сказал бы , в партиях от 50 штук цена смешная ..а так как бы уже устройство готовое а тут ...
@@Fastereus ну) в партиях от 50, у меня же не завод:) Вот перенесу сборку в Китай, тогда это будет иметь смысл.
@@TDMLab ^:) тут судя по ситуации в стране (я про малый бизнес) уже пора жопу в ахапку и в китай переносить :)
@@Fastereus Что есть то есть)
Подскажите пожалуйста а однофазный двигатель можно подключить? Интесно будет ли работать с двигателем центробежного канального вителятора вентс ВКМц vents-shop.com.ua/ventilyator-vents-vkmc-250/
Для однофазных вентиляторов тиристорное управление применяют, там на сайте собственно и говорят. Вентилятору частотник избыточен.
Возможен ли такой частотник к электро велу прикрутить на 48в? Делаете ли под заказ?
Да, возможно если там соответствующий эл. двигатель. Под заказ не делаю.
Лайк за труды железный.Хочу поинтересоваться,где приобретали ikcm15f60ga,хочу повторить данный проект.Успеха в трудах
У китайцев на алиэкспресс, но иногда брак присылают, лотерея в общем.
@@TDMLab Спасибо за ответ.У китайцев,дело понятное,там да лотерея.Думал может в каком ещё месте.Понял,пойду к китайцам
Шикарный проект и реализация!у меня сделан аналогичный с таким же модулем ikcm15f60ga,но есть проблема в том ,что модуль немного греется даже когда двигатель остановлен.Можете подсказать у вас он также греется в режиме остановки или нет?может мне попался бракованный?
Если генерация ШИМ в режиме стопа отключена, то греться не будет.
Как вариант перенести всё на STM8S207, там аппаратное умножение и деление есть. Таблицу синусов можно интерполировать, достаточно 5-10 точек, остальное вычислять по пропорции c одним сложением и умножением, типа Y=Y0+KX, в Экселе накидал, вроде не сложно.
Как вариант, но это уже другой проект:)
Тут вся красота в 8 битной Arduino Nano на ATmega 328P. Это триумф разума над Ардуиной!
@@aboverobotics, у нас это называлось садо-мазо
Сколько у него себестоимость,если не сикрет?
Добрый день. Вопрос есть по теме видео. Если я правильно понимаю, то в теории, с помощью такого контролера можно управлять и BLDC движками? Я начал интересоваться данной темой, хочу сделать свой контроллер для электровелосипеда, с блекджеком и.т.д.
Да, вполне можно, хотя конечно, по современным меркам он не самый производительный.
Читайте datasheet раздел PWM6 mode
а так же как пример AVR496: Brushless DC Motor Control using ATtiny861
Наверное самый лучший DIY проект частотника, еще и открытый, конечно лайк. Вопрос про потенциометр глянул схему он через оптопару развязан. Хорошо в линеном режиме оптопара работает ? У немя была мысль NE555 на изолированной стороне, и через оптопару считывать частоту , или маломощьный мк на изолированной стороне и чрез uart изолированный/ RS485.
Спасибо. Да работает, но не идеально конечно, диапазон меньше получается и не очень линейно, но в целом работоспособно. Да, изолированный RS485 это правильное решение, и второй МК для интерфейса то же, у меня есть изолированный SPI.
@@TDMLab аналоговые IL300 на алишке вроде 300 руб за 5 штук . Лично я печатку пытаюсь развести уже кажется 3 неделю в тч с аналог оптопарой vfd.psw2.ru/200827_Cu4_Silk.pdf абзац тоже накатал жалобный vfd.psw2.ru/History-2.htm#VFD_PCB
А та потерянная печатка (от поломки ХДД) в Кикаде - сохранилась в каких-либо видах кроме натуры пробного заказа ? Хочется поглядеть на чужую медь.
@@pswru Да, есть условно линейные оптопары, можно чуть улучшить эту часть, но я изначально считал это полу мерой, так что особо значения не уделил. Устанавливать значения цифровым способом гораздо логичнее. И где-то все равно маячит второй контроллер для HMI.
А зачем вам старая печатка, когда есть новая в easyeda, все открыто, но если уж совсем нужно напишите мне на почту (указана в разделе о канале), утеряны только вручную нарисованные корпуса, и я не стал восстанавливать. Часть платы возможно найду.
@@TDMLab Мыло накатал. Ну я решил попробовать как оно IL300 с алишки, вместо ОУ излучающая сторона сделана на паре транзисторов из доков на HCNR201 www.farnell.com/datasheets/1909756.pdf#page=13
Класс, обратная связь будет? И нужна ли она
Датчик положения не планируется, вектора тока если ресурсов хватит.
Дисплей по twi нужно, аппаратный spi занят под шимом. А я бы вообще по юарту сделал, через блютуз на смарт, куда проще и выгоднее в плане ресурсов и быстродействия кода
В схеме вся информация есть. LCD по SPI подключается. Юарт имеет смысл, возможно в следующих версиях будет. Блютуз, смартфон это уже сами.
@@TDMLab мега32 у вас, ну да там свободен spi.
А однофазным можно будет управлять по этой схеме?
ну да из сплит системы сделать инвертер?
во было бы круто!!!
....но пока у меня сплитухи нет.....
Здравствуйте! Как производится выборка значений из массива относительно заданной частоты? С какой точностью позволяет перестраивать частоту на всем диапазоне?
Принцип DDS, вот здесь посмотрите ruclips.net/video/Tjpz_omHdpo/видео.html
В общем случае с той точностью с которой захочет программист, а конкретно в данном где-то 0,1Гц
@@TDMLab Понятно. Спасибо за видео!
Прогнозирую если доделать в частотнике регуляцию амплитуды придется добавить пересчет значений синуса. Для этого их придется делать или 16 бит или 32 а не 8 как у вас. Иначе разрядность результата деления на коэффицент будет очень низкая. А у Меги с делением очень большие тормоза.
В совокупности с тем что контроллер должен регулировался частотой а не перидом как у вас, нужно будет использовать флоаты для пересчета периода. И тут скорее всего ресурсов у него и не хватит.
@@ninodor26 В частотниках, в том числе в моем, всегда есть возможность управлять амплитудой. Иначе бы возможности управляться по закону U/f = const не было.
Пересчет значений куда? Это нужно только для показометра в герцы.
16 бит или 32 ? Ну, это конечно каждый извращается как хочет, но мне синуса 9x9 бит вполне хватает.
Деление это зло))) Я использую умножение, работает так же:)
"контроллер должен регулировался частотой а не перидом как у вас" - я вообще не понял. Мой код написан по типовым принципам ЧП, это база примерно всегда такая.
"нужно будет использовать флоаты" - самое плохое, что можно придумать в управлении механизмами это использовать флоаты.
32u4 имеет специализированный функционал для построения базовых алгоритмов ЧП, если не желать чего-то невероятного, то ресурсов хватает.
Добрый день, подскажите пожалуйста что нужно изменить в коде что бы прошить ardtino nano/uno
Не получиться у них с микро контроллеры разные, у micro есть аппаратная поддержка управления двигателями.
@@TDMLab спасибо, придётся ждать пока китайцы раздупляться)
В продаже будет?
Красиво! а готовые частотники, с кучей функций, по цене не дешевле будут?
Возможно
В готовых обычно не хватает одной, но самой важной функции...
Отож, обычно главный недостаток готоыых частотников, они излишне навороченные и дорогие. Тут делается такой же
Ещё бы датчики тока фаз и энкодер поставить и будет очень круто
Датчики стоят в виде шунтов 10мОм. Сейчас не распаяны только ОУ для них, но скажу честно возможно самую "жирную" версию с векторным управлением сделать будет проблематично из-за ограниченной производительности. Буду решать это по ходу пьессы.
@@TDMLab да,векторное управление по закону синуса, вообще был бы огонь. Точность поддержания скорости во всём диапазоне и номинальный момент на максимальных оборотах. Китайцы проще поступают:ставят датчики холла и обычное скалярное управление,для точности поддержания оборотов
@@TDMLab ну может быть не стоит и прям векторное регулирование как полноценное, однако обратная связь с двигателем и относительное регулирование я думаю может получиться, для не допущения срыва якоря. Векторное та нужно только при низких частотах - а такое в жизни редко используется. а вот понять что мотор заклинил или начинает явно отставать от статора уже мне кажется круто!!
Здравствуйте, а arduino mini(nano) в этом проекте не справится?
В nano, mini, uno контроллер 328p, он не подходит т. к. в нём нет специализированного таймера. В 32u4 которая на платах micro он есть
@@TDMLab Спасибо за разъяснение, а дисплей я так понял уже разведен и менять печатку не придется в последствии? Хочется на дисплей поглядеть. А какие переменные содержат текущие показатели частоты и тока FreqNom, AmpNom?
Так при такой высокой несущей частоте возникают потери , чем обусловлен выбор столь высокой несущей частоты?
Да, нагрев IGBT будет больше при большей частоте, но проект для двигателей малой мощности и упор делается на качество формируемого трёхфазного сигнала.
Какая стоимость всех деталей выходит в $?
Очень примерно 40$
@@TDMLab Спасибо!
как организован мягкий старт при подключении схемы к сети?
Последовательно стоит NTC, который после зарядки конденсаторов закорачивается реле.
@@TDMLab чувствуется подготовка. я предпочитаю конденсатор(дроссельный) и реле и ещё реле включает ардуинка?
@@sokolovskivitali2971 не, эта логика не управляется МК, просто когда в схеме появляется питание +5В, с небольшой задержкой замыкается реле.
@@TDMLab спасибо за ответы удачи
Здравствуйте. Очень хочу повторить ваш проэкт. Я почти все элементы нашел в продаже. Но никак не могу понять, что за трансформатор установлен по питанию. В схемотехнике пишет - FlyBackTrans B66208X. Что за номиналы у него, какрй аналог подобрать? Я запутался =(
И еще есть вопрос, есть микросхемы IKCM10 , 15, 30 IGCM10, 15 распиновка у них та же и в даташите пишет что все с открытым емитером.
Собственно сам вопрос, они взаимозаменимы?
-------------------------------------------------------------------------------------------------------------
Попался мне токарный станок ОТ-5, с продольной и поперечной автоподачей. Но он с вариатором вместо обычной коробки, и вариатор разлетелся в хлам....... нужен частотник на 1.5 кВт =(
Для трансформатора вам потребуется каркас с размерами как на картинке по ссылке drive.google.com/file/d/1ilXlNbzaXU91TCd2KwYHwKMWdtmejVTs Намоточные данные и марка феррита указаны на схеме на странице проекта. Я такой каркас покупал на али, но сейчас похоже их уже нет.
Силовые модули, которые Вы указали, отличаются по току. Для двигателя 1.5 кВт нужен не менее 15 А.
@@Sergey-5619 Спасибо за ответ, нашел аналог каркасу, BH-EF25-1-10Q. Каким сечением делать намотку?
@@taichiveron9278 Первичную - 0.25, вторичные - 0.45. На схеме все указано)
Как правильно намотать, TDM Lab объяснял здесь: ruclips.net/video/V3PrT07ueTA/видео.html&lc=UgxO95VFlmC_ke1velR4AaABAg.97fK0r7B3D797fLQuEzP_x
@@Sergey-5619 Все разобрался, спасибо большое.
Вот чесно, разве такой сложный импульсный блок питания дешевле и лучше обычного трасформаторного БП??
kruto
Добрый день , на про мини 5 вольт возможно ?
Нет, на 328p нельзя. Подробнее тут ruclips.net/video/C6E3k61QaAU/видео.html
@@TDMLab спасибо
@@TDMLab спасибо , посмотрел и ПОНЯЛ. Не бывает плохих учеников , много зависит от преподавателя . Успехов.
Код, схемотехнику, разводку, монтаж -- это все вы в одном лице сделали ?
Да так)
Автор... а почему таблицы синуса не формировать самому ? в смысли в процедуре инициализации создал в памяти таблицы и потом юзай их ... чтоыбне тартит флэш под это дело ?
Игра не стоит свеч.
@@TDMLab Ну даже не знаю ... что сказать я привык экономить каждый байт ...не табличка если есть место не чем не хуже
@@Fastereus И сколько частотников уже написано с экономией каждого байта ? Где можно ознакомится с кодом и демонстрацией работы двигла со звуком ШИМ ?
По опыту скажу что на мало мощных и нискооборотистых движках работать всегда будет чётко. Нужно проводить тесты хотябы киловатт на 5 и 3000 оборотов вот там все и по вылазит.
Силовая часть до 1,5кВт так что на 5 не получиться.
Как вы перемножаете значение таблицы синуса для уменьшения амплитуды чтоб все 6 транзисторов грелись одинаково ?
@@user-fd7fj4ii8g Уменьшаю амплитуды всех фаз одновременно. Этот МК имеет специализированный трехфазный таймер, он умеет синхронно обновлять заполнение ШИМ для всех фаз.
Подскажите, вы пересчитываете при изменении амплитуды сразу все значения синуса или по одному а потом запихиваете их в таймер?
Может я и не прав, но в такой реализации, защита по току не будет срабатывать. Чтоб это понять нужно схему в комплексе посмотреть, напряжение от шунтов поступают в одну точку через резистора по 100 Ом, так вот, если на одной фазе будет проходить большой ток, то напряжение на шунте подниматься не будет, та как соединено еще через два резистора на 100 ом на землю через шунты двух других фаз, тут нужны либо диоды, но нужно учитывать падение на них, достаточно ли будет падение напряжения на шунте, либо отдельные операционники на каждую фазу, либо один шунт на три фазы.
Да, возможно и так. Убрать из этих цепей диоды было вынужденным решением из-за желания иметь маленькие сопротивления шунтов. В большинстве случаев ставят именно диоды. Я сомневался в этом решении, но на момент проектирования я где-то откопал схему Infineon Eval Board, где эти диоды то же убрали и на этом и остановился. К своему удивлению сейчас я не смог быстро найти ту самую схему Infineon, и возможно это действительно не корректно. Проверить можно, например, симуляцией или натурными испытаниями с закорачиванием одной фазы, но лучше сначала симуляцией:)
@@TDMLab Можно не закорачивать, а подать от лабораторника расчетное напряжение в точку перед шунтом на одну фазу и посмотреть как схема отработает,только шунт нужно убрать на котором тестируешь. Заодно и проверить где какие напряжения формируются
@@neomanss Нашел я кстати эту схему www.infineon.com/dgdl/Infineon-AN2016-14_EVAL-M1-05-84D_User_Manual-UM-v02_01-EN.pdf?fileId=5546d4625696ed760156da2dd6eb6f50
там 21 страница, шунты у них 250мОм.
Модельку проще накидать и сразу все протестить.
Это работоспособно, но возможно номиналы резисторов нужно пересчитать т.к. действительно образуется делитель R/R||R
@@TDMLab В схеме по ссылке все четко и понятно, 1КОм это лучше чем на 100 Ом(образует делитель на 3 и там и там), тогда зачем еще один делитель, там и так низкое напряжение? С учетом того, что на операционнике сравнение с 0.15 В и шунты 0.01Ом ток получается срабатывания 47А, многовато как по мне для такой микросхемы с транзисторами, там токи 10А макс 15А на фазу. Отсюда на 10А падение на шунте 0.1В, потом делитель на 3(резисторы по 100 Ом лучше на 1КОм) = 0.033В, потом через второй делитель = 0.0316В , это напряжение придет на операционник для сравнения. Как я понял, отключается микросхема при напряжение на входе больше 0.47В, как то не явно там написано.
@@neomanss Моя схема совпадает со схемой по ссылке.
R25 помечена DNI (Do Not Install). Номинал R24 не принципиален.
100 Ом или 1к не принципиально. Нужно уставку пересчитать (R26 и R27) с учетом R/R||R и все.
Максимальный ток 15А.
Отличная работа! Спасибо за видео и полезную информацию. У меня такой вопрос, у вас возможно заказать готовый частотник? Нужно, чтобы была регулировка оборотов (частоты) и реверс, если есть возможность добавить "тормоза", чтобы двигатель как можно быстрее останавливался при остановке и реверсе, будет вообще великолепно! И какая будет стоимость вопроса. Заранее благодарю за ответ.
Моя почта. (alexej550271@gmail.com)
Зачем в программе расчет амплитуды для каждой фазы ? Я думаю достаточно было было пересчитать всю таблицу в оперативку , а в прерывании просто шагать по ней .
Для обеспечения U/f характеристики с учетом возможности изменения точки начального подмагничивания. Предрасчитать можно только для одного варианта разгона/торможения, этого не достаточно.
@@TDMLab Я эти моменты учел . Нужно создавать динамический массив периода в оперативке . При разгоне или торможении делать пересчет этого массива с поправочным коэффициентом на наклон характеристики и '' буст " . В прерывании достаточно будет к одной фазе прибавлять аккумуляторы фазы , а к ней прибавлять индексы смещения остальных фаз в таблице из оперативки .
@@user-ze2gh2ze2l А где будет делаться умножение массива на коэффициент? Рассмотрим момент времени t0 в который мы получили команду на остановку. Первое что гарантированно произойдет это мы попадем в прерывание, а дальше...
@@TDMLab В цикле по флагу делать расчет , если изменилась частота , то флаг взводить . sin_temp =виртуальный массив из которого грузить регистры шим , sin_t = таблица периода с 50% амплитуды , dl_sin = указать длину таблицы . Этот пример на 32 элемента , маску &0x1F изменить под нужную длину таблицы . Поправочные коэффициенты вводить в переменную ampl= амплитуда . Рассказчик с меня так себе , надеюсь понятно объяснил .
SIN_TEMP[ COUNT] = 127+((SIN_T[ COUNT] * ( AMPL )) >> 8);
SIN_TEMP[( DL_SIN>>1)+ COUNT] = 127-((SIN_T[ COUNT&0x1F] * ( AMPL)) >> 8);
COUNT++;
@@user-ze2gh2ze2l Я всецело приветствую предложения по коду, даже могу проверить задумку в реальности. Сейчас я уже написал стабильное ядро, позже если буду его модифицировать подумаю как улучшить, но всегда помню, что лучшее враг хорошего.
А почему 8бит? На сегодня 32 бита по цене не сильно отличается, зато возможностей намного больше
Просто никакого великого замысла сделать лучший на сегодняшний день не было. Посмотрите мои мысли в крайнем видео ruclips.net/video/C6E3k61QaAU/видео.html
15кГц отчетливо слышно, лучше пошаманить и сделать 22кГц.
Это выходит за спецификацию силового модуля.
Ужасный писк, слышу почти до 22кГц, большинство зарядок и других импульсных БП слышу, это ужасно)
надеюсь когда вы все допилите то выставите свои труды для простых людей. если нет то скажите в ответном, что бы я отписался и не ждал зря.
Так все и так доступно для простых людей, все в описании всех видео что я выкладывал.
Обычный двухскоростной однофазный двигатель, с пусковой обмоткой через конденсатор!
При чем здесь трехфазник?
Он и от розетки будет крутиться без проблем и даже без конденсатора, и вашего частотника, если его для старта рукой крутануть .
А можно даже без розетки, просто рукой крутить:)
Понятно что это нештатное подключение, что это меняет? Там три обмотки по 120° (клеммы 2-4-8) одна из которых пусковая.
www.superhands.ru/images/dvigatel1.gif
Частотник вот для таких движков ruclips.net/video/1B-T_B46ApU/видео.html
TDM Lab Хорошим делом Вы занимаетесь!
Я только не понял смысла на такой двигатель ставить частотник и роль этого частотника тоже не понял. Вы сдвинули фазу пусковой обмотки, заменив конденсатор часотником и добавили плавный пуск?
Правильно, там три обмотки.
1 Высокая скорость
2 Низкая скорость
3 Пусковая обмотка.
Видео данное по вашей ссылки я уже когда то смотрел и поставил лайк! Там понятна целесообразность частотника.
Отцу собирал схемку для такого же двс. Сделал реверс и две скорости, на 2х спаренных обычных переключателях. 1 реверс, 2 выбор скорости.
@@opendecid7073 Спасибо на добром слове.
Частотник не для этого конкретного двигателя. Этот для тестов, какой уж был.
Не там не так, высокая скорость это отдельные обмотки.
www.superhands.ru/images/dvigatel6.gif
TDM Lab Точно такой же двиг. как я отцу подключал, единственная разница что (общие обмотки отжима и стирки) клеммы 6 и 2 здесь вынесены из двигателя и замкнуты на клемнике, а на моем двс они были замкнуты внутри двигателя. Из двигателя выходило 5 проводов.
@@opendecid7073 В общем 2-4-8 это трехфазные обмотки и они на схемах правильно нарисованы. Скоростные двухполюсные это обмотки отжима.
Запустить этот двигатель можно многими способами речь не об этом.
Огромное спасибо за труды!