You are on page 1of 89

Middlesex University Research Repositorio

Un repositorio de acceso abierto de investigación

de la Universidad de Middlesex

http://eprints.mdx.ac.uk

Kalyani, Ganesh Kumar (2017) A Robot del Sistema Operativo (ROS) robot humanoide basado
controlar. tesis de maestría, Universidad de Middlesex.

versión final aceptada (con el formato del autor)

Esta versión está disponible en: http://eprints.mdx.ac.uk/21390/

Derechos de autor:

Middlesex University Research Repositorio hace que la investigación de la Universidad disponible en formato electrónico. Derechos de autor y

derechos morales a este trabajo son retenidos por el autor y / o de otros propietarios de los derechos a no ser que se indique lo contrario. El trabajo

se proporciona en el entendido de que cualquier uso con fines comerciales está estrictamente prohibido. Una copia puede ser descargado para uso

personal, no comercial, de investigación o de estudios sin autorización previa y sin cargo.

Obras, entre tesis y proyectos de investigación, no pueden ser reproducidos en cualquier formato o medio, o extensas citas tomadas de
ellos, ni de su contenido cambia de ninguna manera, sin antes obtener el permiso por escrito del titular (s) de derechos de autor. Ellos no
pueden ser vendidos o explotados comercialmente en cualquier formato o medio sin el permiso previo y por escrito del titular (s) de
derechos de autor. detalles bibliográficos completos se debe dar cuando se hace referencia a, o citando de información bibliográfica,
incluyendo el nombre del autor, el título de la obra, detalles de la publicación en su caso (lugar, editor, fecha), paginación, y para trabajos
de grado de la institución que concede, el tipo de título obtenido, y la fecha de la adjudicación.

Si usted cree que cualquier material contenido en el repositorio infringe las leyes de copyright, por favor póngase en contacto con el Equipo de Repositorio de la Universidad de

Middlesex a través de la siguiente dirección de correo electrónico:

eprints@mdx.ac.uk

El artículo será retirado del repositorio mientras que cualquier reclamación está siendo investigado. Ver también los derechos de autor

repositorio: política de reutilización: http://eprints.mdx.ac.uk/policies.html#copy


Un sistema de robot de funcionamiento (ROS) Basado robot humanoide

Controlar

Ganesh Kumar Kalyani

Una tesis presentada a la Universidad de Middlesex, en cumplimiento de la

requisitos de grado de

MAESTRO DE LA CIENCIA

Departamento de Ingeniería de Diseño y Matemáticas


Universidad de Middlesex, Londres

Supervisores Dr.
Vaibhav Gandhi Dr. Yang
Zhijun

de noviembre de el año 2016


Las tablas de contenido

Tabla de Contenidos ................................................................................................ .II

Lista de figuras ................................................................................................. .IV ...

Lista de tablas .............................................................................................. ...... ... V

Reconocimiento ............................................................................................. ... VI

Resumen ......................................................................................................... ..VII

Lista de siglas y abreviaturas ..................................................................... ..VIII

1. Introducción .................................................. .................................................. .............................. 1

1.1 Introducción ................................................. .................................................. ......................... 1

1.2 Fundamento ................................................. .................................................. .............................. 6

1.3 Apunta y Objetivo ............................................... .................................................. .................. 7

1.4 Esquema de la Tesis ............................................. .................................................. ................ 8

2. Revisión de la literatura .................................................. .................................................. .................. 10

2.1 Conceptos básicos de la robótica ............................................... .................................................. ................. 10

2.1.1 Desarrollo historico ................................................ ................................................ 10

2.1.2 Componentes estructurales ................................................ ................................................. 11

2.2 Control de las funciones del robot .............................................. .................................................. ... 13

2.2.1 Control remoto de un robot .............................................. .......................................... 13

2.2.2 Semi-autónoma de control .............................................. ............................................. 13

2.2.3 Control autónomo ................................................ .................................................. ... 14

2.3 Toma de Decisiones y mecanismo de aplicación ............................................ ......................... 14

2.3.1 Componentes electrónicos ................................................ ................................................. 14

2.3.2 Básicos de programación ................................................ ................................................ 18

2.3.3 Lenguaje Python ................................................ .................................................. ......... 19

2.3.4 La toma de decisiones y la técnica de hacer valer los derechos ............................................ ....................... 20

2.3.5 Arquitectura de control ................................................ .................................................. ... 21

2.4 Sistema operativo del robot (ROS) ............................................ ................................................. 22

2.4.1 Los diferentes sistemas operativos ............................................... .......................................... 22

2.4.2 Sistema operativo del robot ............................................... ................................................ 23

2.5 Requisitos de Ruta Biped Los robots humanoides ............................................ ................. 27

2.5.1 Características genéricas ................................................ .................................................. ......... 27

II
2.5.2 Funciones esenciales ................................................ .................................................. ...... 30

2.6 Conclusión ................................................. .................................................. .......................... 40

3. La integración de Robots experimentales .................................................. ......................................... 42

3.1 Multifuncional Avanzado cuadrúpedo BEAGLEBONE Negro Robot ......................................... 42

3.1.1 Los avances en robótica Investigación .............................................. ................................ 42

3.2 Avanzada Biped Bioloid robot humanoide ............................................. ............................... 43

3.2.1 BEAGLEBONE Negro como 'Decidir y hacer cumplir Componente' ......................................... 43

3.2.2 Características de Bioloid premium robot humanoide (BPHR) ......................................... ....... 44

3.2.3 Controlador de BPHR ............................................... .................................................. ....... 46

3.3 Sustitución de la Decidir y componentes Enforcing ............................................ ................. 47

4. Procedimiento y resultados experimentales ............................................ ......................................... 49

4.1 Estrategia de adaptación ................................................ .................................................. ............... 49

4.2 Montaje del robot humanoide revisada ............................................. ................................ 50

4.3 Dinámica del robot humanoide Ruta Algoritmo ............................................. ..................... 51

4.3.1 Caminar en evolución estable robot humanoide dinámico ............................................ ......... 52

4.3.2 Análisis de estabilidad ................................................ .................................................. .......... 54

4.4 Diseño y conexiones de componentes para el patrón de la marcha deseada ............................ 55

4.4.1 La configuración de la acreditación ............................................... .................................................. .... 55

4.4.2 Dynamixel AX-12A servo actuadores ............................................ ................................... 55

4.4.3 conector USB2dynamixel ................................................ ............................................ 56

4.4.4 Sensor infrarojo ................................................ .................................................. ............ 56

4.4.5 Acelerómetro ................................................. .................................................. ............ 56

4.4.6 Wi-Fi Adaptador .......................................... .................................................. .................... 56

4,5 procedimiento a pie del robot ............................................ ............................................... 56

4.6 estrategia Walking del robot ............................................ .................................................. . 58

5. Conclusiones y direcciones futuras .................................................. ........................................ 61

Referencias ......................................................................................................................... . 64

APÉNDICE A ......................................................................................................................... . 72

III
LISTA DE FIGURAS

Figura 1: componentes estructurales de un robot humanoide. .................................................. ................... 11

Figura 2: Heavy Robot arduo Empleo ........................................... .................................................. ....... dieciséis

Figura 3: Tipos de Controladores de motor ........................................... .................................................. ....... 17

Figura 4: Dos PCs con otros controladores .......................................... .................................................. . 18

Figura 5: BEAGLEBONE Negro montado en un vehículo de cuatro patas ...................................... ................... 43

Figura 6: Partes esquemáticos de robot humanoide .......................................... ........................................... 48

Figura 7: Componente de BEAGLEBONE Negro Robot ........................................... ....................................... 51

Figura 8: Diagrama de flujo que indica el control de movimiento del robot ......................................... ....................... 52

Figura 9: vista sagital para patrón de marcha .......................................... ................................................ 53


Figura 10: Esquema de aterrizaje de control de posición .......................................... ..................................... 53

Figura 11: Figura que muestra los motores BBB, AX-12A, conector USB2Dynamixel, Wi-Fi Adaptador, Sensor IR y el sensor Gyro +

acelerómetro utilizado en el experimento ................. ................................. 55

Figura 12: posiciones reales de motor que muestra (a) vista posterior (b) Vista anterior ................................. 57

Figura 13: conexiones físicas de la USB2Dynamixel con los ....................................... BBB .......... 57
Figura 14: Partes esquemáticos de robot humanoide que muestran las posiciones del motor para motores de guiñada, cabeceo y balanceo.

.................................................. .................................................. .............................................. 58

Figura 15: El gráfico rqt de las conexiones durante el pie del robot. .................................... 60

IV
LISTA DE MESAS

Tabla 1: Bioloid Robot lista de componentes de sustitución existente y .................................................. 47

V
Reconocimiento

El período intensivo de mi M.Sc. el trabajo del proyecto ha sido uno de los mejores encuentros que me encontré con

en mi vida. Me ha dado tiempo suficiente para inculcar el deseo investigación en mí. necesito

mantener un equilibrio perfecto, dando pasos pequeños y cautelosos que se mueven constantemente hacia la

objetivo. Es la consecuencia de la implicación sincera extendido por varias personas, que

me permitió completar con éxito esta tesis. Humildemente expreso mi aprecio verdadero

a cada uno de los individuos que participaron en mi viaje de Maestros por Research. yo

Esperamos de todo corazón que esta tesis será útil para cualquier persona interesada en el trabajo de investigación robótica.

Deseo orar y luego quisiera recordar a Dios Todopoderoso nunca para este gran acto de bondad

y por mostrarme la luz para cumplir con mi responsabilidad en la redacción de esta tesis a la

satisfacción y aprobación de la Universidad de Middlesex y en particular el personal de Diseño

Departamento de Ingeniería y Matemáticas.

Mis honestos y sinceros agradecimiento a mis supervisores Dr. Vaibhav Gandhi y el Dr. Zhijun

Yang. Me gustaría recordar sus útiles sugerencias, comentarios magistrales y valiosa

orientación que han sido el corazón y el alma de este trabajo se inicie hasta el final. Su

comprensión, capacidad de adaptación, genuino cuidado y preocupación, y el estímulo se muestra a mí

durante el proceso de tesis me permitió tomar el cuidado de la vida y al mismo tiempo igualmente

adquirir mi Maestría. Han sido fácilmente cooperando conmigo incluso después de trabajar

horas y los días incluso. Nunca me había desalentado cuando sabían que necesitaba

gestionar prioridades. Aprecio su sentido del juicio entre los intereses personales y de investigación

persecuciones. Además, deseo agradecer al Sr. Nishant Singh, investigador PhD, Universidad de Middlesex

por su apoyo y ayuda en todo momento.

Un agradecimiento sincero se expresan también a la Universidad de Middlesex por haberme permitido llevar a cabo

este estudio de investigación.

VI
Resumen

Esta tesis presenta la adaptación de las técnicas necesarias para mejorar la capacidad de un comercialmente

disponible robot, a saber, Robotis Bioloid de Premium Humanoid Robot (BPHR). Hueso Beagle

Negro (BBB), la toma de decisiones y la implementación (inteligencia proporcionando) componente, con

capacidades multifuncionales se utilizan en esta investigación. Sistema operativo del robot (ROS) y su

bibliotecas, así como secuencias de comandos de Python y sus bibliotecas se han desarrollado e incorporado en

la acreditación. Esta inteligencia acreditación fortificada proporcionar componente se trasplanta a continuación, en el

estructura del robot humanoide Robotis Bioloid, después de la eliminación de decisiones original de la última

elaboración y aplicación de componente (controlador). Por lo tanto, este estudio revitaliza el Bioloid

robot humanoide mediante su conversión en un robot humanoide con múltiples características que se pueden

heredado usando ROS. Esta es la primera de su tipo en el que el enfoque de ROS se utiliza como

marco de desarrollo en conjunto con el controlador principal la acreditación y el software

impregnado con bibliotecas de Python se utiliza para integrar funciones robóticas. Un total de ROS

cálculo se desarrolló y una programación de aplicaciones de alto nivel Interface (API) utilizable por

programas informáticos que utilizan los servicios de ROS también se desarrolla. En este revisado robot de dos piernas-humanoide,

conector USB2Dynamixel se utiliza para operar los actuadores Dynamixel AX-12A a través de la

interfaz Wi-Fi de la acreditación fortificada. Un sensor acelerómetro admite el equilibrio del robot,

y actualizaciones de datos a la acreditación periódicamente. An (IR) del sensor de infrarrojos se utiliza para detectar obstáculos.

Este modelo dinámico se utiliza para accionar los motores montados en la pierna robot lo que resulta

en un período de swing-postura de las piernas para un movimiento de avance estable del robot. El maximo

velocidad de la marcha del robot es de 0,5 pies / segundo, más allá de este límite el robot se vuelve inestable.

El ángulo en el que el robot se inclina se rige por la realimentación del sensor de acelerómetro,

que es de 20 grados. Si el robot se inclina más allá de un grado específico, entonces sería volver a su

posición de parada y detener el movimiento adicional. Cuando el robot se mueve hacia adelante, los sensores de infrarrojos

obstáculos sentido en el frente del robot. Si se detecta un obstáculo dentro de los 35 cm, entonces el robot

deja de moverse más. Implementación de ROS en la parte superior de la BBB (mediante la sustitución de CM530

controlador con el BBB) y el uso de controles de retroalimentación desde el acelerómetro y el sensor de IR para

controlar el movimiento robótico de dos patas son las novedades de este trabajo.

VII
LISTA DE siglas y abreviaturas

C.A. Corriente alterna

ADC Conversor analógico a digital

API interfaz de programación de aplicaciones

acreditación BEAGLEBONE Negro

BPHR Bioloid premium robot humanoide

I2C Inter-Integrated Circuit

PUEDE Control Area Network

CCD Charge Coupled Device

Diente Centro de gravedad

CdM Centro de masa

Policía Centro de Presión

CPG Generador de Patrones central

UPC Unidad Central de procesamiento

corriente continua Corriente continua

DCS Sistema de control distribuido

DMS Distancia sensor de medición

DOF Grados de libertad

PIE Fuerza / Torque

GND Suelo

GPS Sistema de Posicionamiento Global

GPU Unidad de procesamiento gráfico

GRF Fuerza de reacción del suelo

GUI Interfaz gráfica de usuario

HAL Capa de abstracción de hardware

IDE Interfaz de desarrollo integrado

IO De entrada y salida

VIII
IR Infrarrojo

KB Byte kilo

LAN Red de área local

LED Diodo emisor de luz

OS Sistema operativo

ordenador personal Computadora personal

PD Derivada proporcional

PWM Modulación de Ancho de Pulso

RAM Memoria de acceso aleatorio

RC Control remoto

ROS Robotic Operating System

RRT Explorando rápidamente árbol aleatoria

RTX Extensión Tiempo real

Rx Recibe conexión

SCA Reloj de serie

SDA Los datos en serie

SPI Interfaz Periférica Serial

TTL lógica transistor-transistor

televisión Televisión

Tx Conexión transmitir

UART Receptor / Transmisor Asíncrono Universal

USB Universal Serial Bus

Wifi Wireless Fidelity

ZMP Momento cero Point

IX
1. Introducción

1.1 Introducción

El término Robot significa un automatizado, mecanizado y un el substituto de instrumentado

dispositivo para llevar a cabo el trabajo que se lleva a cabo generalmente por los seres humanos. “Robótica”

implica la rama de la ciencia y la innovación que se ocupa de la planificación,

el desarrollo, la utilización y el empleo de robots y también de ordenador

marco para su funcionamiento, gestión y evaluación de la información [1].

sistema del cuerpo humano incluye los huesos como el sistema de soporte firme, cartílagos esa línea

las articulaciones, músculos y ligamentos que activan cada parte del cuerpo. Es difícil

suplantar este marco músculo-esquelético con los materiales inertes. Por lo tanto,

máquinas podrían desarrollar algunos movimientos humanos equivalentes única [2].

Generalmente, un robot tendrá tres tipos de componentes, a saber, estructural

componentes, componentes de detección y control y de funcionamiento (decidir y

inteligencia proporcionando) componentes [3]. Los componentes estructurales son: i)

manipulador o Rover: cuerpo principal de la robot (enlaces, articulaciones, etc.); ii) efector final:

por lo general el último componente conectado al manipulador; (Por ejemplo, de proa a mano con

cualquier dispositivo necesario como pinza); y iii) los actuadores: los músculos del manipulador

(Motor servo, motor paso a paso, neumáticas y cilindros hidráulicos, etc., que se mueve

el efector final de la forma deseada). Al sentir y decidir y hacer cumplir

componentes son las otras dos partes importantes de robots.

Hay un desarrollo notable en la robótica y los campos científicos relacionados debido a

el acceso a los sensores modernos, potentes instalaciones de computación, una amplia gama de

aparatos mecánicos y electrónicos activos, en profundidad y detalle información sobre

un sistema robótico sana, y diferentes tipos de equipos mecánicos de etc.

[4]. Este desarrollo de la investigación en robots, especialmente en la universidad, está siendo

emprendido con gran celo. En línea con este desarrollo, el presente trabajo

se centra principalmente en la ciencia robótica y su desarrollo.

1
Las tareas repetitivas y tediosas a menudo con la precisión y la velocidad de control fueron

el trabajo de los robots en particular en fábricas en la fase preliminar de la vida del robot.

simbiosis humano-robot se expandió rápidamente y tan humano-robot interacción y

movimiento autónomo atrajo investigación [5]. Un robot humanoide está construido para

visiblemente parecerse a una persona. Algunos de estos robots pueden propensos a tener rasgos faciales

por ejemplo, los ojos y la boca para parecerse a un ser humano. El estudio de diseño de una

robot humanoide es o bien aplicación basada o investigación basada. Los robots humanoides

son adecuados para llevar a cabo muchas tareas humanas, tales como ayudar a la gente y

llevar a cabo tareas simples y también trabajando en la línea de producción de la fábrica o peligrosos

ambientes [6].

El movimiento de un robot humanoide debe ser como la de un humano, a saber,

exhibiendo la marcha bípeda y la locomoción patas. Este es el mayor y más

diferencia esencial entre un robot humanoide y otros robots. El caminante

robot humanoide requiere un acuerdo de integración de sistemas entre sus decidir

y hacer cumplir es decir, la inteligencia proporcionando, de detección, y componentes estructurales.

Preferencia es ya sea para un centralizado o un control distribuido. Cuando la configuración es

centralizada, el ordenador principal tiene acceso a toda la información y por lo tanto toda la

los cálculos deben ser realizados por el ordenador principal solamente y también no es fácil

aumentar el número de conexiones es decir, más allá de que la capacidad de los ordenadores [6]. En

el sistema distribuido, es fácilmente posible proporcionar muchas conexiones y

conectar varios equipos útiles, como cámaras, LAN inalámbrica, área de control

red provisión etc. Sin embargo, ordenador o micro controlador y el motor

También se requiere que los controladores, así como disposiciones para la conexión de todos ellos. En

Tiempo real caso del Sistema Operativo (RTOS) no se utiliza como controlador principal, pero

Sólo un sistema operativo de propósito general (GPO), entonces el control en tiempo real

programa o la extensión en tiempo real (RTX - que es un programa fácilmente disponibles

en el mercado) también es necesario. RTX puede acceder directamente al hardware. para el movimiento

control, dependiendo de los grados de libertad (DOF), el motor máximo conjunta

2
Los controladores son posibles de ser resueltos. Para aproximadamente 40 DOF, 15 conjunta

controladores de motor se proporcionan fácilmente. Aquí, el controlador principal recibe sensor

datos de forma rápida y las envía a todos los controladores de motor conjuntas [7].

En general, el robot humanoide caminando se configura con un sistema autónomo

controlador y un controlador de movimiento. El controlador autónomo se encarga de la

procesamiento autónomo y el procesamiento de imágenes. El procesador autónomo

controla y dirige el hardware, mientras que las herramientas de procesamiento de imágenes como Open CV 1

(Intel C / C ++ bibliotecas para la visión por ordenador) o mostrar directa 2 ( microsoft Multi

Herramienta de Desarrollo de Medios) se utilizan para la recepción de imágenes de la cámara

conectado al USB, mientras que el programa previsto en las herramientas puede llevar a cabo

procesamiento de imágenes [8, 9]. El controlador de movimiento puede incluir un programa de caminar

y un programa de acción especial escrito en cualquier lenguaje de programación adecuado, tal

como C, C ++, etc. El programa de firmware puede ser incluido en el controlador de movimiento,

lo que si es necesario, se pueden modificar para adaptarse al entorno utilizando una ventana nota-

libro PC u otros dispositivos adecuados.

Para decidir si un controlador de PC, Microcontroladores y Ajuste del motor es mejor

o solamente un microcontrolador y controlador de motor es lo suficientemente los siguientes puntos

requieren una consideración:

1. Potente procesador se utiliza para proporcionar la inteligencia artificial y en general

el control y el microprocesador simple como de E / S administradores están siendo utilizados en

caminando robots humanoides.

2. Preferiblemente, la configuración de tres capas se adopta:

yo. Capa superior - PC potente como el cerebro

1 OpenCV (Open Source Computer Vision) es una biblioteca de funciones de programación orientados principalmente a la visión por ordenador en tiempo real. La biblioteca es

multiplataforma y libre para su uso bajo la licencia BSD de código abierto.


2 el Microsoft DirectShow interfaz de programación de aplicaciones (API) es una arquitectura de streaming de medios para Microsoft Windows. Utilizando DirectShow, sus

aplicaciones pueden realizar video de alta calidad y reproducción de audio o captura. los
DirectShow cabeceras, bibliotecas, SDK (Software Development Kit) de herramientas, y las muestras están disponibles en el SDK de Windows.

3
ii. Capa media - múltiples administradores de sub-sistema para control de movimiento,

gestión de sensores, procesamiento de sensor etc.

iii. Capa inferior - Número de microprocesadores económicas para la gestión


tareas misceláneas

Ethernet o USB será adecuado para la capa superior y RS232 3, I2C 4, etc., se utilizan

para la comunicación de nivel inferior [10]

3. Microprocesador está conectado a un USB del ordenador portátil y lo hará fácilmente

enviar y recibir comandos a través del puerto serie y todos los demás cerebrales superiores

código de programación podría ejecutarse en el ordenador. El cuaderno podría emitir

ordena mediante la adopción de decisiones y el otro procesador podría controlar el

motores para ejecutar las tareas necesarias [10].

4. Las decisiones sobre el uso de procesador se toma en consideración los siguientes:

yo. Poder de procesamiento: Si el control de los motores sólo es necesario (es decir, todos

el procesamiento se realiza en el PC externo) un controlador de controlador de motor es

suficiente. Para el procesamiento básico de a bordo, como la transformación de

coordenadas, bucles de comandos simples y cinemática inversa, un simple

microprocesador es suficiente. Si la automatización del robot y la implementación

se desean características avanzadas, BEAGLEBONE Negro, Frambuesa Pi o Intel

programa átomo es suficiente.

3 En las comunicaciones de difusión, RS-232 es un estándar para la transmisión de la correspondencia de serie de datos. Se caracteriza formalmente las señales de interfaz
entre un equipo terminal de datos (DTE), por ejemplo, una estación de trabajo, y un equipo de comunicación de datos (DCE), por ejemplo, un módem.

4 I2C es un protocolo serie para la interfaz de dos hilos para conectar dispositivos de baja velocidad como microcontroladores, EEPROMs, A / D y D / A, interfaces I / O y otros

periféricos similares en sistemas embebidos. Cada dispositivo I2C esclavo necesita una dirección.

4
ii. Programación - Básico 5, Pitón 6 o C / C ++ 7 Se requiere idioma para

BEAGLEBONE Negro. Sin embargo, siempre que sea necesario, las bibliotecas se incluyen en

adición.

iii. Compatibilidad - El procesador elegido debe apoyar (tanto en número como

tipo) los motores utilizados [11].

Los siguientes puntos pueden generalmente ser tomados en consideración en la evaluación de la

exigencia de software necesario para el diseño del robot:

1. ROS (como marco de desarrollo) depende del controlador de la máquina que

integra funciones robóticas [12].

2. API Python permite ya sea para utilizar todo el API de C ++ desde una máquina remota

o módulos de Python deben ser creados que se pueden ejecutar de forma remota o en los robots

[13].

3. Embedded software, que se ejecuta en la madre a bordo situado en la cabecera de la

robot permite comportamiento autónomo. software de escritorio que se ejecuta en una

ordenador situado fuera del robot, permite la creación de nuevos comportamientos y

el control remoto del robot [13].

Las consideraciones teóricas anteriores fueron cuidadosamente considerados para la evolución de una

ROS basado robot humanoide para el control autónomo, mediante la combinación de dos

robots disponibles comercialmente. La compatibilidad e idoneidad tanto de la

reemplazados y sustitución de componentes decisivos y hacer cumplir se llevaron a cabo.

A partir de entonces, se observó que la sustitución de la BEAGLEBONE Negro (BBB)

decidir y hacer cumplir componente multifuncional (después de fortalecerlo con

5 BASIC (un acrónimo de Todos los fines de código de instrucción simbólica para principiantes) es una familia de propósito general, los lenguajes de programación de alto nivel cuya

filosofía de diseño hace hincapié en la facilidad de uso.


6 Python es un alto nivel, de propósito general, interpretado, lenguaje de programación dinámico ampliamente utilizado. Su filosofía de diseño hace hincapié en la legibilidad del

código, y su sintaxis permite a los programadores para expresar conceptos en menos líneas de código que sería posible en lenguajes como C ++ o Java.

7 C ++ es un lenguaje de programación de alto nivel que añade características orientadas a objetos a su predecesor C. C ++ es uno de los lenguaje de programación más

popular para aplicaciones gráficas, tales como los que funcionan en entornos Windows y Macintosh.

5
la capacidad de marcha dinámico) en lugar de o en lugar de la CM530 y decidir

hacer cumplir componente de Bioloid de Premium Humanoid Robot (BPHR) (con

la capacidad de caminar solos) era viable y llevado a cabo en este estudio. Por lo tanto, la

adaptar la estrategia de implantación del componente inteligente que proporciona fortificada de

La acreditación en el cuerpo estructural (sin su componente original, proporcionando inteligente)

de BPHR se ha implementado con éxito en este proyecto de investigación.

1.2 Razón fundamental

Con el avance de los robots y robótica como una disciplina de estudio de los seres humanos tienen

han interesado en la construcción de robots de apariencia humana (tanto en la estructura y función).

Este deseo se hizo realidad, en cierta medida, con la llegada de los robots humanoides. Ahí

eran más las expectativas de que el robot humanoide debería ayudar y cuidar de

los seres humanos en sus hogares, hospitales y plantas de producción con trabajos suaves y sencillas.

Estos avances y movimientos alternativos han superado de largo [5]. Hoy en día,

los robots se utilizan para tareas arduas en las minas, los mares, bajo el agua, el espacio y

ambientes peligrosos como las plantas nucleares etc. [5]. Aparte de dos patas

movimiento dinámico, incluso el movimiento flexible de cuatro patas para negociar tuberías, pasos,

suelos resbaladizos etc., son de una gran demanda [5]. Aunque hay una gran demanda

el mercado todavía no está produciendo este tipo de humanoides difíciles adecuado para peligrosos

trabajo. Las plataformas robóticas tradicionales y establecidas parecen carentes de eficiencia

para satisfacer tales desafíos y demandas. Por lo tanto, es necesario entrelazar la

mera caminar dinámico y capacidades de trabajo simples de robots humanoides como

Bioloid, KHR [7], Honda ASMIO [14], la serie WABOT de Waseda

Universidad [15], y H6 y H7 de la Universidad de Tokio [16], con multifuncional

capacidades de acreditación (y similares) decidir y hacer cumplir (inteligente que proporciona)

componente. Este tipo de innovación con el hardware de computación autónoma ha allanado

camino para la flexibilidad muy necesaria en el uso de hardware y software

la integración para el mejoramiento de la robótica. Por lo tanto, este trabajo de investigación es la tesis

comprometido a eliminar el decidir y hacer cumplir (inteligencia proporcionando)

6
componentes de BPHR y implante en su cuerpo, en cambio, el avanzado

inteligencia multifuncional que proporciona el componente de acreditación después de hacer necesaria

cambios y que incluye además el software ROS en Script Python con bibliotecas.

Este tipo de investigación es una necesidad imperativa de la hora y se convertiría

prometedora, ya que sería convenía y beneficioso y, por tanto, capaz de establecer el

la línea de base para los estudios de robótica alternos.

1.3 Finalidad y objetivo

robots humanoides Biped y cuadrúpedo o hexápodo patas mecánica pero algu-

lo más dispositivos inteligentes, reconocen y se conocen como robots, son en gran

uso. Es el objetivo declarado y el objeto de este estudio de investigación para fusionarlos

juntos y desarrollar un robot humanoide bípedo tener dinámica similar a la humana

caminar estable con la capacidad de la trayectoria de investigación y, potencialmente, la negociación

obstáculos, etc.

Un robot humanoide ya hecha de una empresa capaz de caminar y realizar

algunas funciones simples llevadas a cabo por los seres humanos se mezcla con otro

dispositivo robótico altamente inteligente con capacidades multifuncionales que resulta en una

robot humanoide capaz de realizar todas las funciones de los dos robots anteriores.

Este estudio de investigación es la primera de su tipo ya que reúne los conceptos de ROS

y reemplaza el controlador CM530 con BBB. El estilo de caminar adoptada aquí es

un intento de proporcionar humanoide con la capacidad de caminar bípeda sin

cayendo.

BBB controlador se monta en lugar de la incorporada en el controlador de CM530 dentro de la

BPHR. servos Dynamixel individuales se accede a través de la acreditación a través

USB2Dynamixel conector. Para hacer frente a los retos de mantener el robot en posición vertical

y mantener su equilibrio, un sensor giroscópico / acelerómetro se utiliza con un sensor de IR

para evitar los obstáculos al caminar. ROS se implementa en la acreditación y

la andadura del BPHR se va a realizar mediante la realización de programación Python

7
lengua con la acreditación. Los sensores se utilizan para la evitación de obstáculos y para

proporcionando estabilidad al caminar. El Wi-Fi en la BHE está habilitada de manera que la

robot humanoide puede ser controlado a distancia.

El software de pitón es modificado para funcionar mediante el uso de ROS solo. Varios modos de

caminando como lenta, media y rápida. No hay ningún plan de hacer cualquier físico

modificaciones en el robot. El robot humanoide es caminar con el código Python

haciendo uso de sensores de BBB y evitar la colisión también.

1.4 Esquema de la Tesis

La tesis se divide en cinco capítulos.

Capítulo 1: En este capítulo se describe la justificación, los objetivos, metas y líneas generales de la tesis.

Capitulo 2: En este capítulo se detallan los avances tecnológicos existentes robótica

y presenta en detalle los conocimientos básicos y consideraciones teóricas

involucrado. En este capítulo también formula el esquema para la capacidad de adaptación de la instalación

la toma de decisiones y la implementación de los componentes de la acreditación en la estructura de

bípedo caminar BPHR. Además, este capítulo también se resumen las otras consideraciones

relativa a robots tales como sus tipos, partes y modos de controles. Los mecánicos

involucrados en la definición y aplicación de las distintas decisiones que se toman tienen

También han abordado en este capítulo. La acción de caminar realizado por el robot

incluyendo los componentes electrónicos necesarios, de manera eficiente de la programación, algoritmos

para las distintas acciones del robot y los códigos de desarrollo para control de robots se ponen

expone en detalle. Los requisitos deseables que incluyen características que se esperan y

También se describen las funciones esenciales.

Capítulo 3: En este capítulo se describe en detalle la acreditación toma de decisiones y

implementación (inteligencia proporcionando) componente, que también da detalles sobre su

versátil multi-función de la capacidad. En este capítulo también da detalles sobre Robotis

hacer BPHR, en particular de sus características estructurales, tales como manipuladores, End-

8
efectoras, y actuadores y también algunos detalles acerca de la capacidad limitada de la

controlador integrado CM530.

Capítulo 4: En este capítulo se proporciona en detalle los aspectos importantes de la investigación

estudio llevado a cabo y ha logrado en esta tesis, particularmente faculta a la

Bioloid, GP robot bípedo humanoide con capacidades multifuncionales de la acreditación de

capacidad de decisión. La acreditación infunde capacidad dinámica y estable para caminar

en el BPHR, que fue previamente deficiente con el controlador de CM530.

Capítulo 5: Este capítulo concluye con la tesis de las contribuciones básicas indicadas.

El trabajo futuro también se discute.

9
2. Revisión de la literatura

En este capítulo se detalla la estructura del robot humanoide genérico, y su autonomía

de trabajo y el control en los últimos años. Después de llevar a cabo un estudio de la literatura, una

algoritmo adecuado es para ser seleccionado para caminar y la estabilidad del robot, y es ser

implementado en el BEAGLEBONE Negro. Esto es para ser logrado con el seleccionado

trayectoria de control caminar siendo guiado por el software, desarrollado utilizando Robot

Sistema Operativo (ROS) y el lenguaje Python y sus bibliotecas.

2.1 Conceptos básicos de la robótica

2.1.1 Desarrollo historico

De la palabra rusa 'paboTa (Rabota)' significa trabajo o el trabajo, la

autor checoslovaco Karel Capek llamado desarrolló la palabra 'Robots'. los

robots se hace referencia a las máquinas programables utilizados para realizar

de manipulación o de locomoción funciones bajo control automático. La mayoría de los robots son

inspirado en la naturaleza añadiendo al campo de los bio-propulsado. Esto ha llevado a la

desarrollo de otra nueva rama de la robótica robótica llamados blandos. Actualmente,

robots que funcionan y actúan como los seres humanos también tienen la afición de existir junto

con gente como se esperaba y en simbiosis [2]. Esto se conoce como la robótica emocional

y es la actual atracción de la industria y la investigación.

Los robots han recorrido un largo camino, desde el modelo de madera de una paloma activada por

un chorro de vapor al niño del cerebro del Hitachi “HIVIP Mk.1” robot inteligente; cual es

capaz de comprender y realizar tareas de dibujos de líneas, reconociendo

orientación de las partes a través de la visión por ordenador, y la planificación de la secuencia automática

de los movimientos necesarios para la tarea especificada (1970) [5]. Ha habido una

fenomenal crecimiento en la tecnología robótica. Avanzados robots y cuadrúpedos

Los robots humanos simbiótica se están desarrollando rápidamente desde 2000, creando aún

el miedo y el pánico en las personas que culminan en de Asimov “Tres Leyes de la Robótica” de

los robots que no hay peligro para los seres humanos [17].

10
actividades de investigación robótica, se beneficiaron de la mejora rápida de las tecnologías,

se han incrementado dramáticamente en muchos campos nuevos de vanguardia, tales como formales

métodos, la visión artificial, procesamiento de imágenes y de inteligencia artificial [17].

2.1.2 Componentes estructurales

Los tres componentes estructurales importantes de un robot humanoide a saber,

manipulador, efector final, y el actuador se muestran en la Figura 1.

componentes sensores son los sensores que obtienen y miden la información sobre

la condición del robot y condición externa para tratar eficazmente con el real

mundo. La tercera toma de decisiones cumplir componentes son: i) el procesador del

cerebro (calcula el movimiento y la velocidad de las articulaciones del robot); ii) Controladores-cerebelo

del cerebro (controles y correlaciona el movimiento de los actuadores); y iii) Software-

Sistema operativo (la plataforma de programación que proporciona para el movimiento, la tarea, y

gestión de las funciones, como las herramientas y bibliotecas para el transporte y recogida de

información de rutina) [3]. Además, es necesaria la conexión de energía para el robot para activar

sus actuadores para funcionar eficazmente. La energía se obtiene principalmente de las baterías o

montado en la pared enchufes eléctricos. Alternativamente, pueden utilizar ya sea a presión

fluido hidráulico utilizando bombas o aire usando aire comprimido neumáticamente

Figura 1: componentes estructurales de un robot humanoide.

Fuente [7 y 18]

11
compresor y tanques de aire comprimido. las interfaces de circuitos eléctricos cableados todos

actuadores, y los poderes de cada motor eléctrico y solenoides directamente. Adicionalmente,

el circuito opera el equipo hidráulico mediante el control de válvulas eléctricas

que decidir la circulación del líquido a presión a través de la máquina. por

mover una pierna hidráulico, por ejemplo, el controlador del robot abriría la válvula

líquido impulsor de la bomba de líquido a un cuerpo de cilindro se unió con esa pierna. Esta

líquido a presión que mover el pistón hacia delante que se extiende de este modo la pierna en

la dirección delantera. Robots utilizan cilindros que pueden empuje en ambas direcciones para

mover sus actuadores en dos direcciones opuestas, es decir, delante y marcha atrás. PC del robot

dirige todo lo anexa al circuito. El PC funciona todos los elementos esenciales

motores y válvulas a través de microcontroladores y controladores de motor para mover el

robot adicional [19].

Un microcontrolador puede funcionar controladores de motor en una variedad de maneras: serial,

I2C, PWM y R / C. Independientemente del modo de comunicación, la lógica de controlador

y el microcontrolador tiene que utilizar referencia de tierra similar y un similares alto

lógica de nivel (que se puede lograr mediante la utilización de la misma pin V + para operar

y controlar ambos aparatos). Una palanca de cambios de nivel lógico podría ser necesaria si los aparatos

no comparta niveles lógicos similares (3,3 V y 5 V por ejemplo). Los sensores pueden ser

interfaz con microcontroladores en la misma forma que los controladores de motor. sensores

se puede llegar a través de los siguientes tipos de comunicación: digital, analógica,

De serie o I2C. La mayoría de las tecnologías de la comunicación (por ejemplo ZigBee 8, Bluetooth 9) adoptar

comunicación en serie, por lo que la misma Rx (conexión de recepción), Tx (Transmit

Connection), GND (tierra) y V + (oferta) enlaces sirve al propósito [20].

8 ZigBee es una tecnología inalámbrica desarrollado como un estándar global abierto para hacer frente a las necesidades únicas de bajo costo, las redes inalámbricas M2M

de bajo consumo. El estándar ZigBee opera en la especificación de radio física IEEE 802.15.4 y opera en bandas sin licencia, incluyendo 2,4 GHz, 900 MHz y 868 MHz.

9 Bluetooth es una tecnología inalámbrica estándar para el intercambio de datos a través de distancias cortas (utilizando ondas de radio UHF corta longitud de onda en la banda

ISM de 2,4 a 2,485 GHz) de dispositivos fijos y móviles, y la construcción de redes de área personal (PAN).

12
2.2 Control de las funciones del robot

2.2.1 Control remoto de un robot

Con mando a distancia torpedos se desarrolló a finales del siglo 19 pueden probablemente

ser los primeros vehículos operados remotamente o robots. El método más fácil de

remota operar un vehículo es con un controlador de mano físicamente vinculados con

el vehículo a través de cables. El controlador puede tener un interruptor de palanca, pomo, palanca,

joystick o botón para controlar el vehículo sin utilizar electrónica compleja.

La fuente de potencia del motor y se puede vincular con operado con un interruptor para

controlar las rotaciones hacia adelante o hacia atrás.

A veces, un cable puede ser una mejor opción ya que no hay limitación de tiempo de operación

ya que el poder se haga uso de la red, no hay pérdida de las señales, y es simple

sin electrónica complicados, etc. Sin embargo, sus desventajas son: la distancia

puede ser limitada, arrastrando el cable puede disminuir la velocidad del robot, cable puede llegar

dañado etc. control por ordenador con conexión de cable puede ser proporcionado por la instalación de una

microcontrolador en el vehículo y el uso de un cable para conectar con un ordenador de

puerto I / O (USB). comportamientos más complejos se pueden programar, lo que puede dar

inteligencia a bordo, etc, pero el costo puede aumentar debido a la electrónica de agregados.

conexión Ethernet también se podría hacer con conexión por cable y por lo tanto el control

podría ser a través de Internet, pero puede requerir una programación compleja. Radio inalámbrico

frecuencias, las conexiones Bluetooth y Wi-Fi también se pueden utilizar para el control remoto

fines de control sin necesidad de utilizar cables.

2.2.2 Control de semi-autónoma

A menudo, un control conjunto, en el que algunos aspectos son controlados por un ser humano y otros

son hechas por el robot en sí mismo, puede ser la mejor opción. Por ejemplo, en un avanzado

robot sumergible, la movilidad fundamental de que el robot es dirigido por un ser humano

mientras que un procesador de a bordo lee y responde a las corrientes de agua por debajo de la

agua a fin de mantener estable robot. El ser humano da instrucciones adicionales si

13
cualquier después de recibir una retroalimentación de vídeo desde la cámara de a bordo. Temperatura de agua,

presión, y otros datos relevantes también se realiza un seguimiento por los sensores de a bordo. En caso

la comunicación se pierde, un programa autónomo puede traer el robot a la

superficie. El nivel de autonomía tiene que ser decidido en la prioridad. Del mismo modo, los seres humanos

pueden interactuar mejor e intervenir en el caso de una silla de ruedas semi-autónoma.

2.2.3 control autónomo

comerciales y de fábrica de robots autónomos se dedican actualmente ampliamente

llevar a cabo resulta más económico, o con la exactitud más notable y

la fiabilidad de las personas. Para que tengan más autonomía, debe ser microcontrolador

se utiliza con todo su potencial y la programación se tiene que hacer para el

microcontrolador para reaccionar a la entrada de los sensores del robot. Pre-programación con

no hay datos de corrección de la, de datos de entrada restringido circundante de sensores, y

Por último complicada sensor de corrección de la información son los diferentes tipos de auto-

que regulan el control. La incorporación de una variedad de sensores y código que

permite que el robot para decidir sin ninguna otra entrada externa, la mejor jugada para ser

hecho en cualquier circunstancia indicado, lo que indica cierto control autónomo.

2.3 Toma de decisiones y mecanismo de implementación

2.3.1 Componentes electrónicos

pieza principal del dispositivo electrónico que es esencialmente necesario para todos los cálculos,

toma de decisiones y la comunicación es un microcontrolador. este microcontrolador

puede verse en productos de uso cotidiano como televisores, lavadoras, teléfonos,

relojes, prácticamente en todos los electrodomésticos y aparatos eléctricos. Es un

dispositivo informático capaz de ejecutar programas, por supuesto, que no impliquen

algoritmos complejos. Actúa como el cerebro o el centro del robot. Por lo tanto es menos

capaz que un PC y más envían una pequeña cantidad de energía eléctrica

a través de sus patas. Por lo que no tendrá la capacidad de trabajar con enorme carga específica.

Disposición de conjunto de pasadores (comunicaciones de impulsos eléctricos) son ahí que puede

14
ser convertido ALTA (1 / ON) o bajo (0 / OFF) a través de las directrices de programación. Ellos

leer adicionalmente impulsos eléctricos a partir de sensores o diferentes aparatos.

Microcontroladores se pueden utilizar para controlar otros aparatos eléctricos, por ejemplo,

actuadores cuando unidos con los controladores de motor. Ellos, además, incorporan una

controlador de tensión en sus hojas de mejora.

impulsos de tensión continua (pulsos que pueden tener un alcance completo de las cualidades más

de sólo dos estados mucho caracterizados como, 0 y 1 en pulsos digitales) pueden

igualmente ser medido por la mayoría de los presentes microcontroladores día con la ayuda de

Convertidor analógico a digital (ADC). Con la ayuda de un ADC

microcontrolador puede adjudicar una cantidad numérica a una serie de pulsos continuos

que no es ni alta ni baja. Si se observa que un dispositivo se conecte

proporciona un valor que es proporcional a algún factor, por ejemplo, temperatura, fuerza,

posición, etc., entonces el microcontrolador debe estar provisto de un pin analógico.

Aunque microcontroladores parecen estar limitados en su capacidad que puede realizar

muchas funciones complejas si sus patas se fijan altas y bajas de una manera lógica.

Sin embargo, debido a sus inherentes limitaciones de recursos y la velocidad no es posible

para un microcontrolador para manejar algoritmos muy complejos como la visión avanzada

procesamiento y muy complejos programas.

El microcontrolador es similar a una CPU de ordenador (microprocesador) y su

tablero de mejora es similar a la placa madre del PC. En los robots avanzados con

la computación compleja y visión algoritmo etc. tanto un PC para el control general y una

microcontrolador se utilizan para acceder a los motores.

Ligero y medio, los robots pueden necesitar solamente un microcontrolador mientras que los más pesados ​pueden

requerirá un PC, además, como se muestra en la Figura 2. Un microcontrolador podría no tener

la capacidad para proporcionar energía a los motores eléctricos desde su salida sólo puede proporcionar

una escasa cantidad de energía eléctrica. Para un robot más grande, más potencia será

necesario para ejecutar sus motores.

15
Los microcontroladores pueden lograr más que el típico digital (usual) de E / S,

(Cálculo esencial, la aritmética fundamental y la toma de decisiones) si especial

de hardware, por ejemplo, un controlador de motor está integrado en ellos. La mayoría comunicación popular

protocolos como UART 10, SPI 11 y el FC puede ser soportado fácilmente por muchos

microcontroladores. Este es profundamente valioso para correspondiente con diferente

aparatos como ordenadores, la mejora de los sensores, o diferentes microcontroladores. A pesar de

la posibilidad de que cabe la posibilidad de trabajar físicamente comandos ordenados,

equipos inherente cometido que gestiona los datos es particularmente

preferible. Tal curso de acción permite que el microcontrolador para centrarse en

diferentes misiones y da lugar a programas más limpios.

Figura 2: Heavy Robot arduo Jobs

Fuente [17]

10 Un receptor / transmisor asíncrono universal (UART), es una herramienta de equipos PC que traduce la información entre las estructuras paralelo y en serie.
UARTs están ordinariamente utilizados como una parte del conjunto con principio de correspondencia, por ejemplo, TIA (una vez en el pasado EIA) RS-232, RS-422
o RS-485
11 Serial Peripheral Interface (SPI) es un bus de interfaz utilizada para enviar datos entre los microcontroladores y pequeños periféricos, tales como registros de desplazamiento,

sensores y tarjetas SD. Utiliza líneas de reloj y de datos separadas, junto con una línea de selección para seleccionar el dispositivo para hablar.

dieciséis
Le sigue en importancia es el controlador de motor que es un dispositivo electrónico, una

no cubierto placa de circuito sin ser de paredes en una zona que va sobre como una

medio de la carretera entre gadget de un microcontrolador, una fuente de alimentación o la batería,

y los motores. Puesto que hay varios tipos de motores como en la Figura 3 como cepillado

DC (con o sin engranajes) motores, motores de corriente continua sin escobillas, actuadores lineales, Servo

motores, motores paso a paso unipolar o bipolar etc. existen tantas variedades de

controladores de motor también. La velocidad y la dirección de estos motores son decididos por

sólo el microcontrolador, pero los motores no pueden ser impulsados ​por los microcontroladores

debido a su poder restringido. El controlador de motor proporciona una potencia necesario en

el voltaje requerido y conduce estos motores. Ambos controladores trabajan juntos

para hacer que los motores se mueven de manera apropiada. La comunicación regular y fácil

técnica tal como UART o PWM se utiliza por el microcontrolador para dar

la información al controlador del motor en cuanto a cómo alimentar los motores.

tamaño físico del controlador del motor depende del tamaño de los motores. Un controlador de motor

más pequeño que la punta de un dedo tiene suficiente capacidad de corriente para conducir un mini sumo

robot (robots intentar empujar el uno al otro de una pequeña arena) mientras que una gran

controlador de pesaje varios kilogramos (incluyendo disipador de calor etc.) puede ser necesario

para un vehículo aéreo no tripulado. El tamaño depende tanto de la cantidad de energía

el controlador tiene que proporcionar.

La selección de los controladores de motor depende de la corriente consumida por el motor

que se pretende controlar. El vigente un motor atrae está asociada a la

Figura 3: Tipos de Controladores de Motor

Fuente [21]

17
apriete que produce es decir, más corriente será dibujado para producir mayor par por una

gran motor y vice-versa.

Los motores están conectados a los controladores de motor que a su vez están conectados a la

microcontroladores. Todos los sensores también están conectados al microcontrolador. Debajo

ciertas condiciones un ordenador (véase la figura 2) o dos ordenadores (véase la figura 4) están

también añadido en adición a los controladores de microcontrolador y de motor. Las baterías son

conectado a los controladores de motor, microcontroladores y los ordenadores principales.

2.3.2 básicos de programación

La programación de un microcontrolador es fácil hoy en día debido a la corriente integrada

Entornos de desarrollo (IDE) que utilizan lenguajes más recientes, completamente

bibliotecas resaltados que cubren inmediatamente todas las actividades regulares y raros y unos pocos

instantáneamente códigos utilizables para principiantes con un uso sencillo. Diferentes lenguajes de alto nivel

como C, C ++, C #, de procesamiento (una variedad de C ++), Java, Python, .NET, BASIC etc.

se pueden programar en un microprocesador sin mucha dificultad.

Entornos de desarrollo están igualmente resultando ser mucho menos complejo que los fabricantes hacen gráfica

entornos de programación. Agrupaciones que requieren unas pocas líneas de código son

reducido a una imagen que se puede asociar con diferentes otras imágenes para formar

Figura 4: Dos PCs con otros controladores

Fuente [7]

18
código. Si el usuario necesita para controlar un motor de un robot, el usuario debe montar el

imagen que representa el control de un motor y también debe especificar la dirección

y la velocidad a la que el motor debe funcionar. Placas de desarrollo de microcontroladores

romper cada uno de los pasadores utilizados por el microcontrolador y los hace sencillo

para ser visitada para el prototipado rápido circuito. alimentación USB y ventajosa

interfaces de programación que se conectan de manera apropiada cualquier PC avanzado son también

proporcionado por la junta. Estas placas de desarrollo son los únicos que las placas de circuitos

proporcionar chips microcontroladores con todo el hardware de apoyo necesaria, por

ejemplo, el controlador de voltaje.

2.3.3 Lenguaje Python

2.3.3.1 Selección de lenguaje de programación

La programación es el último paso y sin que el robot no puede funcionar en absoluto.

El desarrollo del software para una computadora es una tarea que no puede ser tratado en

esta tesis. Sin embargo, la programación del microcontrolador puede ser discutido.

Los tipos generales de lenguas y sus características principales se indican a continuación:

• Básico - Esta es una de las primeras lenguas que todavía se están utilizando en

algunos microcontroladores como micro básico, BasicX, etc., en Parallax

robótica educativa

• C / C ++ - Este es uno de los lenguajes conocidos que da alto nivel

funcionalidad, pero al mismo tiempo, mantener un buen control de bajo nivel.

• Java - Es un lenguaje más reciente que C y posee un montón de seguridad

características, pero no el control de bajo nivel. Es el más adecuado para microcontroladores

producido por Parallax Company.

• NET / C # -Este lenguaje propietario de Microsoft se utiliza para desarrollarse como

Netduino, FEZ Rhino, etc.

• Procesamiento - Es una variante de C ++ que tiene un montón de simplificaciones para hacer

la programación más fácil en Arduino.

19
• Python - es una más popular, fácil de aprender y que permite colocar programas

en conjunto muy rápido y eficiente de secuencias de comandos del lenguaje. Por lo tanto el Python

idioma se elige en este trabajo de investigación.

2.3.3.2 Consideraciones en la escritura de código

• Sólo limitado, es decir, la longitud manejable de código esencialmente necesario para cada uno

producto debe ser desarrollado junto con la construcción de una biblioteca y la creación de una

sistema de archivo para facilitar el rastreo de código requerido.

• Todo, (es decir, cada línea) dentro de un código se debe documentar el uso

comentarios sobre todo en robótica que también en las etapas iniciales. Mas tarde

después de adquirir suficiente conocimiento y experiencia será suficiente para añadir

comentarios a las secciones generales de código.

• Las diferentes versiones del código desarrollado deben preservarse sin

sobrescribir el mismo archivo para que cuando un código desarrollado más adelante no lo hace

compilar debería ser posible volver a un ser desarrollado previamente

en lugar de tratar de rectificar la tarde. Este trabajo puede resultar corregir

a ser tedioso y consume mucho tiempo.

• Mantener siempre el robot en una posición segura para que no se destruirá o

se destruyen en los ensayos por descuido o erróneos.

• El poder debe ser apagado cuando se dio cuenta de que el código no se está llevando a cabo

correctamente las funciones de espera.

• La conversión de una parte del código en subrutinas hará que el uso de

código fácil de usar si esa sección de código es recurrente en numerosas ocasiones en el interior

un programa.

2.3.4 Toma de decisiones y hacer cumplir Técnica

La batería está conectada al ordenador principal, todos los sub-controladores, todos los sensores, una

Dispositivo de carga acoplada (CCD) de la cámara y un capturador de fotogramas, el Área de Controlador

Red (CAN) módulo, ventiladores, etc. Las aportaciones de diversos sensores como

20
fuerza / sensor de par, sensor de inercia, la distancia del sensor de medición (DMS),

Termómetro, sensor de medición de la presión, velocidad Gyro sensor de aceleración,

Infrarrojos (IR) Sensor 12 etc son recibidos por el ordenador principal, que son

remitido a los controladores de motor apropiados a través de los principales microcontroladores para

el funcionamiento de los actuadores en cuestión de la manera deseada en respuesta a la fuera

condición del mundo. Estas instrucciones de hacer cumplir la computadora principal emanan

desde fuera del software incluido en ellos. Por lo tanto la inteligencia se imparte a la

robots para decidir y hacer cumplir las funciones.

2.3.5 Arquitectura de control

2.3.5.1 controlador principal

Para robots ligero y medio, el microcontrolador será el controlador principal mientras

para robot pesado, multifuncional y humanoide se utilizarán uno o incluso dos PCs

como controladores principales junto con microcontrolador y muchos controladores de motor. Cuando

una serie de interfaces periféricas, entorno de programación simple y rápida

PC y buena interfaz gráfica de usuario (GUI) se requiere es la mejor opción como principal

controlador.

2.3.5.2 Control de Area Network (CAN) Protocolo

Cuando los ordenadores se utilizan como controlador principal junto con microcontrolador y

muchos controladores de motor, para la recepción de muchos tipos de datos desde diferentes dispositivos

y dar órdenes por el ordenador principal, debe haber línea de autobús para

la correspondencia entre el ordenador primario y otros controladores (cf. figura

4). Para tratar con el número de sub-controlador, una comunicación rápida es

esencial. El protocolo CAN utilizado en la industria del automóvil con número de serie

velocidad de comunicación de 1 megabit por segundo se encuentra adecuado. Es muy fácil

12 Un sensor de infrarrojos es un instrumento electrónico que se utiliza para detectar / evaluar la naturaleza / cualidades predominantes de su entorno, ya sea de transmisión

o potencialmente reconocimiento de la radiación infrarroja.

21
ampliar el número de sub-controladores adicionales ya que se necesitan sólo dos líneas

en este protocolo. Todos los controladores conectados a esta línea de bus son capaces de enviar y

también recoger uno de datos y al mismo tiempo [7].

2.3.5.3 Los sub-controladores

controlador rollo Trunk (para la prevención de la pendiente del tronco), debido a la transformación

en la pendiente del suelo utilizando acelerómetro tasa, aterrizando controlador de posición (por

la modificación del horario de posición para evitar el aterrizaje inestable del robot si el

aterrizaje se lleva a cabo antes o después del tiempo prescrito), la amortiguación controlador y

controlador de orientación de aterrizaje (para modificar los ángulos de las articulaciones prescritos por inversa

Cinemática por conmutación de uno al otro controlador basado en la detección de aterrizaje

algoritmo), etc., son los sub-controladores importante utilizado en Humanoid bipedal

robots. El equipo principal enviará los datos de posición de referencia a todas las funciones motoras

controladores que controlan entonces los motores de corriente continua usando proporcional-diferenciación

(PD) control (un mecanismo de retroalimentación de control que calcula la diferencia

entre la variable de proceso requerido y el valor real y aplica un

corrección) [7].

2.4 Sistema operativo del robot (ROS)

2.4.1 Los diferentes sistemas operativos

Es bien sabido que los recursos de hardware y software de un ordenador son

gestionado por un conjunto de programas informáticos conocidos como un sistema operativo (OS).

tareas básicas como el control y la asignación de memoria, dando prioridad a las solicitudes del sistema,

el control de los dispositivos de entrada y de salida, facilitando la creación de redes, y la gestión de archivos

se llevan a cabo por el sistema operativo. Diversos servicios prestados por el sistema operativo son: Proceso

gestión, gestión de memoria, disco y archivo de mantenimiento de los sistemas,

capacidad de red, la provisión de seguridad, la provisión de interfaces de controlador de dispositivo

etc. [22].

22
Hay una serie de sistema operativo, es decir, Windows, Mac OS X, UNIX, Solaris

BS3000, MS-Dos etc. Es parte de un equipo de sistema o equipo informatizado

el cual se ocupa de la gestión y coordinación de las actividades de ese

sistema computarizado. El sistema informático puede ser un ordenador, una

estación de trabajo, un servidor, un PC, un método, un teléfono inteligente, un dispositivo de navegación por carretera o

cualquier sistema con un poco de “inteligencia” de su propio como un robot. Las obras OS

el papel de anfitrión para todas las aplicaciones en ejecución o lleva a cabo en cualquier hardware.

Hay diferentes tipos de OS [22]:

• SO en tiempo real

• Multi-usuario y de un solo usuario del sistema operativo

• Multitarea y sola-tarea OS

• OS distribuido

• OS incrustado

• OS especializados como 'Robot OS'

2.4.2 Sistema operativo del robot

Se trata de un conjunto de estructuras de software para el desarrollo de software del robot proporcionando OS como

utilidad en diferentes clúster de categoría sistema informático. ROS da estándar del sistema operativo

servicios tales como abstracción de hardware, control de dispositivos de bajo nivel, la implementación

de utilizado comúnmente funcionalidad, el mensaje pase de largo entre los procesos, y

gestión de paquetes. arreglos en ejecución de procedimientos basados ​en el ROS son

representado en una arquitectura gráfico donde el procesamiento se lleva a cabo en los nodos que

pueden obtener, correos y múltiplex sensor, control, estado, la planificación, el actuador y otra

mensajes. A pesar de la importancia de la relatividad y baja latencia en robot

control, en sí ROS no es un sistema operativo de tiempo real; Sin embargo, es posible combinar

ROS con el código de tiempo real [23]. La base del sistema operativo en el presente trabajo es Debian en el

La acreditación en la que trabaja ROS.

23
Software en el Ecosistema ROS se puede dividir en tres grupos:

1. Idioma -y herramientas independiente de la plataforma utilizados para la construcción y

la distribución de software basada ROS

2. implementaciones de la biblioteca cliente ROS como roscpp, Rospy y roslisp

3. Los paquetes que contienen el código relacionado con la aplicación que utiliza uno o más

bibliotecas de cliente ROS [24].

2.4.2.1 Aplicaciones de ROS

ROS se puede aplicar en el siguiente ámbito de áreas: ROS es un término genérico

indicando el montón de colección de diferentes programas informáticos heterogéneos

(programas destinados a herramientas, bibliotecas de cliente y códigos de aplicación contenidos en

ROS), mientras que ROS paquetes incluyen un único grupo de código de software utilizando

una o más bibliotecas de cliente solamente de ROS (lista al final de la Sección 2.4.2).

• Un nodo de coordinación maestro

• La publicación o la suscripción de los flujos de datos, imágenes, música, láser, control,

actuador, el contacto

• multiplexación

• la creación de nodos y destrucción

• Los nodos se distribuyen sin problemas, permitiendo la operación distribuyen sobre

multi-núcleo, multi-procesador, GPU y clusters

• Explotación florestal

• servidor de parámetros

• Los sistemas de prueba

Paquetes de ROS se pueden aplicar provechosamente en las siguientes áreas: Un grupo de

el software se puede aplicar para la percepción por ejemplo, movimiento, etc., mientras que otro grupo de

El software de puede ser necesaria para la identificación de objetos, la visión estéreo, etc., y por lo que la

tercer grupo.

24
• Percepción

• identificación de objetos

• La segmentación y reconocimiento

• Reconocimiento facial

• Reconocimiento de gestos

• Rastreo de movimiento

• Egomotion

• comprensión de movimiento

• Estructura del movimiento

• Estéreo percepción de la profundidad de visión a través de dos cámaras

• Movimiento

• robótica móvil

• Controlar

• Planificación

• Agarrando [25]

Tanto las herramientas independientes del lenguaje y de las principales bibliotecas de cliente (C ++, Python)

son útiles para la aplicación de otros paquetes relacionados con la funcionalidad y la

aplicaciones tales como controladores de hardware, los modelos de robot, tipos de datos, planificación,

percepción, la localización simultánea y mapeo, herramientas simultáneas y otra

algoritmos [25].

2.4.2.2 Ventajas del uso de ROS

ROS es en realidad un marco meta-trabajo, algo entre un operativo

sistema y middleware para la robótica de servicios. Se da operativo no sólo norma

servicios (abstracción de hardware, gestión de contención, gestión de procesos)

pero funcionalidades del sistema, además de alto nivel (asíncronos y síncronos

llamadas, base de datos centralizada, un sistema de configuración robot etc.).

25
Antes sistema operativo del robot entró en uso, cada investigador y diseñador del robot

invertiría medidas impresionantes de tiempo que describen el software embebido

dentro de un robot, y además el propio hardware. Esta habilidad requerida establece en

ingeniería mecánica y software embebido. Normalmente, los programas

diseñado de esta estaban muy similar a la programación embebida, como

la electrónica, luego fueron a la robótica en el sentido más estricto, por ejemplo, es posible

experimentarla en estos días en la robótica de servicios. Hubo una significativa reutilización

de los programas, ya que estaban firmemente conectados al hardware necesario. Otro

ventaja es que de especialización mezcla de diversos campos que incorpora

en el diseño y la programación de un robot [27]:

una) La gestión de la década de hardware escribiendo conductores

segundo) La gestión de la memoria y los procesos

do) La gestión de la concurrencia, el paralelismo, y la fusión de datos

re) Proporcionando el razonamiento abstracto, lo que hace un gran uso de la inteligencia artificial

2.4.2.3 Tecnología ROS

Los cinco principios siguientes están involucrados en la tecnología de ROS [27]:

• De igual a igual

• Herramientas basadas en (microkernel)

• Multi lenguaje

• Delgado

• libre y de código abierto

nociones básicas de ROS [26]:

• Los nodos

• Dominar

• temas

• Servicios

• Pantalón

26
sistema operativo del robot es el futuro del software para dispositivos autónomos. los

bit más crítico de software para robots operativos es el robot llamado apropiadamente

Sistema operativo. ROS es un marco de herramientas de programación utilizado para escribir y

desarrollo de software del robot. En esencia, funciona como una especie de sistema de código abierto

proporcionando OS como servicios diseñados específicamente para la robótica, por ejemplo,

abstracción de hardware, control de dispositivos, la implementación de funcionalidades comunes

y la gestión de paquetes de datos [28]. El rápido desarrollo en los ecosistemas ROS

lo ha puesto en un camino de convertirse en el Linux de software de robótica. El desarrollo

del robot realizado en este estudio de investigación es muy remunerado basado en el uso y

ROS.

2.5 Requisitos de Ruta bípedo humanoide Robots

2.5.1 Características genéricas

2.5.1.1 Rasgos característicos de robots humanoides

mínimo consumo de energía debe estar orientada a para caminar normal de una

humanoide, de forma similar a lo que ocurre en el caso de un cuerpo humano. El logro dinámico

caminar es la clave para el éxito del diseño y la construcción de un humanoide.

La posición de seguridad y firme en el suelo de un robot bípedo en movimiento es

Además de la preocupación más importante. El mantenimiento de un robot en firme y constante

estado haciendo su centro de gravedad permanezca en o cerca del punto medio de su

área de soporte de peso es el objeto de proporcionar la capacidad para su auto-control [29].

Conjunto de táctiles sensores (táctiles) puede ser utilizado para dar información sobre lo que ha sido

tocado. Estos sensores, además, dan datos sobre las fuerzas y pares de torsión intercambiados

entre el robot y cosas diferentes [30].

Un sensor es un dispositivo que calcula unos pocos rasgos de los alrededores. Como uno de los

más factor importante entre los tres requisitos esenciales de un robot, aparte de

planificación y control, detección asume una parte imprescindible en los ideales de los robots,

especialmente la de humanoides.

27
Los sensores se clasifican i) sensores propioceptivos y II) sensores exteroceptivos. los

posición, la dirección y la velocidad del cuerpo y las articulaciones son del humanoide

medida por el primero, mientras que táctiles (sensores táctiles), visión (cámaras CCD) y

de sonido (micrófonos) se miden por este último. Los actuadores son los motores que

realizar como los músculos y las articulaciones a los humanoides y actuadores rotativos son principalmente

utilizado [30]. Pueden ser eléctrico, neumático, hidráulico, piezoeléctrico o ultrasónica

queridos.

La planificación y el control son otros dos requisitos esenciales de humanoides. patas

la locomoción bípeda que involucra modo de andar de humanoides se asemejan similar a la humana

para caminar. la planificación ideal debe apuntar para el consumo mínimo de energía y eficaz

medios de control mantenimiento de las funciones ideales de todas las partes, en particular, las articulaciones [29].

Un robot necesita datos acerca de la presión de contacto y su presente y futuros cambios en

posición con un objetivo final específico para mantener su equilibrio dinámico, si bien es

para caminar. Otra función de robots humanoides es que se mueven, reunir datos

(Utilización de sensores) sobre las características ambientales reales y comunicarse con él.

Al igual que las máquinas inteligentes y robots de fabricación de plantas similares que trabajan en

Sumamente situaciones organizados los robots humanoides no permanecen ideal.

La planificación y control debería concentrarse en descubrir lugares auto-accidente, camino

la planificación y la evitación de obstáculos para permitir a los humanoides a moverse en

situaciones complejas [31].

2.5.1.2 Control autónomo de robots humanoides

Un robot de decidir y que funciona por sí sola llamada robot, autónoma, es un robot

que realiza las prácticas y los mandados con un alto nivel de autogobierno, que

es especialmente esencial en campos como la investigación espacial, el mantenimiento de la familia, (por

ejemplo, la limpieza y el transporte y la disponibilidad de mercancía y otras ayudas).

Algunos presentes robots de línea de producción día son "autónomo" dentro de la estricta

límites de su entorno inmediato. Puede que no sea que cada nivel de

28
existe la oportunidad en su entorno que abarcan; Sin embargo, la producción

ambiente de trabajo del robot de la línea es muy probando y puede contener regularmente

, factores inesperados desorganizado.

Una región crítica de la investigación robótica es habilitar al robot para adaptarse a su

entorno si esta tierra es, sumergido, notable por todas partes,

subterránea, o en el espacio.

Un robot autónomo puede estudiar así mismo o adquirir nueva información como

la modificación de nuevas técnicas para el acabado de sus obligaciones o de ajuste a

entorno en evolución.

Es necesario que un ser humano exhibición humanoide como aspecto para llevar a cabo

humano como acciones de forma independiente para que pueda cooperar y ayudar a las personas en su

la vida cotidiana. La interacción entre los seres humanos tiene lugar a través de su voz y

gestos. gestos simples derivadas de conductas repetidas cuentan mucho en

el desarrollo de las comunicaciones humanas. Del mismo modo, gestos amistosos de un humanoide

son importantes para servir con eficacia los seres humanos. Tales gestos debería, para evitar

malentendido, ya sea de la misma manera que lo hace humano. La forma y el modo de

caminando de un humanoide, mientras se aproximaba a un ser humano, es igualmente importante.

Baile u otros servicios de entretenimiento de humanoides también debe exhibir

movimientos significativos, artísticas y creativas tanto como sea posible la actuación humana

[32]. Por todo esto la capacidad del robot humanoide debe tener control autónomo

además de la inteligencia.

interacción Natural y adaptabilidad a entornos destinados y diseñados para

los seres humanos son los principales objetivos y finalidad de las áreas de investigación de robots humanoides

[32]. Además, las tecnologías robóticas que integran sentidos, las respuestas motoras y

la inteligencia son de gran importancia. la seguridad, la fiabilidad, y el robot humano del robot

simbiosis llama para el control de la acción autónoma para robots humanoides [5]. para una rápida

29
dinámico al caminar, la búsqueda de ruta y la planificación, y evitar una colisión

robot humanoide autónoma sólo es inevitable e inevitablemente necesario.

2.5.1.3 Inteligencia Poseído por robots humanoides

robots móviles autónomos son una realidad hoy en día (no una ficción) a causa de la

un progreso rápido y muy importante en la mecánica y campos de ingeniería eléctrica. Inherente

ambientes hostiles (de peligro y exploraciones de aguas profundas, expedición espacial,

plantas nucleares, etc.) han dado la bienvenida robots humanoides inteligentes para trabajar como

sustitutos de los seres humanos. Otros dispositivos autónomos inteligentes como robótica

aspiradoras, cortadoras de césped, etc. han inundado el mercado. casa humanoide

cuidadores, asistentes personales pronto ocupar su lugar.

2.5.2 Funciones esenciales

2.5.2.1 Caminar Control - Revisión de la literatura

Una tarea central para robots humanoides caminar es el actual controlador de caminar,

generalmente consta de un generador de patrón de marcha y el control de balance. Para esto

problema, existen dos enfoques fundamentales: uno, sobre la posibilidad de establecer

este asunto es confiar en un modelo muy preciso del andador y para calcular la marcha

trayectorias de confianza de acuerdo suficiente del modelo con la realidad. El otro

dirección se basa en la aproximación de la dinámica del robot por un modelo sencillo con

sistema reducido afirma por ejemplo, un péndulo invertido. Conformidad del simplificada

modelo con la dinámica real está garantizada por un control de retroalimentación [17].

Un método frecuentemente adoptada para hacer que los robots humanoides a caminar de manera constante es

dirigirlos a aprender por ensayo y error y también para incorporar físicamente el

posiciones en movimiento y sus factores determinantes. Los generadores centrales de patrones

(GPC) técnicas permiten producir direcciones conjuntos, no lineal utilizando

osciladores. En estas metodologías, es una cuestión difícil de descubrir con precisión

condicionantes aplicables para llevar a cabo un paseo estable. Los procedimientos que implican

mucho cálculo utilizan la idea del Punto Cero Momento (ZMP) y se basan

30
en direcciones posicionales conjuntos que son averiguado considerando dinámico

movimiento del robot. En este caso, un modelo exacto del robot y su movimiento

es requerido.

Unas pocas metodologías que se han introducido ir para limitar adecuadamente

propiedades como la velocidad o la firmeza media del cuerpo del pie de un humanoide. los

patrones de caminar mejorados posteriores no se ven generalmente como correcta humana

paso. Consideramos el problema de lograr constante zancada similar a la humana en una

robot humanoide al considerar esto como un problema que limita óptima y crear cuatro

procedimientos de cálculo que trabajan en la consideración de la premisa de movimiento de las articulaciones

[33].

se utilizan una serie de diversos controladores de movimiento y controles Path Tracing

para robots humanos. En el enfoque de ZMP, el objetivo fundamental es la

determinación del movimiento del robot de manera que el momento cero punto ZMP

(El punto en el que la totalidad de las presiones de conducción pereza suman cero) no va

más allá de la región predeterminada de estabilidad. Centro de masa (COM) basada

modelos son otra estrategia de control dirección de trazado bien conocido. Todo el mundo

de estas técnicas experimenta los efectos nocivos de depender de planeado

los detalles de la estructura del robot humanoide ocultos.

En la obra examen expuesto en esta proposición, el énfasis está en una novela

dirección técnica disponiendo previsto en particular para un robot humanoide para mover

a lo largo de curvado direcciones. El modelo de paseo curvada propuesto presentado para una

robot humanoide utiliza una regla fundamental similar adoptada en el guiado diferencial

marco para un robot con ruedas. Un destacado entre los estándares más intrigantes

de esta estrategia es su independencia de la estructura del robot humanoide básica. Esta

nueva estrategia garantiza asimismo una dirección efectiva de vital importancia cuando se contrasta con

alguna otra esbozan estrategias particulares desde unas pocas articulaciones, por ejemplo, la cadera a mover las articulaciones son

no se utiliza como una parte de esta técnica para cambiar la dirección [34].

31
La mayoría de los esfuerzos robot patas se han concentrado o bien en la morfología específica

(Por ejemplo, bípedo, cuadrúpedo, o hexápodo) o una suposición movimiento específico (por ejemplo, semi

estática o rebote). Curiosamente, el trabajo pasado por los autores son de carácter general, en la que

se aplican de forma morfología, y también se aplican a los problemas de una clase que

incorporar robots patas.

marcos para caminar cinemáticas se pueden visualizar utilizando las asociaciones de

paquetes de fibras primarios y además dan controlabilidad resultado. No-

marcos de movimiento holonómicos esperan que las condiciones de circulación de la

marco son lisas, que prohíbe su aplicación a cuestiones de robótica patas

donde las condiciones de movimiento son intermitentes. no lineal estándar

controlabilidad pruebas requieren que las condiciones del marco de movimiento sean

suave. El compromiso fundamental de este trabajo es la ampliación de la norma

técnicas de control no lineal a una clase de cuestiones en las condiciones de

movimiento están en forma rota [35].

Hasta este punto, la mayoría de los métodos de control de estabilidad se han esforzado por mantenerse al día

equilibrar mediante el control de sólo el movimiento en línea recta de un robot. Las estrategias tienen

ha desarrollado para cambiar la información de direcciones de grado-ventures para ajustar el

posición del centro de presión (CP), un punto dentro de región de soporte del robot

a través del cual la fuerza de reacción del suelo resultante (GRF) actúa. En el momento

la CoP, como resultado de movimiento de la articulación de entrada, las hojas de la base de soporte seguro,

que muestra una concebible derribando de un pie, el movimiento se altera para llevar el

CoP al interior de la base de apoyo, mientras que el robot todavía toma directa después de la ansiada

movimiento del centro de masa (COM). El movimiento de rotación del robot

estancias más o menos ignorados en estas metodologías.

Sea como fuere, la progresión de giro de un robot asume un papel crítico en

equilibrar. Las investigaciones sobre el control de estabilidad humano, además, demuestran que

la gente directo con firmeza fuerza precisa en medio de paseo, que recomienda sólida

32
probabilidad de que el momento angular, podría ser crítico en los desarrollos humanoides

[36].

Una dificultad importante con los sistemas existentes que crean el movimiento del robot es

dependencia de la información. Por ejemplo, un método sencillo es montar un modelo para una

movimiento específico de un número sustancial de muestras. En una situación ideal,

el robot podría ver un ejemplo (posiblemente horrible) de un movimiento y adoptarlo

a un socio más parecida a la humana.

La dependencia de gran cantidad de información de la muestra es con frecuencia un aproximado

sustituir a un enfoque más principios. Por ejemplo, examinando rápidamente

Árbol aleatoria [RRT] estrategias basadas no ofrecen auténtico movimiento similar a la humana

sin embargo, depende de una base de datos de los movimientos humanos como muestra posando como si

proporcionar una respuesta verdadera y correcta. Verificación de la base de datos para descubrir una

movimiento como línea de dirección RRT-producido es un inconveniente para la web basado

planificación que puede afectar al período de cálculo de procedimiento [59].

Otros métodos diferentes dependen de conexiones aproximadas consiguieron del

ejemplo información para hacer el movimiento del robot a parecer más parecida a la humana. Esta

se tienen en cuenta criterios como el puerto com conjunta, tiempo de viaje, sacudidas, la postura humana a-

conexiones de destino. En el punto cuando se utiliza información de movimiento obtenida,

menudo ignorando detalles de tiempo, lo que provoca el movimiento del robot a suceder en

velocidades imposibles y no humanos.

Estrategias de los movimientos producidos por personajes de dibujos animados o virtuales no pueden ser

apropiadamente aplicado a los robots ya que existen contrastes clave en las situaciones reales. los

grado en que los métodos adoptados para personajes virtuales pueden ser utilizados para robots

se basa en suposiciones sobre los hechos de una estrategia específica. como limitaciones

frecuencia de par y de corte velocidad de puntos de equipo real provoca el movimiento

destinada a personajes virtuales a parecer pobre en un robot, no obstante el hecho

33
que esos movimientos se ven muy bien en un modelo virtual ya que existen menos limitaciones

dentro de los mundos virtuales [37].

técnica de captura de movimiento [38,39] se ha adoptado para hacer que los robots humanoides

moverse como los seres humanos desde la captura de movimiento es una técnica de alta calidad para la animación

de caracteres parecidos a los humanos en los gráficos por ordenador.

Los problemas de estabilidad de movimiento del robot humanoide son el punto crítico en

la comprensión de las técnicas de control; por lo tanto, este robot humanoide caminar puede ser

dispuestos en tres clases distintas. Para empezar, la primera variedad tiene en

cuenta caminantes estáticas, cuyo movimiento es moderado de forma que el marco de

la seguridad está totalmente representado por la proyección ordinaria del centro de gravedad,

que acaba basa en al posición de la articulación. Segunda clasificación incluye

caminantes dinámico, es decir, robots bípedos con los pies y los tobillos inducida. postural

fuerza de caminantes dinámicos es proporcionado por las velocidades y la aceleración de las articulaciones, así.

Estos caminantes son capaces de moverse de una manera estática si tienen suficiente enorme

pies y el movimiento es moderado. La tercera clase implica absolutamente dinámico

andadores, robots sin pies. usuarios dinámicos pueden lograr más rápido paseo

velocidades, correr, subir escaleras, la ejecución de lanzamientos progresivos, no obstante

que pasear es sin ningún tipo de actuadores. Por esta situación el polígono estabilidad en

la etapa de un solo apoyo se disminuye a un punto, con el resultado de que estático

paseo es poco práctico. En el paseo con el equilibrio dinámico, el foco anticipada

de la masa se permite fuera de la región encerrada por los pies, y el caminante

puede caer básicamente en la parte media de la etapa de paseo. Los problemas de control de

paseo dinámico son más confundido que en un paseo con el equilibrio estático, sin embargo,

paseando diseños dinámicos dan mayor velocidad de paseo y más digno de mención

eficacia, junto con las estructuras que dan un paseo más flexibles [60].

Para todas las dichas clasificaciones de los robots que dan un paseo, la cuestión de estado estacionario y

fiable caminata bípeda es el requisito más esencial, pero entonces sin resolver

34
con un alto nivel de calidad constante, este tema ha sido considerado

fundamentalmente a través de los adjuntos dos clases de generadores de tipo pasear

y controladores de robot. El planteamiento inicial es producir un poderoso constante

diseño dinámico paseo ocasional. Se lleva a cabo la espera de que los modelos de robot

y el medio ambiente son accesibles, y los parámetros cinemáticos y dinámicos de la

modelo de robot se caracterizan con precisión. Sin embargo, el segundo enfoque utiliza

restringida o el aprendizaje de la progresión del marco desenredado. Sea como

mayo, para esta situación, el control depende mucho del control de entrada, y es

importante crear estrategias sin altos requisitos de cálculo para curso

Uso [61], [62].

La armonía de rotación del pie es la principal consideración de la inseguridad postural

con robots patas. La cuestión ha despertado el significado de unos pocos dinámico basado

criterios para la evaluación y el control de equilibrio en el movimiento bípedo. la mayor parte

criterios bien conocidos son el centro de presión (CP), el punto cero del momento

(ZMP) y el indicador de los pies de rotación (FRI). A partir de estos criterios, la idea ZMP

ha recibido el aumento y reconocimiento más amplio y asumido una

parte importante en la solución de la solidez robot bípedo y pasear intermitente

combinación de diseño. El ZMP se caracteriza como el punto en el suelo sobre

el cual la totalidad de la cantidad considerable de instantáneas de la dinámica

poderes se resuelve a cero. En el caso de que la ZMP está dentro de la estructura arqueada

de todos los contactos se centra entre el pie y el suelo, el robot bípedo puede caminar.

Independientemente de la posibilidad de que la solidez a la luz de ZMP simplemente retrata

condición de contacto entre el pie y el suelo, controlador basado ZMP es para el

mayor parte se utiliza como una parte de los grupos de robots humanoides ya que se sabe que la función

admirablemente. En la gran mayoría de los casos, la dirección del robot humanoide es

decidió fuera de línea, y después de que el controlador está destinado a realizar un seguimiento de estas direcciones. UNA

Se crea ejemplo móvil para garantizar que ZMP del robot es todo el tiempo en el interior

la proyección pie de apoyo. Esto es importante para que el robot bípedo para mantenerse al día

35
equilibrio dinámico al caminar. Sea como fuere, el imaginario de la ZMP

ejemplo pasear no es el mismo que el verdadero ZMP del robot bípedo en un sólido

caminar. Teniendo en cuenta el objetivo final para compensar las discrepancias ZMP, es

importante para ejecutar la alimentación de control equilibrio utilizando (F / T) sensor o pendiente

sensor. La mayoría de los trabajos de investigación que gestionan el control de paridad se han concentrado en el

pago de variación ZMP, basándose en que la ZMP es la norma fundamental

equilibrio de la dinámica. En general, se ha aceptado que la razón principal

para discrepancia apunta a los reales errores de condiciones del terreno o modelo. Como siempre,

el controlador de equilibrio debe ser fuerte contra la pendiente y el modelo

imperfecciones [43].

Los dos elementos más esenciales de robots humanoides bípedos son los similar a la humana

forma y actividades. robots humanoides Biped tienen dos piernas y deben dar un paseo con

una capacidad portátil decente en diferentes territorios incluyendo superficies irregulares o

escalera. En consecuencia, numerosos analistas han creado estructuras robot humanoide

y han contemplado el paseo bípedo de robots humanoides. el Honda

, La disposición WABIAN humanoide de la Universidad de Waseda, H6 y H7 de

Universidad de Tokio, HRP de AIST y JOHNNIE son notables bípedo a escala humana

robots humanoides. En su mayor parte, el sistema de control de la dinámica de paseo

robots bípedos depende de la generación patrón de marcha, que considera la

constante punto cero minutos (ZMP) dirección y control de balance en línea. A medida que la

genuina dirección ZMP no es la misma que la dirección ZMP requerida debido

razones como la irregularidad de la superficie, los errores de detección y manchada

modelo dinámico del robot, unos controladores de línea a la luz de lo tangible

Se requiere la crítica. Además, muchos otros investigadores consideran que la estabilización

estrategia de control de robots humanoides identificados con el momento angular

información.

Una técnica de control paseando dinámica ha sido propuesto por Kim et. Alabama., en 2006

para robots humanoides bípedos que utilizan los datos inerciales ZMP y. El control

36
procedimiento cubre la generación de patrón de marcha de adaptación, ajuste ZMP real de

error mientras está de pie sobre una sola pierna con control de amortiguación de la articulación del tobillo, estable

control de aterrizaje y de control de posición de aterrizaje en función de la velocidad precisa de

la parte superior del cuerpo. De esta manera, un robot bípedo puede ajustar con el paisaje desigual y sin

la pérdida de firmeza en el momento de dar un paseo real [44].

Los dos componentes más básicos de robots humanoides bípedos son los similar a la humana

forma y avances. robots humanoides bípedos tienen dos piernas y debe andar

alrededor de un límite tolerable compacto en varios dominios, incluyendo superficies irregulares

o escaleras. De la misma manera, varios examinadores han hecho arreglos robot humanoide

y han pensado en el caminar bípedo alrededor de robots humanoides. el Honda

humanoide, el plan de juego WABIAN de la Universidad de Waseda, H6 y H7 de Tokio

Universidad, HRP de AIST y JOHNNIE son eminentes bípedo a escala humana

robots humanoides. Generalmente, la disposición de control de caminar componente

alrededor de robots bípedos se basa en que los períodos de esquema caminar, que considera

el curso inexorable momento cero coma (ZMP) y la línea de control se ajustan. Como

el honesto a la bondad ZMP supuesto no es el mismo que el título buscado ZMP

como resultado de razones, por ejemplo, la irregularidad de la superficie, reconociendo

bungles y modelo de componentes imperfecta del robot, un par de línea

Se requieren controladores en vista de la reacción sustancial. Además, varios

otras investigaciones se desgasta la disposición de control de conformidad de humanoide

Se han difundido los robots relacionados con la información de la unidad exacta. En todo caso,

ha habido pocas investigaciones decentemente gestiona el control de ZMP y alterar el control

utilizando la estimación de inercia al mismo tiempo [45].

En esta tesis, se propone un procedimiento de control de caminar dinámico para bípedo

robots humanoides utilizando el ZMP y la información inercial. El esquema de control

fusibles período plan de caminar flexibles, progresando compensación ZMP en el único

apoyar escenario con control de amortiguación de la articulación de la pierna inferior, control de aterrizaje estable

y el control de posición de aterrizaje en perspectiva de la velocidad exacta del centro. A lo largo

37
estas líneas, un robot bípedo pueden cambiar de conformidad con la escena desigual y sin

perdiendo fuerza, lógicamente, en medio de la marcha.

Hay tres tipos de metodologías en el caso de pasear bípedo, que son

generación de patrones fuera de línea, la generación de patrones sin conexión con la línea de realimentación

la compensación y la generación de patrones en línea con control de retroalimentación en línea. los

primero es crear los diseños que dan un paseo en la estela de esbozar las direcciones en ZMP

luz de la información exacta de la estructura, por ejemplo, la instantánea de

latencia, las masas de cada parte. Este enfoque puede obtener la constante de paseo

diseños, sin embargo, pueden hacer que el robot a caer hacia abajo sin esfuerzo, a la luz del hecho

que es susceptible a los elementos de un-visualizado o oscuros del marco como

fortalezas de respuesta y la erosión del suelo. El propio diseño del paseo es

constante, sin embargo, debemos determinar los elementos confusos ZMP para conseguir el paseo

diseño. La segunda es para derrotar a la seguridad y los problemas con la intensidad. Esta

enfoque utiliza ZMP diseños basados ​ambulantes y les paga para mantener ajustar por

crítica. Se puede construir, utilizando controlador de entrada, la fiabilidad de la paseando

robot por la disminución de los elementos de inestabilidad La impulsados ​por el flujo que se muestra,

condiciones del terreno y así sucesivamente, sin embargo, la imprevisibilidad de diseño de paseo estable

era todavía permanece [45].

El tercer método se utiliza como parte de este trabajo. El patrón de la marcha en línea

es creado por el enfoque cinemático mediante la producción de los dictados de posición de la

articulación. Se hace mediante la observación de la conducta del ser humano, y se cambió por la entrada táctil

controladores para mantener la solidez pasear. Esto implica diseños paseantes que tienen

han separado en la generación de referencia cinemático y el controlador dinámico. los

diseño paseando se ha rediseñado de tal manera que puede rodar a cabo la mejora robot, su

tiempo de progresión y paseo sin detención. Las curvas de posición del foco de la pelvis

se figurado como para las condiciones límite (posición y velocidad) hacia el principio

y hacia el final de la progresión, debido a que utilizan polinomio de tercer orden

adición. Podemos corregir la forma de la curva seleccionando el límite correcto

38
teniendo en cuenta los valores de condiciones de los modos ambulantes (hacia adelante, hacia atrás y de lado

A pie), la recurrencia y caminar, que pueden ser las direcciones desde el administrador

o a partir de los cálculos de ruta dirigir [45].

Los controladores de retroalimentación utilizados en este trabajo se nombran a ZMP, aterrizando

orientación, posición de aterrizaje, el aterrizaje de temporización, la amortiguación y la reducción de la vibración

controlador en el punto de sus objetivos y funciones Se utilizó el F / T

sensor en la pierna inferior y el acelerómetro en la suela, y que estaban muy

mucho ejecutado el KHR-1, KHR-2, KHR-3 (HUBO) para mantener la seguridad del robot

en el tiempo de paso alterada y caminar estado paseando. Hemos utilizado el controlador

el intercambio de estrategia con respecto a la planificación, y el período de la caminata. Esta

implica que estamos aplicando los diversos controladores con diferentes circunstancias. Esta

técnica puede ser un enfoque decente en el estado de alteración del tiempo de paso y paseo.

Hemos ampliado esta manera de tratar con el tiempo de paso variable y enfermedad a caminar

en medio de pasear en este trabajo [45].

bípedo Early paseando de robots incluido estática paseando con una baja velocidad de paseo.

El tiempo de progresión fue de más de 10 segundos para cada progresión y la

sistema de control de balance se realizó utilizando COG (centro de gravedad). Por lo tanto, la

punto previsto de COG en el suelo en todo momento cae dentro del soporte

polígono que se hace por dos pies. Mientras pasea estática, el robot puede detener la

paseando movimiento en cualquier momento sin derrumbarse. La debilidad de

paseo estática es que el movimiento es demasiado moderado y mal por cambiar el COG.

robots humanoides más bípedos han realizado paseo dinámico estable en el

conseguido efectivamente pisos de nivel listos. Pasear estudios sobre el irregular y en pendiente

pisos están todavía en la fase inicial. paseo dinámica sobre una superficie irregular es

difícil de obtener a la luz del hecho de que la mayoría de los robots humanoides bípedos

realizar el control de posición dura de las articulaciones mediante la utilización de motores y la disminución de engranajes

y los tiempos de reacción de los actuadores y sensores son bajos debido a la marcha

39
y el sonido del sensor. Así pues, es inimaginable para el robot para medir el suelo

condiciones con prontitud y también porque es impensable que el robot pueda reaccionar adecuadamente

sin tener en cuenta la posibilidad de que cuantifica las condiciones del terreno rápidamente. Pero,

el tobillo humano puede adaptarse rápidamente a variar la naturaleza del campo. Además, humana

músculos pueden contraerse o relajarse rápidamente con movimientos suaves [45].

Esta obra de Kim et. Alabama., en 2007, se muestra un cálculo de control paseando dinámico

procedimiento que considera cercano y lejano estado de la pista inclinada. Los escritores

proponer la utilización de los diferentes controladores en línea para adaptarse a un desigual y

la inclinación del suelo a la luz de una forma mejorada de una dinámica propuesto anteriormente

paseando cálculo. Estos controladores de línea se inician y se hacen para trabajar uno

después de otro durante el tiempo apropiado en un ciclo móvil [46].

2.6 Conclusión

La siguiente observación y el análisis de la marcha bípeda humanoide se toma

en cuenta en este estudio de investigación:

Hay diferentes razones para las dificultades en cuestiones de control a surgir y diferente

obras y estipulaciones que deben ser razonablemente estable y de mantenimiento satisfechos en

mente el objetivo final de hacer pasear sustanciales y otras acciones de rendimiento

de robots humanoides. investigaciones anteriores de naturaleza orgánica, hipotética y PC

salidas se han concentrado en la estructura y la elección de los cálculos de control como

indicado por varios criterios, por ejemplo, una menor utilización de energía, la toma de energía

disponible en todo momento, fuerza, velocidad, consuelo, la capacidad de mantenerse en movimiento, y

medio ambiente afecta. A fin de cuentas, a pesar de estas perspectivas, se

es igualmente importante tener en cuenta algunas cuestiones diferentes: la capacidad de mecánica

la ejecución debido a las limitaciones físicas de los actuadores conjuntas, adaptándose a

progresión no lineal compleja y fuerte y las inestabilidades en el modelo de base

enfoque, la naturaleza compleja del repetido y regular de paseo, la incorporación del aprendizaje

y la capacidad de ajuste, problemas de cálculo, y así sucesivamente.

40
Las cuestiones importantes relacionadas con el examen y el control de bípeda

marcos es la dinámica no lineal acoplados altamente y además, la

cambios discretos en los fenómenos dinámicos debido a la forma de la zancada.

Independientemente de la estructura del robot humanoide y la calidad de muchas facetas, la

cualidades fundamentales para cada marco bípeda son: a) la forma DOF

desarrollado entre el pie y el suelo es unilateral y bajo incitado b) la

repetición de paseo (simetría) y compatibilidad coherente de la cantidad de piernas

que son al mismo tiempo en contacto con el suelo. mientras camina, dos únicos

circunstancias surgen una por una: la etapa de pie de dos pierna estáticamente estable en

el que el robot se realiza en ambos pies al mismo tiempo, y de un solo estáticamente débil

pierna etapa de pie cuando un solo pie del instrumento está en contacto con el

suelo, Por lo tanto, el método de movimiento cambia su estructura en un ciclo de paseo solitario

de una abierta a una cadena cinemática cerrada [43].

41
3.Integrating Robots experimentales

3.1 Robot Multifuncional Avanzado cuadrúpedo BEAGLEBONE Negro

Robots tienen una tendencia a hacer algunas o la totalidad de las funciones que se muestran en el presente documento: la recepción de

electrónica de programación, manejo de información o física reconocimientos

electrónicamente, trabajar de forma independiente, en cierta medida, dar vueltas, llevar a cabo su propia

partes físicas o procedimientos físicos, realizar y controlar su entorno, y

mostrar las actividades inteligentes [28,50]. La palabra robot puede aludir a ambos robots físicos

y los operadores virtuales de programación, pero es habitual en lugar de llamar a los segundos

como robots de [51]. Ellos pueden ser controlados a distancia, semi-autónomo o autónoma.

Internet está disponible en todas partes y asimismo tecnología de la información ha llegado

a todos los hogares y de manera nueva inteligencia es cada vez mayor entre las personas. Robot

tecnologías también, por igual, el ser humano se integran sentidos, las respuestas motoras y

por lo tanto debe poseer inteligencia. Además, los dispositivos destinados a la construcción de

robots también están mejorando rápidamente. Este pide un nuevo estudio de investigación en las industrias

y universidades [5].

3.1.1 Avances en la investigación robótica

servo control y planificación de trayectorias son importantes temas de investigación. Espacio,

submarina, y otros hábitats peligrosas (centrales nucleares) inevitablemente

necesaria robots y por lo tanto la capacidad de adaptación se convirtió en el punto focal de la investigación, de los cuales

el robot inteligente representa una clase típica. Cuando los lugares de trabajo duras como

, plantas de energía nuclear bajo el agua, la distancia espacio desconocido etc. invitados robots

con las manos abiertas, el conocimiento y la comprensión del entorno físico y

métodos para navegar por estos terrenos resultaron ser temas clave de investigación.

Cuadrúpedos máquinas robóticas se prefirió caminar bípedo humanoide

robots donde flexible de movimiento de caminar por medio de cuatro piernas convirtió en una necesidad para

robots se muevan rápidamente a través de entornos que tienen gran cantidad de pasos, tuberías, y

otros obstáculos encontrados con en condiciones extremas de trabajo, tales como la energía nuclear

42
plantas. contacto suave de los pies con tierra, bajar el par de torsión máximo, y

La reducción del consumo de energía fueron los difíciles problemas que enfrentan. estilo Animal

caminar fue copiado para robots con cuatro patas.

3.2 Avanzada Biped Bioloid robot humanoide

3.2.1 BEAGLEBONE Negro como 'Decidir y hacer cumplir Componente'

BEAGLEBONE Negro (BBB) ​es un comercial de 'decidir y hacer cumplir componente'

que está montado en un vehículo de cuatro patas con Lynx movimiento y conducido por él (cf.

Figura 5). Está equipado con varios sensores, tales como sensor de sonar, estafa Web,

GPS, etc. una inteligencia tan versátil que proporciona componente tiene, sin embargo, no

sido dotado con la prestación de montaje y en funcionamiento un humanoide bípedo

robot andante dinámica y esta deficiencia se cura en este trabajo de investigación.

A partir de entonces, este estudio de investigación se aprovecha de la pantalla de tan sólo

capacidad de este fortificó la acreditación y lo monta en la estructura de un mercado

robot humanoide disponible (después de la eliminación de este último propia menos eficiente decidir

y el componente de la aplicación) a través de la tecnología de ROS y el lenguaje Python

software basado. Esta es la primera de su tipo en la investigación de este contexto.

Figura 5: BEAGLEBONE Negro montado en un vehículo de cuatro patas

Fuente [52]

43
3.2.2 Características de Bioloid premium robot humanoide (BPHR)

El BPHR fabricado por la firma coreana Robotis se yergue entre ellos

especialmente con sus componentes estructurales. En el tipo humanoide hay tres

robots Bioloid a saber, de primera calidad, Gran Premio (GP) y los modelos de Darwin.

El kit comercial Bioloid es conveniente, seguro y también ampliable. Generalmente,

que están destinados para la construcción de un robot humanoide incluyendo una para la educación,

fines de entretenimiento, etc. BPHR incluye giroscopio / acelerómetro, DM, y

multi-canal inalámbrico controlador remoto expansible. Estos robots humanoides

han sido diseñados para ser totalmente modular. piel humanoide semitransparente

se utiliza.

Como control remoto robot humanoide BPHR puede caminar con mayor seguridad. Pero carece de

operación autónoma, si se desea un funcionamiento autónomo; controlador diferente

tiene que ser utilizado. El producto contiene una extensa biblioteca de movimiento. acelerómetro

sistema se encuentra que es activa durante la marcha y así los coeficientes necesitar ajustes.

Por lo tanto, se necesita el software para ser incluido para que pueda ser apagada y encendida.

Del mismo modo, se ha encontrado que si los sensores complicados, como una brújula o visión

sistema se tienen que incluir a continuación un controlador diferente tuvo que ser utilizado. El controlador

proporcionada en BPHR no está diseñado para una gran cantidad de toma de decisiones y para la inclusión

muchos sensores. Un robot humanoide autónomo requiere más de un procesador

o al menos uno que hace varios subprocesos. Muchos usuarios han evaluado la BPHR

para ser bueno en su clase de uso limitado. Wikipedia, la enciclopedia libre, en una escritura

arriba en Robótica Bioloid dice que el marco Bioloid es de esta forma similar a

las tormentas LEGO mente y conjuntos Vexplorer. Por lo tanto el componente estructural de

robot humanoide Bioloid es elegido para este estudio. Esto permite a los autónomos

capacidades del robot con la ayuda de la retroalimentación del acelerómetro y la

sensor IR. La adición de la capacidad Wi-Fi además ayuda en la mejora

de la actividad autónoma haciendo que el robot para ser controlado a distancia.

44
3.2.2.1 Componentes estructurales de BPHR

BPHR (Bioloid de Premium Humanoid Robot) tiene un marco de aluminio de peso ligero

que viene con servomotores dieciocho Dynamixel (ocho AX-12 motores para el

pecho, abdomen y la región a diez AX-18 motores para la cintura y por debajo de la zona),

los cuales son motores integrados con varias características, tales como la posición. La velocidad puede ser

controlado fácilmente con retroalimentación de la posición angular y la velocidad angular etc.

par de carga se puede configurar en el movimiento. Hay alrededor de 255 movimientos y cada

movimiento pueden manipularse adicionalmente mediante la adición de pasos en el software para cualquiera de los

movimientos específicos realizados por el usuario [53]. Los robots humanoides Bioloid son buenos

caminar, ya que los auto-ajustar la postura al caminar. El cableado es con la cadena de margarita

conexión y soporta muchas unidades Dynamixel con muy pocos recursos. Tres

Se proporcionan tipos de construcción de montaje. Además, otros tipos de montaje

son compatibles. La limitación es sin embargo los actuadores en el campo de nivel no lo hacen

apoyar un par suficiente y por lo tanto algunos de la pose no se puede completar en una

tipo de conjunto de [53].

3.2.2.2 Mejora de las capacidades de BPHR

Desde 2000, ha habido muchos retos en el desarrollo de robots que puede de manera segura

comparten espacios con gente común y proporcionar ayuda y tomar los servicios de atención.

La atención se ha centrado en la interacción humano-robot y la movilidad autónoma

[5]. Por lo tanto, existe la necesidad de hacer la BPHR tener control autónomo.

Los robots humanoides también deben ser orientado al servicio para el uso práctico. Por lo tanto,

debe ser capaz de conmutar entre diferentes modos de transporte, a saber. sobre el

superficie del agua, bajo el agua, el aire y el espacio lejano. La toma de decisiones y

hacer cumplir componente debe proporcionar a los robots humanoides Bioloid todos estos

capacidades. El control por voz es también una consideración importante para los robots humanoides

y así los micrófonos deben ser montados para el reconocimiento de voz a distancia.

45
3.2.3 Controlador de BPHR

3.2.3.1 Procesador

No hay ningún cerebro de computadora para la BPHR ya que sólo es un centro de enseñanza y

Entertainment One. Un robot humanoide destinado para asistir y cooperar con

los seres humanos deben poseer inteligencia y para este propósito al menos un único

computadora o el bloc de notas es esencial. El cerebro en la forma de procesador disponible en

BPHR sólo es un microcontrolador. BPHR tiene controlador CM-530 solamente, que tiene

las siguientes especificaciones:

• CPU: ATMEGA 2561

• I interna / dispositivo de O, 6 botones, Mic, sensor de temperatura y sensor de voltaje

• I / O dispositivo: I / O & 6 de 5P I / O para la instalación sensor analógico

Este microcontrolador tiene 64 pasadores que controlan individualmente una parte del robot,

tales como la parte determinante de entrada y de salida; y la cantidad de voltaje que se utiliza por el

robot. Esto puede tener acerca de 1 KB de memoria RAM y 4 GB de RAM 15KB contra

1000 GB y la memoria de un ordenador. Esto es absolutamente inadecuado para parecida a la humana

caminar y otras acciones.

3.2.3.2 controladores

Cerebelo del cerebro (controles y se correlaciona los movimientos de actuadores) es el

controlador CM-530 que lleva en su interior un ARM Cortex STM32F103RE

microcontrolador. Esto es bastante potente. Pero tiene que ser cambiado ya que no es

que tiene capacidad multifuncional con excepción de la capacidad de caminar bípedo humanoide.

3.2.3.3 Software

Sistema operativo (herramientas y biblioteca para el transporte y recogida de rutina

información) es haber mejorado mediante el uso de software C incrustado en lugar de la

RoboPlus, porque todas las partes del robot está programado individualmente por el

programador. Es capaz de multi-threading también. Se encapsula tres

46
componentes, a saber, el archivo de movimiento, archivo de tareas y administrar archivos. Estos tres archivos

implementar funcionalidades del robot, configurar la programación y configurar cada

actuador y otros accesorios en una interfaz fácil de usar. Además, estos

componentes separados la configuración de hardware y los parámetros de software

mecanismos de programación. Pero la comunicación de la acreditación es con el control remoto RC

controlador solamente.

Así, la posición global de la inteligencia proporcionando componente de la Bioloid

robot es insuficiente y por lo tanto se propone en este trabajo de investigación para reemplazarlo

con el componente de la acreditación de inteligencia que proporciona.

3.3 Sustitución de los Componentes Decidir y hacer cumplir

Los siguientes cambios se han hecho necesario y hecho para desarrollar el humanoide

robot en este estudio con el fin de sustituir el menos eficiente de decidir y hacer cumplir

(Inteligencia proporcionando) componentes de BPHR con el de la acreditación (después de

fortalecimiento y permite a este último posee caminar bípedo humanoide

capacidades también, además de su capacidad multifuncional).

Los cambios anteriores se muestran gráficamente en la Figura 6.

Tabla 1: Bioloid Robot lista de componentes de sustitución existente y

Hna Informe detallado Componentes existentes de Reemplazo de los componentes de


No. Bioloid, GB Robot la acreditación

1 UPC STM32F103 AM33588


2 Controlador CM530 Beagle Bone Negro
3 Control remoto RC100 Interfaz portátil
4 Software RoboPlus con C ++ ROS con Python
5 Wifi Zigbee Adaptador Wi-Fi
6 Cámara Cámara web

47
Figura 6: Partes esquemáticos de robot humanoide

Fuente [54]

Una colección de nodos y programas llamados roscore son los pre-requisitos de cualquier

sistema de ROS-basado. Tiene que haber un roscore en ejecución para que los nodos ROS a

comunicar [63]. buses de comunicación nombrados ROS Los temas se utilizan mientras

utilizando los módulos de ROS. Estos forman parte de anónimos de publicación / suscripción

semántica que a su vez-desacoplar la producción de información de su

consumo. En general, los nodos no son conscientes de las extremidades con la que

se están comunicando. Los nodos que están en busca de datos de suscribirse a la

temas relevantes, es decir, los nodos que generan datos publican a temas relevantes. Así,

no puede haber varios suscriptores y editores a un tema [64]. Un rqt_graph es

comúnmente utilizado como un plugin GUI para visualizar el gráfico de cálculo ROS [65].

48
4. Procedimiento y resultados experimentales

En este capítulo se analiza la estrategia de adaptación para mejorar la capacidad de la

Robotis hacer Bioloid robot humanoide mediante la sustitución de su CM530 incorporada

controlador con la de BEAGLEBONE Negro (BBB). Esto también describe el real

caminando rendimiento del robot con los resultados finales obtenidos.

4.1 Estrategia de adaptación

El controlador CM530 predeterminada dentro del robot Bioloid se sustituye con el BBB

controlador. Promover, de la acreditación multifuncional de decidir y hacer cumplir

capacidades de componentes se mejora a la capacidad de caminar dinámica similar a la humana que

No fue poseído por él antes.

El bípedo Robotis hacer BPHR se compone de los siguientes componentes:

yo. Dynamixel Motor (AX-12A)

ii. Gyro sensor / acelerómetro (MPU 6050)

iii. sensor de infrarrojos (IR)

iv. controlador CM530

En general, un robot humanoide caminando requiere ser configurado con una

controlador autónomo y un controlador principal. El controlador autónomo toma

cuidar de la gestión autónoma y las tareas de procesamiento de imágenes asociadas.

Tanto un ordenador y un microcontrolador se pueden utilizar como el controlador por encima o

se puede hacer uso de sólo un microcontrolador solo confiar en el desempeño

necesidades del robot. El controlador principal controla el controlador de movimiento que tiene

programas para la marcha y controla además un programa de acción especial (con la intención de

funciones de otros actuadores) escritas en un lenguaje de programación adecuado de guía,

como C, C ++ y Python.

La integridad de los requisitos básicos y fundamentales de diseño de un robot humanoide

la estrategia de adaptación se desarrolla. Decidir cum aplicación de componentes de BPHR

49
son reemplazados bajo esta estrategia con tales componentes de BBB después de que la mejora

para realizar a pie humanoide bípedo que no estaba allí antes. Esta

mejora fue posible usando ROS y Python. En BPHR, el CM530

controlador es la clave para gobernar todos los movimientos robóticos y el control de

los motores. La idea es reemplazar este controlador por defecto con un controlador diferente

que es fácilmente programable y puede hacer que el trabajo del robot más

eficiente. El decidir hacer valer los derechos de inteligencia cum proporcionar componentes de la acreditación

De mesa (incorporación del sistema operativo del robot (ROS) y Python bibliotecas y

caminando control) se implantan en el BPHR. Mientras lleva a cabo este proceso, el

componentes originales de toma de decisiones se eliminan de la BPHR. este nuevo

método se ha aplicado en este estudio tesis. Tal procedimiento de instalación

ha sido llevado a cabo por primera vez en este trabajo de tesis por lo que los investigadores

conocimiento va.

4.2 Montaje del robot humanoide revisada

La acreditación es un poderoso componente procesador-cum-inteligencia que puede ser proporcionando

utilizado en una estructura de robot humanoide con alteraciones necesarias hechas en este documento. los

plataforma estructural de la BPHR se construye con 2 piernas para proporcionar 12 grados

de libertad (GDL) utilizando 12 servos Dynamixel que están conectados a él. Todos

motores Dynamixel están vinculados en el patrón de cadena de margarita. Un lado de la primera servo es

vinculada con la fuente de alimentación de 12 V y el otro lado de la servo está vinculado con

el conector USB 2 Dynamixel. La interfaz completa de la BEAGLEBONE con

el robot se muestra en la Figura 7.

El robot de dos piernas se construye como se ha indicado, usando 12 servos resultantes en 12

Grados de libertad (GDL). USB2Dynamixel conector se utiliza para operar el

actuadores Dynamixel a través de la interfaz Wi-Fi de la acreditación. Posición de la

servos Dynamixel AX-12A se obtiene utilizando codificadores incorporadas. UNA

sensor Gyro / acelerómetro está montado en el robot, que apoya en el

50
equilibrar el robot. Este sensor acelerómetro actualiza sus parámetros

periódicamente [56]. se utiliza de infrarrojos (IR) sensor montado en el cuerpo superior del robot

para identificar objetos en frente del robot que impiden que se mueva adelante. Adicional

Las bibliotecas se añaden de ROS, lo que permite la acreditación para trabajar con una red Wi-Fi

adaptador.

Todos los motores servo Dynamixel se controlan mediante el programa de pitón. los

sensor acelerómetro fijado en el cuerpo de la ayuda robot para detectar la estabilidad de

el robot. Por lo tanto, controla el equilibrio para caminar por lo que no se derribe abajo.

Una red inalámbrica se usa para proporcionar comunicación entre el ordenador y

el robot.

4.3 Algoritmo de caminar dinámico del robot humanoide

Un examen detallado de muchos métodos diferentes para caminar y sus inconvenientes

así como sus análisis se realiza en el capítulo 2. Basado en esto, el algoritmo,

método de generación de trayectoria, y la Ruta del patrón adoptado en 2006 y 2007

era más atractiva y encontrado muy adecuado y deseable y por lo tanto en este

Figura 7: Componente de BEAGLEBONE Negro Robot

Fuente [55]

51
estudio, la estrategia de control caminar desarrollado en las referencias [45,46] se adoptan

y discutido en detalle en esta sección.

4.3.1 Caminar en evolución estable robot humanoide dinámico

Una imagen de Debian con la aplicación de índigo ROS está instalado en el hueso del beagle

Negro. Un módulo Wi-Fi está habilitada en la acreditación usando las bibliotecas necesarias y

repositorios que ayuda en la maniobra del robot libremente. Un Dynamixel2USB

conector es responsable de habilitar los actuadores dinámicos se conecta a través

interfaz Wi-Fi de la acreditación. Acelerómetro de los sensores están conectados a la serie

Reloj (SCA) y los datos en serie (SDA) pasadores, mientras que los (IR) sensores de infrarrojos se

conectado al convertidor analógico a digital (ADC) pines de la acreditación. Su

sensor detecta cualquier obstáculo en frente del robot y si hay algún obstáculo en frente

a continuación, se detendrá el movimiento adicional de la robot (véase la figura 8). Dynamixel

servos utilizan la comunicación serie.

Figura 8: Indicación de control Diagrama de flujo de movimiento del robot

52
La velocidad en baudios controlador por defecto es 1megabits por segundo (Mbps). ROS actúa como el

intermedio de comunicación entre el ordenador y el Negro BEAGLEBONE.

ROSCORE es lo primero que hay que ejecutar en un terminal cuando se utiliza ROS.

ROSRUN 13 y ROSNODE 14 debería funcionar en otros dos nuevos terminales.

El patrón de la marcha del robot es afinado por lo que el robot se mueve en pequeños pasos

mientras que el equilibrio en sí. La ubicación del centro de la pelvis y el tobillo visto desde

el plano sagital se exhibe en la Figura 9 y la Figura 10.

Cuando el robot no está en movimiento, tanto los pies yace en el suelo con firmeza. Sin embargo,

en el momento cuando el robot comienza a caminar, el robot está hecho para girar a la derecha

Figura 9: vista sagital de patrón de la marcha

Fuente [45]

Figura 10: Esquema de Control de Posición Landing

Fuente [46]

13 rosrun es una palabra clave que permite ejecutar directamente un nodo dentro de un paquete de ROS.

14 rosnode muestra información sobre los nodos de ROS.

53
lado para que se realice la pierna izquierda para levantar y posteriormente se trasladó hacia adelante y coloca

en el suelo. Durante este tiempo, la pierna derecha se inclina hacia el lado derecho de hacer

el centro de cambio de la gravedad y esto a su vez impide que el robot caiga. los

proceso se repite cuando se hace el robot para inclinar hacia el lado izquierdo por ser estable

y mantener su postura de manera que la pierna derecha se levanta y se mueve hacia adelante y en

De esta manera el robot se mueve por delante. Durante estos movimientos del robot, la

sensor acelerómetro desempeña un papel activo mediante la detección de la oscilación y el movimiento

a través de su eje X e Y. El sensor acelerómetro envía continuamente datos para

la acreditación y el ordenador de manera que los parámetros del sensor se actualizan periódicamente.

4.3.2 Análisis de estabilidad

Esta sección detalla el enfoque heurístico llevado a cabo para establecer los valores de los parámetros

para sensores individuales con el fin de evitar que el robot caiga. Cuando los parámetros

ir más allá de los límites prescritos inscritos en la ficha técnica de sensor acelerómetro

a continuación, el robot se hace para hacer pivotar al otro lado para contrarrestar el equilibrio y la

robot se impide por lo tanto de la caída. Cuando el robot se mueve hacia adelante, si el IR

los sensores detectan la presencia de un obstáculo, entonces el movimiento adicional del robot es

detenido. Este modelo dinámico se utiliza como un bloque de construcción para propulsar los servos

montado en la pierna, lo que resulta en un período swing-postura de las piernas para

el movimiento adicional [57]. Estos parámetros se han obtenido usando una heurística

enfoque y luego estos valores se establecen como factores limitantes para los sensores en el

software.

El software RoboPlus del BPHR es un software basado en la forma de símbolos en lenguaje C

significó para la programación sencilla y el movimiento gestión y comportamientos. El presente

trabajo reemplaza el software RoboPlus con guiones ROS y Python para flexibles

control del robot autónomo. El código completo se utiliza para controlar el robot

En el presente trabajo se detalla en el Apéndice A.

54
4.4 El diseño y las conexiones de los componentes para el patrón de la marcha deseada

4.4.1 La configuración de la acreditación

La acreditación viene pre-instalado una imagen de Debian, que necesita estar con

actualizado antes de la configuración. Una instalación nueva de la imagen Debian es

También se sugiere que la imagen preinstalada tiene problemas de estabilidad. A Debian 7.5

versión está instalada en el eMMC (embebido Controlador Multi-Media). Esta

versión es estable y es configurable a la exigencia de la tarea (cf. Figura 11

y la Figura 12).

4.4.2 Dynamixel AX-12A servo actuadores

Los actuadores Dynamixel AX-12A servo se utilizan ya que se consideran a

ser los actuadores más avanzadas disponibles. Estos tienen la capacidad de realizar un seguimiento de su velocidad,

tensión, la temperatura, la posición del eje y la carga. Todos los servos individuales pueden ser

visitada independientemente para controlar su velocidad y sus posiciones. La posición

y los sensores son manejados por una función de los microcontroladores (cf. Figura del servo

12).

Figura 11 : Figura que muestra los motores BBB, AX-12A, conector USB2Dynamixel, Wi-Fi Adaptador, Sensor IR y el sensor Gyro + acelerómetro
utilizado en el experimento.

55
4.4.3 conector USB2dynamixel

Este es un dispositivo indispensable que se requiere para conectar el Dynamixel

Los motores a la PC. Se conecta a un puerto USB del PC a los motores Dynamixel

a través de su puerto de conexión 3p. Utiliza la lógica transistor-transistor (TTL) 15 red

para este trabajo (cf. Figura 11 y la Figura 12).

4.4.4 Sensor infrarojo

Infrarrojos (IR) GP2Y0A41SK0F sensor se utiliza en este trabajo para obstáculo

detección. Esto se logra mediante la transmisión y recepción de una señal de infrarrojos.

Esta señal es emitida por el emisor de señal en el sensor que atraviesa de nuevo a

el receptor después de ser recuperado por la superficie de la obstáculo (cf. Figura 12).

4.4.5 acelerómetro

El acelerómetro se utiliza aquí es la MPU-6050 + Acelerómetro Gyro. Eso

determina la aceleración. Aunque un acelerómetro de tres ejes pudo identificar

la orientación horizontal / vertical de una plataforma (aquí esto se hace para que el robot) parientes hasta el

la superficie de la tierra (cf. Figura 12).

4.4.6 Wi-Fi Adapter

Un adaptador Wi-Fi (Lógica) con un concentrador Wi-Fi Adviento (HB212) USB se utiliza para

la conexión inalámbrica para la comunicación con la BBB (cf. Figura 12).

4.5 Caminar procedimiento del robot

Hay un total de 12 servomotores Dynamixel-AX12A utilizada para hacer la

robot lograr la capacidad de caminar deseado. Los motores están numeradas de M7 a

M18. Para proporcionar la capacidad de movimiento en la posición de tobillo de los motores del robot

15 lógica transistor-transistor (TTL) es una clase de circuitos digitales construidos a partir de los transistores bipolares de unión (BJTs) y resistencias.

56
M15 y M17 ayudan a la pierna derecha y los motores M16 y M18 ayudan a la pierna izquierda

movimiento. M13 y M14 sirven como los motores de movimiento de la rodilla izquierda y de la derecha

Figura 12 : Posiciones real del motor que muestran (a) vista posterior (b) Vista anterior.

Figura 13 : Las conexiones físicas de la USB2Dynamixel con el BBB

57
la rodilla, respectivamente. Hay tres motores cada uno en cada posición de la cadera asistir en

el movimiento resultante. Estos son M7, M9 y M11 a la derecha y M8, M10

y M12 en la izquierda del robot (véase la Figura 13 y la Figura 14).

Los motores M7 y M8 en la posición de la cadera son los motores de orientación. M9, M10,

M17 y M18 son los motores PITCH donde, M9 y M10 están en la cadera y M17

y M18 están en el tobillo. M11, M12, M13, M14, M15 y M16 son ROLLO

motores. M11 y M12 están en la posición de la cadera, M13 y M14 son los motores de rodilla

y M15 y M16 están en los tobillos (cf. Figura 13 y Figura 14)

4.6 Caminar estrategia del robot

Cuando se da la ROSRUN comando inicial para el movimiento del robot

entonces hay dos opciones para la velocidad del pie del robot es decir, lenta y

Figura 14 : Partes esquemáticos de robot humanoide que muestran las posiciones del motor para motores de guiñada, cabeceo y balanceo.

58
normal. Se requiere para proporcionar una entrada como 1 (lento) o 2 (normal) para obtener más

movimiento del robot.

En el primer paso, todos los motores asociados con el movimiento de caminar

del robot se ajustan a la posición predeterminada de reposo (véase el Apéndice A). Esto es

la posición de parada del robot. Todos los cuatro motores de paso y entran en acción

hacer que el robot se apoyan en su lado izquierdo. El ángulo al que el robot se inclina se rige

por la realimentación desde el sensor de acelerómetro. Este ángulo es de 20 grados. Si el

robot inclina más allá de 25 grados (margen teniendo en cuenta la inexactitud del sensor en

determinar el grado exacto), entonces sería volver a su posición de punto muerto y

se detiene el movimiento adicional. Después de que se apoye correctamente a 20 grados, otro motor

M10 entra en acción. Este motor M10 vuelve a la posición inicial por defecto

lo que permite al robot para levantar la pierna derecha. A continuación, el motor M11 balancea

hacia adelante y el motor M13 lleva la rodilla hacia abajo. El sensor IR continuamente

comprueba el obstáculo delante. Si se detecta un obstáculo alrededor de 35 cm, entonces la

robot se detiene el movimiento adicional y llega a su posición de punto muerto.

En el segundo paso, todos los motores de paso hacer que el robot se apoye en el lado derecho

y el motor M9 viene a su posición inicial predeterminada permitiendo así que el robot

para levantar su pata izquierda. Motor M13 se hace para llegar a su posición predeterminada de manera que la

conjunto del robot se adelanta. Motor M12 balancea la pierna hacia adelante y el

motor M14 lleva la rodilla hacia abajo. Esto marca la finalización de la segunda etapa.

En el tercer paso, todos los motores de paso hacer que el robot se apoye en el lado izquierdo y

el motor M10 viene a su posición inicial por defecto que permite al robot para levantar su

pierna derecha. Motor M14 se hace para llegar a su posición predeterminada de manera que el conjunto de

el robot viene hacia adelante. Motor M11 balancea la pierna hacia adelante y el motor M13

trae la pierna abajo, completando el paso tres.

Las etapas dos y tres se repiten en sucesión de modo que el robot continúa su

movimiento hacia adelante bípeda. Una verificación también se hace continuamente para ver que el robot

59
está en una posición estable. Esto hace que sea para no caer, si los parámetros son más

de los límites prescritos inscritas en el sensor. El ángulo al que el robot

inclina se rige por la realimentación del sensor de acelerómetro, que es 20

grados. Si el robot se inclina más allá de 25 grados, entonces sería volver a su

posición de parada y se detiene el movimiento adicional. Cuando el robot se mueve hacia adelante,

los sensores de infrarrojos detectan obstáculos en frente del robot. Si se detecta un obstáculo para

esté presente en alrededor de 35 cm, a continuación, el robot deja de moverse más allá y llega a su

posición de punto muerto. Este modelo dinámico se puede utilizar, como un bloque de construcción, a

accionar los motores en las piernas y las articulaciones por un período swing-postura de las piernas para su

el movimiento adicional. La velocidad máxima a pie del robot es de 0,5 pies / segundo.

Más allá de este límite el robot se vuelve inestable y se cae. Resbaladizo o desigual

superficies también afecta el robot y la estabilidad. El gráfico rqt para las conexiones

durante el pie del robot se muestra en la Figura 15.

Figura 15 : El gráfico rqt de las conexiones durante el pie del robot.

60
5. Conclusiones y direcciones futuras

Una de las inspiraciones de conducción de la gama operativa de la robótica humanoide

es crear robots que se adapten mejor a las situaciones destinados a las personas y que

estos robots son aptos para entremezcla informal con la gente [33]. Robotis hacer

Bioloid premium robot humanoide (BPHR) es un robot humanoide bípedo

capaz de funciones simples que imitan los seres humanos. Este robot de decidir y

la aplicación de componentes que proporcionan la inteligencia sólo puede llevar a cabo, como se ha dicho, sencillo

funciones en los hogares, hospitales, etc. Esta inteligencia proporcionando componente es

eliminado, reteniendo sólo sus componentes estructurales, es decir, el manipulador, End-

efector y actuadores. En este cuerpo estructural, el multifuncional y decidir

ejecutante, es decir, la inteligencia proporcionando componente de BEAGLEBONE Negro (BBB) ​es

bebido. Por lo tanto, este robot humanoide posee tanto la estabilidad dinámica bipedal

la capacidad de caminar, así como las múltiples funciones avanzadas de máquinas robóticas

como la acreditación.

La capacidad de caminar dinámico y estable de dos patas se incorpora en el

La acreditación para el desarrollo de una forma de andar con la capacidad de evasión de obstáculos

código algorítmico a través del uso de ROS y lenguaje Python.

Por lo tanto, en esta tesis cuatro logros de investigación muy importantes han sido

adquirido. La primera es, el desarrollo de un método para combinar los dos diferentes

componentes de dos robots fácilmente disponibles en el mercado. El manipulador, End-

efector y actuadores de BPHR fueron seleccionados como una estructura robótica estándar. Esta

decidir y hacer cumplir los componentes del robot fue eliminado, ya que sólo tenía bípedo

capacidad y sencilla (sin otras funciones avanzadas)-humanos como caminar.

Dentro de esta estructura, el altamente avanzado y multifuncional y decidir

componente de la aplicación de la acreditación se instaló después vitalizante con apariencia humana

la capacidad de usar software ROS con la escritura y las bibliotecas de Python caminar. acreditación hizo

no poseen el poder caminar similar a la humana bípeda anteriormente. Por lo tanto, este nuevo

61
robot humanoide posee todas las funciones que se desean en una última clase humanoide

robot. capacidad de caminar bípeda ha sido adquirida por los seres humanos sobre la toma de tiempo

humana de pie delante entre las diversas formas de vida. Estas capacidades cuando se promulgaron

por los robots hará más parecida a la humana y proporcionará una posición superior

a otros en comparación con los otros robots del aparato locomotor con el tiempo.

El segundo logro importante es la capacidad de caminar bípedo que se embebe

a este nuevo robot humanoide híbrida usando bibliotecas y caminar ROS y Python

códigos algorítmicos y los controles por primera vez en este estudio de investigación.

El tercer resultado importante de este estudio de investigación está haciendo el humanoide híbrido

robot desarrollado en este estudio se hace para poseer el control autónomo de su

caminando comportamiento. Para este propósito, el humanoide híbrido es Wi-Fi

la incorporación de bibliotecas adecuadas y necesarias. El robot es capaz de realizar

un movimiento bípedo sin caer hacia abajo y también obtener la retroalimentación de la

sensor IR para y obstáculo delante.

El cuarto logro importante es que se hace este robot humanoide híbrido

capaz de evitar obstáculos mediante la instalación de sensor IR es decir, el robot se detiene cuando

detecta el obstáculo delante de él e incluida en los ROS adecuados de software

bibliotecas.

Sin embargo, esta tesis se detalla la capacidad de caminar del nuevo robot solo, mientras

sus otras capacidades multifuncionales no se han puesto a prueba o verificado. Pero,

muchos sensores avanzados y potencia de procesamiento altamente calificado como imagen

procesamiento se ha incluido que permite un mayor estudio. El procesamiento de imágenes adoptó

en un futuro estudio puede incluir el hallazgo de un artículo por un robot que es una obra

realizado en el marco de visión artificial. En vista de la intención de copiar el ser humano

capacidad de visión, un marco de visión de la PC utiliza componentes electrónicos y cálculos

de manera similar los ojos y la mente humana realiza. El ordenador de código abierto

Visión Biblioteca (OpenCV) es las bibliotecas de programas más utilizados como una parte de

62
robótica de aviso, rastrear y reconocer la escena capturado por los sensores de imagen.

OpenCV es un programa en lenguaje Python que tiene numerosas bibliotecas para PC

visiones sueños destinados a investigar, preparar y comprender los elementos de

grabaciones y fotografías destinados a entregar los datos.

Dinámico y estable caminar bípedo robot humanoide es la prima donna de la

la investigación y la industria ahora robot. Actuales robots humanoides bípedos tienen la

la capacidad única de caminar y actuar en los hogares, hospitales, y el servicio de compañero humano

centros [5]. Este problema se está abordando en este proyecto de investigación, por primera vez

mediante la fusión de dos robots disponibles en el mercado diferentes que poseen y

competentemente satisfacer todos los requisitos anteriores juntos.

Las orientaciones futuras del presente trabajo se dan de alta a continuación:

• OpenCV, una biblioteca de código abierto de procesamiento de imágenes, junto con una red

la cámara se puede añadir para mejorar la prevención y caminar obstáculo

capacidades del robot humanoide.

• El software de reconocimiento de voz - PocketSphinx dieciséis[ 58], se pueden añadir y este

aumentaría la capacidad de respuesta del robot humanoide desarrollado aquí.

publicaciones:

• Ganesh KK, Z. Yang, V. Gandhi, T. Geng, “ ROS basado control autónomo de un robot
humanoide ”, Conferencia Internacional de Redes Neuronales Artificiales y Aprendizaje
Automático - ICANN, 6-9 de septiembre el 2016.

• Ganesh KK, V. Gandhi, Z. Yang, T. Geng, “Uso del sistema de robot de accionamiento (ROS) y
la placa única computadora para controlar Bioloid robot de movimiento”, octavo Hacia Sistemas
robóticos Conferencia Autónoma (TAROS), 19-21 de julio de 2017. (Presentado)

dieciséis PocketSphinx es una sencilla instalación de reconocimiento de voz, sobre todo hecha adecuado para dispositivos de mano y teléfonos celulares, por otra parte funciona

igualmente bien en el escritorio también.

63
Referencias

1. “Robótica - Definición de la robótica en Inglés | Diccionario Oxford”[en línea]. Disponible: https://en.oxforddictio


.

2. A. Takanishi, Y. Ogura, y K. Itoh, “Algunas cuestiones robot humanoide en el diseño”, Springer


Tracts in Advanced Robotics Robotics Research, pp. 357-
372.

3. A. Gandhi, “Principios básicos de la robótica,” Principios básicos de la robótica, 2013. [En línea]. Disponible:

http://www.slideshare.net/ameyagandhi/basics-of-robotics.

4. R. Jarvis: Robótica Inteligente: pasado, presente y futuro. IJCSA 5 (3): 23-35 (2008)

5. M. Koga, Y. Hosoda y T. Moriya, 'robots humanoides', [Online]


www.hitachi.com/ICSFiles/afieldfile/2009/09/14/r 2009_04

6. RC Arkin, robótica basada en el comportamiento. Cambridge, MA: MIT Press, 1998. ISBN 0-262-01165-4.

7. JY Kim, III-Woo Park y Jun-Ho Oh, 'Diseño y Ruta de control del robot humanoide
KHR-2', ICCAS2004, Agosto 25-27, el Shangri-La Hotel, Bangkok, Tailandia.

8. Abrir CV, [en línea]. http://opencv.org/

9. Direct Show, Microsoft Windows [En línea].


https://msdn.microsoft.com/enus/library/windows/desktop/dd375454(v=vs.
85) .aspx

10. “¿Es Arduino adecuado para ser un controlador de robot humanoide?” Microcontrolador.

[En línea]. http://electronics.stackexchange.com/questions/4163/is-arduinosuitable-to-be-a-humanoid-robot-co


.

11. RE. Paramkusam, experto en robótica, 'Lo-CPU-es-suficiente-para-correr-a-


humanoide-robot' Preguntas y Respuestas - Escrito 26 de Jul de 2015.

64
12. T. Foote el 15 de abril, 2.015 mil 10:55 AM, “Visualizador de robots delta utilizando ROS y EtherCAT,”
- ROS robótica noticias. [En línea]. Disponible:
http://www.ros.org/news/2015/04/visualizer-of-delta-robots-using-ros-andethercat.html.

13. “Software NAO 1.14.5,” documentación de Python SDK SDK -. [En línea].
Disponible: http://doc.aldebaran.com/1-14/dev/sdk.html.

14. K. Hirai, M. Hirose, Y. Haikawa, y T. Takenaka, “el desarrollo de Honda Humanoid Robot”,
en Proc. IEEE Int. Conf. en robótica y automatizaciones, pp.1321-1326, 1998.

15. H. Lim, Y. Kaneshima y A. Takanishi. generación de patrón de la marcha en línea para robot
humanoide bípedo con el tronco. Actas de la Conferencia Internacional IEEE de Robótica y
Automatización, pp.3111-3116, 2002.

dieciséis. S. Kagami, K. Nishiwaki, JJ Kuffner, Y. Kuniyoshi, M. Inaba y H. Inoue, 2002. visión en línea 3D, la
planificación de movimiento y sistema de acoplamiento de control de locomoción bípedo de robot
humanoide: H7.

17. D. Wollherr, “ Aspectos de control de robots humanoides diseño que camina y, ”


Tesis (Dr. -Ing) Universidad .Technical de Munich, 2002.

18. J. Camilo 'sensores de carga aumentan la sensibilidad de robot humanoide', [en línea] 2 abril de 2015. http://www.asse

19. T. Harris. '¿Cómo actúan los robots', HowStuffWorks.com. [En línea] 16 de octubre de

2016. http://www.howstuffworks.com/hsw-contact.htm

20. “Mejor microcontrolador para mí utilizar ?,” Vamos a hacer que los robots !, 04-Ago-2010.

[En línea]. Disponible: http://letsmakerobots.com/node/40140.

21. “Controladores de motor,” Robots SuperDroid - página de inicio. [En línea].


http://www.superdroidrobots.com/shop/custom.aspx/motor-controllers/60/.

sesenta y cinco
22. 'Definir sistema operativo. ¿Cuáles son las funciones y tipos de operación
sistemas, [en línea], 09 de enero de 2010.

http://www.enotes.com/homework-help/define-operating-system-writedown-function-types-128847

23. K. Jackie. "Propuesta para la aplicación de sistemas de tiempo real en ROS 2". [En línea]; http://design.ros2.org/artic

24. A. Martínez, E. Fernández, A. Romero, y E. Fernández, aprendizaje ROS para la programación


robótica: Una guía práctica, instructiva y completa para presentarse a ROS, la primera
categoría, lo que lleva marco de la robótica. Birmingham: Packt Publishing, 2013.

25. C. Ling, "Robot del sistema operativo básico Tutorial ROS", Escuela de Verano, la Universidad de Shanghai, 23

de julio de 2015.

26. "Conceptos básicos | Erle Robótica Docs", Docs.erlerobotics.com, 2016.


[En línea]. http://docs.erlerobotics.com/robot_operating_system/ros/basic_co ncepts .

27. M. Quigley, B. Gerkey, K. Conley, J. Faust, T. Foote, J. Leibs, E.Berger, R. Wheeler, y A. Ng,
“ROS: Un sistema operativo robot de código abierto,” en Proc. ICRA Taller de software de
fuente abierta, 2009.

28. NV Patel, 'Sistema operativo del robot es el futuro del software para dispositivos Autónomas', [en línea];
19 de de enero de, el año 2016
https://www.inverse.com/article/10346-robot-operating-system-is-thefuture-of-software-for-autonomous-devic

29. KP Berthold Horn, 'Robot Vision', MIT Press ISBN 0-262-08159-8

30. M. Brady, JM Hollerbach, T. Johnson, T. Lozano-Pérez y M. Mason, 'Robot Movimiento:


Planificación y Control', MIT Press, ISBN 0-262-12182-X.

31. JJ Craig, 'Introducción a la robótica: Mecánica y Control', adición Wesley, ISBN


0-201-09528-9.

66
32. K. Seungsu, K. ChangHwan-Kim, Y. Bumjae, y O. Sangrok, 'Motion generación estable de todo el
cuerpo para los robots humanoides de imitar mociones Humanos', 2009 IEEE / RSJ
International.

33. S. Wehner, M. Bennewitz, Optimización de la marcha de un robot humanoide

Hacia la marcha humana-como, en 4ª Conferencia Europea sobre Mobile

Robots, Mlini / Dubrovnik, Croacia. 2009

34. A. Shahriara y T. Sariel, 'un sistema de dirección diferencial para Humanoid

Robots, del Reglamento de concentraciones, 2011.

35. B. Goodwine y J. Burdick, 'de la marcha Controlabilidad para Robots patas',

Robótica y Automatización, 1998.

36. L. Sung-Hee y A. Goswami, 'A Controller equilibrio basado-Momentum para

Los robots humanoides en tierra no estacionario para no nivel y', Autónoma

Robots, 2012 - Springer

37. MJ Gielniak, CK Liu y AI Thomaz, 'Movimiento Generación similar a la humana

Para los robots', La Revista Internacional de Investigación en Robótica, 2013.

38. A. Ude, Christopher G, Atkeson y M. Riley, 'Programación de cuerpo completo

Movimientos de los robots humanoides de observación', Robótica y

sistemas autónomos, 2004 - Elsevier

39. M. Do, D. Gehrig, H. Kohne, P. Azad, P. Pastor, T. Asfour, 'Transferencia de

Movimientos humanos a los robots humanoides, los robots humanoides, 2008, octavo

Conferencia Internacional IEEE-RAS.

67
40. Y. Davidor. Algoritmos genéticos y Robótica: Algoritmos genéticos y

Robótica - Una estrategia heurística para el optimismo. World Scientific Pub Co,

1991.

41. T. Arakawa y T. Fukuda. movimiento generación de trayectoria natural de bípedo

robot de la locomoción utilizando el algoritmo genético a través de la optimización de la energía. En

Sistemas, el hombre y la cibernética, 1996. Conferencia Internacional IEEE sobre,

volumen 2, páginas 1495 -1500, oct 1996.

42. D. Schreiner y C. Punzengruber, 'Controladores Parametrización de movimiento de

Los robots humanoides de la evolución', INFORMATIK 2011 - Informatik Schafft

comunidades

43. M. Vukobratovic, New Frontiers en Robótica: Volumen 2 Dinámica y

Control Robusto de Interacción Robot-Medio Ambiente, Instituto Fraunhofer de

Sistemas de Producción y Tecnología Diseño IPK, Berlín, Alemania, - 2009

44. K. Jung-YUP, P. ILL-Woo y O. JUN' realización experimental de

caminar dinámico del robot humanoide bípedo KHR-2 usando momento cero

retroalimentación punto y de medición inercial', robótica avanzada, Vol. 20, No.

6, pp. 707-736 (2006)

45. W. Park, JY Kim, JH Oh, 'Línea bípedo caminar generación de patrones de

humanoide Robot KHR-3 (KAIST Humanoid Robot-3,

IEEE, humanoides, 2006

46. JY Kim, IW Park y JH Oh, 'Walking algoritmo de control de Biped

Robot humanoide en suelos irregulares e inclinado, Journal of Intelligent y

Ribotic Systems, abril de 2007, Volumen 48, Número 4, pp 457-484

68
47. T. Lozano-Pérez y MA Wesley, (1979) un algoritmo para Planificación

Caminos-colisión libres entre Obstáculos poliédricos. Commun. ACM 22 (10):

560-570

48. S. MLaValle, y JJ Kuffner. (2001) con rapidez-explorar árboles al azar:

Avances y perspectivas. En BR Donald, KM Lynch, y D. Rus,

editores, algorítmica y Computacional Robótica: New Directions, páginas

293--308. AK Peters, Wellesley, MA,

49. RA Jarvis. (1994) sobre la distancia Transformar trazado basado en colisión-Libre

La planificación de la navegación del robot en conocidos, desconocidos y distintos intervalos de tiempo

Ambientes, capítulo puestas a la venta un libro titulado 'Advanced Mobile

Robots' editado por el profesor Yuan Zang F. Editorial Científico Mundial

Co. Pty. Lt, pp. 3-31.

50. G. Hoy, 'Robots podría causar economía australiana 5 millones de puestos de trabajo, los expertos advierten, ya que

las empresas buscan reducir puestos de trabajo', de ABC News, Australian Broadcasting Corporation, Obtenido 29

de mayo de 2014

51. Telecom glosario “bot” Alianza para soluciones de telecomunicaciones, 2001-


02-28 Archivado desde el original 2007-02-02, Consultado el 2007-09-05

52. R. Grimmett, 'Mastering Beagle Bone Robotics', PACKT Publishing, Mumbai, 2014

53. H. Ayala, Y. Fu, y J. Fu, 'Un estudio intial de Bioloid robot humanoide y más allá', Conferencia
Internacional sobre Fronteras en la educación, CS y CE | FECS '! 5 | pp17-23.

54. “Robot premium Bioloid Equipo - RobotShop “. [En línea].

http://www.robotshop.com/en/robotis-bioloid-premium-robot-kit.html

55. Michael G., S. Alexey “Bioloid Proyecto Robot”, invierno 2012-2013.

69
56. GK Kalyani, Z. Yang y V. Gandhi, 'Una estructura robot humanoide basado ROS para el
control autónomo', Programa Científico de la ICANN 2016, BarcelonaTech, Universitat
Polit`ecnica de Catalunya Edifici V`ertex, Septiembre 6-9, 2016

57. Z. Yang, 'Control Dinámico de la pierna Caminar conjunta: Un bloque Modelo perspectiva', ICNC
2011, pp 359-463

58. "CMU Sphinx / pocketsphinx", GitHub, 2016. [En línea]. Disponible:

https://github.com/cmusphinx/pocketsphinx. [Consulta: 13- Nov- 2016].

59. JJ Jr. Kuffner y SM Lavalle 'RRT-Connect: un enfoque eficiente para

Solo en consultas de planificación de trayectoria', Conferencia Internacional de Robótica y

Automatización, San Francisco, CA, abril de 2000, pp 995 a 1.001.

60. AA Sistema de control biológico inspirado IA Sulistijono' para Saputra y

3-D Locomotion de un humanoide Biped Robot', IEEE Transactions on Systems,

Man, y la cibernética: Systems, vol. 46, no. 7, julio de 2016, pp 898-911.

61. Z. Yu y Zhang W., 'planificación de la marcha de paseo omnidireccional en inclinados

terreno para robots bípedos, IEEE Transactions on Systems, hombre y

La cibernética, Vol. 46, No. 7, julio de 2016, pp 888-897.

62. K. Chang, C. Koh, y CS George Lee, 'Un diseño automático de los factores de

un sistema de estimación humana-plantear el uso de redes neuronales, IEEE Transactions

sobre sistemas, el hombre y la cibernética: Systems, Vol. 46, No. 7, julio de 2016, pp 875

- 887.

63. ROSCORE. [En línea]. Disponible: http://wiki.ros.org/roscore, [Consulta: oct

2016]

70
64. TEMA ROS [En línea]. Disponible: http://wiki.ros.org/Topics, [Consulta: oct

2016].

sesenta y cinco. Rqt_graph. [En línea]. Disponible: http://wiki.ros.org/rqt_graph, [Consulta:

De noviembre de 2016].

71
APÉNDICE A

Caminar dinámico - ALGORITMO Y CÓDIGO

# ! / Usr / bin / env python

importar OS
importar giroscopio
importar Dynamixel
importar sys
importar subproceso
importar optparse
importar yaml
importar hora
importar de serie
importar Rospy
importar Adafruit_BBIO.ADC como ADC
desde std_msgs.msg importar Cuerda

impresión "Seleccione opciones "


userinput = raw_input ( "1.Slow \ n2.Normal Walk \ nIntroduzca Elección:" )

Si userinput == '1' :
DLY = 1
spd = 5

elif userinput == '2' :


DLY = 0,3 spd
= 700

más :
impresión "Entrada no válido!"
sys.exit ()

dynid = ""
d3 = ""
d7 = ""
d8 = ""
d9 = ""
d10 = ""
d11 = ""
d12 = ""
d14 = ""
d15 = ""
d16 = ""
d17 = ""
d18 = ""

myActuators = list ()

def read_adc ():


ADC.setup ()
value = ADC.read_raw ( "P9_35" ) Valores = valor / 1000

impresión valores
regreso valores

def read_lean ():

72
xValue, yValue = gyro.movement ()
regreso xValue, yValue

def default_Positions ():


global d3, D7, D8, D9, D10, D11, D12, D14, D15, D16, D17, D18, myActuators d7.goal_position = 362 # 352

d8.goal_position = 672 d3.goal_position =


512 d9.goal_position = 512 d10.goal_position
= 512 d11.goal_position = 512
d12.goal_position = 512 d14.goal_position =
512 d15.goal_position = 512
d16.goal_position = 512 d17.goal_position =
512 d18.goal_position = 512

impresión "Posición inicial en el sensor"

def ajustes principales):


global d3, D7, D8, D9, D10, D11, D12, D14, D15, D16, D17, D18, myActuators loop = 1

# Establecer una conexión serie a la red Dynamixel.


# Esto por lo general requiere un USB2Dynamixel
= de serie
dynamixel.SerialStream (puerto = ajustes de [ 'Puerto' ], velocidad en baudios = ajustes [ 'BaudRate' ], Timeout = 10)

# Crear una instancia de nuestro objeto de red


neto = dynamixel.DynamixelNetwork (serie)

pub = rospy.Publisher ( 'robot' , String, QUEUE_SIZE = 10) rospy.init_node ( 'Walk_sensor' , Anónimo = False, log_level = rospy.INFO,

disable_signals = True)

# Poblar nuestra red con objetos Dynamixel


para servoId en los ajustes [ '' servoIds ]:
newDynamixel = dynamixel.Dynamixel (servoId, neto) net._dynamixel_map [servoId] =
newDynamixel pub.publish (rospy.get_time)

si no net.get_dynamixels ():
impresión 'No hay Dynamixels encontrado!'
sys.exit (0)
más :
impresión "...Hecho"

para dyn en net.get_dynamixels ():


myActuators.append (neto [dyn.id])

para solenoide en myActuators: # Configurar los servos con Initial


# dynid = str (actuador) .split (" ") [1]
actuator.moving_speed = 100 actuator.torque_enable =
True actuator.synchronized = True actuator.torque_limit
= 1,000 actuator.max_torque = 1000

d3 = myActuators [0]

73
d7 = myActuators [1] d8 = myActuators
[2] d9 = myActuators [3] d10 =
myActuators [4] d11 = myActuators [5]
d12 = myActuators [6] d14 = myActuators
[7] d15 = myActuators [8] d16 =
myActuators [9] D17 = myActuators [10]
d18 = myActuators [11]

d7.goal_position = 362 # 352


d8.goal_position = 672 d3.goal_position =
512 d9.goal_position = 512 d10.goal_position
= 512 d11.goal_position = 512
d12.goal_position = 512 d14.goal_position =
512 d15.goal_position = 512
d16.goal_position = 512 d17.goal_position =
512 d18.goal_position = 512

impresión "Posición inicial"


net.synchronize () # Enviar todos los comandos a los servos.
# time.sleep (4)
# para servoId en entornos [ 'servoIds']:
# print "Posición actual de "+ str (servoId) +":
", Net.read_register (int (servoId), 36,2)
time.sleep (1) right_initial time.sleep
(neto) (0,5)

impresión "----------------------------------------------Inicial-- Terminado---------------------"

'Time.sleep' 'time.sleep (2)


d11.goal_position = 532 net.synchronize ()
(2)

d11.goal_position = 512 net.synchronize ()


time.sleep (2)

d11.goal_position = 492 net.synchronize ()


time.sleep (2) '''

mientras Cierto:
time.sleep la izquierda (neto)
(RET)
Si read_adc () <0,5: descanso

derecho time.sleep (neto)


(RET)
Si read_adc () <0,5: descanso
bucle + = 1
impresión "----------------------------------------------lazo-- --------
- - - - - - - - - - - " + Str (circular)
default_Positions () net.synchronize ()

74
def right_initial (neto):
global DLY, SPD
global d3, D7, D8, D9, D10, D11, D12, D14, D15, D16, D17, D18

d9.goal_position = 462 # Paso 1 IZQUIERDA lado pobre


d10.goal_position = 462 d17.goal_position =
462 d18.goal_position = 462

impresión "Paso 1 hecho de espera" + Str (DLY) net.synchronize ()


# Enviar todos los comandos a los servos.

time.sleep (DLY) time.sleep


(DLY)
x, y = read_lean ()
impresión x, y

d9.goal_position = 422 # Paso 2 RIGHT LEG


LEVANTAR

d18.goal_position = 422 d10.goal_position =


512
impresión "Paso 2 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d12.goal_position = 512 # Paso 3 Mueva FRONT


d14.goal_position = 512
impresión "Paso 3 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d11.goal_position = 432 # Paso 4 balanceo de la pierna


impresión "Paso 4 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d3.goal_position = 442 # Paso 5 rodilla hacia abajo


impresión "Paso 5 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d9.goal_position = 462 # Paso POSICIÓN 6 REST


d10.goal_position = 462 d17.goal_position =
462 d18.goal_position = 462

impresión "Paso 6 hecho de espera" + Str (DLY) net.synchronize ()


# Enviar todos los comandos a los servos.
time.sleep (DLY)
# para servoId en entornos [ 'servoIds']:
# print "Posición actual de "+ str (servoId) +":
", Net.read_register (int (servoId), 36,2)

# ===================== first_step ============================ ============ #

def la izquierda (neto):


global DLY, SPD
global d3, D7, D8, D9, D10, D11, D12, D14, D15, D16, D17, D18

75
d9.goal_position = 572 # 572 # Paso 1 LADO DERECHO
APOYARSE

d10.goal_position = 572 # 572


d17.goal_position = 572 # 572
d18.goal_position = 572 # 572
# d15.goal_position = 492
impresión "Paso 1 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY) time.sleep


(DLY) time.sleep (DLY)

x, y = read_lean ()
impresión x, y
Si (X> 18):
default_Positions () net.synchronize ()
sys.exit ()

d9.goal_position = 512 # Paso 2 LEFT LEG


LEVANTAR////
d10.goal_position = 592 d17.goal_position = 602 #
592
d8.goal_position = 672 # 672
# d11.goal_position = 512 #
impresión "Paso 2 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d11.goal_position = 512 # 482 # Paso 3 Mueva FRONT


d3.goal_position = 512 d15.goal_position =
512
impresión "Paso 3 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)
# time.sleep (DLY)

d12.goal_position = 592 # Paso 4 balanceo de la pierna


impresión "Paso 4 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d14.goal_position = 582 # Paso 5 rodilla hacia abajo


impresión "Paso 5 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d9.goal_position = 572 # Paso POSICIÓN 6 REST


d10.goal_position = 572 d17.goal_position =
572 d18.goal_position = 572

impresión "Paso 6 hecho de espera" + Str (DLY) net.synchronize ()


# Enviar todos los comandos a los servos.

time.sleep (DLY)
# para servoId en entornos [ 'servoIds']:

76
# print "Posición actual de "+ str (servoId) +":
", Net.read_register (int (servoId), 36,2)
time.sleep (DLY)
# ============================= paso hacia adelante =================== =========== #
def derecho (neto):
global DLY, SPD
global d3, D7, D8, D9, D10, D11, D12, D14, D15, D16, D17, D18

d9.goal_position = 462 # Paso 1 IZQUIERDA lado pobre


d10.goal_position = 462 d17.goal_position
= 462 d18.goal_position = 462

# otra cosa: actuator.goal_position = 512


impresión "Paso 1 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY) time.sleep


(DLY)
# time.sleep (DLY)
x, y = read_lean ()
impresión x, y
Si (X <-10):
default_Positions () net.synchronize ()
sys.exit ()

# time.sleep (2)

d9.goal_position = 422 # 432 # Paso 2 RIGHT LEG


LEVANTAR

d18.goal_position = 422 # 422


d10.goal_position = 512
impresión "Paso 2 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY) time.sleep


(DLY)

d12.goal_position = 512 # Paso 3 VEN FRONT


d14.goal_position = 512
impresión "Paso 3 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d11.goal_position = 432 # Paso 4 balanceo de la pierna


impresión "Paso 4 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d3.goal_position = 442 # Paso 5 rodilla hacia abajo


impresión "Paso 5 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.

time.sleep (DLY)

d9.goal_position = 462 # Paso 6 VEN A


POSICIÓN
d10.goal_position = 462 d17.goal_position =
462 d18.goal_position = 462

77
impresión "Paso 6 hecho de espera" + Str (DLY) net.synchronize ()
# Enviar todos los comandos a los servos.
time.sleep (DLY)
# para servoId en entornos [ 'servoIds']:
# print "Posición actual de "+ str (servoId) +":
", Net.read_register (int (servoId), 36,2)

def ValidateInput (userInput, RangeMin, rangemax):


tratar :
INTEST = int (userInput)
Si INTEST <RangeMin o INTEST> RANGEMAX:
impresión "ERROR: Valor fuera de rango [" + Str (RangeMin) + '-' +
str (rangemax) + "]"
regreso Ninguna
excepto ValueError:
impresión ( "ERROR: Por favor, introduzca un número entero" )
regreso Ninguna

regreso iNTEST

Si __nombre__ == '__principal__' :

parser = optparse.OptionParser () parser.add_option ( "-do" , "--limpiar"


,
action = "Store_true" , Dest = "limpiar" , Por defecto = False, ayudará = "Ignorar el archivo
settings.yaml si existe y
\
solicitará nueva configuración ". )

(Opciones, args) = parser.parse_args ()

# Busque un archivo settings.yaml


settingsFile = 'Settings.yaml'
si no options.clean y os.path.exists (settingsFile):
con abierto (settingsFile, 'R' ) Como FH: configuración = yaml.load
(FH)
# Si se nos pidió que pasar por alto, o no tienen ajustes
más :
settings = {}
Si os.name == "POSIX" :
portPrompt = "¿Qué puerto corresponde a su USB2Dynamixel? \ N"
# Obtener una lista de puertos USB que mencionan
tratar :
possiblePorts = subprocess.check_output ( 'Ls / dev / | grep -i
USB' ,
shell = True) .split ()
possiblePorts = [ '/ Dev /' + port para Puerto en possiblePorts]
excepto subprocess.CalledProcessError:
sys.exit ( "No USB2Dynamixel encontrado. Por favor, conectar uno". )

contador = 1
portCount = len (possiblePorts)
para Puerto en possiblePorts:
portPrompt + = "\ T" + Str (contador) + "-" + Puerto + "\norte"
contador + = 1 portPrompt + = "Introduzca la
opción:"
portChoice = Ninguno
mientras no portChoice:
portTest = raw_input (portPrompt)
portTest = ValidateInput (portTest, 1, portCount)

78
Si portTest:
portChoice = possiblePorts [portTest - 1]

más :
portPrompt = "Por favor, introduzca el nombre del puerto al que el
USB2Dynamixel está conectado: "
portChoice = raw_input (portPrompt)

los ajustes [ 'Puerto' ] = PortChoice

# velocidad de transmisión

BaudRate = Ninguno
mientras no baudRate:
brTest = raw_input ( "Enter velocidad de transmisión [Default: 1000000 bps]:" )
si no brTest:
BaudRate = 1000000
más :
BaudRate = ValidateInput (brTest, 9600, 1000000)

los ajustes [ 'BaudRate' ] = Velocidad en baudios

# Guardar los ajustes de salida a un archivo YAML


con abierto (settingsFile, 'W' ) Como FH: yaml.dump (configuración,
FH)
impresión ( "Los ajustes se han guardado en 'settings.yaml'. \ N"
+
"Cambiar en el futuro, ya sea editar ese archivo o correr
"+
"Este ejemplo con -c." )

ajustes principales)

79

You might also like