InicioHazlo Tu MismoControla el Arduino con el joystick de la PS2

Controla el Arduino con el joystick de la PS2

Hazlo Tu Mismo6/7/2016
Una de las mejoras formas de que disponemos para controlar un robot a distancia esemplear el mando de una Playstation 2. En Internet podés encontrar multitud de ejemplos que optan por este controlador por sus excepcionales características técnicas, incluso en proyectos profesionales. Ademáses realmente barato. Entre sus características como controladorel mando de la PS2 es inalámbricoy dispone de un alcance bastante aceptable. Por otro ladodispone de una gran variedad de entradasque incluyen 4 botones de dirección sensibles a la presión, 4 botones de acción sensibles también a la presión, 2 palancas analógicas y 4 botones digitales ubicados en la parte frontal. En cuanto al precio un clónico de este mandose puede conseguir en Ebay por de 9,90€. Un precio increíble que, junto con sus características técnicas, lo convierten enuna de las mejoras opciones para controlar un robota un coste mínimo. En este tutorial vamos a aprender aconectar el mando de una PS2 a Arduinopara poder usarlo en nuestros proyectos y poder controlar robots y automatismos de forma inalámbrica. MATERIAL NECESARIO Además de nuestro Arduino (mini, Uno, Mega, o el que prefieran) lo primero que necesitamos es, lógicamente, un mando de PS2 inalámbrico. Una simple búsqueda en Ebay nos mostrará una gran cantidad de clónicos. Buscamos uno en el rango de 9 a 10€, barato pero que tenga un mínimo de calidad. Por otro lado, en la mayoría de los casos necesitaremos un conversor lógico de nivel de 3,3V a 5V. El motivo es que, por lo general, nuestro Arduino opera a 5V, mientras que la electrónica del mando de la PS2 funciona a 3,3V. Podríamos hacer nuestro propio circuito de adaptación, pero no tienen ningún sentido dado que se venden por 1,10€, gastos de envío incluidos. Para encontrar el conversor simplemente buscar “level converter” en Ebay. Estamos buscando un artículo similar al siguiente “JY MCY I2C LEVEL CONVERTER”, un dispositivo que permite adaptar 4 señales de forma bidireccional. Ver que el modelo que queremos tiene 6 pines (no comprés uno de 4 pines, que solo pueden adaptar 2 señales). CONEXIÓN Y MONTAJE Todo el montaje se realiza exclusivamente en el receptor, por lo que podemos dejar “tranquilo” al mando propiamente dicho. En primer lugar retiramos los tornillos del receptor para acceder a los terminales. Desoldamos los pines de conexión sustituyéndolos por nuestros propios cables, que soldaremos a la placa del receptor. Cerramos el receptor, dejando saliendo los cables por donde antes estaba la conexión con la vídeo consola. Ahora empleamos un polímetro para identificar la función de cada uno de los cables que hemos soldado. No te fijes de los esquemas de Internet, que identifican cada terminal por el color del cable que tuvieran soldado, porqueel color de los cables y su conexión varían de un fabricante a otro. Verificarlo manualmente con un polímetro y la ayuda del siguiente esquema. A continuación usamos una protoboard para realizar las conexiones con nuestro conversor digital (o lo soldamos directamente). En el lado de baja tensión se conectan las cuatro señales del mando, ground, y alimentación, que será proporcionada por Arduino. En el lado de alta tensión conectamos cuatro pines, ground, y +5V que será convertido por el conversor a +3,3V para alimentar el receptor. Aquí podés ver un ejemplo del montaje final, conectado a un Arduino Uno. Y aquí un montaje similar conectado a un Arduino Mini. Con esta combinación queda un montaje bastante compacto que cabe fácilmente en cualquier robot, y con los pines libres de ambas protoboard tenemos suficientes conexiones para el resto de elementos que la requieran. LIBRERÍA Y CÓDIGO Vamos por el código. Afortunadamente para nosotros la parte difícil está resuelta en una magnífica librería disponible en https://github.com/madsci1016/Arduino-PS2X. Simplemente descargamos e importamos la librería, y cargamos el skecth de ejemplo. El código del ejemplo es demasiado extenso y tiene líneas en exceso (cómo es lógico ya que el objetivo es mostrar todas las posibilidades). No es en absoluto difícil analizar y adaptarlo a nuestras necesidades. Por último decir que, en general,la librería en sí es bastante pesaday consume una buena parte de la memoria de nuestro pequeño Arduino. No obstante es posible optimizarla y reducirla eliminando partes de código dedicadas a otros controladores (guitar hero, por ejemplo). Además es un buen ejercicio de aprendizaje, por lo que los invito a que la lean.
Datos archivados del Taringa! original
126puntos
1,472visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
4visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

n
nicosciarra🇦🇷
Usuario
Puntos0
Posts26
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.