Можно ли запустить программное обеспечение 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 как «мусор». Я думаю, это означает, что это не работает вообще.

daviesgeek
источник
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). Поскольку это ничего не стоит, это хороший способ экспериментировать с тем, как все это работает.

pcantin
источник
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.
Марко