domingo, 5 de junio de 2016

Hablemos de Arduino


   ¡Hola a todos! y bienvenidos a una nueva entrada de este blog en el que, con suerte, les mostraré el proceso de creación de una batería electrónica. En esta ocasión les hablaré un poco de la plaquita que hace posible proyectos cool como este. 

    Información sobre Arduino hay de sobra en internet, asi que trataré de hacer una introducción breve y luego resaltar detalles concisos concernientes a su uso en la creación de una batería electrónica.

    Resumiendo mucho, diremos que Arduino es una plataforma de hardware libre, que surgió por allá en 2005, y que supuso todo una revolución dentro de la cultura del "hágalo usted mismo", ya que permite que con muy pocos recursos económicos y técnicos, cualquier persona pueda crear proyectos electrónicos relativamente complejos. Fue concebida como una herramienta fácil de usar, barata, orientada a la enseñanza, pero que con un potencial que trasciende por mucho este campo. 


Incluso los niños pueden entender Arduino



    Básicamente Arduino es una computadora. Claro, tiene una capacidad de procesamiento muy baja  (aunque suficiente para sus funciones) comparada con las PC's actuales. En esencia tiene los mismos componentes: un procesador, memoria RAM, memoria de almacenamiento, y conexiones de entrada y de salida. Si pensamos en una computadora común, lo que esta hace es tomar unos datos que le suministramos por sus entradas (puertos de mouse, teclado, puertos USB, etc), procesar esos datos mediante programas, y devolver los resultados por sus puertos de salida (puerto de monitor, impresoras, etc). Esto es exactamente lo que Arduino hace.

    Pero Arduino no sabe por si solo que diablos hacer con la información que le enviamos a sus entradas, el chiste está en que debemos programarlo para que haga con ella lo que nosotros queremos. De lo contrario es tan inútil como lo sería una PC sin sistema operativo. Estos programas los podemos crear nosotros mismos, o los podemos descargar ya elaborados por terceros (hay una comunidad muy grande de usuarios que comparte sus programas online). 

   La licencia de open hardware por la que se rige Arduino permite que cualquiera pueda copiar y comercializar las placas de Arduino sin ninguna limitación. Por lo tanto, hay una gran variedad de clones en el mercado, sobre todo procedentes de China, que usan exactamente el mismo chip de proceso que los Arduino originales. ¿Cual es mejor y cual es peor? Ninguno. Hacen exactamente el mismo trabajo. La ventaja del original: el soporte técnico oficial y la garantía. La ventaja del chino: cuesta como 3 veces menos que el original. Eso es todo, en lo demás la diferencia en cuanto a funcionamiento y durabilidad es casi nula. 

    Yo opté por un clon ya que mi cantidad de dólares era limitada, y el envío desde china es gratis, así que dada la situación actual de Venezuela me convenía muchísimo más. Por cierto, si se preguntan de donde saqué los dólares para comprar el mío.... no, no se los compré al gobierno. Los generé con mucha paciencia en una página llamada Kolotibablo, donde podemos ganar dinero (a ritmo muy lento, dicho sea de paso) a base de resolver captchas. Si son rápidos escribiendo pueden generar un dólar al día en promedio, pero no lo recomiendo a aquellos que no tengan paciencia ya que es sumamente tedioso, pero hey! son DOLARES!... También está la opción de comprar dólares electrónicos PayPal o Neteller, o hacer la compra directamente en bolívares en MercadoLibre, donde un clon oscila entre 10 mil a 20 mil bolívares a la fecha en que escribo esto, dependiendo del modelo; pero lo obtendrás casi de inmediato, ya que encargándolo a china debes esperar como mínimo mes y medio para verlo en tus manos. 

   Una pequeña recomendación si lo van a pedir a china: El envío les va a llegar mediante Ipostel. Les recomiendo que no pongan la dirección de su casa, y menos si viven en un sitio aislado, o en el que las definiciones de calles y números de casa no estén muy claros, por que a veces el cartero se confunde y deja el paquete donde no es. Mejor vayan a su oficina de Ipostel más cercana y abran un apartado postal. Es muy barato. Luego cuando hagan la compra, coloquen la dirección de la oficina y el apartado postal en los datos para el envío. Les van a enviar un correo como a los 2 días para avisar que su orden ya fue embarcada. Luego calculen como mes y medio a partir de la fecha de embarque, y ya pueden ir a buscar sus cosas. Ojo, a veces tarda un poco más. Yo he comprado varias cosas por esa vía, y una de ellas demoró 3 meses en llegarme. Pasa de vez en cuando pero de que llegan, llegan. Les dejo 3 páginas chinas confiables donde pueden comprarlo.

DealExreme ->(acepta Paypal)
GearBest ->(acepta Paypal)

    Nota: Aliexpress es una plataforma parecida a MercadoLibre, es decir que se basa en un sistema de reputación de usuarios, y los vendedores son independientes. Por lo tanto tenemos que estudiar bien a los vendedores para evitar fraudes. Si el vendedor no tiene reputación, pues mejor no comprar. Lo otro es que algunos envíos son gratuitos y otros no. Pero podemos filtrar los resultados de búsqueda por Free Shipping y listo. Aunque en ocasiones el costo del envío es muy bajo (menos de 2 dólares) y no pesa mucho pagarlo, todo depende de cada vendedor, pero preferiremos que sea gratis ¿verdad?. En el caso de las otras dos páginas de la lista, todas las ventas las hace la empresa directamente, así que podemos comprar cualquier producto con confianza. Y todo es Free Shipping.

   Me gustaría decir que, si aparte de músico eres medio nerd y te gusta hacer experimentos y construir cosas como a mí, un Arduino es una de las mejores cosas que te puedes comprar! Se que cuando termine este proyecto seguiré usando Arduino para muchas cosas más.

   Pero bueno vayamos al tema del blog. Si quiero hacer una batería electrónica, ¿que versión de Arduino me compro? La respuesta depende de cuantos tambores y platos le quieras poner. Si quieres algo sencillo (bombo, redoblante, hihat, un par de toms y un crash), con el archi conocido Arduino UNO te basta.

    Si quieres algo mas complejo (como yo jeje) te conviene la versión MEGA.

    ¿Por qué? Por la cantidad de entradas analógicas. 

   Arduino posee tanto entradas analógicas como digitales, pero las analógicas son las que nos interesan, pues los sensores que usaremos producen señales de este tipo. No entraré en detalles sobre las diferencias entre analógico y digital, pero bastará decir que son dos tipos de señales eléctricas distintas. 

   Arduino MEGA es la versión extendida de Arduino UNO, es decir: funciona igual pero tiene más del doble de entradas de ambos tipos. 

    He aquí la diferencia:



   Como podemos apreciar la diferencia es bastante grande. Tenemos seis entradas analógicas numeradas del 0 al 5 en la versión UNO, contra dieciséis entradas en la versión MEGA numeradas del 0 al 15.

   En cada una de estas entradas analógicas podemos conectar un solo sensor, por lo tanto: cantidad de entradas = numero de sensores = número de piezas que puede llevar la batería. (Hay una forma de multiplicar el número de entradas de un Arduino UNO mediante un proceso llamado multiplexación. Pero por lo que he leído es algo complejo y aquí buscamos simplicidad.  Así que evítense dolores de cabeza: si quieren muchas entradas compren directamente la versión MEGA por muy poca diferencia de dinero).

   Bien, ya sabemos por dónde el Arduino recibirá las señales. Luego, en su interior se llevará a cabo un proceso de digitalización de las mismas, (eso lo detallaremos mas adelante), y las convertirá en datos MIDI (ver artículo anterior). ¿Cómo se enviarán estos datos a la PC?

    Hay dos maneras:

1) Por comunicación serial: para lo cual usamos el propio puerto USB de la placa. En este caso usaremos software auxiliar en la PC que nos trauduzca la información serial a MIDI.



2) Haciendo uso de los pines de envío y recepción de datos: marcados como TX0 y RX0 en la placa Arduino, en los cuales conectamos un puerto MIDI hembra. Luego mediante un adaptador MIDI/USB lo conectamos a la PC o, si nuestra PC ya tiene una tarjeta con puertos MIDI, directamente con un cable MIDI estándar.



    Por motivos de economía y simplicidad estoy 90% seguro que empezaré probando el primer método, aunque no descarto el segundo para más adelante. Se trata de probar y ver cual da mejores resultados.

     Esto es casi todo lo que se puede decir en cuanto a las conexiones físicas, la verdad no es nada del otro mundo. Si sabes conectar un enchufe o soldar un cable entonces ya puedes hacerlas. El tema complejo está en los algoritmos y la programación. Hasta ahora he bajado varios códigos de ejemplo y cada vez entiendo un poquito mas el asunto. Lo más probable es que no me inventaré un código absolutamente desde cero, sino que tomaré ideas de otros códigos y los adaptaré a las necesidades de mi diseño. Por cierto, ya tengo definidas el numero de piezas que le pondré a la batería para aprovechar bien todas las entradas del Arduino, luego les cuento un poco sobre eso.

     Bueno pues hasta aquí llega esta entrada. Ya conocemos un poco más sobre dichoso aparatico. En la próxima entrada hablaré un poco sobre sensores piezoeléctricos. 

¡Hasta entonces!












   

No hay comentarios.:

Publicar un comentario