Отдавая дань продолжительному карантину этого года, в который надо было чем-то занимать детей ежедневно, хочу рассказать об опыте совмещения конструкторов Fischertechnik и мира открытых одноплатных компьютеров (с великим множеством датчиков и исполнительных устройств к ним) для своих детей.
Автоматический шлагбаум: пересечение светового барьера активирует сервопривод. Генерируемая контроллером Micro:Bit кодовая последовательность для поворота сервопривода в позицию 90° и параметры сигнала видны на осциллографе DSO138. Для внимательных- ИК-приемник отключен, поскольку сын успел «сжечь» один из 3-х доступных портов контроллера, а платы расширения для доступа к остальным портам еще не приехали.
Введение
Механическая часть у конструкторов Фишертехник отличная (кстати, детям достаточно дать в руки доступные буклеты для разных конструкторов с официального сайта и они много всего соберут сами), электроника интересная (про базовые элементы рассказано хорошо и с классическими примерами, плюс маркировка многих электронных компонентов указана и их легко купить отдельно), а для робототехники и автоматики предлагается на выбор собственный контроллер плюс его открытые клоны и наборы с платами расширения для подключения Arduino, Raspberry Pi, BBC Micro:Bit и некоторых других «одноплатников», подробнее смотрите на странице на официальном сайте Arduino, Raspberry, Scratch & Co. Software and hardware add-ons for fischertechnik. Из перечисленного я выбрал наиболее дружелюбный для детей программируемый через Bluetooth «одноплатник» BBC Micro:Bit с отличным международным комьюнити и платы расширения к нему (перечислены далее) такие, чтобы работали от напряжения питания 9 вольт и позволяли подключить и "родные" устройства (9 вольт) и стандартные датчики и прочие устройства «для Arduino» (часто так они и называются, обычно бывают на 5 вольт, но могут быть и на 3.3 вольта). Вот с платами расширения пришлось повозиться — выбрать подходящие для меня да еще найти, где и как их можно приобрести, об этом далее.
Задумывалось все так, чтобы мои дети могли к построенному из конструкторов (стандартных строительных блоков плюс лампочки, моторы и прочие устройства, а также стандартной батареи 9 вольт типа «Крона» и Ni-MH аккумулятора 8.4 вольта) с некоторой моей помощью добавлять «обычные» датчики, сервоприводы, ИК пульты, моторы и программировать все это с планшета. Выбранный для дальнейших экспериментов «одноплатник» Micro:Bit программируется с планшета (iOS/Android) и с десктопа (MacOS/Linux/Windows) через Bluetooth или USB кабель. Для детей предлагается Scratch-подобный язык Microsoft MakeCode for Micro:Bit с возможностью переключения между JavaScript кодом и визуальным представлением и обратно, а также эмулятором и каталогом программных модулей для плат расширения и подключаемых периферийных устройств. Замечу, что и C и Python и другие языки также доступны, просто в силу возраста детей нам пока не актуальны. Существуют как платы расширения непосредственно для Micro:Bit и Fischertechnik (с питанием 9 вольт и соответствующими разъемами для коннекторов), так и множество других (с рабочим напряжением до 9 вольт и выше и стандартными коннекторами).
Платы расширения
Сам Micro:Bit купить оказалось легко и просто — доступен на Амазоне, на Алиэкспресс и много где еще. Зато с заказом и доставкой плат расширения это целая история, потому что британские компании не посылают свои платы за пределы Британии, хорватский производитель принимает оплату только на локальный банковский счет и не во все страны отправляет, а гонконгский дилер, у которого чудом оказались платы и британского и хорватского производства также не отсылает их за пределы Гонконга. На британском Амазоне доступны старые версии британских плат, да и те после заказа пропадают в неизвестном направлении. На Алиэкспрессе вообще не нашлось ничего из вышеперечисленного, зато есть китайские клоны самого контроллера BBC Micro:Bit и китайские же платы расширения к нему с фотографиями самих плат вместо документации (ладно, все понятно и так). Также мне из офиса британского производителя Kitronik порекомендовали британского же дилера с международной доставкой, у которого оказалось много интересного и недорогая доставка… увы, у них пока нет новых версий интересующих меня плат, и уже минимум месяц как не работает «система вычета НДС», так что они предлагают оплатить заказ на сайте картой и написать им, чтобы они вручную возместили НДС на карту покупателя в случае международной доставки.
Платы-кандидаты на покупку я выбирал из поддерживаемых в каталоге официальных расширений среды MakeCode и искал их или аналогичные от тех же производителей. Поскольку выбор большой, не вижу смысла брать платы тех производителей, кто не озаботился их поддержкой. Также можно приобрести просто переходник с разводкой всех выходов Micro:Bit на макетную плату (с шагом 0.1 дюйма), но стоит он примерно столько же, сколько и полноценная плата расширения с поддержкой нескольких моторов (обычно присутствуют 2 или 4 H-bridge на ток в пару ампер каждый, подключенные к источнику питающего напряжения), преобразователем входного напряжения в напряжение питания Micro:Bit 3.3 вольта, источником выходного напряжения step down voltage regulator) 3.3 и 5 вольт и током в несколько ампер для питания периферии и некоторыми дополнительными мелочами вроде ИК-приемника. Конечно, один источник питания и одна плата со вставленным в нее контроллером намного удобнее, нежели контроллер, плата регулятора напряжения, набор модулей H-bridge для моторов и так далее. Кстати, есть платы расширения с поддержкой 16 сервоприводов, а вот моторов можно подключать не больше 4 (а шаговых не больше 2, соответственно). Впрочем, для управления парой двигателей достаточно одной микросхемы H-Bridge, а для работы с шаговыми моторами интереснее приобрести модуль управления с поддержкой микрошагов для 3D принтеров.
В итоге, я приобрел плату KITRONIK на британском Амазоне (прошло три недели — трекинга нет, посылки нет, на днях истекает срок доставки) и на Алиэкспрессе купил и китайскую плату (срок доставки месяц, ждем).
Подробнее о платах:
- micro:bit IO F5 board (€27.90) — хорватская плата для конструктора Фишертехник, конструктор покупать не вижу смысла, так как все детали у меня и так есть, а плату отдельно не удалось заказать, как рассказал выше. Ну и ладно, так как стоит она втрое дороже аналогов.
- Kitronik Interface board for microbit and Fischertechnik (£9.85) — плата Kitronik для конструкторов Фишертехник, напряжение питания 9 вольт, вся периферия и питание подключаются коннекторами Фишертехник. Нашел такую только в Гонконге, доставки за пределы Гонконга нет.
- Kitronik Motor Driver Board for the BBC micro:bit — V2.0 (£9.64) — поддерживает напряжения питания лишь в диапазоне 4.5 — 6 вольт, в то время как обновленная ее версия поддерживает 9 вольт. Заказал одну такую на Амазоне, для настольного использования годится, эффективный регулятор напряжения уже есть (см. фотографию в начале статьи).
- Kitronik Motor Driver Board for the BBC micro:bit — V2.1 (£9.65) — обновление предыдущей платы, поддерживает напряжение питания в диапазоне 3 — 10 вольт, не смог найти с доставкой.
- Kitronik New Compact Control Boards For micro:bit — буквально на днях вышедшие новые версии трех плат от KITRONIK с напряжением питания в диапазоне 3 — 10.8 вольт. Платы стали компактнее, заметно дешевле и получили некоторые усовершенствования. Планирую попробовать "Kitronik Compact All-In-One Robotics Board for BBC micro:bit" (£11.00), как станет доступна для покупки и доставки.
- Keywish Expansion Board for Micro:bit GPIO Expansion Python IO:bit 5V with On Board Passive Buzzer (US $5) — Лего-совместимая плата IO:Bit поддерживает напряжения питания в диапазоне 6 — 12 вольт (или 5 вольт от USB разъема) и обеспечивает два выходных напряжения 3.3 и 5 вольт для питания периферии. Поскольку это АлиЭкспресс, то доставка по миру бесплатно. Заказал себе, жду.
- Keywish Motor:Bit Multifunctional Motor Drive Expansion Board DC Support 8 servos (US $14) — Лего-совместимая плата Motor:Bit поддерживает напряжения питания в диапазоне 6 — 36 вольт (или 5 вольт от USB разъема) и обеспечивает два выходных напряжения 3.3 и 5 вольт для питания периферии. Бесплатная доставка по миру с АлиЭкспресс. Планирую заказать, если понравится предыдущая.
Также существует клон BBC Micro:Bit от вышеупомянутой компании Keywish Newbit 100% Compatible with Micro:Bit (US $12) Цена аналогичная оригиналу, зато бесплатная доставка по миру с АлиЭкспресс. Если платы расширения от них понравятся — это будет интересный вариант.
Детали и компоненты
Теперь поговорим о других деталях и модулях, использованных в моделях на фотографиях к статье. Для справки привожу цены на компоненты, причем цены в тайских батах (курс примерно 31 бат за доллар) перевожу в американские доллары, а цены в российских рублях оставляю как есть (на 10 октября 2020 года 1 доллар равен примерно 77 рублям). На все или почти на все бывают скидки и акции, так что наверняка что-то можно купить дешевле, разве что цены в России непредсказуемы. На Алиэкспрессе компоненты зачастую дешевле, зато с тайского аналога АлиЭкспресса Lazada быстрее доставка по Таиланду — вплоть до 2х дней вместо пары месяцев с Али, причем и доставка из Китая в разы быстрее (стоимость доставки обычно варьируется в диапазоне US $0.6 — 1.3). Если есть под рукой 3D принтер — много всяких моделей можно нагуглить, и крепления для сервоприводов и для моторов и так далее, ну а заказывать слишком дорого получается (скажем, 3D печать из самого дешевого пластика крепления для шагового мотора обойдется от US $10 без учета доставки, тогда как оригинальная деталь стоит на порядок дешевле).
Световой барьер на фотографии в начале статьи собран из "Лампа светодиодная" (сейчас нет в наличии), "Разъем для лампы" (₽40), двух элементов "Корпус для лампы" (₽10), приобретенных в российском каталоге Фишертехника от компании ПакПак в разделе Электроника плюс безродного фоторезистора диаметром 5 мм "LDR Light Dependent Resistor LDR 5MM Photoresistor" (US $0.24) или диаметром 10 мм "LDR Photoresistor 10mm ldr 10mm" (US $0.35), купленных на Lazada. Кстати, можно взять еще один "Разъем для лампы" и вставить туда любой подходящий светодиод (или не подходящий, но с резистором), помещающийся в "Корпус для лампы". В общем-то, я не собирался сразу все красиво оформлять, но висящий на двух проводках фоторезистор зачем-то уносит дочка, так что пришлось сделать аккуратно, а указанные лампы, колпачки и разъемы у меня уже давно припасены.
Сервопривод MG996R 180° (US $2) также куплен на Лазада. Следует покупать внимательно, так как существуют две идентично выглядящие версии этого сервопривода: на 180° (позиционируемый) и 360° (вращающийся без контроля позиции)… впрочем, все равно порой продавцы присылают не тот. Хотя я заказывал 360° сервопривод, а получил версию на 180°… поэтому вместо задуманного получился шлагбаум, что детей тоже устроило. Интересно, каким окажется заказанный от другого продавца еще один сервопривод на 360° (если что, и его найдется, куда пристроить).
Для крепления деталей Фишертехника на ось сервопривода должен быть удобным диск "Aluminum Metal 25T Servo Arm Round type Disc For MG995 MG996" (US $0.35) с 4-мя отверстиями на нем под болты M3, расстояние между парами отверстий равно 14 мм (у Фишертехника шаг отверстий 15 мм), эта деталь пока еще не приехала с Лазада.
NiMH аккумулятор Фишертехник (₽2990) с регулятором напряжения с фотографии можно заменить любым источником напряжения 5 вольт, и это же напряжение можно подать на USB порт питания Micro:Bit вместо использования отдельного блока питания на 3.3 вольта. Впрочем, у отдельного блока питания для Micro:Bit есть свои преимущества, если дети захотят покрутить регулятор напряжения питания. Замечу, что для детского конструктора именно NiMH аккумуляторы хороши своей безопасностью, тогда как более емкие литий-ионные взрывоопасны и литий-полимерные пожароопасны. Пока не приехали платы расширения для Micro:Bit, для сервоприводов с допустимым напряжением до 6… 7.2 вольта (в зависимости от модели) приходится использовать внешний регулятор напряжения. Аккумулятор Фишертехника очень удобен для установки на мобильные модели, а вот для настольной модели подойдет любой подручный, коих во всяком доме с детьми наверняка найдется не один.
ИК-пульт с ИК-приемником (US $2) на стандартные 38 кГц от неведомого производителя c Лазада, и не все кнопки работают — тут пригодился осциллограф, подключенный к ИК-приемнику, а про пульт написал продавцу, в прошлый раз он мне без проблем прислал новый цифровой штангенциркуль на замену — в первом защитное стекло экранчика покоробилось и вываливается, хотя сам девайс и работает… кстати, новый на 0.1 мм точнее меряет, видимо, мне его специально выбирали (заявленная точность 0.2 мм, так что оба меряют в пределах погрешности), однако и работающих нескольких нам пока вполне достаточно (коды кнопок нестандартные, но это мелочи — достаточно код кнопки по нажатию вывести на светодиодный дисплей Micro:Bit и настроить обработчики событий по кодам кнопок). А вот для такого пульта с АлиЭкспресса есть поддержка в MakeCode для Micro:Bit, все кнопки должны распознаваться "из коробки": Keyestudio IR Remote Control Receiver Module Kit (US $5).
Набор резисторов можно купить в диапазоне цен от нескольких центов до нескольких долларов США, для модели с фотографии в начале статьи использованы два резистора: на 5 кОм и 10 кОм.
Макетная плата подойдет любая, выбранная на вкус и цвет.
Для больших моделей удобно использовать алюминиевые профили, в российском каталоге это деталь Алюминиевый профиль 210 мм (₽1120) или аналогичная длиной 90 мм (коротких у меня нет, постольку их легко заменить тремя стандартными кубиками длиной 30 мм, а вот пара длинных для направляющих бывает необходима). Также существуют совместимые профили MakerBeam XL 15x15 mm для 3D принтеров, доступные на Амазоне. Себе брал 4 штуки по 300 мм (US $14), они потяжелее оригинальных и не имеют фишертехниковых креплений на торцах, зато доступны любой длины и для них есть крепления для шаговых моторов и другие. Подтверждаю — строительные блоки Фишертехник надежно и плотно к ним крепятся, так что из 4 MakerBeam XL профилей и двух оригинальных можно собрать плоттер (для этого они и покупались). Кстати, на немецких сайтах легко можно найти 3D модели торцевых элементов креплений для них, или купить готовые (себе не стал покупать, поскольку для нужных мне длинных профилей разумнее будет взять стандартные металлические крепления к ним, а с заказом и доставкой от частных продавцов есть свои сложности). Поглядываю на набор «MakerBeam XL (15mmx15mm) Regular Starter Kit including beams, brackets, nuts and bolts» (US $125), может, когда-нибудь...
Планирую еще обзавестись фишертехниковыми креплениями для шаговых моторов стандарта Nema 14, входящими только в набор для сборки 3D принтер от Фишертехник (по ссылке доступно небольшое видео, файл со списком деталей и методическая брошюра для детей на русском языке). В российском каталоге они пока недоступны (я уже написал в ПакПак и спросил — возможно, привезут в декабре), в немецком не указаны на сайте (вероятно, заказать все же можно, с оплатой через немецкий банк и так далее), так что вот ссылка на американский каталог: 160528: Holder stepper motor (US $1.67).
Приборы
На мой взгляд, необходимый набор приборов следующий:
- Цифровой мультиметр с проверкой диодов и транзисторов, измерением тока/напряжения/сопротивления/емкости EXCEL DT-9205A (US $5)
- Цифровой осциллограф, набор для сборки (в собранном виде) DSO138 Oscilloscope Digital (US $10)
Почему необходим осциллограф? А как иначе замерить хотя бы сигнал, управляющий сервоприводом — частота 50 герц (период 20 миллисекунд) и заполнение сигнала (зарубежный аналог скважности) варьируется в диапазоне 2.5-12.5%. Не все контроллеры выдают заполнение вплоть до 12.5% (сложилось исторически, так как раньше не было микро сервоприводов с углом поворота 180°). Проверка показала, что Micro:Bit успешно работает с сервоприводами 180° (заполнение равно 12.5%), как это и обещано документацией к плате. Также осциллограф позволяет посмотреть сигнал с ИК-пульта на приемнике и сигналы звуковой частоты.
Интересно выглядит двухканальный осциллограф Hantek 2C42 или 2D42 (примерно US $100) с поддержкой режима развертки X-Y (умеет показывать фигуры Лиссажу), нам пока не актуален.
Также бывает полезен цифровой штангенциркуль (с заявленной точностью 0.2 мм), купленный примерно за US $3.5 на Лазада, хотя можно обойтись и обычными линейками — двумя, расположенными параллельно, с нужных сторон ограничиваем измеряемую деталь круглой или более сложной формы и третьей линейкой измеряем расстояние между первыми двумя линейками — если хватает рук аккуратно держать саму деталь и три линейки, то штангенциркуль и не нужен. Для обладателей же только двух рук проще одной рукой держать деталь, а другой — штангенциркуль.
Инструменты
Также будет полезным следующий набор инструментов:
- Устройство для зачистки проводов Wire Stripper Cable Cutter (AWG 10-30) (US $4)
- Устройство для обжима коннекторов SN01BM Terminal Crimping Tool For Dupont PH2.0 KF2510 Servo 0.08-0.5mm2 AWG28-20 (US $8)
Признаться, мне уже давно надоело зачищать и родные провода от Фишертехника (ладно хоть коннекторы винтовые), коих у нас изрядно наберется (дети порой обрывают коннекторы или подходящей длины провода не находится), а теперь проводов все больше и коннекторы нужны еще и стандартные Dupont, которые зачищать канцелярским ножом и обжимать плоскогубцами становится времязатратно.
Провода
Стоит сказать несколько слов о такой вроде бы простой и банальной вещи, как провода. Оригинальные двойные провода Фишертехника имеют 16 жил по 0.08 миллиметра каждый (ладно, отдельную жилу померять мне нечем, зато посчитать жилы не сложно), то есть они AWG 28 по спецификации, при этом диаметр оболочки у них 0.8 мм, как у стандартных AWG 30/32. Детям такие провода удобны — можно изогнуть и они сохраняют форму, так как оболочка тонкая, со стандартным проводом с более толстой оболочкой так не получается (для себя я бы предпочел стандартные AWG 28/30). Такой провод я заказывал в российском каталоге Фишертехника от ПакПак: Двухжильный провод 7 м. Для предотвращения паутины из отдельных проводов удобна катушка стандартного 40-жильного Rainbow Ribbon Flat Cable AWG 28 (US $3.5 за 5 метров) с АлиЭкспресс, от которой отделяется и отрезается нужное число жил требуемой длины, коннекторы Фишертехник к ним отлично крепятся. Перемычки для макетных плат продаются готовые, или можно делать их из одножильного провода 22 AWG с помощью упомянутого выше устройства для зачистки проводов (там и удобные губки для загиба проводов есть).
Программирование BBC Micro:Bit
Устанавливаем приложение на планшет или просто открываем в браузере среду разработки с эмулятором Microsoft MakeCode for Micro:Bit и смотрим руководства и примеры и начинаем работу. Все легко, удобно и просто работает, добавить нечего.
Fischertechnik и BBC Micro:Bit
Вот мы и подошли к самому интересному — как вышеназванные дополнительные элементы удобно подключить к Фишертехнику. На немецких форумах можно найти уйму советов и рекомендаций с фотографиями, только вот Google Translate с трудом справляется с такими текстами, так что текст порой вообще понять невозможно, остается гадать по приложенным картинкам. Поделюсь тем, что сам узнал и придумал, с теми, кто тоже немецкий язык не знает (или не хочет сам искать и разбираться).
Начнем со светового барьера, состоящего из направленной лампы (работает и без колпачка, только надо настраивать порог чувствительности в зависимости от освещения в комнате) и фоторезистора-приемника (аналогично, колпачок позволяет работать стабильно вне зависимости от окружающего освещения).
Пара слов о подключении светового барьера к Micro:Bit. Фоторезистор подключен параллельно меньшему резистору в схеме делителя напряжения с двумя резисторами 5 кОм и 10 кОм так, чтобы можно было использовать питающее напряжение до 9-10 вольт (1/3 от 10 вольт дают допустимое для. Micro:Bit напряжение 3.3 вольта). Кнопка для ручного открытия шлагбаума подключена последовательно с фоторезистором. Таким образом, при прерывании светового луча или по нажатию кнопки напряжение на меньшем резисторе близко к 1/3 питающего напряжения, а при попадании светового луча на фоторезистор это напряжение близко нулю. С учетом того, что внутренние pull-up и pull-down резисторы Micro:Bit примерно равны 13 кОм, увеличивать сопротивление резисторов делителя не стоит, а вот уменьшить можно, ценой некоторого увеличения протекающего через них тока (и энергопотребления схемы). Снимаемый с меньшего резистора делителя напряжения сигнал подается на аналоговый вход Micro:Bit, уровень срабатывания настраивается программно в зависимости от яркости использованного светодиода и его расстояния от фотоприемника.
Теперь про шлагбаум — сервопривод 180° тут как нельзя кстати, потому что нам нужны фиксированные положения шлагбаума. Сервопривод вставлен и зажат несколькими строительными блоками Фишертехник и еще один элемент привинчен к оси сервопривода штатным винтом. Существует множество вариантов крепления корпуса сервопривода (помнится, на одном немецком форуме пользователь писал, что знает минимум сто способов и с десяток из них он тут же и продемонстрировал на приложенных фото), на фотографии ниже показан один из наиболее простых:
Кроме механических, можно собирать и пневматические модели. У Фишертехника в каталоге есть уже готовый довольно мощный мембранный компрессор, но это не интересно. Пару лет назад мы с сыном уже делали вот такой учебный компрессор для надувания воздушных шариков (конечно, сын сам собирал, а я нашел инструкцию и заказал недостающие детали):
Список деталей и обсуждение модели доступны на русскоязычном форуме Детали для пневматики Теперь мы попробуем этот компрессор модернизировать — использовать сервопривод 180° вместо мотора, чтобы получить больше возможностей управления и упростить передачу движения на шнек поршня. Если добавить датчик давления, можно еще и останавливать компрессор в нужный момент. Выше в списке деталей указан диск для вала сервопривода, в который планируется вкрутить винт M3 для крепления серьги на шнэке пневматического цилиндра.
Заключение
Что ж, получилось несколько сумбурно, но это и не руководство, а просто набор личных впечатлений и опыта. Когда приедут все заказанные детали — сможем собрать больше новых моделей, но будет ли у меня тогда время на написание статьи… Кто заинтересуется — в сети Интернет существует множество дополнительных моделей из конструкторов Фишертехник на все вкусы, а также совершенно легально можно скачать учебные материалы к официальным конструкторам. Недостающие детали можно приобрести из официального каталога, напечатать на 3D принтере или купить у энтузиастов из Германии (есть множество онлайн магазинов б/у комплектующих и напечатанных на 3D принтерах клонах оригинальных деталей, которые принимают оплату через пейпал). Используя же такие стандартные блоки, как упомянутый выше "Корпус для лампы" и «Отсек для электроники» можно добавлять произвольные электронные (и не только) компоненты к конструктору. Многие дополнительные элементы вроде сервоприводов легко закрепить стандартными строительными блоками конструктора. А еще не сложно добавить алюминиевые профили, шаговые моторы и любые другие компоненты для 3D принтеров… для моих детей пока не актуально, просто решил заранее убедиться, что конструкторы в будущем удастся дополнять все более сложными элементами.
Если будет интерес у читателей, в следующей статье я расскажу про некоторые методические материалы Фишертехника и дискретные компоненты электронных схем (в том числе, какие из них использованы в конструкторах и чем их заменить и дополнить).
P.S. Кстати, целый чемодан Lego Duplo и ведро Lego Classic у нас тоже есть (привезли из России, где Лего стоит очень дешево, по сравнению с другими странами), и дети с удовольствием строят из них и красивое и забавное. А Фишертехник — для функционального и интересного. Мне так кажется… хотя дети могут иметь другое мнение (и даже два других мнения). Главное, одно другому совершенно не мешает.
Автор: Алексей Печников