Capitulo 4 4. DINÁMICA DE LA CUÑA SALINA 4.1. Factores que ...
CAPITULO IV 4.1.- Resultado de la Investigación
Transcript of CAPITULO IV 4.1.- Resultado de la Investigación
53
CAPITULO IV
4.1.- Resultado de la Investigación: Como resultado del desarrollo de este tipo de robot, se ha logrado un diseño
de cuerpo articulado y la determinación del comportamiento de sus parámetros de
locomoción libre, para simplificar el cálculo de la estabilidad estática. La
realización de algunos aspectos del diseño, tenían que ser tales que no afectaron
la funcionalidad del cuerpo, el espacio y las dimensiones, ya que se pretende
conservar la proporcionalidad a escala.
Fase I: Estudiar los movimientos de un robot quilópodo.
Actividad I: Analizar la estructura ósea y los movimientos de un quilópodo.
Figura 6: Quilópodo Fuente: http://animales-venenosos.blogspot.com/2010/04/escolopendra-
scolopendromorpha.html
54
Su número varía desde 30 hasta 372, es decir, desde15 a 181 pares. al nacer
(lo hacen de un huevo, el cual puede estar protegido por la hembra al enroscarse
sobre él o depositado en cámaras bajo tierra), algunas especies de ciempiés
llegan al mundo con una cantidad ya definida de patas y segmentos (epimórficas);
pero, por el contrario, otras los van adicionando a su cuerpo conforme se
desarrollan y crecen hasta alcanzar la adultez.
En el estudio de los quilópodo se encontró que son conformado por módulos
y que cada modulo contiene un par de patas pudiendo ser acoplado otros módulos
en el futuro, aumentando de esta manera la cantidad de patas.
Actividad II: Revisión y registro de diferentes materiales bibliográficos y
digitales relacionados con la construcción y control de robots con patas.
Figura 7: Robot Hexápodos Fuente: http://grvc.us.es/~jescap/spanish/proyectos.html
Con la observación de robots hexápodos en medios digitales se obtuvieron
los datos (ver tabla 9), siendo dibujado (ver anexo 1). para luego construir un
prototipo en madera (figura 10), y así realizar estudios directos para definir las
articulaciones.
55
El bosquejo en madera del quilópodo es el primer diseño de una obra del
proyecto, hecho de manera provisional, con los elementos esenciales y sin
detalles. Ver Anexo 1 y 2.
Figura 8: Prototipo en madera. Fuente: Montero (2012) Tabla 9: Datos del bosquejo en madera
Largo Total (3 módulos) 48 cm Ancho con las patas 18 cm Largo de un modulo 14 cm Ancho del cuerpo 6,6 cm Espesor del cuerpo 0,8 cm Muslo de la pata 4 cm Espinilla de la pata 6,3 cm Diámetro de las patas 0,8 cm Angulo del muslo con el modulo 45 º Angulo del espinilla y el muslo 90 º Peso total (3 módulos) 286 gm Distancia entre las patas 3 cm Distancia de la primera y última pata con el modulo 2,5 cm Separación del modulo con el suelo 1,3 cm
Fuente: Montero (2012)
56
● Fase II: Calcular la cinemática de las articulaciones a controlar del robot
quilópodo.
Actividad III: Desarrollar un prototipo de madera, y calcular las dimensiones
de cada módulo y la fuerza necesaria de cada motor. Realizar cálculos de la
altimetría del terreno donde se desplazará el robot.
Con los datos obtenidos del prototipo en madera se calculo los parámetros de
Denavit y Hartenberg (DH), los cuales son los siguientes:
Tabla 10: Parámetros DH para el Robot. Fuente: Montero (2012) Articulación a d
1 0 0 Q1 0,5 cm
2 90º 0 Q2 1 cm
El problema cinemática directa consiste en determinar la posición y
orientación final del extremo del robot a partir de las articulaciones y parámetros
geométricos del robot. Con el siguiente programa desarrollado en MATLAB se
demuestra la trayectoria de una pata. (Ver Figura 9):
>> L1=0.5;
>> L2=4;
>> th1=0:0.1:pi/2;
>> th2=th1;
>> px=L1*cos(th1)+L2*cos(th1+th2);
57
>> py=L1*sin(th1)+L2*sin(th1+th2);
>> plot(px,py)
>> grid
Figura 9: Trayectoria de la Pata. Fuente: Montero (2012). La locomoción del robot quilópodo se basa en un modelo cuádruple de
movimiento, igual como sucede con los seres vivos el quilópodo debe ser capaz
de soportar su propio peso y superar la fuerza de gravedad. Este modelo
cuádruple es básicamente, mantener cuadro patas en el suelo y darle libertad de
58
movimiento a las otras cuadro; una ventaja de este modelo es la estabilidad que
se genera para el robot.
Figura 10: Locomoción del quilópodo Fuente: Montero José Como se muestra en la figura 10 (A), la posición inicial para el prototipo será
la de mantener todas sus patas en el suelo, seguido de esto figura 10 (B) se
reafirma la posición fija para cuatro de las patas las demás avanzan; el siguiente
paso se fijar las patas que avanzaron lo que permitirá el avance de las demás.
Esta dinámica de movimiento será reiterativa hasta el momento en el que se
reinicie el programa que controla la cinemática que realiza el robot.
Las patas tienen cada una seis pociones en el plano cartesiano, siendo
posicionada por dos servo motores permitiendo el equilibrio del modulo, en la
figura 11 (A), el control esta en reposo quedando todas las patas en el aire, en la
figura 11 (B), el controlador está en la posición inicial colocando todas las patas
apoyadas en el suelo, en la figura 11 (C), en modulo esta en el siclo de
59
desplazamiento. Estos movimientos son contemplados en la simulación de
Blender ver figura 14.
Figura 11: Posicionamiento de las patas en el plano frontal. Fuente: Montero (2012) En la figura 14, teniendo una visión superior se describen las posiciones de
las patas al momento de inicio figura 14 (A), al momento que la pata se desplaza
hacia delante figura 14 (B), y al momento que la pata retrocede desplazando el
modulo hacia delante figura 14 (C).
Con la construcción de un prototipo en madera se puede visualizar las
Articulaciones, posiciones y diámetro de las patas. En la figura 15 se visualiza el
prototipo en la parte Fontal.
Construyendo una simulación en MATLAB con las siguientes comandos
obtuvimos las figura 12.
>> L1=link([0 1 0 0 0]);
60
>> L2=link([0 4 0 pi 0]); >> L3=link([0 6.3 0 -pi 0]); >> r=robot({L1 L2 L3}); >> plot(r,[0 0 0])
Figura 12: Simulación de una pata en MATLAB. Fuente: Monter (2012)
61
Para visualizar (figura 13), el movimiento de la pata en la coordenada Z se
utilizo el siguiente comando:
>> q=jtraj([-1 0 0],[1 0 0], 200); >> plot(r,[0 0 0])
A: Posición inicial.
B: Posición Final . Figura 13: Simulación del movimiento en MATLAB. Fuente Montero (2012). Actividad IV: Diseñar una simulación en un programa de animación
(blender), para concretar los movimientos del robot quilópodo.
Para representar la orientación de la pata, un punto queda totalmente definido
en el espacio cartesiano, mientras el miembro se desplaza por los distintos puntos
62
de su movimiento. Para este cálculo se utiliza la matriz de rotación en la figura 10
y se define como:
Realizando unas series de transformaciones se llega a lo siguiente:
Donde:
Dando como resultado la siguiente ecuación:
Figura 14: Posicionamiento de las patas en el plano superior.
Fuente: Montero (2012) La matriz Homogénea nos permite representar la posición y orientación de
un sistema girado y trasladado OUVW, con respecto a un sistema fijo de
referencia OXYZ, que es lo mismo que representar una rotación y una traslación
63
realizada sobre un sistema de referencia. Es una matriz T de 4 x 4 que representa
la transformación de un vector de un sistema de coordenadas a otro.
Esta matriz está compuesta por 4 submatrices:
SubMatriz de Rotación.
SubMatriz de Traslación.
SubMatriz de Perspectiva.
SubMatriz de Escalado Global.
Para el cálculo de la matriz homogénea con el programa MATLAB se realizo
con las siguientes líneas de comando:
>> Ta=[cos(45) -sin(45) 0 0; sin(45) cos(45) 0 0; 0 0 1 0; 0 0 0 1] Ta = 0.5253 -0.8509 0 0 0.8509 0.5253 0 0 0 0 1.0000 0 0 0 0 1.0000 >> Tb=[cos(45) -sin(45) 0 0; sin(45) cos(45) 0 0; 0 0 1 0; 0 0 0 1] Tb = 0.5253 -0.8509 0 0 0.8509 0.5253 0 0 0 0 1.0000 0 0 0 0 1.0000 >> T=Ta*Tb T = -0.4481 -0.8940 0 0 0.8940 -0.4481 0 0 0 0 1.0000 0 0 0 0 1.0000
64
Figura 15: Vista frontal del prototipo de madera Fuente: Montero (2012)
Figura 16: Vista lateral del prototipo de madera Fuente: Montero (2012)
Figura 17: Quilópodo simulado en Blender. Fuente: Montero (2012).
65
● Fase III: Diseñar del modelo cinemático para el robot quilópodo.
Actividad V: El modelo de aluminio se realiza con las articulaciones que
permitirán su desplazamiento.
Figura 18: Prototipo de sistema óseo. Fuente: Montero (2012). En el estudio del prototipo en madera, permitió realizar tres modelos de
cuerpo para analizar el cuerpo del robot quilópodo. Estos cuerpos fueron realizado
con tubo PVC figura 19, en búsqueda del los Movimientos articulaciones
adecuado.
66
Figura 19: Prototipo de cuerpos. Fuente: Montero (2012). En el mismo proceso de experimentación diferente tipo de locomoción como
se muestra en la figura 20.
Figura 20: Prototipo de Módulos. Fuente: Montero (2012).
67
Con las articulaciones de las patas se analizaron varios modelos figura 21.
Figura 21: Prototipo de articulaciones. Fuente: Montero (2012).
Fase IV: Programación del control de cada articulación del robot
quilópodo.
Actividad VI: Diseñar el prototipo final de aluminio.
Desarrollar las distintas líneas que componen el programa del
microcontrolador, el cual controlara los servomotores del robot quilópodo, y con el
proteus se simulara para garantizar su efectividad.
El prototipo final (ver figura 22), está constituido por un cuerpo de aluminio
segmentado en el centro en tres partes, para disminuir el peso del cuerpo, los
servomotores que conforman el muslo esta acoplado al cuerpo de aluminio, los
servomotores que conforman las espinillas están sujetas al muslo, las patas que
se realizaron de madera con un ángulo, que permitiera la similitud a las patas del
quilópodo natural. Todo el prototipo del robot quilópodo está conformado por un
peso de 345 gm.
68
Figura 22: Prototipo Final del robot quilópodo. Fuente: Montero (2012).
El resultado de de toda la experimentación se obtuvo un prototipo con un
modelo de patas como se muestra en la figura 15.
Con El programa MPLAB construir los distintos comandos que componen el
programa del microcontrolador el cual controlara al robot quilópodo, con el
proteus se simulara para garantizar su efectividad y con Ic-pro se gravo el
programa en el PIC.
Tabla 11: Programa del primer PIC. Fuente: Montero (2012)
List p=pic16f84a #include <p16f84a.inc> radix hex k equ 0x0c k2 equ 0x0d k3 equ 0x0e org 0h goto inicio org 5h #include <tiempo.asm> Inicio bsf STATUS,RP0 movlw b'01111' movwf TRISA clrf TRISB bcf STATUS,RP0 clrf PORTA
ataque movlw .3 movwf k3 movlw b'10101010' movwf PORTB call t_1 call t_0.1 call t_0.1 call t_0.03 call t_0.03 call t_0.01 call t_0.01 clrf PORTB movlw b'01010101' movwf PORTB call t_A1D clrf PORTB call t_12 call t_0.5 call t_0.03 goto escan
69
Tabla 11: Programa del primer PIC. Fuente: Montero (2012)
(Cont…) clrf PORTB escan btfsc PORTA,3 goto molesto goto escan2 escan2 btfsc PORTA,0 goto activado goto descanso activado btfsc PORTA,2 goto avanza goto preparado molesto btfsc PORTA,1 goto defensa goto ataque descanso movlw b'11111111' movwf PORTB call t_N1 movlw b'00000000' movwf PORTB call t_N0 goto escan preparado movlw .60 movwf k3 prepa movlw b'10101010' movwf PORTB call t_prepa_1 clrf PORTB call t_N0 decfsz k3,1 goto prepa goto escan defensa movlw .15 movwf k3 defen movlw b'10101010' movwf PORTB call t_defen_1 clrf PORTB movlw b'01010101' movwf PORTB call t_A1I clrf PORTB decfsz k3,1 goto defen goto escan
avanza movlw .60 movwf k3 positivo movlw b'01010101' movwf PORTB call t_A1I clrf PORTB call t_12 decfsz k3,1 goto positivo movlw .60 movwf k3 po movlw b'10101010' movwf PORTB call t_B1I clrf PORTB call t_12 call t_0.5 call t_0.1 call t_0.1 decfsz k3,1 goto po movlw .60 movwf k3 negativo movlw b'01010101' movwf PORTB call t_A1D clrf PORTB call t_12 call t_0.5 call t_0.03 decfsz k3,1 goto negativo movlw .60 movwf k3 ne movlw b'10101010' movwf PORTB call t_B1D clrf PORTB call t_12 call t_0.5 decfsz k3,1 goto ne goto escan
end
Tabla 12: Programa del segundo PIC. Fuente: Montero (2012)
List p=pic16f84a #include <p16f84a.inc> radix hex
ataque movlw .3 movwf k3 movlw b'10101010' movwf PORTB
70
Tabla 12: Programa del segundo PIC. Fuente: Montero (2012)
(Cont…) k equ 0x0c k2 equ 0x0d k3 equ 0x0e org 0h goto inicio org 5h #include <tiempo.asm> inicio bsf STATUS,RP0 movlw b'01111' movwf TRISA clrf TRISB bcf STATUS,RP0 clrf PORTA clrf PORTB escan btfsc PORTA,3 goto molesto goto escan2 escan2 btfsc PORTA,0 goto activado goto descanso activado btfsc PORTA,2 goto avanza goto preparado molesto btfsc PORTA,1 goto defenza goto ataque descanso movlw b'11111111' movwf PORTB call t_N1 movlw b'00000000' movwf PORTB call t_N0 goto escan preparado movlw .60 movwf k3 prepa movlw b'10101010' movwf PORTB call t_prepa_1 clrf PORTB call t_N0 decfsz k3,1 goto prepa goto escan defenza movlw .15
call t_1 call t_0.1 call t_0.1 call t_0.03 call t_0.03 call t_0.01 call t_0.01 clrf PORTB movlw b'01010101' movwf PORTB call t_A1D clrf PORTB call t_12 call t_0.5 call t_0.03 goto escan avanza movlw .60 movwf k3 negativo movlw b'01010101' movwf PORTB call t_A1D clrf PORTB call t_12 call t_0.5 call t_0.03 decfsz k3,1 goto negativo movlw .60 movwf k3 ne movlw b'10101010' movwf PORTB call t_B1D clrf PORTB call t_12 call t_0.5 decfsz k3,1 goto ne movlw .60 movwf k3 positivo movlw b'01010101' movwf PORTB call t_A1I clrf PORTB call t_12 decfsz k3,1 goto positivo movlw .60 movwf k3 po movlw b'10101010' movwf PORTB call t_B1I clrf PORTB
71
Tabla 12: Programa del segundo PIC. Fuente: Montero (2012)
(Cont…) movwf k3 defen movlw b'10101010' movwf PORTB call t_defen_1 clrf PORTB movlw b'01010101' movwf PORTB call t_A1I clrf PORTB decfsz k3,1 goto defen goto escan
call t_12 call t_0.5 call t_0.1 call t_0.1 decfsz k3,1 goto po end
Simulación de diseño de la lógica del PIC en ploteus.
Figura 23: Simulación de los motores de paso Fuente: Montero (2012).
72
El microcontrolador que se utilizo es el 16F84A, se emplearon dos PIC con el
propósito de que el robot realice dos movimiento en el mismo tiempo. Los
elemento que se acoplaron para obtener el circuito son: dos PIC, cinco
resistencias, dos pulsadores, tres interruptores, diez siséis servo motores. La
frecuencia utilizada por los PIC es de 4 MHz, conectado un solo cristal para los
dos Microcontroladores, La resistencia pull up solo se utiliza una para los dos PIC,
permitiendo de esta manera resetear al mismo tiempo los dos integrado.
● Fase V: Comprobar el desempeño de las articulaciones de movimiento del
robot quilópodo al transportar carga en zonas de difícil acceso.
Actividad VII: Con la simulación de terrenos el robot será evaluado su
comportamiento y desenvolvimiento al momento de trasladarse de un logar a otro.
En la simulación en 3 D se utilizo el programa BLENDER permitiendo
observar el movimiento de sus patas.
Figura 24: Prototipos simulado en Blender. Fuente: Montero (2012).
73
4.2. Diseño del Sistema de Control. El servo motor se mueve a diferentes posiciones, se compone básicamente
de un motor de corriente continua, engranaje, un sensor de posición y de
electrónica para controlar el motor. Suele estar limitado a 180 º, se controla con un
tren de pulsos que depende de la frecuencia será la posición del servo motor
(figura 26). La frecuencia es controlada por un par de PIC 16F84A, la cual
contienen un oscilador de 4 MHz para trabaja internamente el microcontrolador.
La frecuencia que estimara la posición de los servomotores que están
conectado a las patas del robot, serán controlado por cuatro interruptores que
configuran un código BCD (ver tabla 13), para determinar el control deseado
determinando el movimiento del robot quilópodo.
Figura 25: Señal de control del servomotor. Fuente: http://reactivesystems.wordpress.com/2011/10/31/servomotor/
74
Tabla 13: Lógica de entradas Fuente: Montero (2012)
El conjunto de líneas de instrucciones que permiten el desarrollo de una
frecuencia, esto se logra con la activación y desactivación de un puerto en un
tiempo determinado.
Cada pata está conformado por dos servomotores (ver figura 25), lo cual un
esta conector directamente al cuerpo (los que terminan en 0), permitiendo el
movimiento de rotación, el segundo servomotor (los que terminan en 1), se
encuentra acoplado al primer motor directamente permitiendo el movimiento de
elevación. Cado servomotor está identificado de orden alfabético acompañado por
un numero, la letra identifica la pata, mientras que el numero la posición, si es cero
muslo y si es 1 espinilla.
75
Figura 26: Posición de los servomotores. Fuente: Montero (2012).
Cada circuito impreso se elaboro individualmente, tomando en cuenta de
que solo tendrá un cristal, una resistencia de reset pull up y compartirán el mismo
código de entradas por el puerto A.
Figura 27: PCB del PIC16f84A. Fuente: Montero (2012).
76
Figura 28: PCB del PIC16f84A con el cristal y el reset. Fuente: Montero (2012).
4.3. Validación del Sistema Propuesto. Los alcances desarrollados en la investigación se lograron, obteniendo los
siguientes resultados:
El diseño de las patas con sus articulaciones se realizó en su totalidad con
mano de obra artesanal. Buscando llevar el diseño de las articulaciones al más
bojo costo, cumpliendo dinámicamente con los aspectos obtenidos en la
investigación.
La construcción del esqueleto se realizo en aluminio reciclado cumpliendo
con el peso estimado por los cálculos realizados.
El diseño y construcción de las baquelitas se realizaron mediante el programa
AEGLE, obteniendo un circuito accesible y cómodo para la instalación de los
componentes necesarios.
La simulación en los programa de blender y proteus. El programa blender fue
de mucha ayuda gracia a que permitió observar la forma dinámica del
desplazamiento del robot quilópodo.
77
El programa proteus facilito el buen funcionamiento de la lógica de control del
robot quilópodo mediante la acción de dos PIC que permiten la sincronía de los
movimiento de las articulaciones en tiempo real.
La instalación de los servomotores constituyó el buen desempeño del robot
quilópodo.
Tabla 14: Validación del Prototipo Final Leyenda 1: Muy bueno, 2: Bueno, 3: Regular, 4: Malo
Nº de Prueba
Nombre / Objetivo 1 2 3 4
1 Como se desempeña el Programa de control. x 2 Los Pic responden adecuadamente a sus entradas. x 3 Las frecuencias de control son adecuadas para lo
deseado. x 4 El tiempo de movimiento de las patas son los
apropiados. x 5 Los movimientos de las patas no se interrumpen
entre sí misma. x 6 El robot puede mantener su propio peso. x 7 Como es el desplazamiento del robot por zonas
planas x 8 Como es el desplazamiento del robot por zonas de
arena x 9 Como es el desplazamiento del robot por zonzas de
grava x 10 Como es el desplazamiento del robot por zonas de
bolones x Fuente: Montero (2012)