Идеология разработки
Идеология разработки роботов с использованием системы VBCore
Принципиальная архитектура робота заложенная в концепцию VBCores выглядит вот так:
Робот питается от аккумулятора, плата питания осуществляет коммутацию и контроль питания, микрокомпьютер отвечает за высокий уровень, все исполнительные устройства и датчики отвечают за необходимый функционал. Все узлы соединяются оной не стабилизированной шиной питания до 50В и шиной CAN FD. Некоторые типовые платы - драйверы мы подготовили в рамках экосистемы, но зачастую вам понадобятся собственные функциональные платы, поскольку предусмотреть все случаи невозможно.
Идеологически разработку функциональных плат устройств на основе модуля VB32G4 можно разделить на два этапа:
Макетирование. Как правило, целью данного этапа является подбор подходящих микросхем и модулей, которые будут применяться в устройстве. Пусть, например, вы работаете над манипулятором на шаговых моторах. Перед вами стоят задачи: какая микросхема (или модуль) будет вращать мотором? Какой датчик угла поворота будет стоять в осях манипулятора? В ходе макетирования осуществляется поиск ответов на эти вопросы. Для этого вам нужна отладочная плата, (например STM32 Nucleo 64, которую легко достать в магазине), макетная плата (возможно, даже несколько), много проводов и большое желание добиться результата. Макет поможет вам определиться с архитектурой сопутствующего программного обеспечения и начать разработку ПО. Часты ситуации, когда подходящая на первый взгляд микросхема в итоге оказывается непригодной (например, дешевый, точный и доступный датчик угла не обеспечивает нужного быстродействия; недостаточно мощный драйвер мотора перегревается и уходит в защиту). Когда макет устройства собран, проверена работа всех его аппаратных компонентов, а прототип прошивки доведен до работоспособного состояния, следует перейти к этапу 2.
Разработка печатной платы. Работающий макет - это отлично, но использовать его в составе робота - не самая лучшая затея. Собранное на коленке устройство практически невозможно поддерживать, тяжело производить серийно, оно может не выдержать вибраций работающего робота и просто-напросто занимает сильно больше места, чем могло бы. Эти проблемы можно решить, если разместить все компоненты устройства на одной печатной плате - микроконтроллер, систему питания, связи, драйверы моторов, датчики и т.д. Поскольку в рамках концепции VBCores все устройства робота должны питаться от нестабилизированной шины питания и общаться по шине CAN/CAN FD, то минимально необходимый набор элементов каждой платы (микроконтроллер с обвязкой, понижающий импульсный преобразователь питания, трансивер CAN FD) мы уже вынесли на отдельную плату (модуль VBCore), которую можно использовать собранном виде, чтобы просто напаять ее на «материнскую» плату своей разработки. Таким образом, разработчик получает полный аналог своей отладочной платы Nucleo 64, только почти в пять раз меньшей площади ( 11.8 см^2 против 56 ), с распаянной подсистемой питания до 50В на 2А и трансивером CAN FD. Уже написанный в ходе макетирования софт должен без модификаций заработать на вашей собственной функционально плате.
Следуя описанной логике вы сможете достаточно быстро создавать работающие устройства и узлы робота, в рамках единой архитектуры. Для универсальности мы используем на модулях микроконтроллер с большим запасом мощности, что несколько ухудшает стоимостные характеристики, но зато позволяет покрыть широкий класс задач без изменения ПО, ведь доработка программного обеспечения на сегодняшний день достаточно дорога.
Last updated