+ All Categories
Home > Documents > CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este...

CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este...

Date post: 27-Sep-2018
Category:
Upload: trannhan
View: 214 times
Download: 1 times
Share this document with a friend
25
CONSTRUCION DE UN BRAZO ROBÓTICO E INTERFACE DE CONTROL PARA UN SISTEMA EMPOTRADO BASADO EN EL SISTEMA OPERATIVO RTEMS AUTOR: ROBERTO RICA GUTIÉRREZ TUTOR: JUAN ZAMORANO FLORES D.A.T.S.I. Facultad de Informática Universidad Politécnica de Madrid MARZO, 2002
Transcript
Page 1: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

CONSTRUCION DE UN BRAZO ROBÓTICO E INTERFACE DE CONTROL PARA UN SISTEMA EMPOTRADO BASADO EN EL SISTEMA OPERATIVO RTEMS

AUTOR: ROBERTO RICA GUTIÉRREZTUTOR: JUAN ZAMORANO FLORESD.A.T.S.I.Facultad de InformáticaUniversidad Politécnica de MadridMARZO, 2002

Page 2: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Objetivos

• Definir el entorno de desarrollo

• Construcción del hardware

• Diseño y programación del software de control

• Aplicación de demostración

• Conclusiones y líneas futuras

Page 3: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Sistema Operativo RTEMS

• Real Time Executive for Multiprocesor Systems = Sistema operativo de tiempo real para sistemas multiprocesador.

• Se puede utilizar con los leguajes C/POSIX o Ada.

• Disponible para una amplia variedad de familias de procesadores.

• Prácticamente todo el sistema está escrito en lenguaje de alto nivel => fácil de adaptar a nuevas familias de procesadores

• Herramientas abiertas: GNAT, GCC, GDB...

• Características principales:– Capacidad multitarea.

– Sistemas multiprocesador homogeneos y heterogeneos.

– Planificación basada en prioridades y expulsión.

– Comunicación y sincronización de hilos.

– Gestor de interrupciones.

– Gestión de memoria dinámica.

– Alto nivel de configuración por el usuario.

– Cumple con el estándar POSIX.

Page 4: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Entorno de desarrollo

• Sistema empotrado = Sistema informático integrado en el aparato que controla.

• Sistema de tiempo real = Sistema en el que para que una aplicación sea correcta, debe entregar sus resultados dentro de un intervalo de tiempo.

• Lenguaje de programación C + Estándar POSIX

• Sistema de desarrollo cruzado = La creación del programa ejecutable no se realiza en el mismo sistema que luego la ejecutará.

• Sistema Operativo de Tiempo Real RTEMS

Page 5: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Hardware

• Host: PC con GNU Linux y Windows 95

• Target: PC con tarjeta de E/S digitales

• Brazo: Kit de brazo robótico Fischertechnik

• Interfaz entre Brazo y Target: tarjeta propia de control de motores y alimentación.

Page 6: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

HOST

• Ordenador de propósito general PII400Mhz, 128 Mb RAM, 4Gb HD.

• Windows 95 para documentación y conexiones a Internet.

• LINUX para alojar el sistema de desarrollo cruzado.

Page 7: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Host Target P. Potencia Sistema Físico

Linux

RTEMSHerramientas GNU

-----------------

Windows

Office

Acceso a internet

...

• E/S Digitales

• Soportado por RTEMS

• Entradas TTL.

• Salidas de potencia.

• Fuente de alimentación.

• Brazo robótico

Page 8: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

TARGET

• Sistema informático integrado en el aparato final al que controla.

• Ejecuta el programa desarrollado en el Host.

PC486:

• Fácil de encontrar

• Conocimiento anterior

• Fácil de ampliar

Efi332:

• Muy pequeño tamaño

• Motorola 68332

• Unidad de control PWM

Page 9: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

BRAZO I

Puntos a tener en cuenta:

• Grados de libertad que tiene.

• Posibilidades de ampliación y mejora.

• Potencia y velocidad de sus motores.

• Relación entre precio y prestaciones.

Page 10: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

BRAZO II

• Kit de la empresa Fischertechnik• 4 grados de libertad.• Motores de 9VDC.• Construcción modular a base de

piezas que encajan unas en otras.• Motores de baja potencia.• Piezas de plástico.• 8 sensores de movimiento

(interruptores).• 4 posibles brazos con este kit.

Page 11: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Interface entre Target y Brazo I

• Placa de entrada / salida digital.

• Nivel de señales TTL.

• 8 puertos de 8 pines cada uno programables como entrada o salida.

• El primer puerto se usa para el control de los 4 motores.

• El segundo puerto se utiliza para la entrada de la información de los sensores.

Page 12: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Interface entre Target y Brazo II

• Placa de potencia.

• Traduce las señales TTL enviadas por el target en señales con potencia suficiente para activar los motores.

• Basada en el L293B.

• Fuente de alimentación de 9VDC integrada.

• Posibilidad de fuente de alimentación externa.

Page 13: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Software de control

• Interface de programación

• Diseño del sistema de control– Arquitectura

– Hilos y procedimientos• Hilo Movimiento

• Hilo Velocidad

Page 14: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Inteface de programación hardware

Puertos:• 0x180 Control de motores (salida).• 0x181 Lectura del estado de los sensores (entrada).• 0x182 Lectura del estado de los sensores extra (entrada).

Palabra puerto 0x180: PPAAFFGG donde:PP = dos bits motor Pinza FF = dos bits motor FondoAA = dos bits motor Altura GG = dos bits motor Giro

Palabra puerto 0x181: PpFcpPaFcaPfFcfPgFcg donde:Pp = bit paso pinza. Pf = bit paso fondo.Fcp = bit fin carrera pinza. Fcf = bit fin carrera fondo.Pa = bit paso altura. Pg = bit paso giro.Fca = bit fin carrera pinza. Fcg = bit fin carrera giro.

Page 15: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Interface de programación del brazo

• Objetivo: Abstraer los detalles de la implementación, como puertos, valores hexadecimales, concurrencia de movimientos...

• Métodos utilizados para conseguir el objetivo:– Constantes: elimina la necesidad de tratar con nºs hexadecimales.

– Procedimientos:• InicializarBrazo(): Inicializa el sistema para el control del brazo.• Lugar (int sentido): Devuelve la posición en grado de libertad

indicado.• leerInt (int puerto, int numero): Da el estado del Interruptor indicado.

– Hilos:• Movimiento (*param_mov): Hilo que hace que el brazo se situe en un

punto de uno de sus grados de libertad.• EsperaInt (*espera_int): Hilo que no finaliza hasta que el interruptor

indicado en la estructura pasada como parámetro es pulsado.

Page 16: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Arquitectura del Sistema de Control

APLICACIÓN DE USUARIO

INTERFACE BRAZO

RTEMS

INTERFACE POSIX

HARDWARE DEL TARGET

Page 17: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Hilos y procedimientos

IniciarBrazo

Velocidad

Crear 4

Motor

EsperaInt

FinCarr

Movimiento

EstMovimiento

Posicion

Lugar

LeerInt

InicializaVariables

VariablesGlobales

Page 18: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Aplicación de demostración

• Descripción del problema:

Variante del juego de las torres de Hanoi

• Diseño de la solución usando el interface del brazo creado.

Page 19: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Descripción del problema

• Se tienen tres zonas contiguas.

• En una de las zonas se tiene una pila de tres cajas de igual tamaño y distinto color.

• Se debe mover la columna de cajas de la primera zona a la última respetando las siguientes reglas:

– En cada jugada solo se puede mover una caja de una zona a otra.

– No se puede situar una caja encima de otra si en la configuración inicial del problema la que se quiere poner encima no estaba en una posición más elevada que la otra.

Page 20: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Diseño de la solución

• Se aplica un algoritmo de “divide y venceras”.– Caso base: mover una caja de una zona a otra Ordenar

al brazo llevar a cabo dicho movimiento.

– Si no se está en caso base Mover x piezas de la zona “a” a la zona “c”, dividir el problema de la siguiente forma:

• Mover x-1 piezas de “a” a “b”.

• Mover 1 pieza de “a” a “c”.

• Mover x-1 piezas de “b” a “c”.

Page 21: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Árbol de solución para 3 cajas

Hanoi (3,1,3)

Hanoi (2,1,2) Hanoi (2,2,3)

Mover (1,3)

Hanoi (1,1,3) Hanoi (1,3,2) Hanoi (1,2,1) Hanoi (1,1,3)

Mover (1,2) Mover (2,3)Mover (1,3) Mover (3,2) Mover (2,1) Mover (1,3)

1 2 3

1 2 31 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3

Page 22: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Brazo solucionando el problema

Page 23: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Conclusiones

• Se ha construido un sistema que:– permite la docencia e investigación sobre sistemas de tiempo real

empotrados – muy versátil y fácilmente ampliable.– es de fácil construcción y reducido precio.

• Se ha adquirido experiencia en:– RTEMS.– Estándar POSIX.– Programación en C.– Robótica y sistemas empotrados.– Tratamiento de señales eléctricas controladas desde un ordenador.– Control de movimiento y velocidad de motores con sistemas

informáticos.

Page 24: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Líneas Futuras

• Ampliación con otros kits de Fischertechnik para crear sistemas más complejos y que tengan que cooperar y permitan docencia e investigación con sistemas de tiempo real distribuidos.

• Cambio de la tarjeta de I/O por una con posibilidad de interrupciones.

• Cambio de los motores por motores paso a paso.

• Mejora del hardware para detectar sobrecargas.

Page 25: CONSTRUCION DE UN BRAZO ROBÓTICO E ... - … ROBOT/TFC-rr… · • 4 posibles brazos con este kit. Interface entre Target y Brazo I

Dudas y preguntas

FIN


Recommended