TRUCOS BREVES

CON EL SOFTWARE DEL EV3

Otros trucos de programacion con LEGO Mindstorms EV3


down-amarillo-flecha

  • Bajar a Desplazarse por la pantalla.
  • Bajar a Ultrasonidos en barrera.
  • Bajar a Evitar parpadeos en pantalla.
  • Bajar a Eliminar un cable del programa.
  • Bajar a Se para el motor.
  • Bajar a Acciones simultáneas.
  • Bajar a Ver el valor de un cable en el PC.



  • En esta sección recopilaré una pequeña colección de trucos para el EV3 a medida que los vaya descubriendo, bien por experimentación propia, bien por aportaciones de otras personas o páginas web.


    DESPLAZARSE POR LA PANTALLA


    La forma habitual de programar con el EV3 es alternar entre la herramienta de "Seleccionar" (flecha en negro) y la de "Panear" (en rojo) para desplazarte por la pantalla. Puedes alternar rápidamente entre ellas con [CTRL]+G.


    Otros trucos de programacion con LEGO Mindstorms EV3

    Otra forma alternativa de moverte es con la tecla [Alt] pulsada. Selecciona la herramienta "Flecha" (seleccionar) y pulsa y mantén pulsada la tecla [Alt]. A continuación solo tienes que mover el ratón por la pantalla. Cuando tengas la pantalla a tu agrado, sueltas el [Alt] y sigues usando la función de "Seleccionar" con normalidad. Mucho más cómodo.


    Si el programa es muy largo, puedes reducir zoom con [Ctrl] + rueda del ratón y luego usas el método anterior de la tecla [Alt]. Así es mucho más rápido, ya que, lamentablemente, han quitado el mapa de desplazamiento rápido del NXT-G que resultaba tan útil, no me lo explico.


    Para pequeños desplazamientos, aun tienes otra opción: con la herramienta "Flecha" pulsas en cualquiera de los triangulitos que aparecen en el borde de la pantalla con el ratón:


    Otros trucos de programacion con LEGO Mindstorms EV3

    Por último, puedes también usar las teclas del cursor para tus desplazamientos, incluyendo cuando selecciones bloques en pantalla con el ratón:


    Otros trucos de programacion con LEGO Mindstorms EV3

    Existe otro método abreviado al pulsar las teclas 1 a 6 para seleccionar las distintas paletas de los menús de programación, pero esto no me resulta demasiado útil.


    ULTRASONIDOS EN BARRERA


    Esto no lo he probado, ya que son necesarios 2 sensores de ultrasonidos. Simplemente se explica en las instrucciones. Si pruebas y funciona, nos lo puedes contar en el foro. La idea es situar los 2 sensores frente a frente. Uno se pone a emitir (con su correspondiente bloque en el programa) y el otro se pone en "Escucha" con el siguiente icono:


    Otros trucos de programacion con LEGO Mindstorms EV3

    Una duda que me surge: ¿tendrá un alcance superior a 255 cm? Cuando un sensor detecta algo a la distancia máxima, el sonido viaja 255 cm (ida) + 255 cm (vuelta). Así que apuesto a que podremos construir un sensor "en barrera" de larga distancia, ya que aquí solo hay camino de ida. ¿será esto cierto?


    Eso sí, hay que tener en cuenta que un sensor configurado así es de tipo Si/No, es decir, o ambos sensores se ven mutuamente o hay algo en medio. Lo que no hará es detectar la distancia entre ellos. O se recibe señal o no se recibe. Así que su utilidad es determinar si un objeto ha atravesado la línea imaginaria que une a ambos o no, nada más.


    EVITAR PARPADEOS EN PANTALLA


    Todo un clásico ya. Habrás padecido en alguna ocasión un molesto parpadeo en pantalla cuando presentas varios valores en el EV3. Si lo único que quieres es mostrar 1 valor, no suele haber demasiado problema: pones "Borrar Pantalla" en verdadero y ya está.


    Otros trucos de programacion con LEGO Mindstorms EV3

    El problema viene cuando quieres hacer esto mismo con 2 valores o más. Por ejemplo, imagina que tienes 2 motores conectados a B y C respectivamente y quieres visualizar el valor de su giro. Lo primero que nos viene a la cabeza es hacer como en la imagen que sigue. En el primer "Bloque Pantalla" la pestaña "Borrar Pantalla" está en verdadero y en el segundo en falso. Pues si lo haces así, parpadeará:


    Otros trucos de programacion con LEGO Mindstorms EV3

    ¿Cómo hacer entonces? Usando el bloque "Texto". Este icono mezcla en una única línea de pantalla todo lo que viene por las entradas. Así que podemos presentar ambos valores de los motores en 1 o en 2 líneas diferentes. Elegiremos esta última opción. El bloque de Texto lo puedes encontrar aquí:


    Otros trucos de programacion con LEGO Mindstorms EV3

    Y el programa sería el de la imagen siguiente, lo explicamos. Empezamos por el "Bloque de Pantalla" con "Borrar Pantalla" en verdadero, para limpiar la pantalla nada más comenzar. A continuación, todo lo que sigue está dentro de un bucle infinito. En la fila superior lo que respecta al motor B y en la inferior lo del C.


    Otros trucos de programacion con LEGO Mindstorms EV3

    El primer icono dentro del bucle mide la "Rotación del motor". El segundo es el "Bloque Texto", y verás que tiene 3 entradas, A, B y C. Vamos a explicar con detalle cómo está configurado.


    En la primera entrada, la A, escribimos "B:" seguido de un es espacio, para hacer referencia al motor B. A la segunda entrada, la B, llegará el cable procedente del sensor del motor A. Y por último y más importante: en la entrada C escribes 3 o 4 espacios en blanco. La última (cable en naranja) es la salida, que lo juntará todo en una sola línea.


    Otros trucos de programacion con LEGO Mindstorms EV3

    ¿Para qué ponemos esos 3 o 4 espacios? Para que se añadan al final del número presentado en pantalla del EV3 y borre cualquier resto de cualquier número anterior. A continuación sigue un "Bloque Pantalla" con "Borrar Pantalla" en falso y presentando datos en columna 2 línea 4. Ahora repetimos todo para el motor C cambiando la columna y la línea de presentación en pantalla.


    Otros trucos de programacion con LEGO Mindstorms EV3

    Un programa alternativo para acabar de entender el uso del "Bloque Texto". En este programa se presentan todos los datos en una misma línea de pantalla. Tiene el "Borrar Pantalla" en verdadero (por eso no hace falta empezar el programa con un bloque que haga esto) y en la Entrada B del Bloque Texto hay que dejar unos espacios para que los datos no se solapen. Así tampoco parpadea.


    Otros trucos de programacion con LEGO Mindstorms EV3



    ELIMINAR UN CABLE DEL PROGRAMA


    Pincha con el ratón EXACTAMENTE donde indica la flecha negra de la siguiente imagen:


    Otros trucos de programacion con LEGO Mindstorms EV3

    Un cable tiene un inicio y un fin. Para eliminarlo, debes pinchar siempre al final del cable, no en su origen. Así que para eliminar el cable naranja que aparece en la imagen, habrá que seguirlo y eliminarlo en su final.




    SE PARA EL MOTOR


    Otro clásico. Si programas un motor con movimiento infinito, tal como sigue, se parará al momento:


    Otros trucos de programacion con LEGO Mindstorms EV3

    No es que no funcione, es que el programa lee el bloque "Motor: infinito", avanza, no encuentra nada más y, por tanto, se para. ¿Cómo solucionarlo? Hay muchas formas, algunas muy sencillas. Te apunto 2 de ellas: poner el motor dentro de un bucle infinito o bien añadir a continuación del Bloque Motor un Bloque de Espera. El motor seguirá en marcha hasta que pulsemos el botón central del EV3.


    Otros trucos de programacion con LEGO Mindstorms EV3

    ACCIONES SIMULTANEAS


    Al igual que pasaba con las acciones simultáneas en el NXT, con el EV3 sucede lo mismo. Existen programas en los que se necesita que 2 procesos sucedan de forma paralela. Por ejemplo, un juego y, simultáneamente, la puntuación en pantalla. A continuación, un ejemplo muy sencillo de un proceso simultáneo. Ambos bucles están interconectados: tienen en común la variable "Bucle".


    La linea superior contendría el posible programa, el juego. Ahí vamos modificando la variable cuando pase un determinado suceso, como acertar una respuesta o, en este caso, esperar 1 segundo. Y en la línea de abajo, presentamos, al mismo tiempo, la puntuación.


    Otros trucos de programacion con LEGO Mindstorms EV3

    Para conseguir esto, primero escribe las 2 líneas del programa. Observa la siguiente imagen. Tienes que pinchar con el ratón justo en dónde indica la flecha negra. Lo he pintado de verde para que se vea mejor. Cuando hagas esto, podrás separar los iconos:


    Otros trucos de programacion con LEGO Mindstorms EV3

    Ahora, vuelve a pulsar en el mismo sitio, en la zona que he pintado de verde y mantén pulsado el botón izquierdo del ratón (ver imagen siguiente) y te mueves hasta conectarlo con la línea inferior del programa. Al soltar, te quedará como en la imagen que hemos puesto más arriba.


    Otros trucos de programacion con LEGO Mindstorms EV3

    Por cierto, el programa anterior funcionaría exactamente igual si las dos líneas del programa no estuvieran conectadas entre sí por ningún cable. El nexo entre ambos es la variable "Bucle". Con este método, ambas líneas empiezan a la vez. De la otra forma, podemos decir exactamente cuando queremos que empiece la segunda línea. Por tanto, prefiero el método anterior.


    Otros trucos de programacion con LEGO Mindstorms EV3


    VER EL VALOR DE UN CABLE EN EL PC


    Para ver el valor en tiempo real de un motor o un sensor, solo tienes que poner el cursor encima de su cable. Pondremos un ejemplo.


    Hemos construido un pequeño robot con 2 motores, uno en B y otro en C. Y luego el sl siguiente programa. Empieza por los habituales bloques "Inicio" y "Borrar pantalla en verdadero". A continuación, en la casilla "A" del bloque "Texto" pone "Motor: ".


    Otros trucos de programacion con LEGO Mindstorms EV3

    Pues bien, si programas todo eso, al girar manualmente la rueda del motor B, quedará fijada la potencia de giro del motor C (en este caso 6), que empezará a girar. Ahora solo tienes que poner el cursor sobre el cable naranja y aparecerá el valor en tiempo real, tal como se ve en la imagen.


    .