Среда программирования MRT 1.2.4
Обращаем внимание, что для работы ПО MRT 1.2.4 необходим компонент NetFramework 3.5. В ОС Windows 10 этот компонент входит в сборку, но его необходимо активировать. Для этого выполните следующие действия:
Для Windows:
Для Linux:
Роботрек IDE - среда разработки, основанная на Arduino IDE и дополненная визуальной средой программирования для составления программ из блоков без необходимости писать и редактировать код.
Роботрек IDE имеет полную совместимость со всеми платами и библиотеками Arduino. Если вы работаете одновременно с наборами Роботрек и Arduino, то вам не придется устанавливать несколько IDE.
Визуальная среда разработана на основе проекта Ardublock и предоставляет собой плагин для Arduino IDE, который генерирует код на языке программирования C из визуальной программы. При этом структура визуальной программы практически всегда соответствует структуре текстовой программы, что позволяет переходить от визуального программирования к текстовому с наименьшими усилиями.
В данной статье преимущественно рассмотрена работа с визуальной средой, т.к. работа с Arduino IDE подробно описана в множестве статей в интернете.
Windows: скачайте и запустите установочный файл, следуйте инструкциям мастера установки. По завершении установки на рабочем столе появится ярлык для запуска программы.
Linux (Astra, Alt):
Astra - скачайте и разархивируйте архив. Далее следуйте руководству по установке. По завершении установки на рабочем столе (и в разделе «Разработка) появится ярлык для запуска программы.
Alt - скачайте и разархивируйте архив. Далее следуйте руководству по установке. По завершении установки ярлык появится в меню быстрого запуска в разделе «Программирование»
Для Windows:
Для Linux Astra / Linux Alt
Сразу после запуска окна Arduino IDE и визуальной среды располагаются рядом друг с другом и занимают весь экран. Вы можете свободно перемещать и изменять размеры каждого из окон.
Вы можете закрыть визуальную среду, если пишете программы текстом, но не закрывайте окно Arduino, т.к. это приведет к полному выходу из программы.
Если вы используете только визуальную среду, просто разверните ее на весь экран, а Arduino IDE сверните.
Если вы случайно закрыли окно визуально среды, заново открыть его можно из меню Arduino IDE (Инструменты - Визуальная среда)
После первого запуска проверьте, что в Arduino IDE выбрана нужная плата и нужный порт (Инструменты - Плата и Инструменты - Порт).
Окно визуальной среды имеет следующий интерфейс:
1. Верхняя панель инструментов:
2. Нижняя панель инструментов:
3. «Фабрика» блоков. Здесь хранятся все возможные блоки, из которых составляется программа.
4. Рабочая область. Здесь составляется программа.
Для добавления блока на рабочую область откройте нужную группу блоков, захватите нужный блок левой кнопкой мыши и перетяните его на рабочую область. Разместите его так, чтобы его коннектор оказался как можно ближе к коннектору блока, к которому вы хотите его присоединить, и отпустите левую кнопку мыши. Если блоки соединились успешно, вы услышите щелок.
Для удаления блока или блоков захватите блок, который нужно удалить, и переместите его за границы рабочей зоны:
Для копирования блока кликните на нем правой кнопкой и выберите «Клонировать». На поле появится копия блока и всех его дочерних блоков.
Если к блоку, на котором вы кликнули, присоединены снизу другие блоки, они тоже будут клонированы.
Для добавления комментария кликните по блоку правой кнопкой мыши и выберите «Добавить комментарий». После этого комментарий можно перемещать, скрывать и удалить при необходимости. В программный код Arduino IDE комментарии не конвертируются.
Все блоки размещены в фабрике блоков в группах:
Группа блоков | Описание |
---|---|
Управление | Блоки, ответственные за ход выполнения программы, ее ветвления Например, циклы, условия, задержки, переходы. |
Порты | Блоки для прямого доступа к портам IN и OUT: установка высокого или низкого напряжения, чтение. |
Логика | Всевозможные логические операторы: сравнение, И, ИЛИ, НЕ и т.д. Все эти блоки возвращают либо 1, либо 0 |
Математика | Различные математические операторы: сложение, вычитание, умножение, масштабирование и т.д. |
Переменные | Блоки для создания переменных различного типа и их изменения. |
Моторы | Блоки для управления моторами и серводвигателями. |
Датчики | Блоки для настройки и получения данных с датчиков: расстояния, цвета, ИК, освещенности, кнопки, огня, удара, энкодера, микрофона, магнитного поля, положения, температуры. |
Встроенные кнопки | Блоки для опроса состояния кнопок, расположенных на плате. |
Исполнители | Блоки для управления различными исполнительными устройствами (кроме двигателей): светодиодом, зуммером. |
Встроенный RGB LED | Блок для управления трехцветным светодиодом, расположенным на плате. |
ИК ПДУ | Блоки для реализации дистанционного управления с помощью инфракрасного пульта. |
Bluetooth ПДУ | Блоки для реализации дистанционного управления по протоколу Bluetooth с помощью приложения Роботрек ПДУ |
Дисплей | Блоки для работы с дисплеем - вывода текста, рисования геометрических фигур и т.д. |
Отладка | Блоки для работы с UART - оправка данных на компьютер и чтение данных, отправляемых с компьютера через терминал. |
I2C | Общие блоки для работы с устройствами, работающими на шине I2C. |
Память | Блоки для работы с постоянной памятью: чтение и запись в EEPROM (память микроконтроллера) и на SD-карту. |
Свой код | Блоки для добавления в визуальную программу любых строк текстового кода. |
Порты Arduino | Блоки для доступа к портам интерфейса Arduino. |
Блоки можно разделить на виды по нескольким параметрам
Команды - блоки, выполняющие какое-то действие, но не возвращающие никакого результата. Любая программа должна состоять хотя бы из одной команды. Команды имеют коннекторы сверху и снизу и соединяются только друг с другом.
Команды могут принимать результаты функций или переменные в качестве аргументов.
Команды, требующие аргументов, имеют один или несколько коннекторов с правой стороны. Форма коннектора указывает на тип принимаемого в качестве аргумента значения, к этому коннектору присоединяется либо переменная соответствующего типа, либо функция.
Команды выполняются друг за другом сверху вниз.
Функции не имеют коннекторов сверху и снизу. Могут использоваться только в качестве аргументов каких-либо команд или других функций. Тип возвращаемых данных соответствует форме левого коннектора блока:
Форма левого коннектора блока | Тип данных |
---|---|
Округлая | Boolean. Логический 0 или 1. |
Угловая | Число |
Прямоугольная | Строка из символов |
Фигурная | Символ |
Функции могут «вкладываться» друг в друга сколько угодно раз. При этом выполнение функций выполняется всегда, начиная с самого глубоко вложенного блока, например:
В данной программе: