Referencia de programas: 04A, 04B
Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)
El objetivo es encender uno de los cuatro leds y que permanezca encendido aunque se suelte el joystick y vuelva al centro. El led activado se apagará cuando se pulse el botón del joystick.
En caso de desear otro tipo de funcionamiento, como por ejemplo que el led sólo quede encendido cuando el joystick esté dirigido en esa posición y se apague automáticamente al volver al centro, debemos variar la programación con bloques al contrario del tipo "si no entonces".
Prepara el montaje:
- Placa Arduino.
- JoyStick de 5 cables.
Tres primeros cables a pin "analógico" 4 (cuidado, en algunas placas están invertidos).
Cuarto cable a pin analógico 5 externo - Eje y.
Quinto cable a pin "digital" 9 externo- Apagar leds o parar motores. - Pin digital 10 - Led izquierda.
- Pin digital 11 - Led arriba.
- Pin digital 12 - Led derecha.
- Pin digital 13 - Led abajo.
Ten en cuenta:
- En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground". Cuidado. En algunas placas los pines están invertidos.
- No todos los "joystick" tienen el mismo diseño en la orientación de los ejes con respecto a los cables de conexión ni reconocen el mismo rango valores; prueba a modificar los valores en el programa si es necesario.
Programa:
- Crea el programa que se muestra en la imagen.
Prueba:
- Pulsa en "Cargar a Arduino".
- Acciona el mando en varias direcciones y prueba también a pulsarlo. A veces es necesario pulsar en la posición exacta.
- Observa los cambios y describe lo que ha ocurrido.
- ¿Qué función tienen las variables "xeje" e "yeje"?
- Cambia el nombre de las variables.
- Cambia los valores y los operadores.
- Cambia los pines.
- Describe lo que ha ocurrido tras los cambios.
- Describe lo que crees que hace cada bloque paso a paso.
- Describe 3 posibles usos de este montaje en la vida real.
Investiga:
- Investiga nuevas posibilidades cambiando valores y bloques.
Montaje:
Aviso.En este caso, se ha utilizado el joystick que comercializa bq. La configuración por defecto, rango de valores y orientación de ejes con respecto a los cables de conexión pueden ser diferentes al de otros joysticks del mercado.
De hecho, se ha probado esta misma programación con un joystick diferente y el comportamiento de los leds cambia. Se comenta el motivo al final del programa.
- Con joystick comercializado por bq (3x3 cables).
- Con joystick diferente procedente del mercado (5 cables):
Además, los ejes X e Y tienen otra orientación respecto a los cables; el joystick debe colocarse con los cables hacia un lado en vez de hacia adelante para que interprete bien las órdenes. Habría que cambiar la programación si queremos manejar el joystick con los cables mirando hacia adelante, que como se hizo en el caso de Ardublock.
mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits
En este ejemplo, debemos utilizar el módulo externo joystick conectado en el puerto 4, aunque por lo que se ha probado sólo funciona usando el bloque de ejecución mediante bandera verde.
Se ofrecen las alternativas para programarlo de forma autónoma utilizando el mando IR de control a distancia o el módulo de botonera de 4 bototones conectado en el puerto 4).
Aviso:
En este caso, se ha observado que es conveniente tener las pilas conectadas durante la carga del programa para minimizar el número de fallos durante la carga. A veces ha ocurrido también con otros programas, por lo que se recomienda probarlo en caso de observar fallos.
Aviso:
En este caso, se ha observado que es conveniente tener las pilas conectadas durante la carga del programa para minimizar el número de fallos durante la carga. A veces ha ocurrido también con otros programas, por lo que se recomienda probarlo en caso de observar fallos.
- Joystick:
- Mando de control a distancia:
- Botonera (modulo externo de 4 botones):
No hay comentarios:
Publicar un comentario