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

Влад Сухарев • 1 марта 2020

Инструмент "время выполнения" в Micro:bit

С благодарностью к Михаилу Николаевичу Симеоненкову за предоставленную материальную базу, приглашение на 1-й Пущинский Фестиваль Робототехники, прошедший 29 февраля 2020 года и по мотивам публикации https://novator.team/post/1209.

Приглашаю исследовать полезный инструмент измерения времени для программирования в среде Microsoft MakeCode fo Micro:bit.

А именно в левом столбце палитры нструментов на сайте https://makecode.microbit.org/#editor
под строкой меню "Ввод" (сиреневого цвета) есть строка *** more. 
При нажиме на эту строку клавишей мышиного манипулятора (обычно левой), можно обнаружить третью сверху строку выпадающего меню "время выполнения (мс)".

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

Кружок робототехники в нашей школе существует три года. Но большую часть времени мы занимались LEGO Mindstorms NXT, EV3, а с платформой MicroBit познакомились лишь пару месяцев назад, воспользовавшись
любезным приглашением Михаила Николаевича (https://novator.team/user/362/stream)

При всей простоте и дружественности интерфейса столкнулись с трудностями врЕменнОго характера. 
Сложность измерения пройденного роботом пути в отличие от энкодеров на каждом моторе LEGO навела на мысль о реализации "псевдоэнкодера" на основе измерения времени.

ПМСМ (по моему скромному мнению), для успешного прохождения трассы без претензий на победу достаточно приведённой схемы из четырёх состояний.

1. Задаём начальные значения важных переменных:

включение радиоканала

2. Формируем возможность управления по радио:

к приёму команд готов
К приёму команд по радио по каналу №1 готов!

3. Реализуем стек FIFO (First in - first out) в виде функции dlt (дельта времени) :

измерение времени

4. Шаблон программы целиком доступен по ссылке:

https://makecode.microbit.org/_gE2g0Y9pRbUx

 

Поэтому прошу сразу камнями не забрасывать. Буду рад критическим замечаниям и указаниям на ошибки в представленном шаблоне.

Приложение. Термин "Энкодер" ДЛЯ обозначения ДАТЧИКА УГЛА ПОВОРОТА (ДУП) связан с "кодированием" - установкой взаимно однозначного соответствия между угловым положением и цифровым сигналом.

Виды энкодеров от СЕРВОТЕХНИКИ здесь - http://www.servotechnica.ru/catalog/type/index.pl?id=118

Прошу у всех прощения, если нарушил какие-то правила публикации и спасибо за площадку для дискуссии.

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