Поддержка lego® mindstorms® education ev3

Содержание

Информатика

Данное направление обучает учащихся с базовыми знаниями по информатике основам программирования с использованием самоучителя Robot Educator и аппаратных средств – гироскопического датчика. В основе программного обеспечения LEGO MINDSTORMS EV3 лежит LabVIEW – основной язык графического программирования, используемый учеными и инженерами во всем мире. Как показал опыт, этот подход графического программирования обеспечивает прочный фундамент для учащихся, изучающих текстовое программирование.

Чтобы обучить учащихся основам графического программирования, пусть они пройдут следующие пособия в категории «Более сложные действия»: «Многозадачность», «Цикл», «Переключение», «Шины данных», «Переменные», «Массивы», «Математика — Базовый» и «Математика — Дополнительный».

Программирование EV3 при помощи Scratch

Scratch является графической средой программирования. Программировать EV3 при помощи Scratch можно если установить нужное программное обеспечение и настроить его. Программное обеспечение можно установить на любые операционные системы. Для примера выберем операционную систему Windows.


Scratch_2_0

Как и в случае с программированием на Python, потребуется карта памяти с такими же параметрами. Карту памяти нужно отформатировать в файловой системе FAT32. На компьютер надо установить виртуальную Java-машину под названием leJOS.

Затем устанавливаем виртуальную машину на компьютер со всеми компонентами.

После этого устанавливаем образ на карту памяти. В дальнейшем при включении микрокомпьютера EV3 с картой памяти будет загружаться leJOS EV3. Без карты памяти будет происходить загрузка стандартного программного обеспечения Lego EV3.

Также на компьютере должна быть установлена свежая версия Adobe AIR. Затем можно установить редактор Scratch.

Установка редактора не занимает много времени.

Следующим шагом является установка ev3-scratch-helper-app. Это приложение служит для связи редактора Scratch и микроконтроллера EV3. Также в редакторе можно в настойках установить русский язык и нужно добавить блоки EV3 в редактор Scratch. После добавления блоков можно приступать к написанию программ.

В статье приведены не все возможные варианты программирования EV3, а только наиболее простые и не требующие каких-либо специальных знаний. Каждый вариант имеет свои достоинства и недостатки. Остается только выбрать что больше всего подходит в каждом конкретном случае.

Предлагаемые направления для планирования урока

Имеется масса способов использования  LEGO Mindstorms EV3 для достижения Ваших конкретных целей обучения. На следующих страницах мы представили Вам пять направлений для планирования урока, которые позволяют Вам подготовить Ваш процесс обучения таким образом, чтобы он подходил разным учащимся.
Перед прочтением данного руководства, для того чтобы Вам было понятно о чем идет речь в этом самоучителе, Вам необходимо скачать и установить на свой компьютер среду разработчика LEGO Mindstorms Education (LME) EV3 ( Система Графического Программирования для LEGO Учитель/Ученик)
Запустить эту программу, нажав дважды на кнопку находящуюся на Вашем рабочем столе :
 
Справа в открывшемся окне выбрать закладку Самоучитель:
 Цель данного направления заключается в предоставлении учащимся необходимых им знаний для работы с компонентами аппаратного обеспечения и программных средств, которые входят в состав программного обеспечения LEGO MINDSTORMS Education EV3 и комплекта контента самоучителя Robot Educator - Перворобот от Lego или просто "тележка".
Во-первых, пусть учащиеся посмотрят видео с кратким руководством по программированию для ознакомления с программным интерфейсом.
Во-вторых, пройдите с ними пособие «Настройка конфигурации блоков» в категории «Основы» комплекта контента самоучителя Robot Educator.
В-третьих, ознакомьте учащихся с режимами «Угол» и «Скорость» датчиков, пройдя с ними пособия «Гироскопический датчик» и«Скорость гироскопа» в категориях «Аппаратные средства» и «Более сложные действия».
В-четвертых, улучшите навыки управления Robot Educator-ом вашими учащимися и ознакомьте их с различными датчиками, пройдя остающиеся восемь пособий в категории «Основы».
Чтобы учащиеся могли создавать более сложные программы, пусть они пройдут пособия «Многозадачность», «Цикл», «Переключение» и «Многопозиционный переключатель» в категории «Более сложные действия».

Поддержка по решениям LEGO® Education для дошкольного развития

Комплект занятий «Эмоциональное развитие ребенка» PDF

Это комплект предназначен для работы  с набором «Эмоциональное развитие ребенка». Дети не всегда могут выразить свои эмоции и разрешить конфликтные ситуации.  Материалы  помогут  педагогам развить такие навыки у своих обучающихся.

Брошюра для Комплекта «Городская жизнь» PDF

Дети очень любят играть во взрослых и изучать реальную жизнь, которую видят каждый день. Используя материалы с 12 заданиями дети сконструируют свой дом, детский садик, поликлиннику и многое другое. конструктор развивает фантазию, творческую мысль, усидчивость и моторику рук.

Брошюра для Комплекта «Социально-эмоциональное развитие» PDF

12 занятий, входящие в эту брошюру специально разработаны для поддержки социально-эмоционального развития дошкольников по трем направлениям: постижение себя, постижение окружающих и постижение мира, окружающего ребенка.

Брошюра для Комплекта «Логико-математическое развитие у детей дошкольного возраста» PDF

Математиками не становятся при рождении. Детей необходимо приучать  логически мыслить.  Учебные материалы помогут педагогам спланировать занятия по развитию ранних математических навыков  у малышей.

Материалы по RobotC

RobotC User manual for LEGO Mindstroms (3.0)
RobotC Driver suite – Комплект драйверов для подключения датчиков и модулей других производителей
Tutorial for RobotC Driver suite (руководство по драйверам для RobotC)
RobotC EV3 Getting Started Guide – Инструкция по прошивке контроллера EV3
A. Kirillov – RobotC primer (2014)
A. Schueller – Programming with Robots
Storming Robots – RobotC Packet 1
Storming Robots – RobotC Packet 2
Storming Robots – RobotC I2C Tutorial Packet 1
Storming Robots – RobotC I2C Tutorial Packet 2
Storming Robots – Compass Tutorial
Storming Robots – NXT Bluetooth Communication
Storming Robots – Graphical RobotC Tutorial
ROBOTC Training Guide

Среда программирования EV3

Производители Lego EV3 позаботились о том, чтобы обеспечить владельцев робототехнических конструкторов Lego Mindstorms EV3 бесплатным программным обеспечением. Скачать программное обеспечение EV3 для различных устройств можно с официального сайта Lego.

редактор EV3

Также в ПО существуют задания по программированию, которые позволяют быстро научиться программировать роботов EV3. Программное обеспечение является пиктографическим. Оно обеспечивает простое и интуитивно понятное визуальное программирование.

Существенным недостатком является то, что при написании сложных и разветвленных программ, это ПО достаточно сильно грузит систему. При этом слабые компьютеры сильно тормозят. Поэтому желательно иметь компьютеры с хорошими характеристиками. На сайте опубликованы минимально допустимые характеристики компьютеров.


требования к оборудованию

EV3 является целой платформой, которую можно использовать в игровых и образовательных целях. При помощи платформы Lego Mindstorms EV3 можно обучать основам робототехники, программирования, изучать различные алгоритмы. При этом не нужно иметь знаний схемотехники и различных протоколов.

Как включить микрокомпьютер EV3

Для включения микрокомпьютера EV3 нужно нажать на кнопку, находящуюся в центре шестикнопочного интерфейса микрокомпьютера EV3. После нажатия индикатор статуса модуля загорится красным цветом.


подсветка блока EV3

При этом будет видно окно запуска. После того, как индикатор загорится зеленым цветом, модуль EV3 будет готов к работе. Чтобы выключить модуль EV3 нужно нажимать кнопку «Назад» до тех пор, пока не будет видно окно завершения работы.

По умолчанию будет выбран вариант «Прервать X». При помощи кнопки «Вправо» нужно выбрать вариант «Принять». После этого нажмите центральную кнопку (OK). Теперь микрокомпьютер EV3 выключен. Если нажать OK, то при выбранном варианте Х, произойдет возврат в окно «Запустить последнюю».

Алгоритм навигации на плоскости

На базе алгоритма опроса гироскопа был разработан алгоритм навигации, позволяющий роботу самостоятельно возвращатсья в точку старта. Робот проезжает по нескольким точкам, координаты которых генерируются случайным образом, а затем возвращается в точку старта. Работает это следующим образом. В цикле от 1 до 10 (количество точек траектории задается в коде) с помощью генератора случайных чисел задаются новые значения угла поворота и расстояния до новой точки, затем робот перемещается в новую точку. Одновременно с этим, в цикле производится вычисление суммарного угла отклонения, а также значения проекций по осям OX и OY. Проекции вычисляются на основе суммарного угла поворота. После выполнения цикла прохождения траектории, вычисляется угол, на который необходимо повернуться роботу, чтобы начать движение к исходной точке по кратчайшему маршруту. Затем вычисляется расстояние по формуле модуля длины вектора, и робот движется к исходной точке. После прихода в исходную точку, робот вычисляет итоговое отклонение угла от начального значения при запуске и поворачивает на вычисленное значение угла. Программа завершается. Ниже представлено видео работы программы.

Конструкция робота

Началось все с того, что на Youtube был найден ролик с интересной конструкцией робота.

Конструкция показалась нам интересной и мы с ребятами решили её собрать. Сначала пытались скопировать, но потом удалось найти инструкцию. Конструкция робота разработана Лауренсом Валком (Laurens Valk). Робот представляет собой гусеничную платформу с манипулятором, способную передвигаться в различных направлениях, захватывать, поднимать и перемещать небольшие предметы. Конструкция включает датчики расстояния (ультразвуковой дальномер), касания и цвета. Дальномер позволяет роботу оценивать расстояние до объектов перед ним и избегать столкновений. Датчик касания используется для определения крайней точки подъёма захвата. Датчик цвета предназначен для определения цвета захваченного объекта. Манипулятор робота имеет одну степень свободы – он может только подниматься и опускаться. Управление манипулятором (захват и подъём/опускание) осуществляется с помощью отдельного сервопривода. В общем конструкция представляет собой удобную платформу для экспериментов с автономными роботами и может успешно использоваться в различных соревнованиях.

Контроллер NXT используемый в наборах LEGO Mindstorms позволяет подключать до 3-х сервомоторов (порты A, B, C). Скоростью вращения каждого из сервомоторов можно управлять, задавая значения от -100 до 100. При этом отрицательные значения означают инверсию направления вращения мотора. Сервомоторы имеют встроенные датчики угла поворота (энкодеры), что позволяет опрашивать их с целью вычисления пройденного расстояния. Точность составляет 1 градус.

Моторы, управляющие движением робота, подключены к портам B и C. Они позволяют роботу двигаться поступательно по прямолинейной траектории (двигатели В и С синхронизированы). Поворот робота происходит за счет увеличения мощности (скорости вращения вала двигателя) одного двигателя относительного другого. Конструкция робота примечательна тем, что один мотор, подключенный к оставшемуся порту A, используется как для открытия/закрытия захвата, так и для его поднятия/опускания. Реализовано это за счет сложной механической части. В связи с этим робот имеет определенные ограничения – например, невозможно раскрыть захват в поднятом состоянии. Подключение к порту A сервомотора, управляющего захватом, обусловлено схемотехникой управляющего контроллера: данный порт способен выдавать больший ток на двигатель, что позволяет поднимать предметы с большим весом.

Поскольку контроллеры NXT оснащены 4-мя входными портами, остается незадействованным еще один порт. В ходе работы было предложено добавить датчик-гироскоп, как наиболее перспективный вариант развития возможностей робота. Датчики-гироскопы играют важную роль в современной робототехнике.

Для этого в конструкцию был добавлен датчик-гироскоп компании HiTechnic. Это одноосный гироскоп, позволяющий измерять скорость и направление вращения в горизонтальной плоскости. Датчик позволяет измерять угловые скорости до ±360° в секунду (знак зависит от направления вращения). Частота опроса датчика может достигать до 300 Гц.

Одной из областей применения гироскопов является инерциальная навигация. Инерциальная навигация – метод определения координат и параметров движения различных объектов (судов, самолетов и др.) и управления их движением, основанный на свойствах инерции тел. Принцип инерциальной навигации заключается в измерении движений объекта, характеризуемых изменениями во времени его ускорения, скорости и координат, при помощи датчиков пространственного перемещения. Полученные от датчиков данные используются для решения задач управления и навигации. Исходя из вышесказанного были поставлены две задачи:

  • Робот должен уметь находить и захватывать ближайший к нему предмет (как в ролике выше);
  • Робот должен уметь ориентироваться на плоскости и, зная свои текущие координаты, самостоятельно возвращаться в точку старта.

Однако для начала необходимо было определиться со средствами программирования.

Материалы по Mindstorms от LEGO

Руководство от конструктора RIS (Robotics Invention System)
Руководство от коммерческой версии NXT
Руководство от коммерческой версии NXT 2.0
Руководство от версии NXT 2.0 для образовательных учреждений (9797, Перворобот NXT)
Инструкция по сборке от набора 9797
LEGO Mindstorms NXT Hardware Developer Kit – Описание аппаратной части набора NXT (схемы контроллера, датчиков, моторов и т.д.)
NXT Fantom Drivers v1.20 – Драйвера windows для контроллера NXT
NXT Firmware v1.31 – Заводская прошивка контроллера NXT
Руководство от коммерческой версии EV3 (31313, EV3 Home)
Руководство от версии EV3 для образовательных учреждений (45544, EV3 Education)
Состав набора EV3 для образовательных учреждений (45544, EV3 Education)
Раскладка набора EV3 для образовательных учреждений (45544, EV3 Education)
LEGO Mindstorms EV3 Hardware Developer Kit – Описание аппаратной части набора EV3 (схемы контроллера, датчиков, моторов и т.д.)
Описание ресурсного набора LEGO Mindstorms EV3 (45560)
Состав ресурсного набора LEGO Mindstorms EV3 (45560)
Раскладка ресурсного набора LEGO Mindstorms EV3 (45560)
LEGO Mindstorms EV3 Программное обеспечение
LEGO Mindstorms EV3 Учебные материалы
LEGO Mindstorms EV3 Инструкции по сборке (русскоязычная версия сайта)
LEGO Mindstorms EV3 Инструкции по сборке (англоязычная версия сайта, дополнительно содержит описание программ для роботов)
LEGO Mindstorms EV3 Совместимость с платформой NXT
Как… Сбросить настройки программируемого блока EV3
Как… Обновить встроенное ПО модуля EV3
LEGO Mindstorms EV3 Coding Activities – Практикум по информатике с 12 проектными работами. Программы представлены как на графическом языке, так и на текстовом RobotC. Язык английский
LEGO Mindstorms EV3 Coding Activities – Практикум по информатике с 12 проектными работами. Программы представлены как на графическом языке, так и на текстовом RobotC. Язык русский
Учебный курс Введение в робототехнику от LEGO Education. Основан на LEGO Mindstorms EV3. Язык русский
Конструкторские проекты на базе LEGO Mindstorms EV3 от LEGO Education. Язык русский

Загрузки для наборов серии «Машины и механизмы»

Получите учебные материалы

В этом разделе  вы найдете учебные материалы для  занятий по предметам STEM используя  задания «Машины и механизмы» для начальной и основной школы. Каждый Комплект  имеет дидактические материалы для  педагога с рекомендациями и разъяснениями,  пособия для  обучающихся,  инструкции по сборке необходимых моделей и инструменты оценки успеваемости. Для получения справочной информации о начале работы перейдите в раздел «Поддержка».

Комплект заданий «Первые механизмы»

(Mac OS) Скачать
Для использования данного Комплекта заданий приобретите набор «Простые механизмы» (арт. 9656). Этот материал расчитан на детей дошкольного возраста. В Комплект входят 16 занятий, в ходе которых ребята  узнают что такое  зубчатое колесо, рычаг,  вал, и как это все взаимодействует друг с другом. Почему колесо крутится, кран опускает и поднимает ковш. Разве любобытные детишки не задают этих вопросов?  Данный комплект заданий ответит на все вопросы и ребята наглядно увидят устройство простейших механизмов. Комплект включает в себя технологические карты занятий и рабочие листы для обучающихся.

Комплект заданий «Простые механизмы»

Windows (7, 8.1, 10) Скачать
Для использования данного Комплекта заданий необходимо приобрести набор «Простые механизмы» (арт. 9689). Эти материалы предназначены для учеников начальной школы, всего 20 заданий. Они  предназначены для изучения устройства и принципов действия машин и механизмов, которыеокружают нас  в повседневной жизни. Комплект включает в себя технологические карты занятий и рабочие листы для обучающихся.

Комплект заданий «Технология и основы механики. Задания базового уровня»

(Mac OS) Скачать
Для использования данного Комплекта заданий необходимо наличие набора «Технология и основы механики» (арт. 9686). 48 уроков познакомят учащихся с  принципом действия простых машин и машин с приводным двигателем. Специальные творческие задания научат детей к самостоятельному мышлению, умению сформировать задание и выполнить его. Комплект включает в себя технологические карты занятий и рабочие листы для обучающихся.

Комплект заданий «Технология и основы механики. Задания повышенной сложности»

Windows (7, 8.1, 10) Скачать
Для использования данного Комплекта заданий необходимо наличие набора «Технология и основы механики» (арт. 9686). В этот Комплект заданий состоит из  28 уроков  повышенной сложности и творческих заданий. Дети сами смогут проектировать и конструировать собственные модели механизмов.  Комплект включает в себя технологические карты занятий и рабочие листы для обучающихся.

Комплект заданий «Возобновляемые источники энергии»

(Mac OS) Скачать
Для использования данного Комплекта заданий необходимо наличие наборов «Технология и основы механики» (арт. 9686) и «Возобновляемые источники энергии» (арт. 9688). Где и как применяются возобновляемые источники энергии? Ребята смогут познакомится с видами  источников энергии и придумывать новые проекты. В комплект входят 20 проектных работ. Комплект включает в себя технологические карты занятий и рабочие листы для обучающихся.

Комплект заданий «Пневматика»

Windows (7, 8.1, 10) Скачать
Для использования данного Комплекта заданий необходимо наличие наборов «Технология и основы механики» (арт. 9686) и «Пневматика» (арт. 9641).  С пневматическими устройствами дети встречаются в повседневной жизни, но не всегда задумываются, как работает тот или иной механизм. У вас есть уникальная возможность помочь им изучить методы использования пневматических устройств в реальной жизни.  В комплекте 12 работ, заметки для учителя и рабочие листы для учащихся.

Разработка программы

Первоначально было поставлено две цели: научить робота хватать ближайший к нему предмет и научить робота ориентироваться на плоскости. Под ориентированием подразумевается определение текущих координат относительно начальных. Поскольку датчик-гироскоп измеряет угловую скорость, то для преобразования показаний, необходимо произвести интегрирование показаний по времени. Но для этого надо постоянно отслеживать показания датчика, а выполнять это в основном цикле программы накладно. Одной из особенностей контроллеров LEGO Mindstorms NXT является поддержка параллельного выполнения нескольких процессов – многозадачности. То есть робота можно запрограммировать на одновременное выполнение нескольких действий. Поэтому код обработки показаний датчика-гироскопа выделяется в отдельную задачу, которая называется драйвером гироскопа. Ниже представлен код такого драйвера.

Исходный кодскрыть

Контроллеры LEGO Mindstorms NXT поддерживают одновременное выполнение до 10 задач. Ресурсы процессора распределяются между задачами, для каждой из которых устанавливается время, в течение которого задача будет активна.

Для поворота робота на заданный угол также написана отдельная подпрограмма, принимающая в качестве входных параметров угол поворота и скорость поворота. Положительному углу поворота соответствует поворот робота вправо, а отрицательному – влево. При вызове функции текущий угол отклонения обнуляется, затем в цикле осуществляется поворот до тех пор, пока текущий угол не равен заданному значению угла. Поворот осуществляется вращением двигателей в противоположные стороны. Код функции поворота представлен ниже.

Исходный кодскрыть

Для движения робота по прямой (вперед/назад) также написана отдельная функция, входными параметрами которой являются скорость движения и расстояние в сантиметрах, которое необходимо проехать. Код функции приведен ниже.

Исходный кодскрыть

Средства программирования

Контроллеры LEGO Mindstorms NXT могут программироваться с использованием как графических, так и текстовых сред разработки. В графических средах программирования программы «собираются» из отдельных «кубиков», каждый из которых представляет набор определенных команд. Графические среды программирования наглядны и очень просты в использовании, что позволяет быстро освоить их человеку с любым уровнем подготовки. Самым распространенным примером подобной среды является среда NXT-G. Однако недостатком графических сред является сложность разработки объемных программ (ввиду большого количества блоков), а также ограниченные функциональные возможности.

Другим типом сред программирования являются текстовые среды. В настоящей работе для разработки программ использовалась среда RobotC – текстовая среда программирования, позволяющая разрабатывать программы для управления LEGO Mindstorms, используя популярный язык программирования Си. Среда разработана в Академии Робототехники Карнеги-Меллона и ориентирована в первую очередь на студентов. RobotC обладает простым в использовании интерфейсом, а также имеет мощный интерактивный отладчик, позволяющий производить отладку программы в режиме реального времени. Это значительно сокращает время, необходимое для поиска и исправления ошибок в программе. Для выполнения программ, написанных на RobotC, необходимо предварительно загрузить специальную прошивку. Использование данной прошивки позволяет получить доступ к большим возможностям управляющего контроллера, а также увеличить скорость работы программ.

Интерфейс программируемого контроллера NXT

Рассмотрим интерфейс контроллера NXT. На рисунке ниже показано назначение и описание иконок на экране контроллера

На экране контроллера отображаются следующие иконки:

  • индикатор Bluetooth-подключения – отображает текущий статус беспроводного модуля и наличие соединения. Если Bluetooth-модуль отключен, то иконка не будет показываться. Описание значений индикатора Bluetooth-подключения приведено в таблице ниже;
  • индикатор USB-подключения – отображает наличие и статус проводного подключения к компьютеру. При наличии неполадок необходимо проверить наличие установленных драйверов для контроллера NXT. Описание значений индикатора USB-подключения приведено в таблице ниже;
  • заряд аккумулятора – отображает уровень заряда аккумулятора, иконка начинает мигать при разряде;
  • индикатор работы программы – показывает состояние контроллера и позволяет определить завис он или нет. Если вращение иконки прекратилось, это означает, что контроллер NXT завис и его необходимо перезагрузить;
  • имя контроллера – используется при подключении по Bluetooth-интерфейсу. По умолчанию роботу присвоено имя NXT. Имя может быть длиной до 8 символов.

Ниже в таблице приведено описание иконок индикаторов связи

Иконка Описание
Bluetooth-модуль включен, но контроллер не видим для других Bluetooth-устройств.
Bluetooth-модуль включен, и контроллер виден для других Bluetooth-устройств.
Bluetooth-модуль включен, и контроллер подключен к какому-либо Bluetooth-устройству.
Контроллер подключен по USB и работает нормально.
Контроллер подключен по USB, но имеются неполадки.

Все текстовые сообщения на экране контроллера отображаются на английском языке. Перемещение по пунктам меню осуществляется с помощью стрелок. Текущий выбранный пункт выделяется рамкой. Основное меню содержит 6 пунктов (разделов), описание которых приведено в таблице ниже.

Пункт меню Иконка Описание
My Files Подменю «Мои файлы» позволяет просматривать все программы, а также графические и звуковые файлы, загруженные в память контроллера NXT.
Try Me Подменю «Попробуй» позволяет ознакомиться с работой датчиков и моторов.
View Подменю «Обзор» позволяет провести быстрое тестирование датчиков и сервомоторов, а также получить данные с каждого устройства.
NXT Program Встроенная программа для графического программирования контроллера без компьютера.
Bluetooth Подменю «Bluetooth» позволяет задать настройки беспроводного модуля, а также создать канал связи между контроллером NXT и другими устройствами.
Settings Подменю «Установки» позволяет провести настройку контроллера NXT (громкость звука, автоматическое отключение и т.д.).

Встроенная оболочка контроллера NXT включает программу NXT Program, позволяющую составлять простые программы без компьютера. Робота можно запрограммировать на движение вперёд/назад, а работу с датчиками. При использовании NXT Program каждый датчик должен подключаться к заданному порту. При входе в пункт меню NXT Program отображается схема подключения датчиков. По умолчанию в NXT Program для датчиков используются следующие порты: 1 – датчик касания, 2 – датчик звука, 3 – датчик освещённости, 4 – датчик расстояния.

Сервомоторы могут подключаться к любому выходному порту без каких-либо ограничений, левый двигатель подключается к порту B, а правый к порту C. В некоторых версиях встроенной оболочки требуется обязательное подключение двух сервомоторов (то есть нельзя подключить двигатель только к порту B или C). В противном случае подключенный двигатель будет работать прерывисто. Использование порта A в NXT Program невозможно.

Программы в NXT Program составляются из отдельных блоков аналогично блок-схемам (рис 4.1). Каждая программа состоит из 5 блоков (квадратных ячеек), в которых необходимо разместить выбранные команды. NXT Program содержит большое количество базовых команд: управление моторами (движение вперед/назад, повороты вправо/влево), опрос датчиков (ждать нажатия кнопки, ждать появления объекта перед роботом и т.д.), ожидания, звуковых сигналов. Подробное описание команд, а также примеры их использования приведены в книге С.А. Филиппова «Робототехника для детей и родителей». Созданные программы при необходимости можно сохранить в памяти контроллера, а затем вызвать из подпункта NXT Files в пункте меню My Files.

Прочее

А. Бобцов, С. Колюбин – Чемпионаты роботов
С. Филиппов – Основы робототехники на базе конструктора LEGO Mindstorms NXT (журнал Компьютерные инструменты в школе, №1-6 2010 г.)
В. Дусеев – Управление роботом LEGO NXT посредством Bluetooth
А. Ушаков – Особенности реализации и настройки регуляторов для LEGO-роботов
И. Шадрин – Учебное пособие по программированию в среде Lego Mindstorms EV3
NXT-G Tips & Tricks – Советы и подсказки по программированию в NXT-G. Язык английский
Tutorial for Programming the LEGO MINDSTORMS NXT – Руководство по программированию LEGO Mindstorms NXT из среды NXT-G. Язык английский
МАДИ Программирование роботов-манипуляторов – Методическое пособие по Mindstorms EV3 на графическом языке EV3-G. Язык русский
А. Капитонов – Курс лабораторных работ по теории автоматического управления на основе LEGO Mindstorms NXT. Язык русский
Обзор программы RoboLab для программирования NXT роботов. Язык русский
Методическое пособие по Mindstorms EV3 на графическом языке EV3-G. Автор неизвестен. Язык русский
LEGO Mindstorms EV3 Programming Basics – Отличное пособие для начала работы с Mindstorms EV3. Рассматривается графическое программирование в среде LEGO. Расписано все грамотно и подробно, с кучей поясняющих картинок. Язык английский
Classroom Activities for the Busy Teacher: EV3 – Учебное пособие по программированию в среде Lego Mindstorms EV3. Язык английский
PID Closed Loop Feedback Control Theory for Fun and Profit – Отличное руководство по теории, реализации и применению ПИД-регуляторов. Язык английский
EV3 Programming overview for FLL coaches – Руководство по программированию Lego Mindstorms EV3 для тренеров FLL. Содержит краткий обзор набора и описание приёмов программирования. Язык английский
EV3 Advanced Topics for FLL
Digital control of line following robot – Исследование на тему разработки системы управления роботом на базе LEGO Mindstorms EV3 для следования по линии. Язык английский
Embedded Control Systems LEGO Way – Исследование на тему разработки перевернутого маятника (двухколёсный сегвей) на базе LEGO Mindstorms NXT. Язык английский
Segway Line Tracer Using Proportional-Integral-Derivative Controllers – Статья на тему разработки ПИД-регулятора для сегвея, следующего по линии. Используется LEGO Mindstorms NXT. Язык английский
Using SLAM with LEGO Mindstorms to Explore and Map an Environment
LabVIEW Toolkit for LEGO Mindstorms NXT
Programming Solutions for the LEGO Mindstorms NXT – Небольшой обзор сред программирования для LEGO Mindstorms NXT. Язык английский
Extreme NXT – Одна из лучших книг по нестандартному использованию конструктора Mindstorms NXT. В книге рассмотрено устройство контроллера, датчиков, моторов. Описаны способы расширения функциональных возможностей конструктора
Extreme NXT – Второе издание популярной книги
Creating Cool MINDSTORMS NXT Robots – Интересная книга по набору NXT от Daniele Benedettelli – одного из известных энтузиастов платформы MIndstorms
LEGO Mindstorms Ultimate Builders Set
LEGO NXT Features and limitations – Описание возможностей и ограничений набора LEGO Mindstorms NXT. Язык английский
Building LEGO Robots for FIRST LEGO League
NXT programs – Большое количество различных конструкций на базе набора NXT
MindCub3r – Робот для сборки кубика Рубика. На сайте представлены инструкции и программы для наборов NXT и EV3
Домашняя страница Philippe Hurbain – энтузиаста, внесшего большой вклад в развитие платформы Mindstorms и одного из авторов книги Extreme NXT. На сайте много интересных статей с различными экспериментами и исследованиями возможностей конструктора LEGO Mindstorms
Домашняя страница Daniele Benedettelli – энтузиаста, внесшего большой вклад в развитие платформы Mindstorms. На сайте много интересных проектов на базе конструктора LEGO Mindstorms
Учебный курс по NXT-G Есикова Д.А. Сайт давно не обновлялся, однако сожержит большое количество интересных материалов по NXT
Smallrobots.it – Эксперименты с ev3dev (Python, Java, C++) и Monobrick (C#) на LEGO Mindstorms EV3
ev3dev – операционная система для LEGO Mindstorms EV3, базирующаяся на Debian Linux. Позволяет программировать на многих современных популярных языках программирования, имеет большое количество библиотек и расширенную поддержку оборудования

Программирование EV3 на RobotC

Среда программирования RobotC специально разработана для образовательной робототехники. Этот язык может использоваться и новичками, и опытными программистами и является кросс-платформенным. Есть базовый и расширенный режим программирования.


RobotC

В среде программирования присутствует C-подобный язык и язык RobotC. Язык RobotC – это переходный язык от визуального программирования к текстовым блокам. Для использования RobotC требуется перепрошивка микроконтроллера EV3. Использовать RobotC можно со многими робототехническими платформами. Это такие платформы как :

  • VEX IQ;
  • VEX CORTEX (EDR);
  • VEX PIC (Legacy Support);
  • LEGO MINDSTORMS EV3;
  • LEGO MINDSTORMS NXT;
  • TETRIX;
  • RCX (поддержка прежних версий);
  • UNO Arduino / MEGA 1280, MEGA 2560;

Среда программирования RobotC похожа на среду программирования Visual Studio и имеет интерфейс на английском языке. RobotC является платным с десятидневным бесплатным периодом.

После окончания бесплатного периода нужно приобретать лицензию. Стоимость годовой лицензии:

  • На один компьютер 49 долларов;
  • На шесть рабочих мест 149 долларов;
  • На тридцать рабочих мест 299 долларов.
  • Кроме этого предлагаются бессрочные лицензии.

Операционная система для RobotC должна быть из семейства Microsoft Windows. При помощи среды программирования RobotC можно создавать эффективные программы с использованием сложных математических выражений.