Как включить контроллер мотор колеса без дисплея

Обновлено: 05.07.2024

Пожалуй самый простой бюджетный контроллер для электровелосипеда мощностью 350 Вт с моторколесом (BLDC двигателем). Средняя цена около 700 руб. с доставкой из Китая. Несмотря на дешевизну он вполне надёжный и функциональный.

Основные характеристики контроллера

  • Питание от батарей с номинальным напряжением 36В, 48В
  • Возможна работа моторколеса как с датчиками Холла, так и без них
  • Автоматическое определение фазового угла датчиков Холла 60/120 градусов
  • Номинальная мощность 350 Вт
  • Максимальный ток 16-18A
  • 6 FET транзисторов
  • Размеры 10.3x7x3.5 см

Назначение проводов

Контроллер работает с ручками и курками газа на датчике Холла. Здесь собраны некоторые из них.

Обучение контроллера

Что интересного внутри контроллера

Если вскрыть контроллер можно увидеть не совсем опрятную плату, по крайней мере у меня произошло так. Плату проверить всё же желательно, я обнаружил неотмытые капельки припоя, которых по хорошему там быть не должно. Также стоит обратить внимание на наличие термопасты на радиаторе с мосфетами. Электролитические конденсаторы по питанию установлены на 63 В. Мосфеты P65NF06 с предельно допустимым напряжением сток-исток (Uds): 60 В. То есть контроллер можно запитывать от батарей с немного более высоким напряжением, чем привычных, 48 В (54,6 мах). Это литий-ионная батарея 14S или литий-железо-фосфатная 16S. Напряжения этих полностью заряженных батарей 58,8 В и 58,4 В соответственно. Максимальная скорость в этом случае будет чуть больше.

Дополнительные функции контроллера

Кроме того на плате есть точки дополнительных функций, которые не выведены в общем пучке проводов. Функция срабатывает при подключении точки к общему проводу (GND). (Любой черный провод на плате это общий или GND).

Точки подписаны следующим образом:

Эта схема также встречается в контроллерах мощностью до 350 Вт, выполненных в других корпусах.

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

Смотрите также как своими руками прошить плату (контроллер) от гироскутера под управление с ручки или педалей газа. На основе такой платы можно построить электросамокат, электровелосипед, трайк, детский электромобиль с приводом на два колеса.

image

Как вы уже знаете из прошлых постов, у нас в компании есть DIY-движение. В свободное от работы время коллеги занимаются фрезеровкой печатных плат в домашних условиях, делают тепловизор на FLIR Lepton, а также решают семейные разногласия с помощью 4 контроллеров и 2 умных часов. Продолжим серию увлекательный историй! Сегодня я расскажу, как сделать контроллер к трехфазному двигателю электровелосипеда своими руками. Целью создания такого контроллера было:

  1. Изучение работы трехфазного мотора под управлением контроллера.
  2. Большинство контроллеров для электровелосипедов, представленных на рынке, — китайские. Они хоть и относительно дешевые (около 2.000 руб в зависимости от мощности), но являются неведомой коробкой, в которой неизвестно что происходит. И сразу к ней возникает очень много вопросов — экономично ли она потребляет и распределяет ток, какой у нее запас мощности, почему так сильно перегревается, преждевременно срабатывает защита по току и т.д.

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

В итоге я решил пойти своим путем: разобраться в устройстве контроллера, сделать его прототип, а затем попытаться сделать контроллер качественнее китайского контроллера. На текущий момент проект у меня в разработке только и на уровне прототипа, готового варианта пока нет. Буду рад услышать ваши комментарии и советы.

Применение

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

  • Бытовая техника
  • Оргтехника
  • Электротранспорт
  • Промышленность

Устройство двигателя

Для разработки контроллера необходимо разобраться с принципом работы самого электродвигателя.

image

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

Конструктивно электродвигатели делятся на два типа: инраннеры и аутраннеры.

image

У инраннеров магнитные пластины крепятся на вал, а обмотки располагаются на барабане (статоре), в этом случае в движение приводится вал. В случае аутраннера всё наоборот: на валу — фазные обмотки, а в барабане — магнитные пластины. Это приводит в движение барабан.

image

Так как у велосипеда колесо крепится валом на раму, то здесь применителен тип аутраннера.

image

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

В двигатель устанавливаются три датчика Холла. Датчики реагируют на магнитное поле, тем самым определяя положение ротора относительно статора двигателя. Устанавливаются с интервалами в 60 или 120 электрических градусов. Эти градусы относятся к электрическому фазному обороту двигателя. Необходимо учитывать, что чем больше в двигателе обмоток на каждую фазу, тем больше происходит электрических оборотов за один физический оборот мотор-колеса.

image

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

Цикл работы

Чтобы привести в движение трёхфазный двигатель, нужно рассмотреть цикл его работы за электрический оборот. Итак, имеем три фазы — A, B, C. Каждая из фаз получает положительную и отрицательную полярности в определённый момент времени. Поочерёдно по шагам пропускается ток от «плюса» одной фазы к «минусу» другой фазы. В итоге получается шесть шагов = три фазы × две полярности.

image

Рассмотрим эти шесть шагов цикла. Предположим, что положение ротора установлено в точке первого шага, тогда с датчиков Холла мы получим код вида 101, где 1 — фаза А, 0 — фаза B, 1 — фаза С. Определив по коду положение вала, нужно подать ток на соответствующие фазы с заданными полярностями. В результате вал проворачивается, датчики считывают код нового положения вала — и т. д.

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

Цикл двигателя представлен в gif-анимации.

Транзисторы и Н-мост

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

image

Для переключения фаз со сменой их полярностей используют классическую схему Н-моста (H-Bridge) из полевых транзисторов.

image

Он состоит из трёх пар транзисторов. Каждая из пар подключается к соответствующей фазе обмотки двигателя и обеспечивает подачу тока со значением (+ или –). Транзисторы, отвечающие за включение фазы с положительным значением, называют верхними ключами. С отрицательным — нижними. Для каждого шага открывается пара ключей: верхний одной фазы и нижний соседней фазы. В результате ток проходит от одной фазы к другой и приводит электродвигатель в движение.

image

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

Для запуска остаётся обеспечить управление затворами ключей H-моста. Для управления H-мостом нужно:

  1. Считать показания датчиков Холла.
  2. Определить, в каком положении какую пару ключей включать.
  3. Передать сигналы на соответствующие затворы транзисторов.

Прототип на Ардуино

Под рукой у меня была Arduino UNO, и я решил собрать контроллер на её основе.

image

Первым делом я подал на датчики Холла питание 5 вольт от Ардуино (его достаточно для датчиков). Сигнальные провода от датчиков подключил на цифровые пины Ардуино, написав простейшую программу для считывания и обработки сигналов с датчиков.

Затем собрал Н-мост из полевых NPN-транзисторов. Подвёл к мосту независимое питание на 12 вольт. Но при отладке, чтоб убедиться в работоспособности, я подключил напрямую шесть пинов 5V из Ардуино на затворы H-моста. У большинства полевых транзисторов затвор работает на 20 вольт. Так делать нельзя, потому что Н-мост будет плохо работать и перегреваться. Но для кратковременных тестов это пойдёт. Кое-как, с сильными перегревами и страшными звуками, вибрациями и толчками колесо медленно закрутилось. Начало положено.

Мостовые драйверы

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

image

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

В это же время я наткнулся на два варианта мостовых драйверов:

Что касается HIP4086, то это полноценный мостовой драйвер, предназначенный для трёхфазного электродвигателя. Мне он показался несколько замороченным, и мои попытки использовать его в контроллере не увенчались успехом: он у меня так и не заработал. Углублённо разбираться в причинах не стал.

А взял я IR2101 — полумостовой драйвер, обеспечивающий работу нижнего и верхнего ключей для одной фазы. Несложно догадаться, что таких драйверов нужно три. К слову, драйвер очень прост в использовании, его подключение происходит безболезненно и легко. Получилась такая схема:

image

image

И готовый результат

image

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

Аппаратное прерывание

И тут я понял, в чём дело: Ардуино не успевает обрабатывать показания датчиков Холла! Поэтому необходимо было использовать пины Ардуино с аппаратным прерыванием. Так как у Ардуино УНО таких пинов всего два, а под датчики нужно три пина, надо взять Ардуино Леонардо или Искра Нео, где таких пинов — четыре штуки.

image

Переписав программу под прерывания и подключив Искру Нео вместо УНО, я повторил испытания.

Колесо наконец-то заработало чётко, без вибраций, шумов, отлично стало набирать обороты без рассинхронизации. Прототип оказался жизнеспособным. Но это ещё не полноценный контроллер, поскольку в нём не было обвязки с защитами и обеспечением качественного ШИМ-сигнала.

Прототип на базе микросхемы MC33035

Параллельно с разработкой контроллера на Ардуино я рассматривал альтернативные варианты логической части контроллера. И это привело меня к микросхеме MC33035. Это старая разработка от Motorola, сейчас её выпускает ON Semiconductor. Создана специально для мощных трёхфазных двигателей.

image

image

  • Отвечает за всю логическую часть контроллера
  • Считывает показания с датчиков Холла
  • Определяет положения вала
  • Выдаёт сигналы для затворов Н-моста на их драйверы
  • Имеет возможность подключения индикатора ошибок, перегрева
  • Обрабатывает и передает ШИМ-сигнал (PWM)
  • Осуществляет реверс (обратный ход колеса)

Одним словом, микросхема содержит всё необходимое для управления электродвигателем. Её стоимость очень низкая: на Алиэкспрессе — около 50 рублей. Для сборки полноценного контроллера на её основе потребуется микросхема MC33035, полумостовые драйверы и Н-мост из полевых транзисторов. Я также собрал контроллер на этой микросхеме. Работает отлично, стабильно, колесо крутится как надо на различных оборотах. Но функционал микросхемы ограничен, если необходимо наворотить различные функции, вывод на дисплей скорости, одометр, расход батареи, то опять же возникает необходимость дополнительно подключить Ардуино или что-то аналогичное.

Схема с MC33035

image

image

image

Главное преимущество контроллера на базе MC33035 — это простота в использовании. Просто покупаете микросхему, собираете Н-мост, спаиваете всё на плату с небольшой обвязкой — и контроллер готов. Если нужно просто запустить двигатель с ШИМ-сигналом и управлять им — оптимальный вариант.

Контроллер на базе Ардуино — вариант сложнее, понадобится писать логику, обеспечивать дополнительные защиты контроллера. Но для экспериментов, прототипов, дополнительного функционала, использования различных режимов работы двигателя — подходящий вариант. Поэтому я решил пока отложить MC33035 и продолжить работу с Ардуино.


Как вы уже знаете из прошлых постов, у нас в компании есть DIY-движение. В свободное от работы время коллеги занимаются фрезеровкой печатных плат в домашних условиях, делают тепловизор на FLIR Lepton, а также решают семейные разногласия с помощью 4 контроллеров и 2 умных часов. Продолжим серию увлекательный историй! Сегодня я расскажу, как сделать контроллер к трехфазному двигателю электровелосипеда своими руками. Целью создания такого контроллера было:

  1. Изучение работы трехфазного мотора под управлением контроллера.
  2. Большинство контроллеров для электровелосипедов, представленных на рынке, — китайские. Они хоть и относительно дешевые (около 2.000 руб в зависимости от мощности), но являются неведомой коробкой, в которой неизвестно что происходит. И сразу к ней возникает очень много вопросов — экономично ли она потребляет и распределяет ток, какой у нее запас мощности, почему так сильно перегревается, преждевременно срабатывает защита по току и т.д.

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

В итоге я решил пойти своим путем: разобраться в устройстве контроллера, сделать его прототип, а затем попытаться сделать контроллер качественнее китайского контроллера. На текущий момент проект у меня в разработке только и на уровне прототипа, готового варианта пока нет. Буду рад услышать ваши комментарии и советы.

Применение

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

  • Бытовая техника
  • Оргтехника
  • Электротранспорт
  • Промышленность

Устройство двигателя

Для разработки контроллера необходимо разобраться с принципом работы самого электродвигателя.

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

Конструктивно электродвигатели делятся на два типа: инраннеры и аутраннеры.

У инраннеров магнитные пластины крепятся на вал, а обмотки располагаются на барабане (статоре), в этом случае в движение приводится вал. В случае аутраннера всё наоборот: на валу — фазные обмотки, а в барабане — магнитные пластины. Это приводит в движение барабан.


Так как у велосипеда колесо крепится валом на раму, то здесь применителен тип аутраннера.

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

В двигатель устанавливаются три датчика Холла. Датчики реагируют на магнитное поле, тем самым определяя положение ротора относительно статора двигателя. Устанавливаются с интервалами в 60 или 120 электрических градусов. Эти градусы относятся к электрическому фазному обороту двигателя. Необходимо учитывать, что чем больше в двигателе обмоток на каждую фазу, тем больше происходит электрических оборотов за один физический оборот мотор-колеса.

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

Цикл работы

Чтобы привести в движение трёхфазный двигатель, нужно рассмотреть цикл его работы за электрический оборот. Итак, имеем три фазы — A, B, C. Каждая из фаз получает положительную и отрицательную полярности в определённый момент времени. Поочерёдно по шагам пропускается ток от «плюса» одной фазы к «минусу» другой фазы. В итоге получается шесть шагов = три фазы × две полярности.


Рассмотрим эти шесть шагов цикла. Предположим, что положение ротора установлено в точке первого шага, тогда с датчиков Холла мы получим код вида 101, где 1 — фаза А, 0 — фаза B, 1 — фаза С. Определив по коду положение вала, нужно подать ток на соответствующие фазы с заданными полярностями. В результате вал проворачивается, датчики считывают код нового положения вала — и т. д.

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

Цикл двигателя представлен в gif-анимации.

Транзисторы и Н-мост

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

Для переключения фаз со сменой их полярностей используют классическую схему Н-моста (H-Bridge) из полевых транзисторов.

Он состоит из трёх пар транзисторов. Каждая из пар подключается к соответствующей фазе обмотки двигателя и обеспечивает подачу тока со значением (+ или –). Транзисторы, отвечающие за включение фазы с положительным значением, называют верхними ключами. С отрицательным — нижними. Для каждого шага открывается пара ключей: верхний одной фазы и нижний соседней фазы. В результате ток проходит от одной фазы к другой и приводит электродвигатель в движение.


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

Для запуска остаётся обеспечить управление затворами ключей H-моста. Для управления H-мостом нужно:

  1. Считать показания датчиков Холла.
  2. Определить, в каком положении какую пару ключей включать.
  3. Передать сигналы на соответствующие затворы транзисторов.

Прототип на Ардуино

Под рукой у меня была Arduino UNO, и я решил собрать контроллер на её основе.


Первым делом я подал на датчики Холла питание 5 вольт от Ардуино (его достаточно для датчиков). Сигнальные провода от датчиков подключил на цифровые пины Ардуино, написав простейшую программу для считывания и обработки сигналов с датчиков.

Затем собрал Н-мост из полевых NPN-транзисторов. Подвёл к мосту независимое питание на 12 вольт. Но при отладке, чтоб убедиться в работоспособности, я подключил напрямую шесть пинов 5V из Ардуино на затворы H-моста. У большинства полевых транзисторов затвор работает на 20 вольт. Так делать нельзя, потому что Н-мост будет плохо работать и перегреваться. Но для кратковременных тестов это пойдёт. Кое-как, с сильными перегревами и страшными звуками, вибрациями и толчками колесо медленно закрутилось. Начало положено.

Мостовые драйверы

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

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

В это же время я наткнулся на два варианта мостовых драйверов:

Что касается HIP4086, то это полноценный мостовой драйвер, предназначенный для трёхфазного электродвигателя. Мне он показался несколько замороченным, и мои попытки использовать его в контроллере не увенчались успехом: он у меня так и не заработал. Углублённо разбираться в причинах не стал.

А взял я IR2101 — полумостовой драйвер, обеспечивающий работу нижнего и верхнего ключей для одной фазы. Несложно догадаться, что таких драйверов нужно три. К слову, драйвер очень прост в использовании, его подключение происходит безболезненно и легко. Получилась такая схема:


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

Аппаратное прерывание

И тут я понял, в чём дело: Ардуино не успевает обрабатывать показания датчиков Холла! Поэтому необходимо было использовать пины Ардуино с аппаратным прерыванием. Так как у Ардуино УНО таких пинов всего два, а под датчики нужно три пина, надо взять Ардуино Леонардо или Искра Нео, где таких пинов — четыре штуки.

Переписав программу под прерывания и подключив Искру Нео вместо УНО, я повторил испытания.

Колесо наконец-то заработало чётко, без вибраций, шумов, отлично стало набирать обороты без рассинхронизации. Прототип оказался жизнеспособным. Но это ещё не полноценный контроллер, поскольку в нём не было обвязки с защитами и обеспечением качественного ШИМ-сигнала.

Прототип на базе микросхемы MC33035

Параллельно с разработкой контроллера на Ардуино я рассматривал альтернативные варианты логической части контроллера. И это привело меня к микросхеме MC33035. Это старая разработка от Motorola, сейчас её выпускает ON Semiconductor. Создана специально для мощных трёхфазных двигателей.

  • Отвечает за всю логическую часть контроллера
  • Считывает показания с датчиков Холла
  • Определяет положения вала
  • Выдаёт сигналы для затворов Н-моста на их драйверы
  • Имеет возможность подключения индикатора ошибок, перегрева
  • Обрабатывает и передает ШИМ-сигнал (PWM)
  • Осуществляет реверс (обратный ход колеса)

Одним словом, микросхема содержит всё необходимое для управления электродвигателем. Её стоимость очень низкая: на Алиэкспрессе — около 50 рублей. Для сборки полноценного контроллера на её основе потребуется микросхема MC33035, полумостовые драйверы и Н-мост из полевых транзисторов. Я также собрал контроллер на этой микросхеме. Работает отлично, стабильно, колесо крутится как надо на различных оборотах. Но функционал микросхемы ограничен, если необходимо наворотить различные функции, вывод на дисплей скорости, одометр, расход батареи, то опять же возникает необходимость дополнительно подключить Ардуино или что-то аналогичное.


Главное преимущество контроллера на базе MC33035 — это простота в использовании. Просто покупаете микросхему, собираете Н-мост, спаиваете всё на плату с небольшой обвязкой — и контроллер готов. Если нужно просто запустить двигатель с ШИМ-сигналом и управлять им — оптимальный вариант.

Контроллер на базе Ардуино — вариант сложнее, понадобится писать логику, обеспечивать дополнительные защиты контроллера. Но для экспериментов, прототипов, дополнительного функционала, использования различных режимов работы двигателя — подходящий вариант. Поэтому я решил пока отложить MC33035 и продолжить работу с Ардуино.

Планы на будущее контроллера

Продолжая работу над контроллером, планирую сделать следующее:

  • IGBT-транзисторы для H-моста вместо полевых транзисторов.
  • Обвязку с защитами по току, перегреву и т. п.
  • Полноценный круиз-контроль с возможностью выставлять необходимую скорость движения.
  • Расходомер. Когда задаётся необходимое расстояние, а контроллер, исходя из этого значения и заряда аккумулятора, дозирует разряд аккумулятора на всём протяжении маршрута так, чтобы зарядки хватило.

Контроллер для электровелосипеда 36/48 В 18 А 350 Вт

Пожалуй самый простой бюджетный контроллер для электровелосипеда мощностью 350 Вт с моторколесом (BLDC двигателем). Средняя цена около 700 руб. с доставкой из Китая. Несмотря на дешевизну он вполне надёжный и функциональный.


Продолжаем велотему.
Привезли электровелик Sparta ION RX. Электровелик с неродным дисплеем.
Все работает, включает свет, показывает скорость, время, температуру, пробеги и пр. но одна проблема- не едет. При включении любой из 6 степеней помощи (5 вперед и 1 помощь в парковке) пишет ошибка e-0014 не родной дисплей и отказывается ехать. Прошивка мозгов велика на неродной дисплей такого же типа (или прошивка дисплея на велик) около 60 евро где то в нидерландах у дилера спарты. То есть ехать можно только на педалях. О решении проблемы написано дальше.

Спросил у гугла, оказалось что это велик умный, дисплей и мотор общаются по какому то своему протоколу. Обмануть протокол не представляется возможным, было решено решать проблему «в лоб», ставить китайский контроллер на мотор и все. Мотор был осмотрен, 250 ватт 36 вольт, 3 провода. Ну раз 3 провода, значит это выход трех обмоток, мотор без датчиков холла. Заказан контроллер, который может работать без датчиков холла (ссылка в шапке, брал за 15$), ожидание 2 месяца, большой заказ разбит на несколько безтреков.
Приехал контроллер, привезли велик. Снимаю крышку коммутации батареи, туда уходят три провода с мотора. Два провода толстые, как положено, силовые, один тонюсенький, передача данных. То есть на выходе мотора не 3 выхода обмотки, которыми управлять просто, а два силовых и один управляющий по хитрому протоколу. Прилетела птица обломинго. Просто решить не получится.
Решил делать по полной программе, идти до конца.

Снятие колеса.
Задние гайки под ключ на 19, а не 15 как у всех велов.
Снятие гаек, шайбочек, усилителей, натяжителей и прочей ерунды. Колесо не вытаскивается. Пока не сдул камеру, не смог вытащить колесо.

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

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




Мотор разобран.


Было 3 провода, нужно 3 старых +5 на холлы +3 фазы силовые. Было 3 нужно 11, проблема. Канал под кабеля в оси не резиновый, сверлить и увеличивать канал не решение — ослабнет ось. Протянул шввп 3*0,75+8 мгтф. Все в каптон, кембрики.

Датчики холла решено ставить в прорези ротора. Самодельным дремелем сделаны пропилы под датчики, датчики вклеены на эпоксидную смолу. Форма пазов под датчик не позволяет им вылететь и попасть в магниты.


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

Верхняя плата с электроникой не садится, еще доработка корпуса дремелем. Села.

Сборка колеса, изоляция и укладка проводов. Колесо готово.


Батарея.
10 элементов последовательно 4 параллельно. 10S4P. Samsung INR18650.
Заявлено 11,6 амперчаса, реально около 10. Очень хорошо.
Но батарея не выдает напряжение на колесо (выдает 6в на фару), не видит команды, в батарее тоже «мозги». Припаиваюсь напрямую к плюсу и минусу батареи после предохранителя. Все в каптон, сверление корпуса батареи, герметизация термоклеем, сборка. Теперь с батареи можно брать напряжение, припаял две круглые клеммы.

Контроллер.
Разобрал контроллер, 6 полевиков и микросхема о 28 ногах.

Полевики SSF7509, N-канал, 75В, 6,5 mOhm, 80A.
Микросхема D79F7027. Находил мануал на похожую, но в другом корпусе, видимо это специализированный контроллер бесщеточных двигателей. Термопаста есть, собрано не плохо.
Обрезал лишние провода, собрал. Изготовил пластину для крепления контроллера. Закрепил между седлом и багажником.

Ручка газа.
Ручка газа состоит из почти десятка деталей. Стандартная ручка газа электровела работает на аналоговом холле, на выходе которого напряжение меняется от 0 до 5 вольт в зависимости от положения ручки, на которой находится кольцевой магнит. Я и контроллер надеялись на такой же сигнал. Но нет. Ручка газа разобрана полностью, внутри SMD датчик холла на 6 контактов, маркировку прочитать не удалось. Б***. Плата залита компаундом, расковыривал паяльником на 300 градусов. Магнит на ручке есть, датчик холла есть, напряжения 0-5 в нет и как его снять не понятно. Есть контакты RX и TX, то есть прием и передача, в ручке тоже «мозги».


На разборку и сборку ушло часов 10. В ручке стоит даже датчик температуры. Заказаны ручки газа с китая разного типа, Собрана временная коробочка на тумблере и резистивном делителе, она дает сигнал 0 -5 в на контроллер.



Общая сборка и проверка
Все собрано, кабеля подрезаны по длине и упакованы в разрезную гофру.
Провод на газ — провод от мыши, протянут в раме.

Контроллер может работать с датчиками холла и без. Ток контроллера до 20А. При превышении тока контроллер выключает нагрузку, нужно скинуть ручку газа в ноль и заново можно ехать. Например если затормозить колесо тормозом при электротяге (концевиков на ручках тормозов нет) то контроллер отключает колесо.
На холостом без нагрузки на максимальном газу (52 км/ч на дисплее) ток на контроллер 0,92А без датчиков холла и 2,6 с датчиками. Максимальная скорость велосипеда по ровному асфальту без помощи педалей составила 35 км/час, не ограничена электроникой, просто не хватает мощности. При такой скорости ток с датчиками около 10А, без датчиков около 17А.
Контроллер практически не греется, позволяет трогаться с нулевой скорости без педалей. Позволяет подключать систему PAS -помощь педалей, датчики тормоза высокого и низкого уровня. Есть функция противоугонки — при активации велосипед активно сопротивляется качению, подавая энергию на колесо в противофазе кручению, чтоб не укатили.

Что в итоге? Велосипед едет, проехал для испытаний около 40 км. Велосипед тяжел для города, особенно для езды по тротуарам (перед 8 кг + зад 20 кг). Другой характер езды, если на своем велосипеде, который легче в два раза, я понижал передачу и разгонялся, то тут даешь полный газ и разгоняешься с педалями, до 30-35 разгон довольно энергичный. Перед каждым съездом-заездом на бордюр (пандусы-трамплины сделали почти везде) нужно оттормозиться до 5-10 км/ч, потом заново разгон с электротягой. На своем я проезжаю эти места на 25-30 без проблем. Для этого велосипеда бордюр в 5 см уже большая проблема, я думал что пробью заднюю камеру, хотя давление в камере 4кг. На моем до 20 см не проблема, может и больше.
За городом и по хорошей дорожке лучше ехать на электровеле, можно дать неполный газ и чуть крутить педали, ехать 25-30 км-ч не напрягаясь. Можно 35 на электротяге. Максимум я разогнал его до 44 с педалями.
Приборная панель велосипеда работает в штатном режиме, показывает все параметры, управляет светом. Китайский контроллер толкает колесо. Все довольны, они друг другу почти не мешают.

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

Минусы
— Нет инструкции
— Не все разъемы в комплекте, пришлось докупать.

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