Блочное программирование в приложении Jump¶
Мы создали в приложении Jump визуальную среду программирования для детей и подростков. Она позволяет в простой и доступной форме познакомиться с основными функциями Пионера Мини.
В блочном программировании все возможные движения и действия квадрокоптера представлены в виде перетаскиваемых блоков, которые могут соединяться в программу управления квадрокоптером. Блоки перетаскиваются по технологии drag-and-drop: удерживание нажатия на блоке запускает процесс перетаскивания, а отпускание нажатия заканчивает процесс перетаскивания.
Для перехода в раздел запустите приложение на вашем устройстве и нажмите иконку с блоками в верхнем левом углу.
Интерфейс¶
Экран разделён на две части. В левой части экрана представлена палитра всех блоков. Часть из них может не помещаться на экране вашего устройства. В этом случае следует воспользоваться вертикальным тач-скролом для поиска необходимого блока. Правую часть экрана занимает рабочая область, в которой создаётся программа. Также справа находятся кнопки и вспомогательные блоки.
Кнопка запуска в виде зелёного треугольника служит для старта готовой программы.
Индикатор работы отображается в процессе выполнения программы.
Кнопка остановки выполнит экстренную посадку в случае непредвиденных обстоятельств.
Корзина для удаления ненужных блоков с рабочей области.
Если вы напишете большую программу, она может не поместиться на экран устройства. Для этого случая предусмотрено масштабирование рабочей области. Чтобы увеличить или уменьшить масштаб, разведите или сведите два пальца на рабочей области.
Описание блоков¶
Ниже описаны все доступные блоки и выполняемые ими действия.
Название блока | Изображение | Действие |
---|---|---|
TAKE OFF | Взлёт на высоту 'Take off'. Высота задаётся параметром Flight_com_takeoffAlt и указывается в метрах. | |
LAND | Посадка. | |
REPEAT | Выполняет включающие в себя операции указанное количество раз. | |
MOVE FORWARD | Движение вперёд. Расстояние указывается в метрах. | |
MOVE BACKWARD | Движение назад. Расстояние указывается в метрах. | |
MOVE LEFT | Движение влево. Расстояние указывается в метрах. | |
MOVE RIGHT | Движение вправо. Расстояние указывается в метрах. | |
MOVE UP | Движение вверх. Расстояние указывается в метрах. | |
MOVE DOWN | Движение вниз. Расстояние указывается в метрах. | |
TURN LEFT | Поворот относительно вертикальной оси (рысканье) влево. Значение указывается в градусах. | |
TURN RIGHT | Поворот относительно вертикальной оси (рысканье) вправо. Значение указывается в градусах. | |
SET COLOR | Включение бортовых светодиодов. При нажатии открывает палитру доступных цветов. | |
SLEEP | Установка задержки. Значение указывается в секундах. | |
TAKE PHOTO | Сделать фотографию. Фото сохранится на устройство или SD-карту, в зависимости от настроек приложения. |
Пример составления программы¶
Для создания программы необходимо перенести блоки из палитры в рабочую область и выстроить их в необходимом порядке. Блоки автоматически присоединяются в то место, в которое их установили. Таким образом новый блок можно разместить перед, после или между существующих блоков.
Важно
Блоки, отвечающие за передвижение коптера, обязательно должны находиться между блоками взлёта (Take off) и посадки (Land)!
В качестве примера рассмотрим небольшую программу полёта по квадрату.
Поскольку программа подразумевает полёт, начинаем её с блока TAKE OFF для осуществления взлёта. Маркер рядом с блоками поможет сориентироваться, какое действие выполняется в текущий момент.
Открываем цикл и указываем количество повторов.
Вносим в блок цикла блоки движения: MOVE FORWARD, MOVE RIGHT, MOVE BACKWARD и MOVE LEFT для движения вперёд, вправо, назад и влево соответственно. Указываем необходимые расстояния в блоках.
После указанного количества повторов произойдёт выход из цикла и переход к следующим блокам программы.
Завершаем программу блоком LAND для посадки Пионера Мини.