Аннотация:
Визуальные предметно-ориентированные языки зачастую имеют низкий порог вхождения: даже ученики школ и дошкольных учреждений могут программировать на таких языках, оперируя визуальными моделями. Этот факт нашел широкое применение в образовательной робототехнике, где большинство используемых сред разработки основано на визуальных языках. Данная работа описывает новый потоковый визуальный язык программирования роботов для распространенных встраеваемых робототехнических платформ. Очевидно, что сложные потоковые визуальные языки трудны для понимания. Целью нашей работы было создание инструмента, представляющего собой переходную «ступень» между легковесными образовательными средами программирования, которые обычно предоставляют языки, основанные на модели потока управления, и сложными индустриальными средами, которые, в основном, предоставляют языки, основанные на модели потоков данных. В статье приводится сравнение широко распространенных сред программирования роботов с описанной в работе средой. Также в работе представлен краткий обзор популярных поведенческих архитектур для построения сложных систем управления роботами, таких как архитектура категорий Р. Брукса и «Колония» Д. Коннеля, и приведены идеи их выражения в новом языке программирования. Язык был создан с помощью предметно-ориентированного подхода. Он предоставляет возможность совмещать в себе две модели исполнения: пользователь может программировать как в терминах потоков данных, так и в терминах потока управления. Мы считаем, что это важно в образовательных целях. Программы на нашем языке состоят из множества «блоков» - визуальных представлений процессов трансформации данных, и «связей», которые визуализируют потоки данных между ними. В качестве апробации среды созданы различные по сложности программы управления роботами.