<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>electricBricks&#187; LeJOS Archives  &#8211; electricbricks &#8211; Educación basada en LEGO</title>
	<atom:link href="http://blog.electricbricks.com/tag/lejos/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.electricbricks.com</link>
	<description></description>
	<lastBuildDate>Thu, 22 Jul 2010 09:23:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Controlar un NXT con comandos de Voz. MAC + LeJOS</title>
		<link>http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/</link>
		<comments>http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 22:02:45 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[macbook]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=8877</guid>
		<description><![CDATA[
English

¿Quién no ha querido alguna vez decirle a su NXT qué debía hacer y conseguir que lo hiciera? Pues aquí tenéis un primer paso para conseguirlo. Hasta que lenguajes como ROILA sean plenamente funcionales no podremos conseguir que el robot nos entienda directamente, pero sí tenemos herramientas de reconocimiento de voz para el ordenador, y [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/07/nxt-mac-lejos-voice-controlled/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/canstock2777880-150x79.jpg" alt="experiment logo" title="experiment logo" width="150" height="79" class="alignleft size-thumbnail wp-image-8897" />¿Quién no ha querido alguna vez decirle a su NXT qué debía hacer y conseguir que lo hiciera? Pues aquí tenéis un primer paso para conseguirlo. Hasta que lenguajes como <a href="http://blog.electricbricks.com/2010/07/roila-nxt/">ROILA</a> sean plenamente funcionales no podremos conseguir que el robot nos entienda directamente, pero sí tenemos herramientas de reconocimiento de voz para el ordenador, y sabemos como comunicarnos remotamente con el NXT desde el ordenador, así que&#8230; con mucha paciencia y algunos trucos podremos conseguir que nuestro robot reconozca nuestras instrucciones y las obedezca.<span id="more-8877"></span></p>
<p>Ya hay algunos programas que basan el reconocimiento de voz en la diferente intensidad con la que se dicen las sílabas de la palabra clave, y utilizan el sensor de sonido (<a href="http://blog.electricbricks.com/2009/12/nxtprograms-65-proyectos-nxt-cd/">NXTPrograms</a>).<br />
Incluso, hay varios programas que permiten control con voz, dos de los más relevantes son:</p>
<li><em>LegoNXTRemote</em> para Mac
<li><em>NXTVoiceCommander</em> para Windows, que utiliza el software de reconocimiento de voz <em>tazti</em> para Windows XP/Vista
<p>Nosotros queremos enseñaros a <strong>programar vuestro propio control de voz en MAC, utilizando LeJOS</strong>.</p>
<p>Para conseguirlo hemos utilizado el sistema de reconocimiento de voz que viene de serie en MAC OS X. Este programa nos permite, no sólo utilizar comandos predefinidos del sistema, si no crear nuestros propios comandos de voz. Estos comandos, programados en AppleScript, son capaces de ejecutar código en nuestro ordenador, vamos a utilizar esta capacidad para darle las instrucciones en el ordenador.</p>
<p>Aquí tenéis un vídeo para que veáis que funciona. </p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/0X584BN1Qbc&amp;hl=es_ES&amp;fs=1?rel=0&amp;color1=0x3a3a3a&amp;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/0X584BN1Qbc&amp;hl=es_ES&amp;fs=1?rel=0&amp;color1=0x3a3a3a&amp;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="400"></embed></object></p>
<p>Subiremos uno con mejor calidad tan pronto como sea posible&#8230;</p>
<p>Ahora vamos a lo importante&#8230; <strong>¿Cómo funciona?</strong></p>
<p><em>Reconocimiento de Comandos de Voz + AppleScript + LeJOS = movimiento del robot</em></p>
<p>Utilizamos comandos de voz personalizados que nos permiten ejecutar código, en este caso vamos a ejecutar un programa de LeJOS capaz de conectarse vía bluetooth al NXT, enviando instrucciones a los motores.</p>
<p>Nuestro robot admite 5 comandos de voz:</p>
<li>Adelante: Up
<li>Atrás: Down
<li>Derecha: Right
<li>Izquierda: Left
<li>Parar: Stop
<p>Para que el sistema de reconocimiento de voz pueda entendernos, los comandos deben estar preferiblemente en inglés, además nuestra pronunciación deberá ser razonablemente buena, o no funcionará.</p>
<p>Una vez el ordenador ha reconocido el comando de voz, lanza el script con el programa de LeJOS, al cual le debemos pasar los argumentos de entrada adecuados para que realice la acción correspondiente.</p>
<p>El programa de LeJOS está compilado para trabajar residente en el ordenador, el decir, no se descarga nada al NXT, sólo se le envía, por bluetooth, información sobre qué motores debe mover y cómo hacerlo, esto acelera la comunicación.</p>
<p>Pasos a seguir para implementar el sistema</p>
<p><strong>1. Crear un comando de voz personalizado </strong></p>
<p>Abrimos el editor de AppleScript (o nuestro editor de código favorito) y guardamos el script en: &#8220;<em>/Users/MyUser/Library/Speech/Speakable Items</em>&#8221; con formato <em>Script</em> el nombre será el comando de voz que utilizaremos para llamar al script, así que interesa que sea breve y sencillo. Por ejemplo: &#8220;Up&#8221;<br />
Este script debe, al ser ejecutado, llamar al programa de LeJOS con el parametro adecuado, es algo así:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">on run<br />
&nbsp; do shell script &quot;cd ~/lejos_nxj/bin; ./nxjpc Connecting Up&quot;<br />
end run</div></td></tr></tbody></table></div>
<p>En la linea 2 le pedimos a la shell (no se ejecuta en terminal, no hay feedback visible de la operación) que vaya a la carpeta lejos_nxt/bin -<strong>cd ~/lejos_nxj/bin</strong>- y luego -<strong>;</strong>- que ejecute el programa Connecting con el parametro adecuado &#8211; <strong>./nxjpc Connecting Up</strong>-.</p>
<p>Haríamos lo mismo para todos los comandos que quisiéramos añadir.</p>
<p>NOTA: Si quisiéramos ejecutar el comando en el Terminal, tendríamos que escribir lo siguiente:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">on run<br />
&nbsp; &nbsp; &nbsp; &nbsp; tell application &quot;Terminal&quot;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;activate<br />
&nbsp; &nbsp; &nbsp;do script &quot;cd ~/lejos_nxj/bin; ./nxjpc Connecting Up&quot;<br />
&nbsp; &nbsp; &nbsp; &nbsp; end tell<br />
end run</div></td></tr></tbody></table></div>
<p>Esto ejecutaría el comando en el clásico Terminal, por lo que podríamos ver qué pasa.<br />
Nótese la desaparición de <em>shell</em> en la línea 4.</p>
<p><strong>2. Crear un programa para enviar la información al NXT</strong></p>
<p>Nosotros hemos optado por hacerlo en LeJOS, ya que hemos estado trabajando con LeJOS en Mac durante varios artículos (<a href="http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/">Instalación LeJOS en MAC</a>, <a href="http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/">Conexión Bluetooth en MAC</a>, <a href="http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/">Instalación de Eclipse en MAC</a>).</p>
<p>Os recomiendo echar un vistazo al artículo sobre <a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/">Manejo Remoto del NXT desde PC</a>, ya que vamos a trabajar sobre esa misma base.</p>
<p>Este es el código del programa:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.remote.NXTCommand</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.pc.comm.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Connecting <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; NXTConnector conn <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> NXTConnector<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>conn.<span style="color: #006633;">connectTo</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Mac&quot;</span>, NXTComm.<span style="color: #006633;">LCP</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexión Fallida&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Up&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp;Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">720</span>,<span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <br />
&nbsp; &nbsp; &nbsp;Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">720</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Down&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">360</span>,<span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">360</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span> <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Right&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">360</span>,<span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">360</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; &nbsp;<br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Left&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">360</span>,<span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">360</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <br />
&nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span> <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Stop&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">setSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">setSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; conn.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>Líneas 8-14</strong>: Nos conectamos con el dispositivo<br />
<strong>Líneas 6-40</strong>: En función del argumento de entrada, realizamos un movimiento u otro.<br />
Hemos utilizado una función de comparación de cadenas estándar de Java para comparar el argumento de entrada con nuestro valor de control (&#8221;Up&#8221;, &#8220;Down&#8221;, &#8230;)</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #006633;">equalsIgnoreCase</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Up&quot;</span><span style="color: #009900;">&#41;</span></div></td></tr></tbody></table></div>
<p>En este caso hemos optado por comprobar la igualdad de las cadenas ignorando la distinción mayúsculas/minúsculas.<br />
<strong>NOTA:</strong> Cuando utilizamos el bluetooth para comunicarnos con el NXT desde el PC/MAC, por norma general, debemos utilizar</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; conn.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Para asegurarnos que la conexión se cierra correctamente entre ambos dispositivos.<br />
Pero esto tiene un pequeño problema en un programa como este, y es que: si cerramos la conexión después de cada movimiento, perderemos tiempo de reacción al tener que iniciarla de nuevo. </p>
<p>Por eso nuestro programa sólo incluye cierre de conexión con la palabra clave <em>Stop</em>.</p>
<p>Para compilar correctamente este programa (recordemos que se ejecuta en el ordenador, no en el NXT), tendremos que hacer uso del comando:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxjpcc Connecting.java</div></td></tr></tbody></table></div>
<p>Para ejecutarlo</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxjpc Connecting ArgumentoDeEntrada</div></td></tr></tbody></table></div>
<p>Esperamos que os haya gustado, y para cualquier duda, podéis utilizar el <a href="http://www.electricbricks.com/forum/index.php?topic=498.0">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;Title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;desc=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;submitHeadline=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;submitSummary=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;t=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;t=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS+-+http://b2l.me/abp6sm+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Controlar%20un%20NXT%20con%20comandos%20de%20Voz.%20MAC%20%2B%20LeJOS%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Controlar%20un%20NXT%20con%20comandos%20de%20Voz.%20MAC%20%2B%20LeJOS%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;summary=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;h=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram&amp;posturl=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;posttitle=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;bm_description=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;link=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F07%2Fnxt-mac-lejos-voice-controlled%2F&amp;desc=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;body=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;lname=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;u_data[name]=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;bmtitle=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;t=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;body=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;T=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&quot;+-+from+http://b2l.me/abp6sm" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/+&quot;Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;selection=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;type=Article&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;body=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;u=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;b=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;desc=English%C2%BFQui%C3%A9n%20no%20ha%20querido%20alguna%20vez%20decirle%20a%20su%20NXT%20qu%C3%A9%20deb%C3%ADa%20hacer%20y%20conseguir%20que%20lo%20hiciera%3F%20Pues%20aqu%C3%AD%20ten%C3%A9is%20un%20primer%20paso%20para%20conseguirlo.%20Hasta%20que%20lenguajes%20como%20ROILA%20sean%20plenamente%20funcionales%20no%20podremos%20conseguir%20que%20el%20robot%20nos%20entienda%20directamente%2C%20pero%20s%C3%AD%20tenemos%20herram" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS&amp;url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/&amp;title=Controlar+un+NXT+con+comandos+de+Voz.+MAC+%2B+LeJOS" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/07/nxt-mac-lejos-voice-controlled/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Instalación de Eclipse para LeJOS en Mac</title>
		<link>http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/</link>
		<comments>http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 18:41:30 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=8869</guid>
		<description><![CDATA[
Después del tutorial de instalación de LeJOS en MAC vamos a ver cómo instalar y configurar el entorno de programación Eclipse para trabajar con LeJOS. Primero lo instalaremos y posteriormente haremos nuestro programa Hola Mundo desde Eclipse.
1. Instalar y configurar Eclipse
Lo primero que tenemos que hacer es ir a la página de descarga de Eclipse [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch"></ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/logo-Eclipse+MAC.png" alt="logo-Eclipse+MAC" title="logo-Eclipse+MAC" width="146" height="57" class="alignleft size-full wp-image-8925" />Después del tutorial de <a href="http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/">instalación de LeJOS en MAC</a> vamos a ver cómo instalar y configurar el entorno de programación Eclipse para trabajar con LeJOS. Primero lo instalaremos y posteriormente haremos nuestro programa <em>Hola Mundo</em> desde Eclipse.<span id="more-8869"></span></p>
<p><strong>1. Instalar y configurar Eclipse</strong></p>
<p>Lo primero que tenemos que hacer es ir a la página de <a href="http://www.eclipse.org/downloads/">descarga de Eclipse</a> y bajarnos <strong>Eclipse IDE for Java EE Developers</strong>.</p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/Eclipse1.png"><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse1-500x244.png" alt="Eclipse" title="Eclipse" width="500" height="244" class="aligncenter size-large wp-image-8909" /></a></p>
<p>Como Eclipse no necesita instalación, basta con descomprimir el archivo y colocar la carpeta resultante donde queramos, por ejemplo, en la carpeta Aplicaciones de nuestro MAC.</p>
<p>Para abrir la aplicación simplemente hacemos click sobre el icono de Eclipse.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse-Folder-499x357.png" alt="Eclipse Folder" title="Eclipse Folder" width="499" height="357" class="aligncenter size-large wp-image-8913" /></p>
<p>Lo siguiente que nos vamos a encontrar es una pantalla que nos pide el nombre de nuestro espacio de trabajo (Workspace)</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse-Workspace-500x203.png" alt="Eclipse Workspace" title="Eclipse Workspace" width="500" height="203" class="aligncenter size-large wp-image-8728" /></p>
<p>Tras esto estaremos en la pantalla de bienvenida de Eclipse</p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/Eclipse-interface.png"><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse-interface-500x339.png" alt="Eclipse interface" title="Eclipse interface" width="500" height="339" class="aligncenter size-large wp-image-8727" /></a></p>
<p>Ahora tenemos que crear un nuevo proyecto <em>File &#8211; New… &#8211; Project</em></p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Create-New-Proyect-500x400.png" alt="Create New Project" title="Create New Project" width="500" height="400" class="aligncenter size-large wp-image-8910" /></p>
<p>Y seleccionamos como tipo de proyecto <em>Java Project</em></p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/Java-Project.png"><img src="http://blog.electricbricks.com/wp-content/uploads/Java-Project-500x340.png" alt="Java Project" title="Java Project" width="500" height="340" class="aligncenter size-large wp-image-8732" /></a></p>
<p>Ahora damos un nombre a nuestro proyecto</p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/New-Project1.png"><img src="http://blog.electricbricks.com/wp-content/uploads/New-Project1-500x573.png" alt="New Project" title="New Project" width="500" height="573" class="aligncenter size-large wp-image-8914" /></a></p>
<p>Abrimos Propiedades<br />
<center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/Properties.png" alt="Properties" title="Properties" width="362" height="465" class="aligncenter size-full wp-image-8915" /><br />
</center></p>
<p>Y tendremos que editar:</p>
<li> Java Build Path
<p><a href="http://blog.electricbricks.com/wp-content/uploads/Build-Path.png"><img src="http://blog.electricbricks.com/wp-content/uploads/Build-Path-500x340.png" alt="Build Path" title="Build Path" width="500" height="340" class="aligncenter size-large wp-image-8724" /></a></p>
<p>En la pestaña <em>Libraries</em>, seleccionamos la opción &#8220;Add External JARs&#8221;</p>
<p>Debemos añadir el archivo <strong>classes.jar</strong> que se encuentra en el directorio <em>lejos_nxj/lib</em><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/Classes_jar-500x231.PNG" alt="Classes_jar" title="Classes_jar" width="500" height="231" class="alignleft size-large wp-image-8929" /></p>
<p><strong>NOTA:</strong>  Con  LeJOS 0.85 y Java versión 1.6 (la más actual en el momento de escribir este artículo) NO hace falta modificar nada en el apartado <em>Java Compiler</em> del menú <em>Propiedades</em></p>
<p>Si tenéis una versión anterior, se recomienda esta configuración:</p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/compiler.png"><img src="http://blog.electricbricks.com/wp-content/uploads/compiler-500x340.png" alt="compiler" title="compiler" width="500" height="340" class="aligncenter size-large wp-image-8726" /></a></p>
<p>Ahora ya tenemos los archivos necesarios configurados, así como el compilador, vamos a hacer los ajustes finales para utilizar LeJOS en Eclipse.</p>
<p>Vamos a <em>Run &#8211; External Tools &#8211; External tools Configurations&#8230;</em></p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/External-tools.png"><img src="http://blog.electricbricks.com/wp-content/uploads/External-tools-500x349.png" alt="External tools" title="External tools" width="500" height="349" class="aligncenter size-large wp-image-8731" /></a></p>
<p>Y creamos una nueva configuración con el botón &#8220;New Launch Configuration&#8221;</p>
<p>Aquí vamos a crear dos configuraciones distintas, es importante fijarse bien, y poner las confiruraciones tal y como están en las imágenes, o no funcionará correctamente:</p>
<li> lejos_Compile
<p><a href="http://blog.electricbricks.com/wp-content/uploads/LeJOS_Compile.png"><img src="http://blog.electricbricks.com/wp-content/uploads/LeJOS_Compile-500x400.png" alt="LeJOS_Compile" title="LeJOS_Compile" width="500" height="400" class="aligncenter size-large wp-image-8918" /></a></p>
<li> lejos_Download
<p><a href="http://blog.electricbricks.com/wp-content/uploads/LeJOS_Download.png"><img src="http://blog.electricbricks.com/wp-content/uploads/LeJOS_Download-500x399.png" alt="LeJOS_Download" title="LeJOS_Download" width="500" height="399" class="aligncenter size-large wp-image-8917" /></a></p>
<p>Una vez creadas, aplicamos los cambios y cerramos la ventana.</p>
<p>Por último, vamos a crear unos accesos directos para tener estas herramientas a mano cuando nos hagan falta, para ello vamos a <em>Run &#8211; External Tools &#8211; Organize Favorites </em></p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/External-Tools-Favorites.png"><img src="http://blog.electricbricks.com/wp-content/uploads/External-Tools-Favorites-500x340.png" alt="External Tools Favorites" title="External Tools Favorites" width="500" height="340" class="aligncenter size-large wp-image-8730" /></a></p>
<p><strong>2. Nuestro primer programa: <em>&#8220;Hola Mundo&#8221;</em></strong></p>
<p>Para poder hacer el programa, primero tendremos que añadir la clase correspondiente, para eso vamos a <em>File &#8211; New &#8211; Class</em></p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/New-Java-Class-500x609.png" alt="New Java Class" title="New Java Class" width="500" height="609" class="aligncenter size-large wp-image-8921" /></p>
<p>Es importante que en el campo <em>Source Folder</em> indiquemos <em>NombreProyecto/src</em>, además damos a nuestra clase el nombre correspondiente <strong>HolaMundo</strong>. Debemos marcar también la opción <em> public static void main(String[] args)</em>.</p>
<p>Una vez creada la clase, tendremos un archivo <strong>HolaMundo.java</strong> dentro del desplegable <em>NombreProyecto/src</em>, lo abrimos y escribimos este código</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> HolaMundo <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; <span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
&nbsp; &nbsp;* @param args<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO Auto-generated method stub</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Hola Mundo!&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">while</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>Líneas 9 y 10:</strong> aquí hemos usado en método propio de LeJOS para mostrar datos en la pantalla.</p>
<p>Guardamos el archivo y le damos a nuestra recién creada configuración <strong>lejos_Compile</strong> para asegurarnos de que todo es correcto, y luego a <strong>lejos_Download</strong> para comprobar el resultado en nuestro NXT.</p>
<p>Para que lejos_Download funcione, podéis enchufar el cable USB o seguir el<a href="http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/"> tutorial de conexión bluetooth para MAC</a> y dejar que se descargue directamente por bluetooth. Ambos métodos funcionan.</p>
<p>Os dejo una captura de lo que muestra la consola de Eclipse al descargar por Bluetooth</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Bluetooth-Download-500x94.png" alt="Bluetooth Download" title="Bluetooth Download" width="500" height="94" class="aligncenter size-large wp-image-8922" /></p>
<p>Si tenéis cualquier duda o problema, podéis preguntar en el <a href="http://www.electricbricks.com/forum/index.php?topic=498.0">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;Title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;desc=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;submitHeadline=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;submitSummary=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;t=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;t=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac+-+File: /data/app/webapp/functions.php<br />Line: 43<br />Message: Table 'b2l_shrinker.phurl_urls' doesn't exist+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Instalaci%C3%B3n%20de%20Eclipse%20para%20LeJOS%20en%20Mac%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Instalaci%C3%B3n%20de%20Eclipse%20para%20LeJOS%20en%20Mac%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;summary=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;h=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que&amp;posturl=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;posttitle=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;bm_description=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;link=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F07%2Feclipse-lejos-installation-mac%2F&amp;desc=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;body=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;lname=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;u_data[name]=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;bmtitle=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;t=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;body=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;T=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&quot;+-+from+File: /data/app/webapp/functions.php<br />Line: 43<br />Message: Table 'b2l_shrinker.phurl_urls' doesn't exist" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/+&quot;Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;selection=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;type=Article&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;body=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;u=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;b=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;desc=Despu%C3%A9s%20del%20tutorial%20de%20instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20vamos%20a%20ver%20c%C3%B3mo%20instalar%20y%20configurar%20el%20entorno%20de%20programaci%C3%B3n%20Eclipse%20para%20trabajar%20con%20LeJOS.%20Primero%20lo%20instalaremos%20y%20posteriormente%20haremos%20nuestro%20programa%20Hola%20Mundo%20desde%20Eclipse.%0D%0A%0D%0A1.%20Instalar%20y%20configurar%20Eclipse%0D%0A%0D%0ALo%20primero%20que" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac&amp;url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/&amp;title=Instalaci%C3%B3n+de+Eclipse+para+LeJOS+en+Mac" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Conectar NXT por Bluetooth a MAC</title>
		<link>http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/</link>
		<comments>http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 08:35:39 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[NXT-G]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[bluetooth]]></category>
		<category><![CDATA[macbook]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=8812</guid>
		<description><![CDATA[
English

Muchos usuarios han tenido problemas de conexión bluetooth entre sus ladrillos NTX y su MAC. Vamos a dar un pequeño repaso a la configuración que necesitamos para que todo funcione correctamente. Además, veremos cómo realizar la conexión desde NXT-G y desde LeJOS (instalación de LeJOS en MAC). 
Emparejamiento
Lo primero que debemos hacer es emparejar el [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/07/connect-nxt-bluetooth-mac/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Bluetooth-MAC-150x50.png" alt="Bluetooth MAC" title="Bluetooth MAC" width="150" height="50" class="alignleft size-thumbnail wp-image-8813" />Muchos usuarios han tenido problemas de conexión bluetooth entre sus ladrillos NTX y su MAC. Vamos a dar un pequeño repaso a la configuración que necesitamos para que todo funcione correctamente. Además, veremos cómo realizar la conexión desde NXT-G y desde LeJOS (<a href="http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/">instalación de LeJOS en MAC</a>). <span id="more-8812"></span></p>
<p><strong>Emparejamiento</strong></p>
<p>Lo primero que debemos hacer es emparejar el NXT con el MAC. Para que todo funcione correctamente, os recomendamos que sea el ordenador el que realice la búsqueda y posterior emparejamiento.</p>
<p>Primero vamos al menú <em>&#8220;Preferencias de Bluetooth&#8221;</em></p>
<p><center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/Bluetooth-Preferences.png" alt="Bluetooth Preferences" title="Bluetooth Preferences" width="343" height="256" class="aligncenter size-full wp-image-8816" /><br />
</center></p>
<p><strong>¡IMPORTANTE! Antes de continuar, os recomendamos que borréis todos los NXT que hayan sido emparejados previamente con el ordenador.</strong></p>
<p>Nos aseguramos de que nuestro NXT tiene el bluetooth encendido y en modo visible.<br />
Seleccionamos <em>&#8220;Añadir nuevo dispositivo&#8221;</em>, el símbolo <strong>+</strong> abajo a la izquierda.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/New-device-499x352.png" alt="New device" title="New device" width="499" height="352" class="aligncenter size-large wp-image-8819" /></p>
<p>Cuando el MAC detecte nuestro NXT, lo seleccionamos y le damos a continuar</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Bluetooth-Setup-Assistant-499x324.png" alt="Bluetooth Setup Assistant" title="Bluetooth Setup Assistant" width="499" height="324" class="aligncenter size-large wp-image-8817" /></p>
<p>Nos aparecerá la pantalla de emparejamiento, por defecto, la clave de emparejamiento bluetooth de nuestro MAC es <em>0000</em></p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/passkey-500x323.png" alt="passkey" title="passkey" width="500" height="323" class="aligncenter size-large wp-image-8821" /></p>
<p>Debemos estar atentos a nuestro NXT, pues nos pedirá que confirmemos la clave.<br />
Aquí tenemos 2 opciones:</p>
<p>1. Cambiar la clave por defecto del NXT: <em>1234</em>, por la de nuestro MAC: <em>0000</em>.<br />
2. Confirmar la clave <em>1234</em>, y cuando el ordenador nos devuelva error, cambiamos la clave del MAC (eligiendo, lógicamente <em>1234</em>)</p>
<p>Si todo ha ido correctamente, en unos segundos deberíamos tener una pantalla como esta</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Pairing-succesful-500x322.png" alt="Pairing succesful" title="Pairing succesful" width="500" height="322" class="aligncenter size-large wp-image-8820" /></p>
<p>Ahora, para comprobar que el proceso ha finalizado de forma correcta, volvemos a <em>&#8220;Preferencias de Bluetooth&#8221;</em> y comprobamos la configuración de puertos del nuevo dispositivo</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Edit-Serial-Ports-500x387.png" alt="Edit Serial Ports" title="Edit Serial Ports" width="500" height="387" class="aligncenter size-large wp-image-8818" /></p>
<p>Tenemos que tener exactamente esta configuración</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Port-Config-500x391.png" alt="Port Config" title="Port Config" width="500" height="391" class="aligncenter size-large wp-image-8822" /></p>
<p>Si no es así, la cambiamos.</p>
<p>Con esto finaliza el proceso de emparejamiento, que no es más que hacer que los dispositivos se reconozcan entre si, ahora vamos a conectarnos al NXT.</p>
<p><strong>Conectando al NXT por bluetooth con NXT-G</strong></p>
<p>La conexión desde NXT-G es muy intuitiva, sólo debemos tener el cuenta que el NXT no debe estar conectado previamente con el MAC (<strong>sí emparejado</strong>, no confundir los dos términos).</p>
<p>Seleccionamos la opción <em>Visualizar NXT</em> en el menú de la parte inferior derecha</p>
<p><center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/NXT.png" alt="NXT" title="NXT" width="131" height="130" class="aligncenter size-full wp-image-8842" /><br />
</center></p>
<p>Cuando se nos abra la ventana, le damos a <em>Buscar</em></p>
<p><center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/Screen-data-500x215.png" alt="Screen data" title="Screen data" width="500" height="215" class="aligncenter size-large wp-image-8843" /><br />
</center></p>
<p>Entonces nos saltará una ventana de sistema que nos preguntará qué dispositivo queremos añadir a la lista de conexiones de NXT-G</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/select-device-500x297.png" alt="select device" title="select device" width="500" height="297" class="aligncenter size-large wp-image-8844" /></p>
<p>Buscamos el nuestro en la lista y le damos a <em>Seleccionar</em>. Aquí es donde la búsqueda difiere de Windows, si recordáis, Windows nos muestra una lista de todos los que encuentra disponibles, sin embargo MAC sólo nos muestra los que le indiquemos.</p>
<p>Una vez seleccionado, pasará a nuestra lista de NXT-G, donde le damos a <em>Conectar</em> (si está Disponible, claro).</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/connect-500x214.png" alt="connect" title="connect" width="500" height="214" class="aligncenter size-large wp-image-8840" /></p>
<p>En unos segundos, si todo ha ido bien, tendremos esta pantalla</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/connected-500x212.png" alt="connected" title="connected" width="500" height="212" class="aligncenter size-large wp-image-8841" /></p>
<p><strong>Conectando al NXT por bluetooth con LeJOS</strong></p>
<p>Si no tenéis LeJOS y queréis usarlo en vuestro MAC, podéis seguir el <a href="http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/">tutorial de instalación de LeJOS en MAC</a>.</p>
<p>Por defecto, la versión 0.85 de LeJOS para MAC lleva incluida la librería BlueCove 2.1.0, que nos permitirá conectarnos por bluetooth a nuestro dispositivo sin problemas.</p>
<p>Abrimos la terminal y tecleamos</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd lejos_nxj/bin</div></td></tr></tbody></table></div>
<p>(nosotros lo tenemos instalado en Home)</p>
<p>Con esto estamos dentro de la carpeta de ejecutables de LeJOS.<br />
Ahora, el comando</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">./nxjconsoleviewer</div></td></tr></tbody></table></div>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Commands-499x97.png" alt="Commands" title="Commands" width="499" height="97" class="aligncenter size-large wp-image-8825" /></p>
<p>Esta utilidad te permite monitorizar las conexiones y la salida de consola del NXT.</p>
<p>Seleccionamos como tipo de conexión Bluetooth, introducimos el nombre del NXT (el nuestro se llama Mac) y le damos a <em>Connect</em>. El campo <em>Address</em> se puede dejar en blanco, realizará la búsqueda por nombre.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/nxjviewer-500x211.png" alt="nxjviewer" title="nxjviewer" width="500" height="211" class="aligncenter size-large wp-image-8826" /></p>
<p>Puede que te pida la clave de emparejamiento (el NXT tiene por defecto <em>1234</em>), introdúcela y dale a <em>Emparejar</em> (<em>Pair</em>). </p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Passcode-500x246.png" alt="Passcode" title="Passcode" width="500" height="246" class="aligncenter size-large wp-image-8827" /></p>
<p>Tras unos segundos, nos aparecerá esta pantalla indicando que todo ha ido bien.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Successful-500x254.png" alt="Successful" title="Successful" width="500" height="254" class="aligncenter size-large wp-image-8828" /></p>
<p>Si esta utilidad no os convence, o no funciona correctamente, podéis probar con el comando</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">./nxjbrowse -b</div></td></tr></tbody></table></div>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Terminal-500x78.png" alt="Terminal" title="Terminal" width="500" height="78" class="aligncenter size-large wp-image-8834" /></p>
<p><strong>-b</strong> fuerza a la aplicación a realizar una búsqueda de dispositivos bluetooth (<strong>-u</strong> es lo mismo pero para USB).<br />
Debería localizarlo correctamente, después, simplemente le damos a <em>Connect</em> </p>
<p><center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/nxj-browse.png" alt="nxj browse" title="nxj browse" width="452" height="192" class="aligncenter size-full wp-image-8835" /><br />
</center></p>
<p>Esta otra aplicación nos permite, no sólo conectarnos al NXT, si no también administrar sus archivos, cargar y descargar programas o incluso ejecutarlos, cambiarle el nombre al ladrillo, etc&#8230;</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/nxjBrowse-success-500x114.png" alt="nxjBrowse success" title="nxjBrowse success" width="500" height="114" class="aligncenter size-large wp-image-8836" /></p>
<p>Con esto terminamos el tutorial de conexión Bluetooth, si tenéis cualquier duda o problema, podéis acudir al <a href="http://www.electricbricks.com/forum/index.php?topic=498.0">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;Title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;desc=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;submitHeadline=Conectar+NXT+por+Bluetooth+a+MAC&amp;submitSummary=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;t=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;t=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Conectar+NXT+por+Bluetooth+a+MAC+-+http://b2l.me/aa854m+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Conectar%20NXT%20por%20Bluetooth%20a%20MAC%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Conectar%20NXT%20por%20Bluetooth%20a%20MAC%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;summary=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;h=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20&amp;posturl=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;posttitle=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;bm_description=Conectar+NXT+por+Bluetooth+a+MAC&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Conectar+NXT+por+Bluetooth+a+MAC&amp;link=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Conectar+NXT+por+Bluetooth+a+MAC&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F07%2Fconnect-nxt-bluetooth-mac%2F&amp;desc=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;body=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;lname=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;u_data[name]=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;bmtitle=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;t=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;body=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;T=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Conectar+NXT+por+Bluetooth+a+MAC&quot;+-+from+http://b2l.me/aa854m" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/+&quot;Conectar+NXT+por+Bluetooth+a+MAC&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;selection=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;type=Article&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;body=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Conectar+NXT+por+Bluetooth+a+MAC&amp;u=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;b=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;desc=EnglishMuchos%20usuarios%20han%20tenido%20problemas%20de%20conexi%C3%B3n%20bluetooth%20entre%20sus%20ladrillos%20NTX%20y%20su%20MAC.%20Vamos%20a%20dar%20un%20peque%C3%B1o%20repaso%20a%20la%20configuraci%C3%B3n%20que%20necesitamos%20para%20que%20todo%20funcione%20correctamente.%20Adem%C3%A1s%2C%20veremos%20c%C3%B3mo%20realizar%20la%20conexi%C3%B3n%20desde%20NXT-G%20y%20desde%20LeJOS%20%28instalaci%C3%B3n%20de%20LeJOS%20" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Conectar+NXT+por+Bluetooth+a+MAC&amp;url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/&amp;title=Conectar+NXT+por+Bluetooth+a+MAC" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Instalación de LeJOS en MAC OS X</title>
		<link>http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/</link>
		<comments>http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 12:02:49 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[macbook]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=8679</guid>
		<description><![CDATA[
English

Ya hemos visto cómo instalar LeJOS en Windows y en Linux, hoy vamos a ver un pequeño tutorial sobre cómo se instala LeJOS en nuestro Mac. Además, en este artículo, daremos un repaso a los comandos principales de LeJOS que nos permitirán trabajar con este lenguaje sin necesidad de una interfaz gráfica.
Para ello vamos a [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/07/lejos-installation-mac-os-x/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/logo-LeJOS+MAC.png" alt="logo LeJOS+MAC" title="logo LeJOS+MAC" width="146" height="57" class="alignleft size-full wp-image-8774" />Ya hemos visto cómo instalar <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-2/">LeJOS en Windows</a> y en <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-3/">Linux</a>, hoy vamos a ver un pequeño tutorial sobre cómo se instala LeJOS en nuestro Mac. Además, en este artículo, daremos un repaso a los comandos principales de LeJOS que nos permitirán trabajar con este lenguaje sin necesidad de una interfaz gráfica.<span id="more-8679"></span></p>
<p>Para ello vamos a seguir una serie de pasos muy sencillos:</p>
<p>1. Instalar Java<br />
2. Instalar el Driver USB de LEGO para MAC<br />
3. Instalar y configurar LeJOS<br />
4. Conectar el NXT y descargar firmware LeJOS<br />
5. Usar LeJOS con línea de comandos</p>
<p><strong><em>1. Instalar Java</em></strong></p>
<p>En MAC java viene pre-instalado, por lo que simplemente deberemos asegurarnos de tenerla última versión (en el momento de escribir este tutorial es la 1.6), para ello vamos a <img src="http://blog.electricbricks.com/wp-content/uploads/apple.png" alt="apple" title="apple" width="12" height="15" class="alignnone size-full wp-image-8745" /> y seleccionamos &#8220;Actualizaciones de Software&#8221;.</p>
<p><strong><em>2. Instalar el driver USB de LEGO para MAC</em></strong> </p>
<p>Para que nuestro MAC reconozca el NXT en modo restauración de firmware, tendremos que instalar el parche desde la <a href="http://mindstorms.lego.com/support/updates">página de soporte de LEGO Mindstorms</a></p>
<p>Nombre del parche: <strong>Mac Leopard Fix</strong></p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/Leopard-Fix.png"><img src="http://blog.electricbricks.com/wp-content/uploads/Leopard-Fix-500x207.png" alt="Leopard Fix" title="Leopard Fix" width="500" height="207" class="aligncenter size-large wp-image-8737" /></a></p>
<p><strong><em>3. Instalar y configurar LeJOS</em></strong></p>
<p>Vamos a la <a href="http://lejos.sourceforge.net/nxj-downloads.php">Página oficial de LeJOS</a> y descargamos la versión para Mac/Linux.<br />
Extraemos la carpeta donde queramos, en nuestro caso lo hemos hecho en el directorio <em>Home</em></p>
<p>Ahora debemos configurar las variables de entorno para Java y LeJOS, para ello abrimos una consola (o Terminal) e introducimos el siguiente comando</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">sudo pico .profile</div></td></tr></tbody></table></div>
<p>Esto nos permitirá crear el fichero <em>.profile</em>, o editarlo si ya existe. Tecleamos nuestra clave de administrador y escribimos en él las siguiente líneas</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home<br />
export NXJ_HOME=/Users/Phoenix/lejos_nxj <br />
export DYLD_LIBRARY_PATH=$NXJ_HOME/bin<br />
export PATH=$PATH:$JAVA_HOME/bin:$NXJ_HOME/bin</div></td></tr></tbody></table></div>
<p>La primera línea es la ruta donde está instalado JAVA.<br />
La segunda es la ruta donde tenéis la carpeta lejos_nxj<br />
La tercera sólo es necesaria para usar el plugin de Eclipse (que veremos en el próximo artículo)<br />
Y la última añade las carpetas bin para LeJOS y JAVA</p>
<p><a href="http://blog.electricbricks.com/wp-content/uploads/Modif-profile.png"><img src="http://blog.electricbricks.com/wp-content/uploads/Modif-profile-500x281.png" alt="Modif profile" title="Modif profile" width="500" height="281" class="aligncenter size-large wp-image-8738" /></a></p>
<p>CTRL+X para salir (nombre de archivo .profile) y <em>Yes</em> para salvar los cambios. Al pulsar intro volveremos a la consola. </p>
<p>Ahora debemos dar los permisos apropiados al directorio <em>bin</em>. Para ello accedemos a lejos_nxj/bin</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd lejos_nxj/bin</div></td></tr></tbody></table></div>
<p>(suponiendo que lo tengamos en Home)<br />
Y ejecutamos el comando</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp;chmod +x*</div></td></tr></tbody></table></div>
<p>Para que los cambios que hemos hecho tengan efecto debemos <em>reiniciar nuestro ordenador</em>.</p>
<p><strong>NOTA</strong><br />
Si tenéis instalado <strong>Snow Leopard</strong> en vuestro Mac y no os funciona LeJOS tras terminar la instalación, <strong>sustituid</strong> los archivos de la carpeta <strong>lejos_nxt/bin</strong> por estos <a href='http://blog.electricbricks.com/wp-content/uploads/bin_lejos_snow_leopard.zip'>bin_lejos_snow_leopard</a>. Es un fichero zip, basta con descargarlo, extraerlo y sustituir la carpeta.<br />
¡OJO! Tendréis que volver a cambiar los permisos de la carpeta.<br />
Estos ficheros están modificados para forzar a Java a ejecutarse a 32 bits a fin de ser totalmente compatible con LeJOS.<br />
Para usuarios de versiones anteriores de Mac OS este parche no es necesario. </p>
<p><em><strong>4. Conectar el NXT y descargar firmware LeJOS</strong></em></p>
<p>Una vez lo tenemos instalado y configurado, vamos a probarlo.</p>
<p>Primero vamos a ver si podemos conectarnos con nuestro NXT, para ello, con el cable USB conectado, tecleamos en la consola el siguiente comando</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxjbrowse -u</div></td></tr></tbody></table></div>
<p>Y nos aparecerá una ventana como esta</p>
<p><center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/NXJBrowser.png" alt="NXJBrowser" title="NXJBrowser" width="452" height="239" class="aligncenter size-full wp-image-8761" /><br />
</center></p>
<p>Seleccionamos nuestro NXT y le damos a <em>Connect</em>. Una vez establecida la conexión, cerramos nxjBrowser y tecleamos en el terminal</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxjflashg</div></td></tr></tbody></table></div>
<p>Esto nos permitirá descargar el nuevo firmware en el NXT.</p>
<p><center><br />
<img src="http://blog.electricbricks.com/wp-content/uploads/LeJOS-Flash.png" alt="LeJOS Flash" title="LeJOS Flash" width="398" height="718" class="aligncenter size-full wp-image-8734" /><br />
</center></p>
<p>Seleccionamos &#8220;Start program&#8221; y le damos a <em>Yes</em> para borrar los archivos del NXT.<br />
Cuando el proceso de descarga se haya completado, el firmware de nuestro NXT se ha sustituido por el firmware propio de LeJOS, por lo que ya podemos trabajar con él.</p>
<p><em><strong>5. Usar LeJOS con línea de comandos</strong></em></p>
<p>Vamos a crear nuestro primer programa, el clásico <em>Hello World</em>, pero vamos a hacerlo usando la consola. </p>
<p>Abrimos nuestro editor de textos preferido, en nuestro caso hemos usado rText y escribimos lo siguiente</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">import lejos.nxt.*;<br />
<br />
public class HelloWorld {<br />
&nbsp; public static void main (String[] args) {<br />
&nbsp; &nbsp; &nbsp;System.out.println(&quot;Hola Mundo&quot;);<br />
&nbsp; &nbsp; &nbsp;Button.waitForPress();<br />
&nbsp; }<br />
}</div></td></tr></tbody></table></div>
<p>En la línea 4 hemos usado el método estándar <em>System.out.println</em> de Java, ya que LeJOS puede trabajar con él sin problemas, enviando la salida a la pantalla LCD.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/HelloWorld-500x350.png" alt="HelloWorld" title="HelloWorld" width="500" height="350" class="aligncenter size-large wp-image-8763" /></p>
<p>Guardamos el archivo como <strong>HelloWorld.java</strong> </p>
<p>- Para <strong>compilarlo</strong> tecleamos desde la consola</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxjc HelloWorld.java</div></td></tr></tbody></table></div>
<p>Tras esto nos aparecerá un archivo <em>HelloWorld.class</em> en la misma carpeta donde estuviera el archivo <em>.java</em></p>
<p>- Para <strong>linkarlo</strong> debemos usar</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">njxlink -v HelloWorld -o HelloWorld.nxj</div></td></tr></tbody></table></div>
<li>La etiqueta <em>-v</em>, no es imprescindible, pero nos permite ver el proceso de linkado en <em>verbose mode</em>, es decir, con todos los pasos que sigue la instrucción, esto puede resultar muy útil para comprobar posible errores (<em>debugging</em>).
<li>Tras la etiqueta <em>-o</em> indicamos el nombre del archivo binario que se creará.
<p>- Para <strong>descargar</strong> en el NXT un archivo ya linkado usamos</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxjupload HelloWorld.nxj</div></td></tr></tbody></table></div>
<p>Las etiquetas que nos permiten modificar este comando son:</p>
<li> En primer lugar, justo tras el comando, <em>-b</em> /<em>-u</em> para forzar la descarga por Bluetooth o USB respectivamente. Si no se especifica nada, el comando lo intenta por USB primero y si no está conectado lo intenta directamente por Bluetooth
<li> A continuación  <em>-d address</em> donde <em>address</em> es la dirección Bluetooth del NXT al que queremos conectarnos. Si no se especifica nada, se realiza una búsqueda previa a la descarga.
<li> Luego <em>-n name</em> donde <em>name</em> es  el nombre del dispositivo al que queremos conectarnos. Si no se pone nada, intentará conectarse a todos los NXT que encuentre, descargando el archivo en el primero con el que se conecte con éxito.
<p>- Si por el contrario, una vez compilado queremos <strong>linkarlo, descargarlo y ejecutarlo</strong> en el NXT (la opción más común) tendremos que usar el comando</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">nxj -r HelloWorld</div></td></tr></tbody></table></div>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/consola-nxj-500x313.png" alt="consola nxj" title="consola nxj" width="500" height="313" class="aligncenter size-large wp-image-8764" /></p>
<p>En próximos artículos veremos:</p>
<li><a href="http://blog.electricbricks.com/2010/07/connect-nxt-bluetooth-mac/">Conexión bluetooth NXT-MAC</a>. Incluyendo conexión desde LeJOS.
<li><a href="http://blog.electricbricks.com/2010/07/eclipse-lejos-installation-mac/">Instalación y configuración de Eclipse para LeJOS en MAC</a>.
<p>Cualquier duda, podéis preguntar en el <a href="http://www.electricbricks.com/forum/index.php?topic=498.0">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;Title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;desc=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;submitHeadline=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;submitSummary=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;t=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;t=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X+-+http://b2l.me/aac7n4+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20OS%20X%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Instalaci%C3%B3n%20de%20LeJOS%20en%20MAC%20OS%20X%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;summary=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;h=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in&amp;posturl=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;posttitle=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;bm_description=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;link=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F07%2Flejos-installation-mac-os-x%2F&amp;desc=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;body=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;lname=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;u_data[name]=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;bmtitle=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;t=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;body=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;T=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&quot;+-+from+http://b2l.me/aac7n4" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/+&quot;Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;selection=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;type=Article&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;body=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;u=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;b=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;desc=EnglishYa%20hemos%20visto%20c%C3%B3mo%20instalar%20LeJOS%20en%20Windows%20y%20en%20Linux%2C%20hoy%20vamos%20a%20ver%20un%20peque%C3%B1o%20tutorial%20sobre%20c%C3%B3mo%20se%20instala%20LeJOS%20en%20nuestro%20Mac.%20Adem%C3%A1s%2C%20en%20este%20art%C3%ADculo%2C%20daremos%20un%20repaso%20a%20los%20comandos%20principales%20de%20LeJOS%20que%20nos%20permitir%C3%A1n%20trabajar%20con%20este%20lenguaje%20sin%20necesidad%20de%20una%20in" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X&amp;url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/&amp;title=Instalaci%C3%B3n+de+LeJOS+en+MAC+OS+X" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/07/lejos-installation-mac-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Manejo de tareas en LeJOS: clase Arbitrator</title>
		<link>http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/</link>
		<comments>http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 09:59:09 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=8131</guid>
		<description><![CDATA[
En el los artículos Control de tareas en RobotC  y  Control de prioridades de tareas en RobotC vimos como manejar tareas en RobotC. En este artículo vamos a ver el manejo de tareas en LeJOS. La mejor forma de manejar las tareas y sus prioridades en LeJOS es mediante la clase Arbitrator. Este [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch"></ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/arbitro-150x99.jpg" alt="arbitro" title="arbitro" width="150" height="99" class="alignleft size-thumbnail wp-image-8140" />En el los artículos <a href="http://blog.electricbricks.com/2010/06/robotc-task-control/">Control de tareas en RobotC </a> y  <a href="http://blog.electricbricks.com/2010/06/robotc-task-priority/">Control de prioridades de tareas en RobotC </a>vimos como manejar tareas en RobotC. En este artículo vamos a ver el manejo de tareas en LeJOS. La mejor forma de manejar las tareas y sus prioridades en LeJOS es mediante la clase Arbitrator. Este método consiste en crear unas tareas denominadas comportamientos, no muy complejas, que en su conjunto crearán el programa que deseemos implementar.<span id="more-8131"></span></p>
<p><strong>Modelo de programacion basado en comportamientos:</strong></p>
<p>Los programas que hemos escrito en nuestro robot presentan la apariencia habitual de un modelo de programacion estructurado. El  flujo de ejecucion comienza en un punto y se van sucediendo instrucciones que modican los actuadores de nuestro robot. En artículos anteriores hemos aprendido a crear nuevos threads y permitir que haya varios flujos de ejecucion en paralelo. A medida que la dificultad de la tarea a realizar aumenta, el codigo se vuelve cada vez mas complejo y difícil de escalar.</p>
<p>Un modelo de programacion basado en comportamientos permite simplicar el diseño de nuestros programas. Ahora nuestro codigo estara compuesto de varios comportamientos. Los comportamientos son tasks (tareas) relativamente simples e independientes, es decir, no necesitan de otros comportamientos para su ejecucion: Avanzar, esquivar obstaculo, coger pelota, rotar 360 grados, encender leds, etc. Una vez definidos los comportamientos tendremos que establecer una política de activación de los mismos. Por ejemplo podríamos tener un automata de estados finitos que activara uno o varios comportamientos según las necesidades del robot.</p>
<p>Otra alternativa es utilizar un arbitro que se encargue de elegir el comportamiento mas adecuado para cada momento en funcion de algun criterio. LeJOS dispone de un paquete llamado lejos.subsumption que permite programar nuestra aplicacion bajo este paradigma. Cada uno de nuestros comportamientos debera escribirse en una clase Java e implementar el interfaz Behavior. Este interfaz obliga a implementar tres métodos:</p>
<p><strong>public boolean takeControl()</strong>: Metodo que indicará si este comportamiento deberá activarse en este momento o no. Por ejemplo, si nuestro comportamiento se encarga de esquivar un obstaculo, su funcion takeControl() deberá devolver true cuando haya un obstaculo cerca del robot.</p>
<p><strong>public void action():</strong> Método que se ejecutará cuando se active el comportamiento.Por tanto deberá contener todas las instrucciones que desempeñaran la labor para la que ha sido creado el comportamiento.</p>
<p><strong>public void suppress():</strong> Metodo que se ejecutara cuando se desactive el comportamiento. Si es necesario devolver el robot a un determinado estado, aquí sera el sitio para hacerlo. Un comportamiento será desactivado cuando otro comportamiento tome el control en su lugar.</p>
<p><strong>Clase Arbitrator y prioridades de los comportamientos:</strong></p>
<p>Una vez creados nuestros comportamientos deberemos crear un objeto de tipo Arbitrator, que se encargará de activar y desactivar los comportamientos. El constructor de Arbitrator acepta como parametro un array de comportamientos (en el programa de ejemplo podéis como hacerlo). Todos estos comportamientos serán los candidatos a activarse durante la ejecución del programa. </p>
<p>Cuando se ejecute el método start() de nuestro objeto de tipo Arbitrator se pondrá en marcha el arbitro que activa la ejecucion de los comportamientos. La poltica que se utiliza es una poltica de prioridades (tasks con prioridades). Tienen mayor prioridad aquellos comportamientos cuyo índice del array sea mayor. El arbitro recorrera el array de comportamientos desde el final hasta el comportamiento que ocupe la posicion 0 y ejecutará el metodo takeControl() de cada comportamiento. Si alguno de esos metodos devuelve <em>true</em>, se ejecutará una iteracion de ese comportamiento llamando a su metodo action(). </p>
<p>Este arbitro se encargará contnuamente de evaluar que comportamiento es el que hay que ejecutar. En caso de que otro comportamiento distinto al actual tenga que ser ejecutado, se llamará el método supress() del comportamiento actual y despues el método action() del nuevo comportamiento.</p>
<p><strong>Programa de ejemplo:</strong></p>
<p>Como programa de ejemplo hemos puesto un clásico, el Bump&#038;Go. Es un ejemplo sencillo, así que podréis comprender mejor como funciona la clase Arbitrator. En este caso tenemos dos comportamientos: <em>Avanza</em> y <em>Esquiva</em>. Uno se encargará de ir en línea recta, y el otro de esquivar cuando detecte un obstáculo. Por último el Arbitro se encargará de gestionarlo todo.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/BumpGo2-500x380.jpg" alt="Bump&amp;Go2" title="Bump&amp;Go2" width="500" height="380" class="aligncenter size-large wp-image-6680" /></p>
<p>Cada comportamiento va en una clase distinta, y el Arbitro también, por lo que tendremos tres archivos (con una clase cada uno). Uno será el de la clase Avanza:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.robotics.subsumption.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Avanza <span style="color: #000000; font-weight: bold;">implements</span> Behavior <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">boolean</span> takeControl<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000066; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> suppress<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> action<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Otro el de la clase Esquiva:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.robotics.subsumption.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Esquiva <span style="color: #000000; font-weight: bold;">implements</span> Behavior <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> TouchSensor touch <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> TouchSensor<span style="color: #009900;">&#40;</span>SensorPort.<span style="color: #006633;">S1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">boolean</span> takeControl<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">return</span> touch.<span style="color: #006633;">isPressed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> suppress<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> action<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">backward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">backward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">500</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">Exception</span> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">500</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">Exception</span> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Y finalmente el de la clase Bump&#038;Go, que es el arbitro:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.robotics.subsumption.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> BumpAndGo <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Behavior b1 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Avanza<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Behavior b2 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Esquiva<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Behavior <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> bArray <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span>b1, b2<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Arbitrator arby <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Arbitrator<span style="color: #009900;">&#40;</span>bArray<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; arby.<span style="color: #006633;">start</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Esta es una manera muy cómoda de gestionar tareas, amén de que facilita mucho la programación de programas complejos dividiéndolos en tareas. Si tenéis alguna duda, os recomiendo que os paséis por el foro y preguntéis.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;Title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;desc=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;submitHeadline=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;submitSummary=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;t=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;t=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator+-+http://b2l.me/5zb2z+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Manejo%20de%20tareas%20en%20LeJOS%3A%20clase%20Arbitrator%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Manejo%20de%20tareas%20en%20LeJOS%3A%20clase%20Arbitrator%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;summary=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;h=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to&amp;posturl=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;posttitle=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;bm_description=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;link=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F06%2Flejos-task-schedulin-arbitrator%2F&amp;desc=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;body=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;lname=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;u_data[name]=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;bmtitle=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;t=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;body=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;T=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&quot;+-+from+http://b2l.me/5zb2z" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/+&quot;Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;selection=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;type=Article&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;body=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;u=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;b=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;desc=En%20el%20los%20art%C3%ADculos%20Control%20de%20tareas%20en%20RobotC%20%20y%20%20Control%20de%20prioridades%20de%20tareas%20en%20RobotC%20vimos%20como%20manejar%20tareas%20en%20RobotC.%20En%20este%20art%C3%ADculo%20vamos%20a%20ver%20el%20manejo%20de%20tareas%20en%20LeJOS.%20La%20mejor%20forma%20de%20manejar%20las%20tareas%20y%20sus%20prioridades%20en%20LeJOS%20es%20mediante%20la%20clase%20Arbitrator.%20Este%20m%C3%A9to" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator&amp;url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/&amp;title=Manejo+de+tareas+en+LeJOS%3A+clase+Arbitrator" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/06/lejos-task-schedulin-arbitrator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Kart NXT controlado remotamente con LeJOS</title>
		<link>http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/</link>
		<comments>http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/#comments</comments>
		<pubDate>Fri, 18 Jun 2010 14:35:24 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=7997</guid>
		<description><![CDATA[
English

El objetivo de este artículo es realizar un vehículo controlado remotamente por bluetooth mediante LeJOS. La novedad de este proyecto es que es el primero que realizamos cuya tracción no es diferencial (como los anteriores).
Mientras que los vehículos con tracción diferencial como el tribot son capaces de cambiar su dirección ajustando la velocidad de los [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/06/kart-nxt-remote-control-lejos/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/joystick-Kart-150x112.jpg" alt="joystick-Kart" title="joystick-Kart" width="150" height="112" class="alignleft size-thumbnail wp-image-8008" />El objetivo de este artículo es realizar un vehículo controlado remotamente por bluetooth mediante LeJOS. La novedad de este proyecto es que es el primero que realizamos cuya tracción no es diferencial (como los anteriores).<span id="more-7997"></span></p>
<p>Mientras que los vehículos con tracción diferencial como el tribot son capaces de cambiar su dirección ajustando la velocidad de los motores, este vehículo cuenta con un  motor que se encarga exclusivamente de la dirección ya que los otros dos se encargarán exclusivamente de dar potencia (para dar tracción emplearemos dos motores en lugar de uno solo).</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/joystick-Kart-500x375.jpg" alt="joystick-Kart" title="joystick-Kart" width="500" height="375" class="aligncenter size-large wp-image-8008" /></p>
<p>Como mando usaremos el <a href="http://blog.electricbricks.com/2010/02/joystick-con-nxt-g-ii/">joystick</a> que ya hemos empleado en otros artículos, que se comunicará con nuestro kart mediante bluetooth. Cada vez que haya una diferencia significativa en los tacómetros de los motores del joystick (lo que significará que hemos movido el joystick), este enviará una señal al kart para que gire la dirección, o acelere, según el eje del joystick que hayamos movido.</p>
<p><strong>Comunicación Bluetooth en LeJOS:</strong></p>
<p>En primer lugar os recomiendo que os leáis el artículo <a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-10/">Manejo de Bluetooth en LeJOS</a> en el que se explica como comunicar dos NXT mediante bluetooth para enviar cualquier tipo de información. En este caso lo que enviaremos serán datos del valor de los tacómetros de los motores del joystick, los cuales nos indican la cantidad de de grados que queremos girar, o cuanto aumentar la velocidad.</p>
<p>El envío de los datos entre los NXT se hace mediante un buffer, una especie de túnel en el que un NXT va metiendo datos por un lado y el otro los recoge por el otro lado. Es posible que la comunicación no desarrolle como queramos debido a diversos factores. Uno de los más comunes es que el NXT que envía información lo haga más rápido que el tiempo que tarda el NXT que la recibe en procesarla. Esto crea un problema serio, ya que el buffer se irá llenando de información, y llegará un momento que no pueda meter más y se empiecen a perder datos. Además como el receptor recibe más datos de los que tiene tiempo de procesar, se generará un retardo que irá en aumento, traduciéndose en un comportamiento no deseado.</p>
<p>Este es nuestro vehículo:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/detalle-kart-500x375.jpg" alt="detalle kart" title="detalle kart" width="500" height="375" class="aligncenter size-large wp-image-8006" /></p>
<p><strong>Control del Kart:</strong></p>
<p>El control de la velocidad del Kart esta manejado por la clase navigator de LeJOS  (que nos asegura que los dos motores A y C, que se encargan de la velocidad del Kart,  se muevan a la misma velocidad). El control no es directo, sino que tiene velocidad aumentada gracias a un sistema de engranajes. La velocidad del kart se basa en el giro que experimenta el joystick en uno de sus ejes (el controlado por el motor A).</p>
<p>Detalle de los motores de tracción:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Detalle-tracción-500x375.jpg" alt="Detalle tracción" title="Detalle tracción" width="500" height="375" class="aligncenter size-large wp-image-8007" /></p>
<p>El control de la dirección es directo desde el motor B del NXT. Dado que existe una limitación mecánica del angulo máximo de giro, el programa debe tenerla en cuenta para evitar que el motor intente girar más de lo que mecánicamente es posible, bloqueándose. El ángulo girado pretende seguir al giro que experimenta el joystick en uno de sus ejes (el controlado por el motor B).</p>
<p>Detalle del sistema de dirección:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Detalle-dirección-500x375.jpg" alt="Detalle dirección" title="Detalle dirección" width="500" height="375" class="aligncenter size-large wp-image-8005" /></p>
<p><strong>Programa:</strong></p>
<p>La implementación consiste en dos programas, uno para el kart y otro para el joystick. Ambos programas se comunicarán mediante bluetooth por un buffer. El joystick será el encargado de enviarle cuantos grados ha girado en sus ejes, y el kart el encargado de recibir dicha información, procesarla, y transformarla en movimiento.</p>
<p>Los primeros experimentos que hicimos intentando controlar la dirección no daban el resultado que pretendíamos. Esto era debido a que estábamos enviando una gran cantidad de datos por el buffer, y el kart no era capaz de procesarlos a la velocidad suficiente, lo que creaba un retardo cada vez mayor entre el movimiento del joystick y la respuesta del kart. Por eso hemos hecho un método en el que el joystick solo envía información cada cierto tiempo, y si la posición del joystick a cambiado, por lo que no estará enviando datos todo el rato aunque el joystick esté quieto.</p>
<p>También se han resuelto otros problemas como el de la transmisión comentado anteriormente, y se han hecho procesamientos con los datos para que el control fuera más sencillo. Aún así los programas son aún mejorables, y los modificaremos para reducir problemas como el del retardo, y para finalmente poder participar en la competición de karts de la semana que viene con el único kart controlado remotamente hecho en exclusiva con NXT.</p>
<p>Aquí os dejo el código del mando:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Button</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LCD</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Motor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.BTConnection</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.Bluetooth</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.bluetooth.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Mando <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; <span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
&nbsp; &nbsp;* @param args<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO Auto-generated method stub</span><br />
&nbsp; &nbsp; <span style="color: #003399;">String</span> nombre <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;NXT1&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectando...&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> ant_gir <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> ant <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; RemoteDevice bt <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">getKnownDevice</span><span style="color: #009900;">&#40;</span>nombre<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>bt <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;No existe ese dispositivo&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; BTConnection btc <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">connect</span><span style="color: #009900;">&#40;</span>bt<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>btc <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexión fallida&quot;</span>, <span style="color: #cc66cc;">1</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectado&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">DataOutputStream</span> dos <span style="color: #339933;">=</span> btc.<span style="color: #006633;">openDataOutputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Mando en funcionamiento&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">while</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #003399;">Button</span>.<span style="color: #006633;">ESCAPE</span>.<span style="color: #006633;">isPressed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">150</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//Giro</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">getTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>i <span style="color: #339933;">&gt;</span> <span style="color: #009900;">&#40;</span>ant_gir <span style="color: #339933;">+</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #009900;">&#40;</span>i <span style="color: #339933;">&lt;</span> <span style="color: #009900;">&#40;</span>ant_gir <span style="color: #339933;">-</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">writeInt</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ant_gir <span style="color: #339933;">=</span> i<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//Aceleración</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> j <span style="color: #339933;">=</span> Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">getTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>j <span style="color: #339933;">&gt;</span> <span style="color: #009900;">&#40;</span>ant <span style="color: #339933;">+</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #009900;">&#40;</span>j <span style="color: #339933;">&lt;</span> <span style="color: #009900;">&#40;</span>ant <span style="color: #339933;">-</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">writeInt</span><span style="color: #009900;">&#40;</span>j <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ant <span style="color: #339933;">=</span> i<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Cerrando conexion&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; btc.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Finalizado&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Y el del kart:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Motor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.robotics.navigation.Pilot</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.robotics.navigation.TachoPilot</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Button</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LCD</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.BTConnection</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.Bluetooth</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.lang.Math</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Kart <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; <span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
&nbsp; &nbsp;* @param args<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO Auto-generated method stub</span><br />
&nbsp; &nbsp; Pilot navigator <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> TachoPilot<span style="color: #009900;">&#40;</span>5.4f, 17.8f, Motor.<span style="color: #006633;">A</span>, Motor.<span style="color: #006633;">C</span>, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Esperando...&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; BTConnection btc <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">waitForConnection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectado&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">setPower</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">DataInputStream</span> dis <span style="color: #339933;">=</span> btc.<span style="color: #006633;">openDataInputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">while</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #003399;">Button</span>.<span style="color: #006633;">ESCAPE</span>.<span style="color: #006633;">isPressed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>&nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> dis.<span style="color: #006633;">readInt</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>i <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//Acelerar</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">backward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">setMoveSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>i <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>i <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">800</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">setMoveSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">Math</span>.<span style="color: #006633;">abs</span><span style="color: #009900;">&#40;</span>i <span style="color: #339933;">-</span> <span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//Girar</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">boolean</span> signo<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>i <span style="color: #339933;">&gt;=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; signo <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; signo <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; i <span style="color: #339933;">=</span> i<span style="color: #339933;">/</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; i <span style="color: #339933;">=</span> i<span style="color: #339933;">*</span>i<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>i <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">40</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>signo<span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotateTo</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotateTo</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>signo<span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotateTo</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">40</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotateTo</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">40</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Cerrando conexion&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; dis.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; btc.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Aquí tenéis un vídeo del funcionamiento</p>
<p><object width="500" height="360"><param name="movie" value="http://www.youtube.com/v/_EAeL1RB70o&#038;hl=es_ES&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/_EAeL1RB70o&#038;hl=es_ES&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="360"></embed></object></p>
<p>Son códigos de cierta complejidad, así que si tenéis alguna duda podéis preguntarnos en el <a href="http://www.electricbricks.com/forum/index.php">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;Title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;desc=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;submitHeadline=Kart+NXT+controlado+remotamente+con+LeJOS&amp;submitSummary=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;t=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;t=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Kart+NXT+controlado+remotamente+con+LeJOS+-+http://b2l.me/4phwa+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Kart%20NXT%20controlado%20remotamente%20con%20LeJOS%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Kart%20NXT%20controlado%20remotamente%20con%20LeJOS%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;summary=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;h=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20&amp;posturl=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;posttitle=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;bm_description=Kart+NXT+controlado+remotamente+con+LeJOS&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;link=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F06%2Fkart-nxt-remote-control-lejos%2F&amp;desc=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;body=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;lname=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;u_data[name]=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;bmtitle=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;t=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;body=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;T=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Kart+NXT+controlado+remotamente+con+LeJOS&quot;+-+from+http://b2l.me/4phwa" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/+&quot;Kart+NXT+controlado+remotamente+con+LeJOS&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;selection=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;type=Article&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;body=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Kart+NXT+controlado+remotamente+con+LeJOS&amp;u=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;b=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;desc=EnglishEl%20objetivo%20de%20este%20art%C3%ADculo%20es%20realizar%20un%20veh%C3%ADculo%20controlado%20remotamente%20por%20bluetooth%20mediante%20LeJOS.%20La%20novedad%20de%20este%20proyecto%20es%20que%20es%20el%20primero%20que%20realizamos%20cuya%20tracci%C3%B3n%20no%20es%20diferencial%20%28como%20los%20anteriores%29.%0D%0A%0D%0AMientras%20que%20los%20veh%C3%ADculos%20con%20tracci%C3%B3n%20diferencial%20como%20el%20" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Kart+NXT+controlado+remotamente+con+LeJOS&amp;url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/&amp;title=Kart+NXT+controlado+remotamente+con+LeJOS" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/06/kart-nxt-remote-control-lejos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Problema de la deriva en NXT y LeJOS</title>
		<link>http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/</link>
		<comments>http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 12:14:22 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=7799</guid>
		<description><![CDATA[
English

Uno de los problemas que tienen cualquier sistema que tenga que desplazarse, y en particular un robot NXT móvil, es la deriva en la navegación. La deriva es el desvío de la trayectoria real respecto de la trayectoria prevista, y se debe a diversos factores. Cuanto menos deriva tenga un robot más preciso será su [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/06/problema-deriva-nxt-lejos/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/lateral5-150x112.jpg" alt="lateral" title="lateral" width="150" height="112" class="alignleft size-thumbnail wp-image-7407"/>Uno de los problemas que tienen cualquier sistema que tenga que desplazarse, y en particular un robot NXT móvil, es la deriva en la navegación. La deriva es el desvío de la trayectoria real respecto de la trayectoria prevista, y se debe a diversos factores. Cuanto menos deriva tenga un robot más preciso será su desplazamiento y menos se desviará de su destino objetivo al finalizar el movimiento. Este problema es muy común con los LEGO Mindstorms NXT debido a que no son robots con una forma única, sino que hay muchos montajes diferentes de robots móviles. La forma en que estén implementados los programas también influye en esta deriva.<span id="more-7799"></span></p>
<p><strong>Cosas que influyen en la deriva:</strong></p>
<p>En el aspecto físico del robot hay muchas cosas que influyen en la deriva. Influye por ejemplo la diferencia de tamaño entre las ruedas, aunque está sea mínima porque una está mas hinchada que otra. Influye el peso del robot en gran medida, y por supuesto el cómo está distribuido este peso. Es importante que el mayor peso posible se encuentre sobre las ruedas tractoras, lo que impedirá que el robot se desvíe de su camino porque le pese demasiado la parte de delante o de atrás:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/frontal4-500x375.jpg" alt="frontal" title="frontal" width="500" height="375" class="alignleft size-large wp-image-7406"/></p>
<p>Influye la solidez del vehículo, que no modifique su forma mientras se va desplazando, su simetría. Otro aspecto importante es que no tenga rozamiento con nada, ya que el mínimo rozamiento podría crear una modificación de la trayectoria. La velocidad es bastante importante también, un vehículo que se desplace rápido es mucho más difícil de controlar que uno que lo haga lentamente.</p>
<p>La parte de implementación es también muy importante, por ejemplo si está usando dos motores para desplazarse, ambos deben ir con la misma potencia y velocidad. También es importante que a la hora de arrancar lo hagan simultáneamente, o el robot comenzará a moverse ya desviado de la trayectoria. Así mismo es importante que se detengan simultáneamente cuando el robot tenga que parar.</p>
<p><center><img src="http://blog.electricbricks.com/wp-content/uploads/Diametro-Rueda1.JPG" alt="Diametro Rueda" title="Diametro Rueda" width="218" height="167" class="aligncenter size-full wp-image-7835" /></center><br />
<em>El diámetro teórico de una rueda no suele coincidir con su diametro real, debido entre otras cosas al peso que tenga encima o a lo descinchada que esté. Hay ruedas más duras que otras que tienen menos problemas de este estilo. Las orugas por ejemplo tienen mucha deformación lo que agrava la deriva. El tipo de suelo también influye mucho.</em></p>
<p>A pesar de todas estas precauciones es difícil mantener determinada trayectoria de forma continuada. Por ejemplo es imposible mantener a un robot realizando desplazamientos en forma de cuadrado de manera indefinida, y que siempre vuelva al mismo punto de partida, lo que pasará es que en cada vuelta el robot se desviará más y más hasta que ya nunca pase por su posición inicial.</p>
<p><strong>Clase Pilot, la mayor precisión:</strong></p>
<p>Una de las maneras de alcanzar una precisión muy alta a la hora de desplazar el robot es mediante la clase Pilot de LeJOS. Esta clase, que ya introduje en el artículo <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-8/">Manejo de motores avanzado: clase Pilot</a>, introduce una nueva forma de manejar el robot. Lo primero que se hace es configurar un objeto de esa clase indicando que motores vamos a utilizar (dos motores, ya que esta clase esta solo diseñada para tribots), que distancia hay entre los puntos medios de las ruedas, y el diámetro de la rueda:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Pilot navegador <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> TachoPilot<span style="color: #009900;">&#40;</span>diametro_ruedas, distancia_ruedas, Motor.<span style="color: #006633;">A</span>, Motor.<span style="color: #006633;">C</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Aunque las ruedas de los NXT tiene un diámetro de 5.6 cm es importante que pongáis un poco menos, sobre todo si vuestro robot pesa mucho, ya que el peso hace que las ruedas se aplanen un poco. La distancia entre las ruedas debe ser bastante precisa, ya que es de vital importancia sobre todo a la hora de las rotaciones.</p>
<p>A los métodos ya comentados en el artículo sobre la clase Pilot es importante añadir:</p>
<p><strong>void  setMoveSpeed(float distancia)</strong>: Establece la velocidad del robot a la distancia que pongamos por segundo. Por ejemplo si ponemos 5, se moverá a 5 cm por segundo (que seán cm, pulgadas o una medida distinta solo depende de que tipo de medida hayamos usado para configurar el Pilot).</p>
<p><strong>void  setTurnSpeed(float grados)</strong>:  Establece la velocidad del robot, pero en este caso es en grados por segundo. Si ponemos 360 las ruedas realizarán una rotación completa por segundo.</p>
<p>Es importante controlar la velocidad, ya que si vemos que nuestro robot no es capaz de moverse con precisión a cierta velocidad deberíamos reducirsela. Otro método útil es:</p>
<p><strong>void steer(float velocidad_giro, float angulo, boolean devolverControl)</strong>:  El robot se mueve en una trayectoria curva a la velocidad de giro indicada hasta que complete el número de ángulos deseado. Si devolver control es True el robot seguirá ejecutando las siguientes líneas de código mientras gira. No hace falta indicarle un angulo, si omitimos este campo el robot girará indefinidamente, o hasta que lo detengamos con otra instrucción.</p>
<p><strong>Programa de prueba:</strong></p>
<p>Para probar la precisión de la clase Pilot he creado un programa que describe un gran rectángulo de 240 cm. Cuanto más cerca quede el robot de la posición inicial más preciso será el programa. Además contamos con un montaje simétrico, relativamente ligero, y con la mayoría del peso sobre las ruedas tractoras. La rueda trasera no es la mejor posible, pero hace bien su función. El programa es el siguiente:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> figuras <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; <span style="color: #008000; font-style: italic; font-weight: bold;">/**<br />
&nbsp; &nbsp;* @param args<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO Auto-generated method stub</span><br />
&nbsp; &nbsp; &nbsp; Pilot navigator <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> TachoPilot<span style="color: #009900;">&#40;</span>5.4f, 10.4f, Motor.<span style="color: #006633;">A</span>, Motor.<span style="color: #006633;">C</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">reset</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">//Rectángulo</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">travel</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">90</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">90</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">travel</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">30</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">90</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">travel</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">90</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">90</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">travel</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">30</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; navigator.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">90</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawInt</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span><span style="color: #009900;">&#41;</span>navigator.<span style="color: #006633;">getTravelDistance</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #cc66cc;">6</span>,<span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Button</span>.<span style="color: #006633;">waitForPress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Aquí tenéis el vídeo demostrativo del programa, en el podéis ver que la deriva es mínima (apenas un centímetro), habiendo recorrido 240 cm. y realizado tres rotaciones de 90º:</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/1Iv0SUAmHjw&#038;hl=es_ES&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/1Iv0SUAmHjw&#038;hl=es_ES&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="400"></embed></object></p>
<p>Ante cualquier duda podéis preguntar en el <a href="http://www.electricbricks.com/forum/index.php">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;Title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;desc=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;submitHeadline=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;submitSummary=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;t=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;t=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Problema+de+la+deriva+en+NXT+y+LeJOS+-+http://b2l.me/2dnks+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Problema%20de%20la%20deriva%20en%20NXT%20y%20LeJOS%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Problema%20de%20la%20deriva%20en%20NXT%20y%20LeJOS%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;summary=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;h=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob&amp;posturl=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;posttitle=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;bm_description=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;link=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F06%2Fproblema-deriva-nxt-lejos%2F&amp;desc=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;body=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;lname=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;u_data[name]=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;bmtitle=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;t=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;body=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;T=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Problema+de+la+deriva+en+NXT+y+LeJOS&quot;+-+from+http://b2l.me/2dnks" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/+&quot;Problema+de+la+deriva+en+NXT+y+LeJOS&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;selection=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;type=Article&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;body=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;u=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;b=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;desc=EnglishUno%20de%20los%20problemas%20que%20tienen%20cualquier%20sistema%20que%20tenga%20que%20desplazarse%2C%20y%20en%20particular%20un%20robot%20NXT%20m%C3%B3vil%2C%20es%20la%20deriva%20en%20la%20navegaci%C3%B3n.%20La%20deriva%20es%20el%20desv%C3%ADo%20de%20la%20trayectoria%20real%20respecto%20de%20la%20trayectoria%20prevista%2C%20y%20se%20debe%20a%20diversos%20factores.%20Cuanto%20menos%20deriva%20tenga%20un%20rob" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Problema+de+la+deriva+en+NXT+y+LeJOS&amp;url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/&amp;title=Problema+de+la+deriva+en+NXT+y+LeJOS" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/06/problema-deriva-nxt-lejos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>JCreator para LeJOS NXJ</title>
		<link>http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/</link>
		<comments>http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/#comments</comments>
		<pubDate>Mon, 31 May 2010 12:01:34 +0000</pubDate>
		<dc:creator>electricbricks</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[JCreator]]></category>
		<category><![CDATA[NXT]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=7625</guid>
		<description><![CDATA[
English

Ya hemos comentado en otros artículos la forma de instalar dos entornos de desarrollo para trabajar con LeJOS, el Eclipse y NetBeans. JCreator es otro entorno de desarrollo que incorpora un amplia abanico de funcionalidades. Matthias Paul Scholz, uno de los desarrolladores del proyecto LeJOS NXJ, la plataforma Java para el NXT, ha creado un [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/05/jcreator-para-lejos-nxj/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/java-150x150.jpg" alt="" title="" width="150" height="150" class="alignleft size-thumbnail wp-image-7630" />Ya hemos comentado en otros artículos la forma de instalar dos entornos de desarrollo para trabajar con LeJOS, el Eclipse y NetBeans. JCreator es otro entorno de desarrollo que incorpora un amplia abanico de funcionalidades. Matthias Paul Scholz, uno de los desarrolladores del proyecto LeJOS NXJ, la plataforma Java para el NXT, ha creado un pequeño tutorial sobre cómo poner a punto JCreator para poder emplearlo con LeJOS NXJ.<span id="more-7625"></span></p>
<p><a href="http://www.jcreator.com/">JCreator</a> es otro entorno de programación para Java que tiene tanto una versión comercial como otra gratuita y que puede conseguirse en la sección de <a href="http://www.jcreator.org/download.htm">descargas</a>. Matthias Paul Scholz ha creado un tutorial que explica el proceso completo de instalación, e incluye los siguientes apartados:</p>
<ul>
<li>Instalación de Java.</li>
<li>Instalación de LeJOS NXJ.</li>
<li>Instalación de JCreator.</li>
<li>Cómo configurar JCreator para su uso con LeJOS NXJ.</li>
<li>Creación de un proyecto, así como de una pequeña aplicación LeJOS NXJ.</li>
<li>Descarga de un programa LeJOS al ladrillo NXT, así como del proceso de escritura del firmware.</li>
</ul>
<p>Podeis descargar el tutorial (en inglés) de <a href="http://mynxt.matthiaspaulscholz.eu/tools/JCreator_with_NXT_and_leJOS.pdf">Setting up JCreator LE for programming the NXT</a>.</p>
<p>Información adicional:</p>
<ul>
<li>Instalación de Eclipse en Windows en el artículo sobre la <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-2/">instalación de LeJOS en Windows</a>.</li>
<li>Idem sobre <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-3/">Instalación de LeJOS en Linux</a>.</li>
<li><a href="NetBeans, opción gráfica para LeJOS">NetBeans</a>.
</ul>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;Title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;desc=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;submitHeadline=JCreator+para+LeJOS+NXJ&amp;submitSummary=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;t=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;t=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=JCreator+para+LeJOS+NXJ+-+http://b2l.me/x5r66+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22JCreator%20para%20LeJOS%20NXJ%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22JCreator%20para%20LeJOS%20NXJ%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;summary=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;h=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS&amp;posturl=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;posttitle=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;bm_description=JCreator+para+LeJOS+NXJ&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=JCreator+para+LeJOS+NXJ&amp;link=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=JCreator+para+LeJOS+NXJ&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F05%2Fjcreator-para-lejos-nxj%2F&amp;desc=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;body=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;lname=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;u_data[name]=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;bmtitle=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;t=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;body=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;T=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;JCreator+para+LeJOS+NXJ&quot;+-+from+http://b2l.me/x5r66" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/+&quot;JCreator+para+LeJOS+NXJ&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;selection=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;type=Article&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;body=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=JCreator+para+LeJOS+NXJ&amp;u=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;b=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;desc=EnglishYa%20hemos%20comentado%20en%20otros%20art%C3%ADculos%20la%20forma%20de%20instalar%20dos%20entornos%20de%20desarrollo%20para%20trabajar%20con%20LeJOS%2C%20el%20Eclipse%20y%20NetBeans.%20JCreator%20es%20otro%20entorno%20de%20desarrollo%20que%20incorpora%20un%20amplia%20abanico%20de%20funcionalidades.%20Matthias%20Paul%20Scholz%2C%20uno%20de%20los%20desarrolladores%20del%20proyecto%20LeJOS" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=JCreator+para+LeJOS+NXJ&amp;url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/&amp;title=JCreator+para+LeJOS+NXJ" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/05/jcreator-para-lejos-nxj/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vehículos de Braitenberg en LeJOS</title>
		<link>http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/</link>
		<comments>http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/#comments</comments>
		<pubDate>Fri, 30 Apr 2010 22:01:05 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[Braitenberg]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=6781</guid>
		<description><![CDATA[
English

Tal y como vimos en el artículo de RobotC Vehículos de Braitenberg en RobotC los vehículos de Braitenberg fueron concebidos por el investigador Italo-Autriaco Valentino Braitenberg para ilustrar de manera evolutiva las habilidades de agentes simples. En el artículo de hoy implementaré un par de comportamientos de vehículos de Braitenberg en LeJOS
Repaso a los ejemplos [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/05/tutorial-lejos-braitenberg-15/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/lateral4-150x114.jpg" alt="Lateral" title="Lateral" width="150" height="114" class="alignleft size-thumbnail wp-image-6796" />Tal y como vimos en el artículo de RobotC <a href="http://blog.electricbricks.com/2010/04/tutorial-braitenberg-robotc-nxt-lego-11/">Vehículos de Braitenberg en RobotC </a>los vehículos de Braitenberg fueron concebidos por el investigador Italo-Autriaco Valentino Braitenberg para ilustrar de manera evolutiva las habilidades de agentes simples. En el artículo de hoy implementaré un par de comportamientos de vehículos de Braitenberg en LeJOS<span id="more-6781"></span></p>
<p><strong>Repaso a los ejemplos de vehículos de Braitenberg:</strong></p>
<p>Repetiré aquí los ejemplos más claros y sencillos de vehículos de Braitenberg :</p>
<p>Un primer agente tiene un sensor detector de luz que estimula directamente a su única rueda, implementado las siguientes reglas:</p>
<ul>
<li>Más luz produce un movimiento más rápido.</li>
<li>Menos luz produce un movimiento más lento.</li>
<li>La oscuridad produce que se quede quieto.</li>
</ul>
<p>Este comportamiento puede ser interpretado como una criatura que teme a la luz y que se mueve rápido para salir de ella. Su objetivo es encontrar un hueco oscuro en el que ocultarse.</p>
<p>Un segundo agente algo más complicado tiene dos sensores de luz (izquierdo y derecho), cada uno estimulando a la rueda de su mismo lado. Obedece las siguientes reglas:</p>
<ul>
<li>Más luz en la derecha → la rueda derecha gira más rapido → gira hacia la izquierda, fuera de la luz.</li>
<li>Más luz en la izquierda → la rueda izquierda gira más rapido → gira hacia la derecha, fuera de la luz.</li>
</ul>
<p>Este es más eficiente como un comportamiento para escapar de la fuente de luz, ya que la criatura puede moverse en diferentes  direcciones, y tiene a orientarse hacia la dirección desde la que procede menos luz.</p>
<p>En otra variación las conexiones son negativas o innovadoras:</p>
<ul>
<li>Más luz en la derecha → la rueda derecha gira más lento → gira hacia la derecha, hacia la luz.</li>
<li>Más luz en la izquierda → la rueda izquierda gira más lento → gira hacia la izquierda, hacia la luz.</li>
</ul>
<p>En este caso el agente huye de la oscuridad, moviéndose hacia la luz.</p>
<p><strong>Configuración de motor y sensores de luz:</strong></p>
<p>Aunque hasta ahora hemos estado usando los motores en LeJOS de la manera genérica (accediendo al atributo A, B, o C de la clase <em>Motor</em>), es posible definir los motores con el nombre que elijamos, los cual nos facilitará las cosas a la hora de manejarlos. Para ello usaremos el método constructor de la clase de objetos <em>Motor</em>. Esto se hace de la siguiente manera:</p>
<p><strong>Motor <em>nombre_motor</em> = new Motor(MotorPort.<em>puerto</em>):</strong> Creamos un objeto de la clase <em>Motor</em>, cuyo su nombre será el indicado, y que estará anclado al puerto que hayamos elegido(A, B o C).</p>
<p>Respecto a los sensores de luz es importante decir que cuando se declaran (tal y como vimos en el <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-6/">artículo 6</a> de la serie LeJOS) están en modo activo (con el <a href="http://es.wikipedia.org/wiki/Diodo_emisor_de_luz">LED </a>encendido. En estos programas no nos interesa que tengan el LED encendido, ya que nos interfiere a la hora de captar la luz ambiente. Para activarlo o desactivarlo existe el siguiente método de la clase <em>LightSensor</em>:</p>
<p><strong>void setFloodlight(boolean encender):</strong> Enciende el LED en caso de que encender sea <em>true</em>, y lo apaga en caso de que encender sea <em>false</em>.</p>
<p>Con estos dos apuntes ya podemos programar nuestro vehículo de Braitenberg.</p>
<p><strong>Vehículo de Braitenberg en LeJOS:</strong></p>
<p>Como ya habréis supuesto los vehículos de Braitenberg no son problemas muy complejos de resolver con LeJOS. En este caso vamos a implementar el segundo comportamiento: </p>
<ul>
<li>Más luz en la derecha → la rueda derecha gira más rapido → gira hacia la izquierda, fuera de la luz.</li>
<li>Más luz en la izquierda → la rueda izquierda gira más rapido → gira hacia la derecha, fuera de la luz.</li>
</ul>
<p>Por tanto será un robot estilo cucaracha, que huye de la luz y se refugia en la oscuridad. Necesitaremos construir el robot con dos sensores de luz y dos motores. Es importante que los sensores de luz miren más o menos hacia los lados y no hacia adelante, o no podremos medir bien la cantidad de luz que proviene de cada lado. Con un ángulo de 45º es suficiente, como el robot que hemos construido nosotros:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Frontal2-500x488.jpg" alt="Frontal" title="Frontal" width="500" height="488" class="aligncenter size-large wp-image-6797" /></p>
<p>A la hora de configurar los sensores de luz es importante que los pongáis en modo pasivo como os indiqué en el apartado anterior del artículo, para que la luz del LED no nos entorpezca en nuestro cometido. Ponedle nombres intuitivos a los motores y a los sensores, como motorDerecho, sensorIzquierdo&#8230; Así se os hará mucho más fácil programarlos, y ver qué es lo que falla en caso de problemas. El código del programa sería así:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Button</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LCD</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LightSensor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Motor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.MotorPort</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.SensorPort</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Braitenberg <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; &nbsp; LightSensor sluzizq <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> LightSensor<span style="color: #009900;">&#40;</span>SensorPort.<span style="color: #006633;">S4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LightSensor sluzder <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> LightSensor<span style="color: #009900;">&#40;</span>SensorPort.<span style="color: #006633;">S1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor motorizq <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Motor<span style="color: #009900;">&#40;</span>MotorPort.<span style="color: #006633;">C</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor motorder <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Motor<span style="color: #009900;">&#40;</span>MotorPort.<span style="color: #006633;">A</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> umbral <span style="color: #339933;">=</span> <span style="color: #cc66cc;">18</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; sluzizq.<span style="color: #006633;">setFloodlight</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; sluzder.<span style="color: #006633;">setFloodlight</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; motorizq.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; motorder.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Valor de sluzizq:&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Valor de sluzder:&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">while</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #003399;">Button</span>.<span style="color: #006633;">ESCAPE</span>.<span style="color: #006633;">isPressed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawInt</span><span style="color: #009900;">&#40;</span>sluzizq.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #cc66cc;">5</span>, <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawInt</span><span style="color: #009900;">&#40;</span>sluzder.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #cc66cc;">5</span>, <span style="color: #cc66cc;">7</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>sluzder.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&gt;</span> umbral<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; motorder.<span style="color: #006633;">setSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>sluzder.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>sluzder.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; motorder.<span style="color: #006633;">setSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>sluzizq.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&gt;</span> umbral<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; motorizq.<span style="color: #006633;">setSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>sluzizq.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>sluzizq.<span style="color: #006633;">readValue</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #cc66cc;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; motorizq.<span style="color: #006633;">setSpeed</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Una pequeña explicación de algunas líneas:</p>
<p><strong>8 -</strong> Aquí definimos un valor umbral de oscuridad, para el que creamos que nuestro robot-cucaracha está en un sitio suficientemente oscuro como para sentirse seguro y pararse. Este valor lo usaremos posteriormente en las líneas28 y 33.</p>
<p><strong>18 y 19 -</strong> Recordad apagar los LED.</p>
<p><strong>29 y 34 -</strong> Pondremos que la velocidad de los motores sea directamente proporcional a la cantidad de luz que recibimos, tal y como dice Braitenberg. En este caso será igual al cuadrado del valor leído menos un número que elijamos nosotros para moderar la velocidad, por ejemplo 200 o 300.</p>
<p>Y aquí tenéis este vídeo que nos ha quedado bastante chulo:</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/efz4d1zXqag&#038;hl=es_ES&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/efz4d1zXqag&#038;hl=es_ES&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="400"></embed></object></p>
<p>Ante cualquier duda podéis visitar el <a href="http://www.electricbricks.com/forum/">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;Title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;desc=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;submitHeadline=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;submitSummary=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;t=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;t=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Veh%C3%ADculos+de+Braitenberg+en+LeJOS+-+http://b2l.me/r6sk2+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Veh%C3%ADculos%20de%20Braitenberg%20en%20LeJOS%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Veh%C3%ADculos%20de%20Braitenberg%20en%20LeJOS%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;summary=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;h=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un&amp;posturl=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;posttitle=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;bm_description=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;link=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F05%2Ftutorial-lejos-braitenberg-15%2F&amp;desc=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;body=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;lname=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;u_data[name]=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;bmtitle=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;t=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;body=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;T=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Veh%C3%ADculos+de+Braitenberg+en+LeJOS&quot;+-+from+http://b2l.me/r6sk2" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/+&quot;Veh%C3%ADculos+de+Braitenberg+en+LeJOS&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;selection=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;type=Article&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;body=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;u=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;b=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;desc=EnglishTal%20y%20como%20vimos%20en%20el%20art%C3%ADculo%20de%20RobotC%20Veh%C3%ADculos%20de%20Braitenberg%20en%20RobotC%20los%20veh%C3%ADculos%20de%20Braitenberg%20fueron%20concebidos%20por%20el%20investigador%20Italo-Autriaco%20Valentino%20Braitenberg%20para%20ilustrar%20de%20manera%20evolutiva%20las%20habilidades%20de%20agentes%20simples.%20En%20el%20art%C3%ADculo%20de%20hoy%20implementar%C3%A9%20un" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS&amp;url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/&amp;title=Veh%C3%ADculos+de+Braitenberg+en+LeJOS" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/05/tutorial-lejos-braitenberg-15/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>NetBeans, opción gráfica para LeJOS</title>
		<link>http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/</link>
		<comments>http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 14:59:27 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=6459</guid>
		<description><![CDATA[
Netbeans es una plataforma que permite la creación de interfaces gráficas, y que es completamente compatible con LeJOS. Existe de hecho un plugin (complemento) de LeJOS para NetBeans, y además las carpetas de ejemplos de LeJOS viene ya preparadas para su compilación y ejecución en NetBeans. Gracias a NetBeans se pueden hacer aplicaciones como un [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch"></ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/netbeans_logo_ok-300x150-150x82.jpg" alt="Netbeans" title="Netbeans" width="150" height="82" class="alignleft size-thumbnail wp-image-6420" />Netbeans es una plataforma que permite la creación de interfaces gráficas, y que es completamente compatible con LeJOS. Existe de hecho un plugin (complemento) de LeJOS para NetBeans, y además las carpetas de ejemplos de LeJOS viene ya preparadas para su compilación y ejecución en NetBeans. Gracias a NetBeans se pueden hacer aplicaciones como un mando radio-control para manejar nuestro robot desde el ordenador.<span id="more-6459"></span> </p>
<p><strong>¿Qué es NetBeans?:</strong></p>
<p>La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un conjunto de componentes de software llamados módulos. Un módulo es un archivo Java que contiene clases de java escritas para interactuar con las APIs (<a href="http://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones">interfaces de programación de aplicaciones</a>) de NetBeans y un archivo especial (manifest file) que lo identifica como módulo. Las aplicaciones construidas a partir de módulos pueden ser extendidas agregándole nuevos módulos. Debido a que los módulos pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fácilmente por otros desarrolladores de software.</p>
<p><strong>Compatibilizar NetBeans con LeJOS:</strong></p>
<p>Lo primero que necesitamos es descargar e instalar NetBeans, para ello iremos a la página de descargas de NetBeans y nos descargaremos el paquete de <strong>Java</strong>, que contiene ya todo lo necesario para desarrollar nuestras aplicaciones:</p>
<p><a href="http://netbeans.org/downloads/index.html">Página de descargas de NetBeans</a></p>
<p>Una vez descargado e instalado empezaremos por abrir y probar los programas de ejemplo que vienen ya en la carpeta de ejemplo de LeJOS preparados para su uso en NetBeans. Para ello elegimos <em>Archivo, Abrir Proyecto&#8230; </em>:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans1.JPG" alt="NetBeans1" title="NetBeans1" width="320" height="131" class="aligncenter size-full wp-image-6406" /></p>
<p>y buscamos las carpetas samples y pcsamples que estarán en la carpeta de ejemplos de LeJOS (por defecto será <em>&#8230;\Mis Documentos\\leJOSNXJProjects </em>. Una vez abiertos deberia quedar algo así:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans2.JPG" alt="NetBeans2" title="NetBeans2" width="397" height="487" class="aligncenter size-full wp-image-6405" /></p>
<p>Ahora vamos a probar uno normal y otro de PC. Si os dais cuenta dentro de cada carpeta de proyecto hay un archivo llamado <em>build.xml.</em> Si clickeaís con el botón derecho en él y le dais a Ejecutar destino veréis que os muestra todas las opciones de de compilación, linkado, subida &#8230; tal y como podéis ver en la imagen anterior.</p>
<p>Vamos a probar un programa de samples, el BlueStats por ejemplo. Es importante que tengáis el robot conectado por USB, para saber como podéis revisar mis <a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-10/">artículos anteriores sobre Bluetooth</a>. Hacéis click derecho en el <em>build.xml</em> y le dais a a <em>Ejecutar destino, uploadandrun</em>. El programa entonces se compilará, linkará, subirá y ejecutará en el NXT. Este programa lo que hace es mostrarte las estadísticas de la conexión Bluetooth con el NXT.</p>
<p>Ahora probaremos otro de los de <em>pcsamples</em>, el que se llama TachoCount. Los programas de <em>pcsamples </em>funcionan de forma diferente, primero necesitas hacer click derecho en el <em>build.xml</em> de la carpeta global de <em>pcsamples</em>, y le dais a <em>Ejecutar destino, build</em>. Una vez hecho esto os metéis en la carpeta individual del programa (TachoCount en este caso) y le dais <em>click derecho, Ejecutar archivo</em>:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans3.JPG" alt="NetBeans3" title="NetBeans3" width="354" height="332" class="aligncenter size-full wp-image-6407" /></p>
<p>Para este programa necesitaréis un motor en el puerto A y otro en el puerto C. Lo que hace dicho programa es mostrar el valor del tacómetro de A y C, rotar luego cada motor, y finalmente volver a mostrar el valor de los tacómetros.</p>
<p><strong>Instalación del Plugin de LeJOS:</strong></p>
<p>Aunque mi recomendación es que creéis vuestros programas dentro de carpetas de programas de ejemplos, ya que tenéis asegurado que se puedan compilar y ejecutar bien, es posible crear nuestros propios programas por separado, y para ello necesitamos el plugin de LeJOS para NetBeans. Para instalar dicho plugin tenéis que hacer lo siguiente: meteros en <em>Herramientas, Complementos</em> y en la ventana que os sale darle a <em>Descargado, Añadir Plugin&#8230;</em> y buscáis el archivo <em>NXJPlugin/build/nxjplugin.nbm</em> que esta en la carpeta de ejemplos de LeJOS:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans5.JPG" alt="NetBeans5" title="NetBeans5" width="376" height="282" class="aligncenter size-full wp-image-6408" /></p>
<p>Le dais a instalar, y decís que si a todo. Una vez instalado podremos crear Proyectos de LeJOS de la siguiente manera: le dais a <em>Archivo, Proyecto Nuevo, Ejemplos, NXJProject</em>:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans4-500x245.jpg" alt="NetBeans4" title="NetBeans4" width="500" height="245" class="aligncenter size-large wp-image-6409" /></p>
<p>Es importante que creéis el proyecto en la carpeta de ejemplos de LeJOS. Una vez finalizada la creación tendremos un proyecto plantilla con el programa <em>HelloWorld.java </em>y el archivo <em>build.xml</em> con las opciones de compilación y ejecución. Es importante que añadáis la ruta de las librerías de LeJOS. Para ello haced click derecho en vuestro proyecto<em>, Propiedades&#8230;, Ruta de clases de fuentes Java, Añadir JAR/Carpeta&#8230;</em> y seleccionas <em>classes.jar</em> de vuestra carpeta de instalación de LeJOS (por defecto estará en <em>C:\Archivos de programa\leJOS NXJ\lib</em>:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans6.JPG" alt="NetBeans6" title="NetBeans6" width="459" height="400" class="aligncenter size-full wp-image-6411" /></p>
<p>También deberéis variar las rutas escritas dentro del archivo <em>build.xml</em> para que coincidan con las de vuestra instalación.</p>
<p>Una vez hecho todo esto podréis modificar esta plantilla como os plazca para crear vuestro propio programa. Daos cuenta que no se pueden hacer programas para pc de LeJOS mediante este método, solo los de NXT.</p>
<p><strong>¿Cómo crear un programa para LeJOS con interfaz gráfica?: Un pequeño control remoto</strong></p>
<p>Para crear un programa con interfaz gráfica usaremos una carpeta ya preparada de las de ejemplos para PC, como por ejemplo la de TachoCount. En ella crearemos lo que se denomina un Form, para lo que haremos click derecho en la carpeta TachoCount, Nuevo.., Formularios de Intefaz gráfica de Swing, Formulario JDialog:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans7-500x242.jpg" alt="NetBeans7" title="NetBeans7" width="500" height="242" class="aligncenter size-large wp-image-6410" /></p>
<p>Una vez tengamos el form le pondremos varios botones: Uno para conectar, otro para desconectar, otro para mover el motor A, otro para el C, y otros dos para pararlos. Para añadir botones solo los tenéis que arrastrar de la paleta:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans8-500x146.jpg" alt="NetBeans8" title="NetBeans8" width="500" height="146" class="aligncenter size-large wp-image-6412" /></p>
<p>Y podéis renombrarlos en Propiedades después de seleccionarlo, que se encuentra debajo de la paleta:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans9.JPG" alt="NetBeans9" title="NetBeans9" width="279" height="298" class="aligncenter size-full wp-image-6413" /></p>
<p>Una vez añadidos los botones vamos a modificar el código. Para ello darle a <em>Fuente</em>:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans11.JPG" alt="NetBeans11" title="NetBeans11" width="252" height="95" class="aligncenter size-full wp-image-6415" /></p>
<p>Y lo primero que pondremos son la importación librerías que necesitamos (podéis copiar las de TachoCount). Abajo del todo nos crearemos también la variable privada <em>conn</em> que usaremos como conexión:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">private</span> &nbsp;NXTConnector conn <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> NXTConnector<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Una vez hecho esto volver a darle a <em>Diseño</em>. Para poner que hace cada botón al clickear en el damos click derecho en el <em>botón, Eventos, Action, actionPerformed&#8230;</em>; esto creará un método y nos llevará a<em> Fuente </em>para que lo programemos. A continuación os pondré el código para cada botón:</p>
<p><strong>Conectar:</strong></p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> jButton1ActionPerformed<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #003399;">ActionEvent</span> evt<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO add your handling code here:</span><br />
<br />
&nbsp; &nbsp; conn.<span style="color: #006633;">addLogListener</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> NXTCommLogListener<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> logEvent<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> message<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>message<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> logEvent<span style="color: #009900;">&#40;</span><span style="color: #003399;">Throwable</span> throwable<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>throwable.<span style="color: #006633;">getMessage</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; conn.<span style="color: #006633;">setDebug</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>conn.<span style="color: #006633;">connectTo</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;NXTTorna&quot;</span>, NXTComm.<span style="color: #006633;">LCP</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Fallo de conexiónt&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>14 &#8211; </strong>Recordad poner el nombre de vuestro NXT (NXTTorna es el nombre del que estoy usando yo).</p>
<p><strong>Desconectar:</strong></p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> jButton4ActionPerformed<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #003399;">ActionEvent</span> evt<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO add your handling code here:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; conn.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><span style="color: #003399;">Exception</span> e<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>Motor A:</strong></p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> jButton2ActionPerformed<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #003399;">ActionEvent</span> evt<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO add your handling code here:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>Motor C:</strong></p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> jButton3ActionPerformed<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #003399;">ActionEvent</span> evt<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO add your handling code here:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>Parar A:</strong></p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> jButton5ActionPerformed<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #003399;">ActionEvent</span> evt<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO add your handling code here:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>Parar C:</strong></p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> jButton6ActionPerformed<span style="color: #009900;">&#40;</span>java.<span style="color: #006633;">awt</span>.<span style="color: #006633;">event</span>.<span style="color: #003399;">ActionEvent</span> evt<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// TODO add your handling code here:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">C</span>.<span style="color: #006633;">stop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Para compilar recordad hacer click derecho en el <em>build.xml</em> de la carpeta global de <em>pcsamples</em>, y darle a <em>Ejecutar destino, build</em>. Una vez hecho esto os metéis en la carpeta individual del programa y le dais <em>click derecho, Ejecutar archivo</em> al Form. Os debería salir una ventana de este estilo:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/NetBeans10.JPG" alt="NetBeans10" title="NetBeans10" width="431" height="344" class="aligncenter size-full wp-image-6414" /></p>
<p>Con la que podéis controlar a vuestro robot. </p>
<p>Sé que el artículo de hoy es extenso y complicado, así que os pido que si tenéis alguna duda por favor escribáis en el <a href="http://www.electricbricks.com/forum/index.php?topic=385.0">foro</a>.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;Title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;desc=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;submitHeadline=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;submitSummary=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;t=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;t=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS+-+http://b2l.me/pmcax+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22NetBeans%2C%20opci%C3%B3n%20gr%C3%A1fica%20para%20LeJOS%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22NetBeans%2C%20opci%C3%B3n%20gr%C3%A1fica%20para%20LeJOS%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;summary=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;h=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra&amp;posturl=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;posttitle=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;bm_description=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;link=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F04%2Ftutorial-netbeans-lejos-nxt-14%2F&amp;desc=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;body=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;lname=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;u_data[name]=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;bmtitle=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;t=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;body=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;T=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&quot;+-+from+http://b2l.me/pmcax" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/+&quot;NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;selection=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;type=Article&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;body=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;u=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;b=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;desc=Netbeans%20es%20una%20plataforma%20que%20permite%20la%20creaci%C3%B3n%20de%20interfaces%20gr%C3%A1ficas%2C%20y%20que%20es%20completamente%20compatible%20con%20LeJOS.%20Existe%20de%20hecho%20un%20plugin%20%28complemento%29%20de%20LeJOS%20para%20NetBeans%2C%20y%20adem%C3%A1s%20las%20carpetas%20de%20ejemplos%20de%20LeJOS%20viene%20ya%20preparadas%20para%20su%20compilaci%C3%B3n%20y%20ejecuci%C3%B3n%20en%20NetBeans.%20Gra" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS&amp;url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/&amp;title=NetBeans%2C+opci%C3%B3n+gr%C3%A1fica+para+LeJOS" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/04/tutorial-netbeans-lejos-nxt-14/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Manejo Remoto simultáneo de varios NXT desde PC</title>
		<link>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/</link>
		<comments>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 22:01:34 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[bluetooth]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=6380</guid>
		<description><![CDATA[
English

En el artículo anterior vimos que es posible comunicar PC y NXT gracias a las librerías de LeJOS. Hoy vamos a mostrar cómo conectar y manejar varios NXT simultáneamente, y la diferencia respecto a manejar varios NXT desde otro NXT, como su mucha menor latencia.
Comunicación con el PC:
Como puse en el artículo anterior, para comunicar [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch">
<li class="lang_switch"><a href="http://blog.electricbricks.com/en/2010/04/tutorial-bluetooth-nxt-lejos-13/"><img src="http://blog.electricbricks.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Robots_gemelos_-150x56.jpg" alt="Robots_gemelos_" title="Robots_gemelos_" width="150" height="56" class="alignleft size-thumbnail wp-image-6385" />En el artículo anterior vimos que es posible comunicar PC y NXT gracias a las librerías de LeJOS. Hoy vamos a mostrar cómo conectar y manejar varios NXT simultáneamente, y la diferencia respecto a manejar varios NXT desde otro NXT, como su mucha menor latencia.<span id="more-6380"></span></p>
<p><strong>Comunicación con el PC:</strong></p>
<p>Como puse en el <a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/">artículo anterior</a>, para comunicar cualquier dispositivo Bluetooth con el ordenador necesitamos un adaptador Bluetooth para el ordenador, que puede estar integrado en la placa base, o se puede adquirir por separado. Para ver cómo echadle un vistazo a dicho artículo.</p>
<p>Las ventajas de conectar varios NXT a un PC en lugar de a otro NXT maestro son claras: no tenemos problemas de latencias tan altas como las comunicaciones NXT-NXT, tenemos un número prácticamente ilimitado de conexiones en lugar de las tres máximas que acepta un NXT, y además la potencia de cálculo de un ordenador no es comparable con la de un NXT. Podríamos incluso crear un interfaz gráfico para manejar un NXT radio-control desde el PC.</p>
<p>Lo mejor del tipo de comunicaciones que vamos a usar es que no necesitamos subir ningún programa al NXT, todo lo hacemos desde el PC, lo cual nos facilita muchas cosas, desde las comunicaciones hasta la velocidad para realizar cálculos complejos. </p>
<p>En el artículo anterior ya mostré qué métodos se utilizan para realizar la conexión, por tanto si queremos conectarnos con varios NXT sólo tendremos que repetir el proceso de conexión varias veces, asegurándonos de que todos los NXT se han conectado correctamente con el PC. Es importante dejar un retardo después de realizar varias conexiones, de forma que nos aseguraremos que todos están listos para recibir ordenes.</p>
<p>Una vez estén todas las conexiones listas podemos dar ordenes a uno u otro NXT indistintamente. Recordad que para elegir a cuál vais a dar una instrucción es necesario usar antes el método:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>nombre_conexión.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>poniendo en nombre_conexión el nombre que le hayamos dado a la conexión que queramos utilizar (Ej.: conn1, conn3, &#8230;). Usad este método cada vez que queráis cambiar el objetivo de vuestras ordenes. Por ejemplo, si quiero mover el motor A con dos NXT, cuyas conexiones son <em>conn1</em> y <em>conn2</em> sería:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn1.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Es <strong>MUY</strong> importante que al final del programa cerréis las conexiones con el método <em>close()</em> o el PC no os conectará con los NXT la segunda vez que queráis usar el programa (tendrías que apagar y encender los NXT en su lugar).</p>
<p><strong>Programa de ejemplo:</strong></p>
<p>En el programa de ejemplo vamos a hacer que el ordenador ordene a dos NXT moverse simultáneamente describiendo un cuadrado. Es importante que la forma de los robots sea la misma para que quede bien, ya que si la distancia entre las ruedas es mayor, o uno pesa más que otro ya no se moverían igual. </p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Robots_gemelos2_-500x432.jpg" alt="Robots_gemelos2_" title="Robots_gemelos2_" width="500" height="432" class="aligncenter size-large wp-image-6386" /></p>
<p>No estamos utilizando la librería <em>Navigation</em> de LeJOS, por lo que el cálculo del cuadrado lo hemos hecho aproximado, rotando los motores un número determinado de grados. Lo importante es que este programa consigue mover simultáneamente los dos robots desde el PC, cosa que sería imposible desde otro NXT debido a las latencias. El código sería el siguiente:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.remote.NXTCommand</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.pc.comm.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">/*<br />
ElectricBricks Entertainment S.L.<br />
Autor: Álvaro Peláez Santana<br />
Fecha: 13/04/2010<br />
Nombre: MultiControl <br />
Descripción: Programa que controla remotamente dos NXT desde un PC, <br />
ordenándoles que realicen una figura geométrica simultáneamente.<br />
*/</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MultiControl <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; NXTConnector conn <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> NXTConnector<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>conn.<span style="color: #006633;">connectTo</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;NXT&quot;</span>, NXTComm.<span style="color: #006633;">LCP</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexión Fallida&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTConnector conn2 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> NXTConnector<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>conn2.<span style="color: #006633;">connectTo</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;NXTTorna&quot;</span>, NXTComm.<span style="color: #006633;">LCP</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexión Fallida&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> x <span style="color: #339933;">=</span> <span style="color: #cc66cc;">720</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> y <span style="color: #339933;">=</span> <span style="color: #cc66cc;">520</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>y, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>y<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>y, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>y<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>y, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>y<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn2.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; conn.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; conn2.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span> <br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Este tampoco es un programa muy complejo, si tenéis alguna duda sobre el manejo de motores en LeJOS os recomiendo el <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-4/">este artículo</a>. Aquí os dejo un vídeo demostración del funcionamiento de este programa, que como podéis ver hace que los NXT se comporten de manera casí simultánea:</p>
<p><object width="500" height="390"><param name="movie" value="http://www.youtube.com/v/07qED0WJ92Y&#038;hl=es_ES&#038;fs=1&#038;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/07qED0WJ92Y&#038;hl=es_ES&#038;fs=1&#038;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="390"></embed></object></p>
<p>Por último, insistir en que si tenéis alguna duda posteadla en el <a href="http://www.electricbricks.com/forum/index.php?topic=383.00">foro</a>. Un saludo y hasta otro artículo.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;Title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;desc=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;submitHeadline=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;submitSummary=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;t=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;t=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC+-+http://b2l.me/pdj7w+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Manejo%20Remoto%20simult%C3%A1neo%20de%20varios%20NXT%20desde%20PC%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Manejo%20Remoto%20simult%C3%A1neo%20de%20varios%20NXT%20desde%20PC%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;summary=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;h=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A&amp;posturl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;posttitle=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;bm_description=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;link=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F04%2Ftutorial-bluetooth-nxt-lejos-13%2F&amp;desc=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;body=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;lname=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;u_data[name]=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;bmtitle=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;t=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;body=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;T=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&quot;+-+from+http://b2l.me/pdj7w" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/+&quot;Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;selection=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;type=Article&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;body=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;b=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;desc=EnglishEn%20el%20art%C3%ADculo%20anterior%20vimos%20que%20es%20posible%20comunicar%20PC%20y%20NXT%20gracias%20a%20las%20librer%C3%ADas%20de%20LeJOS.%20Hoy%20vamos%20a%20mostrar%20c%C3%B3mo%20conectar%20y%20manejar%20varios%20NXT%20simult%C3%A1neamente%2C%20y%20la%20diferencia%20respecto%20a%20manejar%20varios%20NXT%20desde%20otro%20NXT%2C%20como%20su%20mucha%20menor%20latencia.%0D%0A%0D%0AComunicaci%C3%B3n%20con%20el%20PC%3A" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/&amp;title=Manejo+Remoto+simult%C3%A1neo+de+varios+NXT+desde+PC" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-13/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Manejo Remoto del NXT desde PC: LeJOS</title>
		<link>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/</link>
		<comments>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 22:01:54 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[bluetooth]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=6351</guid>
		<description><![CDATA[
Hasta ahora hemos visto cómo comunicar varios NXT entre sí y enviar información de uno a otro, pero también es posible comunicarnos con un NXT mediante el PC, dándole instrucciones ya sea mediante mediante comandos, o creando un UI (Interfaz de Usuario) con botones y consola propia. Es cierto que estas comunicaciones son más complejas [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch"></ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/c0018_bluetooth_usb_01-150x150.jpg" alt="c0018_bluetooth_usb_01" title="c0018_bluetooth_usb_01" width="150" height="150" class="alignleft size-thumbnail wp-image-6363" />Hasta ahora hemos visto cómo comunicar varios NXT entre sí y enviar información de uno a otro, pero también es posible comunicarnos con un NXT mediante el PC, dándole instrucciones ya sea mediante mediante comandos, o creando un UI (<a href="http://es.wikipedia.org/wiki/Interfaz_de_usuario">Interfaz de Usuario</a>) con botones y consola propia. Es cierto que estas comunicaciones son más complejas que las que se realizan habitualmente entre los propios NXT, pero también son muchas las posibilidades que nos proporcionan.<span id="more-6351"></span></p>
<p><strong>¿Cómo comunicarnos con el PC?:</strong></p>
<p>Para comunicar cualquier dispositivo Bluetooth con el ordenador necesitamos un adaptador bluetooth para el ordenador, que puede estar integrado en la placa base, o se puede adquirir por separado (normalmente del tipo mochila USB). Si ya tenéis uno seguramente lo habréis usado alguna vez para descargar programas al NXT en vez de usar el USB.</p>
<p>Una vez tengamos un adaptador USB es importante agregar el dispositivo Bluetooth a la lista de &#8220;Mis sitios Bluetooth&#8221;. Para ello encender el NXT, hacer doble click en el simbolo de Bluetooth de la barra de herramientas de Windows y en el menú que se despliega darle a &#8220;Agregar dispositivo Bluetooth&#8221;. Una vez lo haya encontrado lo seleccionamos, metemos la clave del NXT (por defecto 1234) y nos conectamos. Llegado a este paso ya estaremos listos para la comunicación entre el PC y el NXT.</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/ConBluetooth.JPG" alt="ConBluetooth" title="ConBluetooth" width="481" height="637" class="aligncenter size-full wp-image-6357" /></p>
<p><strong>Comunicación entre PC y NXT en LeJOS:</strong><br />
Los protocolos de comunicación en LeJOS entre PC y NXT se encuentran en una libreria llamada <em>pccomm.jar</em>, que será la que en este caso tendremos que añadir a nuestro proyecto en lugar de <em>classes.jar</em> (Mirar artículo de <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-2/">instalación de LeJOS</a> para saber cómo). Luego tendremos que importar las siguiente librería dentro de nuestro programa:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.remote.NXTCommand</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.pc.comm.*</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Ahora podremos iniciar la comunicación. Para ello lo primero es crear un objeto de la clase NXTConnector:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">NXTConnector nombre_conexión <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> NXTConnector<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>De esta forma ya nos podemos conectar con el NXT: para ello utilizaremos el protocolo de comunicaciones de LEGO <strong>LCP </strong>(LEGO MINDSTORMS NXT Communications Protocol). El método sería el siguiente:</p>
<p><strong>boolean connectTo(&#8221;nombre_NXT&#8221;, NXTComm.LCP):</strong> Conecta el PC con el NXT usando el protocolo de comunicaciones de LEGO MINDSTORMS NXT. Devuelve <em>false </em>en caso de que la conexión falle.</p>
<p>Una vez conectado necesitaremos ser capaces de usar métodos como si de un programa normal se tratase, y que el ordenador los envíe y el NXT los entienda. Para ello usaremos siguiente método:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>nombre_conexión.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Este método es muy importante, porque traduce todos los comandos que se encuentran a continuación en el programa al LCP, para que puedan ser ejecutados en el dispositivo remoto, en este caso un NXT. Es decir, estas líneas de código que se están ejecutando en el PC están enviando los comandos que se encuentran en las siguientes líneas de programa, a continuación de ésta, al NXT para su ejecución en él. Una vez hecho esto ya podremos usar métodos como si de un programa de NXT se tratara como, por ejemplo, <em>Motor.A.forward()</em>. El último paso necesario es el de cerrar la conexión existente entre el PC y el NXT. Para ello haremos uso del método <em>close()</em>.</p>
<p><strong>Compilar programas para PC de LeJOS:</strong></p>
<p>Los programas en LeJOS que se van a ejecutar en el PC se compilan de forma especial (no con <em>javac</em> como la mayoría de programas en java). Si os acordáis de el artículo de <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-2/">instalación de LeJOS</a> explique cómo crear configuraciones propias de compilación y ejecución. De hecho en ese tutorial se enseña cómo crear las dos que después hemos usado para todos los programas.</p>
<p>Para compilar y ejecutar programas para PC en LeJOS necesitaremos crear otras dos nuevas configuraciones. Estás configuraciones son tal y como se muestran en las siguientes imágenes: </p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse2-500x326.jpg" alt="Eclipse2" title="Eclipse2" width="500" height="326" class="aligncenter size-large wp-image-6358" /></p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse3-500x334.jpg" alt="Eclipse3" title="Eclipse3" width="500" height="334" class="aligncenter size-large wp-image-6359" /></p>
<p>Por tanto las usaremos para compilar y ejecutar nuestro programa de PC en LeJOS.</p>
<p><strong>Programa de ejemplo:</strong></p>
<p>En el programa de ejemplo vamos ha hacer que el ordenador muestre por pantalla el valor del tacómetro (recordad el manejo del tacómetro en el <a href="http://blog.electricbricks.com/2010/03/tutorial-java-lejos-lego-mindstorms-nxt-7/">artículo sobre el sensor de ultrasonido</a>), ordene al NXT que gire el motor A y B, y una vez finalizado muestre los nuevos valores de los tacómetros. Este programa es bastante sencillo y se ve el funcionamiento básico del protocolo de comunicaciones, así como escribir información por la consola del PC (de eclipse en este caso). El código del programa es el siguiente:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.remote.NXTCommand</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.pc.comm.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ContadorGrados <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; NXTConnector conn <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> NXTConnector<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span>conn.<span style="color: #006633;">connectTo</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;NXT&quot;</span>, NXTComm.<span style="color: #006633;">LCP</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">err</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexión Fallida&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; NXTCommand.<span style="color: #006633;">getSingleton</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">setNXTComm</span><span style="color: #009900;">&#40;</span>conn.<span style="color: #006633;">getNXTComm</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">resetTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">resetTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Tacómetro A: &quot;</span> <span style="color: #339933;">+</span> Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">getTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Tacómetro B: &quot;</span> <span style="color: #339933;">+</span> Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">getTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3600</span>, <span style="color: #000066; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">rotate</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">3600</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Tacómetro A: &quot;</span> <span style="color: #339933;">+</span> Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">getTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Tacómetro B: &quot;</span> <span style="color: #339933;">+</span> Motor.<span style="color: #006633;">B</span>.<span style="color: #006633;">getTachoCount</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; conn.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span> <br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Ahora explicaré brevemente algunas líneas:</p>
<p><strong>10 -</strong> Si la conexión resulta fallida (! es el símbolo de negación en Java):</p>
<p><strong>11 -</strong> Muestra el mensaje de error <em>Conexión Fallida</em> por consola, y</p>
<p><strong>12 -</strong> Detiene la ejecución del programa (el hecho de salir con &#8220;1&#8243; significa que ha habido error en el prográma, es un estándar universal en programación.</p>
<p><strong>14 -</strong> Se trata de la línea más importante, que hemos explicado anteriormente, y es la que envía el código posterior a esta línea para su ejecución remota en el NXT al que nos hemos conectado previamente.</p>
<p><strong>18, 19, 23 y 24 -</strong> Esta es la manera universal de mostrar información por consola (pantalla) en Java. Entre comillas para las cadenas de texto, y usando el símbolo <strong>+</strong> para concatenar elementos.</p>
<p>Como veis no es un programa muy complejo, el resultado por consola debería quedar algo así:</p>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/Eclipse1.JPG" alt="Eclipse1" title="Eclipse1" width="369" height="194" class="aligncenter size-full wp-image-6360" /></p>
<p>Por último insistir en que si tenéis alguna duda posteadla en el <a href="http://www.electricbricks.com/forum/index.php?topic=381.0">foro</a>. Un saludo y hasta otro artículo.</p>


<!-- Begin SexyBookmarks Menu Code -->
<div class="sexy-bookmarks sexy-bookmarks-expand">
<ul class="socials">
		<li class="sexy-scriptstyle">
			<a href="http://scriptandstyle.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Submit this to Script &amp; Style">Submit this to Script &amp; Style</a>
		</li>
		<li class="sexy-blinklist">
			<a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;Title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Blinklist">Share this on Blinklist</a>
		</li>
		<li class="sexy-delicious">
			<a href="http://del.icio.us/post?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="sexy-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Digg this!">Digg this!</a>
		</li>
		<li class="sexy-diigo">
			<a href="http://www.diigo.com/post?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;desc=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="sexy-reddit">
			<a href="http://reddit.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="sexy-yahoobuzz">
			<a href="http://buzz.yahoo.com/submit/?submitUrl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;submitHeadline=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;submitSummary=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q&amp;submitCategory=science&amp;submitAssetType=text" rel="nofollow" title="Buzz up!">Buzz up!</a>
		</li>
		<li class="sexy-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="sexy-technorati">
			<a href="http://technorati.com/faves?add=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="sexy-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="sexy-myspace">
			<a href="http://www.myspace.com/Modules/PostTo/Pages/?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;t=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Post this to MySpace">Post this to MySpace</a>
		</li>
		<li class="sexy-designfloat">
			<a href="http://www.designfloat.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Submit this to DesignFloat">Submit this to DesignFloat</a>
		</li>
		<li class="sexy-facebook">
			<a href="http://www.facebook.com/share.php?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;t=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="sexy-twitter">
			<a href="http://twitter.com/home?status=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS+-+http://b2l.me/n9mq5+" rel="nofollow" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="sexy-mail">
			<a href="mailto:?subject=%22Manejo%20Remoto%20del%20NXT%20desde%20PC%3A%20LeJOS%22&amp;body=I%20thought%20this%20article%20might%20interest%20you.%0A%0A%22Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Email this to a friend?">Email this to a friend?</a>
		</li>
		<li class="sexy-tomuse">
			<a href="mailto:tips@tomuse.com?subject=New%20tip%20submitted%20via%20the%20SexyBookmarks%20Plugin!&amp;body=I%20would%20like%20to%20submit%20this%20article%3A%20%22Manejo%20Remoto%20del%20NXT%20desde%20PC%3A%20LeJOS%22%20for%20possible%20inclusion%20on%20ToMuse.%0A%0A%22Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q%22%0A%0AYou%20can%20read%20the%20full%20article%20here%3A%20http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Suggest this article to ToMuse">Suggest this article to ToMuse</a>
		</li>
		<li class="sexy-comfeed">
			<a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/feed" rel="nofollow" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="sexy-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;summary=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q&amp;source=electricBricks" rel="nofollow" title="Share this on Linkedin">Share this on Linkedin</a>
		</li>
		<li class="sexy-newsvine">
			<a href="http://www.newsvine.com/_tools/seed&amp;save?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;h=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Seed this on Newsvine">Seed this on Newsvine</a>
		</li>
		<li class="sexy-devmarks">
			<a href="http://devmarks.com/index.php?posttext=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q&amp;posturl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;posttitle=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Devmarks">Share this on Devmarks</a>
		</li>
		<li class="sexy-google">
			<a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Add this to Google Bookmarks">Add this to Google Bookmarks</a>
		</li>
		<li class="sexy-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;bm_description=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;plugin=sexybookmarks" rel="nofollow" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="sexy-izeby">
			<a href="http://izeby.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Add this to Izeby">Add this to Izeby</a>
		</li>
		<li class="sexy-tipd">
			<a href="http://tipd.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Share this on Tipd">Share this on Tipd</a>
		</li>
		<li class="sexy-pfbuzz">
			<a href="http://pfbuzz.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on PFBuzz">Share this on PFBuzz</a>
		</li>
		<li class="sexy-friendfeed">
			<a href="http://www.friendfeed.com/share?title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;link=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Share this on FriendFeed">Share this on FriendFeed</a>
		</li>
		<li class="sexy-blogmarks">
			<a href="http://blogmarks.net/my/new.php?mini=1&amp;simple=1&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Mark this on BlogMarks">Mark this on BlogMarks</a>
		</li>
		<li class="sexy-twittley">
			<a href="http://twittley.com/submit/?title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;url=http%3A%2F%2Fblog.electricbricks.com%2F2010%2F04%2Ftutorial-bluetooth-nxt-lejos-12%2F&amp;desc=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q&amp;pcat=Technology&amp;tags=" rel="nofollow" title="Submit this to Twittley">Submit this to Twittley</a>
		</li>
		<li class="sexy-fwisp">
			<a href="http://fwisp.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Share this on Fwisp">Share this on Fwisp</a>
		</li>
		<li class="sexy-designmoo">
			<a href="http://designmoo.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;body=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Moo this on DesignMoo!">Moo this on DesignMoo!</a>
		</li>
		<li class="sexy-bobrdobr">
			<a href="http://bobrdobr.ru/addext.html?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on BobrDobr">Share this on BobrDobr</a>
		</li>
		<li class="sexy-yandex">
			<a href="http://zakladki.yandex.ru/userarea/links/addfromfav.asp?bAddLink_x=1&amp;lurl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;lname=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Add this to Yandex.Bookmarks">Add this to Yandex.Bookmarks</a>
		</li>
		<li class="sexy-memoryru">
			<a href="http://memori.ru/link/?sm=1&amp;u_data[url]=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;u_data[name]=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Add this to Memory.ru">Add this to Memory.ru</a>
		</li>
		<li class="sexy-100zakladok">
			<a href="http://www.100zakladok.ru/save/?bmurl=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;bmtitle=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Add this to 100 bookmarks">Add this to 100 bookmarks</a>
		</li>
		<li class="sexy-moemesto">
			<a href="http://moemesto.ru/post.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Add this to MyPlace">Add this to MyPlace</a>
		</li>
		<li class="sexy-hackernews">
			<a href="http://news.ycombinator.com/submitlink?u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;t=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Submit this to Hacker News">Submit this to Hacker News</a>
		</li>
		<li class="sexy-printfriendly">
			<a href="http://www.printfriendly.com/print?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Send this page to Print Friendly">Send this page to Print Friendly</a>
		</li>
		<li class="sexy-designbump">
			<a href="http://designbump.com/submit?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;body=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Bump this on DesignBump">Bump this on DesignBump</a>
		</li>
		<li class="sexy-ning">
			<a href="http://bookmarks.ning.com/addItem.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;T=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Add this to Ning">Add this to Ning</a>
		</li>
		<li class="sexy-identica">
			<a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&quot;+-+from+http://b2l.me/n9mq5" rel="nofollow" title="Post this to Identica">Post this to Identica</a>
		</li>
		<li class="sexy-xerpi">
			<a href="http://www.xerpi.com/block/add_link_from_extension?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Save this to Xerpi">Save this to Xerpi</a>
		</li>
		<li class="sexy-wikio">
			<a href="http://www.wikio.com/sharethis?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Wikio">Share this on Wikio</a>
		</li>
		<li class="sexy-techmeme">
			<a href="http://twitter.com/home/?status=Tip+@Techmeme+http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/+&quot;Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&quot;" rel="nofollow" title="Tip this to TechMeme">Tip this to TechMeme</a>
		</li>
		<li class="sexy-sphinn">
			<a href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Sphinn this on Sphinn">Sphinn this on Sphinn</a>
		</li>
		<li class="sexy-posterous">
			<a href="http://posterous.com/share?linkto=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;selection=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Post this to Posterous">Post this to Posterous</a>
		</li>
		<li class="sexy-globalgrind">
			<a href="http://globalgrind.com/submission/submit.aspx?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;type=Article&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Grind this! on Global Grind">Grind this! on Global Grind</a>
		</li>
		<li class="sexy-pingfm">
			<a href="http://ping.fm/ref/?link=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;body=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Ping this on Ping.fm">Ping this on Ping.fm</a>
		</li>
		<li class="sexy-nujij">
			<a href="http://nujij.nl/jij.lynkx?t=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;u=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;b=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Submit this to NUjij">Submit this to NUjij</a>
		</li>
		<li class="sexy-ekudos">
			<a href="http://www.ekudos.nl/artikel/nieuw?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;desc=Hasta%20ahora%20hemos%20visto%20c%C3%B3mo%20comunicar%20varios%20NXT%20entre%20s%C3%AD%20y%20enviar%20informaci%C3%B3n%20de%20uno%20a%20otro%2C%20pero%20tambi%C3%A9n%20es%20posible%20comunicarnos%20con%20un%20NXT%20mediante%20el%20PC%2C%20d%C3%A1ndole%20instrucciones%20ya%20sea%20mediante%20mediante%20comandos%2C%20o%20creando%20un%20UI%20%28Interfaz%20de%20Usuario%29%20con%20botones%20y%20consola%20propia.%20Es%20cierto%20q" rel="nofollow" title="Submit this to eKudos">Submit this to eKudos</a>
		</li>
		<li class="sexy-netvouz">
			<a href="http://www.netvouz.com/action/submitBookmark?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;popup=no" rel="nofollow" title="Submit this to Netvouz">Submit this to Netvouz</a>
		</li>
		<li class="sexy-netvibes">
			<a href="http://www.netvibes.com/share?title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS&amp;url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/" rel="nofollow" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="sexy-fleck">
			<a href="http://beta3.fleck.com/bookmarklet.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Fleck">Share this on Fleck</a>
		</li>
		<li class="sexy-blogospherenews">
			<a href="http://www.blogospherenews.com/submit.php?url=http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/&amp;title=Manejo+Remoto+del+NXT+desde+PC%3A+LeJOS" rel="nofollow" title="Share this on Blogosphere News">Share this on Blogosphere News</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>
<!-- End SexyBookmarks Menu Code -->

]]></content:encoded>
			<wfw:commentRss>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-12/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[LeJOS]]></series:name>
	</item>
		<item>
		<title>Manejo del Bluetooth en LeJOS: Parte 2</title>
		<link>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-11/</link>
		<comments>http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-11/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 23:01:49 +0000</pubDate>
		<dc:creator>Alvaro</dc:creator>
				<category><![CDATA[LeJOS]]></category>
		<category><![CDATA[NXT]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[bluetooth]]></category>
		<category><![CDATA[robótica]]></category>

		<guid isPermaLink="false">http://blog.electricbricks.com/?p=6269</guid>
		<description><![CDATA[
En esta segunda parte del artículo voy a explicar la forma de conectar varios NXT por Bluetooth (más de dos), su utilidad, y sus limitaciones. Veremos principalmente el problema de la latencia (el tiempo que tarda en establecer conexión con otro NXT).
Manejo de Varias Conexiones:
En el artículo anterior vimos que es posible conectar varios NXT [...]]]></description>
			<content:encoded><![CDATA[<ul class="lang_switch"></ul>
<p><img src="http://blog.electricbricks.com/wp-content/uploads/IMG_2230_edit_-150x80.jpg" alt="IMG_2230_edit_" title="" width="150" height="80" class="alignleft size-thumbnail wp-image-6276" />En esta segunda parte del artículo voy a explicar la forma de conectar varios NXT por Bluetooth (más de dos), su utilidad, y sus limitaciones. Veremos principalmente el problema de la latencia (el tiempo que tarda en establecer conexión con otro NXT).<span id="more-6269"></span></p>
<p><strong>Manejo de Varias Conexiones:</strong></p>
<p>En el <a href="http://blog.electricbricks.com/2010/04/tutorial-bluetooth-nxt-lejos-10/">artículo anterior</a> vimos que es posible conectar varios NXT mediante el Bluetooth, sin embargo existe una limitación implícita: un ladrillo NXT sólo puede tener una conexión de maestro y tres de esclavo. El maestro es el encargado de enviar información a los esclavos, y los esclavos se encargarán de actuar según las ordenes que hayan recibido. Todo esto lo podéis ver con claridad en nuestro artículo sobre <a href="http://blog.electricbricks.com/2010/02/lego-nxt-robots-repetidores-bluetooth/">robots repetidores</a> en NXT-G. El problema principal es que para comenzar una nueva conexión debe cerrarse la anterior, y el NXT tarda varios segundos (entre 1s y 2s) en realizar las conexiones, lo que impide ciertas aplicaciones como de control <em>simultáneo</em> de varios NXT desde un NXT maestro. Las conexiones Bluetooth entre ordenadores son muchísimo más rápidas.</p>
<p><strong>Programa de pruebas:</strong></p>
<p>Gracias a este programa podemos ver la latencia (tiempo que tardan las conexiones que el Bluetooth en realizarse entre los NXT). Tenemos tres programas (uno para cada ladrillo NXT): el primer programa esperará a que pulsemos el botón ENTER, y una vez pulsado se conectará al segundo NXT, enviándole la información de que hemos pulsado el botón. El segundo esperará a recibir esta información, actuará moviendo el motor y haciendo un sonido, y enviará la información al tercero. Finalmente el tercero recibirá esta información y actuará en consecuencia. El código del primer NXT es:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Button</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LCD</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Motor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Sound</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.BTConnection</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.Bluetooth</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.bluetooth.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> LatenciasMain <span style="color: #009900;">&#123;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">String</span> nombre <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;NXTTorna&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectando...&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Pulsa un boton&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> <span style="color: #003399;">Button</span>.<span style="color: #006633;">waitForPress</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Sound.<span style="color: #006633;">beep</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectando&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; RemoteDevice bt2 <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">getKnownDevice</span><span style="color: #009900;">&#40;</span>nombre<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>bt2 <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;No existe ese dispositivo&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; BTConnection btc <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">connect</span><span style="color: #009900;">&#40;</span>bt2<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>btc <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexión fallida&quot;</span>, <span style="color: #cc66cc;">1</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectado&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #003399;">DataOutputStream</span> dos <span style="color: #339933;">=</span> btc.<span style="color: #006633;">openDataOutputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; dos.<span style="color: #006633;">writeInt</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; dos.<span style="color: #006633;">flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Cerrando conexion&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; dos.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; btc.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Finalizado&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">20000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p><strong>14 -</strong> El nombre del NXT al que se va a conectar tiene que ser el correcto. En nuestro hemos empleado estos nombres puesto que son como se llaman los NXT que estoy utilizando en el experimento.</p>
<p>El del segundo es:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LCD</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Motor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Sound</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.BTConnection</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.Bluetooth</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.bluetooth.RemoteDevice</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> LatenciaSlave2 <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #003399;">String</span> nombre <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;NXT3&quot;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Esperando...&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; &nbsp; BTConnection btc <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">waitForConnection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectado&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <br />
&nbsp; &nbsp; <span style="color: #003399;">DataInputStream</span> dis <span style="color: #339933;">=</span> btc.<span style="color: #006633;">openDataInputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> dis.<span style="color: #006633;">readInt</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; dis.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; btc.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>i <span style="color: #339933;">==</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; Sound.<span style="color: #006633;">beep</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; Motor.<span style="color: #006633;">A</span>.<span style="color: #006633;">forward</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; RemoteDevice bt2 <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">getKnownDevice</span><span style="color: #009900;">&#40;</span>nombre<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>bt2 <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;No existe ese dispositivo&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; BTConnection btc2 <span style="color: #339933;">=</span> Bluetooth.<span style="color: #006633;">connect</span><span style="color: #009900;">&#40;</span>bt2<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>btc2 <span style="color: #339933;">==</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conexion fallida&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">System</span>.<span style="color: #006633;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Conectado&quot;</span>, <span style="color: #cc66cc;">2</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #003399;">DataOutputStream</span> dos <span style="color: #339933;">=</span> btc2.<span style="color: #006633;">openDataOutputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">writeInt</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; dos.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; btc2.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">clear</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">drawString</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Cerrando conexion&quot;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; LCD.<span style="color: #006633;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #003399;">Thread</span>.<span style="color: #006633;">sleep</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">20000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>El del tercero sería:</p>
<div class="codecolorer-container java dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.LCD</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Motor</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.Sound</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.BTConnection</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">lejos.nxt.comm.Bluetooth</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.*</span><span style="color: #339933;">;</span><br />
<br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> LatenciasSlave3 <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; LCD.<span style="color: #0