Многим уже известная прошивка гироскутера «ховеркар» от EFeru, отлично подходит для самодельного электротранспорта с использованием курков и педалей. С ним всё прекрасно, но он имеет одну скорость. В некоторых случаях требуется несколько скоростей (передач), особенно для детских проектов электротранспорта, когда претенденты порулить разной массы, возраста и имеют разный опыт вождения. Larsm разработал вариант кода «бибикар» под 4 скорости. Выбор требуемой скорости реализован с помощью курков (педалей) газа и тормоза. Моторы работают в режимах без свободного наката, но для детских проектов это скорее преимущество, чем недостаток. При сбросе газа транспорт плавно остановится а не укатится вместе с неопытным водителем.
Эта прошивка не имеет свободного наката (плавная остановка при сбросе газа), из за этого немного больший расход АКБ и более нагруженный режим моторов, т.к. они не могут свободно катиться и «отдыхать». Поэтому она скорее подходит только для детского транспорта.
В этой статье затрону только моменты по настройке. Если Вы еще вообще не занимались прошивкой плат, обязательно ознакомьтесь с этой статьей.
Вам понадобится исходник со страницы автора на GitHub.
Если не получается добиться нормальной работы на исходнике с GitHub, оставляю старый на котором собирал свои прошивки :
Как включаются скорости
Перед включением контроллера выбираем одну из комбинаций курков, соответствующую нужной скорости:
- тормоз нажат, газ отпущен (скорость до ~5 км/ч)
- тормоз и газ отпущены (до ~10 км/ч)
- тормоз отпущен, газ нажат (до ~20 км/ч)
- тормоз и газ нажаты (до ~20 км/ч, есть режим «турбо»+ ~10 км/ч)
*максимальная скорость для примера, дальше Вы узнаете где ее настроить
Далее включаем контроллер, отпускаем курки и можно ехать.
Функции курков (педалей) на ходу
Курок газа служит для движения вперед
Курок тормоза при движении вперед служит для торможения. Также на 4-ой скорости при достижении максимальной скорости, не отпуская газ, при этом зажав тормоз срабатывает дополнительное ускорение (турбо). Это не мешает тормозить на 4-ой скорости, т.к Вы можете отпустить газ и курок тормоза уже будет работать как тормоз.
При торможении до полной остановки, продолжая удерживать тормоз, включается задний ход, теперь курок тормоза это газ для заднего хода. То же самое с места — нажали тормоз — едем назад. Звучит запутанно, но на практике легко привыкнуть.
Настройки
Все настройки для примера, производятся в программе Visual Studio.
Выбираем вариант «Бибикар» в platformio.ini, удалив «;» в соответствующей строке.

Перемещаемся в раздел Inc — config.h.
Моторы (MOTOR CONTROL)
По умолчанию выставлен SIN_CTRL / VLT_MODE, в этом режиме моторы не имеют свободного наката и при сбросе газа плавно замедляются. В режиме FOC_CTRL / TRQ_MODE (как в прошивке ховеркар с накатом) бибикар работать не захотел (моторы вращались на весу, но легко останавливались даже под минимальной нагрузкой).
Пиковый ток на мотор I_MOT_MAX / I_DC_MAX (резкий старт газ в пол). В режиме SIN_CTRL предельным будет именно I_DC_MAX. I_MOT_MAX рекомендуется выставлять на 2 А меньше. Но на первой и второй скорости пиковое значение будет гораздо меньше, т.к их мы ограничиваем в скорости и ускорении (об этом ниже). Подаваться все 17 ампер в колесе будут только при резком старте либо высокой нагрузке на 3 и 4 скоростях. Необходимо понимать, что в сумме два мотора будут потреблять в два раза больше тока и батарея должна обеспечивать такой ток. Если Вы собираетесь использовать гироскутерную батарею, Вы также должны понимать, что она способна выдать не более 20 А кратковременно и будучи в хорошем состоянии. Поэтому либо ставим 2 гироскутерные батареи включенные параллельно, либо используем подходящую по токоотдаче. Либо убавляем ток в прошивке.
FIELD_WEAK_ENA должна быть включена (1), если нужен режим «турбо» на 4-ой скорости, в противном случае ставим 0.

Настройки в разделе VARIANT BBCAR
По умолчанию настройки скоростей выглядят так:

С такими коэффициентами езда крайне вялая, но их можно приподнять. Для каждой из 4 скоростей отдельные настройки:
- MAX_SPEED_FORWARDS — максимальная скорость вперед
- ACC_FORWARDS — сила ускорения вперед
- MAX_SPEED_BACKWARDS — максимальная скорость назад
- ACC_BACKWARDS — сила ускорения назад
Коэффициенты ускорения допустимо задавать в пределах 0.1…5.0, чем он больше, тем стремительней старт и разгон.
Коэффициенты максимальной скорости и ускорения опытным путем для себя я оставил как на картинке ниже.

Смена направления вращения колес
Если у Вас самокат и колеса должны вращаться в разных направлениях.
По умолчанию в разделе нет строк для инвертирования колес, но можно их скопировать например из раздела «ховеркар» и вставить как на картинке ниже (в примере инвертирован правый мотор). Для активации убираем // в начале необходимой строки.
// #define INVERT_R_DIRECTION — инвертировать правый мотор
// #define INVERT_L_DIRECTION — инвертировать левый мотор

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

Поэтому делаем так:

После прошивки и подключения курков необходимо провести калибровку, она показана в этом видео:
Здравствуйте, подскажите пожалуйста: все сделал как в описании. Но при включении калибровки, не калибруются газ и тормоз. И при включении плата издаёт 2 писка типа 2 скорость и Колеса медленно крутятся, на газ тормоз не реагирует. Что может быть? Спасибо!
Анатолий, у меня такая же проблема. Не удалось решить?
У меня то же самое было.
Я не мучался, скачал по ссылке вверху ,,bibikar-trajk».
Там несколько четырёхскоростных прошивок на разный ток!
То что надо!
Решили проблему?
приветствую!решил проблему удалил две строчки над строкой 334 связано с колесами.все заработало.
Та же прблема. Прошивка работает, а скомпилированая нет.
То же самое.
Скомпилированная не работает!
Поставил прошивку готовую ,,Бибикар_24Ампера.bin», но колёса вращаются назад в два раза быстрее, чем вперёд, на всех четырёх скоростях.
Как исправить, чтобы стало наоборот?
Подскажите, можно считать свою прошивку и править её? или такой функции нет?
Требуется отрегулировать только один параметр: ACC_FORWARDS – сила ускорения вперед.
Очень резко стартует.