Você está na página 1de 11

Parte IV Robtica de hardware

Captulo 13: El uso de MRDS con Robtica de hardware Captulo 14: control remoto de un robot mvil Captulo 15: El uso de un brazo robtico Captulo 16: robots autnomos Captulo 17: Nuevos servicios de escritura de hardware

Usando MRDS con Robtica Hardware Bienvenido a la parte de hardware del libro. Hasta ahora, en este libro que ha aprendido mucho sobre Microsoft Robotics Developer Studio (MRD), sobre todo utilizando el simulador, una caracterstica clave de los cuales es que usted puede utilizar el mismo cdigo para controlar un robot simulado en un robot real. Afortunadamente, este significa que usted ya sabe cmo manejar un robot real, siempre que la baja - la comunicacin a escala se toma el cuidado de para usted. En este captulo se ofrece una visin general de los captulos de hardware, as como algunos conceptos clave en robtica; no introduce el nuevo cdigo. Los captulos siguientes se explica cmo usar una variedad de reales robots con MRDS. Varios tipos diferentes de robots estn cubiertos, incluyendo los robots con ruedas y un brazo robtico. Si usted tiene experiencia con robots, es posible que desee descremada rpidamente a travs de este material. Por el contrario, si no han utilizado robots antes, entonces usted debe encontrar el captulo til para adquirir una comprensin bsica del campo. Parte del material de las partes anteriores del libro es volver a discutirse en esta parte del libro. Esto es la intencin de hacer las partes individuales independientes entre s, aunque la repeticin es tambin bueno cuando usted est aprendiendo el nuevo material. Debido a que este libro est diseado para introducir a los programadores de Microsoft Robotics Developer Studio, debe verla como un suplemento a la documentacin en lnea, no un reemplazo. En particular, usted debe visitar regularmente la pgina de inicio MRDS y comprobar el foro de discusin: http://forums.microsoft.com/MSDN/default.aspx?ForumGroupID=383 y SiteID = 1. No se supone que sabe mucho acerca de la robtica. Hay un sinnmero de libros de texto en el tema de la robtica y todo, incluso los programas de grado con ttulos como "Ingeniera Robtica" y "Mecatrnica. "Si usted quiere aprender ms acerca de robtica, debe dedicar algn tiempo a su librera favorita en lnea o en su librera local. Adems, la mayora de fabricantes de robots tienen foros de discusin activa, y puedes aprender mucho de las experiencias de otras personas. Usted Tambin puede ser capaz de encontrar un club de robtica en su rea local. Los robots industriales no estn cubiertos en este libro, y no te ensea cmo construir un robot de partida a partir de piezas de repuesto. Definitivamente no es conveniente para el diseo y programacin de robots que puedan ser utilizados para el manejo de materiales peligrosos o que operan en entornos mdicos, especialmente si la aplicacin es la vida crtico. Debe tener en cuenta los robots en este libro para ser juguetes educativos o de herramientas de investigacin.

Consideraciones de seguridad Antes de empezar Antes de empezar, tenga en cuenta que el trabajo con robots reales pueden ser peligrosos. Hay muchos diferentes cuestiones de seguridad, pero los ms importantes son los siguientes: y El entorno de trabajo: Este es el ms importante. Asegrese de que est bien iluminada y bien ventilados, y que hay un montn de espacio libre alrededor del robot antes de empezar a funcionamiento. Mantenga lejos de las mascotas y los nios: Como dicen en las pelculas, nunca debe trabajar con nios o animales. Los nios y las mascotas puede ser fascinado por su robot y quiere jugar con ella. Los robots a menudo tienen bordes afilados y salientes y puede hacer cosas inesperadas si interferir con ellos, sobre todo si a rasgar sus sensores de descuento!

Mantenga una distancia segura: Los robots se mueven a veces sin previo aviso. Incluso los adultos pueden tropezar con l y caen si un robot de unidades frente a ellos en el momento equivocado. Esto podra resultar en graves lesiones tanto a la persona humana y el robot. Del mismo modo, los brazos robticos pueden mover muy rpido y fcilmente asoman a los ojos si no son cuidadosos. Por lo tanto, asegrese de que usted da a sus robots montn de espacio para moverse. Utilizar gafas de seguridad: Si usted est construyendo un robot, que tendr una gran cantidad de pequeos componentes. Aparte del riesgo evidente para los nios por la ingestin de ellos, estos pequeos objetos pueden volar repentinamente si una herramienta se desliza. Por lo tanto, deben usar proteccin para los ojos cada vez que se monten (o desmonte) de un robot. Soldadura presenta un riesgo similar de soldadura fundida volando por el aire si se mueve la punta del soldador, as como la posibilidad de quemaduras por la plancha caliente.

Lea las instrucciones del fabricante: Lea siempre las instrucciones del fabricante s de un robot y siga todas las advertencias de seguridad. Nunca trate de empujarlo ms all de sus lmites o utilizarlo para fines de que no era la intencin.

Esto debera ser suficiente de la fatalidad y pesimismo. Si acta con sensatez, debera tener una agradable y experiencia educativa. Incluso podra ser entretenido.

Tipos de robots
Hay varios tipos diferentes de robots, pero no hay universalmente reconocidos categoras. Los robots pueden se clasifican segn su finalidad, habilidades, y la estructura bsica. Normalmente Se dividen en categoras tales como mviles o fijas, autonmica o atados, con ruedas o patas, industriales frente a nacional, y as sucesivamente. Una distincin comn es si el robot es mvil o no. Los brazos robticos son generalmente fijos, aunque que se puede conectar a un robot mvil. La mayora de los robots aficin, sin embargo, tienen ruedas y pueden correr y asustar a su gato.

MRDS se ocupa fundamentalmente de robots mviles - especficamente, los robots con dos ruedas de accionamiento independiente, que se conoce como diferencial robots de unidad. Directivo un robot unidad diferencial es muy simple porque slo hay dos ruedas. Un vehculo con orugas o bandas de rodadura es mucho ms difcil conducir porque se basa en la pistas de deslizamiento con el fin de turno. Un coche (con cuatro ruedas) tiene lo que se llama direccin Ackermann y se basa al voltear slo las ruedas delanteras, mientras que las ruedas traseras slo tienes que seguir a lo largo de atrs. Un automvil, por lo tanto, no puede a su vez sobre el terreno, mientras que una unidad diferencial puede. Un tipo de robot que se est haciendo popular es el robot humanoide. Estos robots estn diseados para buscar y funcionan de manera similar a un ser humano. En otras palabras, tienen dos piernas (y por lo general los brazos y una cabeza). Sin embargo, son un subconjunto de la categora general de robots con patas, que son los perros (con cuatro patas) o incluso araa - robots como (con 6 u 8 patas). Una de las principales reas de desarrollo de robots con patas es caminar aires. Como seres humanos, damos por sentado que podemos caminar en dos pies, pero la enseanza de un robot a hacer lo mismo y no caer es bastante difcil. Aunque el Kondo KHR - un robot humanoide es una de las plataformas soportadas en V1.5 MRDS, es slo uno de los muchos diferentes tipos de robots humanoides en el mercado. La capacidad de caminar de estos robots diferentes varan dramticamente. Muchos de ellos no pueden levantarse cuando se caen. Brazos robticos articulados uso servomotores para mover las articulaciones y en algunos aspectos son similares a patas los robots. N brazos robticos son compatibles con V1.5 MRDS, pero el captulo 15 se muestra cmo utilizar un Lynx 6 brazo robtico utilizando los servicios de modificacin de Lynxmotion. Ni los robots humanoides robots ni con la direccin de Ackermann se tratan en este libro. El CoroBot de simulacin en el captulo 6 tiene cuatro ruedas, pero utiliza lo que se llama direccin deslizante.

Atado de Robots
Muchos robots tienen que estar directamente conectado a un PC a travs de una correa o un cable umbilical. Estos robots son controlada por el PC y tienen poca o ninguna informacin de a bordo. No es necesario descargar un programa a la robot en este caso, porque todo el control se realiza en el PC. Tutorial de Robtica 6 se refiere a estos como conectada a distancia robots. Tambin puede escuchar la teleoperacin plazo en relacin a los robots que utilizan una correa de sujecin. Esto significa que un ser humano opera el robot de forma remota. Usando la interfaz de MRDS o la unidad - por - alambre de la muestra en Robtica Tutorial 4 son ejemplos de teleoperacin. En este caso, el servicio en el PC no funciona ninguno de los lgica de control - es todo a la izquierda a la de un operador humano. Tenga en cuenta que la correa no tiene que haber una conexin fsica entre el PC y el robot. Una gama variedad de soluciones inalmbricas estn disponibles, tales como Bluetooth, WiFi y ZigBee. Tambin podra ser infrarrojo, similar a un control remoto del televisor o incluso un mdem de radio Tenga en cuenta que la mayora de los robots con el apoyo de MRDS son controlados remotamente por un PC que ejecute MRDS los servicios. Cuando la gente primero se encuentran MRDS, quieren saber cmo utilizarlo para escribir programas para descarga en un robot. Esta es la forma en que el software de LEGO Mindstorms obras. Por ejemplo, puede utilizar el software Mindstorms para escribir cdigo en un entorno grfico similar al VPL y, a continuacin descargar el cdigo en el ladrillo LEGO NXT para su ejecucin. El BASIC Stamp Editor es el equivalente software para el Boe - Motor de bsqueda, aunque hay que escribir programas en PBASIC. A riesgo de ser repetitivo, MRDS no funciona de esta manera. No se puede generar cdigo para la carga en un Procesador ARM, un BASIC Stamp, o un microcontrolador PIC. En su lugar, usted (o el vendedor) que escribir un programa de supervisin simple de ejecutar en el interior del robot. (El trmino "monitor" refleja el hecho de que no es un centro completo sistema operativo, sino un pequeo plazo - entorno de tiempo con una funcionalidad muy bsica) Entonces usted. escribir un servicio bajo MRDS que se comunica con este programa de seguimiento para enviar comandos a la actuadores y recibir informacin de los sensores. Figura 13 - 1 muestra esquemticamente este acuerdo. Tenga en cuenta que el programa monitor tiene acceso directo a los sensores y actuadores, pero el servicio MRDS no. Se debe enviar y recibir informacin a travs del enlace de Comunicaciones, que puede convertirse en un cuello de botella. Por otra parte, si el enlace de Comunicaciones no es fiable, o la mantiene la conexin de ltima hora, a continuacin, el robot podra llegar a ser incontrolable.

El Monitor de programa
-En Robotics Tutorial 6, el programa de supervisin que se conoce como una comunicacin a distancia a bordo Interfaz. Microsoft ha escrito los programas de seguimiento para usted (si es necesario) para los robots de apoyo, o los robots s ya tiene el firmware adecuado a bordo: -LEGO NXT: La primera vez que hacen una conexin con MRDS, se descarga automticamente y ejecuta el programa de seguimiento necesarias. Captulo 14 tiene ejemplos para el NXT. -Boe - Motor de bsqueda: Tienes que cargar el programa de monitorizacin (suministrado por paralaje) en el BASIC Stamp usted mismo. El Boe - Motor de bsqueda se utiliza en los ejemplos en el captulo 14 y tambin discuten a continuacin. -El lince 6 brazo robtico: Esto incluye una tabla pequea llamada el CDC - 32, que puede controlar hasta 32 servos. El firmware ya est cargado en el microcontrolador a bordo cuando usted lo consigue.Captulo 15 cubre el brazo L6. -Stinger: Los robots Stinger tienen un tablero de serializador que controla todas las E / S y acepta comandos a travs de un puerto serie. Este robot se discute en el captulo 16. -Hemisson: Estos robots ya tienen firmware en los que se puede utilizar para controlar el robot, como demostrado en el captulo 17. A los efectos de ilustracin, un programa de escucha se desarrolla en el Captulo 17 para el integrador robot. El programa monitor debe estar escrito de manera que es muy sensible a las peticiones del servicio MRDS. Si el monitor tiene un montn de "ocupado espera" como una forma de introducir retrasos de tiempo (en otras palabras, se ejecuta en bucles sin hacer nada), entonces no podra ser capaz de mantenerse al da con las peticiones de MRDS.

Boe - Motor de bsqueda Monitor


Como ejemplo, considere el Boe - Programa de seguimiento de Bot. El BASIC Stamp utilizados en el Boe - Motor de bsqueda es sola - rosca. Para generar las seales adecuadas para los servomotores que mueven las ruedas, tiene que pulsos de la salida de la duracin y repita someterlas a un tipo que est cerca de 50 Hz. El protocolo que se ha definido para el

Boe - Motor de bsqueda, por lo tanto, requiere de la PC para enviar un comando de forma continua hasta que se reconocido por el robot, porque el robot es en su mayora ocupados enviando pulsos a los motores. (Un completo explicacin de la Boe - Motor de bsqueda protocolo est disponible en la documentacin en el sitio web de Parallax). El cdigo siguiente es el bucle principal en el BOE - Programa de seguimiento de Bot, que se llama BoeBotControlFormsrs.bs2 y est incluido en el software disponible en Parallax. El cdigo es escrito en PBASIC, la lengua nativa del BASIC Stamp, pero es bastante fcil de entender. Si tiene instalado el software de Parallax, a continuacin, puede hacer doble - clic en el nombre de archivo en el Explorador de Windows y el BASIC Stamp Editor, que se muestra en la Figura 13-2, en caso de puesta en marcha, porque hay una asociacin de archivos con el tipo de archivo BS2.

Figure 13-2

Usted debe desplazarse a travs de los cdigos para encontrar la rutina principal, se muestra aqu: '-----[ principal de rutina ]---------------------------------------- ---------------

Los controles bucle principal si el adaptador Bluetooth se ha desconectado, y si lo que salta a Restablecer. A continuacin, emite pulsos de tiempo en las dos clavijas de control del motor 13 y 12 con el comando PULSOUT. La tleft variables y tright son las duraciones de los pulsos y se puede cambiar mediante el envo de una Set_Servo_Speed comandos al robot. En medio de pulsos, el cdigo lee desde el puerto serie con un tiempo de espera con el comando SERIN. Si este comando a veces, salta de nuevo a la etiqueta en Reanudar en la parte superior del bucle. Sin embargo, si tiene xito, el programa de pulsos de los motores, una vez ms y luego contina.

Tenga en cuenta que el Boe - Motor de bsqueda utiliza servomotores continua rotacin. El ancho de la duracin de pulso de la gama de 650 (1.3ms), que est lleno - las agujas del reloj de velocidad, a 850 (1.7ms), que est lleno - Velocidad de la izquierda. Un valor de 750 (1.5ms) resulta en el servo para permanecer inmvil. (Si no se reciben los impulsos, el servo tambin se detiene.)

Este requisito de enviar continuamente impulsos es una limitacin significativa de la BASIC Stamp. Por el contrario, muchos de los microcontroladores PIC en el mercado puede generar PWM (modulacin por ancho de pulso) seales de forma automtica - todo lo que tienes que hacer es cargar los registros correspondientes a los parmetros de tiempo.

La siguiente seccin de cdigo se comprueba por un comando de reinicio de la PC. Si Esto no es encontrado, entonces determina cul de los diversos cdigos de comando se recibi desde el PC mediante el LOOKDOWN declaracin, y luego realiza un calculado GOSUB para llamar a la subrutina correspondiente. Los nombres de los subrutinas son auto - explicativas:

La ltima parte del bucle lee los sensores digitales, si es que estn habilitadas, y luego se construye un paquete de respuesta para ser enviados a la PC. Este es un reconocimiento e incluye un nmero de secuencia (msgIndex) para que el PC puede comprobar que no hay paquetes han sufrido una cada. Por ltimo, se coloca de nuevo a la cima de nuevo, que inmediatamente los pulsos de los motores para mantenerlos funcionando.

Idealmente, el programa de supervisin debe utilizar las interrupciones, pero esto depende en gran medida el hardware arquitectura. microcontroladores PIC y procesadores ms sofisticados como el brazo puede manejar interrupciones. Cuando ocurre una interrupcin como consecuencia de una seal externa, el procesador guarda el contexto (Valores de registro y estado de procesador) y salta a un controlador de interrupcin. El controlador hace lo que sea necesario y, a continuacin restaura el contexto del procesador para que el programa de ejecucin con anterioridad puede reanudar. Esto permite una forma primitiva de multi - tarea que deban aplicarse. El bucle principal no es necesario que la encuesta continua para los personajes que

llegan en el puerto serie, por ejemplo, debido a que el controlador de interrupcin puede ensamblar los paquetes de modo que slo tiene que ser procesada una vez un paquete completo se recibe.

Hay dos formas fundamentalmente diferentes de manejar los datos del sensor: O bien el control peridico puede enviar actualizaciones o el servicio MRDS puede sondear el robot siempre que las necesidades de datos. Hay argumentos tanto favor y en contra cada una de estas opciones, por lo que se convierte en la decisin del desarrollador 's.

En los ltimos Boe - Motor de bsqueda de cdigo, se puede ver que los valores de los sensores digitales, que en este caso son los bigotes y los sensores de infrarrojos, puede ser enviado de vuelta a la PC como parte de cada reconocimiento de comandos. De esta manera, el PC es por lo general al da con la ltima informacin del sensor.

Claramente, no es razonable para el servicio MRDS se ejecutan en el equipo host a esperar para obtener valores de los sensores de forma instantnea. Hay algo de retardo de transmisin, mientras que una solicitud se enva al robot, y a continuacin, el monitor tiene que leer el valor del sensor (s) y enviar los datos. Dependiendo del tipo de conexin y la velocidad de la CPU en el robot, esto puede tomar algunos milisegundos o dcimas de segundos. Esto significa que hay un lmite en el nmero de veces por segundo que puede esperar obtener actualizaciones de los datos del sensor. datos obsoletos es un problema comn en robtica

Boe - Motor de bsqueda comportamiento evasivo


Otra cuestin a tener en cuenta es que el control de los movimientos de un robot con precisin a partir de una distancia PC conectado es difcil debido a los retrasos que participan en la transmisin de comandos y obtener informacin sobre lo que el robot est haciendo. Por lo tanto, el Boe - Motor de bsqueda tiene algunos pre - comportamientos programados que estn diseados especficamente para salir del paso si encuentra un obstculo, por ejemplo, un bigote es presionado. El cdigo siguiente se implementa estas conductas evasivas utilizando bucles tiempo para mover ciertas distancias. El comando de pausa hace que el programa espere a que un nmero especificado de milisegundos. Aviso que el retraso es de 20 ms, lo que significa que los lazos de ejecutar a 50 Hz. El primer bucle hace que el Boe - Motor de bsqueda de se mueven hacia atrs. El resto de los estados CASO manejar las direcciones a su vez diferentes:

Uno de los lados - los efectos de estos bucles es que el Boe - Motor de bsqueda no ha ledo desde el puerto serie, mientras que que se estn ejecutando. Esto significa que es efectivamente "sordo" por la duracin de un comportamiento. Esto es obviamente no es deseable, pero al mismo tiempo que lo hace mucho ms fcil sencillo programa errante comportamientos. El Enlace de comunicaciones El Enlace de Comunicaciones entre el PC (servicio MRDS) y el robot (programa monitor) es una importante factor en el rendimiento global del sistema. Esto puede ser una conexin en serie en el caso de un atado robot con un cable umbilical, o una conexin inalmbrica. Los tipos ms comunes de la tecnologa inalmbrica (radio) conexiones incluyen IEEE 802.11b 802.11g (tambin llamado Wi-Fi), Bluetooth o ZigBee. Incluso con una conexin inalmbrica, el enfoque habitual es simular una conexin en serie (puerto COM).

Você também pode gostar