Плавный пуск на ардуино своими руками

Добавил пользователь Алексей Ф.
Обновлено: 04.10.2024

В настоящее время наблюдается небывалый интерес к конструированию различных летающих механизмов – дронов, планеров, глайдеров, вертолетов и т.д. Сейчас их можно легко сконструировать самостоятельно благодаря большому количеству материалов по ним в сети интернет. Все эти летающие механизмы используют для своего движения так называемые бесщёточные (бесколлекторные) электродвигатели постоянного тока (BLDC - Brushless DC Motor). Что представляют собой подобные двигатели? Почему именно они сейчас используются в различных летающих дронах? Как правильно купить подобный двигатель и подключить его к микроконтроллеру? Что такое ESC и почему мы будем его использовать? Ответы на все эти вопросы вы найдете в данной статье.


В этой статье мы рассмотрим управление скоростью вращения бессенсорного бесколлекторного электродвигателя постоянного тока A2212/13T (Sensorless BLDC outrunner motor), часто используемого для конструирования дронов, с помощью ESC (Electronic Speed Controller – электронный контроллер скорости) и платы Arduino.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. A2212/13T BLDC Motor (бесколлекторный электродвигатель постоянного тока).
  3. ESC (20A) (электронный контроллер скорости) (купить на AliExpress).
  4. Источник питания (12V 20A).
  5. Потенциометр 10 кОм (купить на AliExpress).

Принцип действия BLDC двигателей

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

Хотя BLDC относятся к двигателям постоянного тока они управляются с помощью последовательности импульсов. Для преобразования напряжения постоянного тока в последовательность импульсов и распределения их по трем проводникам используется контроллер ESC (Electronic speed controller). В любой момент времени питание подается только на две фазы, то есть электрический ток заходит в двигатель через одну фазу, и покидает его через другую. Во время этого процесса запитывается катушка внутри двигателя, что приводит к тому, что магниты выравниваются по отношению к запитанной катушке. Затем контроллер ESC подает питание на другие два провода (фазы) и этот процесс смены проводов, на которые подается питание, продолжается непрерывно, что заставляет двигатель вращаться. Скорость вращения двигателя зависит от того как быстро подается энергия на катушку двигателя, а направление вращения – от порядка смены фаз, на которые поочередно подается питание.

Существуют различные типы BLDC двигателей – давайте рассмотрим основные из них. Различают Inrunner и OutRunner BLDC двигатели. В Inrunner двигателях магниты ротора находятся внутри статора с обмотками, а в OutRunner двигателях магниты расположены снаружи и вращаются вокруг неподвижного статора с обмотками. То есть в Inrunner (по этому принципу конструируется большинство двигателей постоянного тока) ось внутри двигателя вращается, а оболочка остается неподвижной. А в OutRunner сам двигатель вращается вокруг оси с катушкой, которая остается неподвижной. OutRunner двигатели особенно удобны для применения в электрических велосипедах, поскольку внешняя оболочка двигателя непосредственно приводит в движение колесо велосипеда, что позволяет обойтись без механизма сцепления. К тому же OutRunner двигатели обеспечивают больший крутящий момент, что делает их также идеальным выбором для применения в электрических движущихся средствах и дронах. Поэтому и в этой статье мы будем рассматривать подключение к платы Arduino двигателя OutRunner типа.

Внутреннее устройство и внешний вид Inrunner и OutRunner BLDC двигателей

Примечание : существует еще такой тип BLDC двигателей как бесстержневой (coreless), который находит применение в "карманных" дронах. Эти двигатели работают по несколько иным принципам, но рассмотрение принципов их работы выходит за рамки данной статьи.

BLDC двигатели с датчиками (Sensor) и без датчиков (Sensorless). Для BLDC двигателей, которые вращаются плавно, без рывков, необходима обратная связь. Поэтому контроллер ESC должен знать позиции и полюса магнитов ротора чтобы правильно запитывать статор. Эту информацию можно получить двумя способами: первый из них заключается в размещении датчика Холла внутри двигателя. Датчик Холла будет обнаруживать магнит и передавать информацию об этом в контроллер ESC. Этот тип двигателей называется Sensor BLDC (с датчиком) и он находит применение в электрических движущихся транспортных средствах. Второй метод обнаружения позиции магнитов заключается в использовании обратной ЭДС (электродвижущей силы), генерируемой катушками в то время когда магниты пересекают их. Достоинством этого метода является то, что он не требует использования каких либо дополнительных устройств (датчик Холла) – фазовый провод самостоятельно используется в качестве обратной связи благодаря наличию обратной ЭДС. Этот метод используется в двигателе, рассматриваемом в нашей статье, и именно он чаще всего применяется в дронах и других летающих устройствах.

Почему дроны и вертолеты используют именно BLDC двигатели?

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

Внешний вид бесколлекторного электродвигателя постоянного тока A2212/13T

Существует несколько причин для этого:

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

Зачем нужен контроллер ESC

Как мы уже знаем, для функционирования BLDC двигателей необходим какой-нибудь контроллер, который преобразует напряжение постоянного тока от батарейки в последовательность импульсов, подаваемую в определенном порядке на провода (фазы) двигателя. Этот контроллер называется ESC (Electronic Speed Controller – электронный контроллер скорости). Основной обязанностью данного контроллера является правильная подача питания на провода BLDC двигателя чтобы двигатель вращался в нужном направлении. Это осуществляется с помощью считывания обратной ЭДС (back EMF) с каждого провода и подачи питания на катушку в то время когда магнит пересекает ее. Внутри себя контроллер ESC содержит достаточно много разнообразной электроники и при желании вы можете подробно изучить его устройство по соответствующим материалам в сети интернет. Здесь же мы кратко рассмотрим рассмотрим только основные компоненты его конструкции.

Типовые провода для подключения контроллера ESC

Управление скоростью вращения на основе ШИМ (широтно-импульсной модуляции, в англ. PWM) . Контроллер ESC может управлять скоростью вращения BLDC двигателя при помощи считывания сигнала ШИМ подаваемого на его оранжевый провод. Принцип управления им очень похож на управление сервомоторами. Сигнал ШИМ, подаваемый на контроллер ESC, должен иметь период 20ms, а коэффициент заполнения этого ШИМ сигнала будет определять скорость вращения BLDC двигателя. Поскольку точно такой же принцип используется для управления углом поворотом сервомотора, то для управления BLDC двигателем мы можем использовать библиотеку для управления сервомоторами. Если вы не сталкивались с этим принципом ранее, то вы можете прочитать статью о подключении сервомотора к плате Arduino.

Battery Eliminator Circuit (BEC) – цепь, исключающая батарею . Почти все контроллеры ESC поставляются с этой схемой. Как следует из ее названия, данная схема устраняет потребность в использовании отдельной батареи для питания микроконтроллера, то есть в данном случае нам не понадобится отдельный источник питания для платы Arduino – контроллер ESC сам обеспечит плату Arduino регулируемым напряжением питания +5V. В различных контроллерах ESC используются различные схемы регулировки данного напряжения, но в большинстве случаев распространена схема с линейной регулировкой.

Встроенное ПО . Каждый контроллер ESC содержит в своем ПЗУ встроенную прикладную программу, написанную производителем контроллера. Эта программа во многом определяет логику функционирования контроллера. Наиболее популярными встроенными программами для контролеров ESC являются Traditional, Simon-K и BL-Heli. Эта программа может изменяться пользователем, однако мы в этой статье не будем рассматривать данный вопрос.

Некоторые термины, используемые в тематике BLDC и ESC

При изучении принципов работы BLDC двигателей и контроллеров ESC вы можете столкнуться с некоторыми терминами, используемыми в данной тематике. Кратко рассмотрим основные из этих терминов.

Braking (торможение) – определяет насколько быстро BLDC двигатель может остановить свое вращение. Это особенно актуально для летающих средств (дронов, геликоптеров и т.д.) поскольку они вынуждены часто изменять количество оборотов двигателя в минуту чтобы маневрировать в воздухе.

Soft Start (плавный пуск, старт) – эта способность особенно важна для BLDC двигателей когда вращающий момент от него на исполнительный механизм (колесо, винт и т.д.) передается через механизм передач, обычно состоящий из шестерен. Плавный пуск означает, что двигатель не начнет сразу вращаться с максимальной скоростью, а будет увеличивать свою скорость вращения постепенно независимо от того, с какой скоростью нарастает управляющее воздействие. Плавный пуск значительно снижает износ шестерен, входящих в передаточный механизм.

Motor Direction (направление вращения двигателя) – обычно направление вращения BLDC двигателей не изменяется в процессе эксплуатации, однако во время сборки и тестирования работы изделия может потребоваться изменение направления вращения двигателя, обычно это можно сделать просто поменяв местами любые два провода двигателя.

Low Voltage Stop (остановка при низком напряжении питания) . Обычно BLDC двигатели калибруют так, чтобы при одинаковом уровне управляющего воздействия скорость его вращения была постоянной. Однако этого трудно достигнуть потому что со временем напряжение питающей батареи уменьшается. Чтобы предотвратить это обычно контроллеры ESC программируют таким образом чтобы они останавливали работу BLDC двигателя когда напряжение питающей батареи опускается ниже определенной границы. Особенно эта функция полезна при использовании BLDC двигателей в дронах.

Response time (время отклика, время реакции, время ответа) . Означает способность двигателя быстро изменять скорость вращения при изменении управляющего воздействия. Чем меньше время реакции, тем лучше контроль над двигателем.

Advance (движение вперед) . Эта проблема является своеобразной "ахиллесовой пятой" для BLDC двигателей. Все BLDC двигатели имеют хотя бы небольшой подобный баг. Эта проблема вызвана тем, что когда катушка статора запитана ротор движется вперед поскольку на нем есть постоянный магнит. И когда управляющее напряжение с этой катушки снимают (чтобы подать его на следующую катушку) ротор продвигается вперед немного дальше чем предусмотрено логикой функционирования двигателя. Это нежелательное продвижение двигателя вперед в англоязычной литературе называют “Advance” и оно может приводить к нежелательным вибрациям, нагреву и шуму при работе двигателя. Поэтому хорошие контроллеры ESC стараются по возможности устранить этот эффект в работе BLDC двигателей.

Работа схемы

Схема подключения BLDC двигателя и контроллера ESC к плате Arduino представлена на следующем рисунке.

Схема подключения BLDC двигателя и контроллера ESC к плате Arduino

Как видите, схема достаточно проста. Контроллеру ESC необходим источник питания с напряжением 12V и током как минимум 5A. Для питания схемы можно использовать адаптер или Li-Po батарейку. Три фазы (провода) BLDC двигателя необходимо подсоединить к трем выходным проводам контроллера ESC – неважно в каком порядке.

Предупреждение : у некоторых контроллеров ESC нет выходных проводов, в этом случае вам необходимо будет припаивать провода от BLDC двигателя к контактам контроллера ESC. Обязательно изолируйте эти оголенные места (пайки) с помощью изоляционной ленты потому что через эти провода возможно протекание достаточно больших токов и любое короткое замыкание может привести к повреждению двигателя и контроллера ESC.

Схема BEC (Battery Eliminator circuit) в контроллере ESC будет самостоятельно обеспечивать (регулировать) постоянное напряжение +5V, поэтому его можно непосредственно использовать для питания платы Arduino. Для управления скоростью вращения двигателя в схеме используется потенциометр, подключенный к контакту A0 платы Arduino.

Внешний вид собранной конструкции показан на следующем рисунке.


Объяснение программы для Arduino

Полный код программы приведен в конце статьи, здесь же мы рассмотрим только его основные фрагменты.

Для управления BLDC двигателем мы будем формировать ШИМ сигнал с частотой 50 Гц и изменяемым от 0 до 100% коэффициентом заполнения. Значение коэффициента заполнения будет управляться с помощью потенциометра. То есть, вращая потенциометр, мы будем управлять скоростью вращения двигателя. Как уже указывалось, управление BLDC двигателем очень похоже на управление сервомотором с помощью ШИМ 50 Гц, поэтому в данном случае мы будем использовать ту же самую библиотеку, которую использовали для управления сервомотором. Если вы начинающий в изучении платформы Arduino, то перед дальнейшим прочтением данной статьи рекомендуем вам изучить принципы формирования ШИМ сигнала в Arduino и подключение сервомотора к плате Arduino.

ШИМ сигнал можно генерировать только на тех цифровых контактах платы Arduino, которые обозначены символом ~. В нашей схеме мы будем управлять контроллером ESC с контакта 9 платы Arduino, поэтому следующей командой мы прикрепим контроллер ESC к этому контакту:

Частотник на ардуино

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

Реальный старт в познании аппаратно-программных средств построения простых систем автоматики. Она очень проста в освоении и не требует почти никаких предварительных условий, кроме пытливого ума.

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

Для неофитов здесь все покажется новым. Для любителей Arduino – устройство применения своих знаний и возможность сосредоточиться на битах, которые являются новыми для них, или сложными для восприятия. Профессионалы используют устройство ради получения прототипа проекта с наименьшей стоимостью реализации заказного оборудования и прошивки.

В любом случае, пользователь получит хорошее представление о программировании на C. Это отличная отправная точка.

Что нужно знать прежде, чем начинать работать с Ардуино?

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

Рекомендуется покупать качественный комплект с хорошим выбором деталей в комплекте с учебным материалом, необходимымдля получения навыков.

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

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

Как начать проектировать систему управления 3-х фазным асинхронным мотором?

Изначально посмотреть видео, где продемонстрирована реализация проекта. После просмотра видео вы будете в состоянии сделать маленький проект в Arduino.

Почему люди используют Arduino для управления трехфазным асинхронным мотором?

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

Наиболее эффективно выполняется регулировка вращения электродвигателя методом изменения частоты сети питания. Самое простое, это сделать посредством частотного преобразователя на микроконтроллере.

Arduino — торговая марка аппаратно-программных средств построения простых систем автоматики и робототехники, ориентированная на непрофессиональных пользователей.

Понижение сетевого напряжения осуществляетсяпри помощи трансформатора, а выпрямление – диодного моста. Микроконтроллер работает в режиме генератора переменной частоты, коммутирует ключ на транзисторах. Переменное напряжение повышается при помощи второго трансформатора и подается на обмотки питания электродвигателя.

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

Программа посредством специальных кодов включает преобразователь, считывает величину напряжения и регулирует его. Далее отдаёт команду переходить к библиотеке передатчика для генерирования кода и его передачи. По мере роста нагрузки, рабочее напряжение компенсируется и регулируется. Для этого применяется два способа: установка большого конденсатора для запасной энергии либо повышающего преобразователя. Выход при этом необходимо контролировать стабилизатором.

В этом заключается основной принцип взаимодействия между электронными устройствами, движком и платой.

Преимущества применения частного преобразователя на микроконтроллере Arduino

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

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

Со школьной скамьи известно простое уравнение:

Мощность = крутящий момент х угловая скорость.

Для конкретной конфигурации мотора мощность – величина постоянная. Так как угловая скорость увеличивается, крутящий момент уменьшается. Таким образом, крутящий момент больше на низких оборотах, и наоборот.

За счет использования Arduino, таким образом, можно замедлить мотор насоса до 50%, и все равно прокачивать большой объем воды, и образом сэкономить более 50% от необходимого электричества. Экономия будет просто астрономической при частичном или регулярном использовании преобразователя.

Управление оборотами однофазного асинхронного двигателя с помощью Arduino

Для начала необходимо попытаться больше узнать про особенности двигателя. Они бывают разные и способы управления ими тоже разные.

Существует три способа регулирования частоты вращения асинхронного мотора:

  • изменением скольжения (только двигатели с фазным ротором);
  • изменением числа пар полюсов;
  • изменением частоты источника питания.

Частотник нужен для обеспечения нормального управления процессами, которые требуют регулирования. Пускатели (УПП, софт-стартеры) уменьшают ударные нагрузки от сетевого напряжения с помощью фазо-импульсного (ФИУ) способа подачи питания на электродвигатель. Словно диммер, они обеспечивают плавное нарастание тока потребления электродвигателя и препятствуют развитию КЗ в питающей сети при пуске.

Если ПЧ для вас дорогое удовольствие, то можно попробовать классический метод регулировки подачи воздуха – управление шиберной задвижкой от сервопривода. Здесь уже упор делается на механику. Собственно сам электродвигатель при таком способе всегда будет работать в номинале.

Инженерно-техническое творчество

Как сделать частотный преобразователь своими руками? Можно прошагать весь Интернет для того чтобы найти лучшие источники информации по теме поделок и не найти ни одного конкретного ответа на свой вопрос, так как каждый проект требует разных компонентов, но есть общий принцип проектирования. Вот он вам пригодится.

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

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

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

Вам нужно будет сделать анализ цепи для определения необходимых компонентов вашей спецификации, включая мин./макс. расчетов по допускам и температуре. На основании исходных данных электродвигателя составляется блок-схема и подбираются электронные компоненты. В качестве примера представляем перечень основных элементов самодельного электропривода5-200Гц (10-400Гц):

п. п.Название элементовКоличество, шт.
1Силовой модуль IRAMS10UP60B со встроенным драйвером1
2BB-102 Макетная плата для монтажа без пайки1
3BBJ-65 Комплект цветных монтажных перемычек MM для макетных плат без пайки1
4Контроллер ATmega481
5Трансформатор 220/12 В 300 Вт1

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

В итоге у вас получится макет-тренажёр.

Частотник на ардуино

Попробуйте разные компоненты в цепи. Используйте мультиметр, чтобы получить результаты. Через какое-то время вы сможете убежденно сказать, почему вы используете резистор 2 Вт вместо 0,25 Вт.

Большинство полупроводниковых компаний продают оценочные платы вместе со своей продукцией. Купите не одну, побольше для учёбы. Инженерное дело – это делать много ошибок, за исключением удара электрическим током или пожара.

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

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

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

Заключение

Когда частные преобразователи были введены в первые, возможно причины были иные, нежели теперь. В современных условиях, это:

    ;
  • энергосбережение;
  • гладкое течение процесса.

Давайте возьмем небольшой конвейер в качестве примера. Традиционный способ, когда необходимо ускорить процесс изменения, необходимо сначала остановить процесс. Если взять старый механизм и поставить новый, это легко может сократить время, затраты на электроэнергию.

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

Если захотите получить уйму опыта то можете попробовать самому сделать схему управления двигателем, ГУГЛ в помощь. Тема очень непростая, тут и электроника и программирование, даже математика будет встречаться.Как правило, кто занимается этой темой серьёзно, схемой вряд ли поделятся. Одно можно сказать, освоив эту тему, вы уже не будете считать себя новичком в электронике и программировании микроконтроллеров.

Maxim Gridin

Устройство представляет собой дополнение к рукоятке газа электрического велосипеда или самоката (например, Kugoo G2 PRO), имитирующее работу контроллера в режиме регулирования тока, когда как контроллер на самом деле управляется напряжением с датчика холла.
Это большинство недорогих контроллеров для электровелосипедов, включая (и особенно) программируемые INFINEON серии 2 и 3, где на мощностях более 1 кВт становится заметен очень разрушительный эффект, когда при включении 30% угла ручки газа вся мощность контроллера пускается на то, чтобы МАКСИМАЛЬНО БЫСТРО создать 30% максимальной скорости.
Если это делается из неподвижного положения ( 0 км/ч), то, даже, если 30% это всего 20 км/ч, то всё равно на эту задачу будет затрачиваться полная мощность!
Результат - резкий рывок на старте, который сказывается на долговечности редуктора и В ОСОБЕННОСТИ ФРИВИЛА редукторного мотора. На нагрузках >2кВт подобные устройства или иные методы смягчения стартового рывка просто необходимы.

Что даёт данное устройство?
- Плавный пуск после долгого стояния на месте, НО в то же время:
- Быстрый набор оборотов после кратковременного сброса газа и последующего резкого роста.
В общем, если в потоке машин на 50 км/ч, вы по необходимости на 1 секунду сбросили газ и снова нажали на полную, то возобновление былых оборотов произойдёт без того ожидания, какое было бы, если бы вы стартовали с 0 км/ч.*
- в отличие от контроллеров с токовым управлением, нет строгой необходимости отпускать газ при отрыве от земли при спрыгивании, например, т.к. при управлении скоростью при снятии нагрузки значительного прироста скорости вращения колеса не будет и нет риска повредить редуктор.

На ГРАФИКЕ ОСЦИЛЛОГРАФА разгон после стоянки - слева и разгон после кратковременно сброса газа при движении со значительной скоростью - справа.
Для обеспечения безопасности уровень сигнала на выходе устройства сбрасывается мгновенно вслед за уменьшением его на ручке газа, а подъем зависит от предыдущего состояния во времени.
- Для всех этих эффектов НЕ требуется реального датчика скорости мотора, токового шунта и изменения схематики контроллера.
- Устройство имеет небольшие размеры, поэтому может быть помещено как в рукоятку газа, если позволяет конструктив, так и в непосредственной близости от контроллера. Возможно сделать кнопки и индикаторный светодиод выносными.

Первая схема и прошивка (с оленекодом, уж простите) для платы ARDUINO PRO MINI. (По сравнению с кодом на Attiny13, здесь пока не исправлено много недоработок.)

* - всех этих бед не знают те, у кого контроллеры с токовым управлением (VESC, Ядрёный, VECTOR и другие). Там на любой скор

Радик Мухаметов

Радик Мухаметов

Maxim Gridin

Maxim Gridin

Я правильно понял, что Вы в SL5 использовали покрытие свободных участков в качестве связей вместо привычных проводников намеренно?

Радик Мухаметов

Ну, да - в качестве нулевого общего проводника или земли. Устройство ещё не собирал, т.к. у меня пока нет нужных компонентов - контроллёра и программатора. Ещё нужно разобраться как происходит процесс прошивки, и что, и какие проги для этого надо. Я так понял, что в прошивке для Attiny13 кнопки не работают? И получается проводники для них можно исключить из печатной платы?

Maxim Gridin

Из прог для залития HEX, EEP и правки фьюзов мне больше всего понравилась AVRDUDESS 2.4.
Попробовал много разных.

Ещё можно минуя программатор USBasp, загружать через Ардуино Nano3, используя его как ArduinoISP-программатор.

Радик Мухаметов

Maxim Gridin

Радик, если будут вопросы, пиши.
Плату лучше поместить туда, где сухо. Курок не похож на такое место. Лучше наверное в сумку к контроллеру, тогда это можно оформить просто как переходник. Находясь в курке, после сильного дождя и на сильном морозе у меня подглючивало - сама нажималась кнопка уменьшения плавности. Подтягивающие резисторы у меня стояли 6.8К. Поэтому в обновлённой схеме я и указал 4.7К.

Я тоже платку нарисовал под свой кондёр в RC-фильтре и под невыносные кнопочки как в некоторых мобилках.

Если с реализацией варианта на Attiny13A в готовом железе не будет, есть мысль, пойти немного дальше, перейти на Attiny85 и добавить режим автокалибровки диапазона работы ручки газа (чтобы не корректировать пороги под разные случаи в прошивке), включаемый, например зажатием сразу обеих кнопок. Затем по задумке надо пару-тройку раз нажать полный газ (с поднятым колесом, естественно, если байк в сборе) в течении, например, 10 секунд. Полученный минимум и максимум овтоматически записались бы в калибровку..
Сейчас просто лично моих знаний не хватает на допиливание этого в Attiny13A, т.к. я и так ужимаясь еле то, что есть впихнул, заняв 1014 байт из 1024.

Радик Мухаметов

Для герметичности можно просто покрыть лаком, а кнопки замазать густой силиконовой или другой смазкой для водооталкивания.

Радик Мухаметов

Кстати, не подскажешь как сортировать по внутреннему сопротивлению и ёмкости большое количество литиевых аккумуляторов 18650 перед их сборкой в батарею, если у них эти параметры будут немного отличаться? Планирую сделать батарею 15S 8P. Как-то онлайн калькулятор видел, где вписывались значения замеренной ёмкости и вроде сопротивлений, а затем он сортировал их в нужные группы. Не могу найти этот калькулятор. Или хотя бы узнать принцип по какому происходит сортировка.

Maxim Gridin

Радик, я вот собрал и снял ещё видосик-тест, хотя, суть в принципе уже ясна думаю. Снимал ещё само создание от и до, но села батарейка и файл получился битый. Теперь, если получится восстановить, то сделаю "как я это делал"..

По поводу ячеек.
Если брать оригиналы, то в принципе можно не измерять. Сколько я коробок перебрал, по импедансу расхождение +/- 0.5мОм, что на 15-40 мОм ерунда. С ёмкостью тоже самое в принципе. Это, кстати, ещё одна из причин, почему мы с командой, с которой этим всем занимаемся, отказались от дешёвых китайцев - перебирать каждый раз по нескольку коробок ну слишком жёстко, тем более, после проверки ёмкости уже ингибитор в банках разрушается и хранятся они меньше. А так в холодильнике при +5 могут и несколько лет пролежать нормально.
Поэтому сейчас по сути этим не занимаемся.
Для проверки вн. сопротивления я использую YR1030, хотя сейчас бы я конечно уже взял последнюю модель YR1035. Есть на Али и удовольствие не очень дешёвое. YR1030 с аксуссуарами стоило ок. 3500 р.
Для измерения ёмкости от простых несколько-слотовых зарядок с этой функцией (опусы и т.п.), до аймаксов или icharger'ов или их аналогов. Но это уже другие деньги. Для одного раза лучше поискать у знакомых.
120 банок прогонять по ёмкости это конечно затянется..
По поводу распределения в сборке:
Надо будет разбивать по 15 шт их уровень того или иного параметра, лучше взять ёмкость за основу, если осмелишься измерять или если есть риск, что она разнится сильно в выборке. И затем раскидывать все 15 по последовательным блокам.
Пример:
Допустим есть 15 плохих и 105 хороших.
Надо, чтобы в одном последовательном блоке было 14 хороших и 1 (то есть поровну) плохих.
Естественно, что идеально одинаково 15 плохих и 105 хороших не будет, поэтому надо понимать, что просто все последовательные блоки должны быть равной ёмкости.
Вручную довольно геморройная задача правильно всё раскидать.
Но вполне может помочь эксельчик с 15 столбиками по 8 строк и одной свободной (для манипуляции копипаста). А снизу черта и суммы ёмкостей, 15 штук.

P.s. если надумал паять, а не варить лентой, забей на все таблицы - после пайки ёмкости банок довольно рандомно подрежутся.

Радик Мухаметов

Радик Мухаметов

применив менее тугоплавкий припой ПОСК 50-18 с кадмием, и мощный паяльник, чтоб процесс происходил максимально быстро без перегрева. Мне не очень нравится сварка в виду её необслуживаемости и неремонтопригодности. А к аккумам сначала припаяю относительно тонкие провода, а затем их припаяю на медную шинку, чтоб в случае чего они смогли сработать в качестве предохранителей, сформировав блоки по 8 штук. Заизолирую их, замажу теплопроводным герметиком, а затем шинками последовательно соединю в конечную батарею.

Радик Мухаметов

Я, кстати, пока изучаю тему элелева в целом, думаю может вообще взять контроллёр с токовым управлением? Такой как, например, Ядрёный контроллёр 6F на 2-4КВт.

Maxim Gridin

Радик, есть Ядрёный, есть там же на форуме его достойный конкурент VECTOR. Какой из них лучше я пока однозначно для себя не решил. И у того и у того есть масса хороших фишек. И примерно стоимость близка. Для Вектора родного экрана нет (есть сторонняя разработка без герметичности, зато недорогая) уже реализовано управление и мониторинг через Андроид-приложение.

Припой с кадмием это прям зло (я как химик говорю. Он примерно как ртуть токсичен, лучше руками такое не брать. Странно, что он в продаже).
В чём выражается неремонтопригодность батарей со сваркой? У меня и тут в группе целый альбом и на ютубе наоборот показано, как сделать, чтобы было максимально ремонтопригодно. Ленту отодрать от нужной ячейки вполне реально. Зато и необходимость ремонта скорее всего наступит не скоро как раз из-за щадящего способа соединения.

По поводу внутреннего сопротивления ячеек - система самовыравнивающаяся:
Чем больше износ в ячейке с низким внутренним сопротивлением (хотя, это под вопросом ещё, ведь, меньше сопротивление - меньше нагрев), тем скорее её внутреннее сопротивление плдрастёт и станет как у соседей. Тут по одному параметру довольно тяжко выровнять, а матрицу по двум - это вообще вырви мозг будет..
Отношение к шинкам и "предохранителям" у меня однозначно негативное. Слишком долго расписывать, почему так. Я это уже неоднократно Верде делал и никаких толковых контраргументов кроме "новедьутеслытак" никто привести не может.
Не предохраняют они от самых главных КЗ. А тепловых потерь в них куча и это все греет аккумы с торцов и все это надо защищать от механических повреждений ещё больше, чем от КЗ.
В самом мощном аккумулляторном электроинструменте никогда и в голову никому не прийдёт такое делать. Просто хорошая механическая защита решает и минимальные сопротивления во всех переходах. И ни один шуруповёрт ещё не загорался - там банки надёжные используют плюс ко всему.
Мне кажется, что вместо 4 опусов надо было оригинальные акки взять и опусы не понадобились бы и разбирать ничего не надо.
Ты замеришь ёмкость и импеданс, а после пайки там будут совсем другие параметры и сборка выйдет хуже, чем ты можешь представить.
Предлагаю обсуждение, если оно не касается плавного газа, перенести в личку, а тут обсуждать только тему

Радик Мухаметов

Ну пайка тоже может происходить достаточно быстро и без перегрева аккумулятора, если подойти к этому моменту ответственно. И по сути какая разница - кратковременно нагревать точечной сваркой свыше 1 тыс гр до оплавления металла в нескольких точках или нагревать по-дольше, но уже до ~ 300? Мне кажется, что эти процессы в данном случае равнозначны. Я как-то разбирал аккумулятор от шурика, еле оторвал эту сварку. В одной из банок даже дырку умудрился сделать. Запял это отверстие, вроде ничего страшного не произошло. Видел недавно видос, про последствия того, как взорвалась аккумуляторная батарея в процессе сварки у одного чувака, но сам автор говорит о запрете именно пайки, что довольно странно - явное несоответствие предмета разговора происшествию. Как наиболее верно предполагают - произошло оплавление пластиковой изоляции на плюсовом контакте (картонные кружочки ведь не использовали) с последующим к.з. на минус и возгоранием. Но сварочника у меня нет, так что буду использовать доступный мне инструментарий. Попробую припоем без кадмия, если не организую вытяжку и в перчатках. Я проводки хотел применять, также и для того, чтоб иметь наименьшую теплоёмкость при пайке - чтоб по-долгу не греть шинку и аккумулятор при их воссоединении (хотя какая шинка? Просто широкая медная пластина толщиной 0,2мм с дырками). Да и с банки я не планирую снимать ток свыше её ёмкости, т.е. не более 3 ампер, или 24 ампер в целом (~1,5квт). Фирменные аккумы всё-таки стоят в 2-2,5 раза дороже. Я уже в очередь встал за ЯК. Маленький размер, мощное железо. Экранчик с кучей настроек мне симпатичен, особенно так необходимый мне плавный старт. Нравится парольная активация. Но есть оперативно решаемые недоработки в ПО. Обещают изготовить через месяц. А ты сколько его ждал? И что не устраивает по сравнению с Vector?

Maxim Gridin

"И по сути какая разница"
- разница без приборов определяется легко. Думаю, тут вопрос в настройке джоулей, а соответственно в количестве испорченного материала внутри. Во всяком случае, после приваривания ленты я мгновенно бросаюсь пальцем к месту сварки и не чувствую вообще никакого поднятия температуры на ленте. Полагаю, что не у всех так, потому что ореолы в местах сварки я видел, но у меня такого нет. Больше походит на результат конденсаторной сварки. Я не заставляю))) Просто, я бы не стал, хотя, могу припаять довольно быстро. Недавно видел ролик, где паяют с микрокаплями кислоты.. Но ведь всё равно её не смывают и всё равно коррозия более вероятна в итоге, чем без разрушающих оксид веществ.

ПРо видос с пожаром из-за сварки, я думаю, что вывод не верный про КЗ на краю. Там самое толстое место как раз - куча сложенных слоёв. Там очень сложно что-то прожечь, что сваркой, что даже КЗ. Если и испортил бы он там что-то сваркой, то это было явно на ровном участке, например, на минусовой клемме. А у поддельных банок как раз стенки тонковаты. Если говорить о предмете разговора и происшествия, то я зажигал батареи с помощью КЗ и знаю, как и где это надо делать. Проще всего на корпус с ровной поверхностью и желательно не от одной банки напряжение, а от всей цепочки. При таком КЗ никакие ниточки-предохранители не спасают, т.к. прожигать будет грубо говоря, напряжение (общая мощность), а не чисто ток.

ЯК я не заказывал, я только изучаю варианты. Всё перечисленное есть и в Векторе, включая плавность с кучей настроек. Также там есть управление силой контроллера, например, фарой. Видео с описаниями есть в соответствующей теме. Их довольно много и тоже, как и с ЯК довольно подробно.. но по другому. Наличие приложения под Андроид, я считаю плюсом. С экранчиком конечно круто, но я оставляю иногда байк, приколотым на толстую калёную цепь и, хоть и не надолго, но экранчик бы в первую очередь был бы в опасности.
В качестве Эксперимента, я купил в Китае Vesc v4.12, попробовать, что такое FOC, настройки на лету, токовое управление и т.д. Он мне обошёлся в 3300 р (Если хорошо поискать, найти можно). Мне понравилось, хотя, пока настроишь это всё, можно повеситься. На самомм деле до конца я пока не доволен. И По мощности Финик EB309 рвёт его как грелку, хотя в VESC заявлены фазные токи до 240А. Я ставил батарейный 50, фазный до 85 и до 120А - допустимые пики.
Инфинеон на 48 Батарейном и 70 фазном не захлёбывается через 30 секунд хорошего подъёма, как это делает "безопасный", весь на защитах (как и в Ядрёном) VESC.

Подозреваю, что ЯК - развитие открытого кода VESC'а, но об этом никто не признается. Василий не разговорчив на эту тему. А вот Контроллер от VVK - это точно аутотентичная разработка..
Ещё мне плюс, что он из моего города и даже есть общие знакомые. У меня план - пообщаться и что-то дельное выяснить, может быть, он согласился бы дать потестить до покупки.. Пока это только идея.

Кстати, если плавный газ на тини ещё актуален, я обновил прошивку до v07, исправил то, что раньше первые 10% всегда нарастали быстро (график я заменил на актуальный). Теперь чётко - плавно от самого нуля после простоя секунд 15-20 в зависимости от степени плавности в настройках.


В этой статье расскажу как можно сделать умную подсветку с помощью RGB светодиодной ленты и ардуино. Покажу два варианта применения этой подсветки: первый — в доме, второй -в автомобиле.

Возможности:

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

Список необходимого

  • Мозг устройства – Ардуино Нано – 1 шт. — 150 р.
  • Датчик движения — HC-SR505 – 1 шт. — 60 р.
  • Сенсорная кнопка TTP-223 – 1 шт. — 20 р.
  • Транзистор IRF-3205 — 3 шт. -150 р.
  • Резистор 10 К 0,25 Вт – 3 шт. – 6 р.
  • Резистор 20 Ом 0,25 Вт – 3 шт. – 6 р.
  • Макетная плата под пайку размерами 90х50 мм – 1 шт. 100 р.
  • Корпус 100х60 — 1 шт. 60 руб.

Итого 14 деталей на общую сумму примерно 600 рублей + сама светодиодная RGB лента в зависимости от формата планируемой подсветки.

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

Блок питания

Также нужно будет позаботиться о питании устройства.

Блок питания нам понадобится на 12 вольт, а мощность варьируется в зависимости от длины ленты и плотности светодиодов.

К примеру, лента со светодиодами 5050, плотностью 60 светодиодов на метр потребляет максимум 0,8 А на метр. Данные выведены чисто экспериментально, ибо в даташитах на ленты с этими светодиодами красуется цифра 14,4 ватт на метр, что означает 1,2 Ампера при 12 вольтах.

Значит для 5-ти метровой ленты достаточно блока питания 4А. И это для максимальной яркости в режиме белого цвета. Также, если цвет отличается от белого, то потребление снижается.

Чтобы было легче выбрать блок питания я тут заморочился и нарисовал таблицу потребления для ленты.

Максимально потребляемый светодиодной лентой ток , Ампер:


Расчёт потребления тока светодиодными лентами

Соответственно выбираем блок питания способный выдать ток НЕ МЕНЬШИЙ чем способна потребить ваша лента.

Выбор RGB ленты

Для этого проекта нам понадобится именно RGB светодиодная лента, та — что с четырьмя контактами.


Также существуют варианты RGB с тремя, пятью и даже шестью контактами, все они для нашего проекта без переделок не подойдут.

Вариант с тремя контактами – это адресная лента. Для управления такой лентой нужная другая схема и другой программный код, поэтому рассмотрим этот вариант в отдельной статье.

Вариант с пятью и шестью контактами это RGBW и RGBWW ленты. Как вы уже догадались, буква W обозначает дополнительно припаянный белый светодиод, а WW два белых светодиода, такие ленты используются в случаях, если белым нужно светить гораздо ярче чем остальными цветами.

Обычная четырехконтактная лента способна светить белым цветом и без дополнительных светодиодов, просто включив все три своих цвета в равных пропорциях.

Схема контроллера RGB подсветки на ардуино


Схема контроллера RGB ленты

Как видно, ничего особенно сложного.

Ардуино питается напрямую от 12 вольт. У неё есть встроенный преобразователь, который снижает питающее напряжение до 5 вольт, от него и будем питать модуль сенсорной кнопки и датчик движения.

Ардуино управляет тремя транзисторными ключами, которые в свою очередь управляют цветами ленты.

Ключи управляются ШИМ сигналом, подробнее об этом можно прочесть здесь.

Используются три канала ШИМ ардуино.

Сборка устройства

Вот так выглядят все необходимые ингредиенты:



Спаиваем всё по схеме и устанавливаем в коробку:


На всякий случай соединение ключей:


Ключ на IRF3205

Программная часть

Устанавливаем на компьютер Arduino IDE, если ещё не установлена. Подробнее о начале работы с ардуино в этой статье.

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

Распаковываем архив, копируем библиотеки из папки lib в папку C:\Program Files (x86)\Arduino\libraries.

После чего открываем файл SUP_V1.0.ino и видим настройки:

Короткие клики по кнопке меняют цвет ленты согласно прописанному массиву цветов, длинные нажатия увеличивают или снижают яркость поочерёдно.

Яркость регулируется для двух режимов, сработавшего датчика движения и без его срабатывания. Регулировка для каждого режима производится в том состоянии датчика в котором вы хотите отрегулировать яркость.

Это был домашний вариант подсветки, а теперь покажу вам автомобильный:

Вариант второй, RGB подсветка на ардуино для автомобиля

Все шаги очень похожи, отличий всего два: первое- это датчик движения заменён делителем напряжения, подключенным к концевику дверей или подсветки салона и второе-код немного адаптирован под другие цели.

Код для автомобильной подсветки можно скачать здесь:

Схема сборки вот такая:


Схема умной подсветки ног для автомобиля

С настройками тоже самое, главное не повышать яркость больше чем на 70 %. Иначе при питании от бортового напряжения 14,2 вольт лента может сгореть.

Пользуйтесь на здоровье, а если имеются вопросы или доработки милости прошу в комментарии.

Читайте также: