47629518 revist-users-robotica-avanzada

  • View
    37

  • Download
    2

Embed Size (px)

Text of 47629518 revist-users-robotica-avanzada

  • 1. Nicols Arrioja Landa Cosio

2. >> HARDWARE>> 352 PGINA>> ISBN 978-98PGINAS987-1347-73-5>> DESARROLLODESARROLL>> 320 PGINA>> ISBN 978-98PGINAS987-1347-51-3>> DESARROLLO / MICROSOFTDESARROLL>> 400 PGINA>> ISBN 978-98PGINAS987-1347-76-6>> HARDWARE/ HOME>> 240 PGINA>> ISBN 978-98PGINAS987-1347-58-2 3. RobotsLa interfaz delproyectoCaptulo 1La PC para controlar robots 14El puerto USB 15El microcontrolador Phidget 20Resumen 29Actividades 30Una de las actividades ms interesantesrelacionadas con las cienciascomputacionales es la inteligenciaartificial y la robtica. Poder creardispositivos que interacten con el mundoreal y que sean controlados por la lgicade nuestros programas resultauno de los desafos que soamoscon enfrentar quienes nos interesamosen las tecnologas.SERVICIO DE ATENCIN AL LECTOR: usershop@redusers.com 4. 1. LA INTERFAZ DEL PROYECTOLA PC PARA CONTROLAR ROBOTSDurante muchos aos, si desebamos comunicar la computadora con el exterior,tenamos tres opciones: usar el puerto serial, usar el puerto paralelo o construirnuestra propia tarjeta de interfaz casera.El puerto paralelo era sencillo de utilizar, pero existan limitaciones respecto de lacantidad de bits que se podan usar para la salida y para la entrada de datos. Elpuerto serial permita transferir ms informacin, pero, por el hecho de ser serial,se complicaba el circuito necesario para la comunicacin con el robot. Hacer nuestrapropia tarjeta de interfaz permita tener la cantidad necesaria de bits de entrada ode salida, e, incluso, leer valores analgicos, pero se necesitaban conocimientosavanzados de electrnica para lograrlo. En la actualidad, la mayor parte de las nuevascomputadoras, en especial las laptops, ya no presentan puertos seriales ni paralelos.Es necesario que utilicemos nuevas opciones para nuestros proyectos de conecti-vidadcon el mundo real. La alternativa que podemos utilizar es el puerto USB. Sideseamos crear un robot autnomo, podemos hacerlo mediante el uso de un micro-controlador.Muchas veces, se utiliza el microcontrolador PIC. Lamentablemente,no todas las personas poseen los conocimientos necesarios para realizar esta progra-macinen forma directa. En algunas ocasiones, la cantidad de lgica necesaria parala aplicacin robtica puede exceder las capacidades del microcontrolador.El uso de la PC para controlar el robot nos brinda varias ventajas. La primera deellas es que contamos con un significativo poder de cmputo. Con una PC, esposible programar lgicas mucho ms avanzadas e introducir, dentro de nuestrosprogramas, los algoritmos de Inteligencia Artificial necesarios para que el robot secomporte de manera ms inteligente. Adems, la gran capacidad de memoria y alma-cenamientode las PC nos permite, incluso, que el robot sea capaz de generar suspropios mapas y de modificarlos segn cambien las condiciones de su entorno.Otra ventaja de usar la PC consiste en la posibilidad de programar el robot enun lenguaje conocido y fcil de aprender, como C#, un lenguaje ms sencillo deprogramar que el lenguaje ensamblador del PIC. Esto permite que miles deprogramadores puedan acceder a la programacin de robots de manera muyINFORMACIN SOBRE LOS PICSi deseamos conocer ms sobre el PIC, podemos visitar el siguiente sitio web:www.piclist.com/techref/piclist/index.htm, que contiene enlaces a personas que estn intere-sadasen el desarrollo de proyectos con este microcontrolador. La ventaja que nos otorga estemicrocontrolador es la independencia del robot respecto de la computadora personal.14 www.redusers.com 5. La PC para controlar robotssimple y rpida. Contamos adems con buenas herramientas de depuracin parael programa. Con la PC, tambin es posible llevar a cabo simulaciones, o probarla aplicacin, aunque el hardware todava no se encuentre listo. El aumento en elpoder de cmputo, y la disminucin de peso de las laptops nos permitira incor-porarel robot dentro de una computadora. De esta manera, ahora es posible quecualquier persona con conocimientos de programacin pueda acceder al desa-rrolloy a la creacin de sus propios robots.El puerto USBLos proyectos que desarrollaremos en este libro sern controlados por medio delpuerto USB. Dicho puerto nos facilitar mucho la utilizacin de los robots. Lassiglas USB, en ingls, significan Universal Serial Bus, y en su traduccin alespaol, Bus Universal en serie. Este bus fue diseado para reemplazar a lospuertos seriales y paralelos. Una de las razones para esto fue el incremento en lavelocidad de transferencia de datos. Tambin, se busc tener una interfaz estndarque permitiera conectar diferentes dispositivos. Con el puerto USB, podemosconectar cmaras, impresoras, escneres, controladores para juegos, etctera. Elpuerto USB, adems, nos permite llevar a cabo hot swapping, esto significa quepodemos cambiar el dispositivo conectado sin tener que apagar la computadora.El uso de dispositivos plug nplay es otra caracterstica que provee USB y que noestaba disponible en los puertos anteriores.El origen y las versiones del USBAl momento de la publicacin de este libro, existen tres especificaciones de USB,cada una de ellas superior a la anterior. La primera especificacin conocida comoUSB 1.0 fue el resultado del trabajo en conjunto de muchas empresas. stas seunieron para crear no slo las especificaciones, sino tambin el hardware y el soft-warenecesarios para que otros proveedores pudieran implementarlos en susproductos. Las empresas que colaboraron en este proyecto son: Intel, Microsoft,IBM, Compaq, Digital y Northern Telecom. Para enero de 1996, las especifica-DESCARGA DE C# EXPRESS EDITIONwww.redusers.com 15Podemos trabajar con la versin profesional de Visual Studio, producido por Microsoft o, si lodeseamos, es posible descargar la versin Express de C#. Esta versin es gratuita y contienetodas las herramientas que necesitamos para este libro. Para descargarla, debemos dirigirnosa www.microsoft.com/express/vcsharp/. 6. 1. LA INTERFAZ DEL PROYECTOciones ya estaban listas. Esta primera versin permite dos velocidades de transfe-rencia.La velocidad baja o Low-Speed es de 1.5 Mbits/s, y la velocidad alta,tambin conocida como Full-Speed, permite 12 Mbits/s.Figura 1. En esta figura, podemos observar el logotipo utilizado en la versin 1.0 del USB.Durante el ao 2000, en el mes de abril, aparece la especificacin 2.0 del USB. Estaespecificacin permite transferencias de informacin a velocidades mucho mayoresque la primera versin. Con dicha especificacin, se puede transferir hasta unmximo de 480 Mbit/s. Esta velocidad se conoce como Hi-Speed o velocidad alta.Figura 2. Aqu observamos el logotipo utilizado para indicarque el dispositivo puede utilizar el Hi-Speed en un puerto USB. SOBRE LA ESPECIFICACIN USB 1.1En septiembre de 1998, se liber una nueva especificacin conocida como USB 1.1. sta se realizpara poder corregir una serie de problemas que tena la versin 1.0. Muchas de las primeras compu-tadorascon puertos USB usaban esta especificacin, al igual que los dispositivos de esa poca.16 www.redusers.com 7. La PC para controlar robotsLa ms reciente versin de USB existente es la 3.0. sta fue lanzada el 17 denoviembre de 2008, y se espera que, en un futuro prximo, empiecen a aparecerdispositivos que utilicen esta nueva adaptacin. La caracterstica ms importantede esta versin es el incremento en la velocidad. Esta versin alcanza una increblevelocidad de transferencia de hasta 5.0 Gbit/s, y se la conoce como SuperSpeedo supervelocidad, en idioma castellano.Figura 3. En esta figura, podemos observar el logotipopara la versin 3 del USB con SuperSpeed.Funcionamiento del USBAhora que ya conocemos las bases, podemos empezar a aprender cmo funcionael USB. Para ello, debemos imaginarnos una topologa de estrella. En sta,encontramos un elemento conocido como host. Adems, los dispositivos queutilizaremos tienen que ser conectados por medio de los hubs. Entre los hubsexistentes, encontraremos uno especial denominado root hub o hub raz, quese ubica, justamente, en el interior del host.Conectamos el dispositivo al hub que puede ser, por ejemplo, una cmara digitalo un controlador de juegos. Cada dispositivo puede tener uno o varios elementos MODIFICACIONES EN USB 2.0A partir de octubre de 2000 y hasta septiembre de 2007, han surgido correcciones, pero, enespecial, adiciones al USB 2.0. Cada uno de estos cambios se lleva a cabo por medio de lasECN o Engineering Change Notices. Por lo general, estos cambios ayudan a tener versionestodava ms estables y con una mayor eficiencia.www.redusers.com 17 8. 1. LA INTERFAZ DEL PROYECTOlgicos, conocidos como funciones del dispositivo. Gracias a este tipo deelementos un mismo dispositivo realice varias funciones. Por ejemplo, en undispositivo multifuncional, encontramos una funcin de dispositivo para esca-neary una funcin de dispositivo para imprimir.HubFigura 4. Esta figura muestra una topologa de estrella tpica.El nodo central se conoce como hub.La comunicacin entre el host y el dispositivo se lleva a cabo por medio de lo quese conoce como pipe, que es, simplemente, un canal lgico. En el dispositivo, lospipes llegan hasta otra entidad lgica que se conoce como endpoint o punto final.Los endpoints son importantes porque pueden transferir datos, pero slo puedenhacerlo en una nica direccin, conocida como unidireccional. La direccin puedeser hacia el dispositivo o desde el dispositivo. Cada uno de ellos puede tener unmximo de 32 pipes, 16 de los pipes son desde el host y 16 de ellos hacia el dispo-sitivo.El encargado de controlar la transferencia de informacin es el host, pero,cuando se usa SuperSpeed, los dispositivos pueden pedir servicios al host tambin. LA TOPOLOGA DE ESTRELLAEsta topologa tiene un ncleo central conocido como hub, que se encarga de transferir losmensajes. Todos los dems dispositivos se conectan a l. Si pensamos el hub visualmente,veremos que se encuentra en el centro y los dems dispositivos se distribuyen de forma radial.Ent