Experimento Arduino Joystick
He empezado este experimento joystick inspirado en la necesidad de un sencillo joystick de bricolaje que podría ofrecer una mayor flexibilidad en los diseños posibles. Cada componente de hardware es muy mínimo para este experimento lo que la mayoría de los aficionados a la electrónica de bricolaje, incluso con poca experiencia podría disfrutar de ella y construir un joystick útiles por sí mismos.
El cerebro principal es la UNO microcontrolador Arduino. Pocos otros componentes discretos son todo lo que se necesita para que funcione. En este artículo se presenta un procedimiento para la lectura de los puertos analógicos de la placa Arduino UNO R3, en la que se ha conectado un joystick analógico. Los datos analógicos se relacionan con la posición de mando y pueden ser controlados a través de la configuración de Arduino.
El Joystick analógico 2-Axis utilizado aquí proporciona una manera simple y conveniente de añadir el control XY para un proyecto. A (10K) potenciómetro correspondiente a cada eje proporciona retroalimentación proporcional de las flechas arriba / abajo y posiciones izquierda / derecha. El joystick está cargada por resorte, de manera que siempre vuelve a su posición centrada cuando lo suelte. Además, un interruptor táctil está incluido en la palanca de mando, lo que convierte a la posición de encendido (estado cerrado) cuando se presiona el botón de la palanca de mando.
La conexión del controlador Arduino para sensores y botones del joystick es muy simple, como se muestra en el diagrama de distribución. Como se ha indicado, La palanca de mando se puede mover en dos dimensiones representan típicamente la X e Y. La posición X se lee desde A0 pin analógico y la posición Y se lee desde el pin analógica A1. En el boceto Arduino, la función analogRead () devuelve un número de 0 a 1023 rango (512 en el centro / posición de reposo de la palanca de mando).
El boceto que requerimos para observar el funcionamiento del joystick hacer un sondeo a dos de los pines de entrada analógica A0 y A1. Aquí el boceto hacer el primer LED (onboard-D13) blink con los valores leídos de los sensores joystck como una retroalimentación visual directa de la forma en que manejamos el joystick. En estado de reposo, este parpadea a una tasa de morosidad, y los cambios con la derecha (LR) para las operaciones de la palanca de mando hacia arriba / abajo (UD) y la izquierda / LED. El segundo LED (conectado a D11) se enciende sólo cuando se pulsa el botón de la palanca hacia abajo, desde su posición (en reposo) y central.
/* * Arduino & Analog Joystick * Demo/Test Sketch * Reads two analog inputs A0,A1 * And a button switch input at D12 * Joy Stck = 2-axis analog jostick made of two 10K potmeters * Tested at TechNode Protolabz/July 2014 */ int flashLED = 13; int UD = 0; int LR = 1; int input1 = 0; int input2 = 0; int button=12; int pushLED=11; int buttonState=0; void setup() { pinMode(flashLED, OUTPUT); pinMode(button,INPUT); pinMode(pushLED, OUTPUT); digitalWrite(button,HIGH); } int handleValue(int data) { return (data * 9 / 1024) + 48; } void loop() { input1 = analogRead(UD); delay(100); input2 = analogRead(LR); digitalWrite(flashLED, HIGH); delay(input1); digitalWrite(flashLED, LOW); delay(input2); buttonState = digitalRead(button); if (buttonState == LOW) { digitalWrite(pushLED, HIGH); } else { digitalWrite(pushLED, LOW); } }
Fuente: http://www.electroschematics.com/10619/arduino-joystick-experiment/
Tuitear 6.032 Veces leído 0 comentarios |
10 septiembre 2014 en Electronica | tags: Arduino, Circuitos electrónicos, Electronica |