Соревновония Lego роботов 1.Соревновония Lego роботов 2.

Сигналы на пустом порту NXT и EV3

Аватар пользователя Овсянников Алексей Юрьевич

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

Блок NXT имеет порты для моторов и датчиков. На порту мотора, который не управляется программой (мотор выключен) следующие сигналы:

Стоит отметить наличие на четвертом контакте (зеленый) питания +4.3 В. Даже при выключенном моторе. Его можно использовать для питания собственных устройств.

Если подключить мотор, но не запускать его, то на линиях 5 и 6 (желтой и синей) могут появляться сигналы 0 В или +4,7 В. Их вырабатывают оптопары встроенного в мотор энкодера. О том, как они работают, подробнее будет рассказано в соответствующе статье.

На порту датчиков NXT с неподключенным датчиком следующие сигналы:

Сигналы немного отличаются от тех, что на порту мотора. Так, на первом контакте появились +5 В (мой мультиметр определил их как +5,5 В ). Это вход аналого-цифрового преобразователя. Так же эта линия соединена с +5 В через резистор 10 кОм. Подобное соединение через резистор с большим сопротивлением называется «подтягиванием». Когда на вход ничего не поступает, туда «подтягивается» этот потенциал +5 В. И аналого-цифровой преобразователь определит именно +5 В. Если же на вход приходит меньший потенциал (от 0 В до +5 В), то аналого-цифровой преобразователь определит именно это пришедшее напряжение. Так как резистор имеет большое сопротивление (10 кОм), то ток между пришедшим потенциалом и +5 В будет очень малым (до 0,0005 А) – закон Ома не перехитрить. Когда внешний потенциал перестает поступать, на вход опять «подтягиваются» +5 В.

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

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

Особое внимание стоит уделить порту 4 NXT. Без датчиков, сигналы на нем следующие:

На 6 контакте (синем) появились +2 В. Скорее всего это связано с тем, что порт 4 кроме I2C протокола поддерживает так же и RS-485. В этом протоколе во внимание берется разница в потенциалах двух линий (напряжение между ними). Оно должно может быть как положительным (логическая единица) или отрицательным (логический ноль). То есть, на 6 линии всегда устанавливается +2 В, а на 5 линии может быть как 0 В (положительная разница потенциалов: 2 В – 0 В = 2 В), так и 4 В (отрицательная разница: 2 В – 4 В = -2 В).

Теперь переходим к блоку EV3. Одним из главных его отличий от блока NXT является новая система определения подключенных устройств. Это значит, что без датчиков и моторов на порту выставляются какие-то общие для всех сигналы, позволяющие определить, что именно подключено. Так, на портах моторов такие сигналы:

А на портах датчиков такие:

А вот это уже интересно! Вторая линия теперь не «земля», а «подтянута» к 4,5 В и 3,3 В. В ходе экспериментов выяснилось, что у всех датчиков NXT линии 2 и 3 (черная и красная) всегда соединены между собой, а у датчиков и моторов EV3 - нет. То есть, можно сделать следующий вывод: блок EV3 следит за линией 2 как за аналоговым входом. Как только на нем появилось 0 В («земля» с линии 3) блок делает вывод – подключили датчик или мотор NXT.

На линиях 5 и 6 (желтой и синей) довольно странные сигналы. Объяснить их я не могу, но, забегая вперед, отмечу, что при подключении датчиков или моторов EV3 происходит обмен цифровыми сигналами по этим линиям. Примерно в течение одной-двух секунд. Очевидно, что эти данные и есть «цифровая подпись» датчика/мотора EV3.

И еще раз забегая вперед, отмечу, что контакт 6 у портов датчиков EV3 является аналоговым входом, но, в отличие от NXT, «подтянутый» к «земле» (0 В) через резистор 10 кОм.

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