DORIS P GOMEZ C.
El tobillo es la unión de tres huesos: la tibia, fíbula y
el talo del pie. El tobillo
presenta tres articulaciones la tibiotalar (la tróclea del talo y el
lado cóncavo distal en el extremo de la tibia), la fibiotalar (entre el maleolo interno
de la tibia y el maleolo externo de la fíbula) y la articulación tibiofubular distal
(entre el maleolo externo de la fíbula y las superficies medial y lateral de la
tróclea del talo).
En la figura 2, cuando el ángulo es (b) la flexión es
dorsal, tiene una amplitud de 20 a 30°, la zona agrisada indica el margen de
variaciones individuales de amplitud, es decir 10°, cuando el ángulo es (c), se
habla de flexión plantar, su amplitud es de 30 a 50°, el margen de variaciones
individuales es 20°.
Los movimientos realizados sobre un eje Y (Figura 3), si se
hace hacia adentro se denomina aducción (2), su rango de movimiento llega hasta
los 35 o 45°, si se hace hacia afuera se denomina abducción (3) con rango hasta
los 45 o 50°.
Otros movimientos son los realizados sobre en eje Z (Figura 3), si se hace hacia adentro se denomina supinación (4), su rango de movimiento llega hasta los 52°, si se hace hacia afuera se denomina pronación (5) con rango hasta 25 o 30°.
Los ejes de movimiento de estas articulaciones están
colocados oblicuamente (Figura 4), de manera que ninguno de los movimientos
estándar (flexión y extensión, abducción y aducción, supinación y pronación)
pueden realizarse aisladamente. La
inversión comprende supinación, aducción y flexión plantar, la eversión
incluye pronación, abducción y flexión dorsal.
El eje de rotación del tobillo no está en un plano frontal
verdadero, pero está orientado un pequeño giro desde el plano frontal por 13°
hacia el lado lateral y baja 7° desde el lado medial al lateral. Como resultado de la inclinación en el
plano frontal, hay una pequeña desorientación del pie respecto a plano sagital
verdadero durante los movimientos de flexión plantar y dorsiflexión. La orientación es oblicua (Figura 4 a y
c).
Similarmente a la articulación del tobillo, la orientación
de la articulación subtalar es oblicua.
En promedio, el eje subtalar está a 42° de un plano horizontal en el plano sagital y
23° del plano medio sagital del pie en dirección horizontal (Figura 4 b y
c).
Por defecto el prototipo que se realizó se encuentra en plantiflexión. Para el caso especifica de nuestro proyecto nos enfocaremos solamente el los movimientos que implican dorsiflexión, acompañados por movimientos de las falanges.
EL
SERVOMOTOR
Un Servo es un dispositivo pequeño que tiene un eje de rendimiento controlado. Este puede ser llevado a posiciones angulares específicas al enviar una señal codificada. Con tal de que una señal codificada exista en la línea de entrada, el servo mantendrá la posición angular del engranaje. Cuando la señal codificada cambia, la posición angular de los piñones cambia. En la práctica, se usan servos para posicionar superficies de control como el movimiento de palancas, pequeños ascensores y timones. Ellos también se usan en radio control, títeres, y por supuesto, en robots.
Los Servos son sumamente útiles en robótica. Los motores son pequeños, tiene internamente una circuitería de control y son sumamente poderosos para su tamaño. Un servo normal o Standard como el HS-300 de Hitec tiene 42 onzas por pulgada o mejor 3kg por cm. De torque es bastante fuerte para su tamaño. También potencia proporcional para cargas mecánicas. Un servo, por consiguiente, no consume mucha energía. En la figura se muestra la composición interna de un servo motor. Podrá observar la circuitería de control, el motor, un juego de piñones, y la caja. También se pueden ver los 3 alambres de conexión externa. Uno es para alimentación Vcc (+5volts), conexión a tierra GND y el alambre blanco es el alambre de control.
FUNCIONAMIENTO
El motor del servo tiene algunos circuitos de control y un potenciómetro (una resistencia variable), ésta es conectada al eje central del servo motor. En esta figura se puede observar al lado derecho del circuito. Este potenciómetro permite a la circuitería de control, supervisar el ángulo actual del servo motor. Si el eje está en el ángulo correcto, entonces el motor está apagado. Si el circuito chequea que el ángulo no es el correcto, el motor girará en la dirección adecuada hasta llegar al ángulo correcto. El eje del servo es capaz de llegar alrededor de los 180 grados. Normalmente, en algunos llega a los 210 grados, pero varía según el fabricante. Un servo normal se usa para controlar un movimiento angular de entre 0 y 180.
La cantidad de voltaje aplicado al motor es proporcional a la distancia que éste necesita viajar. Así, si el eje necesita regresar una distancia grande, el motor regresará a toda velocidad. Si este necesita regresar sólo una pequeña cantidad, el motor correrá a una velocidad más lenta. A esto se le llama control proporcional.
CARACTERÍSTICAS
GENERALES Y FUNCIONAMIENTO:
Estos servos tienen un amplificador, servo motor, piñonearía de reducción y un potenciómetro de realimentación; todo incorporado en el mismo conjunto. Esto es un servo de posición (lo cual significa que uno le indica a qué posición debe ir), con un rango de aproximadamente 180 grados. Ellos tienen tres cables de conexión eléctrica; Vcc, GND, y entrada de control.
Para controlar un servo, usted le ordena un cierto ángulo, medido desde 0 grados. Usted le envía una serie de pulsos. En un tiempo ON de pulso indica el ángulo al que debe posicionarse; 1ms = 0 grados, 2.0ms = máx. grado (cerca de 120) y algún valor entre ellos da un ángulo de salida proporcional. Generalmente se considera que en 1.5ms está el "centro." Entre límites de 1 ~ 2ms son las recomendaciones de los fabricantes, usted normalmente puede usar un rango mayor de 1.5ms para obtener un ángulo mayor e incluso de 2ms para un ángulo de rendimiento de 180 grados o más. El factor limítrofe es el tope del potenciómetro y los límites mecánicos construidos en el servo. Un sonido de zumbido normalmente indica que usted está forzando por encima al servo, entonces debe disminuir un poco.
El tiempo de OFF en el servo no es crítico; puede estar alrededor de los 20ms. Hemos usado entre 10ms y 30ms. Esto No tiene que ser de ésta manera, puede variar de un pulso a otro. Los pulsos que ocurren frecuentemente en el tiempo de OFF pueden interferir con el sincronismo interno del servo y podría escucharse un sonido de zumbido o alguna vibración en el eje. Si el espacio del pulso es mayor de 50ms (depende del fabricante), entonces el servo podría estar en modo SLEEP entre los pulsos. Entraría a funcionar en pasos pequeños y el rendimiento no sería el óptimo.
Como se observa en la figura, la duración del pulso indica o dictamina el ángulo del eje (mostrado como un círculo verde con flecha). Nótese que las ilustraciones y los tiempos reales dependen del fabricante de motor. El principio, sin embargo, es el mismo.
El cable de control se usa para comunicar el ángulo. El ángulo está determinado por la duración de un pulso que se aplica al alambre de control. A esto se le llama PCM Modulación codificada de Pulsos. El servo espera ver un pulso cada 20 milisegundos (.02 segundos). La longitud del pulso determinará los giros de motor. Un pulso de 1.5ms, por ejemplo, hará que el motor se torne a la posición de 90 grados (llamado la posición neutra). Si el pulso es menor de 1.5ms, entonces el motor se acercará a los 0 grados. Si el pulso es mayor de 1.5ms, el eje se acercará a los 180 grados.
La descripción realizada anteriormente como se ha podido observar es de servomotores de corriente continua usados en robótica doméstica y en aeromodelismo fundamentalmente.
SERVOMOTORES
EN MODELISMO:
DIAGRAMA DE UN SERVOMOTOR
TÍPICO DE MODELISMO.
Un servomotor de este tipo es básicamente un motor eléctrico que sólo se puede girar en un ángulo de aproximadamente 180 grados (no dan vueltas completas como los motores normales). De los tres cables que salen de su cubierta. El rojo es de voltaje de alimentación (+5V), el negro es de tierra (0V ó GND). El cable blanco (a veces amarillo) es el cable por el cuál se le instruye al servomotor en qué posición ubicarse (entre 0 grados y 180).
Dentro del servomotor, una tarjeta controladora le dice a un pequeño motor de corriente directa cuántas vueltas girar para acomodar la flecha (el eje de plástico que sale al exterior) en la posición que se le ha pedido.
En la siguiente figura se observa la ubicación de estas piezas dentro del
servomotor:
Un potenciómetro que está sujeto a la flecha, mide hacia dónde está
ubicado en todo momento. Es así como la tarjeta controladora sabe hacia dónde
mover al motor.
La posición deseada se le da al servomotor por medio de
pulsos. Todo el tiempo debe haber una señal de pulsos presente en ese
cable.
La señal de pulsos controla al servo de la siguiente forma:
Nótese que el intervalo de tiempo entre pulsos se mantiene constante, y la variación del ancho de los mismos es lo que le indica al servo la posición que se desea. Estos valores de milisegundos han funcionado bastante bien para los servomotores FUTABA FP-S148, FUTABA S3003, Hitec HS-300 y HOBBICO COMMAND CS-51, y hemos encontrado también que son bastante tolerables en cuanto al período de los pulsos de control. Responden adecuadamente a pulsos desde 50hz hasta aproximadamente 100hz, pero una vez escogida una frecuencia de operación debe procurarse mantener la misma frecuencia todo el tiempo.
Los servomotores de modelismo, que son los que se usan en aviones, coches y vehículos a escala a control remoto.
Este es el diagrama de un servomotor típico para modelismo:
Un servomotor de estos es básicamente un motor eléctrico que sólo se puede
mover en un ángulo de aproximadamente 180 grados (no dan vueltas completas como
los motores normales). Noten que tiene TRES cables que salen de su cajita. El
rojo es de alimentación de voltaje (+5V), el negro es de tierra (0V ó GND). El
cable blanco (a veces amarillo) es el cable por el cuál se le pide al servomotor
en qué posición acomodarse (de 0 grados a 180).
En la siguiente figura se
observa cómo están acomodadas estas piezas dentro del servomotor:
La resistencia variable (también llamada "potenciómetro") está sujeta
a la flecha, y mide hacia dónde está rotada en todo momento. Es así como la
tarjeta controladora sabe hacia dónde mover al motorcito.
La posición deseada
se le da al servomotor por medio de pulsos. Todo el tiempo debe haber una señal
de pulsos presente en ese cable. Si por alguna razón necesitan tener el
servomotor prendido y no pueden generarle pulsos entonces aterricen ese cable
(conéctenlo a cero voltios). Si no, se arriesgan a que la señal inducida de 60hz
de las paredes haga que el servo se mueva como loco.
La señal de pulsos
controla al servo de la siguiente forma:
Para cada tipo de servo que se desee controlar, se deberá realizar una prueba preliminar para encontrar exactamente el período y la duración de los pulsos que mejor le funcionen. Un osciloscopio y un generador de señales facilitan mucho las cosas. Sin embargo, si no se cuenta con estas herramientas, se puede construir un generador de pulsos barato y sencillo con un circuito integrado 555 de la siguiente forma:
DETALLES IMPORTANTES CUANDO SE
TRABAJA CON SERVOS:
1.- Pon mucha
atención en las TIERRAS. La tierra (cable negro) del servo tiene que ir
conectada a la tierra de su fuente de alimentación (es decir, a la salida de
cero voltios), y también tiene que ir conectado a la tierra de tu
microcontrolador (o de tu computadora o de lo que sea con que lo estés
controlando).
2.- Si usas cables demasiado largos para controlar
tus servos, es probable que tengas ruido (tartamudeo) en los servos, esto ocurre
porque mientras más largo es el cable resulta más vulnerable a ruido
electromagnético (efecto antena) e incluso es perturbado por señales de otros
servos. Esto se soluciona utilizando cable blindado (coaxial), solo recuerda
aterrizar el blindaje.
3.- Trata de no cargarles demasiado peso a
los servos. Un servo en operación normal NO se debe de calentar. Si se
calienta es que le estás pidiendo que sostenga más peso del que es capaz (y
entonces puede echarse a perder pronto). Recuerda que básicamente un servo es
para mover algo, no para cargarlo. Si tu servo tiene
que soportar mucho peso, rediseña tu brazo de palanca o coloca resortes (o
ligas) para ayudarle.
4.- Siempre que sea posible utiliza fuentes
de voltaje separadas para tus servomotores y para tu electrónica digital. Cuando
controlas tus servos con una PC no tienes que preocuparte por eso (la PC ya
tiene su fuente propia), pero si quieres manejar los servos con un
microcontrolador es muy recomendable que tengas dos fuentes de voltaje
separadas (claro, con las tierras unidas también) porque los servomotores
generan bastante ruido hacia su línea de alimentación.
5.- Los
servos también envejecen con el uso. Si los tratas bien pueden durarte mucho
tiempo funcionando (tengo algunos que me han aguantado hasta un año y medio),
pero otros se me han hecho tartamudos incorregibles después de haberlos hecho
trabajar forzados durante 85 horas. Si tu servo comienza a tartamudear y estás
seguro de que la causa no es ninguna de las anteriores, todavía puedes tratar de
recalibrarlo. Esto significa cambiar el intervalo de tiempo entre los pulsos de
control hasta encontrar el nuevo más óptimo. Otra opción es desarmarlo y limpiar
el potenciómetro que tienen dentro con algún spray limpiador. Si todo falla y tu
servo definitivamente ya no quiere funcionar bien, no lo tires. Todavía puedes
desarmarlo y utilizar el motor con la caja de engranes, y (a veces) puede
aprovechar incluso parte de la electrónica de control de su tarjetita para
convertirlo en un motor bidireccional. Pero eso se verá más adelante en otro
documento.
En nuestro proyecto se
utilizo el PIC 16F84A, programándolo deacuerdo al siguiente código realizado en
Matlab.
LIST P = 16F84A
PORTA EQU 0X05
PORTB EQU 0X06
TRISA EQU 0X05
TRISB EQU 0X06
ESTADO EQU 0X03
RP0 EQU 0X05
CONT1 EQU 0X20
CONT2 EQU 0X21
CONT2_T EQU 0X22
ORG 00
BSF ESTADO, RP0
MOVLW B'00011111'
MOVWF TRISA
MOVLW B'11111110'
MOVWF TRISB
BCF ESTADO, RP0
DORIS BTFSS PORTB,1
GOTO LAURA
MOVLW D'57'
MOVWF CONT1
MOVLW D'11'
MOVWF CONT2
BSF PORTB, 0
CALL RETARDO
NOP
MOVLW D'64'
MOVWF CONT1
MOVLW D'45'
MOVWF CONT2
BCF PORTB, 0
CALL RETARDO
NOP
GOTO DORIS
LAURA BTFSS PORTB,2
GOTO MEDIO
MOVLW D'59'
MOVWF CONT1
MOVLW D'8'
MOVWF CONT2
BSF PORTB, 0
CALL RETARDO
NOP
MOVLW D'67'
MOVWF CONT1
MOVLW D'45'
MOVWF CONT2
BCF PORTB, 0
CALL RETARDO
NOP
GOTO DORIS
MEDIO BTFSS PORTB,3
GOTO ORIGEN
MOVLW D'62'
MOVWF CONT1
MOVLW D'5'
MOVWF CONT2
BSF PORTB, 0
CALL RETARDO
NOP
MOVLW D'70'
MOVWF CONT1
MOVLW D'45'
MOVWF CONT2
BCF PORTB, 0
CALL RETARDO
NOP
GOTO DORIS
ORIGEN MOVLW D'29'
MOVWF CONT1
MOVLW D'2'
MOVWF CONT2
BSF PORTB, 0
CALL RETARDO
NOP
MOVLW D'58'
MOVWF CONT1
MOVLW D'60'
MOVWF CONT2
BCF PORTB, 0
CALL RETARDO
NOP
GOTO DORIS
RETARDO NOP
LAZO2 MOVF CONT2, W
MOVWF CONT2_T
LAZO1 DECFSZ CONT2_T
GOTO LAZO1
DECFSZ CONT1
GOTO LAZO2
RETURN
END