Вы находитесь на странице: 1из 25

CONSTRUCION DE UN BRAZO ROBTICO

E INTERFACE DE CONTROL PARA UN SISTEMA EMPOTRADO BASADO EN EL SISTEMA OPERATIVO RTEMS


AUTOR: ROBERTO RICA GUTIRREZ TUTOR: JUAN ZAMORANO FLORES D.A.T.S.I. Facultad d I!"#$%&t'ca U!'( $)'dad P#l't*c!'ca d Mad$'d MARZO+ ,--,

Objetivos
Definir el entorno de desarrollo Construccin del hardware Diseo y programacin del software de

control Aplicacin de demostracin Conclusiones y lneas futuras

istema Operativo !"#$

!eal "ime #%ecutive for $ultiprocesor ystems & istema operativo de tiempo real para sistemas multiprocesador' e puede utili(ar con los leguajes C)*O +, o Ada' Disponible para una amplia variedad de familias de procesadores' *r-cticamente todo el sistema estescrito en lenguaje de alto nivel &. f-cil de adaptar a nuevas familias de procesadores /erramientas abiertas0 12A"3 1CC3 1D4'''

Caractersticas principales0
5 Capacidad multitarea' 5 istemas multiprocesador homogeneos y heterogeneos' 5 *lanificacin basada en prioridades y e%pulsin' 5 Comunicacin y sincroni(acin de hilos' 5 1estor de interrupciones' 5 1estin de memoria din-mica' 5 Alto nivel de configuracin por el usuario' 5 Cumple con el est-ndar *O +,'

#ntorno de desarrollo

istema empotrado & istema inform-tico integrado en el aparato 6ue controla' istema de tiempo real & istema en el 6ue para 6ue una aplicacin sea correcta3 debe entregar sus resultados dentro de un intervalo de tiempo' 7enguaje de programacin C 8 #st-ndar *O +, istema de desarrollo cru(ado & 7a creacin del programa ejecutable no se reali(a en el mismo sistema 6ue luego la ejecutar-' istema Operativo de "iempo !eal !"#$

/ardware
/ost0 *C con 129 7inu% y :indows ;< "arget0 *C con tarjeta de #) digitales 4ra(o0 =it de bra(o robtico >ischertechni? +nterfa( entre 4ra(o y "arget0 tarjeta propia

de control de motores y alimentacin'

/O "
Ordenador de propsito general *++@AA$h(3

BCD $b !A$3 @1b /D' :indows ;< para documentacin y cone%iones a +nternet' 7+29, para alojar el sistema de desarrollo cru(ado'

Host

Target

P. Potencia

Sistema Fsico

Linux RTEMS
Herramientas GNU

E$S %igita&es

Entradas TTL.

)ra*o ro+(tico

So'ortado 'or RTEMS

----------------Windo s !""ice #cceso a internet ...

Sa&idas de 'otencia. Fuente de a&imentaci(n.

"A!1#"
istema inform-tico integrado en el aparato final al 6ue controla' #jecuta el programa desarrollado en el /ost'

*C@DE0 >-cil de encontrar Conocimiento anterior >-cil de ampliar #fiFFC0 $uy pe6ueo tamao $otorola EDFFC 9nidad de control *:$

4!AGO +
*untos a tener en cuenta0
1rados de libertad 6ue tiene' *osibilidades de ampliacin y mejora' *otencia y velocidad de sus motores' !elacin entre precio y prestaciones'

4!AGO ++

=it de la empresa >ischertechni? @ grados de libertad' $otores de ;HDC' Construccin modular a base de pie(as 6ue encajan unas en otras' $otores de baja potencia' *ie(as de pl-stico' D sensores de movimiento IinterruptoresJ' @ posibles bra(os con este ?it'

+nterface entre "arget y 4ra(o +


*laca de entrada ) salida digital' 2ivel de seales ""7' D puertos de D pines cada uno

programables como entrada o salida' #l primer puerto se usa para el control de los @ motores' #l segundo puerto se utili(a para la entrada de la informacin de los sensores'

+nterface entre "arget y 4ra(o ++


*laca de potencia' "raduce las seales ""7

enviadas por el target en seales con potencia suficiente para activar los motores' 4asada en el 7C;F4' >uente de alimentacin de ;HDC integrada' *osibilidad de fuente de alimentacin e%terna'

oftware de control
+nterface de programacin Diseo del sistema de control 5 Ar6uitectura 5 /ilos y procedimientos
/ilo $ovimiento /ilo Helocidad

+nteface de programacin hardware


*uertos0

A%BDA Control de motores IsalidaJ' A%BDB 7ectura del estado de los sensores IentradaJ' A%BDC 7ectura del estado de los sensores e%tra IentradaJ'
** & dos bits motor *in(a AA & dos bits motor Altura *p & bit paso pin(a' >cp & bit fin carrera pin(a' *a & bit paso altura' >ca & bit fin carrera pin(a' >> & dos bits motor >ondo 11 & dos bits motor 1iro *f & bit paso fondo' >cf & bit fin carrera fondo' *g & bit paso giro' >cg & bit fin carrera giro'

*alabra puerto A%BDA0 **AA>>11 donde0

*alabra puerto A%BDB0 *p>cp*a>ca*f>cf*g>cg donde0

+nterface de programacin del bra(o


Objetivo0 Abstraer los detalles de la implementacin3 como puertos3
valores he%adecimales3 concurrencia de movimientos'''

Mtodos utilizados para conseguir el objetivo:


5 ,onstantes0 elimina la necesidad de tratar con nKs he%adecimales' 5 Procedimientos0

InicializarBrazo(): +niciali(a el sistema para el control del bra(o' Lugar (int sentido): Devuelve la posicin en grado de libertad indicado' leerInt (int puerto, int numero): Da el estado del +nterruptor indicado' Movimiento (*param mov): /ilo 6ue hace 6ue el bra(o se situe en un punto de uno de sus grados de libertad' !speraInt (*espera int): /ilo 6ue no finali(a hasta 6ue el interruptor indicado en la estructura pasada como par-metro es pulsado'

5 Hi&os-

Ar6uitectura del istema de Control

#PL.,#,./N %E USU#R.!

.NTERF#,E )R#0! .NTERF#,E P!S.1 RTEMS H#R%W#RE %EL T#RGET

/ilos y procedimientos
Crear 4 IniciarBrazo InicializaVariables

Posicion Velocidad
2aria+&es G&o+a&es

Movimiento

FinCarr

Lugar

Motor EstMovimiento EsperaInt LeerInt

Aplicacin de demostracin
Descripcin del problema0

Hariante del juego de las torres de /anoi Diseo de la solucin usando el interface del bra(o creado'

Descripcin del problema


e tienen tres (onas contiguas' #n una de las (onas se tiene una pila de tres cajas de igual tamao y distinto color' e debe mover la columna de cajas de la primera (ona a la Lltima respetando las siguientes reglas0 5 #n cada jugada solo se puede mover una caja de una (ona a otra' 5 2o se puede situar una caja encima de otra si en la configuracin inicial del problema la 6ue se 6uiere poner encima no estaba en una posicin m-s elevada 6ue la otra'

Diseo de la solucin

e aplica un algoritmo de Mdivide y vencerasN'


5 Caso base0 mover una caja de una (ona a otra Ordenar al bra(o llevar a cabo dicho movimiento' 5 i no se est- en caso base $over % pie(as de la (ona MaN a la (ona McN3 dividir el problema de la siguiente forma0
$over %OB pie(as de MaN a MbN' $over B pie(a de MaN a McN' $over %OB pie(as de MbN a McN'

Prbol de solucin para F cajas


B C F

/anoi IF3B3FJ

/anoi IC3B3CJ

/anoi IC3C3FJ

/anoi IB3B3FJ

/anoi IB3F3CJ

/anoi IB3C3BJ

/anoi IB3B3FJ

$over IB3FJ

$over IB3CJ

$over IF3CJ

$over IB3FJ

$over IC3BJ

$over IC3FJ

$over IB3FJ

4ra(o solucionando el problema

Conclusiones

e ha construido un sistema 6ue0


5 permite la docencia e investigacin sobre sistemas de tiempo real empotrados 5 muy vers-til y f-cilmente ampliable' 5 es de f-cil construccin y reducido precio'

e ha ad6uirido e%periencia en0


5 5 5 5 5 5 !"#$ ' #st-ndar *O +,' *rogramacin en C' !obtica y sistemas empotrados' "ratamiento de seales elQctricas controladas desde un ordenador' Control de movimiento y velocidad de motores con sistemas inform-ticos'

7neas >uturas
Ampliacin con otros ?its de >ischertechni? para

crear sistemas m-s complejos y 6ue tengan 6ue cooperar y permitan docencia e investigacin con sistemas de tiempo real distribuidos' Cambio de la tarjeta de +)O por una con posibilidad de interrupciones' Cambio de los motores por motores paso a paso' $ejora del hardware para detectar sobrecargas'

Dudas y preguntas

FIN

Вам также может понравиться