Можно ли запустить программное обеспечение NXT-G под Linux с помощью Wine?


19

Я хотел бы использовать Lego Mindstorms NXT-G, но у меня нет постоянного доступа к компьютеру под управлением Windows или OS-X. Я пытался использовать официальное программное обеспечение в Linux, используя Wine, но оно даже не было установлено. Мне было интересно, если у кого-то был лучший успех, и если да, как это было сделано, что работает, а что еще нет.

Я знаю, что есть другие варианты программирования кирпича, и что некоторые (большинство?) Из них работают на Linux, однако, они не разрешены на соревнованиях, таких как FIRST Lego League, что делает их несколько менее подходящими для моих целей.


2
Я боюсь, что вам может понадобиться виртуальная машина с полноценным Windows или что-то в этом роде, но я не могу помочь с этим.

2
@mfg: Почему бы не спросить Ubuntu или Unix / Linux, или ... здесь? Все эти другие сайты, вероятно, будут просто рекомендовать другие среды программирования - IMO требование остаться в пределах стандартных правил конкуренции Lego делает это разумным вопросом здесь.

1
@muntoo У тебя есть ссылка на NXT-G, основанную на Flash? Это озадачивает меня.

2
@pcantin: Например, правила FIRST Lego League ясно состояние: « Робот может быть запрограммирован только с помощью LEGO MINDSTORMS, RoboLab или программное обеспечение NXT-G (любой релиз) Нет другого программного обеспечения не допускается.. »
Ян Хлавачек

1
@Jan: Yay! Здесь есть еще один человек, работающий только с Linux! :) О, и проверьте мой блог (в моем профиле) для портов Linux программного обеспечения, связанного с Lego. (Но не NXT-G, извините.)
пересмотр

Ответы:


4

Я провел некоторое исследование и нашел эту ветку, в которой утверждается, что языки программирования должны работать под Wine. Кто-то в той же ветке сказал, что он / она запускал его в VirtualBox вместо Wine.

Однако программное обеспечение Mindstorms указано в данных приложения Wine как «мусор». Я думаю, это означает, что это не работает вообще.


1
Я могу подтвердить, что NXT-G работает в VirtualBox. Я использовал это несколько лет назад, и единственной проблемой, с которой я столкнулся, было то, что каждый раз, когда NXT отключался, виртуальная машина теряла право собственности на USB-устройство, и ее приходилось восстанавливать после повторного подключения NXT. Раздражает, но не шоу-стоппер. Более новые версии VirtualBox имеют гораздо лучшую поддержку USB, поэтому вполне вероятно, что проблема больше не существует.
Ян Хлавачек

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

Кажется, я должен принять это как правильный ответ. Кажется, нет никакого способа запустить NXT-G в Linux (без использования виртуальной машины).
Ян Хлавачек

2

Вот что я бы попробовал. Вы можете запустить экземпляр Microsoft Windows Micro (виртуальная машина / ВМ) в Amazon Web Services (AWS). Микро-виртуальная машина AWS ничего не стоит, если у вас установлен Linux, но поскольку вам нужна Windows, она стоит 0,03 доллара в час. Прайс-лист находится на этой странице . Если микроэкземпляр слишком маленький или слишком медленный, вы можете использовать более крупный экземпляр (Extra Large - $ 0,96 / час).

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

Единственным недостатком, который я вижу, является IO между виртуальной машиной и физическим блоком LEGO NXT. Вероятно, это можно решить, создав прокси-порт на домашнем компьютере, через который программное обеспечение LEGO на виртуальной машине сможет обмениваться данными с кирпичом. Это нужно проверить, так как у меня нет NXT. Если эта часть слишком сложна (или невозможна), вы можете искать другие способы загрузки кода на NXT из виртуальной машины Windows.

Если вы никогда не играли с AWS, я предлагаю начать с микроэкземпляра Linux (например, Ubuntu). Поскольку это ничего не стоит, это хороший способ экспериментировать с тем, как все это работает.


1

Новое программное обеспечение Ev3 доступно для загрузки и поддерживает программирование блоков NXT 2.0.

Однако, как и NXT-G, он поддерживает только OSX и Windows. Он может быть установлен под Playonlinux / Wine, но не запускается из-за зависимостей от Mono 4.3 и других зависимостей.

Я могу понять, почему FLL захочет ограничить использование согласованности стороннего программного обеспечения, но мне бы очень хотелось, чтобы они рассмотрели что-то вроде Enchanting, если никто не сможет решить проблемы с запуском Ev3 под Wine.


Я надеялся, что, поскольку новый кирпич фактически работает под управлением Linux как своей внутренней ОС, они также будут поддерживать Linux с программным обеспечением Ev3, но, по-видимому, они этого не делают. Жалость.
Ян Хлавачек

@JanHlavacek - также интересно то, что он все еще работает на National Instruments, но пользовательский интерфейс, кажется, построен поверх silverlight / mono. NI может работать на linux, и есть собственный моно для linux, написанный Мигелем де Иказа, так что потенциал есть, но для этого потребуется переписать. Я отправил письмо в Lego с просьбой об этом, и я думаю, что, возможно, на форуме обсуждался вопрос Посла Lego, так что, возможно, в какой-то момент будет ответ от самих Lego.
Марко
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.