martes, 19 de mayo de 2009

El orco en toda su gloria

Hola valientes viajeros de los internets, para concluir la materia les traemos un video del buen orcobot en su fase final. Los invitamos a visitar los demas nuevos videos en nuestro canal de youtube.



El destino del Orco es un tanto incierto, sin embargo no significa que su historia aqui termina. Hay un largo camino por recorrer en busca del honor y la gloria... y aunque el sendero es dificil, asi se forjan las leyendas.

El trabajo sigue y hay muchos planes en el horizonte para este valiente robot.

miércoles, 13 de mayo de 2009

The Diode Renormalization

Buena vibra hermanos metaleros, sobrepuestos de las influenzas y los exámenes les traemos al fin los avances y tropiezos que hemos tenido estas ultimas semanas en la construcción del buen Orcobot.


La odisea comenzó la semana pasada... el Orcobot dejo de funcionar. Perdimos valiosos días en el largo y cruel proceso de eliminación. Probamos la comunicación entre el microcontrolador y la computadora, checamos las salidas del uC, separamos los solenoides del circuito, probamos individualmente, controlamos el robot desde la hiperterminal, en fin, todos los componentes funcionaban bien por separado, sin embargo al armar el robot nuevamente, nada.

¿Que fue lo que paso?

Fue el profesor Javier Rubio quien nos hizo ver nuestro error. Diodos de protección en paralelo con la bobina.

“A las bobinas se les coloca un diodo inversamente polarizado en paralelo para proteger el elemento de conmutación (en este caso los transistores) de la sobre tensión que causa la bobina cuando es conmutada. Al conmutar un circuito con una inductancia, la corriente "se invierte" en la bobina, regresando esa corriente al circuito, gracias al diodo, esta corriente lo polariza directamente y se descarga a través de el, sin afectar el resto del circuito."

¿ Y porque funcionaba sin diodos?

Con el uso, las capas de que conforman al emisor y colector formaron un canal del mismo tipo de material; en este estado el transistor se comporta con un FET (transistor de efecto de campo) que se controla por un diferencial de voltaje y no con una cantidad de corriente como lo hace el transistor, por eso el circuito dejo de funcionar.

En pocas palabras, las capas de semiconductores se excitaban con la corriente que llegaba al transistor de la bobina, esto hacia que el material tipo P y el material tipo N hicieran sus hostiles.y poco a poco nos estabamos echando los transistores.

Al poner los diodos de protección no hay una corriente de regreso que afecte al transistor, por lo tanto no hay hostilfest en el conmutador y los transistores funcionan correctamente... Yeah!
Circuito modificado con diodo de protección

No lo olviden vaqueros, diodos de protección siempre que trabajen con bobinas conmutadas.

Mas información sobre transistores aquí.

sábado, 2 de mayo de 2009

Resident Evil 6: Mexico


Al profe y a nuestras admiradoras…

Debido a la emergencia sanitaria que vivimos en México, y para evitar posibles contagios de influenza en el país, las clases fueron suspendidas hasta el 6 de Mayo.

Obedeciendo las recomendaciones de la Secretaria de Salud, algunos orcos volvieron a sus cuevas lejos de esta citadela, algunos otros se refugian en las minas, los demás están probablemente muertos.

Esta situación afecta brutalmente el avance en la construcción del Orcobot. Esperamos su comprensión y apoyo.

Los Orcos

miércoles, 22 de abril de 2009

Dulce Venganza

Como castigo por no haber asistido a clase el día 14 de abril , el profesor nos hizo a subir al blog la presentación de avances del tercer parcial como video ... ahí lo tienen punks...




martes, 7 de abril de 2009

Black Diamond

Para terminar el día contentos, nos deshicimos del molesto ruido que producían los solenoides al golpear las teclas. Para lograrlo colocamos empaques de hule en la punta de cada vástago. Pueden observar el resultado en el siguiente video.


Orcobot - Black Diamond (Stratovarius)

Sin querer matamos dos pájaros de un tiro, el empaque de hule reduce considerablemente el sonido que se producía al tocar cada nota y además evita que el solenoide “salga volando” por el rebote de las teclas, por lo tanto no hay que detener las solenoides con una pared superior como lo hicimos en las pruebas pasadas.

lunes, 6 de abril de 2009

The Orkish Piano Lesson

El dia de hoy resolvimos algunos problemas con la potencia que llegaba a los solenoides, por ejemplo, la presión que cada solenoide ejercía era terriblemente reducida cuando otro solenoide se activaba al mismo tiempo. Como pueden adivinar, debido a que esta acción es muy común al tocar el piano, esto se convierte en un problema bastante grande.

Para resolver este problema y lograr un buen control sobre cada uno de los solenoides que van a interpretar las notas musicales se implementó el siguiente circuito:

Diagrama Electrónico para Activación de cada Solenoide.

El diseño es un par de transistores en configuración Darlington. La base del primer transistor, un 2N2222A, es activada por un pin de salida del microcontrolador PIC a través de una resistencia de 100 Ohms. Se establece un camino de baja impedancia entre el emisor y el colector que activa un segundo transistor, un TIP41C. Finalmente, se genera un camino de baja impedancia entre emisor y colector para activar el solenoide, y generar el movimiento requerido para activar la tecla deseada.

Gracias a todo esto, pudimos probar la "mano derecha" del Orcobot ya con el teclado , el resultado es el siguiente:



Orcobot - Black Dragon (Luca Turilli Cover)

Por último, ordenamos un poco el cablerio del infierno que había entre los solenoides de la octava que estamos probando y el microcontrolador maestro.

sábado, 4 de abril de 2009

Hunting High And Low

Buenas nuevas hermanos metaleros, esta semana construimos una base de improviso para hacer algunas pruebas de funcionamiento y control de los actuadores finales del robot.

Construcción de la base para pruebas.

Gracias a estas pruebas pudimos observar el comportamiento que tendrán los solenoides una vez acoplados en la estructura de robot, con la ventaja de no tener que armarla todavía. Además, nos permitió hacer cambios de diseño necesarios antes de montar la estructura final.

El día de hoy probamos el circuito de control con una octava completa. El proceso que se llevo a cabo fue el siguiente:
  1. En la aplicación que desarrollamos importamos en formato MIDI la melodía que deseamos que el robot ejecute.
  2. Una vez que la aplicación decodifica el MIDI, envía al microcontrolador (PIC18F4550) los mensajes que nos interesan (NOTE ON y NOTE OFF) de forma serial.
  3. El microcontrolador se encarga de activar o desactivar los solenoides según las instrucciones que reciba de la PC.
A continuación el video de la prueba.



Como pueden observar en el video, la velocidad de los solenoides ejectuando es bastante buena, asi que quiensabe... una vez terminado, el orcobot podria convertirse en el Jens Johansson de los robots :D.

Desafortunadamente vamos un poco atrasados en la construcción de la estructura del robot. Aprovecharemos estas vacaciones de semana santa para avanzar todo lo posible, esperamos tener algunas fotos muy pronto.

Las pruebas siguen y el orcobot esta cada vez mas cerca de ver la luz.
Los dioses al Valhalla están de nuestro lado.



miércoles, 25 de marzo de 2009

Unraveling the Mysteries...

Después de mucho trabajo, al fin tenemos una versión estable del programa de transmisión con la cual podemos trabajar. Hoy les traemos las primeras pruebas de comunicación entre la PC y el microcontrolador. Les recomendamos que se den una vuelta por las entradas anteriores de MIDI al desnudo para que estén al tanto de los avances que se tienen hasta ahora.

Protoboard con circuito de pruebas.

Bien, debido a la falta de drivers para Linux del conversor serial-usb que utilizamos para transmitir los datos desde la PC, trabajamos sobre una maquina virtual corriendo Windows XP. La aplicación esta desarrollada en Java y utilizamos NetBeans como ambiente de desarrollo (puedes descargar la versión mas nueva de este IDE con la nueva versión de java aquí).

El programa funciona de la siguiente manera:
  1. Abrir archivo MIDI.
  2. Decodificar.
  3. Discriminar propiedades de mensajes ON/OFF .
  4. Enviar mensajes al Microcontrolador vía RS232.

Utilizamos el microcontrolador PIC18F4550 como receptor de los datos, no tenemos ninguna razón en especial para utilizar ese modelo más que el número de pines libres que tiene, ademas contabamos ya con uno, talvez en el futuro sea sustituido por un microcontrolador un poco menos "sobrado".

Como mencionamos en las entradas anteriores de MIDI al desnudo, la transmisión de los datos se da de forma serial. Cuando cargamos los datos del MIDI al microcontrolador, la aplicación en la PC envía por el puerto serial un String con la nota a pulsar y la octava en la que esta se encuentra. Esta acción se repite cada determinado tiempo dependiendo de la estructura de la melodía cargada.

El microcontrolador trabaja voltaje TTL, es por eso que al comunicar serialmente la computadora con un micro se debe utilizar el circuito integrado MAX232, este circuito cambia los niveles TTL a los del estándar RS-232 en TX, y los niveles RS-232 a TTL en RX. El circuito típico se muestra en la siguiente figura:
Diagrama de conexiones del MAX232.

El formato en el que se envían los datos, es el siguiente
  • G4 : Nota Sol en la cuarta octava.
  • Y4 : Nota Fa sostenido en la cuarta octava.
  • Etc.
Transmision de datos desde la aplicación.

El microcontrolador compara el string recibido y ejecuta acciones convenientes dependiendo de la octava en la que se encuentra la nota recibida. Para estas pruebas preliminares declaramos un pin de salida por cada nota e ignoramos por ahora la información de octavas. En cada pin de salida conectamos un LED (en el robot serian los solenoides) que muestra si la nota esta o no siendo pulsada.


Video de las primeras pruebas. Nos alegra informar que fueron todas satisfactorias.

Niño: Oiga señor orco... ¿Por que no se esforzaron un poco más y comunicaron la PC y el micro vía USB?
Orco: Porque no.


lunes, 23 de marzo de 2009

Robot Blacksmith's Workshop

En esta entrada vamos a hablar un poco sobre la forma en la que el robot ejecutará una pieza musical. Para poder tocar cada nota del teclado utilizaremos 19 solenoides (7 en la armonía y 12 en la melodía), éstos van montados en soportes que se pueden mover a traves de todo el teclado (tal y como lo harían un par de manos). Esta semana dos orcos herreros cosecharon el mineral de la tierra media para traer al mundo dos soleras que harán el papel de dichos soportes.

Cortaron una lámina de acero inoxidable en dos partes de 187 mm y otras dos de 100mm, después hicieron unos pequeños cortes para facilitar el ensamble. El resultado fue el siguiente:

Vista de los soportes con los solenoides

Como se puede observar, los solenoides que corresponden a los tonos completos embonan perfectamente dentro del ensamble, tal es la habilidad práctica de los herreros que habitan en Minas Morgul.

Al principio, debido a su peso, dudabamos de si el acero inoxidable sería la mejor opción para fabricar los soportes, sin embargo una vez construido, el peso probó ser aceptable; además, ese peso nos puede ayudar a reducir el error de inercia que se podría presentar por la naturaleza de los motores.

Pendientes:
  • En los siguientes dias se realizará la perforación de las soleras que sostienen a los solenoides para que puedan ser atornillados a éstas.
  • Soldar toda la creación y dar un acabado superficial para eliminar imperfecciones.
  • Se seguirán los mismos pasos para el segundo conjunto de actuadores que servirán como armonía, esta otra mano será incluso mas liviana que la otra ya que se utilizarán menos solenoides(7 por octava, en vez de 12 por octava).

viernes, 20 de marzo de 2009

Standing by

Tengan paciencia punks... fue semana de examenes y entrega de algunos proyectos, sin embargo hemos estado trabajando duro en la construcción de la base y en las primeras pruebas de transmision del MIDI decodificado al microcontrolador maestro del robot... subiremos algunas imagenes y videos muy pronto !

Por el momento les dejamos este interesante video del himno nacional... en version jazz!



Mandamos un saludo a todos los dudes que nos visitan fuera de la república mexicana, en especial a los hermanos de MetalArgentum.

Gracias a todos por su apoyo!

martes, 10 de marzo de 2009

Avances del Segundo Parcial

View more presentations from orcobot.

lunes, 9 de marzo de 2009

The H-bridge Indeterminacy

Nuestra suerte cambia bastante conforme pasan los días y la fecha de entrega se acerca cada vez mas. Asi que para evitar esas sucias desventuras y jugarretas del destino que el universo tanto disfruta, hemos decidido dar marcha a ciertos planes de contingencia.

Uno de los problemas más importantes y aún no resueltos en la construccion del robot es el de los motores que darán movimiento a los actuadores. Como han visto en entradas anteriores, tenemos varias opciones:
  • Motores a Pasos.
  • Motores de DC
  • Motores de AC
Hemos estado considerando las ventajas y desventajas de cada uno, sin embargo aún quedan algunos cabos sueltos y algunas pruebas por hacer. Por lo pronto armamos y probamos en proto el circuito de un puente H con interfaz para Microcontrolador.

El circuito esta constituido por:
  • L293C
  • Optoacopladores
  • Resistencias
Es un circuito bastante simple y funcional, por el momento les dejamos el diagrama elaborado en MULTISIM y la plantilla del circuito elaborado en Ultiboard.

Diagrama de puente H en MULTISIM.

Plantilla del Circuito.

jueves, 5 de marzo de 2009

Comunicación Serial en JAVA


Hola pequeños druggies, en esta entrada vamos a hablar de un tema muy interesante que puede ser de bastante utilidad para muchos de ustedes. Nos referimos a la comunicación serial utilizando JAVA como lenguaje de programación.

En la entrada “MIDI al desnudo (parte 3)” definimos que la comunicación entre la interfaz y el microcontrolador maestro del robot se haría de manera serial. Esto principalmente debido a la facilidad y simplicidad de manejo en comparación al protocolo USB.

Es cierto que estamos usando un adaptador USB–Serial, sin embargo para la computadora esto es transparente, es decir, para la máquina el cable adaptador es un puerto COM común y corriente.

Una vez aclarado esto, vamos a la parte interesante. ¿Cómo manipulamos el flujo de datos a través de un puerto COM utilizando JAVA? Bien, primero que nada debemos instalar unas cuantas librerías que pueden encontrar en www.rxtx.org

Instalación de rxtxSerial (www.rxtx.org) en Linux

Baja el paquete “rxtx-2.1-7-bins-r2.zip (Final)”
copia librxtxSerial.so a /usr/lib
copia RXTXcomm.jar a [JDK-directory]/jre/lib/ext/

Instalación de rxtxSerial (www.rxtx.org) en Windows

Baja el paquete “rxtx-2.1-7-bins-r2.zip (Final)”
copia rxtxSerial.dll a [JDK-directory]\jre\bin\rxtxSerial.dll
copia RXTXcomm.jar a [JDK-directory]\jre\lib\ext\RXTXcomm.jar

Y eso es todo, ahora solo tienen que asegurarse de agregar los imports adecuados al principio de su programa. Les recomendamos visitar la wiki del proyecto RXTX, hay muchísima información con muchos ejemplos y proyectos para descargar.

Aqui esta el ejemplo en el que nos basamos para echar a andar nuestra interfaz de usuario. Este programa en Java nos muestra como escribir el clásico “Hello World" en el puerto serie. Recuerden que tanto un compilador de Java como las librerías RXTX deben estar instalados en su computadora para que esta aplicación funcione.

miércoles, 4 de marzo de 2009

Motores a pasos

Una opcion para controlar el movimiento de los actuadores a través del teclado es el uso de motores a pasos. La ventaja de usar motores a pasos es la alta precisión y repetitividad en cuanto a posicionamiento que estos poseen. Ademas, los dioses de la tierra media nos han bendecido con dos ejemplares de gran potencial.

Motor a pasos común.

Los motores de pasos son dispositivos electromecánicos que convierten una serie de impulsos eléctricos en desplazamientos angulares discretos, es decir son capaces de avanzar angularmente dependiendo de sus entradas de control (wiki) .

Estos motores cuentan con un torque de detención, característica que no se encuentra en un motor DC, esta cualidad permite que el motor de pasos se mantenga firmemente en su posición cuando no está girando, siempre y cuando este energizado.

En contraparte a un motor convencional de corriente directa, el control de un motor paso a paso no se realiza aplicando un voltaje en las bobinas. Estos motores cuentan con varias bobinas que, para producir el avance de un paso, necesitan ser alimentados en una secuencia determinada. De esta manera es como siguiendo una cierta secuencia se produce el giro del motor y aplicando lógica inversa se consigue que el motor gire en el sentido opuesto. En caso de que la secuencia de alimentación sea incorrecta el motor se moverá aleatoriamente sin obtener los resultados esperados.

Secuencia de un motor de pasos bipolar.

El MC3479 es un circuito integrado diseñado para manejar motores de pasos de dos fases en la modalidad bipolar. Este circuito integrado está formado por una serie de entradas lógicas, una sección de decodificación y secuenciación, dos apartados para el manejo las bobinas del motor, también cuenta con la terminal de salida fase A.

Diagrama del controlador MC3479 .

Las características de operación de este C. I. son las siguientes:
  • Alimentación: 7.2 a 16.5 V.
  • Soporta hasta 350 mA/bobina.
  • Se puede seleccionar el sentido de los pasos CW/CCW, además de controlar la secuencia de operacion Full/Half Step.
  • Entradas compatibles con las familias TTL y CMOS.
  • Se calientan como el infierno.

martes, 3 de marzo de 2009

MIDI al desnudo (parte 3)

Hola todo el mundo, este día les tenemos preparado un interesante update sobre la interfaz de usuario del robot.

Como ya mencionamos en entradas anteriores, el Orcobot va a ejecutar piezas musicales previamente “cargadas” en su memoria. Sin embargo, este proceso es mucho más complejo de lo que parece. Trataremos de ser muy claros para explicarlo.

Primeramente, un archivo MIDI es cargado en la interfaz de usuario, la interfaz se encarga de decodificar e interpretar los mensajes MIDI (Ver entrada MIDI al desnudo 1). Una vez hecho esto, los valores extraídos de cada mensaje (instrucción, nota, velocidad, etc.) son enviados de forma serial al microcontrolador maestro, que los almacena en su memoria FLASH.

El programa del maestro va a ejecutar las instrucciones almacenadas en memoria y buála!! Let’s Rock!!

¿Pero como diablos le vamos a hacer para entender y descifrar un archivo MIDI?

Afortunadamente, existe bastante documentación sobre este estándar y hemos trabajado mucho en comprenderlo. Además, encontramos en la red varios códigos de prueba que nos permiten hacer la decodificación e interpretación del protocolo (Ver entrada MIDI al desnudo 2).

Impresión de pantalla de la interfaz de usuario.

Hicimos nuestra interfaz de usuario utilizando dos de estos ejemplos como base (DumpReceiver.java y DumpSequence.java). Como pueden observar en la fotografía, los datos decodificados son mostrados en la interfaz, es decir, tenemos ya las notas de la canción y la velocidad a la que deben ser ejecutadas.

Programas base para la interfaz:

DumpSequence.java
DumpReceiver.java

Despliegan el contenido de un archivo MIDI decodificado
Uso: java DumpSequence midifile

Dejamos pendiente la transmisión serial de los datos para otra entrada.

Por último, agradecemos de manera muy especial a PiKoS_NaN. Su valiosa ayuda en el proceso de diseño y desarrollo de software hizo posible esta interfaz.

viernes, 27 de febrero de 2009

La Buena Nueva Del Reino Del Dragón de Cobre

Se están desarrollando vías alternas para el movimiento de los actuadores a traves del teclado. Algunas de estas opciones son:

  • Control de Motores de Corriente Alterna

  • Control de los Motores de Pasos con un Shift Register

Una buena nueva en el horizonte vislumbra un prometedor futuro para los orcos, contamos con una tablilla forjada en el reino del cobre, cuyo circuito es la clave para el control de motores a pasos (hecha en clase de sistemas lógicos).


Vista de la tablilla por ambos lados.

MIDI al desnudo (parte 2)

Después de mucho tiempo de búsqueda y muchas falsas alternativas, el buen Grishnákh nos trae buenas nuevas sobre este asunto. En este link podemos descargar varias clases de JAVA con licencia GNU en donde podemos manipular los archivos MIDI de muchas formas. Así que ahora es solo cuestión de trabajar arduamente para modificarlas e implementarlas.

IRON MAIDEN


Un intrépido orco fue en representación del equipo a la ciudad de Monterrey a ver a la doncella de hierro en su gira "Somewhere Back in Time" el pasado 25 de Febrero, trayendo consigo la buena vibra al equipo y las ganas de que el Orcobot sea tan bueno como Eddie recorriendo el escenario.

El concierto estuvo excelente, hubo grandes bandas de apoyo como Carcass y Morbid Angel. Además, Maiden montó un espectáculo de Heavy Metal como pocas veces se ha visto en estas tierras. El espíritu del Orcobot ha cobrado mas fuerza y estamos listos para hacer de este robot el mejor de la clase. *

* Aclaramos que Los Orcos mantendremos nuestro honor intacto y no entraremos al sucio y repugnante juego de ponerle el pie a los demás equipos.

Up the Irons !

Por fin

Enhorabuena ya tenemos una base para colocar el robot, la cual fue facilitada por el ITESM. Muchas gracias a los directivos y personal de planta física.

Entre otras cosas, las solenoides que pedimos llegarán el fin de semana(según tenemos entendido). El costo final de todas fue de $2990.00 MXN por 13 solenoides.

El profesor nos dió un resorte que pensamos sería ideal para lo que buscamos, sin embargo, al ir a la tienda donde los tienen nos dieron la terrible noticia que no contaban con ellos y que no los podían mandar pedir(su lema es que si no los tienen los fabrican, pero no mencionaron en ningún momento que podrían hacerlo), así que la búsqueda sigue en pie.

Olvidamos mencionar que también el profesor nos obsequió cuatro microcontroladores 89c52 los cuales utilizaremos como esclavos, uno para la melodía, otro para la harmonía, otro más para el control lineal y finalmente uno como contingencia por si llegan a fallar.

viernes, 20 de febrero de 2009

Orc's Council



Esta semana tomamos varias decisiones importantes y urgentes con respecto a la construcción, forma y programación del robot.

Para empezar, debido a que el precio de los solenoides que usaremos como "dedos" es obscenamente alto ($230.00 MXN c/u), optamos por reducir el numero de actuadores de 24 a 19 (7 en la armonia y 12 en la melodía), manteniendo asi la idea de tocar un teclado y descartando el cambio de instrumento que se planteo como solución alterna.

Se realizaron pruebas con resortes para lograr devolver las solenoides a su posición original (que según vimos era necesario para que existiera movilidad entre octavas) y se pudo observar que si se utiliza un resorte de 1.5cm (para que la carrera del vástago sea 1cm) se obtiene suficiente fuerza, sin embargo la velocidad que esperabamos tener se veía reducida sobremanera.

En cambio un resorte de 1cm (que nos permite tener una carrera de .5cm) tiene una velocidad aceptable, pero el desplazamiento no era suficiente para presionar una tecla. Una solución que se propuso es mover la solenoide mas adentro de la tecla (en vez de en el extremo) para que, según las leyes de la trigonometría, se requiera de un menor desplazamiento para presionar ésta.

Las pruebas continúan. Quedan 70 dias...

Sensores de Localización

Presentación de la exposición hecha en clase el dia martes 17 de Febrero sobre sensores de localización.

martes, 17 de febrero de 2009

Serenatas from Hell

Estos valientes bardos pusieron su vida en peligro durante la madrugada del 14 de Febrero dando unas bonitas serenatas a unas cuantas doncellas afortunadas. Todo esto por $1050.00 rupias que usaremos para comprar parte de los sobrevaluados componentes del robot.

Avances del Primer Parcial


martes, 10 de febrero de 2009

Estructura y Pruebas de Diseño

Hola a todos, con altas y bajas el proyecto va tomando mejor forma cada día. Ya tenemos algunos dibujos computarizados de la estructura que sostendrá los solenoides sobre el teclado y se han realizado las primeras pruebas de control sobre los actuadores a través de un microcontrolador.


Muy pronto subiremos el diagrama de esta pequeña práctica y unos dibujos mas detallados. Con un poco de suerte, la decodificación de los archivos MIDI estará lista para mediados de la próxima semana.


[Update / 17 Feb]

Aqui estan los diagramas prometidos de las pruebas realizadas con el microcontrolador y los solenoides.




Utilizamos el microcontrolador 8051 para controlar el movimiento de dos solenoides por medio de una interface RS-232. Tuvimos un pequeño percance debido a que el flujo de corriente del transistor 2N2222 al Tip 41 sobrepasaba los limites de este (tip 41), provocando desperfectos físicos en el mismo.



Consultando con el profesor se intentó rediseñar el circuito para tener un desempeño óptimo, sin embargo antes de poner en práctica el nuevo diseño, realizamos una prueba mas en el viejo circuito sustituyendo el transistor 2N2222 por un transistor genérico, funcionado este a la perfección.

Saludos a todos.

sábado, 7 de febrero de 2009

Serenatas !

Tres talentosos juglares y una pandilla de orcos traídos desde los oscuros y fríos rincones de Barad-dûr interpretan una variada colección de boleros románticos para tu chic@ este 14 de Febrero.
Mándanos un correo a orcobot@gmail.com o comunícate a los teléfonos que se encuentran en los boletines impresos en los pasillos para recibir informes. Apoya el desarrollo tecnológico en el campus.

viernes, 6 de febrero de 2009

MIDI al desnudo (Parte 1)

Hola dudes, hoy traemos una pequeña explicación de como trabaja el protocolo MIDI.

La especificación MIDI (Musical Instrument Digital Interface) no transmite señales de audio, sino datos de eventos y mensajes controladores que se pueden interpretar de manera arbitraria. Se puede decir que un MIDI es una especie de "partitura" que contiene instrucciones en valores numéricos (0-127) sobre cuándo generar cierta nota de sonido y las características que debe tener; de tal forma que el aparato al que se envíe dicha partitura la transformará en música completamente audible.

El byte MIDI, a diferencia de los bytes estándar de ocho bits de las computadoras, está compuesto por diez bits. (start bit, que siempre es 0, 8 bits de datos y stop bit que siempre es 1)

0xxxxxxxx1

El protocolo MIDI se compone de mensajes con n numero de bytes y algo que todos estos mensajes tienen en común es que su primer byte es el byte de Status, este byte nos va a indicar la acción que se va a tomar (tocar o soltar una nota por ejemplo) y lo podemos distinguir porque es el único que tiene el bit 7 encendido (o sea del rango de 0x80 a 0xFF).

Para trabajar con los bytes de Status y poder descifrar su instrucción debemos separar sus 8 bits de datos en dos partes de 4 bits cada una. La primera parte nos dice de que tipo de mensaje MIDI se trata, mientras que la segunda nos indica el canal por el que vamos a transmitir (MIDI tiene hasta 16 canales lógicos).

Ejemplo:

Status Byte: 0x92

El byte de Status 0x92 quedaría con una parte igual a 9 y otra igual a 2. Según la especificación MIDI, un nueve en el primer segmento del byte de Status significa “pulsar nota” y como el segundo segmento es un 2, significa que vamos a pulsar una nota en el canal dos.

Este especifico byte de status (Note On) es seguido por dos bytes de datos, uno que muestra el numero de nota y otro su velocidad Por lo tanto el mensaje completo para pulsar una nota consta de 3 bytes (1 byte de status + 2 bytes de datos).

Como pueden ver, no es una tarea trivial ya que se trata de muchísimos mensajes diferentes para ser leídos, procesados y enviados. El reto de los orcos consiste en poder extraer los mensajes de un archivo MIDI para procesarlos y transmitirlos al microcontrolador que dará órdenes a los actuadores finales.

Hasta aquí dejamos esta breve explicación de la especificación MIDI, si deseas saber un poco mas al respecto te invitamos a visitar este sitio, donde se encuentra toda la especificación.

martes, 3 de febrero de 2009

Algunos Bosquejos


En la presente imagen se muestra un modelo tentativo de la posición de los actuadores, de esta manera los solenoides estarán listos para ejecutar la nota en el tiempo que sea requerido.


Los dos posibles mecanismos que se han conceptualizado hasta ahora son un riel de impresora (matriz de puntos) y un tornillo sin fin manipulado por un motor y una polea (aprovechamiento del torque).


Uno de los problemas que enfrenta el equipo es la corta carrera que presentan los actuadores, ya que se necesita recorrer al menos .4in para accionar la tecla del piano; es por eso que se pensó en una salida alterna la cual es una palanca con un perno garantizando el recorrido mínimo además de aprovechar la palanca para aumentar la fuerza del punto de presión.



Este es un esquema tentativo de la posición del Orcobot, actualmente se tienen dos ideas:

* Hacer una base que proporcione la altura necesaria para que los actuadores queden posicionados encima del piano.
* Hacer una base que se pueda ajustar a la mesa del piano.

martes, 27 de enero de 2009

Funcionamiento del Robot

A continuación presentamos un esquema de cómo es que va a funcionar el robot.




Como ya mencionamos, la pieza musical que el robot interpretara será cargada desde una computadora personal. Los mensajes extraídos del archivo MIDI serán enviados al microcontrolador maestro, el cual se encargará de cargar la información a 4 microcontroladores esclavos cuyo trabajo es controlar los actuadores del robot.

Para elegir un efector final se hicieron varias pruebas en el laboratorio de electrónica usando distintos actuadores (eléctricos y neumáticos principalmente). Debido a las ventajas ofrecidas en cuanto a rapidez de reacción, consumo de corriente y costo, elegimos usar solenoides de carrera suave como actuadores del robot.

Un solenoide no es más que una bobina que genera un campo magnético cuando una corriente eléctrica circula a través de él.


Los esclavos se encargarán de controlar la corriente que fluye por ellos acorde a la melodía que se vaya a interpretar, sujetando o liberando el émbolo del solenoide y por consiguiente pulsando o no ciertas teclas.

Eso es todo por ahora, dudas y sugerencias son bienvenidas en la sección de comentarios. Saludos.

domingo, 18 de enero de 2009

Teoría detrás del robot

Una octava es un conjunto de notas que empieza en cierta nota y termina en la nota antes de que se vuelva a repetir, sabemos que las notas musicales son:



Sin embargo, cinco de estas notas tienen sostenidos quedando de esta manera (el signo de gato signfica sostenido):

Do Do# Re Re# Mi Fa Fa# Sol Sol# La La# Si

Esto nos da 12 notas, el equipo decidió utilizar un teclado de cinco octavas lo que quiere decir 61 notas para controlar(cinco octavas + Do) siendo las teclas blancas tonos completos y las negras sostenidos.

Se pretende que el robot interprete en "tiempo real" una pieza musical a partir de un archivo MIDI, simulando asi a un ser humano leyendo una partitura. El protocolo MIDI consta de tres bytes que dictan cuando una nota se toca, qué nota y cuando se deja de tocar(velocidad). Mientras que el cable midi consta de 5 pines: 1 y 3 que no se utilizan, 2 y 4 que son voltaje y 5 que es el que transfiere datos de manera serial.

sábado, 17 de enero de 2009

¡ Hola a todos !

Sin música la vida sería un error dijo el buen Friedrich, desde los autómatas de principios de siglo hasta los impresionantes y complejos robots japoneses, la música ha estado presente en la robótica de una manera muy interesante. Nos gustaría empezar este blog mostrando el estado del arte que existe referente a esos robots que llevan la música dentro de si.


Robot Guitarrista Holandés.



Robot Baterista.



Y claro, los japoneses no podían faltar. Con ustedes The Toyota's Robot Quartet Band.



Por ultimo, desde Nueva Zelanda, The Trons, un grupo the robots con bastante ritmo.

  ©Los Orcos - Robótica Aplicada. Theme by Dicas Blogger.

TOPO