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

Аппаратная конфигурация

В данном разделе описано, как устроена аппаратная часть BRover-E5: как соединены между собой компоненты, каким образом передаются данные и как организовано питание системы.

Ровер построен по принципу распределённой архитектуры. Это означает, что вычисления и управление разделены между разными устройствами, которые обмениваются данными через общую шину связи.

Общая архитектура системы

Центральным элементом всей системы является сборка из трёх устройств: Raspberry Pi 5, установленного на него адаптера VBCores CAN-FD HAT и коммутационной платы питания и CAN. Эти компоненты физически объединены в один узел и выполняют роль управляющего центра ровера.

qj

Raspberry Pi отвечает за работу управляющих программ верхнего уровня, ROS2 и обработку пользовательских команд. Через CAN-FD HAT он взаимодействует с остальной электроникой, передавая команды и получая обратную связь.

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

Исполнительная часть системы включает модуль управления питанием и драйверы двигателей, которые получают команды от Raspberry Pi по CAN-шине и непосредственно управляют аппаратной частью ровера.

Сигнальная схема

Обмен данными внутри ровера осуществляется по шине CAN0 (CAN FD), поверх которой используется протокол Cyphal для взаимодействия Raspberry Pi с остальными модулями системы.

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

CAN-FD HAT → Коммутационная плата → PowerBoard 30A → DC Driver → DC Driver → ... → DC Driver → Терминатор (120 Ом)

Сигнал последовательно проходит через все устройства. Для корректной работы шины используются два терминатора: один установлен на CAN-FD HAT, второй — на последнем устройстве в цепочке.

Отдельно выведена шина CAN1, которая может использоваться для подключения дополнительных устройств.

Подключение устройств по USB

Часть оборудования подключается напрямую к Raspberry Pi по USB. Это сделано для устройств, которым требуется высокая пропускная способность или стандартный интерфейс взаимодействия с операционной системой.

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

USB-подключение позволяет системе сразу распознавать устройства на уровне Linux без необходимости работы через CAN-шину. Например, камера определяется как видеоустройство, IMU — как отдельный сенсорный модуль, а SBus-адаптер — как устройство ввода.

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

Схема питания

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

Ровер может работать от двух источников питания:

Название источника питанияХарактеристикиРазъем подключения
Аккумуляторная сборка4 Li-Po аккумулятора типоразмера 18650, подключенные последовательно.
Выходное напряжение: 16.8 В.
Разъём XT-60 Male
Внешний блок питанияВыходное напряжение: 15 В.
Максимальный ток: 6 А.
Разъём питания TC-022-2.0MM

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

После поступления питания на PowerBoard оно распределяется по двум основным линиям:

  • линия PC — используется для питания Raspberry Pi и обеспечивает его стабильную работу
  • линия BUS — предназначена для питания исполнительных устройств

Линия BUS далее разводится на несколько направлений: питание подаётся на коммутационную плату и на драйверы двигателей, которые разделены на левую и правую стороны ровера.

К модулю PowerBoard также подключены элементы управления: кнопка включения/выключения питания, пользовательская кнопка, звуковой сигнализатор и кнопка аварийной остановки.

Кнопка аварийной остановки реализована таким образом, что при её нажатии отключается питание линии BUS, но питание линии PC сохраняется. Это означает, что двигатели и периферия отключаются, а Raspberry Pi продолжает работать.

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