Печать

Робот на Микробит microbit (инструкция)

1 Введение

Создайте колесного многозадачного робота на новой плате micro:bit и из простых электронных компонентов, которые есть у каждого кто занимается робототехникой на Ардуино. Проект признан показать, что плата micro:bit имеет все возможности платы Ардуино и даже больше. Тем самым демонстрируется богатый потенциал платы micro:bit в робототехнике.

2 Комплектующие

Некоторые элементы вы можете заказать в магазине МРобот по ссылкам:
  • Плата micro:bit
  • Плата расширения Yahboom для micro:bit
  • Цифровой датчик движения по линии TCRT5000 2 шт.
  • Драйвер управления двигателями L298N
  • Механизм Наклона-поворота (Pan-Tilt), для проекта понадобится только механизм поворота
  • Инфракрасный дальномер (датчик расстояния) Sharp GP2Y0A0YK0F
  • Платформа-шасси робота. В проекте использована двухколесная платформа, но вы можете использовать любую подходящую на ваш взгляд платформу
  • Макетная плата на 400 точек
  • 2ААА батарейный отсек
  • 2S Li-Po аккумулятор 7.4В или 4АА/5АА батарейный отсек с батарейками
  • Двухпозиционный переключатель
  • Провод папа-мама 30см 20 шт.
  • Провод мама-мама 30см 10 шт.

3 Программное обеспечение

4 Инструменты для сборки

5 Сборка робота

5.1 Шасси

P0007920 new com1 Screenshot 2019-07-01 МРобот - РобоРовер М1 2WD Шасси
87031805 f64d184c-4f95-4c64-bfe7-085b892476e5

Сегодня на рынке существует бесчисленное множество шасси роботов на разных вкус и разный размер кошелька.

5.2 Драйвер управления двигателями

5c0b279c77477 DFR0548

5.3 Питание для электродвигателей

41PzPEbGcCL. SX425 5AA-bat-box

5.4 Питание для micro:bit

Питание платы не должно превышать 3.3В. Наилучший вариант -это 2 ААА батарейки в специальном блоке с разъемом для платы micro:bit.
s18-2899p01wl

5.5 Выключатель

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

Синий переключатель размыкает + батареи, красный провод от него идет к выводу +12V на мотордрайвере. Красный разъем -это коннектор для батареи, черный провод от него идет к выводу GND на мотордрайвере. Черный штекер не используется, он был создан, чтобы запитывать плату Ардуино от аккумулятора.

dsc 5577 QJ4SMMHXbZ

Моя стандартная проводка для роботов-машинок

Красный разъем называется T-Plug для подключения аккумулятора. Разные батареи имеют разные разъемы, я во всех роботах использую одинаковые разъемы, что обеспечить унифицированность проектов. Если батарея разрядилась, то можно отсоединить старую и подключить новую.

- 17 1000   eQYXCp3fO8

Слева коннектор от аккумулятора (мама), справа коннектор от проводки робота (папа)

 

5.6 Схема подключения компонентов micro:bit-Мотордрайвер-Моторы-Батареи

 

5.7 Схема подключения датчиков линии

Возьмите 2 цифровых датчиков линии TCRT5000. Датчик является бинарным. Когда датчик находится над темной поверхностью, он выдает значение логической единицы, а когда над светлой поверхностью, то значение логического ноля.

tcrt5000-infrared-ir-sensor-oky35133

Цифровой датчик линии TCRT5000

Используя провода папа-мама подключите датчики к макетной плате согласно схеме приведенной ниже. Также возьмите два провода папа-папа и подключите к гнездам 3.3V и GND, после этого подключите их к шинам + и - на макетной плате соответственно. Это расширит количество выводов для подключения питания к датчикам и другим модулям.

Левый датчик OUT ->P1    VCC(красный провод) ->3.3V    GND (черный провод) ->GND

Правый датчик OUT ->P20    VCC(красный провод) ->3.3V    GND (черный провод) ->GND

 Wiring-Line-Sensors-1-rus

Схема подключения датчиков линии на роботе

Следует заметить, что данные датчики имеют особенность сбоить, когда расположены слишком близко к друг другу. Например, на моей фотографии ниже показано, что робот имеет 3 датчика, но добиться нормальной работы, когда датчики так близко друг другу, не удалось. Поэтому было решено выключить центральный датчик и написать алгоритм под 2 датчика линии. Когда вы монтируете датчики, обеспечьте расстояние между краями печатных плат датчиков 5-10мм.

 20190626 153015-s

5.8 Схема подключения датчиков расстояния

Теперь настало время подключать инфрарасный дальномер Sharp. Такой сенсор выдает аналоговое значение напряжения в зависимости от измеренного расстояния. Более подробную техическую информацию вы можете прочитать по ссылке: https://www.pololu.com/file/0J156/gp2y0a02yk_e.pdf

Screenshot 2019-06-28 gp2y0a02yk e pdf - gp2y0a02yk e pdfЗависимость выдаваемого напряжения от расстояния

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

image

Датчик с подключенным к нему проводом

A few Jumper Wires

Первый вариант -это взять готовый провод, разрезать его и припаять к проводу датчика

male-pin-connector-for-dupont-jumper-wireВторой вариант -это взять разъемы-штырки и обжать их вокруг провода

 

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

OUT (желтый) ->P0        VCC(красный) ->3.3V       GND (черный) -> GND

Wiring-Distance-Sensor-1-rusСхема подключения датчика расстояния

 

5.9 Схема подключения механизма Наклона-поворота

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

Я использую для своего проекта механизм Наклона-поворота напечатанный 3Д-принтером (файла исходного у меня  нет). Вы можете также спроектировать и распечатать свой или же купить пластиковый механизм для маленьких сервоприводов 9G (SG90). Такие сервоприводы потребляют небольшое количество электроэнергии и поэтому становится возможным питать их напрямую от платы micro:bit без дополнительного питания.

pan-tilt-1

Схема типового механизма наклона-поворота

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

XC4618-pan-and-tilt-action-camera-bracket-mount-for-9g-servosImageMain-515Пластиковый механизм наклона-поворота для любительской робототехники

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

OUT (оранжевый провод) -> P2        VCC (красный) ->3.3V        GND (коричневый) ->GND

Wiring-Servo-1-rusСхема подключения сервопривода

 

5.10 Проверка подключений и сборки робота

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

20190626 153050-s  20190626 153015-s 
 20190626 153035-s  20190626 153027-s

 

6 Программирование

Скачайте код с блоками для графической среды MakeCode Скачать (скачайте и распакуйте архив)

Также можно скачать код, нажав маленькую ссылку Download под этим окном.

 
Откройте онлайн среду MakeCode и импортируйте код в нее, нажав на кнопку Import и указав путь к .hex файлу.
 
Screenshot 2019-06-28 Microsoft MakeCode for micro bit
 

6.1 Программа по огибанию препятствий при помощи датчика расстояния

По-умолчанию блоки установлены в исходнике для этой программы.
Firefox Screenshot 2019-06-28T14-17-32.853Z
 
 
Скачайте программу, нажав на большую фиолетовую кнопку Download и сохраните файл на micro:bit. Включите робота и моторы.

5c0b2a7a934ab

Видео того, как робот начнет двигаться:
 

 
 

6.2 Программа движения по черной линии

Теперь надо удалить 3 блока из блока "forever" и поставить новый блок "call lineFollow". Он находится на рабочей области, перетяните его и вставьте в блок "forever".

Скачайте программу нажав на большую фиолетовую кнопку Download и сохраните файл на micro:bit. Включите робота и моторы.

Видео того, как робот начнет двигаться:

 
 
Используя мою информацию, вы построили своего первого робота на micro:bit. Изучите мою программу более внимательно, ее структуру, написание функций.
На нашем сайте есть большое количество интересных увлекательных уроков для micro:bit, ознакомиться с которыми вы можете по ссылке в нашем разделе Уроки.
 
20190619 142453-s
 
Успехов!