Публикации сообщества

Михаил Семионенков • 9 сентября 2019

Bluetooth с Micro:bit и новости робота Maqueen

Новости робота Maqueen

 

Робот Maqueen, на который я давно положил глаз (и опубликовал о нём ряд постов), начинает обрастать материалами.

Фирма dfrobot (разработчик робота) опубликовала руководство, 52 страницы, иллюстрирующее возможности робота и технику программирования (на английском), это уже кое-что (скачать можно со страницы сайта dfrobot).

Фирма продвигает свою среду программирования, Mind+, базирующуюся на Scratch 3.0. Не берусь дать серьёзный анализ, отмечу только следующее:

  • среда двуязычная (китайский/английский)
  • анонсирована поддержка основных контроллеров: Ардуино, Микро:бит, Raspberry...

Руководство написано для Mind+, но, естественно, идеи можно заимствовать для реализации в родной среде Micro:bit - makecode.

 

Bluetooth с контроллером Микро:бит

 

Помню, года 3 назад я пытался освоить bluetooth с Ардуино. Это был мучительный опыт, со многими граблями и с отрицательным результатом, поскольку программное обеспечение, как в итоге оказалось, ещё не соответствовало последней версии "железа". В памяти отложилась сложность темы. При работе с Микро:бит я эту тему отодвигал на будущее, поскольку много достаточно простых вещей ещё не было мной описано. И вот я листаю руководство для Maqueen... Краем глаза зацепился за пример "общения" двух контроллеров Микро:бит... Так просто? Да, очень просто, как, собственно, и должно быть.

Тут же рождается идея фокуса: запрограммировать робота на приём информации, а второй контроллер (передатчик) спрятать в рукаве и передавать сигналы, снимая показания с встроенного датчика ускорения. Таким образом можно "дирижировать" роботом, размахивая рукой в нужных направлениях. Правда, в один присест программа не получилась, что-то пошло не так, как ожидалось, нужны исследования. 

Но написал совсем простенький пример, просто для иллюстрации. 

Радио Bluetooth

Программа загружается на два (можно и больше) контроллера, в результате нажатие кнопок на одном контроллере будет отображаться на экране другого (других).

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

 

До новых встреч!

Кол-во комментариев: (3)

Ольга Тузова
Михаил, спасибо. Два микробита, действительно, легко и непринуждённо общаются друг с другом по BlueTooth. Но вот заставить микробит устойчиво общаться со смартфоном (существующие описания и ролики говорят о том, что это делается на-раз) у меня так и не получается. Вы не пробовали?
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Михаил Семионенков
    Ольга, я пока не пробовал со смартфоном (вообще описал вчерашний опыт, только начал). С роботом вообще глаза разбегаются: там заявлено управление с пульта и игровой консоли. С пультом не получилось ни у меня, ни у моего помощника, старшекласника, консоль в долгом ящике. Любопытство возникло по поводу реализации каналов: они чисто логические, на одной частоте (типа общей шины, когда получают все, а реагируют те, кому адресовано), или разным каналам соответствуют разные частоты. Во втором случае есть неясности: по документации каналы можно объявить в диапазоне 0:255, а по описанию bluetooth диапазон обычно делится на 79 полос. Словом, межпредметникам есть где копнуть :-). Ксати, не исключено, что это может быть ключом к проблеме, которую Вы упомянули. Точно попробовал бы каналы 0 и 1 для общения с мобильником (просто по принципу, что существует 3 числа: 0, 1 и "много").
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Михаил Семионенков
    Ольга, я поискал примеры, но всё относится либо к программированию микробит на телефоне и загрузке программы (что любопытно, но не выглядит, с моей точки зрения, особо актуальной задачей). либо к управлению телефоном с микробит (что, с моей точки зрения, просто неправильно). А Вы какого сорта примеры пытаетесь делать? Ссылку можно?
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии