Перейти к основному содержанию

Vesc Tool 6.05 основные изменения

Главный герой этого обновления – это, без сомнения, LispBM. Для тех, кто не в курсе, это такой встроенный в VESC язык программирования, который позволяет творить настоящую магию с вашим контроллером. И в версии 6.05 его прокачали по полной:

  • Больше гибкости в коде: Появилась поддержка var в progn и возможность использовать фигурные скобки {} вместо progn. Это как если бы вам разрешили писать стихи не только ямбом, но и хореем – больше свободы для творчества! Добавились set и setq для присваивания значений, а также defunret для определения функций с возвратом значения.
  • Улучшенное управление памятью и кодом: Теперь можно перемещать код и данные во флеш-память, что освобождает драгоценное место. Загрузка кода стала инкрементальной – читаем по кусочкам, а не все сразу. Правда, пришлось пожертвовать некоторыми типами массивов, оставив только байтовые – видимо, для экономии и скорости.
  • Новые "фишки" и расширения: Разработчики добавили кучу новых расширений для работы с позицией, возможность отключать только один из АЦП (аналого-цифровых преобразователей), функцию set-encoder для установки энкодера. Появились расширения для восстановления конфигурации мотора (conf-restore-mc) и приложения (conf-restore-app), калибровки постоянного тока (conf-dc-cal), а также доступ к различным параметрам конфигурации.
  • Скорость, скорость и еще раз скорость! Одно из самых "вкусных" нововведений – это массовый прирост производительности для строковых функций и 64-битных операций благодаря значительно более быстрому выделению памяти. Ваш Lisp-код теперь будет летать, как будто ему встроили турбину! Также встроенная функция сортировки стала намного быстрее и способна обрабатывать гораздо большие списки.
  • Отладка и ошибки: Улучшены описания ошибок – теперь понять, что пошло не так, будет чуточку проще (но не надейтесь, что VESC начнет писать вам поэмы о своих проблемах). Добавлен профилировщик потоков, чтобы вы могли видеть, какой кусок кода самый прожорливый.
  • Связь и взаимодействие: Появились расширения для удаленных сообщений, функции can-recv-sid и can-recv-eid для приема CAN-сообщений с определенными идентификаторами, а также can-msg-age для проверки "свежести" CAN-сообщения. Функция recv-to теперь имеет аргумент тайм-аута, а i2c-tx-rx возвращает ошибку гораздо быстрее.
  • Звуковые эффекты и другие полезности: Добавлены функции foc-play-tone, foc-play-stop и foc-play-samples, так что теперь ваш VESC сможет не только жужжать, но и издавать осмысленные звуки (или даже играть мелодии!). Появились shutdown-hold (удержание выключения), crc32 (для проверки целостности данных), rand (случайные числа) и app-adc-range-ok.

В общем, LispBM в версии 6.05 – это как швейцарский нож для вашего VESC, только еще острее и многофункциональнее.

Улучшения для датчиков Холла: Плавнее и точнее

Если ваш мотор использует датчики Холла, то для вас тоже есть хорошие новости:

  • Плавный переход на бездатчиковый режим: Теперь переход от работы с датчиками к бездатчиковому режиму (и обратно) будет более гладким. Это как переключение передач на хорошей коробке-автомат – почти незаметно.
  • Исправления и оптимизации: Устранены ошибки в интерполяции, используется менее "шумный" оценщик скорости для интерполяции и скорректирован предел скорости изменения.

Мягкое ограничение рекуперации (Soft Regen Cutoff): Бережем батарею с умом

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

Другие важные изменения:

  • Попытка ограничения входного тока при использовании MTPA и ослабления поля: Разработчики работают над тем, чтобы контроллер умнее ограничивал ток при использовании продвинутых техник управления мотором. Это важно для предотвращения перегрузок и выхода из строя компонентов.
  • Удалено встроенное приложение для балансировки: Вместо него теперь рекомендуется использовать пакет balance-package, где и будет вестись дальнейшая разработка. Так что, если вы строили свой собственный моноколесо или сегвей, обратите внимание.
  • Выбор источника скорости для ПИД-регулятора: Теперь можно выбирать, откуда ПИД-регулятор будет брать данные о скорости. Больше гибкости в настройке!
  • Постоянный одометр (даже без выключателя): Предпринята попытка сделать так, чтобы показания одометра сохранялись, даже если у вас нет специального выключателя питания. Мелочь, а приятно – знать, сколько километров вы уже "намотали".
  • Исправления ошибок: Устранен баг со скачком тока при измерении потокосцепления на сдвоенных моторах. Исправлена возможная проблема "убегания" мотора после ошибок во время измерений в разомкнутом контуре. Также пофиксены некоторые глюки с торможением.
  • Новые режимы выборки тока и интерполяции FOC: Добавлены новые режимы для более точного измерения тока и новый режим интерполяции для FOC (Field-Oriented Control).
  • Пассивное измерение потокосцепления: Появилась возможность измерять потокосцепление в пассивном режиме.
  • Настраиваемое усечение ошибок HFI: Для более стабильной работы HFI (High-Frequency Injection) теперь можно настраивать отсечение ошибок, чтобы отфильтровать шум.
  • Удален GPDrive.
  • FOC: Опция замыкания фаз при нулевой скважности: Эта новая опция в расширенных настройках FOC ("Short Low Side FETs on Zero Duty") может помочь предотвратить скатывание вашего устройства, когда оно стоит на месте.
  • FOC: Добавлен наблюдатель MXV: Еще один новый тип наблюдателя для FOC, который потенциально может улучшить работу мотора в определенных режимах.

На что обратить внимание при обновлении (ложка дегтя):

  • Перекалибровка мотора ОБЯЗАТЕЛЬНА! После обновления с версии 6.02 на 6.05 крайне важно заново запустить мастер настройки мотора или выполнить ручную калибровку. Иначе рискуете получить некорректные значения и, как следствие, опасное поведение вашего электротранспорта (например, неожиданные "клевания носом"). Это связано с тем, что в 6.05 изменился способ отслеживания скорости.
  • Настройка "Corrected Position": В расширенных настройках FOC (FOC Advanced) найдите параметр "Speed Tracker" и убедитесь, что он установлен в "Corrected Position". Это новое значение по умолчанию в 6.05, но если вы восстанавливаете конфигурацию из 6.02, оно может сброситься на "Observer", что вызовет проблемы.
  • Баг с моментными кнопками на Spintend: Пользователи контроллеров Spintend с моментными кнопками столкнулись с багом, который мог приводить к преждевременному выключению устройства, даже во время езды. Сообщается, что исправление уже выпущено, так что обязательно найдите и примените его.
  • Баг с чтением настроек в приложении для iPhone: Иногда (особенно если у вас несколько устройств) приложение на iPhone может не считать настройки с вашей платы при подключении. Если вы измените один параметр и нажмете "Write", все остальные настройки могут сброситься на значения по умолчанию. Обходной путь: Всегда нажимайте "READ SETTINGS" перед внесением изменений!

Другие записи

Выбор наблюдателя в VESC

Ах, выбор наблюдателя состояния в VESC! Это как выбирать специи для блюда: правильный выбор может превратить ваш электроскейт или электровелосипед в кулинарный шедевр на колесах, а неправильный... ну, скажем так...

Справочник параметров VESC (Конфигурация приложений)

General (Общие настройки)

General (Основные параметры)

APP to Use / Используемое приложение

Описание: Определяет, какой тип внешнего устройства или протокола будет использоваться для управления VESC. Если у вас несколько...

VESC контроллер: Особенности и принцип работы

Контроллер VESC (Vedder Electronic Speed Controller) — это продвинутый, программируемый контроллер скорости с открытым исходным кодом, предназначенный для управления бесколлекторными двигателями (BLDC). Его основная задача — точно регулировать скорость, направление...

Справочник ошибок контроллера VESC

FAULT_CODE_OVER_VOLTAGE / Перенапряжение

Описание: Входное напряжение превысило максимально допустимый предел, установленный в настройках (Maximum Input Voltage).

Возможные причины:

  • Рекуперативное торможение при полностью заряженной батарее (напряжению некуда уходить).
  • Лимит напряжения...

Как работает ослабление поля в VESC контроллерах

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