Блоки LEGO EV3

Специализированные блоки для LEGO EV3 делятся на несколько категорий:
  1. Действия — блоки, выполняющие какое-либо действие на роботе: включение моторов, проигрывание звука и т. д.
  2. Ожидания — блоки, ждущие наступления какого-либо события: определённых показаний датчиков, нажатия на кнопку и т. д.
  3. Рисования на дисплее — блоки, используемые для вывода графики и текста на экран.
  4. Line Leader — блоки для продвинутого датчика «Line Leader».
Блоки, доступные для всех платформ см. в разделе «Общие блоки».

Блоки действия

Отправить сообщение в задачу
Отправляет данное сообщение в параллельную задачу с заданным идентификатором (идентификатор должен быть указан при создании задачи в блоке «Параллельные задачи»).

В качестве сообщения может быть любое выражение.
Гудок
Проиграть на роботе звук с фиксированной частотой.

Параметры:
  1. Ждать ли завершения проигрывания звука или сразу же перейти к следующему блоку. Допустимые значения — «истина», «ложь».
  2. Громкость воспроизведения.
Играть звук
Проиграть на роботе звук с заданной частотой и длительностью. Аналогичен блоку «Гудок», но позволяет также задавать параметры звука.

Параметры:
  • Частота (Гц).
  • Длительность (мс).
  • Ждать ли завершения проигрывания звука или сразу же перейти к следующему блоку. Допустимые значения — истина, ложь.
  • Громкость воспроизведения (от 0 до 100%).
Моторы вперед
Включить моторы по заданным портам с заданной мощностью. Порты задаются буквами A, B или C, разделенными запятыми.

Мощность задается в процентах числом от -100 до 100, если задано отрицательное значение, мотор включается в режиме реверса.

Моторы имеют разные режимы работы: режим торможения и режим скольжения (отображаемые красным или зелёным прямоугольником на блоке соответственно). Режимы влияют на то, как двигатель отрабатывает команду — режим торможения стопорит двигатель при отключении, режим скольжения позволяет двигателю прокручиваться по инерции.
Моторы назад
Включить моторы в режиме реверса по заданным портам с заданной мощностью.

Параметры аналогичны параметрам блока «Моторы вперёд».
Моторы стоп
Выключить моторы по заданным портам.
Сбросить показания энкодера
Сбросить показания количества оборотов моторов.
Светодиод
Установить цвет светодиода на передней панели робота.
Отправить письмо роботу
Отправить письмо другому роботу. Если имя получателя не заполнено, сообщение будет отослано всем соединенным роботам.
Калибровка гироскопа
Устанавливает гироскоп в 0 в текущей позиции.
Начать калибровку компаса
Начинает калибровку компаса программно.

Чтобы откалибровать компас, робот должен повернуться на месте больше чем на 540° в одну, а затем в обратную сторону. После поворотов необходимо добавить блок «Закончить калибровку компаса».
Закончить калибровку компаса
Заканчивает калибровку компаса.

Результат калибровки возвращается в переменной. Ненулевой результат означает успешную калибровку.
Читать RGB в переменной
Читать RGB в переменной.

Блоки ожидания

Ждать датчик касания
Ждать, пока не сработает датчик касания.

Параметром указывается номер порта, к которому подключен датчик.
Допустимые значения: 1, 2, 3, 4.
Ждать энкодер
Ждать, пока показания счетчика количества оборотов на заданном моторе не достигнут указанного в значении параметра «Предел оборотов».

Параметры:
  1. Порт — название порта, к которому подключен мотор (A, B или C).
  2. Считанное значение — операция, которая будет использоваться для сравнения с введенным пределом оборотов.
  3. Предел оборотов.
Ждать цвет
Ждать, пока сенсор цвета в режиме распознавания цветов не вернет указанный цвет.

Параметры:
  1. Цвет.
  2. Порт — номер порта, к которому подключен датчик цвета.
Ждать интенсивность цвета
Ждать, пока значение, возвращаемое сенсором цвета на указанном порту, не будет сравнимо с указанным в значении параметра «Интенсивность».

Параметры:
  1. Интенсивность (от 0 до 100%).
  2. Порт — номер порта, к которому подключен сенсор цвета.
  3. Считанное значение — операция, которая будет использоваться для сравнения с введенной интенсивностью.
Ждать свет
Ждать, пока значение, возвращаемое сенсором света на указанном порту, не будет сравнимо с указанным в значении параметра «Проценты».

Параметры:
  1. Проценты (от 0 до 100%).
  2. Порт — номер порта, к которому подключен сенсор цвета.
  3. Считанное значение — операция, которая будет использоваться для сравнения со значением параметра «Проценты».
Ждать сенсор расстояния
Ждать, пока расстояние, возвращаемое ультразвуковым сенсором расстояния, не будет сравнимо с указанным в значении параметра «Расстояние».

Параметры:
  1. Расстояние (в сантиметрах, от 0 до 255).
  2. Порт — номер порта, к которому подключен датчик расстояния.
  3. Считанное значение — операция, которая будет использоваться для сравнения с введенным расстоянием.
Ждать нажатия кнопки
Ждать нажатия на кнопку на корпусе робота.
Ждать датчик звука
Ждать, пока громкость, считанная микрофоном на заданном порту, не будет выше или ниже заданного значения.
Ждать гиродатчик
Ждать, пока значение, возвращаемое гироскопом на указанном порту, не будет сравнимо с указанным в значении параметра «Значение».
Ждать приема сообщения
Сохраняет сообщение от другого робота в заданную переменную. Если сообщения нет, то робот ждет приход сообщения, если установлен флаг. Иначе в переменную установится значение по умолчанию.

Рисование на дисплее

Напечатать текст
Печатает заданную строку в заданном месте на экране робота.

Значение свойства «Текст» по умолчанию трактуется как строка в чистом виде, оно так и будет выведено на экран. Чтобы система считала, что это выражение на текстовом языке (это может быть полезно, например, при отладке значения переменных), поставьте галочку «Вычислять» в редакторе свойств.
Очистить экран
Стереть всё, что нарисовано на экране.
Нарисовать прямоугольник
Нарисовать на экране прямоугольник.

Параметры:
  1. X, Y — координаты левого верхнего угла.
  2. Ширина прямоугольника.
  3. Высота прямоугольника.
  4. Обновить картинку (истина или ложь).
Нарисовать точку
Нарисовать на экране точку в указанных координатах.
Нарисовать линию
Нарисовать на экране отрезок.

Параметры:
  1. X1, Y1 — координаты начала отрезка.
  2. X2, Y2 — координаты конца отрезка.
  3. Обновить картинку (истина или ложь).
Нарисовать круг
Нарисовать на экране круг с заданным центром и заданным радиусом.

Параметры:
  1. X, Y — координаты центра круга.
  2. Радиус круга.
  3. Обновить картинку (истина или ложь).

Line Leader

Калибровка белого
Калибрует порог белого для сенсора. Должен находиться на белом.
Калибровка черного
Калибрует порог черного для сенсора. Должен находиться на черном.
Калибровка ПИД — регулятора
Устанавливает уставку сенсора (середина сенсора над линией), П/(П фактор), И/(И фактор), Д/(Д фактор).
Датчик линии в сон
Отправляет датчик линии в режим энергосбережения.
Пробуждает датчик линии для работы
Включает датчик линии для работы.
Средне-взвешенное значение
Считывает средне-взвешенное значение в переменную.

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

Ожидается значение от 0 до 80 (-1 — ошибка).
Считать сенсор в массив
Считать значения с сенсора (восемь значений). Значения от 0 до 100. 0 — черный, 100 — белый.
Управляющее значение в переменную
Считывает управляющее значение в переменную. Значение высчитывается внутри сенсора и может быть использовано сразу для моторов.

Ожидается значение от -100 до 100 (-101 — ошибка)