Блоки ТРИК
Last updated
Специализированные блоки для ТРИК делятся на три категории:
Действия — блоки, выполняющие какое-либо действие на контроллере: включение моторов, проигрывание звука и т. д.
Ожидания — блоки, ждущие наступления какого-либо события: определённых показаний датчиков, нажатия на кнопку и т. д.
Рисования — блоки, используемые для вывода графики и текста на экран.
Блоки, доступные для всех платформ см. в статье
Вид
Название
Описание
Отправляет данное сообщение в параллельную задачу с заданным идентификатором.
Сохраняет в указанную переменную код нажатой на роботе кнопки.
Проигрывает на контроллере звук с заданной частотой и длительностью.
Проиграть на контроллере заданный звуковой файл.
Включить моторы по заданным портам с заданной мощностью.
Включить моторы в режиме реверса по заданным портам с заданной мощностью.
Выключить моторы по заданным портам.
Сбросить показания количества оборотов моторов по указанным портам.
Установить валы угловых сервомоторов на указанных портах в указанное положение
Произнести с помощью динамика фразу, переданную в качестве аргумента блока.
Установить указанный цвет светодиода на корпусе контроллера.
Блок имеет логический параметр «Код». Если он имеет значение «Истина», содержимое параметра «Команда» генерируется напрямую в текст программы при генерации этого блока. Если «Ложь», генерируется вызов консольной команды операционной системы.
Включить видеокамеру на контроллере в одном из трёх режимов.
Выключить видеокамеру.
Фиксирует изображение в центре кадра и инициализирует им датчик линии или датчик объекта.
Помещает текущее показание датчика линии в указанную переменную.
Запускает видеотрансляцию на роботе.
Останавливает видеотрансляцию с камеры робота.
Отправляет данное сообщение роботу с данным бортовым номером.
Записывает значение данного выражения в заданный файл на роботе.
Удаляет заданный файл на роботе.
Устанавливает гироскоп в 0 в текущей позиции.
Устанавливает соединение между роботами и объединяет их в одну сеть.
Отправляет данное сообщение в параллельную задачу с заданным идентификатором (идентификатор должен быть указан при создании задачи в блоке «Параллельные задачи»). В качестве сообщения может быть любое выражение.
Сохраняет в указанную переменную код нажатой на роботе кнопки. Свойство «Ожидание» позволяет дождаться или не дожидаться, когда кнопка действительно будет нажата. Если нажатия кнопки блок не дожидается и кнопка не нажата, переменной присваивается значение «-1».
Проигрывает на контроллере звук с заданной частотой и длительностью.
Проиграть на контроллере заданный звуковой файл.
Файл должен быть заранее загружен на контроллер. Путь до файла указывается относительно папки trik
на контроллере. Загрузить файл на контроллер можно, например, с помощью программы WinSCP.
Включить моторы по заданным портам с заданной мощностью. Порты задаются строками M1, M2, M3 и M4, разделенными запятыми. Мощность задается в процентах числом от -100 до 100. Если задано отрицательное значение, мотор включается в режиме реверса.
Включить моторы в режиме реверса по заданным портам с заданной мощностью. Параметры аналогичны параметрами блока «Моторы вперёд».
Выключить моторы по заданным портам. Порты задаются строками M1, M2, M3 и M4, разделенными запятыми.
Сбросить показания количества оборотов моторов по указанным портам. Порты задаются строками E1, E2, E3 и E4, разделенными запятыми.
Установить валы угловых сервомоторов на указанных портах в указанное положение (в градусах, от -90 до 90). Порты задаются строками, разделенными запятыми.
Произнести с помощью динамика фразу, переданную в качестве аргумента блока.
Установить указанный цвет светодиода на корпусе контроллера.
Блок имеет логический параметр «Код». Если он имеет значение «Истина», содержимое параметра «Команда» генерируется напрямую в текст программы при генерации этого блока. Если «Ложь», генерируется вызов консольной команды операционной системы.
Включить видеокамеру на контроллере в одном из трёх режимов:
Сенсор линии — детектирует цветную линию в центре кадра и в дальнейшем возвращает отклонение центра линии от центра кадра, как число в интервале от -100 (влево) до 100 (вправо).
Сенсор объекта — детектирует контрастный объект в центре кадра и в дальнейшем возвращает координаты его центра и диаметр в пикселях.
Сенсор цвета — возвращает доминирующий цвет в центре кадра в виде его координат в цветовой шкале RGB.
Фиксирует изображение в центре кадра и инициализирует им датчик линии или датчик объекта. Камера должна быть включена в соответствующем режиме блоком «Включить видеокамеру».
Помещает текущее показание датчика линии в указанную переменную. Камера должна быть включена в режиме датчика линии блоком «Включить видеокамеру» и инициализирована блоком «Детектировать по камере».
Запускает видеотрансляцию на роботе.
Видео может быть просмотрено на пульте управления ТРИК или в браузере по адресу вида:
{ip-адрес робота}:8080/?action=stream/
.
Отправляет данное сообщение роботу с данным бортовым номером.
Робот должен быть в той же сети, что и робот, отправляющий сообщение, и зарегистрирован как ведущий или ведомый с помощью меню Настройки → Сообщения
на роботе. Если роботов с данным бортовым номером в сети несколько, сообщение получат все они.
Записывает значение данного выражения в заданный файл на роботе.
Путь до файла может быть абсолютным или относительно папки с trik-studio.exe
.
Файл можно получить с контроллера, например, с помощью программы WinSCP для Windows или scp для Linux.
Удаляет заданный файл на роботе.
Путь до файла может быть абсолютным или относительно папки с trik-studio.exe
.
Выключает видеокамеру.
Останавливает видеотрансляцию с камеры робота.
Устанавливает гироскоп в 0 в текущей позиции.
Устанавливает соединение между роботами и объединяет их в одну сеть. Имеет 3 свойства: Address, Порт и Бортномер. В свойстве Address указывается ip-адрес робота или экземпляра TRIK Studio, к которой он подключается. В свойстве Порт указываем номер порта, начиная с -1. Следующий экземпляр TRIK Studio будет иметь номер 0, следующий 1 и так далее. В свойстве Бортномер указывается бортномер вашего робота или TRIK Studio.
Вид
Название
Описание
Ждать получения сообщения из другой параллельной задачи.
Ждать ввода значения от пользователя.
Ждать, пока значение, возвращаемое гиродатчиком на указанном порту, не будет сравнимо с указанным в значении параметра «градусы».
Ждать срабатывания датчика касания на указанном порту.
Ждать, пока значение, возвращаемое сенсором света на указанном порту, не будет сравнимо с указанным значением в параметре «Проценты».
Ждать, пока расстояние, возвращаемое ультразвуковым сенсором расстояния, не будет сравнимо со значением, указанным в параметре «Расстояние».
Ждать, пока расстояние, возвращаемое инфракрасным сенсором расстояния, не будет сравнимо с указанным в значении параметра «Расстояние».
Ждать, пока показания счетчика количества оборотов на заданном порту не станут больше или меньше указанного в значении параметра «Предел оборотов».
Ждать, пока не будет нажата указанная кнопка на корпусе робота.
Ждать получения сообщения через систему почтовых ящиков. Когда сообщение будет получено, оно будет помещено в указанную в параметре блока переменную.
Ждать нажатия на кнопку на пульте, подключённом к роботу.
Ждать нажатия на одну из двух активных областей пульта, подключённого к роботу.
Ждать нужного наклона пульта, подключённого к роботу.
Ждать, пока пульт не отключится от робота. Если пульт не подключен, программа продолжит выполнение.
Ждать, пока к роботу не подключится пульт. Если пульт уже подключен, программа продолжит выполнение.
Ждать получения сообщения из другой параллельной задачи. Когда сообщение будет получено, оно будет присвоено указанной в блоке переменной. Свойство «Дождаться сообщения» позволяет указать, что делать, если очередь сообщений пуста: дождаться прихода нового сообщения или продолжить работу, присвоив переменной пустую строку. Сообщение автоматически приводится к типу, соответствующему типу переменной-приёмника. Пример: если вы посылаете число в виде строки, то оно будет принято как число.
Ждать ввода значения от пользователя. После ввода значение будет присвоено указанной в блоке переменной.
Блок «Пользовательский ввод» имеет 3 свойства:
Свойство
Описание
Переменная
Имя переменной.
По умолчанию
Значение переменной по умолчанию.
Текст
Описание поля ввода.
Пример
Программа
Исполнение программы
Ждать, пока значение, возвращаемое гиродатчиком на указанном порту, не будет сравнимо с указанным в значении параметра «градусы».
Ждать срабатывания датчика касания на указанном порту.
Ждать, пока значение, возвращаемое сенсором света на указанном порту, не будет сравнимо с указанным значением в параметре «Проценты». Параметры: «Проценты» — значение для сравнения со значением, возвращаемым датчиком света. «Порт» — порт, к которому подключен сенсор света. «Считанное значение» — операция, которая будет использоваться для сравнения со значением параметра «Проценты».
Ждать, пока расстояние, возвращаемое ультразвуковым сенсором расстояния, не будет сравнимо со значением, указанным в параметре «Расстояние» (расстояние задается в сантиметрах, от 0 до 300). Параметры: «Расстояние» — значение для сравнения со значением, возвращаемым датчиком расстояния. «Порт» — порт, к которому подключен датчик расстояния. «Считанное значение» — операция, которая будет использоваться для сравнения со значением параметра «Расстояние».
Ждать, пока расстояние, возвращаемое инфракрасным сенсором расстояния, не будет сравнимо с указанным в значении параметра «Расстояние». По умолчанию на портах A1 и A2 расстояние задается в сантиметрах (от 0 до 100), к остальным подключение не рекомендуется, так как чистое значение с датчика будет обработано с ожиданием другого подключенного датчика. Еще один параметр — номер порта, к которому подключен датчик расстояния. Также параметром указывается операция, которая будет использоваться для сравнения с введенным расстоянием.
Ждать, пока показания счетчика количества оборотов на заданном порту не станут больше или меньше указанного в значении параметра «Предел оборотов».
Ждать, пока не будет нажата указанная кнопка на корпусе робота.
Ждать получения сообщения через систему почтовых ящиков. Когда сообщение будет получено, оно будет помещено в указанную в параметре блока переменную. Свойство «Дождаться сообщения» позволяет указать, что делать, если очередь сообщений пуста: дождаться прихода нового сообщения или продолжить работу, положив в переменную пустую строку. Сообщение автоматически приводится к типу, соответствующему типу переменной-приёмника, то есть, например, можно послать число в виде строки и принять его как число.
Ждать нажатия на кнопку на пульте, подключённом к роботу. Кнопки имеют номера от 1 до 5.
Ждать нажатия на одну из двух активных областей пульта, подключённого к роботу. Координаты нажатия можно получить с помощью сенсорных переменных «gamepadPad».
Ждать нужного наклона пульта, подключённого к роботу. Наклон регистрируется только если на пульте включён режим «руля», угол наклона кодируется числами от -100 (максимально влево) до 100 (максимально вправо). Также параметром указывается операция, которая будет использоваться для сравнения со значением параметра «Угол».
Ждать, пока пульт не отключится от робота. Если пульт не подключен, программа продолжит выполнение.
Ждать, пока к роботу не подключится пульт. Если пульт уже подключен, программа продолжит выполнение.
Вид
Название
Описание
Указать цвет, которым будут рисоваться простые графические фигуры на экране робота.
Указать ширину линии, которой будут рисоваться простые графические фигуры на экране робота.
Нарисовать на экране точку в указанных координатах.
Нарисовать на экране отрезок. В качестве параметров блоку указываются концы отрезка.
Нарисовать на экране прямоугольник. В качестве параметров указываются координаты левого верхнего угла, ширина и высота прямоугольника.
Нарисовать на экране эллипс, вписанный в заданный прямоугольник.
Нарисовать на экране дугу, заданную координатами прямоугольника, в который она будет вписана, и углами (в градусах) её начала и конца на окружности. Если начало и конец совпадают, будет нарисована окружность.
Нарисовать на экране смайлик.
Нарисовать на экране грустный смайлик.
Задаёт цвет фона экрана.
Печатает заданную строку в заданном месте на экране робота. Значение свойства «Текст» по умолчанию трактуется как строка в чистом виде, оно так и будет выведено на экран.
Стереть всё, что нарисовано на экране.
Указать цвет, которым будут рисоваться простые графические фигуры на экране робота.
Указать ширину линии, которой будут рисоваться простые графические фигуры на экране робота.
Нарисовать на экране точку в указанных координатах.
Нарисовать на экране отрезок. В качестве параметров блоку указываются концы отрезка.
Нарисовать на экране прямоугольник. В качестве параметров указываются координаты левого верхнего угла, ширина и высота прямоугольника.
Нарисовать на экране эллипс, вписанный в заданный прямоугольник.
Нарисовать на экране дугу, заданную координатами прямоугольника, в который она будет вписана, и углами (в градусах) её начала и конца на окружности. Если начало и конец совпадают, будет нарисована окружность.
Нарисовать на экране смайлик.
Нарисовать на экране грустный смайлик.
Задаёт цвет фона экрана.
Печатает заданную строку в заданном месте на экране робота.
Свойство
Значение
Вычислять
Истина — вывод на экран значения переменной или выражения.
Ложь — вывод на экран текста.
Текст
Текст / имя переменной (выражение) для вывода на экран.
Обновить картинку
Истина — обновить экран. Ложь — не обновлять экран.
X, Y
Координаты начала текста.
Для вывода текста:
В свойстве «Текст» напишите нужный текст.
Уберите галочку в свойстве «Вычислять».
Для вывода значения переменной:
В свойстве «Текст» напишите имя переменной.
Поставьте галочку в свойстве «Вычислять».
Стереть всё, что нарисовано на экране.