Anda di halaman 1dari 6

Programacin eficiente en NXT-G

El lenguaje de programacin NXT-G que es el ncleo de la LEGO MINDSTORMS Education NXT software y hace que la creacin de programas complejos sea rpida y fcil. Programas complejos pueden ser construidos mediante la combinacin de bloques simples. Cada programa que construir y luego descargar en el ladrillo NXT y se convierte en un archivo de acceso directo desde el men de ladrillo NXT. Sin embargo, los programas complejos puede llenar rpidamente la memoria flash disponible sobre el ladrillo. Vamos a describir las tcnicas que puede utilizar para escribir programas eficientes para la creacin de programas complejos con un uso mnimo de memoria flash. 1. Maximizar el espacio libre Para empezar, vamos despejar el espacio en el ladrillo antes de descargar nuestros propios programas. Cuando un ladrillo NXT est en condiciones de fbrica (nuevo o firmware actualizado recientemente proporcionada por LEGO Education), la memoria del ladrillo Flash incluye un conjunto de archivos por defecto utilizado para funciones integradas tales como "Try Me" del programa y la programacin de prueba.

Estos archivos por defecto son llamados archivos del sistema y que no aparecen normalmente en LEGO MINDSTORMS Education NXT Software v1.0. Para ver estos archivos: 1. Abra la ventana de NXT 2. Haga clic en la ficha de memoria 3. Marque la casilla junto a "Mostrar todos los archivos del sistema"

Siempre es ms seguro para eliminar cualquiera de estos archivos con el botn Eliminar, RECUERDA que perderemos temporalmente la funciones integradas que proporcionan.

Despus de eliminar manualmente los archivos del sistema, utilice el botn Eliminar todos para maximizar an ms el espacio utilizable para sus programas. Al hacer clic en este botn se eliminarn todos los archivos que no son del sistema en el ladrillo y optimizaremos el uso de memoria flash de los archivos del sistema que queda en el ladrillo. 2. Maximizar la reutilizacin del cdigo

La reutilizacin del cdigo es quizs el concepto ms importante de entender cuando se intenta escribir eficiente NXT-G programas. Cada bloque NXT-G agregado a un programa aumenta el tamao del archivo de programa en la memoria del ladrillo NXT. Sin embargo, cada copia del mismo tipo de bloque comparte automticamente el cdigo de la primera instancia del bloque. Por ejemplo, colocar un bloque de movimiento en su programa requiere una gran cantidad de cdigo, pero cada movimiento adicional que aade un bloque lugar relativamente pequea cantidad de cdigo a su archivo de programa, porque una gran parte del cdigo se puede reutilizar.

3. Mover y Bloque motor

El concepto de la reutilizacin del cdigo se aplica a casi todos los bloques de NXT-G. Sin embargo, los bloques bsicos de control de motor (movimiento y el motor) se incluye con merecen una atencin especial por tres razones:

1. Mover y Bloques de Motor se utilizan con mucha frecuencia.

2. Mover y Bloque Motor y el motor a menudo son intercambiables, ya que proporcionan una funcionalidad muy similar.

3. Ambos requieren relativamente grandes cantidades de cdigo en sus programas.

Los programas ocuparn menos memoria si se utiliza un solo tipo de bloque de control, (Mover o Bloque Motor), en un programa. Para poder elegir, revisamos algunas de las diferencias entre mover y bloques de motor: Mover proporciona la sincronizacin automtica y giro utilizando dos motores al mismo tiempo. Bloques de motor afectan a uno de los motores a la vez. Mover proporcionan parada automtica de precisin. Bloques de motor permite el control manual de la potencia.Los bloques de motor le permiten activar o desactivar el control de potencia de forma manual. Esta caracterstica se puede utilizar para un movimiento ms predecible o una velocidad de salida relativamente lenta.

4.

Bucles y Bloques personalizados

Se reduce considerablemente el tamao de los programas complejos, mediante la identificacin de las partes de los programas que realizan la misma accin varias veces o en varios lugares. Si el programa realiza la misma accin ms de una vez, se debe utilizar un bucle, en lugar de copiar los bloques correspondientes, con el consiguiente ahorro de memoria:

Si el programa tiene que realizar la misma accin con otras acciones en el medio, colocar los bloques para que la accin en Un Bloque Personalizado y utilizarlo cuando sea necesario. Tambin se puede utilizar Bloques personalizados cuando es necesario realizar la misma accin en dos o ms secuencias diferentes dentro de un bloque de bifurcacin .

Si nuestro programa tiene que realizar acciones muy parecidas varias veces, utilizando los cables de datos y los bloques personalizados, podemos elegir comportamientos diferentes para el programa, con los mismos bloques, con el consiguiente ahorro de memoria.

5.

Combinacin de varios programas

A pesar de que el cdigo es automticamente compartida entre los bloques dentro de un programa, los programas no comparten cdigo entre s. As que si vamos a descargar dos programas para el ladrillo NXT y estos programas realizan acciones muy similares (por ejemplo, es posible que ambos utilizan los mismos bloques personalizados), el cdigo para que la accin debe ser duplicado en los dos archivos de programa. Para mejorar el uso de la memoria, podramos combinar stos en uno solo, que nos permite elegir condicionalmente que accin tomar. Por ejemplo, podemos escribir un programa selecciones que opciones vamos a ejecutar, mediante que entrada izquierda NXT o el botn derecho.

6.

Minimizar el uso de bloques de sonido y la pantalla

El sonido NXT-G y los bloques de visualizacin proporcionan mejoras que rara vez se necesitan estas caractersticas en el momento de la ejecucin del programa, ms all de la utilidad en la depuracin y prueba del programa, as que, una vez utilizados para ste propsito, se pueden eliminar, recuperando as su espacio en memoria. Bloques personalizados nos permiten facilitar este proceso. Por ejemplo, podemos utilizar un bloque personalizado para mostrar el valor de las variables o ejecutar sonido de comprobacin de fases del programa, y borrar dicho bloque una vez que ya funcione nuestro programa.

7.

Minimice el uso del acceso a los archivos o bloques de grabacin / reproduccin

El acceso a los archivos y la grabacin / reproduccin bloques ambos requieren archivos adicionales adems del archivo de programa principal. Al igual que los sonidos grabados, estos archivos de forma rpida puede utilizar la memoria flash de preciosos. Si se hace uso de estos bloques en el programa, comprobar peridicamente los archivos antiguos que no se necesitan utilizar mediante la opcin de memoria de la ventana de NXT. (Los Archivos creados por el bloque de acceso a los archivos sern enumerados en la categora "Otros") .

8.

Usar nmeros o valores lgicos en lugar de texto

Aunque NXT-G permite usar el texto para pasar los datos complejos o depurar el programa,cada copia de una cadena de texto requiere ms espacio en el archivo de programa de un solo nmero o valor lgico. Siempre que se pueda, utilizar valores numricos o lgicos, en lugar de texto.

Utilizar bloques de Mini

Un grupo especial de Bloques para NXT-G, llamados bloques mini (originalmente comunicada en virtud de los "bloques de actuacin" el nombre), ofrecen algunas de las funcionalidades comunes de NXT-G bloques utilizando menos espacio en medio. Los bloques de Mini movimiento, motor, sonido y estn disponibles para descarga desde www.education.lego.com Mini bloques son muy similares a los bloques que se incluyeron con el LEGO MINDSTORMS Education NXT Software v1.0. Sin embargo, estos bloques han sido optimizados de modo que son ms pequeos cuando se descargan en el NXT.

Anda mungkin juga menyukai