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

Работа со стендом

Подготовка

Перед началом работы изучите материалы по мерам предосторожности и компонентам стенда.

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

Обязательное ПО:

Среда разработки (на выбор):

  • Arduino IDE — для программирования низкого уровня через Arduino (с дополнительными библиотеками).
  • STM32 CubeIDE — для программирования на HAL.

Если вы хотите работать с Arduino IDE, то не забудьте установить все необходимые библиотеки и выбрать нужную плату в настройках среды.

Документация по электронным модулям доступна на сайте https://docs.vbcores.ru/ в разделе Hardware.

Настройка лабораторного источника питания

  1. Убедитесь, что источник питания отсоединен от стенда.
  2. Подключите источник питания к сети ~220 В.
  3. Нажмите кнопку POWER на источнике.
  4. С помощью ручек VOLTAGE и CURRENT настройте выходные параметры 24V 5A.
  5. Подсоедините источник питания к стенду (красный провод должен быть +, черный провод -).
  6. Нажмите кнопку OUTPUT.

Подключение к микрокомпьютеру

Информация

На Raspberry Pi не требуется устанавливать дополнительное ПО — на ней уже предустановлен образ с настроенными CAN FD и Cyphal. При необходимости параметры CAN можно изменить в файле: /opt/voltbro

Все микроконтроллеры и Raspberry Pi обмениваются данными между собой по протоколу CAN FD. Дополнительно настроен протокол Cyphal CAN.

На Raspberry Pi предустановлен образ со стандартными параметрами CAN-шины:

  • bitrate — 1 000 000
  • dbitrate — 8 000 000

Чтобы включить Raspberry Pi, установите соответствующий переключатель питания (крайний левый) в положение ВКЛ.

По умолчанию при старте Raspberry Pi попытается подключиться к точке доступа Wi-Fi с параметрами:

SSID: TurtleBro
Pass: turtlew001

или

SSID: TurtleBro5G
Pass: turtlew001

Если у вас нет возможности перенастроить точку доступа на указанные параметры, то вы можете сделать следующее:

  • настроить параметры подключения к WiFi на карте microSD,
  • напрямую подключиться к Raspberry Pi с помощью монитора, клавиатуры и мышки.

Настроив WiFi-соединение, подключиться к Raspberry можно по SSH:

  • по локальному имени:
ssh pi@motorstandNN.local
пароль: brobro

Здесь NN - это последние две цифры серийного номера изделия.

  • по IP-адресу, который можно узнать в настройках роутера:
ssh pi@<ip-адрес>
пароль: brobro
Совет

Более подробно о настройках WiFi и способах подключения к Raspberry Pi можно почитать в разделе Настройка RPi

Проверка стенда

Информация

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

Шаговый двигатель

sch

Фотография шагового двигателя

За работу с шаговым двигателем отвечает файл прошивки stepper_spi-ctrl_as5047_encoder_can.ino.

  1. Подключите программатор к модулю управления шаговым двигателем.
  2. На рабочем компьютере откройте любой терминал COM-порта (например Serial Monitor в Arduino IDE)
  3. Установите переключатель питания шагового двигателя в положение ВКЛ. Вал двигатель сразу должен повернуться на 200000 шагов (приблизительно 3 оборота), а в мониторе COM-порта появятся данные вида:
angle: 46.3 | revolutions: 3
  1. Вы можете передать по COM-порту значения положения вала двигателя (в шагах). Передаваемое число может быть как положительным, так и отрицательным.
  2. В консоли с активным ssh-соединением с RPi проверьте связь по шине CAN. Для отправки данных введите команду:
cansend can0 00000123#DEADBEEF 

При успешном получении команды, в мониторе COM-порта должно появится сообщение:

ID 291 data: 222  173  190  239

Для чтения данных введите команду:

candump can0

В ответ должны начать бежать строки вида:

can0  00000001   [4]  AA AB AC AD
  1. Отключите питание двигателя.

Если вы успешно произвели все описанные действия, значит контур управления шаговым двигателем функционирует штатно.

Коллекторный двигатель

sch

Фотография коллекторного двигателя

За работу с коллекторным двигателем отвечает файл прошивки dc_encoder_as5047_can.ino.

  1. Подключите программатор к модулю управления коллекторным двигателем.
  2. На рабочем компьютере откройте любой терминал COM-порта (например Serial Monitor в Arduino IDE).
  3. Установите переключатель питания коллекторного двигателя в положение ВКЛ. Двигатель сразу должен начать вращаться, а в мониторе COM-порта появятся данные вида:
angle: 120.2 | revolutions: 3
  1. Передавая по COM-порту значения от -4096 до 4096, вы можете менять скорость и направление вращения выходного вала двигателя.
  2. В консоли с активным ssh-соединением с RPi проверьте связь по шине CAN. Для отправки данных введите команду:
cansend can0 00000123#DEADBEEF 

При успешном получении команды, в мониторе COM-порта должно появится сообщение:

ID 291 data: 222  173  190  239

Для чтения данных введите команду:

candump can0

В ответ должны начать бежать строки вида:

can0  00000002   [4]  AA AB AC AD
  1. Отключите питание двигателя.

Если вы успешно произвели все описанные действия, значит контур управления коллекторным двигателем функционирует штатно.

Бесколлекторный двигатель с внешним ротором

sch

Фотография бесколлекторного двигателя с внешним ротором

За работу с бесколлекторным двигателем с внешним ротором отвечает файл прошивки bldc_outrunner_SPI1-AS5047sensor_can.ino.

  1. Подключите программатор к модулю управления бесколлекторным двигателем.
  2. На рабочем компьютере откройте любой терминал COM-порта (например Serial Monitor в Arduino IDE)
  3. Установите переключатель питания двигателя в положение ВКЛ. Должна начаться инициализация двигателя, а затем вращение. В мониторе COM-порта вы увидите приглащение на ввод:
Estimated PP : 14
PP = Electrical angle / Encoder angle
1080.00/79.50 = 13.59

If PP is estimated well your motor should turn now!
- If it is not moving try to relaunch the program!
- You can also try to adjust the target voltage using serial terminal!

Motor ready.
Set the target voltage using serial terminal:
  1. Передавая по COM-порту значения напряжения от -24 до 24 вольт, вы можете менять скорость и направление вращения выходного вала двигателя.
  2. В консоли с активным ssh-соединением с RPi проверьте связь по шине CAN. Для отправки данных введите команду:
cansend can0 00000123#DEADBEEF 

При успешном получении команды, в мониторе COM-порта должно появится сообщение:

ID 291 data: 222  173  190  239

Для чтения данных введите команду:

candump can0

В ответ должны начать бежать строки вида:

can0  00000003   [4]  AA AB AC AD
  1. Отключите питание двигателя.

Если вы успешно произвели все описанные действия, значит контур управления бесколлекторным двигателем с внешним ротором функционирует штатно.

Бесколлекторный двигатель с внутренним ротором

sch

Фотография бесколлекторного двигателя с внутренним ротором

За работу с бесколлекторным двигателем с внутренним ротором отвечает файл прошивки bldc_inrunner_Hall-sensor-as5047_can.ino.

  1. Подключите программатор к модулю управления бесколлекторным двигателем.
  2. На рабочем компьютере откройте любой терминал COM-порта (например Serial Monitor в Arduino IDE)
  3. Установите переключатель питания двигателя в положение ВКЛ. Должна произойти инициализация двигателя, а затем вращение вала. В мониторе COM-порта появятся данные вида:
Hall Angle: 251.85 SPI sensor angle: 97.62 Velocity from Hall sensor: 40.39
  1. Передавая по COM-порту значения напряжения от -24 до 24 вольт, вы можете менять скорость и направление вращения выходного вала двигателя.
  2. В консоли с активным ssh-соединением с RPi проверьте связь по шине CAN. Для отправки данных введите команду:
cansend can0 00000123#DEADBEEF 

При успешном получении команды, в мониторе COM-порта должно появится сообщение:

ID 291 data: 222  173  190  239

Для чтения данных введите команду:

candump can0

В ответ должны начать бежать строки вида:

can0  00000004   [4]  AA AB AC AD
  1. Отключите питание двигателя.

Если вы успешно произвели все описанные действия, значит контур управления бесколлекторным двигателем с внутренним ротором функционирует штатно.

Дальнейшая работа со стендом

Стенд прежде всего ориентирован на работу по написанию программного кода, управляющего электродвигателями. Если вы знакомы с программированием микроконтроллеров - смело открывайте документацию на платы VBCores и начинайте работу. Все инструкции к электронике, схемы и данные на ключевые компоненты драйверов вы найдете в этой документации.

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

В разделе Настройка RPi вы можете дополнительно ознакомиться с различными методами подключения и настройки компьютера Raspberry Pi 5.

Удачи в изучении принципов управления двигателями!