Вся информация приведенная в статье носит ознакомительный характер.
Автор не несет ответственности за возможное применение этой информации на практике.
Соблюдайте технику безопасности, существует опасность поражения электрическим током.
Плавный пуск коллекторного электродвигателя от дрели, электрокос и другого электроинструмента помогает продлить их срок службы благодаря следующим факторам.
1) Уменьшается износ щеток.
2) Меньше нагревается статор и ротор.
3) Ток пуска близок к холостому.
4) Уменьшается удар шестеренок.
Также благодаря уменьшению рывка электродвигателя в момент пуска уменьшается травмоопасность инструмента.
Плавный пуск выполнен по следующей схеме.
Описание схемы.
Переменное напряжение 220 Вольт подается на вход L, N.
Вход L подключен к ножке А2 симистора BTA41600.
Нагрузка подключена между входом N и ножкой А1 симистора.
На оптопаре PC814 выполнен детектор нуля синусоиды.
Оптосимистор MOC3023 в заданный момент открывает симистор BTA41600.
Плата Arduino Pro Mini (требуется прошивка) задает угол открытия симистора.
Для того чтобы данная схема заработала необходимо составить программу по которой микроконтроллер (Arduino Pro Mini) будет управлять всей схемой, а именно принимать данные с детектора нуля (2 ножка arduino) и плавно менять угол открытия симистором с постепенным нарастанием тока в нагрузке. Также на время открытия симистора загорается светодиод на 13 порту Arduino.
Составим программу для Arduino Pro Mini.
Прошивка создавалась с помощью программы Flprog.
С помощью этой программы можно запрограммировать контроллер не зная текстовых языков программирования, а выглядит это как рисование электронной или электрической схемы.
Создадим наш проект для этого в окне программы выбираем Файл -> Новый -> Новый проект для контроллера, откроется следующее окно
Нажимаем на три точки ... и выбираем наш контроллер.
Нажимаем кнопку Выбрать, далее Готово.
Теперь нам нужно нарисовать следующую блок схему.
Для этого справа от окна с названием Плата: 1 есть следующее окно с столбцами Встроенные и Пользовательские.
Встроенные это блоки которые устанавливаются вместе с программой.
Пользовательские это блоки которые создают пользователи программы сами или устанавливают отдельно.
В столбце Встроенные поочередно перетягиваем мышкой в окно с названием Плата: 1 следующие блоки Generator, Счетчик, Comparator это соответственно наш генератор, счетчик и блок сравнения.
Блок Фазовый регулятор является Пользовательским его создал автор программы Flprog Сергей Глущенко.
Загрузим данный блок с сайта программы по следующей ссылке Phase_Regul. Загрузится zip архив который необходимо распаковать.
Далее в нашей программе выбираем столбец Пользовательские и нажимаем на кнопку в виде папки.
Откроется окно в котором нам нужно пройти в папку с распакованным архивом, выбрать в ней файл Phase_Regul_Tm2_(CODE).ubi и нажать кнопку Открыть. Откроется окно с названием Выбор целевой папки -> выделяем Блоки пользователей и нажимаем Готово.
В блоках пользователей появится блок с названием Phase_Regul_Tm2_(CODE), перетаскиваем его мышкой в окно с названием Плата: 1.
Теперь у нас на плате присутствуют почти все блоки кроме блока с названием Обороты - это выход 13 нашего контроллера где подключен светодиод он распаян непосредственно на плате Arduino Pro Mini.
Создадим данный блок для этого выше окна Плата: 1 существует раздел Tags с подразделами Входы, Выходы и Переменные. В подразделе Выходы нужно два раза мышкой нажать на Добавить выход.
Откроется следующее окно где выбираем имя, тип и номер контакта как на рисунке и нажимаем Готово.
В подразделе Выходы раздела Tags появится наш блок с названием <Цифровой>Обороты=Pin 13 выделяем его мышкой и перетягиваем его на нашу Плату.
Теперь необходимо соединить наши блоки в цепь для этого наводим мышкой на контакт Q генератора, нажимаем левую кнопку мыши и перетягиваем его на контакт С счетчика. Аналогично поступаем с остальными контактами.
Далее настроим каждый блок.
1)Фазовый регулятор.
Краткий алгоритм работы блока:
- при наступлении внешнего прерывания от детектора нуля синусоиды отключается выход на симмистор и начинается отсчёт времени паузы (значение со входа "Value", в условных единицах), по истечении которой произойдёт прерывание от переполнения таймера
- в момент прерывания от таймера (окончания паузы), включается выход на симмистор и он остаётся открытым (включенным) до конца полупериода сети, т.е. до возникновения прерывания от детектора нуля синусоиды
- далее всё повторяется "по кругу"
При двойном нажатии на любой блок открывается окно где находятся столбцы параметры, надпись к блоку и в Пользовательских описание автора.
При выделении каждого параметра, ниже появляется ячейка Значение где необходимо внести параметры как на рисунке выше. После внесения изменений нажимаем кнопку Готово.
Подробное описание каждого значения параметров в столбце Описание автора.
Также у блока существует два контакта Value и Val_Zero.
Вход "Value" - задаёт уровень мощности.
Значения можно задавать от 0 до 255 (byte). 0 - минимальная, 255 - максимальная мощность.
При "Value" = 0 - выход на симмистор постоянно отключен, внешнее прерывание и прерывание от переполнения таймера запрещены, при "Value" = 255 - выход на симмистор постоянно включен, внешнее прерывание и прерывание от переполнения таймера запрещены.
В реальности блок имеет около 156 (точнее будет равно 255 - "Val_Zero") значений градации мощности.
Вход "Val_Zero" - корректировка "нулевого" значения мощности.
Обычно это значение равно 99 (byte), но возможно понадобиться эксперементальный подбор в небольших пределах этого значения для устранения мерцания лампы или "дёргания" двигателя при минимальных значениях на входе "Level" (кроме нуля, т.к. при нуле - выход на симмистор постоянно отключен).
Установим на входе "Val_Zero" константу 1 для этого наведем мышку на контакт Val_Zero и нажмем правую кнопку мыши появится кнопка Вставить константу, нажмем ее. Откроется окно где прописываем значения как на рисунке ниже и нажимаем готово.
2) Блок счетчик задает максимум открытия симистора (полностью открыт = 255).
Открываем Параметры блока и выставляем значения как на рисунке ниже.
Подробное описание блока при нажатии кнопки Информация (Интернет включен).
3) Бок Генератор - задает время разгона электродвигателя.
Открываем Параметры блока и выставляем значения как на рисунке ниже.
Де того чтобы генератор работал сразу (при подаче напряжения на контроллер) выставляем на выводе EN константу true.
4) Блок сравнения применен для визуального контроля (светодиод на 13 порту контроллера) времени разгона двигателя.
Параметры блока сравнения оставляем без изменений.
Установим лишь на контакте I2 константу 255.
5) Блок обороты мы настраивали ранее сейчас проинвертируем его контакт для этого наведем на него мышку, нажмем правую кнопку, появится кнопка Инвертировать, нажмем ее и у контакта появится символ в виде маленького круга. Благодаря этому светодиод будет гореть только вовремя разгона двигателя (от 1 до 254 включительно).
Все наша блок схема готова.
Компиляция.
При нажатии на кнопку компиляция открывается программа Arduino а наша блок схема преобразуется в скетч arduino.
Теперь загрузим наш скетч в микроконтроллер.
1) Соберем схему для программирования Arduino Pro Mini. Извлекаем микроконтроллер из Arduino Uno.
2) Подключаем собранную схему к компьютеру.
3) В программе Arduino выбираем порт.
Инструменты -> Порт -> Порт Arduino Uno
Нажимаем кнопку загрузка
После успешной загрузки скетча и собранной схемы устройство готово к работе.
Плавный пуск электроинструмента (ver 2.0) часть 1, часть 2.