Какие бывают виды портов на блоке lego ev3

Обновлено: 01.05.2024

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

Представленная здесь информация справедлива, в первую очередь, для набора Mindstorms NXT. Для набора EV3 могут быть отличия (назначение сигналов кабелей такое же, а вот возможности драйверов двигателей могут отличаться). Для более детального изучения советую почитать NXT Hardware Developer Kit и EV3 Hardware Developer Kit. Это официальное описание аппаратной части (схемы контроллера, датчиков, моторов и т.д.) конструкторов Mindstorms от компании LEGO.



Внешний вид портов датчиков Внешний вид портов моторов
Плата контроллера, вид с двух сторон
Плата Bluetooth-модуля крупным планом

При внимательном рассмотрении прозрачных разъёмов стандартных соединительных кабелей из комплекта, можно увидеть 6 проводов различных цветов: белый, черный, красный, зелёный, желтый и синий. Разъёмы портов контролера NXT и стандартных кабелей визуально напоминают стандартные телефонные разъёмы типа RJ-12 (на самом деле под обозначением RJ-12 имеются в виду разъёмы типа RJ-25 или 6p6c). Однако при внимательном рассмотрении можно заметить, что замок разъёмов соединительных кабелей из набора «LEGO MINDSTORMS» смещен вправо (если держать разъём замком к себе), а у разъёма типа RJ-12 замок находится ровно посередине. Таким образом, компания «LEGO» принуждает пользователей к использованию оригинальных кабелей во избежание поломок контроллера или других элементов конструктора. В интернете можно найти подробные инструкции по изготовлению разъёмов аналогичных разъёмам оригинальных кабелей из набора, либо сразу купить готовые разъёмы.


Порты датчиков: назначение контактов и описание сигналов

Ниже в таблице указаны номер контакта, цвет и назначение каждого провода при подключении кабеля к входному порту.

Контакт 1 – Белый провод – AN – может использоваться для двух целей: как аналоговый вход или как выход питания 9 В. Контроллер подает напряжение питания на этот контакт в течение 3-х миллисекунд, а затем считывает аналоговое значение в течение 0,1 мс. В режиме аналогового входа данный контакт подключается к аналого-цифровому преобразователю (АЦП). Для исключения повреждения АЦП входной сигнал должен находиться в пределах от 0 до 5 В. АЦП преобразует входной сигнал в цифровое значение от 0 до 1023. Согласно документации частота дискретизации составляет 333 Гц (у EV3 частота уже 1 кГц). На время считывания сигнала контакт «подтягивается» к линии 5 В через резистор номиналом 10 кОм находящийся внутри блока. Наличие данного резистора значительно упрощает схемотехнику большинства датчиков.

При использовании первого контакта в качестве 9-вольтового источника питания для датчиков, необходимо учитывать, что напряжение питания на этом контакте будет равно напряжению источника питания контроллера NXT. Поэтому при использовании никель-металлогидридных (NiMH) аккумуляторов с этого контакта можно получить напряжение около 7,2 В или меньше. Это напряжение используется для питания стандартных и самодельных датчиков, которым недостаточно 5 вольт, в частности, ультразвуковой датчик NXT использует его для увеличения мощности своего передатчика. Все датчики RCX, подключаемые через адаптер (переходник), используют для своей работы именно эту линию.

Поскольку питание на этот контакт подаётся с перерывами, датчику обычно требуется конденсатор, чтобы поддерживать напряжение питания на время чтения данных. Ограничение по току нагрузки на этом контакте составляет примерно 14 мА на каждый порт. Если ток нагрузки превышает это значение, напряжение значительно падает, что может привести к некорректной работе датчика.

Контакты 2 и 3 – Чёрный и красный провода – GND – общая земля. Эти два контакта соединены вместе внутри блока NXT и внутри стандартных сенсоров LEGO. Все сигналы измеряются и формируются относительно этих общих контактов.

Контакт 4 – Зелёный провод – Питание 4.3 В – основная линия питания для стандартных датчиков NXT. Новые цифровые микросхемы, рассчитанные на 5-вольтовую логику, вполне могут быть запитаны от него, но бывают случаи, когда этого напряжения оказывается недостаточно для стабильной работы. В отличие от 9-вольтовой линии питания, этот выход обеспечивает суммарный ток 180 мА для всех входных и выходных портов. Каждый порт может использовать в среднем 25 мА (180 / 7 = 28,71 мА), но вполне допустимо увеличить потребление одного или нескольких портов, если остальные порты потребляют меньше или не задействованы. Стандартные датчики из набора, а также датчики оборотов сервомоторов потребляют в среднем около 20 мА.

Контакты 5 и 6 – Жёлтый и синий провода – DIGAI0 и DIGAI1 – данные линии используются для передачи данных. Контакты используют цифровые сигналы уровня 3,3 В и непосредственно подключены к микропроцессору контроллера NXT. В основном они используются для связи по протоколу I2C (DIGAI0 как SCL и DIGAI1 как SDA), но также могут использоваться как обычные сигнальные линии. При использовании линий как входов контроллер NXT ограничивает ток для защиты линий микропроцессора от повреждений. Защита реализована через последовательно включенные ограничительные резисторы номиналом 4,7 кОм. В режиме выхода уровень напряжения на контактах не должен превышать 3,3 В. При работе с данными контактами необходимо соблюдать осторожность, поскольку ошибка может привести к повреждению линий микропроцессора внутри контроллера NXT.

Помимо протокола I2C, контакт DIG0 используется датчиком освещённости для переключения состояния встроенного светодиода подсветки (включен или выключен) и датчиком звука для переключения между режимами DB (абсолютная громкость звука) и DBA (уровень звука, приравненный к чувствительности человеческого уха).

Порты моторов: назначение контактов и описание сигналов

Ниже в таблице указаны номер контакта, цвет и назначение каждого провода при подключении кабеля к выходному порту.

Контакты 1 и 2 – Белый и чёрный провода – MA1 и MA2 – линии питания сервомотора. Максимальное напряжение равно напряжению источника питания контроллера. Для управления питанием двигателей робота необходимо устройство, которое бы преобразовывало управляющие сигналы малой мощности в токи, достаточные для управления моторами. Такие устройства называют драйверами двигателей, они изготавливаются в виде микросхем разной мощности.

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

Н-мост собирается из 4 транзисторов (реле, переключателей). В зависимости от управляющих сигналов открывается та или иная пара транзисторов, при этом два других транзистора закрыты. На рисунке ниже показана электрическая схема H-моста, а также указано направление вращения двигателя для двух различных состояний управляющих сигналов. Схема имеет два управляющих входа, обозначенных буквами A и B. Исходя из того, что H-мост управляется цифровыми сигналами (ноль или единица), возможны 4 состояния входных сигналов.


При значениях A = 1 и B = 0 (левая схема на рисунке выше) транзисторы VT1 и VT3 открываются, по двигателю начинает протекать ток, что приводит к вращению двигателя вперёд (forward). Если поменять значения входных сигналов на противоположные и подать на схему значения A = 0 и B = 1 (правая схема на рисунке выше)), то это приведет к закрытию транзисторов VT1, VT3 и открытию транзисторов VT2, VT4. Направления протекания электрического тока поменяется, следовательно, изменится и направление вращения двигателя – он станет вращаться в обратном (reverse) направлении.

Также Н-мост позволяет электрически тормозить двигатель, накоротко замыкая его выводы (brake). Для этого необходимо подать сигнал высокого уровня на оба входа (A = 1 и B = 1). А если на оба входа подать сигнал низкого уровня (A = 0 и B = 0), то двигатель можно будет свободно вращать (coasting), как и при отключенном питании.

При использовании H-моста с двигателями постоянного тока в схему включают защитные (ограничительные) диоды (VD-VD4 на рисунке выше). Необходимость в диодах вызвана наличием токов при остановке двигателя, вследствие уменьшения электромагнитного поля внутри его обмоток.

В контроллере NXT используются две различных микросхемы H-моста. Для управления портом A задействована микросхема одноканального H-моста LB1930M, а порты B и C управляются микросхемой двухканального H-моста LB1836M. Допустимый выходной ток составляет примерно 800 мА для порта A и 500 мА для портов B и C. Пиковый ток может достигать тока в 1 А. Микросхемы имеет тепловую защиту, которая ограничивает ток при перегрузках или перегреве. Поскольку порт A допускает больший выходной ток, по сравнению с портами B и C, то зачастую он используется для управления манипулятором робота, а порты B и C – для управления движением робота.

В таблице ниже приведены уровни напряжений на выходе драйверов двигателей контроллера NXT для различных состояний входных сигналов, для входных сигналов за единицу принят сигнал высокого уровня, за ноль – низкого.

Проанализировав представленную таблицу можно сделать следующий вывод об особенности порта A: если к двигателю приложено напряжение и при этом двигатель в режиме торможения, то на линиях 1 и 2 будет сохраняться высокий уровень напряжения (9 В или 7,2 В в зависимости от типа источника питания).

Зависимость между скоростью вращения мотора и приложенным напряжением линейна. Поэтому для регулирования скорости вращения двигателя используется способ широтно-импульсной модуляции (PWM – pulse width modulation). Идея данного способа заключается в получении изменяющегося аналогового значения напряжения посредством особого алгоритма управления транзисторными ключами. ШИМ-сигнал моделирует напряжение между максимальным и минимальным значениями напряжения. Частота импульсов при этом остается постоянной, изменяется только коэффициент заполнения D – величина, отражающая процентное соотношение длительности времени включения максимального напряжения τ к длительности периода сигнала T. На рисунке ниже показаны графики ШИМ-сигнала для различных коэффициентов заполнения.


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

Длительность периода ШИМ для стандартной прошивки составляет 128 нс, что соответствует частоте 7,8 кГц, которая находится в слышимом диапазоне. Поэтому иногда можно услышать писк, исходящий от мотора. Это происходит, когда к двигателю приложено напряжение, а его вал не может провернуться. Например, если манипулятор робота достиг крайнего положения, а питание все еще подается.

Контакт 3 – Красный провод – GND – общий «земляной» контакт. Контакты 2 и 3 соединены между собой в датчиках, но не в моторах. Если датчик будет случайно подключен к порту мотора, питание мотора будет закорочено на землю. К счастью, в блоке есть защита на этот случай, но лучше лишний раз не ошибаться.

Контакт 4 – Зелёный провод – Питание 4.3 В – данный контакт подключен к линии питания 4,3 В, общей для всех портов блока. Питание с этого контакта используется тахометром сервомотора.

Контакты 5 и 6 – Жёлтый и синий провода – DIGAI0 и DIGAI1 – данные линии используются для получения сигналов от встроенного в сервомотор NXT оптического тахометра. Датчик оборотов генерирует прямоугольные импульсы, которые позволяют контроллеру NXT определить скорость и направление вращения мотора. Два импульса сдвинуты относительно друг друга на четверть периода сигнала. На рисунках ниже показаны графики сигналов, генерируемых датчиком оборотов при вращении мотора вперёд и назад соответственно. Частота импульсов зависит от скорости вращения мотора. Один полупериод сигнала соответствует одному градусу поворота мотора.

Импульсы при вращении мотора вперёд Импульсы при вращении мотора назад


Схема подключения датчиков






Подключение своих устройств по I2C

К контроллеру NXT можно подключить различные устройства, работающие по протоколу I2C. Данная опция позволяет расширить функциональные возможности конструктора. Одним из простых примеров, описанных в книге Extreme NXT, является подключение I2C расширителя портов PCF8574 (документация). Данная микросхема имеет 8 линий и позволяет как вводить, так и выводить данные. То есть можно подключить к одному из портов плату с PCF8574, а к ней светодиоды или кнопки, общим количеством до 8 штук. Ниже показан пример подключения платы со светодиодами.


Для экспериментов были спроектированы два типа плат : первая только со светодиодами, вторая включала и кнопки. Ниже представлены схемы и внешний вид плат. Платы проектировались в САПР Diptrace.

Ниже показана уже готовая для экспериментов плата. Для подключения платы необходимо разрезать один кабель, напаять на каждый провод ответную часть (BLS) штыревого контакта (PLS) и натянуть термоусадку. Получается довольно удобно. Термоусадку лучше брать по цвету провода. Разрезать лучше самые длинные кабели. По опыту использования они реже пригождаются. Из одного кабеля можно изготовить два новых кабеля для экспериментов.



Внешний вид платы и переделанного кабеля NXT Плата с PCF8574 крупным планом

Программная часть писалась в RobotC. Описание функций для работы с I2C из RobotC приведено в вики на сайте разработчика. Также советую почитать материалы от Storming Robots (раз и два). Ниже представлены два примера программ.

Первая программа реализует поочередное мигание светодиодов. Сначала загораются светодиоды одного цвета (нечётные по порядку), а затем другого цвета (чётные по порядку).

При старте программы указывается тип датчика, подключённого к порту (значение sensorI2CCustom указывает, что используется I2C), размер массива передаваемых данных и адрес устройства. В нашем случае адрес равен 0x40. Общий вид адреса в двоичном виде 0b0100-A2-A1-A0-0, линии А0, А1 и А2 (пины 1, 2 и 3 микросхемы) определяют значение соответствующих битов адреса. На приведённой выше схеме все три линии подтянуты к земле (нулю), поэтому адрес равен 0b01000000 = 0x40. Одновременно можно подключить до 8 устройств.

После инициализации порта запускается бесконечный цикл передачи данных. Для начала данные добавляются в массив (полезные данные, которые необходимо переслать) и с помощью функции sendI2CMsg выполняется отправка массива. Для отправки надо указать порт, адрес массива в памяти (указатель на массив) и размер передаваемых данных (в байтах, в нашем случае это 1 байт). Далее ожидается завершение передачи и вызывается задержка на 500 мс для того, чтобы мигание светодиодов было наглядно видно. Передаваемый байт данных каждый раз инвертируется, чтобы светодиоды зажигались поочерёдно. Важно помнить, что светодиоды зажигаются низким логическим уровнем на линии.

Вторая программа реализует постоянный опрос кнопок на плате. На экран выводится значение, прочитанное из PCF8574.

Определить номер нажатой кнопки можно с помощью битовых операций. При использовании описанной платы выводится следующее:

  • 243 – нет нажатых кнопок
  • 247 – нажата только первая кнопка (SB1, подключена к 6-ому выводу PCF8574)
  • 251 – нажата только вторая кнопка (SB2, подключена к 7-ому выводу PCF8574)
  • 255 – нажаты обе кнопки

Таким образом, на базе миксросхемы PCF8574 можно собрать простой расширитель портов, способный работать как на вывод, так и на ввод данных. Например, можно к контроллеру подключить Arduino и передавать данные размером более 1 байта (показания датчиков, различные команды и так далее).

Кроме описанной микросхемы PCF8574, можно использовать и другие микросхемы с интерфейсом I2C. Например, PCF8591 – универсальный аналогово-цифровой и цифро-аналоговый преобразователь (документация). Микросхема PCF8591 обладает следующими возможностями:

Как оказалось, шустрые китайцы уже давно выпускают модуль для Arduino на данной микросхеме. Модуль скорее предназначен для обучения или экспериментов, а не для конкретных устройств. К аналоговым входам PCF8591 подключены фоторезистор, терморезистор и переменный резистор, а на выход ЦАП подключен светодиод. Внешний вид и схема модуля показаны ниже.

Микрокомпьютер EV3 начали выпускать в 2013 году. Он пришел на смену микрокомпьютеру NXT и является более современной моделью.

Микрокомпьютер EV3 часто называют микроконтроллер EV3, блок управления EV3, модуль EV3, интеллектуальный блок. Также часто можно встретить в литературе название «P — кирпич» или «P — brick».

Это название является сокращением от Programmable brick — то есть программируемый блок (кирпич).

Микрокомпьютер EV3

блок EV3

Микрокомпьютер EV3 входит в состав робототехнических конструкторов Lego Mindstorms Education EV3 образовательной и домашней версии. Микроконтроллер EV3 является компьютерным мозгом робота. Операционной системой микрокомпьютера является Linux. Датчики опрашиваются со скоростью в 1 Гигагерц.

Интерфейс управления микрокомпьютера EV3

В модуле EV3 реализован шестикнопочный интерфейс управления. Этот интерфейс имеет программируемую визуальную индикацию состояний — подсветка различных цветов.

Ход выполнения программы может контролироваться при помощи подсветки модуля. В этом случае подсветка выполняет роль индикатора состояния контроллера EV3. Индикатор может приобретать зеленый, оранжевый или красный цвет. Также индикатор может мигать. Индикатор состояния модуля имеет следующие коды:

  • Красный цвет означает запуск. Также он сигнализирует об обновлении или показывает завершение работы
  • Если красный цвет мигает, то микроконтроллер занят
  • Оранжевый цвет — это оповещение, блок работает
  • Когда зеленый цвет пульсирует это значит, что происходит выполнение программы

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

Порты модуля EV3

С одной стороны, блок EV3 оснащен четырьмя портами входа для подключения различных датчиков.

Порты ввода

порты блока

Также сбоку есть дополнительный USB — порт, который можно использовать для чтения USB-flash накопителей, подключения Wi-Fi приемника WiFi. Адаптер нужно приобретать отдельно. Flash память адаптера 16 Мб. При помощи этого порта можно создать последовательную цепь микрокомпьютеров EV3. Всего можно последовательно соединить до четырех программируемых блоков управления EV3.

Последовательное соединение блоков

соединение микроконтроллеров

Порты входа обозначаются цифрами от одного до четырех. На другой стороне модуля есть четыре порта выхода, куда происходит подключение моторов. Это позволяет создавать сложные и функциональные модели роботов. Порты выхода обозначаются буквами A, B, C, D. Также со стороны портов выхода имеется мини – USB порт. Он позволяет при помощи USB кабеля соединять модуль EV3 с компьютером.

С этой же стороны блока есть слот для чтения карт формата микро-USB. Этот слот позволяет увеличить объем памяти доступной для хранения данных микрокомпьютера EV3 до 32 гигабайт. SD карта в комплект не входит и покупается отдельно.

Динамик EV3

С другой стороны блока расположен высококачественный встроенный динамик. Этот динамик может воспроизводить любые звуки программируемого блока EV3. Качество звука всегда будет хорошим если динамик микроконтроллера не будет закрыт.

Динамик модуля EV3

динамик блока EV3

Динамик позволяет эффективно использовать звуковые функции микроконтроллера EV3. Благодаря дополнительному объему памяти и улучшенным характеристикам встроенного динамика увеличились возможности использования звука и вышли на новый качественный уровень.

Программирование с помощью интерфейса микрокомпьютера EV3

В микрокомпьютере есть возможность программирования при помощи самого микрокомпьютера. Есть двенадцать программируемых блоков при помощи которых можно создавать программы.

Программирование с помощью интерфейса микрокомпьютера EV3

программирование с помощью интерфейса микрокомпьютера EV3

Можно писать сложные программы без использования компьютера. Эту программу можно экспортировать на компьютер. На компьютере программу можно улучшить при помощи программного обеспечения EV3. После этого ее снова можно загрузить на микрокомпьютер и проверить на практике. Это является очень полезной функцией.

Как соединить микроконтроллер EV3 с компьютером

Всего существует три способа установить соединение микроконтроллера с компьютером:

  1. Через USB – кабель
  2. С помощью встроенного модуля Bluetooth
  3. Через Wi — Fi приемник

Установка и зарядка батарей блока EV3

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

Производить зарядку батареи можно, не вынимая ее из собранной модели. Это значит, что не нужно тратить время на разборку и сборку робота, чтобы заменить аккумулятор.

батареи ev3

аккумуляторы и батареи ev3

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

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

При этом модуль при использовании аккумулятора работает дольше, чем при использовании батареек. Чтобы батарея дольше сохраняла работоспособность есть несколько простых правил:

  • Если батарея не используется, то ее лучше на время вынуть
  • Каждый комплект батарей должен хранится отдельном контейнере для совместного использования
  • Громкость динамик лучше уменьшить
  • Произвести правильные настройки параметров спящего режима
  • Если вы не используете Bluetooth и Wi-Fi, то их нужно отключить
  • Стараться избегать ненужного износа моторов

Технические характеристики микрокомпьютера EV3

Микрокомпьютер Lego EV3 имеет следующие характеристики:

  • Процессор — ARM9
  • Микрокомпьютер EV3 имеет операционную систему Linux
  • Контроллер блока программирования — ARM9 с частотой 300 МегаГерц
  • Объем flash-памяти составляет 16 МБ
  • Объем оперативная памяти — 64 МБ
  • Модуль EV3 имеет монохромный черно-белый экран с разрешение 178×128 px
  • При осуществлении связь с главным компьютером через шину USB 2 .0 скорость передачи данных достигает 480 Мбит/с
  • При осуществлении связь с главным компьютером через шину USB 1 .1 скорость передачи данных до 12 Мбит/с
  • Карта памяти типа Micro SD с поддержкой SDHC, версии 2 .0. Максимальный объем памяти карты 32 ГБ
  • По 4 входных и выходных порты для подключения моторов и датчиков
  • Соединение осуществляются при помощи кабелей с коннекторами типа RJ12
  • Поддерживается автоматическая идентификация сенсоров и моторов
  • Электропитание от 6 батареек типа AA (батарейки можно заменить на литиевые аккумуляторы) или от аккумуляторной батарея

EV3 является третьей версией конструктора Lego Mindstorms Education. Вторая версия носила название NXT, первая версия – RCX.

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

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

Индикация модуля EV3

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

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

Приложения EV3 находятся в третьем окне микрокомпьютера Lego EV3. При помощи этих приложений можно производить просмотр портов блока, управлять моторами, создавать несложные программы, производить эксперименты. Всего в блоке находится пять заранее установленных приложений. В этой статье я разберу два первых приложения EV3 — Port View и Motor Control.

Приложения EV3

приложения Lego EV3

Port View – вид порта

Приложение EV3 вид порта или port view позволяет достаточно быстро узнать куда подсоединены моторы и датчики. Также можно посмотреть их показания в реальном времени. Такая возможность бывает полезной на различных конкурсах и соревнованиях по робототехнике.

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

Для того чтобы просмотреть куда присоединены сенсоры и двигатели нужно найти третье окно на экране микроконтроллера EV3.

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

Вид порта

порты модуля EV3

Также есть возможность посмотреть их значения и изменить установки. Например, можно для датчика цвета изменить режим яркости отраженного света на режим внешнего освещения или на режим цвет.

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

Установка датчиков в порты по умолчанию

По умолчанию датчики устанавливаются:

  • Датчик касания – в порт под номером один;
  • Датчик гироскоп – в порт под номером два;
  • Датчик цвета – в порт под номером три;
  • Датчик ультразвука, а также датчик инфракрасный – в порт под номером четыре.

1.На экране при присоединенном датчике касания можно показания ноль или единица. Ноль означает что датчик касания разомкнут т.е. кнопка не нажата. Единица показывает, что кнопка датчика касания нажата и датчик находится в замкнутом состоянии.

Показания датчиков

показания датчиков

2. Гироскопический датчик можно настроить на измерение угла поворота или измерение скорости поворота. Переключение режимов производится нажатием центральной кнопки и перемещением кнопками «Вверх» и «Вниз» на нужный режим. Повторное нажатие центральной кнопки на нужном режиме подтверждает выбор.

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

3.Датчик цвета распознает семь разных цветов, измеряет яркость отраженного света и измеряет внешнее освещение. Если в режиме «Яркость отраженного цвета» произвести измерение показаний различных цветов, то можно увидеть, что показания отличаются. Сенсор цвета в этом режиме различные цвета определяет, как серый с разной яркостью.

При переключении режима в режим «Цвет», каждому цвету будет на экране микроконтроллера EV3 будет присвоено число от нуля до семи. Так, например, желтому цвету будет соответствовать цифра четыре, черному цвету семь, если цвет нельзя определить, т.е. нет цвета цифра ноль.

4.Ультразвуковой датчик определяет расстояние до предмета. Если изменять расстояние от датчика ультразвука до объекта, то будет наблюдаться изменение показаний. То же самое относится и к инфракрасному датчику. Но инфракрасный датчик будет измерять расстояние до объекта в условных единицах.

Просмотр показаний моторов EV3

Для перехода к просмотру текущих показаний сервомоторов нужно перейти в верхнюю часть окна Port View первого приложения EV3. В этой вкладке отражены все присоединенные к микроконтроллеру моторы. Покрутив ось любого мотора будет видно изменение текущих значений энкодеров.

Также можно посмотреть показания угла поворота оси сервомотора и количество оборотов оси. Если есть необходимость точного измерения расстояния какой-либо кривой, то это расстояние можно измерить если прокатить робота по этой кривой. При этом сервомотор с колесом используется как курвиметр.

Показания моторов

показания моторов

Точные показания энкодера будут отражены на экране модуля EV3. После этого остается только вычислить длину линии для диаметра колеса. Измерение длины линии тоже иногда бывает нужно быстро вычислить на соревнованиях по робототехнике.

Для перехода к просмотру текущих показаний сервомоторов нужно перейти в верхнюю часть окна Port View первого приложения EV3. В этой вкладке отражены все присоединенный к микроконтроллеру моторы. Покрутив ось любого мотора будет видно изменение текущих значений энкодеров.

Также можно посмотреть показания угла поворота оси сервомотора и количество оборотов оси. Если есть необходимость точного измерения расстояния какой-либо кривой, то это расстояние можно измерить если прокатить робота по этой кривой. При этом сервомотор с колесом используется как курвиметр.

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

Motor Control – управление моторами

Приложение «Motor Control» является второй сверху строкой в окне приложения EV3. Это приложение служит для ручного управления серовомоторами. «Управление моторами» позволяет управлять прямым и обратным вращением любого сервомотора, который подключен к одному из выходных портов.

Есть два режима управления моторами. В первом режиме происходит управление моторами, которые подключены к порту А и D. Кнопки «Вверх» и «Вниз») управляют мотором в порту A, кнопки «Влево» и «Вправо» управляют мотором в порту D.

Управление моторами

моторы лего

Во втором режиме можно управлять сервомоторами, подсоединенными к порту B и C. Кнопки «Вверх» и «Вниз» управляют мотором в выходном порту B, кнопки «Влево» и «Вправо управляют мотором в порту C.

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

Для того, чтобы осуществлять управление роботом EV3, мониторинг портов и показаний датчиков, отладку программы и многое другое в среде программирования EV3 существует очень полезный инструмент.

Это страница аппаратных средств, ее еще называют панелью управления и мониторинга.

Управление роботом EV3

управление с помощью страницы аппаратных средств

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

Разберем более подробно функции страницы аппаратных средств. Всего у нас в панели управления и мониторинга есть три вкладки:

  1. Доступные модули
  2. Просмотр портов
  3. Информация о модуле

Доступные модули

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

Доступные модули

какие микроконтроллеры можно подключить

То есть подключение по USB, Bluetooth или Wi-Fi. На рисунке произведено подключение модуля под названием АВС по Bluetooth. Соединение можно разорвать второй кнопкой «Отключить». Подключается блок при помощи нажатия на доступное соединение.

Просмотр портов

Во вкладке «Просмотр портов» можно увидеть все датчики и моторы, подключенные к портам модуля EV3. Во вкладке можно увидеть, что большой мотор подключен к порту . Датчик касания подключен к 1 порту, ультразвуковой датчик подключен к 4 порту. Также в каждом из этих портов отображаются показания датчиков и моторов в режиме реального времени.

Просмотр портов

подключенные порты

У большого мотора можно посмотреть угол поворота, количество оборотов и мощность. При вращении колеса двигателя в разные стороны можно увидеть изменение значений. У датчика касания можно увидеть два состояния нажато – 1 и не нажато – 0.

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

Информация о модуле

В третьей вкладке «Информация о модуле» можно увидеть название модуля, версию встроенного программного обеспечения, уровень заряда батареи, тип соединения и индикатор объема занимаемой памяти. На изображении модуль называется ABC, заряд батареи полный, версия встроенного программного обеспечения V1.09E, тип соединения по Bluetooth, память заполнена менее чем на 10%.

Информация о модуле

информация о контроллере

В правом углу вкладки «Информация о модуле» есть два значка:

  1. С изображением гаечного ключа – это настройки беспроводного подключения
  2. Второй значок – «Обозреватель памяти»

Настройки беспроводного подключения позволяют увидеть все доступные подключения по Wi-Fi и дают возможность добавить и настроить новое подключение.

Настройка беспроводного подключения

беспроводное подключение блока

Обозреватель памяти показывает сколько есть доступной памяти, все файлы и проекты, которые находятся на модуле и на SD – карте, если она подключена к модулю. Файлы можно копировать, удалять, загружать. Но возможности полностью скопировать проект с модуля и перенести его на другой модуль нет.

Управление памятью

как управлять памятью

Проект можно полностью скопировать только со среды программирования EV3 или просто скопировать сохраненную в папке на компьютере программу.

Загрузка программ и управление роботом EV3

В правой части страницы аппаратных средств под надписью EV3 находятся три кнопки:

Кнопка «Загрузить»

Нажатие на эту кнопку просто загружает программу в модуль EV3. Для того, чтобы запустить программу на выполнение нужно на микроконтроллере EV3 найти эту программу и запустить с блока. Например, создам простую программу, которая будет по нажатию на датчик касания включать большой мотор со скорость 50 единиц, а по повторному нажатию датчика касания выключит этот мотор.

Программа EV3

пример программы

Создадим программу и сохраним проект под названием «Motor». Теперь можно кнопкой «Загрузить» залить программу в микрокомпьютер EV3. После этого нужно найти программу в меню блока и запустить ее на выполнение. По нажатию на датчик мотор начинает вращаться, по повторному нажатию останавливается.

Кнопка «Загрузить и выполнить»

Нажатие на эту кнопку загружает программу в модуль EV3 и сразу же запускает ее. Нажимаем на кнопку и можно видеть на блоках бегущую полосу. Эта полоса показывает какой блок программы сейчас выполняется. Такая функция полезна для отладки программы.

Кнопка «Запустить выбранное»

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


Модуль EV3 — это блок управления, который координирует действие ваших роботов.

Включение и выключение модуля

Интерфейс модуля EV3

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

Запустить последнюю



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

Выбор файла



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

Приложения



Модуль EV3 поставляется с заранее установленными приложениями модуля, которые могут помочь вам в разработке и программировании роботов. Опишем наиболее важные из них:

Представление порта



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

Управление мотором



Управляйте прямым или обратным движением любого мотора, подключенного к одному из портов A, B, C, D. Существует два различных режима. В одном режиме вы сможете управлять моторами, подключенными к порту А (с помощью кнопок «Вверх» и «Вниз») и к порту D (с помощью кнопок «Влево» и «Вправо»). В другом режиме вы управляете моторами, подключенными к порту B (с помощью кнопок «Вверх» и «Вниз») и к порту С (с помощью кнопок «Влево» и «Вправо»). Переключение между этими двумя режимами осуществляется с помощью центральной кнопки.

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



Донное приложение позволяет создавать простые программы для робота с помощью модуля без использования компьютера. С устройством среды программирования можно ознакомиться здесь.

Настройки



В этой вкладке можно изменять основные свойства модуля:

Читайте также: