ИнфинITи

ROB-40182

Мы собрали робота для соревнования по лабиринту Робот использует два датчика: — датчик касания (кнопка) для определения препятствия спереди — датчик расстояния (в нашем случае ультразвуковой, который можно заменить на инфракрасный) для определения препятствия справа. После старта программы робот начинает двигаться вперед вдоль препятствия справа. Если препятствие далеко (более 4 см), то он поворачивает вправо, приближаясь к препятствию. Если препятствие близко (менее 4 см), то робот поворачивает влево, удаляясь от препятствия. Таким образом робот все время движется вдоль препятствия справа на одном расстоянии. Если препятствие справа отсутствует (поворот), то робот старается найти его и поворачивает вправо, пока не обнаружит его. Если же препятствие будет спереди, то при его достижении сработает датчик касания (кнопка). В этом случае робот отъезжает назад, поворачивается влево на 90 градусов и включает алгоритм движения вдоль препятствия. И так по циклу. Мы использовали для программирования TRIK Studio TRIK Studio – среда текстового и визуального программирования образовательных конструкторов роботов. TRIK Studio появилась как развитие проекта кафедры системного программирования СПбГУ QReal: Robots. В официальной версии имеется поддержка конструкторов LegoMindstorms NXT, LegoMindstorms EV3 и ТРИК. Каждый из этих конструкторов может быть запрограммирован на одном из двух визуальных языков – более простом, построенном на модели потока управления, или более сложном языке программирования потоков данных – либо на одном из нескольких текстовых. Для Lego NXT доступны языки NXT OSEK C и русскоязычная версия C (для облегчения изучения текстовых языков), для ТРИК – JavaScript, F# или PascalABC.NET , для Lego EV3 поддержан единственный официальный язык программирования стандартной прошивки – байткод виртуальной машины EV3.

Файлы

Добавлен 22.11.2024

Добавлен 22.11.2024