Фотографии взяты из этой статьи. Для многих, кто хочет делать продвинутые устройства из Lego Mindstorms NXT, возможность подключить только три мотора к NXT блоку является существенным ограничением. |
Второй способ - приобрести готовый электронный мультплексор или даже, если схемотехника и паяльник не пугают, собрать свой собственный. Способ требует определенных денежных вливаний. Да к тому же, на таких состязаниях роботов, как World Robotic Olympiad, использование данных устройств запрещено.
Остается еще несколько способов, о которых поговорим ниже.
Дело в том, что в комплекте с базовым образовательным набором Lego Mindstorms (#9797 LEGO Education Base kit) идет кабель-переходник (#8528 NXT Converter cable), предназначение которого - предоставить возможность подключить RCX моторы и сенсоры к NXT блоку. Но у него обнаруживается и другое применение. Что если RJ-разъем каждого кабеля включить не в блок, а моторы, а свободные контактные элементы (в виде пластины 2x2 кнопки) соединить между собой.
Теперь нужно взять еще один кабель-переходник и его уже подключить к блоку. А оставшийся свободный контакт-пластину подключить к связке моторов:
Если сейчас подать напряжение на разъем, к которому подключены связка двигателей, то начнут двигаться и тот и другой. При этом, меняя расположение соединительных пластин, можно заставить двигаться моторы в разном направлении.
У данного подхода тоже есть ограничения:
- Моторы нельзя заставить двигаться по отдельности
- В программе больше нельзя использовать функции работы с енкодерами, т.е. нельзя больше сказать - "мотор сделай 2 оборота" или "мотор повернись на 90 градусов". Но остается все еще возможность управлять моторами по времени - "мотор двигайся в течение 5 секунд"
Следующий способ непроверенный - его оригинал может быть найден на сайте mindstorms.lego.com. Способ заключается в том, чтобы подключить несколько RCX моторов к NXT блоку используя тоже кабель-переходник и ... входы для сенсоров.
Автор сего способа описывает при этом работу с такими моторами следующим образом:
- Когда вы хотите включить мотор, используйте в NXT-G блок работы с сенсором расстояния (ultrasonic), настроенный на работу с портом, куда подключен мотор
- Когда вы хотите выключить мотор, используйте блок сенсора касания, также настроенный на работу с этим портом
Ограничения этого способа - нельзя менять направление вращения. Но, в случае чего, это не должно быть проблемой - тут поможет использование шестерней.
Если есть у кого возможность - попробуйте этот способ и оставьте комментарий - работает он или нет.
Перевод гугла одного из комментов на оригинальном сайте "На самом деле, я не уверен, я бы это сделать. в то время как датчик порты могут обеспечить достаточное напряжение для управления двигателем, есть очень жесткие ограничения на количество тока они могут поставлять - то двигатель * будет превышать *, легко, если под нагрузкой. Это может "затемнение" других датчиков. Или, наоборот, ЭДС от двигателя может привести к повреждению входных портов при некоторых условиях. IMS, ограничение тока из этих портов составляет около 15 мА, в то время как двигатели могут легко привлечь 500 мА."
ОтветитьУдалить