2010-04-08 3 views
13

Ho 30 kit Lego Mindstorms non aperti che mi piacerebbe usare nella mia classe di programmazione intro per fare alcune cose di robotica semplice alla fine dell'anno. Stiamo usando Python nella classe, quindi preferirei che ci fosse un modo per i bambini di scrivere i programmi in Python. Sfortunatamente, questi sono vecchi kit con i mattoncini RCX - non i più recenti NXT, quindi la maggior parte dei progetti come NXT_Python non può aiutarmi. C'è un modo per farlo accadere?Python Mindstorms RCX

+2

Posso avere uno ??? :) –

+0

@jathanism Sta usando RCX, quindi non vedo come NXT_Python lo aiuterà. – avpx

+0

mindstormin pitone a scuola? Come posso partecipare alla tua classe (e perdere alcuni anni nel processo)? –

risposta

2

Ne dubito.

I mattoni RCX utilizzavano un microcontrollore a 8 bit. Anche se potrebbe essere possibile eseguire una sorta di interprete Python su di esso, non ne ho visto uno portato su di esso.

Il più vicino si può ottenere è Java:

http://lejos.sourceforge.net/

Quindi, in teoria, si potrebbe guardare Jython e tenta di eseguire file di classe compilati con essa sul lejos JVM ... Suona come un lungo tiro , anche se. Il microcontrollore in un mattone RCX non ha molto spazio per un grande runtime.

+0

Ho avuto lo stesso pensiero mentre hai lasciato la tua risposta. Cercherò di verificarlo oggi, ma come hai detto tu non sono terribilmente ottimista. Inoltre, non sono sicuro che non ci sia così tanto lavoro da far sì che i bambini non si impantanino nel far funzionare il loro codice sulla JVM e perdano di vista la scrittura di Python. –

+0

Ho visto post di persone che tentano di eseguire Jython su lejos e di eseguire tutti i tipi di problemi: http://osdir.com/ml/java.lejos/2005-07/msg00013.html http://osdir.com /ml/java.lejos/2005-07/msg00014.html. Sembra che la libreria di runtime fornita con lejos non sia all'altezza. Potrebbe essere risolto da allora o facilmente risolvibile. –

+0

Dopo un paio d'ore ottenendo la copia più recente di LeJOS che funziona con Java 1.5, e infine installando LeJOS su RCX, Jython si è impegnato a compilare con il compilatore LeJOS fornito - dal suo aspetto, forse da una mancanza di un arraycopy metodo. L'uso di javac non ha aiutato - fornisce un numero magico errato quando provo a eseguire il lejosdl sulla classe. Quindi chiamerò l'abbandono di questo progetto, dato che per quanto sia divertente quanto Mindstorms, per la quantità di lavoro necessario a fare cose che non sono programmate, troverò un progetto diverso per la fine dell'anno. –

3

esecuzione Python sul mattone in sé è probabilmente difficile (per la ragione altri già dichiarato - dimensione dell'interprete, RAM disponibile sul mattone per esempio), ma questo potrebbe essere di interesse:

According to this thread dovrebbe essere in grado utilizzare pylnp (remoto) combinato con BrickOS (sul mattoncino, in precedenza legOS).

+0

Apparentemente anche Perl o Forth potrebbero essere un'opzione: vedere http://www.faqs.org/docs/Linux-mini/Lego.html – ChristopheD

+0

In secondo luogo, si tratta di librerie di controllo remoto.Cose fantastiche, ma il collegamento IR avrebbe dovuto essere collegato al mattone tutto il tempo. A causa di vincoli che sfuggono al mio controllo, non riesco a far collegare le torri IR alle nostre macchine Windows - solo per la macchina Linux che non ho ufficialmente. Posso usarlo per far lampeggiare i mattoni e trasferire programmi, quindi se lo faccio, gli studenti devono essere in grado di eseguire programmi sul mattone senza una torre IR. Forth è un po 'diverso da Python per usarlo solo per poche settimane - lo stesso con C. –