Драйвер сервоприводов 4tronix servo:bit: инструкция, примеры использования и документация

Используйте драйвер сервомоторов servo:bit для управления до 16 сервомашинками одновременно, на базе которых вы можете создавать гексаподов, роботов манипуляторов и других ботов.

Драйвер сервомоторов servo:bit выполнен специально для контроллеров BBC micro:bit.

Подключение и настройка

Аппаратная часть

Драйвер сервомоторов подключается к платформе micro:bit через фирменный краевой разъём.

Используйте любой источник питания, главное что бы силовое напряжение вписывалось в диапазон от 5 до 6 вольт. Соответственно сервомоторы подбирайте с таким же номинальным напряжением от 5 до 6 вольт. Мы рассмотрим подключение одного сервопривода, но вам доступны к коммуникации одновременно 16 моторов.

Что понадобится

Как собрать

  1. Установите платформу micro:bit в гнездо под краевой разъём на плате servo:bit.
  2. Подключите к плате servo:bit сервопривод к контакту 4.
  3. Установите четыре элемента питания AA в батарейный отсек и подключите в силовой клеммник на плате.
  4. Включите драйвер сервомоторов, для этого переключите тумблер питания в режим ON.
  5. Подключите micro:bit к компьютеру по USB.

Программная часть

  1. Создайте новый проект.
  2. Установите дополнительное программное обеспечение для miniBit:
    Окно компонентов Расширенные Добавить расширение и вбейте в поиск строку ServoBit. Далее жмите по иконке найденного расширения для установки модуля. После установки в окне компонентов вы увидите иконку ServoBit.
  3. В установленном ПО для драйвера сервомоторов вы найдёте блоки для управления сервоприводами и индикаторного адресного светодиода.

На этом этапе servo:bit настроен на работу с системой micro:bit и можно смело переходить к примерам работы.

Примеры работы

Рассмотрим несколько примеров по работе с драйвером сервоприводов servo:bit. Каждый пример сопровождается инструкцией по визуальному программированию в среде MakeCode, а затем кодом на JavaScript и Python.

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

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

Пример для визуального программирования

  1. Соберите схему из визуальных блоков.
  2. Нажмите на иконку со значком USB для загрузки программы в плату micro:bit.
  3. После прошивки micro:bit, адресный светодиод WS2812B на плате servo:bit будет по очереди мигать красным, зелёным, синим и белым цветом.

Пример для JavaScript

  1. Переключите визуальный режим MakeCode на текстовый редактор JavaScript.
  2. Прошейте платформу кодом приведённым ниже.
    microbit-servobit-examples-blink-javascript.js
    basic.forever(function () {
        ServoBit.setLedColor(0xFF0000)
        basic.pause(1000)
        ServoBit.setLedColor(0x18E600)
        basic.pause(1000)
        ServoBit.setLedColor(0x0080FF)
        basic.pause(1000)
        ServoBit.setLedColor(0xFFFFFF)
        basic.pause(1000)
    })
  3. После прошивки micro:bit, адресный светодиод WS2812B на плате servo:bit будет по очереди мигать красным, зелёным, синим и белым цветом.

Пример для Python

  1. Переключите визуальный режим MakeCode на текстовый редактор Python.
  2. Прошейте платформу кодом приведённым ниже.
    microbit-servobit-examples-blink-python.py
    def on_forever():
        ServoBit.set_led_color(0xFF0000)
        basic.pause(1000)
        ServoBit.set_led_color(0x18E600)
        basic.pause(1000)
        ServoBit.set_led_color(0x0080FF)
        basic.pause(1000)
        ServoBit.set_led_color(0xFFFFFF)
        basic.pause(1000)
    basic.forever(on_forever)
  3. После прошивки micro:bit, адресный светодиод WS2812B на плате servo:bit будет по очереди мигать красным, зелёным, синим и белым цветом.

Запуск одного сервопривода

А теперь заставим вал сервопривода медленно повернуться на угол 60 градусов, а затем на угол −60 градусов и так по кругу.

Пример для визуального программирования

  1. Соберите схему из визуальных блоков.
  2. Нажмите на иконку со значком USB для загрузки программы в плату micro:bit.
  3. После прошивки micro:bit, вал сервопривода начнет медленно поворачиваться на угол 60 градусов, а затем на угол −60 градусов и так по кругу.

Пример для JavaScript

  1. Переключите визуальный режим MakeCode на текстовый редактор JavaScript.
  2. Прошейте платформу кодом приведённым ниже.
    microbit-servobit-examples-single-servo-javascript.js
    ServoBit.centreServos()
    basic.forever(function () {
        ServoBit.moveServo(4, -60, 60)
        ServoBit.waitServo(4)
        basic.pause(100)
        ServoBit.moveServo(4, 60, 60)
        ServoBit.waitServo(4)
        basic.pause(100)
    })
  3. После прошивки micro:bit, вал сервопривода начнет медленно поворачиваться на угол 60 градусов, а затем на угол −60 градусов и так по кругу.

Пример для Python

  1. Переключите визуальный режим MakeCode на текстовый редактор Python.
  2. Прошейте платформу кодом приведённым ниже.
    microbit-servobit-examples-single-servo-python.py
    ServoBit.centre_servos()
     
    def on_forever():
        ServoBit.move_servo(4, -60, 60)
        ServoBit.wait_servo(4)
        basic.pause(100)
        ServoBit.move_servo(4, 60, 60)
        ServoBit.wait_servo(4)
        basic.pause(100)
    basic.forever(on_forever)
  3. После прошивки micro:bit, вал сервопривода начнет медленно поворачиваться на угол 60 градусов, а затем на угол −60 градусов и так по кругу.

Элементы платы

Драйвер сервомоторов PCA9685

Плата servo:bit выполнена на микросхеме PCA9685, который принимает команды по I²C интерфейсу от платы BBC micro:bit и может управлять до 16 сервоприводами в одно время.

Разъём подключения силового питания

Для подключения силового питания сервомоторов используйте клеммник под винт. В клемму с шелком + подключайте положительный провод питания, а в клемму — отрицательный провод или землю. Рекомендуемое входное напряжение от 5 до 6 вольт. Клеммник питания продублирован штыревыми соединителями «папа».

Контакты клеммника и штыревых соединителей электрически соединены на плате без всяких защитных элементов. При питании платы одновременно через оба разъёма от разных источников вы рискуете спалить устройство.

Порт micro-USB

Плату servo:bit можно запитать также через порт micro-USB. Этот способ пригодится если у вас нет под рукой внешнего блока питания или сборки батареек.

Порт micro-USB предусмотрен только для питания устройство. Через него нельзя программировать BBC micro:bit и другие модули.

Контакты подключения сервоприводов (штыри)

Сервоприводы подключаются к плата servo:bit через контактные штырькиS/V/G, где:

  • S — сигнал с номером от 0 до 16.
  • V — питание сервомоторов. Берется от силового клеммника.
  • G — земля.

Не пытайтесь подключить в контакты для сервомоторов другие модули и датчики, вы рискуете спалить устройство. Для этих целей разработана специальная плата расширения micro:bit Breakout.

Светодиодная индикация

Имя светодиода Назначение
ON Индикатор подачи силового питания. Горит при подключенном напряжении в силовой клеммник и включенном тумблере питания, во всех остальных случаях не горит.
STATUS Пользовательский адресный светодиод WS2812B. Как управлять светодиодом читайте в примерах работы.

Контакты ввода-вывода (луженные отверстия)

На плате присутствуют луженные отверстия которые дублируют контакты питания и ввода вывода подключенной платформы BBC micro:bit. Для удобства коммуникации рекомендуем обратить внимания на контактную гребенку PLS-40, которая облегчит доступ к заветным пинам.

Тумблер питания

За подачу питания от силового клеммника используйте механический переключатель на плате. Состояния модуля также дублирует информационный светодиод.

  • ON — модуль включен. Светодиод горит.
  • OFF — модуль отключен. Светодиод не горит.

Преобразователь напряжения

На плате расположен понижающий линейный регулятор, который преобразует напряжение с силового клеммника до точных 3,3 вольт с максимальным выходным током 500 мА. А далее напряжение поступает через краевой разъём на плату BBC micro:bit. Это позволяет питать всю конструкцию от одного источника питания, т.е. только от силового клеммника без необходимости питать отдельно плату micro:bit.

Гнездо под краевой разъём BBC micro:bit

Драйвер моторов drive:bit содержит гнездо Edge Connector Cylconn 180 Degree для подключения платы BBC micro:bit через краевой разъём. Никаких проводов и тем более пайки не понадобится.

Габаритный чертёж

Характеристики

  • Модель: 4tronix servo:bit
  • Совместимость: микрокомпьютеры BBC micro:bit
  • Разъём модуля: гнездо под краевой разъём micro:bit
  • Индикация: RGB-светодиод WS2812
  • Микросхема драйвера: PCA9685
  • Количество подключаемых сервоприводов: 16
  • Напряжение питания: 5–6 В (с защитой от переполюсовки)
  • Рабочее напряжение сервоприводов: 5–6 В
  • Ток нагрузки: до 3,2 А (по 200 мА на канал)
  • Размеры: 65×30,5×11,6 мм

Ресурсы