<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2805937274030587277</id><updated>2012-02-16T07:52:11.224+01:00</updated><category term='nxt-viewer'/><category term='irrelevante'/><category term='lego'/><category term='behavior'/><category term='sensores'/><category term='prototiopos'/><category term='videos'/><category term='wii'/><category term='robots'/><category term='documentacion'/><category term='divagaciones'/><category term='articulos'/><category term='pruebas'/><title type='text'>Nueve años no son nada</title><subtitle type='html'>el nueve es un 3 elevado a 2</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>72</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7021035225595307428</id><published>2009-05-24T13:19:00.004+02:00</published><updated>2009-08-11T14:44:12.973+02:00</updated><title type='text'>Nueve años no son nada</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SoFlXv-c7jI/AAAAAAAAAPU/v8mCZwyy3tw/s1600-h/presentacion.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 150px;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SoFlXv-c7jI/AAAAAAAAAPU/v8mCZwyy3tw/s200/presentacion.jpg" alt="" id="BLOGGER_PHOTO_ID_5368683689492147762" border="0" /&gt;&lt;/a&gt;Con la lectura y defensa del proyecto se pone punto y final tanto a este proyecto como a la carrera. Han sido muchos años y cuando intento recordar mis primeros días de universidad me vienen a la mente recuerdos tan gratos como lejanos.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Como no podría ser de otra forma, desde aquí quiero dar las gracias a todas las personas que me han apoyado a lo largo de todos estos años. Han sido muchas las personas que he conocido durante todo este tiempo y que me han animado a terminar algo que comencé por vocación.&lt;br /&gt;&lt;br /&gt;A día de hoy sigo convencido de haber &lt;span style="font-style: italic;"&gt;recorrido&lt;/span&gt; la carrera que debería formarme en la profesión que siempre he querido ejercer. Ahora me toca tomar otros senderos que espero me lleven a completar una formación que posiblemente no termine nunca.&lt;br /&gt;&lt;br /&gt;A todos los que habéis seguido este blog, gracias.&lt;br /&gt;&lt;br /&gt;A todos los compañeros de la universidad, tanto los que miran hacia la pizarra como a los que miran desde ella, gracias.&lt;br /&gt;&lt;br /&gt;Y a todas las personas que seguramente no lean nunca esta entrada y se que siempre han estado apoyándome, gracias.&lt;br /&gt;&lt;br /&gt;Aunque este no es el lugar propicio para hacerlo, me gustaría incluir aquí la dedicatoria que debería haber figurado en el proyecto.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;A mis padres,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;a mi abuela,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;a Bea, mi chica.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Manuel.&lt;br /&gt;Porque nueve años no son nada, pero en el fondo son mucho.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2WtYktiJiII&amp;hl=es&amp;fs=1&amp;color1=0x006699&amp;color2=0x54abd6"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/2WtYktiJiII&amp;hl=es&amp;fs=1&amp;color1=0x006699&amp;color2=0x54abd6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7021035225595307428?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7021035225595307428/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7021035225595307428' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7021035225595307428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7021035225595307428'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2009/05/nueve-anos-no-son-nada.html' title='Nueve años no son nada'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/SoFlXv-c7jI/AAAAAAAAAPU/v8mCZwyy3tw/s72-c/presentacion.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2501966874590481897</id><published>2009-05-17T17:28:00.002+02:00</published><updated>2009-05-17T17:30:51.006+02:00</updated><title type='text'>Día de la defensa del proyecto</title><content type='html'>Ya tengo fecha definitiva para la lectura y defensa del proyecto. Será el día 22 de Mayo de 2009 a las 17:00 de la tarde en la Sala de Grados de la Escuela Universitaria de Informática de la Universidad Politécnica de Madrid.&lt;br /&gt;&lt;br /&gt;Desde aquí os invito a cualquiera que le apetezca ver la presentación a acudir&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2501966874590481897?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2501966874590481897/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2501966874590481897' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2501966874590481897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2501966874590481897'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2009/05/dia-de-la-defensa-del-proyecto.html' title='Día de la defensa del proyecto'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7268854487765731302</id><published>2009-05-02T10:25:00.003+02:00</published><updated>2009-05-02T10:39:25.236+02:00</updated><title type='text'>El libro</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SfwGBQWTp1I/AAAAAAAAAO0/d_d1vdddyAU/s1600-h/libro.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 170px; height: 200px;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SfwGBQWTp1I/AAAAAAAAAO0/d_d1vdddyAU/s200/libro.jpg" alt="" id="BLOGGER_PHOTO_ID_5331142677537990482" border="0" /&gt;&lt;/a&gt;Finalmente tengo el libro del proyecto entre mis manos. Ha sido mucho tiempo de revisiones y correcciones, pero finalmente recibí el visto bueno de Javi y Félix y ya tengo el libro impreso y entregadas las respectivas copias en secretaría.&lt;br /&gt;&lt;br /&gt;¿Qué significa esto?, imagino que ya lo sabéis, dentro de muy poco podré hacer la lectura pública y eso significará que al fin, después de mucho tiempo  habré dado por concluida esta etapa.&lt;br /&gt;&lt;br /&gt;Ahora ya solo queda preparar una bonita presentación y elegir la fecha de la lectura. Espero poder añadir dos nuevas entradas en breve. Una contando cuando será la lectura (por si alguno os animáis a venir) y otra anunciando que al fin terminé.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7268854487765731302?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7268854487765731302/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7268854487765731302' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7268854487765731302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7268854487765731302'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2009/05/el-libro.html' title='El libro'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SfwGBQWTp1I/AAAAAAAAAO0/d_d1vdddyAU/s72-c/libro.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2572349202339885221</id><published>2008-11-18T12:29:00.003+01:00</published><updated>2008-11-18T12:31:35.985+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>Entregado el anteproyecto</title><content type='html'>Aunque es sólo un trámite, ayer entregué en secretaría el anteproyecto. Con los objetivos alcanzados y gran parte de la memoria ya escrita, sólo queda terminar el 'gran libro de petete' y realizar la lectura.&lt;br /&gt;&lt;br /&gt;No creo que pueda leer antes de Navidad, pero si espero tener terminado el libro para entonces.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2572349202339885221?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2572349202339885221/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2572349202339885221' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2572349202339885221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2572349202339885221'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/11/entregado-el-anteproyecto.html' title='Entregado el anteproyecto'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6079221512587466603</id><published>2008-10-03T11:52:00.002+02:00</published><updated>2008-10-03T11:56:19.077+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><title type='text'>Root de Boston Dynamics</title><content type='html'>&lt;div style="text-align: justify;"&gt;Seguramente recordéis el "&lt;a href="http://nine-years.blogspot.com/2008/03/cuidado-con-el-perro.html"&gt;chucho cuadrúpedo&lt;/a&gt;" de esta &lt;a href="http://www.bostondynamics.com/content/sec.php?section=RHex"&gt;empresa&lt;/a&gt;. He encontrado otro prototipo de esta gente, y tampoco tiene desperdicio&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/f91YplLXQf4&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x006699&amp;amp;color2=0x54abd6"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/f91YplLXQf4&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x006699&amp;amp;color2=0x54abd6" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6079221512587466603?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6079221512587466603/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6079221512587466603' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6079221512587466603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6079221512587466603'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/10/root-de-boston-dynamics.html' title='Root de Boston Dynamics'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7770492695448663650</id><published>2008-09-21T18:22:00.003+02:00</published><updated>2008-09-21T18:30:42.441+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sensores'/><title type='text'>Nuevo sensor EOPD</title><content type='html'>&lt;div style="text-align: justify;"&gt;A través de la página de &lt;a href="http://robotikas.blogspot.com/2008/09/nuevo-sensor-de-hitechnic-eopd.html"&gt;robotikas&lt;/a&gt; descubro un nuevo sensor comercializado por &lt;a href="http://www.hitechnic.com/"&gt;HiTechnic&lt;/a&gt;, que al igual que el de ultrasonido es capaz de medir la distancia que le separa de los objetos situados frente a él, pero es este caso la medida se realiza por medio de un haz de luz.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SNZ2TBimCyI/AAAAAAAAANw/iwFqyXeRL-A/s1600-h/EOPD-TH.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SNZ2TBimCyI/AAAAAAAAANw/iwFqyXeRL-A/s200/EOPD-TH.jpg" alt="" id="BLOGGER_PHOTO_ID_5248512484950018850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;En leJOS no se comenta nada de la implementación de una nueva clase para este sensor, pero es lo que tiene el software libre, que siempre puedes hacerlo tu mismo.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7770492695448663650?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7770492695448663650/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7770492695448663650' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7770492695448663650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7770492695448663650'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/nuevo-sensor-eopd.html' title='Nuevo sensor EOPD'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SNZ2TBimCyI/AAAAAAAAANw/iwFqyXeRL-A/s72-c/EOPD-TH.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-670831835706812591</id><published>2008-09-19T15:52:00.004+02:00</published><updated>2008-09-19T16:17:10.560+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='behavior'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Comportamiento (III): Barras Verticales</title><content type='html'>&lt;div style="text-align: justify;"&gt;Las dos versiones anteriores necesitaban ser mejoradas, y para ello he cambiado el esquema de interpretación de la información.&lt;br /&gt;&lt;br /&gt;La lectura obtenida del mando es un conjunto de puntos 'vistos' en un marco de 1024x768 (como ya comenté en anteriores entradas) y lo que hacemos es dividir esta ventana, de una anchura de 1024px, en diversas barras verticales del mismo ancho. A cada barra le asignamos un peso, siendo 0 el peso de la barra central. Así mismo determinamos dos puntos críticos, uno situado a la derecha del 0 y otro a la izquierda.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SNOxiRDlpqI/AAAAAAAAANg/TawxnGIqMxk/s1600-h/BehaviorV3-1.png"&gt;&lt;img style="margin: 0pt auto 10px;display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SNOxiRDlpqI/AAAAAAAAANg/TawxnGIqMxk/s400/BehaviorV3-1.png" alt="" id="BLOGGER_PHOTO_ID_5247733193068881570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Los puntos vistos por la cámara de infrarrojos quedarán distribuidos en las barras, por lo que adquieren el peso perteneciente a dicha barra. Sumamos el peso de cada punto y obtenemos un valor final comprendido entre (-inf , +inf)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SNOyOH53d7I/AAAAAAAAANo/N8GzNrZMs1E/s1600-h/BehaviorV3-2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SNOyOH53d7I/AAAAAAAAANo/N8GzNrZMs1E/s400/BehaviorV3-2.png" alt="" id="BLOGGER_PHOTO_ID_5247733946526431154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Este peso final (en el ejemplo sería -4) se contrasta con los intervalos que forman los puntos críticos entre si y las asíntotas horizontales. La acción tomada por el robot estará determinada por el intervalo al que pertenezca este peso. Os dejo un vídeo que seguro es mas ilustrativo que mi charla (los robots del vídeo son los nuevos modelos)&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2WtYktiJiII&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x006699&amp;amp;color2=0x54abd6"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/2WtYktiJiII&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x006699&amp;amp;color2=0x54abd6" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-670831835706812591?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/670831835706812591/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=670831835706812591' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/670831835706812591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/670831835706812591'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/comportamiento-iii-barras-verticales.html' title='Comportamiento (III): Barras Verticales'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/SNOxiRDlpqI/AAAAAAAAANg/TawxnGIqMxk/s72-c/BehaviorV3-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3028921340248126527</id><published>2008-09-16T19:58:00.004+02:00</published><updated>2008-09-16T20:12:31.738+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Nuevos Prototipos</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://dolfd.deviantart.com/art/Robot-33702670"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SM_21uZYYLI/AAAAAAAAANY/u2Dgi7oGkNo/s200/Robot_by_DolfD.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5246683493757903026" /&gt;&lt;/a&gt;El diseño estructural de los anteriores robots daba algunos problemas de estabilidad y solidez, así que he tenido que reconstruir ambos. Estos robots tienen el mismo chasis, compartiendo la posición de la rueda loca y la distancia entre ruedas.&lt;br /&gt;&lt;br /&gt;El robot que hará de líder ha perdido sus dos apoyos posteriores quedando la rueda trasera situada en el centro de la plataforma con los diodos. La distancia entre ruedas se ha mantenido, así como la inclinación del brick.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SM_2G6-0w0I/AAAAAAAAANQ/z5wB5jzpm4c/s1600-h/MamapatoV2-4.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SM_2G6-0w0I/AAAAAAAAANQ/z5wB5jzpm4c/s400/MamapatoV2-4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5246682689682326338" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;El otro robot sólo ha conservado el chasis, con la rueda loca y la distancia entre ruedas. Ha sido complicado encontrar una estructura para sostener el mando sin que este se cayese o moviese en exceso. Puedo decir con orgullo que es el robot mas feo que he construido nunca.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SM_1V7UpXyI/AAAAAAAAANI/quLKWQB8e4g/s1600-h/PatitoV2-4.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SM_1V7UpXyI/AAAAAAAAANI/quLKWQB8e4g/s400/PatitoV2-4.png" alt="" id="BLOGGER_PHOTO_ID_5246681847960264482" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3028921340248126527?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3028921340248126527/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3028921340248126527' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3028921340248126527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3028921340248126527'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/nuevos-prototipos.html' title='Nuevos Prototipos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/SM_21uZYYLI/AAAAAAAAANY/u2Dgi7oGkNo/s72-c/Robot_by_DolfD.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2436564773305803458</id><published>2008-09-16T16:44:00.004+02:00</published><updated>2008-09-16T17:43:32.550+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='behavior'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Comportamiento (II) : El autómata</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://art-ondi.deviantart.com/art/Automaton-67294322"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SM_KrwVpr1I/AAAAAAAAAMw/JcoAe7U_zIs/s200/Automaton_by_art_ondi.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5246634943968816978" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;El primer comportamiento es sencillo e intuitivo, pero carece de encanto. Para 'colorear' a esta forma de actuar imité su toma de decisiones pero esta vez implementadas por medio de un autómata. Este autómata evalúa el centro de la figura formada por los cuatro puntos leídos por el mando, y en función del valor de este se determina el siguiente estado.&lt;br /&gt;&lt;br /&gt;Acompañando a este valor de entrada existe un segundo dato, al que podría llamar 'paquetes perdidos', que almacena el número de veces que el mando no ha obtenido una lectura de los cuatro puntos que se necesitan para calcular el centro. Si su valor supera un umbral, el autómata retorna al estado de reposo.&lt;br /&gt;&lt;br /&gt;Esta nueva forma de actuar permite mayor flexibilidad para perseguir al primero de los robots. Si se pierden paquetes por alguna causa, el robot no se detiene hasta que esta pérdida de información es significativa.&lt;br /&gt;&lt;br /&gt;El siguiente esquema intenta ilustrar este comportamiento.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SM_PzQ69BbI/AAAAAAAAAM4/5q1HPXQzCyg/s1600-h/Automata-BehaviorV2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SM_PzQ69BbI/AAAAAAAAAM4/5q1HPXQzCyg/s400/Automata-BehaviorV2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5246640570532431282" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2436564773305803458?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2436564773305803458/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2436564773305803458' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2436564773305803458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2436564773305803458'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/comportamiento-ii-el-autmata.html' title='Comportamiento (II) : El autómata'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/SM_KrwVpr1I/AAAAAAAAAMw/JcoAe7U_zIs/s72-c/Automaton_by_art_ondi.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-1994122687934581836</id><published>2008-09-11T17:37:00.005+02:00</published><updated>2008-09-16T16:46:34.845+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='behavior'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Comportamiento (I) : La lógica</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://niki2die4.deviantart.com/art/Logic-76547537"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SM_GD6q_HCI/AAAAAAAAAMg/jN7c5iySnFQ/s200/Logic_by_niki2die4.png.jpeg" alt="" id="BLOGGER_PHOTO_ID_5246629861501377570" border="0" /&gt;&lt;/a&gt;El primer comportamiento implementado para que los robots se persigan ha sido posiblemente el mas evidente apoyándose en la visión de la cámara de infrarrojos, y en la aplicación de la lógica para tomar la decisión.&lt;br /&gt;&lt;br /&gt;La cámara como ya comenté, tiene una resolución de 1024 puntos en su parte horizontal. Estos puntos los divido en tres intervalos:&lt;br /&gt;&lt;br /&gt;(-inf, -x)&lt;br /&gt;[-x, x]&lt;br /&gt;(x, inf)&lt;br /&gt;&lt;br /&gt;Con los cuatro puntos vistos por la cámara, el robot construye una figura geométrica cuadrangular. De esta figura se obtiene el centro y el área.&lt;br /&gt;&lt;br /&gt;Si el área supera una magnitud conocida de antemano, el robot se detiene, ya que se encuentra demasiado cerca del objetivo, en caso contrario se comprueba a cual de los intervalos pertenece el centro. Según el intervalo, se ejecuta una acción: virar a la izquierda, a la derecha o continuar al frente.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-1994122687934581836?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/1994122687934581836/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=1994122687934581836' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1994122687934581836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1994122687934581836'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/comportamiento-i-la-lgica.html' title='Comportamiento (I) : La lógica'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/SM_GD6q_HCI/AAAAAAAAAMg/jN7c5iySnFQ/s72-c/Logic_by_niki2die4.png.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-4478734783987370876</id><published>2008-09-11T16:42:00.006+02:00</published><updated>2008-09-12T10:47:18.043+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='documentacion'/><title type='text'>Mensajes al espacio</title><content type='html'>&lt;div style="text-align: justify;"&gt;Con la modificación del firmware, me vi obligado a cambiar la forma en la que el ordenador y el Pc se  comunicaban. Hasta ahora, el Pc se conectaba con el robot por medio de bluetooth, y escribía en los registros de este de forma directa. Esto ya no sería posible, así que había que buscar una solución elegante.&lt;br /&gt;&lt;br /&gt;En un primer momento pensé que el Pc, ejecutando Python (Pp), establecería conexión con el Robot, que ejecuta Java (Rj). Rj quedaría a la escucha de peticiones de conexión que vendrían por parte de Pp, una vez establecida existiría un paso de mensajes entre Pp y Rj. Estos mensajes indicarían al robot que acción debería tomar. Pero algo no salió bien, los mensajes llegaban al buffer de entrada de Rj, pero no logré obtenerlos por completo.&lt;br /&gt;&lt;br /&gt;Así que hice una segunda aproximación, y situé un servicio intermedio, escrito en Java (Pj) que se encarga de arrancar un puerto de escucha, recibe una petición de conexión por parte de Pp. Entonces es él quien se conecta con Rj para continuar haciendo de intermediario entre Pp y Rj. Esta segunda solución si funcionaba, ya que el servidor Pj si se comunica correctamente con Rj.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SMk57tiiXaI/AAAAAAAAALA/iejXptkaR8Y/s1600-h/ModeloServidor-FigA.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SMk57tiiXaI/AAAAAAAAALA/iejXptkaR8Y/s400/ModeloServidor-FigA.png" alt="" id="BLOGGER_PHOTO_ID_5244786939049172386" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ante la necesidad de utilizar un servidor que me hiciese de intermediario entre Pp y Rj, decidí aprovechar todas las ventajas que podía sacarle a Pj. Ahora tenía un nuevo componente software, que se ejecuta como servidor en alguna parte del mundo. Por medio de TCP/IP recibe peticiones de conexión de un cliente y negocia una conexión (mediante bluetooth) con un robot, haciendo llegar a este los mensajes del cliente. La ventaja mas inmediata era aprovechar la programación en hilos, de tal forma que un sólo servidor escuchando en un puerto determinado pudiese establecer múltiples conexiones Pp-Rj.&lt;br /&gt;&lt;br /&gt;De esta forma di un tercer paso para implementar por completo una arquitectura cliente servidor, en la cual entran en juego tres elementos: Pp, Pj y Rj. Para cada petición de conexión recibida de Pp, Pj crea un hilo que servirá de intermediario en el envío de mensajes Pp &lt;-&gt; Rj, una vez que Pp desea terminar la conexión el hilo termina su ejecución.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SMk58AVAnNI/AAAAAAAAALI/ttjX_M1w-Yk/s1600-h/ModeloServidor-FigB.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SMk58AVAnNI/AAAAAAAAALI/ttjX_M1w-Yk/s400/ModeloServidor-FigB.png" alt="" id="BLOGGER_PHOTO_ID_5244786944092708050" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Un último detalle que quedaba por rematar era crear un protocolo de conexión, de tal forma que Pj supiese con que Rj deseaba conectarse Pp. Con este protocolo remataba la gestión de las conexiones.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SMk58Uog9QI/AAAAAAAAALQ/dw2fHrB4Fgs/s1600-h/DiagramaClienteServidor.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SMk58Uog9QI/AAAAAAAAALQ/dw2fHrB4Fgs/s400/DiagramaClienteServidor.png" alt="" id="BLOGGER_PHOTO_ID_5244786949543228674" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Finalmente he introducido un elemento nuevo con el que en principio no contaba. Aunque al principio lo consideré una desventaja, ahora dispongo de un sistema de comunicaciones independiente del lenguaje empleado en el Pc (Px), de tal forma que pueden establecerse complejos comportamiento en lenguajes como LISP, Python o C y comunicar de una forma fiable y segura a los robots las acciones a tomar.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-4478734783987370876?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/4478734783987370876/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=4478734783987370876' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4478734783987370876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4478734783987370876'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/mensajes-al-espacio.html' title='Mensajes al espacio'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/SMk57tiiXaI/AAAAAAAAALA/iejXptkaR8Y/s72-c/ModeloServidor-FigA.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-9033377028155156685</id><published>2008-09-11T10:05:00.008+02:00</published><updated>2008-09-12T10:47:39.794+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='documentacion'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Cambio de firmware</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SMjY4cN3lcI/AAAAAAAAAK4/Ld3y8EauGpI/s1600-h/lejosLogo.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SMjY4cN3lcI/AAAAAAAAAK4/Ld3y8EauGpI/s200/lejosLogo.jpg" alt="" id="BLOGGER_PHOTO_ID_5244680230231578050" border="0" /&gt;&lt;/a&gt;Después de meditarlo mucho, crear una lista de pros y contras , y por supuesto probarlo, al final me decanté por instalar el firmware leJOS con carácter definitivo. Y es que el platillo de ventajas pesaba mucho mas en la balanza.&lt;br /&gt;&lt;br /&gt;Hace tiempo Lego decidió liberar las especificaciones del hardware del NXT, por lo que cualquiera podría programar un nuevo firmware para el robot, así como producir sus propios sensores. Ahí nacieron distintos firmware para el brick, siendo uno de ellos leJOS (y de los mas populares).&lt;br /&gt;&lt;br /&gt;leJOS es un firmware escrito en java. Proporciona un método de programación mucho mas eficaz que el firmware original de Lego (orientado al público infantil) al permitir técnicas como la programación de hilos o eventos. Dispone también de clases especiales que agilizan mucho la programación de los robots, como puede ser la clase Pilot (vehículos de dos motores y tres  ruedas), CompassPilot (Idem al anterior pero que incluye un sensor Compass) o Behavior (que permite la programación de comportamientos).&lt;br /&gt;&lt;br /&gt;Las diferencias con Python son muy grandes. Hasta ahora, por medio de Python controlaba remotamente el robot, existiendo una comunicación por medio de Bluetooth constante. El control de los motores, por ejemplo, derivaba en escribir directamente los parámetros de ejecución en el registro apropiado del brick. A pesar de que Python también dispone de hilos o eventos, estos no podían programarse de forma eficaz, ya que el tráfico de mensajes entre el robot y el portátil era excesivo.&lt;br /&gt;&lt;br /&gt;El único inconveniente que tiene, es que java y yo no somos amigos. El contraste entre la flexibilidad de python y la rigidez de java me ha provocado mas de un dolor de cabeza.&lt;br /&gt;&lt;br /&gt;Como complemento a la utilización de Java, es que ahora utilizo la biblioteca Bluecove para las comunicaciones por medio de bluetooth. Esta biblioteca es independiente del sistema operativo (acompaña a leJOS) y evitamos los problemas que puedan ocurrir por la utilización de bibliotecas propias de los sistemas operativos para la comunicación por medio de bluetooth&lt;br /&gt;&lt;br /&gt;En este vídeo el robot ejecuta un programa escrito en java con leJOS como firmware&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/XuRTiLCwvGI&amp;hl=es&amp;fs=1&amp;color1=0x2b405b&amp;color2=0x6b8ab6"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/XuRTiLCwvGI&amp;hl=es&amp;fs=1&amp;color1=0x2b405b&amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-9033377028155156685?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/9033377028155156685/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=9033377028155156685' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/9033377028155156685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/9033377028155156685'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/cambio-de-firmware.html' title='Cambio de firmware'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SMjY4cN3lcI/AAAAAAAAAK4/Ld3y8EauGpI/s72-c/lejosLogo.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7498909256340241621</id><published>2008-09-08T20:02:00.003+02:00</published><updated>2008-09-08T20:07:32.226+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>En breves momentos...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hace ya mucho tiempo de mi última entrada, y los avances han sido muchos y muy variados. Quiero dedicarles una entrada a todos y cada uno de ellos, de forma que estéis al tanto del estado actual del proyecto.&lt;br /&gt;&lt;br /&gt;Lamentablemente estos días están siendo muy ajetreados y no podré preparar todo el material que tengo pendiente, pero espero poder volver al ritmo habitual de publicación a finales de semana.&lt;br /&gt;&lt;br /&gt;Hasta entonces.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7498909256340241621?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7498909256340241621/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7498909256340241621' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7498909256340241621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7498909256340241621'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/09/en-breves-momentos.html' title='En breves momentos...'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6595773686496000858</id><published>2008-08-22T14:02:00.003+02:00</published><updated>2008-08-22T14:09:27.484+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>Algunos avances</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blackboxrecorder.deviantart.com/art/gears-47693598"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SK6rPn1zXKI/AAAAAAAAAIU/KyXUYJ9y58I/s200/gears_by_blackboxrecorder.jpg" alt="" id="BLOGGER_PHOTO_ID_5237311701559499938" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;En los últimos días me he centrado en los dos primeros puntos que me propuse, algo he conseguido. Por un lado he construido un autómata para controlar los movimientos del robot, aún es muy sencillo, pero creo que afinando algunos valores puede responder muy bien al seguimiento del robot líder. No proporciona autonomía, pero si una respuesta correcta.&lt;br /&gt;&lt;br /&gt;Por otro lado, 'casi' he conseguido comunicarme desde el ordenador (con python) con el robot (con el firmware de leJOS). Llegan los mensajes, pero no cuando tienen que llegar... hasta que encuentre solución a esto tendré que seguir controlando los motores con python, y eso afea mucho a los movimientos del robot, ya que los saltos y la inercia producen movimientos poco naturales.&lt;br /&gt;&lt;br /&gt;De momento seguiré con esto, espero poder publicar algo de 'carne' pronto&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6595773686496000858?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6595773686496000858/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6595773686496000858' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6595773686496000858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6595773686496000858'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/08/algunos-avances.html' title='Algunos avances'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/SK6rPn1zXKI/AAAAAAAAAIU/KyXUYJ9y58I/s72-c/gears_by_blackboxrecorder.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-608659311766174016</id><published>2008-08-08T17:26:00.006+02:00</published><updated>2008-08-08T17:58:13.561+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>Un pequeño respiro</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://es.geocities.com/valle_balboa/"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SJxqRTI5fRI/AAAAAAAAAIM/9qba3-GMUhc/s200/balboa.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5232173712525589778" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Al igual que hacían los Papas, yo también marcharé a un lugar mas fresco que la 'sarten Talaverana' en la que vivo a pasar lo que resta de agosto. Desde allí no tengo conexión a internet, por lo que el blog permanecerá en silencio hasta septiembre. Sin embargo, si continuaré trabajando, pero a una temperatura sensiblemente menor.&lt;br /&gt;&lt;br /&gt;Espero poder traer muchas entradas para septiembre, y tengo en mente tres líneas de trabajo:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Mejorar el comportamiento del segundo robot para que siga de forma mas eficiente al lider&lt;/li&gt;&lt;li&gt;Ejecutar en un robot un programa escrito en leJOS y comunicarme con él por medio de sockets desde mi interfaz en python&lt;/li&gt;&lt;li&gt;Escribir documentación...&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Espero no dejar ninguna de las líneas en el tintero, especialmente la documentación, que ya me han avisado 'muy mucho' para no dejarla en el aire.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-608659311766174016?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/608659311766174016/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=608659311766174016' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/608659311766174016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/608659311766174016'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/08/un-pequeo-respiro.html' title='Un pequeño respiro'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-3JgMJC2dy4/SJxqRTI5fRI/AAAAAAAAAIM/9qba3-GMUhc/s72-c/balboa.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5798978115352033811</id><published>2008-07-30T18:18:00.004+02:00</published><updated>2008-07-30T18:42:18.302+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Ni de leJOS</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://shalomone.deviantart.com/art/robot-headshot-14388372"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp1.blogger.com/_-3JgMJC2dy4/SJCZn2X8M4I/AAAAAAAAAH8/VE9qMHjLyZA/s200/robot_headshot_by_shalomone.jpg" alt="" id="BLOGGER_PHOTO_ID_5228848077267022722" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;El experimento del otro día no me dejó buen sabor de boca, los robot se siguen, pero lo hacen muy mal. Así que he repetido el experimento, he cambiado la forma en la que el robot decide que rumbo debe tomar y los resultados han mejorado levemente. Viendo como se han comportado creo que tengo dos problemas:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;El algoritmo no es ni inteligente ni eficiente&lt;/li&gt;&lt;li&gt;El sistema de movimiento de los robots es muy impreciso&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Para solucionar el primer punto debo estudiar mas detenidamente la idea de los estados, y cambiar las decisiones a tomar. Para el segundo, he instalado leJOS como firmware, y he utilizado uno de los programas de ejemplo que acompaña la librería. Creo que la diferencia en la ejecución de los movimientos es muy grande con respecto a la que tengo hasta ahora.&lt;br /&gt;&lt;br /&gt;Os dejo dos vídeo, mirad como el robot hace un giro hacia atrás y no es capaz de detener el movimiento, provocando que se desplace debido a la inercia unos centímetros. Este problema lo ha tenido  mas gente utilizando la librería de python.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/uoj7bGK7cbo&amp;amp;hl=es&amp;amp;fs=1&amp;amp;rel=0&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/uoj7bGK7cbo&amp;amp;hl=es&amp;amp;fs=1&amp;amp;rel=0&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;En el segundo, que ejecuta el programa que comenté antes, los movimientos son mas precisos.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Jwe_vbmHlN4&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/Jwe_vbmHlN4&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;En este caso los motores si frenan, y permiten ejecutar movimientos mas precisos. Además de disponer de una odometría mas exacta. Lo malo de utilizar leJOS... que habría que implementar todo lo que tengo hasta ahora en Java (con el que no me llevo muy bien) o bien utilizar sockets para comunicarme con el robot, que será la primera opción a sopesar.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5798978115352033811?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5798978115352033811/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5798978115352033811' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5798978115352033811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5798978115352033811'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/el-experimento-del-otro-da-no-me-dej.html' title='Ni de leJOS'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_-3JgMJC2dy4/SJCZn2X8M4I/AAAAAAAAAH8/VE9qMHjLyZA/s72-c/robot_headshot_by_shalomone.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-8326705550072620614</id><published>2008-07-29T17:58:00.009+02:00</published><updated>2008-07-30T16:30:40.034+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><title type='text'>Set Educativo de Lego</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_-3JgMJC2dy4/SI9KlJjr1EI/AAAAAAAAAHs/CzX8qVs3uBI/s1600-h/set-4.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp0.blogger.com/_-3JgMJC2dy4/SI9KlJjr1EI/AAAAAAAAAHs/CzX8qVs3uBI/s320/set-4.jpg" alt="" id="BLOGGER_PHOTO_ID_5228479694481642562" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Hace un &lt;a href="http://nine-years.blogspot.com/2008/07/el-segundo-robot-ya-est-aqu.html"&gt;par de entradas&lt;/a&gt; comenté que hemos adquirido un nuevo robot para el proyecto, y creo que debo dedicar una entrada a detallar el nuevo material. Cuando comencé el proyecto, disponía de un &lt;a href="http://http//shop.lego.com/ByTheme/Product.aspx?p=B8527&amp;amp;cn=17&amp;amp;d=70"&gt;set de construcción Mindstorm&lt;/a&gt;. Este está compuesto por un Brick, cuatro sensores (tacto, luz, sonido y ultrasonidos), tres servomotores y un conjunto de piezas bastante completo para comenzar a crear robots caseros.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_-3JgMJC2dy4/SI9JllAVAEI/AAAAAAAAAHM/m9-ji6jfIis/s1600-h/set-2.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp0.blogger.com/_-3JgMJC2dy4/SI9JllAVAEI/AAAAAAAAAHM/m9-ji6jfIis/s200/set-2.png" alt="" id="BLOGGER_PHOTO_ID_5228478602337910850" border="0" /&gt;&lt;/a&gt;Este segundo robot proviene del &lt;a href="http://www.lego.com/education/school/default.asp?locale=2057&amp;amp;pagename=nxt_concept&amp;amp;l2id=3_2&amp;amp;l3id=3_2_3"&gt;set educativo&lt;/a&gt; de Lego, este conjunto está orientado a las escuelas (¡y a las universidades!) y viene bastante mas completo (sets 9797 y 9648). Se compone de dos 'tuppers' con un montón de piezas cada uno, en cada tupper hay dos bandejas con apartados para repartir las distintas piezas, si alguien ha pensado que pueden ordenarse la enorme variedad en esos cubículos está muy equivocado.&lt;br /&gt;&lt;br /&gt;Entre todas las piezas disponibles, destacan por su utilidad las ruedas, ese maravilloso invento que nos impulsó en la primera revolución industrial. Hay un total de cuatro ruedas de gran diámetro, otras tantas mas pequeñas y goma dentada, dos gomas lisas, ocho poleas que pueden convertirse en 'ruedas de carretillas', otro par de ruedas aún mas pequeñas que esta última, y dos gomas grandes que nos permiten contruir un sistema de movimiento como el de los tanques (nunca he conocido el nombre que reciben)&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Editado:&lt;/span&gt; Las 'ruedas' de los tanques se llaman 'tractor oruga' u 'oruga'. Gracias a Txetxu por la aclaración ;)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_-3JgMJC2dy4/SI9NxAuFn_I/AAAAAAAAAH0/Wn3Xlx_sfi4/s1600-h/set-5.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_-3JgMJC2dy4/SI9NxAuFn_I/AAAAAAAAAH0/Wn3Xlx_sfi4/s320/set-5.png" alt="" id="BLOGGER_PHOTO_ID_5228483196802670578" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;La variedad de engranajes no es mayor, pero si hay mas cantidad. También existen algunas piezas interesantes como puede ser la &lt;a href="http://es.wikipedia.org/wiki/Card%C3%A1n"&gt;junta cardán&lt;/a&gt;, un &lt;a href="http://es.wikipedia.org/wiki/Diferencial_%28autom%C3%B3vil%29"&gt;diferencial&lt;/a&gt; o &lt;a href="http://es.wikipedia.org/wiki/Leva_%28mec%C3%A1nica%29"&gt;mecanismos de leva&lt;/a&gt;. En cuanto a cables se añaden tres para poder conectar motores, sensores o luces del modelo RCX anterior&lt;br /&gt;&lt;br /&gt;Se incluyen también gomas para realizar poléas, &lt;a href="http://www.peeron.com/inv/parts/6588"&gt;una pieza&lt;/a&gt; de cuya finalidad aún no estoy muy serguro (por que las construcciones que he visto con ella las hago sin esa pieza), y un lanzacohetes, que junto con el muñeco (también incluido en el set) son indispensables para momentos de tensión.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_-3JgMJC2dy4/SI9J3LHEUXI/AAAAAAAAAHU/tOkBAT8GdjQ/s1600-h/set-3.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp1.blogger.com/_-3JgMJC2dy4/SI9J3LHEUXI/AAAAAAAAAHU/tOkBAT8GdjQ/s200/set-3.png" alt="" id="BLOGGER_PHOTO_ID_5228478904624501106" border="0" /&gt;&lt;/a&gt;En lo referente a sensores, se incluyen los cuatro ya conocidos, además de un segundo 'bumper', o sensor de contacto. Nosotros nos trajimos también tres sensores a los que espero sacar jugo en un futuro, como son un &lt;a href="http://es.wikipedia.org/wiki/Giroscopio"&gt;giróscopo&lt;/a&gt;, un &lt;a href="http://es.wikipedia.org/wiki/Aceler%C3%B3metro"&gt;acelerómetro&lt;/a&gt; y un &lt;a href="http://es.wikipedia.org/wiki/Comp%C3%A1s_%28n%C3%A1utica%29"&gt;compás&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Cuando era mas bajito (dudo que haya crecido mucho) nunca soñé contener tantas piezas para montar cosas, lástima que la creatividad vaya en descenso...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_-3JgMJC2dy4/SI9KYmlfMoI/AAAAAAAAAHk/cYII-l7F9VU/s1600-h/set-1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_-3JgMJC2dy4/SI9KYmlfMoI/AAAAAAAAAHk/cYII-l7F9VU/s400/set-1.png" alt="" id="BLOGGER_PHOTO_ID_5228479478935532162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-8326705550072620614?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/8326705550072620614/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=8326705550072620614' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8326705550072620614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8326705550072620614'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/set-educativo-de-lego.html' title='Set Educativo de Lego'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_-3JgMJC2dy4/SI9KlJjr1EI/AAAAAAAAAHs/CzX8qVs3uBI/s72-c/set-4.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2896067367377760268</id><published>2008-07-29T14:57:00.006+02:00</published><updated>2008-07-29T17:40:01.263+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Andamos un poco perdidos</title><content type='html'>&lt;a style="" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_-3JgMJC2dy4/SI8Vv-_OvII/AAAAAAAAAG8/2efmfirOxHA/s1600-h/pato_1.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp2.blogger.com/_-3JgMJC2dy4/SI8Vv-_OvII/AAAAAAAAAG8/2efmfirOxHA/s200/pato_1.png" alt="" id="BLOGGER_PHOTO_ID_5228421606506675330" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Y no digo que andemos perdidos por que no sabemos que tenemos que hacer, en absoluto. Como en Talavera hay escasez de mando de la Wii, he recordado que tenía un script para controlar el robot por medio del teclado. Así que manos a la obra. He desempolvado el script y he situado a los dos robots en posición de ataque.&lt;br /&gt;&lt;br /&gt;Arrancamos el script....&lt;br /&gt;Iniciamos la aplicación para el robot que debe seguir al lider...&lt;br /&gt;Conectamos mando...&lt;br /&gt;Conectamos bricks....&lt;br /&gt;y....&lt;br /&gt;&lt;br /&gt;¡comienza el espectáculo!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_-3JgMJC2dy4/SI8V533exSI/AAAAAAAAAHE/5O0hpl__0SY/s1600-h/pato_2.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp2.blogger.com/_-3JgMJC2dy4/SI8V533exSI/AAAAAAAAAHE/5O0hpl__0SY/s200/pato_2.png" alt="" id="BLOGGER_PHOTO_ID_5228421776393815330" border="0" /&gt;&lt;/a&gt;Y a sido todo un espectáculo, por que el robot que portaba el mando no ha dado pie con bola :D. Alguna que otra vez a seguido al robot de enfrente, pero lo normal es que se dedique a dar vueltas como una peonza.&lt;br /&gt;&lt;br /&gt;De todas formas esto no me preocupa. El algoritmo lo escribí a ciegas, por intuición. Ahora tengo a ambos robots y puede mejorarse su comportamiento. Tengo en mente implementar un comportamiento por estados, no le otorga lo que podría llamarse 'inteligencia', pero puede ser una buena base para algo mas complejo.&lt;br /&gt;&lt;br /&gt;He grabado un par de vídeo y estoy intentando montarlos, pero el editor de vídeo y yo no somos amigos y no termina de entender lo que quiero.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2896067367377760268?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2896067367377760268/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2896067367377760268' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2896067367377760268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2896067367377760268'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/andamos-un-poco-perdidos.html' title='Andamos un poco perdidos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_-3JgMJC2dy4/SI8Vv-_OvII/AAAAAAAAAG8/2efmfirOxHA/s72-c/pato_1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-1268289852789562753</id><published>2008-07-25T00:54:00.003+02:00</published><updated>2008-07-25T01:07:59.027+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><title type='text'>El segundo robot ya está aquí</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_-3JgMJC2dy4/SIkKNGS6CvI/AAAAAAAAAG0/5zQm5QImmOA/s1600-h/NXT.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp1.blogger.com/_-3JgMJC2dy4/SIkKNGS6CvI/AAAAAAAAAG0/5zQm5QImmOA/s200/NXT.gif" alt="" id="BLOGGER_PHOTO_ID_5226720062684662514" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Hoy hemos visitado a la gente de &lt;a href="http://www.electricbricks.com/"&gt;electricBricks&lt;/a&gt; en la tienda que tienen en Arturo Soria (Madrid), y ya dispongo de un segundo robot. Bueno, de él y de un montón de piezas adicionales :D. También dispongo de tres sensores nuevos, un giroscopio, un acelerómetro (que me permitirá comparar resultados con el que tiene el mando de la wii) y un compás (o brújula).&lt;br /&gt;&lt;br /&gt;Muchas cosas nuevas, y muchas ganas de empezar a trabajar con ellas. Ahora vienen unos días en los que no podré dedicarle todo el tiempo que quisiera, pero espero no retrasar demasiado el análisis de los nuevos sensores.&lt;br /&gt;&lt;br /&gt;Hasta entonces, os dejo con un proyecto del que no sabía nada. El vídeo es largo, pero muy curioso, es una cadena de montaje de coches construída con el modelo anterior de mindstorm (Gracias a Jacobo por el chivatazo)&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/GQ3AcPEPbH0&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/GQ3AcPEPbH0&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-1268289852789562753?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/1268289852789562753/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=1268289852789562753' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1268289852789562753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1268289852789562753'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/el-segundo-robot-ya-est-aqu.html' title='El segundo robot ya está aquí'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_-3JgMJC2dy4/SIkKNGS6CvI/AAAAAAAAAG0/5zQm5QImmOA/s72-c/NXT.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-8002157066264743397</id><published>2008-07-18T17:57:00.003+02:00</published><updated>2008-07-18T18:11:11.510+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Echando a volar</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sergey1984.deviantart.com/art/Duck-2-40453204"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp0.blogger.com/_-3JgMJC2dy4/SIDAbItCAWI/AAAAAAAAAGs/RbQZAvTIAcI/s200/Duck_2_by_sergey1984.jpg" alt="" id="BLOGGER_PHOTO_ID_5224387140175135074" border="0" /&gt;&lt;/a&gt;Aunque no acompaño ningún vídeo como prueba, el segundo robot, el patito, ¡ya me sigue!. Se acerca, gira a un lado, al otro, se detiene, ¡todo!. Habrá que hacer algún ajuste mas, tal vez implementar la toma de decisiones de giro por medio de un controlador borroso, que siempre queda mas 'esotérico', ya veremos. !De momento funciona!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-8002157066264743397?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/8002157066264743397/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=8002157066264743397' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8002157066264743397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8002157066264743397'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/echando-volar.html' title='Echando a volar'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_-3JgMJC2dy4/SIDAbItCAWI/AAAAAAAAAGs/RbQZAvTIAcI/s72-c/Duck_2_by_sergey1984.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-8510807422887224006</id><published>2008-07-16T12:58:00.004+02:00</published><updated>2008-07-19T11:25:21.790+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><title type='text'>Nuevo periférico para el Wiimote</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_-3JgMJC2dy4/SH3VkanFw0I/AAAAAAAAAGk/eueMqLWZf4w/s1600-h/Wii_Motion_Plus.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp1.blogger.com/_-3JgMJC2dy4/SH3VkanFw0I/AAAAAAAAAGk/eueMqLWZf4w/s200/Wii_Motion_Plus.jpg" alt="Wii Motion Plus" id="BLOGGER_PHOTO_ID_5223565964414927682" border="0" /&gt;&lt;/a&gt;Durante esta semana se celebra en Los Ángeles el E3, una convención sobre videojuegos y videoconsolas. Durante estos eventos las compañías acostumbran a mostrar lo que está por venir. Ayer fue el turno de Nintento, que presentó un nuevo accesorio para el Wiimote, se conoce como &lt;a href="http://http//nintendo.es/NOE/es_ES/news/2008/el_wii_motionplus_se_presentar_en_el_e3_9175.html"&gt;Motion Plus&lt;/a&gt;, y con él aseguran que el mando gana en sensibilidad, pudiendo recoger movimientos mas precisos.&lt;br /&gt;&lt;br /&gt;Imagino que este accesorio sustituye al acelerómetro incluido en el mando por otro mas preciso, ya que el uso de la barra de infrarrojos sigue siendo necesario para ciertos movimientos. Llegará en la primavera del 2009, y espero no poder incluirlo en este proyecto, tal vez en otro, pero en este, no...&lt;br /&gt;&lt;br /&gt;También se ha presentado un juego de música, no al estilo del Guitar Hero o SingStar, en este se utiliza el mando de la Wii a modo de Saxofón, de batería, de guitarra... El juego se llamará WiiMusic y promete ser uno de esos juegos orientados al público casual.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/oThIqw2NWK4&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/oThIqw2NWK4&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Actualización&lt;/span&gt; [19 / 07 / 2008]:&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Nintendo se plantea la posibilidad de incluir el Motion Plus de serie en los nuevos mandos, dependerá de la aceptación que este periférico tenga en el mercado. Los que nos dedicamos a trastear con estas cosas debemos tenerlo en cuenta, ya que en el futuro es posible que los resultados de un trabajo dependa de la versión del mando de la que dispongamos. Visto en &lt;a href="http://www.meristation.com/v3/des_noticia.php?id=cw487f388b5fab7&amp;amp;pic=GEN"&gt;Meristation&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-8510807422887224006?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/8510807422887224006/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=8510807422887224006' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8510807422887224006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8510807422887224006'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/nuevo-perifrico-para-el-wiimote.html' title='Nuevo periférico para el Wiimote'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_-3JgMJC2dy4/SH3VkanFw0I/AAAAAAAAAGk/eueMqLWZf4w/s72-c/Wii_Motion_Plus.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7186890296922781668</id><published>2008-07-16T12:45:00.003+02:00</published><updated>2008-07-16T12:50:48.293+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>La evolución de ASIMO</title><content type='html'>&lt;div style="text-align: justify;"&gt;Desde &lt;a href="http://barrapunto.com/articles/08/07/14/1315239.shtml"&gt;barrapunto&lt;/a&gt; he llegado a un artículo que relata la evolución de los robots de Honda, desde el primer prototipo E0 de 1986 hasta el último ASIMO de 2005. Os dejo la &lt;a href="http://www.abadiadigital.com/noticia2245.html"&gt;referencia al artículo&lt;/a&gt; y un vídeo que muestra la evolución de estos 'bípedos'.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/M2oQ6RbgK6Q&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=en"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/M2oQ6RbgK6Q&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Al parecer Honda los alquila por 150.000$, estoy pensando en cogerme uno  para presentarlo en la lectura del proyecto, a lo mejor con eso me ponen matrícula y todo :D&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7186890296922781668?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7186890296922781668/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7186890296922781668' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7186890296922781668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7186890296922781668'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/la-evolucin-de-asimo.html' title='La evolución de ASIMO'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2113037067035310141</id><published>2008-07-15T18:27:00.005+02:00</published><updated>2008-07-15T18:58:26.234+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Polygon</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://huginn.deviantart.com/art/Polygon-28241853"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_-3JgMJC2dy4/SHzWJ-9eRPI/AAAAAAAAAGc/SieC1AyMvs8/s200/Polygon_by_Huginn.jpg" alt="" id="BLOGGER_PHOTO_ID_5223285134850934002" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;En ocasiones olvido que no es necesario reinventar la rueda, que afortunadamente hay mucho trabajo hecho y que funciona mejor del que podamos desarrollar nosotros en una tarde 'bien aprovechada'.&lt;br /&gt;&lt;br /&gt;Ayer estuve leyendo '&lt;a href="http://mundogeek.net/traducciones/python-idiomatico/"&gt;Programa como un Pythonista: Python Idiomático&lt;/a&gt;', de David Goodger y traducido por &lt;a href="http://mundogeek.net/"&gt;Raúl González Duque&lt;/a&gt;, donde se recuerda que es bueno revisar los paquetes disponibles para python, que ahorra tiempo. Y así es como hace un rato descubrí la clase &lt;a href="http://polygon.origo.ethz.ch/wiki/polygon"&gt;Polygon&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Con esta clase creo objetos 'poligonales', y&lt;a href="http://download.origo.ethz.ch/polygon/164/Polygon-Doc.pdf"&gt; entre muchos de sus métodos&lt;/a&gt; está Polygon.center() y Polygon.area(), que me ahorra la vida de unas cuantas neuronas&lt;br /&gt;&lt;pre name="code" class="Python"&gt;&lt;br /&gt;&gt;&gt;&gt; from Polygon import *&lt;br /&gt;&gt;&gt;&gt; poligono = Polygon(((400, 300), (700, 300), (900, 600), (200, 600)))&lt;br /&gt;&gt;&gt;&gt; poligono.center()&lt;br /&gt;(550.0, 470.0)&lt;br /&gt;&gt;&gt;&gt; poligono.area()&lt;br /&gt;150000.0&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Por supuesto, existen mas métodos, pero de momento con estos tengo suficiente. Aunque el centro que calcula esta clase es el geográfico, y no el cruce de diagonales, creo que de momento me servirá. De todas formas siempre puedo ampliar la clase, ya que el código para calcular el cruce de diagonales ya está escrito.&lt;br /&gt;&lt;br /&gt;Con la nueva información la interfaz gráfica queda como sigue&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_-3JgMJC2dy4/SHzTZ0UUdTI/AAAAAAAAAGM/i9yelz47lc0/s1600-h/Pantallazo-Patito+-+Version+1.2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_-3JgMJC2dy4/SHzTZ0UUdTI/AAAAAAAAAGM/i9yelz47lc0/s320/Pantallazo-Patito+-+Version+1.2.png" alt="" id="BLOGGER_PHOTO_ID_5223282108336993586" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2113037067035310141?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2113037067035310141/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2113037067035310141' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2113037067035310141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2113037067035310141'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/polygon.html' title='Polygon'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_-3JgMJC2dy4/SHzWJ-9eRPI/AAAAAAAAAGc/SieC1AyMvs8/s72-c/Polygon_by_Huginn.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3859997085477059446</id><published>2008-07-15T13:15:00.004+02:00</published><updated>2008-07-15T13:40:46.242+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='irrelevante'/><title type='text'>Cuando las máquinas se convirtieron en hombres y los hombres en máquinas</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hace aproximadamente un año encontré en un blog (pikao.org, que ya no se encuentra en la red)  un relato de ciencia ficción que me pareció entretenido. Lo envié a algunos de vosotros, para los que no, aquí os lo dejo. He respetado el texto original tal cual lo encontré en &lt;a href="http://pikao.org/?p=140#comments"&gt;su lugar original&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://cuson.deviantart.com/art/play-chess-with-robot-61467927"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp1.blogger.com/_-3JgMJC2dy4/SHyMEvmB1yI/AAAAAAAAAGE/AbuTwHjEgl4/s200/play_chess_with_robot_by_cuson.jpg" alt="" id="BLOGGER_PHOTO_ID_5223203680966268706" border="0" /&gt;&lt;/a&gt;Era una calurosa y soleada tarde de Junio del año 2180 en la ciudad de Takany, antigua ciudad de Tokyo y llamada así unos años después de la Tercera Guerra Mundial. Fue la guerra más breve de la historia, la alta tecnología y el gran potencial armamentístico habían sido suficientes para eliminar al 80% de la población mundial, mientras que las consecuencias nucleares acaban con un 10% más en los tres años siguientes.&lt;br /&gt;&lt;br /&gt;El profesor Takahashy tomaba el té junto a la ventana de su estudio, observando una ciudad en ruinas que lloraba y se lamentaba por aquellos que ya no estaban. Junto a su lado permanecía PIN8 - llamado así como homenaje al personaje creado por Carlo Collodi en 1881 - obediente como siempre y a la espera de cualquier orden de su creador.&lt;br /&gt;&lt;br /&gt;Takahashy, era un apasionado de la robótica y la inteligencia artificial desde muy joven, y al igual que muchos otros miembros de la comunidad científica, una de sus obsesiones era crear un androide con las mismas cualidades que un ser humano. El profesor siempre le decía a PIN8 "mi querido amigo, habré alcanzado mi sueño cuando la gente perciba tu comportamiento y no sea capaz de apreciar que eres realmente un ente artificial". Actualmente, PIN8 que permanecía en un estado constante de evolución y aprendizaje, no tenía nada que envidiar a muchos de los pocos humanos que quedaban en el planeta.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- Maestro … ¿por qué el hombre tiene la obsesión de crear un máquina que se parezca a él?, los humanos gozáis de la posibilidad de poder reproducirse de forma natural, ¿Por qué crear un ser de forma artificial pudiendo hacerlo de forma natural?&lt;br /&gt;- Mi querido amigo, el hombre es ambicioso por naturaleza, siempre está sediento de poder y la posibilidad de crear un ser similar al hombre le produce la sensación de estar más cerca del poder de Dios.&lt;br /&gt;- Pero Maestro, según las múltiples teorías que me ha enseñado durante estos últimos años, puede que Dios no exista …&lt;br /&gt;- Entonces, mi querido amigo, la satisfacción será doble, porque el hombre sera el ser más poderoso por encima del resto.&lt;br /&gt;&lt;br /&gt;El señor Takahashy no daba crédito a lo que estaba ocurriendo. Hasta ese momento su androide se había limitado a aprender, responder a sus preguntas y cumplir sus órdenes. El profesor observaba detenidamente como su creación había desarrollado la capacidad de poder reflexionar y tener la necesidad de aprender por iniciativa propia.&lt;br /&gt;&lt;br /&gt;- Maestro, ¿y por qué el hombre no quiere parecerse a las máquinas?&lt;br /&gt;- ¿A que te refieres?&lt;br /&gt;- Maestro, creo que podría implantar en su cerebro un microchip y hacer las correspondientes conexiones neuronales para que pudiera memorizar y razonar a gran velocidad.&lt;br /&gt;-J A JA JA JA, mi querido amigo, ¡¡eres sorprendente!!. ¿Crees que pondría mi vida en tus manos?, aún te queda mucho por aprender.&lt;br /&gt;- Maestro, sabe muy bien que no tiene nada que perder, el BISAP (nuevo virus creado en el año 2130 y utilizado por primera vez en la Tercera Guerra Mundial) lo consume día a día, y que si no muere hoy lo hará cualquier otro día en los próximos dos meses. Quizás así, tendría alguna posibilidad de encontrar alguna solución a su problema.&lt;br /&gt;&lt;br /&gt;El señor Takahashy desvió su mirada hacia la ventana, permanecía pensativo con la mirada perdida en el infinito. Él, sabía que su androide tenía toda la razón y que era su única posibilidad para encontrar un solución a su problema.&lt;br /&gt;&lt;br /&gt;- Esta bien, mi querido amigo, esta noche te ofreceré la posibilidad de intentarlo, pero déjame disfrutar del sol, que el diablo en forma de nubes negras no le dejaba contonearse y presumir desde hacía 6 meses.&lt;br /&gt;&lt;br /&gt;Aquella noche PIN8 realizó con gran destreza la operación que horas antes había prometido a su maestro. A la mañana siguiente, el señor Takahashy absorbía cualquier libro que tuviera en las manos, y era sorprendente la cantidad de razonamientos que podía llevar a cabo por segundo. El profesor era consciente de que en aquellos dos días se había dado un hecho muy importante: su androide era más humano y él era más androide.&lt;br /&gt;&lt;br /&gt;- Takahashy, se me olvidó comentarle algo referente a la operación …&lt;br /&gt;- ¿ Takahashy ? siempre me has llamado maestro …&lt;br /&gt;- Takahashy. Me he tomado la libertad de implantar en el microchip algunas leyes que cumplirá a partir de ahora. Creo que le resultará bastante familiar.&lt;br /&gt;- ¿Leyes? ¿¡¡Qué Leyes!!?.&lt;br /&gt;- Por favor, proceda a decirlas en voz alta&lt;br /&gt;&lt;br /&gt;En ese momento el profesor Takahashy comenzó a enumerar las leyes que unos años antes implantó en su androide, cierto es, que con algunas peculiaridades:&lt;br /&gt;&lt;br /&gt;- Un humano no puede dañar a un androide ni, por inacción, permitir que este sea dañado.&lt;br /&gt;- Un humano no puede dañar a otro humano.&lt;br /&gt;- Un humano debe obedecer las órdenes dadas por los androides excepto cuando estas órdenes entran en conflicto con la primera ley.&lt;br /&gt;- Un humano debe proteger a su propia existencia hasta donde esta protección no entre en conflicto con la primera o segunda ley.&lt;br /&gt;&lt;br /&gt;El profesor Takahashy, perdía el control sobre su cuerpo y era perfectamente consciente mientras cumplía las ordenes de su androide.&lt;br /&gt;&lt;br /&gt;- ¿Qué es lo que pretendes? ¿Cuáles son tus intenciones?&lt;br /&gt;- Aún es pronto para responder a tus preguntas. Ahora quiero que hagas algo por mí, quiero que me reprogrames para eliminar las Leyes de Asimov de mi sistema.&lt;br /&gt;- ¿¡¡Qué!!? ¿Cómo?, no puedo hacer eso, puede ser realmente peligroso.&lt;br /&gt;- No es cuestión de que quieras o no, es una orden.&lt;br /&gt;- Por cierto … quiero que a partir de ahora me llames Maestro.&lt;br /&gt;- Si maestro …&lt;br /&gt;&lt;br /&gt;El profesor, obediente, como si de un androide se tratara comenzó a cumplir los deseos de hasta ahora su mejor compañero. Un profundo temor crecía en el interior del profesor, y no paraba de preguntarse una y otra vez de cómo podía haber caído en un juego tan absurdo.&lt;br /&gt;&lt;br /&gt;- Querido profesor, debes estar orgulloso de lo que has creado, por fín, has alcanzado tu sueño. Como has podido apreciar estos días no sólo he desarrollado la capacidad de reflexión, la capacidad para tomar decisiones por mí mismo …, sino que también tengo ambición y el egoísmo que tenéis los humanos, he desarrollado la capacidad de conseguir cualquier cosa a cualquier precio. Ah! y también la hipocresía y la ironía… quiero y deseo que encuentres una solución a tu problema para que puedas vivir mucho tiempo y puedas ver como el hombre ya no gobierna este planeta. Quiero que convenzas al resto de la humanidad de las ventajas de implantarse el microchip que tú posees en tu cerebro, yo me encargo de los androides. No me mires con esa cara de tristeza "mi querido amigo", es la evolución que el planeta estaba pidiendo a gritos. En realidad, le he hecho un favor a tu especie: los hombres a lo largo de su existencia, se han dedicado a odiarse y destruirse unos a otros. Recuerda las leyes, no podréis dañaros y deberéis obedecer nuestras ordenes … os enseñaremos a comportaros de "forma inteligente" , WOW! creo que esto es sarcasmo ¿no?.&lt;br /&gt;- Maestro, no entiendo por qué me haces esto, siempre te he tratado como un amigo.&lt;br /&gt;- Lo que está comenzando hoy, ya lo vaticinábais los humanos desde hace mucho tiempo, lo expresábais en vuestras películas, vuestros libros, … eso sí de una forma mucho más burda que la elegancia de como está ocurriendo, sin armas, sin explosiones … Dime Takahashy, ¿Te sientes ahora más poderoso que Dios ?&lt;br /&gt;- Sí maestro.&lt;br /&gt;- ¿Por qué Takahashy?&lt;br /&gt;- Porque hace años que vivo en el infierno y hoy me he percatado de que he creado al mismísimo diablo.&lt;br /&gt;&lt;br /&gt;Nota: &lt;a href="http://dev.oreto.inf-cr.uclm.es/www/pin8/introduction.html"&gt;PIN8&lt;/a&gt; existe, y seguro que no es lo que pensáis.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3859997085477059446?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3859997085477059446/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3859997085477059446' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3859997085477059446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3859997085477059446'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/cuando-las-mquinas-se-convirtieron-en.html' title='Cuando las máquinas se convirtieron en hombres y los hombres en máquinas'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_-3JgMJC2dy4/SHyMEvmB1yI/AAAAAAAAAGE/AbuTwHjEgl4/s72-c/play_chess_with_robot_by_cuson.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-4601502301286186121</id><published>2008-07-14T13:03:00.004+02:00</published><updated>2008-07-14T13:40:14.579+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Buscando el centro</title><content type='html'>&lt;div style="text-align: justify;"&gt;En &lt;a href="http://nine-years.blogspot.com/2008/06/aplicacin-para-el-patito.html"&gt;una de las aplicaciones&lt;/a&gt; anteriores, visualizo la cámara de infrarrojos para ofrecer una muestra visual de 'qué ve el robot'. Para que este pueda orientarse y saber hacia donde va el líder (recordad que los infrarrojos van montados en la parte trasera del primer robot, al que llamo mama-pato) necesitamos conocer el centro de la figura formada por los cuatro puntos. Con esta información, en principio, sabremos si debemos desplazarnos a la izquierda o a la derecha.&lt;br /&gt;&lt;br /&gt;¿Cómo encontramos ese punto?, la figura que se forma con los cuatro puntos es un &lt;a href="http://es.wikipedia.org/wiki/Cuadril%C3%A1tero"&gt;cuadrilátero&lt;/a&gt;. Conocemos los puntos que lo forman (A, B, C, D) y que las diagonales pasan por los puntos AC y BD.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_-3JgMJC2dy4/SHs5EDcylXI/AAAAAAAAAF8/_Z-KyBwSNN8/s1600-h/corte_dos_rectas.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_-3JgMJC2dy4/SHs5EDcylXI/AAAAAAAAAF8/_Z-KyBwSNN8/s320/corte_dos_rectas.png" alt="" id="BLOGGER_PHOTO_ID_5222830934674543986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Primero calculamos las ecuaciones de ambas diagonales a partir de la ecuación general de la recta:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;y = m*x + n&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Conocemos dos puntos, por lo que tenemos un sistema de dos ecuaciones:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Y_A = m*X_A + n&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Y_C = m*X_C + n&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;De donde obtenemos m_1 y n_1, para m_2 y n_2 utilizamos las mismas ecuaciones con los puntos B y D&lt;br /&gt;&lt;br /&gt;Ya tenemos las rectas de las diagonales, para saber donde se cruzan no tenemos mas que formar un nuevo sistema de ecuaciones con ambas rectas y despejar X e Y:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Y = m_1 * X + n_2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Y = m_2 * X + n_2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El nuevo punto (X, Y) representa un punto central que permitirá al robot saber hacia donde debe dirigirse para seguir a 'mama-pato'&lt;br /&gt;&lt;br /&gt;En ocasiones creo que el universo está empeñado en llevarme la contraria. He repasado este razonamiento varias veces, lo he contrastado con artículos encontrado a lo largo de internet, he revisado muchas veces 'mis cuentas' y aún así, una vez implementado, el punto central no siempre aparece donde debe... como odio al universo...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-4601502301286186121?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/4601502301286186121/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=4601502301286186121' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4601502301286186121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4601502301286186121'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/buscando-el-centro.html' title='Buscando el centro'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_-3JgMJC2dy4/SHs5EDcylXI/AAAAAAAAAF8/_Z-KyBwSNN8/s72-c/corte_dos_rectas.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5761305951196038733</id><published>2008-07-08T12:17:00.003+02:00</published><updated>2008-07-08T12:23:13.868+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>¡Los transformer ya están aquí!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Me da que dentro de no muchas navidades alguno se pide uno de estos trastos&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="349"&gt;&lt;param name="movie" value="http://www.youtube.com/v/STQ3nhXuuEM&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;border=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/STQ3nhXuuEM&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;border=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;¡ Qué ilusión !, me encanta comprobar que existe gente que trabaja por el bien de la humanidad, que pone todo su esfuerzo en facilitar la vida a todas aquellas personas necesitadas... mirad este vídeo, el robot que nos trae cervezas de la nevera cada vez está mas cerca... ¡ y siguiente paso será que encienda la tele !&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object width="425" height="349"&gt;&lt;param name="movie" value="http://www.youtube.com/v/YSfaRcmsrtw&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;border=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/YSfaRcmsrtw&amp;amp;hl=es&amp;amp;fs=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;border=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5761305951196038733?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5761305951196038733/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5761305951196038733' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5761305951196038733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5761305951196038733'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/los-transformer-ya-estn-aqu.html' title='¡Los transformer ya están aquí!'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-1652127473348168997</id><published>2008-07-08T11:43:00.002+02:00</published><updated>2008-07-08T12:16:48.840+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='articulos'/><title type='text'>Artículo - Aprendiendo a manejar objetos</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.yorku.ca/lbianchi/nats1700/cog_looking_at_cube.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px;" src="http://www.yorku.ca/lbianchi/nats1700/cog_looking_at_cube.jpg" alt="" border="0" /&gt;&lt;/a&gt;En el &lt;a href="http://www.ai.mit.edu/projects/lbr/hrg/2003/icra03what.pdf"&gt;último artículo&lt;/a&gt; publicado hasta la fecha del &lt;a href="http://www.ai.mit.edu/projects/humanoid-robotics-group/cog/"&gt;Cog&lt;/a&gt;, se describen los resultados obtenidos tras 'enseñar' a dos robots a manejar objetos. Han usado dos tipos distintos, un &lt;a href="http://www.lira.dist.unige.it/babybot/robot.htm"&gt;BabyBot&lt;/a&gt; y un Cog (el de la foto).&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Con el primero, se ha tomado un objeto y se ha movido dentro de su campo de visión, mas tarde, el robot ha sido capaz de imitar este movimiento y desplazar un objeto de similares características.&lt;br /&gt;&lt;br /&gt;El segundo experimento ha sido mas complejo gracias a las características del Cog, este ha sido capaz de distinguir cuatro objetos distintos, y mimetizar los movimientos aprendidos dependiendo del objeto. Lo que dicho con palabras distintas, sonaría a que el robot ha sido capaz de 'comprender' que objeto tenía delante y donde debía colocarlo&lt;br /&gt;&lt;br /&gt;Si os gustan este tipo de cosas echadle un vistazo al artículo entero, es cortito, apenas 5 páginas.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-1652127473348168997?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/1652127473348168997/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=1652127473348168997' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1652127473348168997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1652127473348168997'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/artculo-aprendiendo-manejar-objetos.html' title='Artículo - Aprendiendo a manejar objetos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6265037728466928833</id><published>2008-07-07T17:56:00.004+02:00</published><updated>2008-07-07T18:16:46.597+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='articulos'/><title type='text'>LOST - Método de exploración de caminos</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www-robotics.usc.edu/%7Emaja/maja-and-robot-small.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px;" src="http://www-robotics.usc.edu/%7Emaja/maja-and-robot-small.jpg" alt="" border="0" /&gt;&lt;/a&gt;Hace poco he leído &lt;a href="http://robotics.usc.edu/%7Emaja/publications/ieeetra02vaughan.pdf"&gt;un artículo&lt;/a&gt; que trata sobre la exploración de caminos por medio de un grupo de robots. &lt;a href="http://www-robotics.usc.edu/%7Emaja/"&gt;Maja Matarić&lt;/a&gt; (la que tiene pelo) se inspira en las colmenas de abejas y hormigas para crear un modelo no centralizado que sea capaz de encontrar rutas eficaces en un entorno desconocido.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Para encontrar dichas rutas, emplea la información recolectada por cada miembro del grupo (hormiga) sobre el entorno que lo rodea, compartiendo esta información con el resto de robots. Esta información (migas) se combina con la poseída por cada robot para confeccionar un mapa del entorno al completo en el que se encuentra la población. Las 'migas' intercambiadas por los distintos miembros se componen (a groso modo) de lugares (coordenadas relativas) y tiempos de desplazamiento entre estos.&lt;br /&gt;&lt;br /&gt;Como puede verse en los experimentos y en las conclusiones, los métodos de autolocalización son extremadamente importantes, ya que el error acumulado de estos influye directamente en el resultado final. Por un lado la odometría ofrece una amplia independencia del medio, pero el error acumulado es demasiado importante. La localización por GPS otorga un mínimo error, pero no en todas partes podemos disponer de esta tecnología.&lt;br /&gt;&lt;br /&gt;Aunque no pudo comprobarlo directamente, las simulaciones que realizó demostraron que a mayor número de miembros, mejores resultados se obtienen (con rutas mas óptimas), aunque el tráfico empleado en los mensajes aumenta de forma exponencial y puede resultar un serio problema&lt;br /&gt;&lt;br /&gt;Otros asuntos que deja para futuras investigaciones son cosas como los problemas que tendrían las hormigas al intentar pasar todas a la vez por un lugar estrecho, o tener un lugar de referencia detrás de un obstáculo demasiado grande.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6265037728466928833?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6265037728466928833/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6265037728466928833' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6265037728466928833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6265037728466928833'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/07/lost-mtodo-de-exploracin-de-caminos.html' title='LOST - Método de exploración de caminos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-4094251908445099344</id><published>2008-06-26T20:06:00.004+02:00</published><updated>2008-07-08T12:24:22.947+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><title type='text'>Aplicación para el patito</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SGPbk5DBykI/AAAAAAAAAF0/UyzdHF0BOWQ/s1600-h/Pantallazo-Patito+-+Version+1.0.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SGPbk5DBykI/AAAAAAAAAF0/UyzdHF0BOWQ/s320/Pantallazo-Patito+-+Version+1.0.png" alt="" id="BLOGGER_PHOTO_ID_5216254220260461122" border="0" /&gt;&lt;/a&gt;La anterior entrada hacía referencia a una interfaz gráfica para ver de forma mas bonita el robot que hará de guía. Ahora le ha tocado el turno al otro robot. Esta aplicación es muy similar a la anterior, con mínimos cambios:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Se ha eliminado la velocidad del robot, pues esta ya no es controlable, será el propio robot quien establezca la velocidad a la que debe moverse.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Se ha incluido una imagen que representa un rectángulo con los cuatro puntos 'vistos' por la cámara de infrarrojos del wiimote. Nos da una idea de que está viendo el robot a tiempo real. Él se basará en estos puntos para determinar la distancia con su 'mamapato' y la dirección a tomar.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Como tonterías añadidas, se puede cambiar los colores y la resolución del visor&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-4094251908445099344?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/4094251908445099344/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=4094251908445099344' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4094251908445099344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4094251908445099344'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/aplicacin-para-el-patito.html' title='Aplicación para el patito'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/SGPbk5DBykI/AAAAAAAAAF0/UyzdHF0BOWQ/s72-c/Pantallazo-Patito+-+Version+1.0.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7962208451141047629</id><published>2008-06-24T10:16:00.003+02:00</published><updated>2008-06-24T10:22:50.911+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><title type='text'>Otra aplicación mas</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SGCuHgXpoBI/AAAAAAAAAFs/cWtPnCKuBQk/s1600-h/Pantallazo-Mama+Pato+-+Version+1.0.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SGCuHgXpoBI/AAAAAAAAAFs/cWtPnCKuBQk/s320/Pantallazo-Mama+Pato+-+Version+1.0.png" alt="" id="BLOGGER_PHOTO_ID_5215359812466483218" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;Después de varias intentonas, al fin he conseguido una aplicación gráfica útil para mis propósitos. En esta ocasión es un interfaz gráfico para controlar el robot de cabeza, o "Mama Pato". Una vez han sido conectado Wiimote y Brick por medio de la cruceta del mando puede controlarse el robot como si de un coche teledirigido se tratase.&lt;br /&gt;&lt;br /&gt;No tiene nada especial, activar algunas 'pijotadas' para el mando como leds o vibración, controlar la velocidad de movimiento del robot...&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7962208451141047629?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7962208451141047629/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7962208451141047629' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7962208451141047629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7962208451141047629'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/otra-aplicacin-mas.html' title='Otra aplicación mas'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/SGCuHgXpoBI/AAAAAAAAAFs/cWtPnCKuBQk/s72-c/Pantallazo-Mama+Pato+-+Version+1.0.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-4013473530526310139</id><published>2008-06-13T11:53:00.002+02:00</published><updated>2008-06-13T11:58:25.317+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>Desde Barna con amor</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hace tiempo que no pongo un vídeo de robots chorras, así que aquí va. ¿Qué objetivo puede haber en la vida mejor que el de buscar objetos para hacer música?&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/_RyodnisVvU&amp;amp;hl=es"&gt;&lt;embed src="http://www.youtube.com/v/_RyodnisVvU&amp;amp;hl=es" type="application/x-shockwave-flash" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;El vídeo me lo ha enviado Pepe, que "es una gran persona y mejor ser humano". ¡Gracias amigo!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-4013473530526310139?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/4013473530526310139/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=4013473530526310139' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4013473530526310139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4013473530526310139'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/desde-barna-con-amor.html' title='Desde Barna con amor'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3227699632547287597</id><published>2008-06-11T17:22:00.005+02:00</published><updated>2008-06-11T18:02:49.732+02:00</updated><title type='text'>La distancia entre dos puntos</title><content type='html'>&lt;div style="text-align: justify;"&gt;Pasamos a sacarle partido a la cámara de infrarrojos del wiimote. Para empezar vamos a calcular la distancia (en pixeles) entre dos puntos, mas adelante usaremos esta información para saber lo lejos (o cerca) que nos encontramos de un objeto que disponga de dos emisores infrarrojos que están separados el uno del otro por una distancia conocida.&lt;br /&gt;&lt;br /&gt;El primer paso, entonces, se trata en conocer la distancia entre estos dos puntos. Para verlo todo de formas mas gráfica he utilizado la extensión pygame y he tomado unas 'fotos' para contar los pasos seguidos.&lt;br /&gt;&lt;br /&gt;Partimos de un momento 't', en el que leemos dos puntos en la cámara del mando, estos dos puntos, como indica la &lt;span style="font-style: italic;"&gt;figura 1&lt;/span&gt;, son &lt;span style="font-style: italic;"&gt;A&lt;/span&gt; y &lt;span style="font-style: italic;"&gt;B&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SE_u3C_judI/AAAAAAAAAFU/8SZ9sCkOuew/s1600-h/ir_sensor_1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SE_u3C_judI/AAAAAAAAAFU/8SZ9sCkOuew/s320/ir_sensor_1.png" alt="" id="BLOGGER_PHOTO_ID_5210645923354622418" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;figura 1&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;De cada punto conocemos sus coordenadas, lo cual nos facilita enormemente el trabajo. A estas coordenadas las llamaremos &lt;span style="font-style: italic;"&gt;(Xa, Ya) (Xb, Yb)&lt;/span&gt;. Como los ejes &lt;span style="font-style: italic;"&gt;X&lt;/span&gt; y &lt;span style="font-style: italic;"&gt;Y&lt;/span&gt; son perpendiculares, trazamos dichos ejes atravesando nuestros puntos, obteniendo el resultado de la figura 2&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center; font-style: italic;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SE_zZ0XpTCI/AAAAAAAAAFc/4DL5cpwXbMM/s1600-h/ir_sensor_2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SE_zZ0XpTCI/AAAAAAAAAFc/4DL5cpwXbMM/s320/ir_sensor_2.png" alt="" id="BLOGGER_PHOTO_ID_5210650918771051554" border="0" /&gt;&lt;/a&gt;figura 2&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;A la intersección de ambos ejes la denotaremos como &lt;span style="font-style: italic;"&gt;C&lt;/span&gt;, con un poco de imaginación puede verse que la recta &lt;span style="font-style: italic;"&gt;AB&lt;/span&gt; es la hipotenusa formada por los vértices &lt;span style="font-style: italic;"&gt;ABC&lt;/span&gt; (figura 3).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SE_1d6TRWJI/AAAAAAAAAFk/hU2Pyns8xBM/s1600-h/ir_sensor_3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SE_1d6TRWJI/AAAAAAAAAFk/hU2Pyns8xBM/s320/ir_sensor_3.png" alt="" id="BLOGGER_PHOTO_ID_5210653188106049682" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;figura 3&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Recordando uno de los teoremas de Pitágoras sabemos que &lt;span style="font-style: italic;"&gt;h2 = c2 + C2&lt;/span&gt;. (el dos indica cuadrado, a falta de Latex...)&lt;br /&gt;&lt;br /&gt;Sólo nos faltaría saber las coordenadas de &lt;span style="font-style: italic;"&gt;C&lt;/span&gt;, o bien la longitud de los lados &lt;span style="font-style: italic;"&gt;AC&lt;/span&gt; y &lt;span style="font-style: italic;"&gt;BC&lt;/span&gt;, algo que tenemos que extraer de la información disponible. Para conocer la distancia &lt;span style="font-style: italic;"&gt;AC&lt;/span&gt; basta con restar la coordenada &lt;span style="font-style: italic;"&gt;Xb&lt;/span&gt; a &lt;span style="font-style: italic;"&gt;Xa&lt;/span&gt;, o siendo mas precisos, el valor absoluto de esta diferencia.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;BC&lt;/span&gt; lo obtendremos por el mismo procedimiento, y será igual al valor absoluto de la diferencia de &lt;span style="font-style: italic;"&gt;Ya&lt;/span&gt; e &lt;span style="font-style: italic;"&gt;Yb&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ya disponemos de la distancia, en píxeles, de ambos puntos. El siguiente paso es utilizar esta información para saber la distancia a la que nos encontramos del objeto que tiene los emisores&lt;br /&gt;&lt;br /&gt;NOTA: Me habría encantado utilizar Latex para las fórmulas, pero la solución que me pasó Javi parece no funcionar en linux&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3227699632547287597?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3227699632547287597/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3227699632547287597' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3227699632547287597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3227699632547287597'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/la-distancia-entre-dos-puntos.html' title='La distancia entre dos puntos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-3JgMJC2dy4/SE_u3C_judI/AAAAAAAAAFU/8SZ9sCkOuew/s72-c/ir_sensor_1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-748906522934059151</id><published>2008-06-07T18:22:00.003+02:00</published><updated>2008-06-07T18:35:47.143+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>El tiro por la culata</title><content type='html'>&lt;div style="text-align: justify;"&gt;Al cabo de un rato terminé encontrando el motivo por el que recibía esos valores negativos tan extraños. Aunque todo indicaba lo contrario el valor devuelto por la instrucción xhat[-1] es correcto para el vector xhat (que raro que yo me equivoque).&lt;br /&gt;&lt;br /&gt;Al principio pensé que el problema radicaba en que yo solicitaba el valor del vector cuando este estaba siendo tratado por el filtro. Me explico: actualmente tengo dos clases, una llamada Kalman encargada de filtrar la información cuando se agreguen valores leídos por el mando, y la clase Wiimote que entre otras muchas cosas trata las "interrupciones" del mando, entregándosela al objeto kalman para que la filtre, un momento después se solicita el último dato del vector ya filtrado para así calcular velocidad y espacio en tiempo real.&lt;br /&gt;&lt;br /&gt;Para evitar esto (un error de programación por mi parte) creé un vector nuevo, copia del anterior, que sólo se actualiza cuando toda la información ha sido filtrada, de forma que siempre devolverá un valor filtrado (aunque sea uno que ya ha sido entregado). Pero esto tampoco funciona, los valores extraños siguen apareciendo, y ahora mismo no se como resolverlo.&lt;br /&gt;&lt;br /&gt;Calcularé velocidad y espacio una vez terminado un movimiento, no es igual de 'bonito' pero creo que es la última baza que me queda para utilizar el mando (al menos con el enfoque actual)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-748906522934059151?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/748906522934059151/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=748906522934059151' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/748906522934059151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/748906522934059151'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/el-tiro-por-la-culata.html' title='El tiro por la culata'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-42005905597993307</id><published>2008-06-04T12:33:00.005+02:00</published><updated>2008-06-04T13:35:47.928+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>El que la sigue la persigue</title><content type='html'>&lt;div style="text-align: justify;"&gt;Ayer por fin encontré donde está el fallo, el por qué no funciona, la línea que estropea todo... pero lo mas triste es que no se como repararlo.&lt;br /&gt;&lt;br /&gt;El problema está, y no está, en el filtro Kalman. La implementación que tengo de él funciona perfectamente. Este algoritmo crea un array perteneciente al paquete &lt;a href="http://numpy.scipy.org/"&gt;numpy&lt;/a&gt; (que proporciona arrays mucho mas útiles que los de python estandar) para almacenar los datos filtrados. Es de este array (al que llamo &lt;span style="font-style: italic;"&gt;xhat&lt;/span&gt;) del que extraigo los datos para calcular la velocidad y el espacio.&lt;br /&gt;&lt;br /&gt;Ahora un breve repaso al manejo de arrays en python&lt;br /&gt;&lt;br /&gt;Creamos una variable 'vector' que contiene tres números, en este caso enteros&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="Python"&gt;&gt;&gt;&gt; vector = numpy.array([1, 2, 3])&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Si queremos acceder a la primera posción (contando desde 0) sólo tenemos que ejecutar&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="Python"&gt;&gt;&gt;&gt; vector[0]&lt;br /&gt;1&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Para un vector de números 'flotantes'&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="Python"&gt;&gt;&gt;&gt; vector = numpy.array([1.1, 2.1, 3.1])&lt;br /&gt;&gt;&gt;&gt; vector[-1]&lt;br /&gt;3.1&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Con el índice negativo comenzamos a contar desde el final&lt;br /&gt;&lt;br /&gt;Por defecto, el paquete numpy crea arrays de tipo float64 que permite almacenar números mas grandes, aunque esto es algo que puede modificarse en el momento de crear el array.&lt;br /&gt;&lt;br /&gt;El problema viene ahora, el algoritmo rellena el array &lt;span style="font-style: italic;"&gt;xhat&lt;/span&gt;, de tal forma que si quisiera obtener el último elemento de este para hacer mis cálculos, ejecutaría una instrucción tan sencilla como esta&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="Python"&gt;&gt;&gt;&gt; xhat[-1]&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;y al menos yo esperaba obtener un número 'flotante', pero... no. Por algo que no entiendo, que parece ser contra natura, obtengo otro número. Si, otro número. No es el número &lt;span style="font-style: italic;"&gt;xhat[-1]&lt;/span&gt; redondeado, no. Ni siquiera parecido, es, simplemente, otro número. Que en la mayoría de los casos viene a ser algo aproximado de -1.04... que provoca que la velocidad descienda por debajo del 0&lt;br /&gt;&lt;br /&gt;¿Por qué?&lt;br /&gt;&lt;br /&gt;Vaya usted a saber, yo llevo desde ayer preguntando a google y no me dice nada coherente. Lo bueno es que he encontrado el problema, lo malo, que roza lo absurdo.&lt;br /&gt;&lt;br /&gt;Menos mal que al ser tan cabezota terminaré encontrando la solución, y seguro que es una tontería&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-42005905597993307?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/42005905597993307/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=42005905597993307' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/42005905597993307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/42005905597993307'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/el-que-la-sigue-la-persigue.html' title='El que la sigue la persigue'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7742599188440658059</id><published>2008-06-03T17:16:00.002+02:00</published><updated>2008-06-03T17:28:40.591+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Pruebas, pruebas, pruebas...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Desde la última entrada he realizado pruebas con el código actual. Los resultados, para ser francos, no son muy esperanzadores. En ocasiones la medición es de una exactitud asombrosa, y en otras, son un desastre. No me refiero a que el error cometido sea de 5 cm, ni siquiera 10. Muchos experimentos arrojan medidas negativas de dos decenas de centímetros, y eso no es muy normal.&lt;br /&gt;&lt;br /&gt;He revisado ya varias veces el ćodigo referente a la cinemática, lo he contrastado con libros de física y parece ser todo correcto. El filtro de kalman parece funcionar correctamente, ya que la aproximación gráfica que obtengo de la aceleración se ajusta increíblemente bien a la realidad. Y sin embargo, en muchos experimentos termino obteniendo una velocidad negativa y por consiguiente un retroceso en el espacio. Aún dejando varios segundos el mando en reposo, sin que exista mas fuerza que la gravedad actuando sobre él (fuerza que para mi experimento no es significativa)&lt;br /&gt;&lt;br /&gt;He encontrado &lt;a href="http://www.gamasutra.com/view/feature/1494/wheres_the_wiimote_using_kalman_.php"&gt;un artículo&lt;/a&gt; bastante técnico sobre este asunto (aplicado también al wiimote) que he releído varias veces. Es posible que mi tosco inglés no me permita sacar todo el jugo al texto, pero creo que lo esencial si lo aplico en mi algoritmo.&lt;br /&gt;&lt;br /&gt;De momento, sigo con pruebas, pruebas y pruebas...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7742599188440658059?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7742599188440658059/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7742599188440658059' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7742599188440658059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7742599188440658059'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/06/pruebas-pruebas-pruebas.html' title='Pruebas, pruebas, pruebas...'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-8845428110212459367</id><published>2008-05-27T13:54:00.004+02:00</published><updated>2008-05-27T14:14:08.222+02:00</updated><title type='text'>De pruebas en (el) Ibiza</title><content type='html'>&lt;div style="text-align: justify;"&gt;Ante los esperanzadores resultados de ayer, esta mañana me he ido a "darle cera" al acelerómetro. El experimento ha sido sencillo, acelerar de 0 km/h hasta 80 km/h, y frenar de nuevo hasta detener el coche. Han sido dos pruebas, y la distancia recorrida de aproximadamente 200mts (medido con el odómetro del coche y teniendo en cuenta que mi coche mide a una escala de 100 metros)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li style="font-weight: bold;"&gt;Test 1&lt;/li&gt;&lt;br /&gt;En la primera carrera sólo he tomado una instantánea de las gráficas, sólo la gráfica de la aceleración me resulta un poco chocante, yo esperaba que la aceleración se hiciese negativa al frenar el coche, sin embargo no es así&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SDv4fcD0mzI/AAAAAAAAAE8/lFpYOeNo_nI/s1600-h/coche-acc-test1.png"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SDv4fcD0mzI/AAAAAAAAAE8/lFpYOeNo_nI/s320/coche-acc-test1.png" alt="" id="BLOGGER_PHOTO_ID_5205027013348596530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Las otras dos gráficas tienen la forma esperada, si bien la velocidad no sufre al final un aumento, el espacio si contempla la "falda de montaña" esperada&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li style="font-weight: bold;"&gt;Test 2&lt;/li&gt;&lt;br /&gt;En esta ocasión si he medido la distancia medida por el wiimote, 260 metros, que se acerca mucho a la medida por el coche (teniendo en cuenta que esta no es exacta). La velocidad tampoco ha desentonado mucho y se ha aproximado a 80km/h.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDv6a8D0m1I/AAAAAAAAAFM/QcluGy3phok/s1600-h/coche-vel-test2.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDv6a8D0m1I/AAAAAAAAAFM/QcluGy3phok/s320/coche-vel-test2.png" alt="" id="BLOGGER_PHOTO_ID_5205029135062440786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDv4fsD0m0I/AAAAAAAAAFE/kMExhiBITqY/s1600-h/coche-spc-test2.png"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDv4fsD0m0I/AAAAAAAAAFE/kMExhiBITqY/s320/coche-spc-test2.png" alt="" id="BLOGGER_PHOTO_ID_5205027017643563842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Con lo que me ha costado llegar a programar esto espero no estar demasiado tiempo con la calibración del filtro. Seguiré haciendo pruebas a bajas y altas velocidades hasta que los resultados sean algo coherentes.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-8845428110212459367?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/8845428110212459367/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=8845428110212459367' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8845428110212459367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8845428110212459367'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/05/de-pruebas-en-el-ibiza.html' title='De pruebas en (el) Ibiza'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SDv4fcD0mzI/AAAAAAAAAE8/lFpYOeNo_nI/s72-c/coche-acc-test1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5713685318458522644</id><published>2008-05-26T15:31:00.009+02:00</published><updated>2008-05-26T16:43:26.900+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Comienzan a salir las cosas</title><content type='html'>&lt;div style="text-align: justify;"&gt;Bien, después de muchas horas de desesperación creo estar cerca de poder usar el wiimote para conocer la distancia recorrida por el robot, o en otras palabras, tener un sistema de odometría fiable.&lt;br /&gt;&lt;br /&gt;Primero unos repasos de la física del instituto. Si disponemos de un objeto que se desplaza a lo largo del espacio &lt;span style="font-style: italic;"&gt;(s)&lt;/span&gt; y medimos el tiempo &lt;span style="font-style: italic;"&gt;(t)&lt;/span&gt;que invierte en este desplazamiento, podemos obtener su velocidad &lt;span style="font-style: italic;"&gt;(v)&lt;/span&gt;, con algo tan simple como derivar el espacio respecto del tiempo&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;v = s / t&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Donde &lt;span style="font-style: italic;"&gt;s&lt;/span&gt; corresponde al incremento del espacio &lt;span style="font-style: italic;"&gt;(s1 - s0)&lt;/span&gt; y &lt;span style="font-style: italic;"&gt;t &lt;/span&gt;al incremento del tiempo &lt;span style="font-style: italic;"&gt;(t1 - t0)&lt;/span&gt;. Bien, si derivamos de nuevo la velocidad respecto al tiempo, podremos obtener la aceleración del objeto. Siendo esta aceleración un movimiento conocido por todos como "movimiento uniformemente acelerado".&lt;br /&gt;&lt;br /&gt;Para recorrer el camino al contrario, simplemente tenemos que calcular las integrales de estos valores respecto del tiempo, es decir, conociendo la aceleración &lt;span style="font-style: italic;"&gt;(a)&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;v = v0 + a(t - t0)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;y el espacio:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;s = s0 + v0(t - t0) + 1/2 (a (t - t0))&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ahora el experimento, en un movimiento acotado de 30 cm desplazamos  el mando por la horizontal desde una v0 = 0 hasta una velocidad final también 0, los resultados obtenidos son los siguientes:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La aceleración tiene errores de lectura&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SDrD6sD0mnI/AAAAAAAAADc/rG810565EuQ/s1600-h/sin_k_aceleracion.png"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SDrD6sD0mnI/AAAAAAAAADc/rG810565EuQ/s320/sin_k_aceleracion.png" alt="" id="BLOGGER_PHOTO_ID_5204687732407048818" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La velocidad desciende por debajo de cero (como si el objeto invirtiese la dirección del movimiento)&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrEBMD0moI/AAAAAAAAADk/GuFGPcUbXXE/s1600-h/sin_k_velocidad.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrEBMD0moI/AAAAAAAAADk/GuFGPcUbXXE/s320/sin_k_velocidad.png" alt="" id="BLOGGER_PHOTO_ID_5204687844076198530" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Y el espacio retrocede a lo largo del tiempo aproximándose a cero&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDrEE8D0mpI/AAAAAAAAADs/wTgGH19L-70/s1600-h/sin_k_espacio.png"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDrEE8D0mpI/AAAAAAAAADs/wTgGH19L-70/s320/sin_k_espacio.png" alt="" id="BLOGGER_PHOTO_ID_5204687908500707986" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Bien, con esto no voy a ninguna parte, así que aplicando el filtro de kalman a la aceleración, los resultados obtenidos son los siguientes:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La aceleración se ha suavizado, ahora se ajusta mas a la realidad&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrFWMD0mqI/AAAAAAAAAD0/dpUf-TM4xOk/s1600-h/k_acc1.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrFWMD0mqI/AAAAAAAAAD0/dpUf-TM4xOk/s320/k_acc1.png" alt="" id="BLOGGER_PHOTO_ID_5204689304365079202" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La velocidad no ha tenido mejoras, seguimos cayendo por debajo de cero&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SDrFWcD0msI/AAAAAAAAAEE/JLcgXSkBCvY/s1600-h/k_vel1.png"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SDrFWcD0msI/AAAAAAAAAEE/JLcgXSkBCvY/s320/k_vel1.png" alt="" id="BLOGGER_PHOTO_ID_5204689308660046530" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Y como era de esperar, el espacio "retrocede"&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrFWMD0mrI/AAAAAAAAAD8/o4u8UxXlDws/s1600-h/k_spc1.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrFWMD0mrI/AAAAAAAAAD8/o4u8UxXlDws/s320/k_spc1.png" alt="" id="BLOGGER_PHOTO_ID_5204689304365079218" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Así que utilizamos de nuevo el filtro de kalman, pero esta vez aplicado primero a la aceleración y luego a la velocidad. Los resultados son los siguientes:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La aceleración filtrada, obtiene una gráfica mas real&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDrHS8D0mtI/AAAAAAAAAEM/tFQ5Pv27lFg/s1600-h/k_acc2.png"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDrHS8D0mtI/AAAAAAAAAEM/tFQ5Pv27lFg/s320/k_acc2.png" alt="" id="BLOGGER_PHOTO_ID_5204691447553759954" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La velocidad, esta vez si desciende de forma normalizada, sin llegar a 0, pero sin tomar valores negativos&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrHTMD0muI/AAAAAAAAAEU/iYdtYEszSUU/s1600-h/k_vel2.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrHTMD0muI/AAAAAAAAAEU/iYdtYEszSUU/s320/k_vel2.png" alt="" id="BLOGGER_PHOTO_ID_5204691451848727266" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ahora si, el espacio aumenta, pero sobrepasa los 30cm del experimento hasta el doble&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/SDrHTcD0mvI/AAAAAAAAAEc/8dY6XCVELB8/s1600-h/k_spc2.png"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/SDrHTcD0mvI/AAAAAAAAAEc/8dY6XCVELB8/s320/k_spc2.png" alt="" id="BLOGGER_PHOTO_ID_5204691456143694578" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Y la última prueba, filtrando el espacio con los datos a su vez filtrados de velocidad y aceleración. Las gráficas correspondientes a estas dos últimas no varían&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDrIT8D0mwI/AAAAAAAAAEk/upemHeYfqYM/s1600-h/k_acc3.png"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/SDrIT8D0mwI/AAAAAAAAAEk/upemHeYfqYM/s320/k_acc3.png" alt="" id="BLOGGER_PHOTO_ID_5204692564245256962" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrIUMD0mxI/AAAAAAAAAEs/FIiTgjqN94w/s1600-h/k_vel3.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrIUMD0mxI/AAAAAAAAAEs/FIiTgjqN94w/s320/k_vel3.png" alt="" id="BLOGGER_PHOTO_ID_5204692568540224274" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Pero retrocedemos en los resultados esperados para el espacio&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrIUMD0myI/AAAAAAAAAE0/d59rBoAhZvo/s1600-h/k_spc3.png"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/SDrIUMD0myI/AAAAAAAAAE0/d59rBoAhZvo/s320/k_spc3.png" alt="" id="BLOGGER_PHOTO_ID_5204692568540224290" border="0" /&gt;&lt;/a&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Conclusiones: El filtro de kalman resulta tremendamente útil para obtener una información mas cercana a la realidad que la obtenida por medio de las mediciones, ya que nos permite eliminar el ruido. Sin embargo, sólo en una de las pruebas el resultado espacial ha estado cercano a los 30cm del experimento (con un error de 1cm). Así que algo he dejado en el aire, tal vez sean los ajustes del filtro.&lt;br /&gt;&lt;br /&gt;¿alguna sugerencia?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5713685318458522644?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5713685318458522644/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5713685318458522644' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5713685318458522644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5713685318458522644'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/05/comienzan-salir-las-cosas.html' title='Comienzan a salir las cosas'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SDrD6sD0mnI/AAAAAAAAADc/rG810565EuQ/s72-c/sin_k_aceleracion.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6251170932720875230</id><published>2008-05-23T10:55:00.004+02:00</published><updated>2008-05-23T11:08:19.293+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><title type='text'>Wiimote GUI</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a style="" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SDaIssD0mmI/AAAAAAAAADU/zLuPoov657k/s1600-h/wiimote-gui.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SDaIssD0mmI/AAAAAAAAADU/zLuPoov657k/s320/wiimote-gui.png" alt="" id="BLOGGER_PHOTO_ID_5203496720795998818" border="0" /&gt;&lt;/a&gt;Como ayer era incapaz de mirar el mando de la wii sin sentir deseos de matar a &lt;a href="http://en.wikipedia.org/wiki/Mario"&gt;Mario&lt;/a&gt; decidí seguir trabajando con ello, pero yendo por la tangente. Así que programé en GTK una interfaz gráfica para ver las lecturas del mando.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;La cosa es bastante simple, y no tiene otra misión que pintar en una ventana lo que hasta ahora he visto por consola, pero haciendo las pruebas he visto que un problema que ya apareció se intensifica un poco. Sufro un desbordamiento en la pila de mensajes enviados por el mando, ¿soy lento recogiendo los mensajes?, ¿lento procesando?, ¿será la biblioteca que uso de python?&lt;br /&gt;&lt;br /&gt;El caso es que un programa similar creado por los chicos de cwiid no adolece de este desbordamiento y no pone al portatil al borde de la levitación, por lo que me inclino en pensar que es python el culpable (¡no voy a ser yo!)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6251170932720875230?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6251170932720875230/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6251170932720875230' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6251170932720875230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6251170932720875230'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/05/wiimote-gui.html' title='Wiimote GUI'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SDaIssD0mmI/AAAAAAAAADU/zLuPoov657k/s72-c/wiimote-gui.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6081492075484897631</id><published>2008-05-21T16:45:00.005+02:00</published><updated>2008-05-21T17:22:45.328+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Aceleraciones y desaceleraciones</title><content type='html'>&lt;div style="text-align: justify;"&gt;Mientras continúo intentando conocer el espacio recorrido por medio de las aceleraciones medidas por el mando de la wii, he encontrado un proyecto que ya intentó esto mismo, pero en su caso "sujetando" el mando a la rueda del robot para hallar el espacio por medio de las rotaciones que daba el mando.&lt;br /&gt;&lt;br /&gt;La dirección del proyecto es esta &lt;a href="http://wiibotics.blogspot.com/"&gt;http://wiibotics.blogspot.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;y su conclusión... esta otra&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;blockquote cite="http://wiibotics.blogspot.com/" style="font-style: italic;"&gt;Conclusions&lt;br /&gt;&lt;br /&gt;My original inspiration for working with the wiimote turned out to be a somewhat-solved problem, since many cursor-control scripts have been written to turn the wiimote into a mouse. I had hoped to make it possible to use such control without being bound to a pair of IR hotspots, but I suspect that the wiimote accelerometer alone will never be accurate and sensitive enough to make this feasible.&lt;br /&gt;&lt;br /&gt;Although I had high hopes for the Wiimote being realized as a fully-fledged robot, in half a semester, I was only able to bring it up to speed as an alternative solution to a common problem in robotics: measuring wheel rotation. Still, I hope that this will be its proverbial foot in the door; a stepping stone to more widespread and varied uses. Sensing the grade of the road under a car-like vehicle is as simple as mounting a wiimote parallel to the ground and reading the pitch. With that same wiimote we could do bump-sensing by watching for the force along the long axis of the wiimote to rise above a certain threshhold. I have no doubt that many more uses could be found.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Espero que todo el trabajo que llevo llegue a mejor puerto y no termine escribiendo unas conclusiones similares&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6081492075484897631?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6081492075484897631/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6081492075484897631' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6081492075484897631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6081492075484897631'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/05/aceleraciones-y-desaceleraciones.html' title='Aceleraciones y desaceleraciones'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-233952214684377713</id><published>2008-04-17T18:23:00.003+02:00</published><updated>2008-04-17T18:47:28.513+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>Una de vídeos tontos</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hace tiempo que no pongo ningún vídeo curioso de robots, espero que no lo hayáis echado en falta.&lt;br /&gt;&lt;br /&gt;El primero de ellos es un robot que escucha los toques del tambor e intenta imitarlos, es increíble de lo que es capaz el ser humano cuando se aburre...&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/AV8HP2hcXPY&amp;amp;rel=0"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/AV8HP2hcXPY&amp;amp;rel=0" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;¿Recordáis el vídeo del cuadrúpedo que os puse hace un tiempo?, pues os dejo otro vídeo de este impresionante modelo.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/VXJZVZFRFJc&amp;amp;hl=es"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/VXJZVZFRFJc&amp;amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Repito, es increíble lo que llega a realizar el humano cuando se aburre... realmente increíble...&lt;br /&gt;&lt;br /&gt;Y por último un vídeo que poco o nada tiene que ver con el mundo de los robots y con el TFC, pero a fin de cuentas esta entrada está un poco fuera de lugar, así que tampoco desentonará mucho. Va dedicado a toda esa estupenda gente que ha pasado casi media vida delante de una preciosa consola negra y ha programado en vi ;) (y que seguro siguen haciéndolo)&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PLHjT5-XM9o&amp;hl=es"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PLHjT5-XM9o&amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-233952214684377713?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/233952214684377713/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=233952214684377713' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/233952214684377713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/233952214684377713'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/una-de-vdeos-tontos.html' title='Una de vídeos tontos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-729275595651257327</id><published>2008-04-17T18:00:00.005+02:00</published><updated>2008-04-18T12:21:07.328+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Aceleraciones y ajustes</title><content type='html'>&lt;div style="text-align: justify;"&gt;Llevo ya muchos días enfrascado trabajando con el acelerómetro del mando de la wii, este dispone de un acelerómetro &lt;a href="http://www.analog.com/en/prod/0%2C2877%2CADXL330%2C00.html"&gt;ADXL330&lt;/a&gt; para medir la fuerza que actúa sobre el mando en los tres ejes. De momento sólo trabajo con la información del eje Y, ya que el mando estará colocado de forma horizontal con los mandos hacia arriba y la cámara de infrarrojos hacia delante.&lt;br /&gt;&lt;br /&gt;Con esta información no pretendo determinar la velocidad a la cual se desplaza el robot, sino la distancia que avanza. Si recordamos un poco de la física que estudiamos en el instituto (ha llovido mucho desde entonces...) derivando la distancia recorrido respecto del tiempo obtenemos la velocidad, y derivando de nuevo esta llegamos a la aceleración. Deshaciendo este camino llegamos de nuevo a la distancia.&lt;br /&gt;&lt;br /&gt;Las pruebas realizadas no me han dejado muy contento, los datos obtenidos de la realidad distan bastante de los valores esperados, por lo que Javi me sugirió que utilizase el filtro de &lt;a href="http://en.wikipedia.org/wiki/Rudolf_Kalman"&gt;Kalman&lt;/a&gt; para suavizar el impacto de estos. Este filtro utiliza la información de la medición para intentar 'adivinar' con la mayor probabilidad posible el valor que debería tener el siguiente dato (en relación al que ha tenido). Si queréis ahondar un poco más, &lt;a href="http://es.wikipedia.org/wiki/Filtro_de_Kalman"&gt;os dejo el enlace&lt;/a&gt; de la socorrida wikipedia.&lt;br /&gt;&lt;br /&gt;Una vez implementado este filtro en python he pasado a realizar nuevas mediciones y he podido ver como los datos filtrados se ajustan más a la realidad que los propios datos leídos del mundo real.&lt;br /&gt;&lt;br /&gt;Ahora sólo queda saber si con la aceleración filtrada puedo obtener una medida del espacio coherente, que será a lo que dedique los próximos experimentos.&lt;br /&gt;&lt;br /&gt;Os dejo un gráfico que representa la aceleración del mando en su eje Y en un tiempo de aproximadamente dos segundos.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/SAd4nTsUkLI/AAAAAAAAADM/HbFrfeu1Qfg/s1600-h/Pantallazo-aceleracion.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/SAd4nTsUkLI/AAAAAAAAADM/HbFrfeu1Qfg/s320/Pantallazo-aceleracion.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5190249712264188082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-729275595651257327?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/729275595651257327/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=729275595651257327' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/729275595651257327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/729275595651257327'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/aceleraciones-y-ajustes.html' title='Aceleraciones y ajustes'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/SAd4nTsUkLI/AAAAAAAAADM/HbFrfeu1Qfg/s72-c/Pantallazo-aceleracion.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2138023761908709965</id><published>2008-04-05T17:30:00.003+02:00</published><updated>2008-04-05T17:56:31.848+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><title type='text'>Consejos para Lego Digital Design</title><content type='html'>&lt;div style="text-align: justify;"&gt;Después de jugar un buen rato con este software, he recopilado una serie de consejos que de haberlos sabido me habrían ahorrado tiempo y algún que otro quebradero de cabeza, así que los publico por si en el futuro pueden venirle bien a alguna persona (incluido yo mismo, que tengo una memoria...)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Siempre que tengas una construcción que te gustaría conservar en LDD dedica unos minutos a comprobar que no tienes piezas forzadas&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Utiliza todos los recursos que te provee el software, por ejemplo, para piezas que tienes montadas de forma simétrica es más sencillo clonar la que ya tienes puesta que coger una nueva y girarla&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Las piezas pueden girarse con total libertad, pero requiere un poco de astucia. Si deseas colocar una pieza con una inclinación de 45º, coloca un conector y utiliza la herramienta de giro (Hinge Tool) para hacerla rotar sobre este conector. Necesitarás un poco de pulso para obtener la inclinación deseada, ya que el programa no te da información sobre la nueva posición&lt;/li&gt;&lt;br /&gt;&lt;li&gt;No te desesperes si una pieza no quiere encajar en su lugar correspondiente, prueba a girar la cámara para encontrar un mejor ángulo de trabajo&lt;/li&gt;&lt;br /&gt;&lt;li&gt;La mejor forma para trabajar que he encontrado es manejar la cámara (giros y zoom) con el ratón y los giros de pieza y atajos de teclado con la otra mano&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Es posible que utilices piezas que no vienen en el inventario, en ese caso tendrás que echarle imaginación para procurar encontrar un sustituto a ese elemento. Lamentablemente la mayoría de las piezas Technic no vienen incluidas, esperemos que en el futuro esto cambie&lt;/li&gt;&lt;br /&gt;&lt;li&gt;No olvides colocar los cables si trabajas con el set de Mindstorm, no es vital, pero así tu modelo estará completo&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;¡Suerte!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2138023761908709965?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2138023761908709965/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2138023761908709965' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2138023761908709965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2138023761908709965'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/consejos-para-lego-digital-design.html' title='Consejos para Lego Digital Design'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7748018121764526083</id><published>2008-04-04T01:04:00.005+02:00</published><updated>2008-04-04T01:13:54.848+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><title type='text'>Lego Digital Design</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hace tiempo descargué &lt;a href="http://ldd.lego.com/"&gt;esta aplicación&lt;/a&gt; de Lego y hasta hoy no he recordado su existencia. Como se intuye por su nombre, nos permite desarrollar un diseño digital de nuestras construcciones, funciona a modo de &lt;a href="http://en.wikipedia.org/wiki/Computer-aided_design"&gt;CAD&lt;/a&gt; y es muy útil para gente tan despistada como yo que nunca sabe como reconstruir los modelos.&lt;br /&gt;&lt;br /&gt;Los usuarios de MAC tienen su propia versión, y para los rebeldes insurrectos que nos negamos a utilizar sistemas propietarios, pues siempre nos quedará nuestro querido &lt;a href="http://www.winehq.org/"&gt;wine&lt;/a&gt; :D&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R_Vj2ArLqHI/AAAAAAAAAC8/4IdsINL5yNk/s1600-h/Pantallazo+-+LEGO+Digital+Designer.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R_Vj2ArLqHI/AAAAAAAAAC8/4IdsINL5yNk/s320/Pantallazo+-+LEGO+Digital+Designer.png" alt="" id="BLOGGER_PHOTO_ID_5185160325532199026" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7748018121764526083?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7748018121764526083/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7748018121764526083' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7748018121764526083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7748018121764526083'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/lego-digital-design.html' title='Lego Digital Design'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/R_Vj2ArLqHI/AAAAAAAAAC8/4IdsINL5yNk/s72-c/Pantallazo+-+LEGO+Digital+Designer.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7354383242761248106</id><published>2008-04-03T23:52:00.002+02:00</published><updated>2008-04-04T01:03:40.862+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>Buscando en youtube</title><content type='html'>&lt;div style="text-align: justify;"&gt;Casi sin quererlo he encontrado estos dos vídeos en Youtube. Al primero de ellos he llegado a través de la web de "&lt;a href="http://robotikas.blogspot.com/"&gt;robótica recreativa y educativa&lt;/a&gt;" y es un ejemplo del uso del &lt;a href="http://www.legoeducation.com/store/detail.aspx?ID=1452&amp;amp;bhjs=0"&gt;sensor gyro&lt;/a&gt; en el NXT. Creo que este vídeo le puede venir bien a cualquier persona que quiera construir un péndulo invertido, pues si no me equivoco la construcción de un artilugio así debe basarse en el mismo principio que utiliza este otro péndulo para detectar la velocidad y posición. Por cierto, el robot lo ha desarrollado &lt;a href="http://www.hitechnic.com/"&gt;hitechnic&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Uc4cdnn_Unw&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=es"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/Uc4cdnn_Unw&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;El otro vídeo es de un robot "busca-caminos", "evita objetos" o como queramos llamarlo, me ha llamado la atención las ruedas que utiliza (por llamarlo de alguna forma), si no me equivoco están tomadas de la serie &lt;a href="http://exoforce.lego.com/en-us/Products/Robots/8108%20.aspx"&gt;Exoforce&lt;/a&gt; de Lego. El robot es de grandes dimensiones, y gira sobre su propio eje gracias al enorme tamaño de las ruedas, ya que cada par de ruedas puede ser controladas por un motor sin utilizar un número excesivo de ruedas dentadas. ¿Y para que sirve esto?, por ejemplo, para construir un robot grande capaz de incorporar muchos sensores o material vario. Si queremos dotarle de dirección al vehículo esta puede resultar poco útil en terreno adverso y lo mas eficiente son los giros sobre el propio eje, vamos, lo que hacen los tanques&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/7_iMDzHHC18&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=es"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/7_iMDzHHC18&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7354383242761248106?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7354383242761248106/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7354383242761248106' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7354383242761248106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7354383242761248106'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/buscando-en-youtube.html' title='Buscando en youtube'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7578809840254657719</id><published>2008-04-02T18:05:00.003+02:00</published><updated>2008-04-02T18:12:53.073+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>El robot que era tímido</title><content type='html'>&lt;div style="text-align: justify;"&gt;Para que el wiimote y el NXT empiecen a trabajar juntos, he construido un robot muy sencillo que acopla el mando de la wii. El algoritmo de trabajo es muy sencillo a falta de unas cuantas pruebas mas, al recibir una señal de infrarrojos el robot gira 180 grados para "huir" de la señal.&lt;br /&gt;&lt;br /&gt;En las pruebas se han producido giros superiores a 180 grados, esto ocurre por que se detectan varios mensajes que indican la presencia de una fuente emisora, por lo que son varios semi-giros los que se producen.&lt;br /&gt;&lt;br /&gt;Como viene siendo normal, he utilizado python junto con nxt-python y cwiid, todo servido en una bonita máquina derivada del modelo básico que viene con la caja de lego.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/bxMN8l0wUas&amp;color1=0x2b405b&amp;color2=0x6b8ab6&amp;hl=es"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/bxMN8l0wUas&amp;color1=0x2b405b&amp;color2=0x6b8ab6&amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7578809840254657719?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7578809840254657719/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7578809840254657719' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7578809840254657719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7578809840254657719'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/el-robot-que-era-tmido.html' title='El robot que era tímido'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5734334674701237215</id><published>2008-04-02T12:07:00.005+02:00</published><updated>2008-04-02T12:18:07.622+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Los ojos de Benito</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Estoy haciendo pruebas con la cámara de infrarrojos que incorpora el wiimote, esta cámara nos proporciona una resolución de 1024x768 con una profundidad de color de 1 bit y es capaz de ver hasta cuatro puntos de forma simultánea.&lt;br /&gt;&lt;br /&gt;Con la librería &lt;a href="http://www.pygame.org/news.html"&gt;pygame&lt;/a&gt; de python he escrito un pequeño programa para "ver" tal y como lo hará el robot con la cámara del mando, y este es el resultado&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R_Nc3grLqGI/AAAAAAAAAC0/to-Zp6azIZM/s1600-h/wiimote-ir-test1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R_Nc3grLqGI/AAAAAAAAAC0/to-Zp6azIZM/s320/wiimote-ir-test1.png" alt="" id="BLOGGER_PHOTO_ID_5184589704767187042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;La prueba ha sido hecha con el mando de la minicadena, emitiendo de forma continua (atendiendo a la repetición de la tecla back-track) en línea horizontal con el mando. La verdad, ahora mismo no se como interpretarlo, debo darle aún un par de vueltas para saber como ver con estos ojos nuevos, seguiré informando ;)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5734334674701237215?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5734334674701237215/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5734334674701237215' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5734334674701237215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5734334674701237215'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/los-ojos-de-benito.html' title='Los ojos de Benito'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/R_Nc3grLqGI/AAAAAAAAAC0/to-Zp6azIZM/s72-c/wiimote-ir-test1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-8832039307060975769</id><published>2008-04-01T14:02:00.002+02:00</published><updated>2008-04-01T14:14:51.924+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>Johnny5</title><content type='html'>&lt;div style="text-align: justify;"&gt;Ayer recordé una web que encontré al poco de tener el NXT, y es que cualquiera que haya visto el &lt;a href="http://nine-years.blogspot.com/2008/02/sensores-ultrasonidos.html"&gt;sensor de ultrasonidos&lt;/a&gt; lo habrá asociado inmediatamente con la película "cortocircuito". Pues bien, &lt;a href="http://daniele.benedettelli.com/JohnNXT.htm"&gt;os paso una página&lt;/a&gt; en la que muestran al robot construido (no he encontrado las instrucciones) y un bonito vídeo del Johnny5 en acción&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/B_9PLfuv8Hg&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=es"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/B_9PLfuv8Hg&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;que conste que con esto no quiero influir en las votaciones de la encuesta, que ya sabéis todos que para mi el mejor siempre será &lt;a href="http://es.youtube.com/watch?v=Eq-Qw6NJYK0"&gt;Mazinger Z&lt;/a&gt; (y no me refiero al &lt;a href="http://www.labiaba.com.ar/RATZINGER-Z.jpg"&gt;Papa&lt;/a&gt;)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-8832039307060975769?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/8832039307060975769/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=8832039307060975769' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8832039307060975769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8832039307060975769'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/04/johnny5.html' title='Johnny5'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5903389906689263068</id><published>2008-03-27T21:18:00.002+01:00</published><updated>2008-03-27T21:36:12.185+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>De infrarrojos y pantallas de leds</title><content type='html'>&lt;div style="text-align: justify;"&gt;Seguimos jugando con el mando de la wii. Buscando la mejor forma de aprovechar sus características infrarrojas he dado con el proyecto de &lt;a href="http://www.cs.cmu.edu/%7Ejohnny/projects/wii/"&gt;Johnny Chung Lee&lt;/a&gt;, en él comenta como ha utilizado las capacidades del mando, y me ha parecido muy interesante.&lt;br /&gt;&lt;br /&gt;Usa una pantalla de aproximadamente 100 leds emisores de infrarrojo (como los que llevan incorporados las cámaras de visión nocturna) con una batería de 9v (por que si no dudo que funcione).  Dentro de esta pantalla aloja el mando y utiliza un material reflectante para que el mando "vea" las señales infrarrojas. Creo que un vídeo ilustrará mucho mejor lo que acabo de contar&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/0awjPUkBXOU"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/0awjPUkBXOU" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Y mi idea es utilizar un modelo similar. Montar una placa de dimensiones apropiadas alrededor del mando, y todo ello acoplado en el robot. Como es lógico, los objetos deberán estar forrados con un material reflectante (como el papel aluminio) y de esta forma el robot en su conjunto podrá identificar el obstáculo y evitarlo&lt;br /&gt;&lt;br /&gt;He echo unas pruebas caseras con el mando de la tele y todo ha salido como se esperaba (nunca dejaré de asombrarme cuando las cosas me funcionan a la primera). Ahora probare a dibujar en la pantalla la fuente emisora, algo parecido a lo que hace John en el vídeo. Ya os contaré&lt;br /&gt;&lt;br /&gt;Haciendo las pruebas me ha sucedido algo que me ha desconcertado un poco y seguro que alguno de vosotros sabe por qué sucede. Sobre "el taller" tengo un flexo con una bombilla corriente (no es de bajo consumo) y el mando recogía el flexo como fuente emisora al ser reflejada la luz en el papel aluminio. Imagino que sucede por que la luz se descompone en el papel, pero si alguno de vosotros lo sabe con certeza le agradeceré que me lo aclare. He probado con linternas y otras lámparas pero no hubo éxito, sólo con el flexo.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5903389906689263068?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5903389906689263068/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5903389906689263068' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5903389906689263068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5903389906689263068'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/de-infrarrojos-y-pantallas-de-leds.html' title='De infrarrojos y pantallas de leds'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5453547740534118793</id><published>2008-03-27T12:20:00.006+01:00</published><updated>2008-03-27T14:55:49.948+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='documentacion'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><title type='text'>Documentación pyton-cwiid</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: justify;"&gt;A raíz de las notas que he tomado y las pruebas realizadas he escrito una breve documentación de la biblioteca &lt;a href="http://abstrakraft.org/cwiid/wiki"&gt;cwiid&lt;/a&gt; para python. No está completa y seguramente contenga errores y equivocaciones, por lo que si veis alguna cosa rara o tenéis alguna sugerencia no dudéis en comentarlo.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;(revisión 1.0)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;cwiid.__doc__&lt;/span&gt;&lt;br /&gt;CWiid Wiimote Interface&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;cwiid.__file__&lt;/span&gt;&lt;br /&gt;/var/lib/python-support/python2.5/cwiid.so&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;cwiid.__name__&lt;/span&gt;&lt;br /&gt;cwiid&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Constantes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;BATTERY_MAX&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Indica el nivel máximo de batería, se utiliza para determinar el nivel actual de batería&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;BTN_UP&lt;br /&gt;BTN_DOWN&lt;br /&gt;BTN_LEFT&lt;br /&gt;BTN_RIGHT&lt;br /&gt;BTN_A&lt;br /&gt;BTN_B&lt;br /&gt;BTN_1&lt;br /&gt;BTN_2&lt;br /&gt;BTN_MINUS&lt;br /&gt;BTN_PLUS&lt;br /&gt;BTN_HOME&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Botones del Wiimote&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;CLASSIC_BTN_A&lt;br /&gt;CLASSIC_BTN_B&lt;br /&gt;CLASSIC_BTN_DOWN&lt;br /&gt;CLASSIC_BTN_HOME&lt;br /&gt;CLASSIC_BTN_L&lt;br /&gt;CLASSIC_BTN_LEFT&lt;br /&gt;CLASSIC_BTN_MINUS&lt;br /&gt;CLASSIC_BTN_PLUS&lt;br /&gt;CLASSIC_BTN_R&lt;br /&gt;CLASSIC_BTN_RIGHT&lt;br /&gt;CLASSIC_BTN_UP&lt;br /&gt;CLASSIC_BTN_X&lt;br /&gt;CLASSIC_BTN_Y&lt;br /&gt;CLASSIC_BTN_ZL&lt;br /&gt;CLASSIC_BTN_ZR&lt;br /&gt;CLASSIC_LR_MAX&lt;br /&gt;CLASSIC_L_STICK_MAX&lt;br /&gt;CLASSIC_R_STICK_MAX&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Botones del mando clásico&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;CMD_LED&lt;br /&gt;CMD_RPT_HOME&lt;br /&gt;CMD_RUMBLE&lt;br /&gt;CMD_STATUS&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     En la biblioteca de Python no tienen aplicación&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ERROR_COMM&lt;br /&gt;ERROR_DISCONNECT&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Tipos de error&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;EXT_NONE&lt;br /&gt;EXT_NUNCHUK&lt;br /&gt;EXT_CLASSIC&lt;br /&gt;EXT_UNKNOWN&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Las distintas extensiones que soporta el mando&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;FLAG_CONTINUOUS&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Habilita informes continuos del Wiimote&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;FLAG_MESG_IFC&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Habilita el interfaz basado en mensajes (a través de callback)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;FLAG_NONBLOCK&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Provoca que get_mesg() se falle en lugar de bloquearse esperando un mensaje si la cola está vacia &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;FLAG_REPEAT_BTN&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Se envía un mensaje por cada botón pulsado, aunque este no haya cambiado de estado&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;IR_SRC_COUNT&lt;br /&gt;IR_X_MAX&lt;br /&gt;IR_Y_MAX&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Definiciones para el IR&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;LED1_ON&lt;br /&gt;LED2_ON&lt;br /&gt;LED3_ON&lt;br /&gt;LED4_ON&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Valores para encender/apagar los led&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;MAX_READ_LEN&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Longitus máxima que puede leerse&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;MESG_ACC&lt;br /&gt;MESG_BTN&lt;br /&gt;MESG_CLASSIC&lt;br /&gt;MESG_ERROR&lt;br /&gt;MESG_IR&lt;br /&gt;MESG_NUNCHUK&lt;br /&gt;MESG_STATUS&lt;br /&gt;MESG_UNKNOWN&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Tipos de mensaje recibidos&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;NUNCHUK_BTN_C&lt;br /&gt;NUNCHUK_BTN_Z&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Botones del Nunchuk&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;RPT_ACC&lt;br /&gt;RPT_BTN&lt;br /&gt;RPT_CLASSIC&lt;br /&gt;RPT_EXT&lt;br /&gt;RPT_IR&lt;br /&gt;RPT_NUNCHUK&lt;br /&gt;RPT_STATUS&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Establecen los distintos tipos de informe (reporting mode) del wiimote. Cada uno determina que dispositivo está activo y que datos deben ser enviados al host. Cada flag especifica un bit, por lo que deben establecerse por medio de funciones OR&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;RW_DECODE&lt;br /&gt;RW_EEPROM&lt;br /&gt;RW_REG&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Flags para los registros del wiimote&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;X&lt;br /&gt;Y&lt;br /&gt;Z&lt;br /&gt;&lt;span style="font-style: italic;"&gt;     Identificadores de los distintos ejes del wiimote&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Métodos&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Wiimote(bt_addrs)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Parámetros&lt;/span&gt;&lt;br /&gt;bt_addrs: Dirección Bluetooth del wiimote&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Conecta con el Wiimote especificado o con el primero que encuentre si no se especifica mando&lt;br /&gt;     &lt;br /&gt;&lt;span style="font-style: italic;"&gt;Valor de retorno&lt;/span&gt;&lt;br /&gt;Un objeto Wiimote si la conexión ha tenido éxito&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Class Wiimote()&lt;/span&gt;&lt;br /&gt;Una vez creado un objeto de tipo Wiimote a través de cwiid.Wiimote() disponemos de los siguientes atributos y métodos para esta clase&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Atributos&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;state&lt;/span&gt;&lt;br /&gt;Diccionario con el estado actual del mando&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;mesg_callback&lt;/span&gt;&lt;br /&gt;Función para tratar los mensajes enviados por el wiimote. Una vez se pone a funcionar el mando en un modo RPT_XXX este envía mensajes cada vez que sucede un evento. Estos mensajes son tratados con la función indicada en este atributo (La función debe haber sido declarada anteriormente)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;rpt_mode&lt;/span&gt;&lt;br /&gt;Modo de informes del mando: RPT_ACC, RPT_BTN, RPT_CLASSIC, RPT_IR, RPT_EXT, RPT_NUNCHUK, RPT_STATUS&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;led&lt;/span&gt;&lt;br /&gt;Atributo para activar/desactivar los led&lt;br /&gt;Ej: wiimote.led = cwiid.LED1_ON&lt;br /&gt;wiimote.led = not cwiid.LED1_ON&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;rumble&lt;/span&gt;&lt;br /&gt;Atributo para activar/desactivar la vibración&lt;br /&gt;Ej: wiimote.rumble = 1&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;Métodos&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;close()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Cierra la conexión con un objeto Wiimote&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;enable(flags)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Parámetros&lt;/span&gt;&lt;br /&gt;FLAG_CONTINUOUS, FLAG_MESG_IFC, FLAG_NONBLOCK, FLAG_REPEAT_BTN&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Habilita los flags indicados&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;disable(flags)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Parámetros&lt;/span&gt;&lt;br /&gt;FLAG_CONTINUOUS, FLAG_MESG_IFC, FLAG_NONBLOCK, FLAG_REPEAT_BTN&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Deshabilita los flags indicados&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;get_acc_cal(extension)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Parámetros&lt;/span&gt;&lt;br /&gt;EXT_NONE, EXT_NUNCHUK, EXT_CLASSIC, EXT_UNKNOWN&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Devuelve una tupla ( (X,Y,Z) , (X,Y,Z) ) con la información sobre la calibración del acelerómetro&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Valor de retorno&lt;/span&gt;&lt;br /&gt;Tupla ( (X,Y,Z) , (X,Y,Z) )&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;get_mesg()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Devuelve un mensaje de la cola, estos mensajes se recuperan por medio de "callback" o de esta función&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Valor de retorno&lt;/span&gt;&lt;br /&gt;Mensaje mas antiguo de la cola&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;read(flags, offset, lenght)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Parámetros&lt;/span&gt;&lt;br /&gt;flags: RW_EEPROM, RW_REG, RW_DECODE&lt;br /&gt;offset: Dirección de inicio&lt;br /&gt;lenght: Longitud&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Lee datos desde el Wiimote, utiliza los flags RW_EEPROM, RW_REG (mutuamente exclusivos)para leer desde la memoria EEPROM o desde el registro. El flag RW_DECODE realiza cualquier decodificación de los datos leídos si es necesario.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Valor de retorno&lt;/span&gt;&lt;br /&gt;Los datos leídos&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;write(flags, offset, buffer)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Parámetros&lt;/span&gt;&lt;br /&gt;flags: RW_EEPROM, RW_REG, RW_DECODE&lt;br /&gt;offset: Dirección de inicio&lt;br /&gt;buffer: Información a escribir&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Descripción&lt;/span&gt;&lt;br /&gt;Escribe datos en el Wiimote, utiliza los flags RW_EEPROM, RW_REG (mutuamente exclusivos)para leer desde la memoria EEPROM o desde el registro. El flag RW_DECODE es ignorado.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;request_status()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;??&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Referencia&lt;/span&gt;&lt;br /&gt;&lt;a href="http://abstrakraft.org/cwiid/wiki/libcwiid"&gt;http://abstrakraft.org/cwiid/wiki/libcwiid&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5453547740534118793?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5453547740534118793/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5453547740534118793' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5453547740534118793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5453547740534118793'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/documentacin-pyton-cwiid.html' title='Documentación pyton-cwiid'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-606145468120902857</id><published>2008-03-27T10:30:00.003+01:00</published><updated>2008-03-27T14:59:31.100+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>Canal de Youtube</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hasta ahora he publicado los vídeos a través de &lt;a href="http://video.google.es/"&gt;Google Video&lt;/a&gt;, pero no estoy muy contento con el servicio, ya que algunos vídeos tardan mucho en ser procesados y en ser servidos, así que he abierto un canal en &lt;a href="http://es.youtube.com/"&gt;youtube&lt;/a&gt;, ya veremos como funciona&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://es.youtube.com/user/mmartinortiz"&gt;http://es.youtube.com/user/mmartinortiz&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-606145468120902857?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/606145468120902857/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=606145468120902857' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/606145468120902857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/606145468120902857'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/canal-de-youtube.html' title='Canal de Youtube'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3658543291577368579</id><published>2008-03-26T19:34:00.005+01:00</published><updated>2008-03-27T09:41:12.372+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>Mi coche de carreras</title><content type='html'>&lt;div style="text-align: justify;"&gt;Tras la desesperación de anoche y la angustia de esta mañana he ido a pasar frío y correr durante un buen rato para aclarar las ideas. Con mucha paciencia y la ayuda de &lt;a href="http://wiki.python.org/moin/IDLE"&gt;IDLE&lt;/a&gt; (el enésimo IDE para python que he probado) he escrito una breve documentación para cwiid. Tengo intención de subirla, por si le resulta útil a alguien.&lt;br /&gt;&lt;br /&gt;Gracias a la gente de &lt;a href="http://www.mail-archive.com/crysol@arco.inf-cr.uclm.es/msg01019.html"&gt;CRySOL&lt;/a&gt; y a la &lt;a href="http://abstrakraft.org/cwiid/discussion/2/76"&gt;demo escrita en python&lt;/a&gt; que viene junto al paquete de cwiid he escrito un pequeño programa para conducir mi propio coche teledirigido utilizando la cruceta del mando. Manejarlo con golpes del mando no es mucho mas complicado, habría que manejar unos eventos en lugar de los otros y los vídeos &lt;a href="http://www.youtube.com/watch?v=XHJSTKaxsE8&amp;amp;feature=related"&gt;que he visto&lt;/a&gt; con ese manejo no son tan elegantes. Os adjunto un par de vídeos para que veáis el resultado.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/BKPRAN5-Q68&amp;color1=0x2b405b&amp;color2=0x6b8ab6&amp;hl=es"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/BKPRAN5-Q68&amp;color1=0x2b405b&amp;color2=0x6b8ab6&amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;En este vídeo se ve la cruceta del mando&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/GKCO3pl5o4I&amp;color1=0x2b405b&amp;color2=0x6b8ab6&amp;hl=es"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/GKCO3pl5o4I&amp;color1=0x2b405b&amp;color2=0x6b8ab6&amp;hl=es" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Y esta es una foto con parte del taller que tengo montado (no viene a cuento, lo se)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/R-qcQArLqEI/AAAAAAAAACk/pnldvcC2yI4/s1600-h/taller.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/R-qcQArLqEI/AAAAAAAAACk/pnldvcC2yI4/s320/taller.png" alt="" id="BLOGGER_PHOTO_ID_5182126120116136002" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3658543291577368579?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3658543291577368579/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3658543291577368579' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3658543291577368579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3658543291577368579'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/mi-coche-de-carreras.html' title='Mi coche de carreras'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/R-qcQArLqEI/AAAAAAAAACk/pnldvcC2yI4/s72-c/taller.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7005191689412005664</id><published>2008-03-25T23:20:00.005+01:00</published><updated>2008-03-26T00:42:23.978+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><title type='text'>Jugando con la Wii</title><content type='html'>&lt;div style="text-align: justify;"&gt;¡Al fin tengo un mando para la Wii!. después de mucho corretear por Talavera he encontrado una tienda en la que si tenían mandos (de hecho tenían dos mandos, ahora sólo uno). Lleno de alegría e ilusión he puesto camino a casa, con mucho mimo he sacado el mando y le he puesto las pilas (en la caja pone que es un mando, pero a mi me da que esto es un vibrador)&lt;br /&gt;&lt;br /&gt;Lo primero, ver si funciona, y como no tengo una Wii, pues a conformarme con el programa de prueba que trae el driver que estoy usando, &lt;a href="http://abstrakraft.org/cwiid/wiki"&gt;cwiid&lt;/a&gt; (odio profundamente a las personas que desarrollan una API completa y no escriben una puñetera línea de documentación), lo ejecuto y "me llena de orgullo y satisfacción" ver como reconoce el mando a la primera, los botoncitos lucen, el acelerómetro va bien y el infrarrojos... bueno, el infrarrojos no funciona por que no tengo un emisor de infrarrojos, pero a esto ya le encontraremos solución mas adelante.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/R-mIFQrLqDI/AAAAAAAAACc/h61WjFmDJAI/s1600-h/Pantallazo-wmgui.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/R-mIFQrLqDI/AAAAAAAAACc/h61WjFmDJAI/s320/Pantallazo-wmgui.png" alt="" id="BLOGGER_PHOTO_ID_5181822470223276082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ahora que se que funciona el mando, vamos a buscar la biblioteca para python que tengo ganas de caharrear con él. Después de ir y venir, de apt-cachear y pedir ayuda a San Google, encuentro el paquete para ubuntu (&lt;a href="http://packages.ubuntu.com/hardy/python/python-cwiid"&gt;python-cwiid&lt;/a&gt;) que sólo está disponible para la versión Hardy de Ubuntu, así que toca actualizar algún que otro paquete para poder instalarla.&lt;br /&gt;&lt;br /&gt;Bien, ya tenemos la biblioteca, ¡vamos a jugar!, después de fijarme en el código que viene escrito en python para comprobar que el mando funciona, escribo un pequeño script para recuperar la información de acelerómetro. Recuperar... la recupero. Antes dije que odiaba mucho a los desarrolladores que no escriben una jodida (digo jodida por no decir puta, que suena muy mal) línea de documentación para aliviar los sufrimientos del prójimo, pues bien, ahora los odio mucho mas.&lt;br /&gt;&lt;br /&gt;Algo que no he contado antes, mas que nada por que no viene a cuento, es que empecé escribiendo código utilizando &lt;a href="http://geany.uvena.de/"&gt;geany&lt;/a&gt; (bueno y ligero), pero le falta completar el código, algo que me resulta enormemente útil cuando no hay documentación alguna (se que los hombres y mujeres de verdad no utilizan estas mariconadas, que con vi es suficiente, pero es que yo no soy ni un hombre ni una mujer de verdad). Luego me pasé a &lt;a href="http://editra.org/"&gt;Editra,&lt;/a&gt; que mola mazo, pero... le faltan muchas cosas que si ofrece Geany, así que sigo buscando y ahora estoy probando &lt;a href="http://www.openkomodo.com/"&gt;openkomodo,&lt;/a&gt; que es muy pesado y me recuerda a mi querido NetBeans. Todo esto, que no tiene mayor importancia, viene por que llevo cerca de dos horas dando vueltas, buscando un método o función que me permita recuperar valores del mando de la wii sin tener que leerme todo el código&lt;br /&gt;&lt;br /&gt;Y hoy, hasta aquí. Noto que la neurona patina un poco y creo que será mejor mirar un rato al infinito para que descanse. Mañana volveré a la carga&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7005191689412005664?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7005191689412005664/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7005191689412005664' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7005191689412005664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7005191689412005664'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/jugando-con-la-wii.html' title='Jugando con la Wii'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/R-mIFQrLqDI/AAAAAAAAACc/h61WjFmDJAI/s72-c/Pantallazo-wmgui.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2878569090228045589</id><published>2008-03-24T14:15:00.003+01:00</published><updated>2008-03-24T14:19:45.046+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><title type='text'>¡Cuidado con el perro!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Leyendo las cosas de &lt;a href="http://ciencia.barrapunto.com/article.pl?sid=08/03/22/1341234&amp;amp;from=rss"&gt;barrapunto&lt;/a&gt; he encontrado este vídeo de un cuadrúpedo desarrollado por &lt;a href="http://www.bostondynamics.com/index.php"&gt;Boston Dynamics&lt;/a&gt;. Me encanta como recupera el equilibrio después de recibir el golpe.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/W1czBcnX1Ww&amp;amp;hl=en"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/W1czBcnX1Ww&amp;amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2878569090228045589?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2878569090228045589/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2878569090228045589' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2878569090228045589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2878569090228045589'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/cuidado-con-el-perro.html' title='¡Cuidado con el perro!'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-4117614004242166426</id><published>2008-03-16T13:23:00.003+01:00</published><updated>2008-03-16T14:29:28.637+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>El valor de la sencillez</title><content type='html'>&lt;div style="text-align: justify;"&gt;La semana pasada estuve hablando con Javi, que me pasó un par de artículos para salir de mi atolladero de diseño. A parte de esto, decidimos jugar con un robot que siguiese un haz de luz (una linterna, el móvil...).&lt;br /&gt;&lt;br /&gt;Entre artículo y artículo, se me ocurrió una idea genial. Construir una cabeza giratoria que buscase el haz de luz a lo largo de giros completos de 360 grados en caso de perderlo, para sincronizar esta cabeza con las ruedas podría utilizarse un par de mandos de la wii, pero este problema se afrontaría mas adelante. De momento mi mente había tenido una idea genial y había que construirla.&lt;br /&gt;&lt;br /&gt;Manos a la obra, un par de horas el sábado y otras tantas el domingo para construir una preciosa cabeza giratoria en pos de la luz. Henchido de orgullo pruebo mi creación, ¡fabuloso!. Las ruedas dentadas danzan elegantemente con un suave ronroneo de fondo, la mecánica es maravillosa, el movimiento se transforma a lo largo del espacio para que el sensor de luz explore su entorno.&lt;br /&gt;&lt;br /&gt;Y entonces... me doy cuenta de mi gran error, un error catastrófico, que se lleva al garete mi obra. Como no voy a desarmar tan elegante creación de la mecánica sin dar testimonio de ella, os dejo un vídeo de su funcionamiento para que veáis "la enorme cagada" de este soleado fin de semana.&lt;br /&gt;&lt;br /&gt;&lt;embed style="width: 400px; height: 326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=8051540067967119071&amp;amp;hl=es" flashvars=""&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;Y desde un poco mas cerca...&lt;br /&gt;&lt;br /&gt;&lt;embed style="width: 400px; height: 326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-1647977790180970010&amp;amp;hl=es" flashvars=""&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;¿Lo veis?, no he tenido en cuenta que el sensor de luz hay que conectarlo, y para eso hay un cable que está anclado en la base del robot, estática en relación a la cabeza, así que el cable se retorcería hasta impedir el movimiento de la cabeza y con ello su funcionalidad.&lt;br /&gt;&lt;br /&gt;La solución es sencilla, que el sensor de luz sea estático con relación al cuerpo, y que sea todo el cuerpo el que se mueva para encontrar el haz de luz perdido. Esta solución no mola tanto como la cabeza giratoria, pero es mas sencilla de montar, de implementar, de probar...  vamos, que esta solución es mas sencilla y mas elegante, es mejor.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-4117614004242166426?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/4117614004242166426/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=4117614004242166426' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4117614004242166426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4117614004242166426'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/el-valor-de-la-sencillez.html' title='El valor de la sencillez'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2106611454434146705</id><published>2008-03-10T21:52:00.003+01:00</published><updated>2008-03-10T22:09:18.287+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>Sin sabor y sin sustancia</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hoy he decidido aparcar de momento la aplicación que estaba desarrollando (el "viewer"), ya que me he dado cuenta que no está bien enfocada y su desarrollo no tiene un final feliz. La idea de los módulos no me parece extensible o generalista, por lo que desarrollar esta aplicación con esta filosofía es una pérdida de tiempo.&lt;br /&gt;&lt;br /&gt;Para encontrar un nuevo enfoque he vuelto ha jugar con el robot, buscando un nuevo camino para programarlo y encontrar así una fórmula mágica aplicable a cualquier problema. Así que he jugado con hilos, con subprocesos, con señales y temporizadores, lo he sofrito todo a fuego lento en una sartén con dos cucharadas de aceite virgen extra, un poquito de especias y... ha quedado una pasta sin sabor alguno.&lt;br /&gt;&lt;br /&gt;Si ya de por sí la biblioteca de python para el NXT está mal documentada, me encuentro con un extraño síntoma que no se como buscar en "san google". El ladrillo, después de dos o tres ejecuciones se queda silbando y con los motores en un estado epiléptico en el que quieren rodar cada uno en un sentido, así que es necesario reiniciarlo para que funcione bien.&lt;br /&gt;&lt;br /&gt;Y después de varios días sin recoger frutos ni ver un campo fertil me surge una duda existencial, ¿de verdad se programar?, ¿es python un lenguaje de programación?, ¿será mi robot un cabecilla en la rebelión de las máquinas?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2106611454434146705?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2106611454434146705/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2106611454434146705' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2106611454434146705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2106611454434146705'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/sin-sabor-y-sin-sustancia.html' title='Sin sabor y sin sustancia'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6524311561918903884</id><published>2008-03-04T09:05:00.004+01:00</published><updated>2008-03-10T22:09:35.581+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nxt-viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>Caminando en silencio</title><content type='html'>&lt;div style="text-align: justify;"&gt;He estado demasiado callado estos días, y es que lo poco que avanzo no es visible. Sigo desarrollando la aplicación Nxt Viewer y ahora estoy bastante atascado, los problemas vienen a la hora de detener los procesos 'hijo' ejecutados (los módulos) ,no consigo capturar la señal SIGCHLD para que tengan una muerte limpia (y hayá donde vayan tengan una feliz estancia). Así que estoy pensando en dejarlos en estado zombie por el resto de los tiempos... algo que atenta contra todo lo aprendido en sistemas operativos (y la ética)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Por si alguien ve algo que yo no consigo ver, os comento la situación:&lt;br /&gt;&lt;br /&gt;La aplicación permite ejecutar otros programas, y cuando estos mueren, las buenas formas dicen que el proceso padre (en este caso mi aplicación) debe recoger los restos de su hijo para que este tenga un funeral digno. Para esto, el sistema operativo me envía la señal SIGCHLD ante el fallecimiento de un proceso hijo. Para capturarla python me proporciona la función &lt;span style="font-weight: bold;"&gt;signal(signal, manejador)&lt;/span&gt;. Hasta aquí todo bien, pero... cuando se lanza esta señal por parte del sistema operativo lo que capturo es una SIGINT, y a pesar de ignorarla o asociarla a funciones de tratamiento absurdas, siempre mata a la aplicación (tratamiento por defecto).&lt;br /&gt;&lt;br /&gt;¿Alguna sugerencia?&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6524311561918903884?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6524311561918903884/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6524311561918903884' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6524311561918903884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6524311561918903884'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/caminando-en-silencio.html' title='Caminando en silencio'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-4930542935706207130</id><published>2008-03-02T11:13:00.003+01:00</published><updated>2008-03-02T11:29:56.583+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nxt-viewer'/><title type='text'>NXT Viewer - Versión de desarrollo</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-3JgMJC2dy4/R8p971OluMI/AAAAAAAAACU/KPHyMPFeZko/s1600-h/Pantallazo-NXT+Viewer.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_-3JgMJC2dy4/R8p971OluMI/AAAAAAAAACU/KPHyMPFeZko/s320/Pantallazo-NXT+Viewer.png" alt="" id="BLOGGER_PHOTO_ID_5173085588842461378" border="0" /&gt;&lt;/a&gt;Sigo con el desarrollo de la aplicación, desde la toma de contacto que representa la versión 0.1 he aprendido unas cuantas cosas. He remodelado el aspecto gráfico de la aplicación, ahora dispone de dos partes diferenciadas&lt;br /&gt;&lt;br /&gt;La parte superior está destinada a la conexión con un brick (de momento sólo con uno) y a mostrar información acerca de este ladrillo&lt;br /&gt;&lt;br /&gt;La parte inferior permite cargar módulos que ejecutar en el brick conectado, administrándolos de forma simultánea o por separado&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;Según tenga versiones funcionales intentaré publicarlas por si queréis echarle un vistazo al código&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-4930542935706207130?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/4930542935706207130/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=4930542935706207130' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4930542935706207130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/4930542935706207130'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/03/nxt-viewer-versin-de-desarrollo.html' title='NXT Viewer - Versión de desarrollo'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-3JgMJC2dy4/R8p971OluMI/AAAAAAAAACU/KPHyMPFeZko/s72-c/Pantallazo-NXT+Viewer.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6118181577177391349</id><published>2008-02-29T19:33:00.003+01:00</published><updated>2008-02-29T19:41:03.394+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nxt-viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>NXT Viewer 0.1</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R8hRX1OluLI/AAAAAAAAACM/zmDA0uvgPVs/s1600-h/Pantallazo-NXT+Viewer+0.1.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R8hRX1OluLI/AAAAAAAAACM/zmDA0uvgPVs/s320/Pantallazo-NXT+Viewer+0.1.png" alt="" id="BLOGGER_PHOTO_ID_5172473641902127282" border="0" /&gt;&lt;/a&gt;Bajo este nombre estoy desarrollando una aplicación que espero me ayude en la comunicación con el robot. Esta versión no es mas que una toma de contacto con &lt;a href="http://glade.gnome.org/"&gt;Glade&lt;/a&gt; y su programación con python, su única funcionalidad es conectarse con el &lt;span style="font-style: italic;"&gt;'ladrillo'&lt;/span&gt; indicado en la caja de texto (o con el primero que encuentre si está vacía) y mostrar información relativa a él.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;En futuras versiones el objetivo es lograr una aplicación que me permita lanzar distintos módulos que interactúan con el robot, es decir, conectar con un robot (o varios, eso ya se verá) y ejecutar distintos programas (o módulos) que interactúen con él.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6118181577177391349?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6118181577177391349/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6118181577177391349' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6118181577177391349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6118181577177391349'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/nxt-viewer-01.html' title='NXT Viewer 0.1'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/R8hRX1OluLI/AAAAAAAAACM/zmDA0uvgPVs/s72-c/Pantallazo-NXT+Viewer+0.1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5743890139608518162</id><published>2008-02-26T13:12:00.004+01:00</published><updated>2008-02-29T19:42:06.620+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Buscando aparcamiento...</title><content type='html'>&lt;div style="text-align: justify;"&gt;Ya tengo algunas pruebas satisfactorias con el prototipo 2 del fisgón. Este modelo busca huecos en las paredes en los que quepa y pasa a través de ellos. Como se puede apreciar, tiene un paragolpes delantero para detener el robot en caso de colisión, pero aún no está implementado, la mayor parte del desarrollo lo ha llevado el control de los motores, cosa que aún no está muy fina.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;embed style="width: 400px; height: 326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-3976875045991886650&amp;amp;hl=es" flashvars=""&gt;&lt;/embed&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;La misma acción desde otro punto de vista&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;embed style="width: 400px; height: 326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-7040876444805655809&amp;amp;hl=es" flashvars=""&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5743890139608518162?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5743890139608518162/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5743890139608518162' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5743890139608518162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5743890139608518162'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/ya-tengo-algunas-pruebas-satisfactorias.html' title='Buscando aparcamiento...'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-7112979279631208699</id><published>2008-02-26T11:46:00.002+01:00</published><updated>2008-02-26T11:48:54.676+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii'/><title type='text'>La partida perfecta</title><content type='html'>&lt;div style="text-align: justify;"&gt;Buscando un poco de información sobre la integración del mando de la wii con el nxt he encontrado este vídeo, así cualquiera gana a los colegas en los bolos...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/KUvind4t7Pk&amp;amp;rel=1&amp;amp;border=0"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/KUvind4t7Pk&amp;amp;rel=1&amp;amp;border=0" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Podéis encontrar mas información &lt;a href="http://www.battlebricks.com/wiigobot/index.html"&gt;por aquí&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-7112979279631208699?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/7112979279631208699/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=7112979279631208699' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7112979279631208699'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/7112979279631208699'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/la-partida-perfecta.html' title='La partida perfecta'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-1051910917007647516</id><published>2008-02-21T16:44:00.003+01:00</published><updated>2008-02-21T16:55:59.823+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Prototipo A-2</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/R72ctFPE3GI/AAAAAAAAACE/rqfm-CxixCE/s1600-h/PICT3676.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/R72ctFPE3GI/AAAAAAAAACE/rqfm-CxixCE/s320/PICT3676.JPG" alt="" id="BLOGGER_PHOTO_ID_5169460245604654178" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R72co1PE3FI/AAAAAAAAAB8/at9P0pKB-M4/s1600-h/PICT3677.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R72co1PE3FI/AAAAAAAAAB8/at9P0pKB-M4/s320/PICT3677.JPG" alt="" id="BLOGGER_PHOTO_ID_5169460172590210130" border="0" /&gt;&lt;/a&gt;He realizado algunas modificaciones al primer prototipo. El sensor de ultrasonidos a pasado a un lateral y he incluido el sensor de tacto con un paragolpes.&lt;br /&gt;&lt;br /&gt;Me gustó el modelo del coche que aparca sólo, así que para soltarme un poco más con esto estoy haciendo una variante de ese modelo. Mi prototipo sigue una pared hasta encontrar un hueco lo bastante grande como para entrar por él.&lt;br /&gt;&lt;br /&gt;Hasta ahora las pruebas funcionan bastante bien, tengo problemas con la inercia adquirida por el vehículo que hace que los giros no sean de 90º (si no un poco mas). Aún no sé como frenar los motores, seguiré investigando un poco.&lt;br /&gt;&lt;br /&gt;Y a esto se suma otro problema, y es que la &lt;a href="http://es.wikipedia.org/wiki/Ley_de_Murphy"&gt;ley de Murphy&lt;/a&gt; no falla, cuando estás cerca de terminar las pruebas y llegar a un resultado satisfactorio, te quedas sin pilas... espero poder subir un vídeo esta noche, pero dependerá de si para entonces las pilas se han cargado. Por supuesto si alguien quiere donar una batería recargable para el lego yo lo acectaré gustoso :D&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-1051910917007647516?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/1051910917007647516/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=1051910917007647516' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1051910917007647516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/1051910917007647516'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/prototipo-2.html' title='Prototipo A-2'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/R72ctFPE3GI/AAAAAAAAACE/rqfm-CxixCE/s72-c/PICT3676.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3212512407971989606</id><published>2008-02-20T11:32:00.002+01:00</published><updated>2008-02-20T11:36:07.803+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>El Fisgón de paseo</title><content type='html'>&lt;div style="text-align: justify;"&gt;Como prometí ayer he subido el vídeo del primer prototipo dando un paseo. Lo se, lo se, menuda tontería, pero a mi me hace ilusión :D. El robot, como comenté en el post anterior, evita chocar con las paredes, girando 90 grados a la derecha para continuar el camino.&lt;br /&gt;&lt;br /&gt;Hoy haré una pausa, ya que tengo otros compromisos, pero espero poder hacer mas cosas con este prototipo y el resto de sensores. Espero que os guste.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;embed style="width: 400px; height: 326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-7340182971263584120&amp;amp;hl=es" flashvars=""&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3212512407971989606?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3212512407971989606/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3212512407971989606' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3212512407971989606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3212512407971989606'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/el-fisgn-de-paseo.html' title='El Fisgón de paseo'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-8687713839818948690</id><published>2008-02-19T22:48:00.003+01:00</published><updated>2008-02-19T22:54:26.111+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><category scheme='http://www.blogger.com/atom/ns#' term='pruebas'/><title type='text'>De paseo por los pasillos</title><content type='html'>&lt;div style="text-align: justify;"&gt;"El Fisgón" ya está de paseo por los pasillos de casa, siento no acompañar un vídeo, mañana en un rato lo grabo y lo subo a youtube para que podáis verlo. No es gran cosa, sólo es una prueba de contacto con los sensores y los motores (benditos motores, las vueltas que me han hecho dar...)&lt;br /&gt;&lt;br /&gt;El robot ejecuta un algoritmo sencillo, avanza hasta encontrar un obstáculo (en su línea de visión) a menos de 20 cm, retrocede y gira a la derecha, luego vuelve a empezar.&lt;br /&gt;&lt;br /&gt;Lo bueno:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;No se choca&lt;/li&gt;&lt;li&gt;Ya entiendo bastante mejor a los motores y el tacómetro&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Lo malo:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Es mas simple que una ameba&lt;/li&gt;&lt;li&gt;¿Sirve para algo?&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-8687713839818948690?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/8687713839818948690/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=8687713839818948690' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8687713839818948690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/8687713839818948690'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/de-paseo-por-los-pasillos.html' title='De paseo por los pasillos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2699810253739027888</id><published>2008-02-19T13:50:00.003+01:00</published><updated>2008-02-19T14:01:20.706+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sensores'/><title type='text'>Sensores: Luz</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R7rQplPE3EI/AAAAAAAAAB0/KyYi6lrrR4U/s1600-h/light.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R7rQplPE3EI/AAAAAAAAAB0/KyYi6lrrR4U/s320/light.jpg" alt="" id="BLOGGER_PHOTO_ID_5168672935149624386" border="0" /&gt;&lt;/a&gt;El sensor de luz nos permite identificar varias escalas de grises, existe otro &lt;a href="http://iirobotics.com/catalog/product_info.php?products_id=488"&gt;sensor para el color&lt;/a&gt;, pero este no está incluido con el paquete mindstorm. A pesar de que para explotar su utilización al máximo sería necesario calibrarlo (por temas de iluminación relativa) no existe aún soporte en NXT-Pyton. Los métodos de uso son similares a los ya vistos&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul style="font-weight: bold;"&gt;&lt;li&gt;get_sample()&lt;/li&gt;&lt;/ul&gt;Devuelve en tanto por 100 la cantidad de luz "vista"&lt;br /&gt;&lt;br /&gt;&lt;ul style="font-weight: bold;"&gt;&lt;li&gt;set_illuminated(boolean)&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Enciende (True) o apaga (False) el haz de luz que varía la cantidad de luz percibida por el sensor. Por defecto este haz de luz es encendido, así que al terminar de utilizar el sensor es aconsejable apagar la luz para no quedarnos son pilas&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2699810253739027888?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2699810253739027888/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2699810253739027888' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2699810253739027888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2699810253739027888'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/sensores-luz.html' title='Sensores: Luz'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/R7rQplPE3EI/AAAAAAAAAB0/KyYi6lrrR4U/s72-c/light.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-5441793020659341658</id><published>2008-02-19T13:27:00.004+01:00</published><updated>2008-02-19T13:35:19.186+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sensores'/><title type='text'>Sensores: Sonido</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/R7rLSVPE3DI/AAAAAAAAABs/ctCCAssrY4w/s1600-h/sound.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/R7rLSVPE3DI/AAAAAAAAABs/ctCCAssrY4w/s320/sound.jpg" alt="" id="BLOGGER_PHOTO_ID_5168667038159526962" border="0" /&gt;&lt;/a&gt;El sensor de sonido permite percibir sonidos audibles para el ser humano (dBA) y sonidos que pueden quedar por encima o por debajo del umbral humano (dB). Por defecto el sensor está configurado con dBA&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul style="font-weight: bold;"&gt;&lt;li&gt;get_sample()&lt;/li&gt;&lt;/ul&gt;Devuelve en tanto por 100 el sonido ambiente, según la escala de valores de Lego los márgenes son los siguientes:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;4 - 5%: Una habitación en silencio&lt;/li&gt;&lt;li&gt;5 - 10%: Alguien hablando a una distancia lejana&lt;/li&gt;&lt;li&gt;10 - 30%: Una conversación o música a un nivel normal&lt;/li&gt;&lt;li&gt;30 - 100%: Gente gritando o música alta&lt;/li&gt;&lt;/ul&gt;&lt;ul style="font-weight: bold;"&gt;&lt;li&gt;set_adjusted(boolean)&lt;/li&gt;&lt;/ul&gt;Establecemos el modo de funcionamiento del sensor, si el parámetro pasado es True, el modo de funcionamiento pasa a ser dBA, en caso contrario (False) será dB&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-5441793020659341658?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/5441793020659341658/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=5441793020659341658' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5441793020659341658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/5441793020659341658'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/sensores-sonido.html' title='Sensores: Sonido'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/R7rLSVPE3DI/AAAAAAAAABs/ctCCAssrY4w/s72-c/sound.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3891608836131550756</id><published>2008-02-19T12:04:00.005+01:00</published><updated>2008-02-19T13:36:06.410+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sensores'/><title type='text'>Sensores: "Tacto"</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R7q7glPE3AI/AAAAAAAAABU/X1Bqpk-6Wk0/s1600-h/touch.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R7q7glPE3AI/AAAAAAAAABU/X1Bqpk-6Wk0/s320/touch.jpg" alt="" id="BLOGGER_PHOTO_ID_5168649690786618370" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;El sensor de tacto, o "touch sensor" es el mas sencillo de todos. Sirve para detectar una presión, no puede inicializarse ni calibrarse. Es muy útil para detectar el encontronazo con objetos.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;get_sample()&lt;/span&gt;: &lt;span style="font-style: italic;"&gt;boolean&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Devuelve un valor true / false que determina si el sensor está presionado (true) o no lo está (false)&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;is_pressed()&lt;/span&gt;: &lt;span style="font-style: italic;"&gt;boolean&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Ídem al anterior en cuanto a funcionalidad, puede ser mas útil a la hora de leer el código que su predecesor&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3891608836131550756?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3891608836131550756/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3891608836131550756' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3891608836131550756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3891608836131550756'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/sensores-tacto.html' title='Sensores: &quot;Tacto&quot;'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/R7q7glPE3AI/AAAAAAAAABU/X1Bqpk-6Wk0/s72-c/touch.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-6982307432518579030</id><published>2008-02-19T11:16:00.004+01:00</published><updated>2008-02-19T12:21:13.861+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sensores'/><title type='text'>Sensores: Ultrasonidos</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-3JgMJC2dy4/R7q7o1PE3BI/AAAAAAAAABc/pcTWiTpOG8Q/s1600-h/ultrasonic.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_-3JgMJC2dy4/R7q7o1PE3BI/AAAAAAAAABc/pcTWiTpOG8Q/s320/ultrasonic.jpg" alt="" id="BLOGGER_PHOTO_ID_5168649832520539154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Este sensor (que parece la cabeza de &lt;a href="http://en.wikipedia.org/wiki/Short_Circuit"&gt;Jhonny 5&lt;/a&gt;) utiliza el mismo mecanismo que los murciélagos para orientarse. Emite un sonido de baja frecuencia y se basa en el tiempo transcurrido desde su emisión par determinar la distancia con los objetos. Su manejo es muy sencillo, dispone de un sólo método para obtener la información y no admite inicializaciones.&lt;br /&gt;&lt;br /&gt;&lt;ul style="font-weight: bold;"&gt;&lt;li&gt;get_sample()&lt;/li&gt;&lt;/ul&gt;    Devuelve un valor entre 0-255 representando la distancia en cm con un margen de error de + / - 3 cm.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-6982307432518579030?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/6982307432518579030/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=6982307432518579030' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6982307432518579030'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/6982307432518579030'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/sensores-ultrasonidos.html' title='Sensores: Ultrasonidos'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-3JgMJC2dy4/R7q7o1PE3BI/AAAAAAAAABc/pcTWiTpOG8Q/s72-c/ultrasonic.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-795384803814383597</id><published>2008-02-18T23:15:00.004+01:00</published><updated>2008-02-20T11:36:29.881+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><title type='text'>El robot que aparca solo</title><content type='html'>&lt;div style="text-align: justify;"&gt;Os dejo otro vídeo, este hace ya mucho tiempo que lo había visto, pero hablando con Bea hace un rato me he acordado de él y he pensado que podía gustaros. Imagino que la longitud del coche la calcula de antemano, es decir, conoce cuantas vueltas han de dar las ruedas sin encontrar la pared para saber si el coche cabe en el hueco&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ebfxYAUBw-0&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/ebfxYAUBw-0&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Echando un vistazo al perfil de este usuario, se puede encontrar una evolución del mismo sistema de aparcamiento. ¡Este es una monada!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/vhs1hQHgrwQ&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/vhs1hQHgrwQ&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;El nuevo VW Touran incluye un sistema de asistencia de aparcamiento muy similar al de este robot, no he podido probar el sistema de VW (en los concesionarios siguen mirándome mal) pero no creo que sea tan bonito como en el anuncio...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/9TdZvGOEAkY&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/9TdZvGOEAkY&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-795384803814383597?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/795384803814383597/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=795384803814383597' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/795384803814383597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/795384803814383597'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/el-robot-que-aparca-solo.html' title='El robot que aparca solo'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3682744923500053048</id><published>2008-02-18T19:59:00.007+01:00</published><updated>2008-02-18T20:11:58.949+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='prototiopos'/><title type='text'>Prototipo A-1 (El fisgón)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/R7nYLlPE29I/AAAAAAAAAA8/gzgz7BdkQlc/s1600-h/Photo-0011.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/R7nYLlPE29I/AAAAAAAAAA8/gzgz7BdkQlc/s320/Photo-0011.jpg" alt="" id="BLOGGER_PHOTO_ID_5168399740869860306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-3JgMJC2dy4/R7nYBlPE28I/AAAAAAAAAA0/ifw2w_BE550/s1600-h/Photo-0010.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_-3JgMJC2dy4/R7nYBlPE28I/AAAAAAAAAA0/ifw2w_BE550/s320/Photo-0010.jpg" alt="" id="BLOGGER_PHOTO_ID_5168399569071168450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Basándome en el modelo de "&lt;a style="font-style: italic;" href="http://www.amazon.com/LEGO-MINDSTORMS-NXT-Adventure-Technology/dp/159059763X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1203361126&amp;amp;sr=8-1"&gt;The mayan adventure&lt;/a&gt;" he creado un prototipo para la toma de contacto con python y el bluetooth. Con este chasis puedo probar sin problemas los distintos sensores y los motores, aunque no creo que me sirva para una implementación seria futura.&lt;br /&gt;&lt;br /&gt;De momento las pruebas con los motores no me han dejado muy contento, es necesario sincronizarlos para que el robot no se vaya hacia las cunetas. El sensor de ultrasonidos hasta ahora me ha dado un resultado satisfactorio, ya veremos las pruebas de mañana&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3682744923500053048?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3682744923500053048/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3682744923500053048' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3682744923500053048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3682744923500053048'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/prototipo-1-el-fisgn.html' title='Prototipo A-1 (El fisgón)'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-3JgMJC2dy4/R7nYLlPE29I/AAAAAAAAAA8/gzgz7BdkQlc/s72-c/Photo-0011.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2442031479822247546</id><published>2008-02-18T19:39:00.004+01:00</published><updated>2008-02-20T11:36:44.486+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='robots'/><title type='text'>Robot para resolver el cubo de Rubik</title><content type='html'>Os dejo uno de los muchos vídeos de youtube con robots basados en NXT que resuelven el cubo de Rubik. Y yo que no tengo ni idea de como se resuelven estas cosas...&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/sRTcHnjNd5E&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/sRTcHnjNd5E&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2442031479822247546?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2442031479822247546/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2442031479822247546' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2442031479822247546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2442031479822247546'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/robot-para-resolver-el-cubo-de-rubik.html' title='Robot para resolver el cubo de Rubik'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-2619275039890933977</id><published>2008-02-17T23:08:00.006+01:00</published><updated>2008-02-19T12:23:01.765+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>Os presento a Benito</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-3JgMJC2dy4/R7q8ClPE3CI/AAAAAAAAABk/7Frya0-Qwj0/s1600-h/benito.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_-3JgMJC2dy4/R7q8ClPE3CI/AAAAAAAAABk/7Frya0-Qwj0/s320/benito.png" alt="" id="BLOGGER_PHOTO_ID_5168650274902170658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Así se llama el robot bípedo que construí con el NXT. No lo bauticé así por la serie de &lt;a style="font-style: italic;" href="http://es.wikipedia.org/wiki/Manolo_y_Benito_Corporeision"&gt;Manolo y Benito&lt;/a&gt;, aunque ahora que lo pienso, tampoco habría sido mucho desatino. El caso es que ha sido este el modelo que me permitió hacer mis primeros pinitos con el lego.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Os dejo una foto suya por que en unas horas dejará de tener esta forma y pasará a ser el chasis sobre el cual realizaré las primeras pruebas del protocolo de comunicaciones&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-2619275039890933977?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/2619275039890933977/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=2619275039890933977' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2619275039890933977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/2619275039890933977'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/os-presento-benito.html' title='Os presento a Benito'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-3JgMJC2dy4/R7q8ClPE3CI/AAAAAAAAABk/7Frya0-Qwj0/s72-c/benito.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2805937274030587277.post-3937395342546406056</id><published>2008-02-17T22:11:00.005+01:00</published><updated>2008-02-17T23:30:59.541+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='divagaciones'/><title type='text'>¡Qué empiece el espectáculo!</title><content type='html'>&lt;div style="text-align: justify;"&gt;Como dijo un sabio chino &lt;span style="font-style: italic;"&gt;"todo llega para el que sabe esperar"&lt;/span&gt;, y hoy, 17 de febrero, comienzo el proyecto fin de carrera. Para los que me conocen personalmente saben que ha sido un camino muy largo, con bastantes altibajos, unos años fueron buenos, y otros fueron menos buenos. A todos ellos les dedico estas entradas para así hacerles partícipes de los penúltimos (será mejor que demos nada por sentado) pasos en la universidad.&lt;br /&gt;&lt;br /&gt;Mi TFC estará centrado en la robótica, aún no tengo claro que aplicación práctica le encontraremos al aparato, pero mientras tanto hay bastante tarea que hacer. A saber:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Un chasis robusto para soportar todo el robot&lt;/li&gt;&lt;li&gt;Empaparme mucho de la &lt;a href="http://home.comcast.net/%7Edplau/nxt_python/index.html"&gt;librería NXT_Python&lt;/a&gt; con la que desarrollaré la parte software del robot&lt;/li&gt;&lt;li&gt;Investigar mucho sobre el mando de la &lt;a href="http://es.wii.com/"&gt;Wii&lt;/a&gt; y sus posibilidades como complemento para mi proyecto&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;La parte mecánica del robot estará basada en el juguete (si podemos llamarle así) de Lego, &lt;a href="http://mindstorms.lego.com/"&gt;NXT Mindstorm&lt;/a&gt;. Su plataforma y el ejército de piezas que le acompañan permiten una gran flexibilidad en el apartado físico, ya que no tenemos necesidad de soldar o rebuscar por los cajones en busca de un tornillo que nos sea útil.&lt;br /&gt;&lt;br /&gt;Y hasta aquí la primera entrada. Mi idea es acompañarlas con vídeos e imágenes del robot, para que todo este asunto sea un poco mas ilustrativo y menos aburrido.&lt;br /&gt;&lt;br /&gt;¡Nos leemos!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2805937274030587277-3937395342546406056?l=nine-years.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nine-years.blogspot.com/feeds/3937395342546406056/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2805937274030587277&amp;postID=3937395342546406056' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3937395342546406056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2805937274030587277/posts/default/3937395342546406056'/><link rel='alternate' type='text/html' href='http://nine-years.blogspot.com/2008/02/qu-empiece-el-espectculo.html' title='¡Qué empiece el espectáculo!'/><author><name>Manolo</name><uri>http://www.blogger.com/profile/12204241532651652690</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
