jueves, 22 de julio de 2010

ROILA el nuevo lenguaje para Robots


Navegando por la web, me encontre con que estan desarrollando un
lenguaje para poder comunicarnos con los robots, ya que la precensia
de ellos cada vez es mayor, estas investigaciones se realizan en la
Universidad Eindhoven de Tecnología en Holanda, para los que tienen
los lego NXT , ya existe un programa para poder reconocer el lenguaje
En la siguiente nota , colocare un tutorial de la programacion de lego en java, y si
consigo un compilador para c++ lo hago en c++

Bueno aca les dejo el link del vocabulario http://roila.org/language-guide/vocabulary/
y esta es la pagina oficial http://roila.org/

martes, 2 de febrero de 2010

La evolucion Robotica

Revisando en internet encontre un articulo algo interesante , que se trata sobre como el principio de la evolucion es aplicada a los robots y no seria nada fuera de lo comun segun como avansa la tecnologia esto podria ser posible a continuacion el articulo sacado de la pagina de neoteo.com

Robot Altruista

En general, a la hora de diseñar un robot se tienen en cuenta factores como los grados de movimientos necesarios, la precisión que tendrán sus partes móviles y qué tareas debe ser capaz de realizar su software. Los ingenieros toman todos estos datos, hacen su magia, y producen un robot capaz de soldar la carrocería de un coche, manejar un avión no tripulado o pasar la aspiradora por tu casa. Este tipo de robots tiene un comportamiento que se encuentra completamente predeterminado de fábrica, y en la mayoría de los casos se ajustan rígidamente a una serie de reglas establecidas durante el proceso de desarrollo y fabricación. Sin embargo, existen otro tipo de robots en los que su comportamiento es controlado por una “inteligencia artificial” que -por utilizar una palabra simple- “aprende” las reglas que regirán sus movimientos. A este último grupo pertenecen los robots creados por los investigadores de la Ecole Polytechnique Fédérale de Lausanne y la University of Lausanne, en Suiza.


Su creador, el profesor Dario Floreano del The Laboratory of Intelligent Systems (LIS) asegura que los resultados “demuestran que gracias a los mecanismos de la selección natural, sólo unos pocos cientos de generaciones son suficientes para permitir que los robots evolucionen lo suficiente como para ser capaces de circular sin chocar entre sí por el interior de un laberinto, elaboren sofisticadas estrategias de cazadores y presas, cooperen entre sí e incluso desarrollen algo parecido al altruismo". Los robots suizos no tienen un “cerebro electrónico” convencional. Floreano los ha equipado con una red neuronal que modifica su comportamiento a lo largo del tiempo, basándose en sus “experiencias” y en los resultados que obtienen al aplicar cada estrategia. De alguna forma, los humanos aprendemos a desempeñarnos de una forma bastante parecida. Los comportamientos mencionados “tuvieron lugar, en todos los casos, a través de la selección natural, gracias al uso de una red neuronal simple”, dice el profesor. Las neuronas de la capa de entrada de la red neuronal fueron activadas por sensores del robot, mientras que la capa de salida se encargó de controlar sus motores.

Al comenzar el experimento, cada robot del grupo tenía un “genoma” diferente. Este genoma cibernético no es otra cosa que una descripción de las diferentes conexiones que existen entre sus neuronas artificiales. Como puedes imaginar, esta situación dio lugar a una serie de comportamientos singulares y erráticos, siendo la mayoría de las veces incapaces de desplazarse en linea recta, evitar los obstáculos que se interponían en su camino o recorrer el interior del laberinto. Pero la “selección darwiniana robótica” fue modificando estos comportamientos mediante la elección de los genomas artificiales que poseían una mejor aptitud para resolver los problemas que Floreano les planteaba. Estos “genes exitosos” se utilizaban como base para producir la siguiente generación de robots. El equipo de Lausanne encontró que luego de unas 100 generaciones los robots fueron capaces de moverse a través de un laberinto sin chocar con los obstáculos.
Un robot con “libre albedrío” completo podria convertirse en un problema.
Un robot con “libre albedrío” completo podria convertirse en un problema.

Luego se diseñaron experimentos que exigían a los robot aprender el comportamiento típico de los depredadores. Para ello debían -por ensayo y error, tal como ocurre en la evolución biológica- desarrollar estrategias exitosas como el acecho o el uso de los “muros” de su mundo para lograr atrapar a las presas. Asombrosamente, los robots demostraron nuevamente ser capaces de evolucionar, incluso demostrando comportamientos típicamente altruistas. En algunos juegos de los que participaron, en que el objetivo a cumplir requería de la colaboración de dos o mas robots, varias veces algunos se “sacrificaron” (quedando fuera de juego, por ejemplo) para que el equipo que integraban lograse el éxito. "Estos ejemplos de la evolución experimental en robots resultan muy útiles para verificar el verdadero poder que poseen las estrategias de evolución por mutación, recombinación y selección natural", dice Floreano. "La capacidad de los robots para orientarse, escapar de los depredadores, e incluso cooperar es particularmente notable, dado que tenían los genotipos mapeados deliberadamente de forma sencilla, y que las redes neuronales utilizadas estaban compuestas por sólo una docena de neuronas".

Estos resultados, que han sido publicados en Plos Biology, demuestran la viabilidad de los robots capaces de aprender por sí mismos. Llevado al extremo, este concepto permitiría desarrollar una sola clase de robot, con su “cerebro” en blanco, y educarlo luego para la tarea que necesitemos en cada momento. Sin embargo, y a pesar de que se ha descubierto que son capaces de alguna forma de altruismo, no hay que olvidar que siguen siendo máquinas. Y como tales, pueden convertirse en algo peligroso si se salen de control. Un robot dotado de una red neuronal y algo similar al “libre albedrío” completo podría decidir, por ejemplo, que un humano es un obstáculo para la concreción de la tarea que se le ha encomendado, y decidir eliminarlo. Quizás una mezcla entre un cerebro como el probado por Floreano y una serie de rígidas reglas de control, similares a las famosas tres Leyes de la Robótica de Asimov den un mejor -y más seguro- resultado. Por lo pronto, este trabajo ha permitido descubrir que los robots no necesariamente tienen que ser estúpidos: pueden aprender y evolucionar por sí mismos.

jueves, 24 de diciembre de 2009

Módulo ICSP para PIC16F877 y Protoboard

Bueno es un articulo sacado de la UCONTROL . espero q les sea de ayuda

A la hora de programar un microcontrolador, y sobretodo cuando se necesitan hacer pruebas por medio de ensayo y error, la programación ICSP (In-Circuit Serial Programming, o Programación Serial en el Circuito) es la opción mas adecuada y eficiente para hacerlo. En este articulo, veremos como crear un modulo ICSP específico para el PIC16F877, que calza directamente en los pines correctos del integrado en el protoboard.

La facilidad que nos provee la programación ICSP de los microcontroladores PIC es una herramienta que se debe conocer para mejorar la efectividad y rapidez a la hora de hacer pruebas con un circuito con estos integrados. Se puede aprovechar la programación ICSP para que, después de armada alguna placa, modificar, borrar y mejorar el código guardado en el PIC.

En este caso emplearemos este sistema para crear un módulo de programación orientado al uso en un circuito con microcontrolador armado sobre un protoboard, olvidándonos así de tener que remover el PIC del mismo cada vez que necesitamos hacerle cambios al programa, evitando de esta forma los posibles daños que podríamos ocasionarle al circuito integrado.

ICSP

Pero antes de utilizar esta herramienta, presente en prácticamente la totalidad de los microcontroladores PIC, debemos saber como funciona.

En principio, existen dos maneras de hacer que el microcontrolador entre en estado de programación. La primera de ellas es utilizando la HVP (High Voltaje Programming, o Programación por Alto Voltaje) que consta de aplicar un voltaje VIHH, especificado en la hoja de datos, al pin Vpp/MCLR. La segunda es mediante la LVP (Low Voltaje Programming o Programación por Bajo Voltaje), que se logra por medio de la activación del bit LVP de la palabra de configuración del microcontrolador. Cabe destacar que en este ultimo caso, no se necesita llevar el voltaje aplicado al pin Vpp/MCLR hasta VIHH.

Luego de llevar al PIC al estado de programación, se comienza la transmisión serial por medio de los pines PGC (Señal de reloj para la programación serial) y PGD (Señal de datos para la programación serial).

Aparte de las patillas ya mencionadas, se necesita energizar el microcontrolador por medio de los pines VDD y VSS. Esta tensión puede provenir directamente del programador o de una fuente de alimentación externa.



Vista superior en 3D del modulo terminado.

El módulo ICSP para PIC16F877

Se debe saber que los pasos descritos arriba para la programación ICSP son seguidos automáticamente por el software y el hardware de todos los grabadores de PICs. Nosotros solo nos debemos preocupar por la conexión del programador al PIC y por avisar al grabador y al software que se utilizara programación ICSP. Este paso varía de acuerdo a cada hardware y software de programación.



Esquema del Modulo ICSP para el PIC16F877.


Como se puede observar en el esquema, se trata de un circuito extremadamente sencillo cuyos únicos componentes son unos pines SIL para conectarlo directamente en el protoboard. Estos pines están ubicados unos del lado superior de la placa (para conectar el modulo al programador) y otros del lado inferior de la placa (para conectar el modulo al protoboard).






Pines SIL rectos.





Pines SIL en ángulo.




Pines SIL rectos y pines SIL en ángulo luego de ser doblados.


En estos últimos pines se debe tener una consideración especial ya que debido a la altura del circuito integrado, los pines SIL rectos no son los suficientemente largos como para entrar en el protobard. Para solucionar este problema se emplearan unos pines SIL en ángulo recto, que posteriormente se enderezaran hasta quedar en forma recta (como se muestra en la foto). También se debe correr el plástico que mantiene unidos entre si los postes de bronce individuales hacia el extremo de los mismos, para aprovechar su máxima longitud.




El PCB recomendado es el que se ve en la foto. Observe como los pines que provienen del programador se conectan directamente con los pines que corresponden en el PIC, evitándonos así hacer el cableado en el protoboard cada vez que queramos utilizar ICSP.

Debido a que se trata de una placa muy sencilla, no amerita el empleo de un PCB doble cara, por esto a la hora de soldar los pines SIL en ángulo que ya se doblaron en forma recta, se debe atender a que estos deben ser soldados como se ve en la figura.



Vista superior en 3D del modulo terminado.



Vista inferior en 3D del modulo terminado.
Se observa como los pines que van al protoboard se colocan al
contrario de los que van a la conexión ICSP.



Al finalizar la placa solo nos queda probarla y utilizarla en nuestros proyectos con el PIC16F877, olvidándonos de los dolores de cabeza que causan los pines doblados o incluso rotos.



Vista del modelo terminado.

sábado, 5 de diciembre de 2009

Expo FIM

Bueno en todo lo que transcurrio la expo FIM , lo mas esperado fue lo de los warbots
aunque algunos no estaban terminados pero si ubo buenas batallas como podran ver acontinuacion en el video

sábado, 28 de noviembre de 2009

Seguidor de linea

Bueno aca les dejo el video sobre el robot q esta en el blog , el video muestra al robot acabado

jueves, 26 de noviembre de 2009

Libro y Solucionario: Mecanica Vectorial para Ingenieros Beer , Ferdinand , Jhonston



Aca les dejo el libro de estatica Mecanica Vectorial para ingenieros de los autores Beer ,Jhonston . Muy usado para las carreras de ingenieria , les dejo el libro y el Solucionario
links del libro
http://rapidshare.com/files/140316799/MecanicaVectParaIng7EdEspParte1.zip
http://rapidshare.com/files/140316801/MecanicaVectParaIng7EdEspParte2.zip
http://rapidshare.com/files/140316804/MecanicaVectParaIng7EdEspParte3.zip

link del solucionario

http://rapidshare.com/files/136595877/Solucionario_-_Beer____Johnston__Estatica__7ma_edicion.rar

martes, 24 de noviembre de 2009

Microcontroladores PIC - Diseño Práctico de Aplicaciones

Bueno aca les dejo un libro sobre microcontroladores


El Libro es de los autores José Ma. Angulo Usategui, Susana Romero Yesa, Ignacio Angulo Martínez. Completo-Microcontroladores + un cd con los proyectos resueltos, archivos hex. Primera y Segunda Parte.


                                           http://www.mediafire.com/download.php?zdocqi2udym

los links del CD