Sei sulla pagina 1di 14

DISEÑO Y DESARROLLO DE UNA MANO ROBÓTICA

CONTROLADA CON ARDUINO

DESIGN AND DEVELOPMENT OF A ROBOTIC HAND


CONTROLLED WITH ARDUINO

Aguilar Guzmán, Hugo Alejandro; Alvarado Rodríguez, César Andrés; Chaupe Cueva, Jandir Alexander y Figallo
Valdivieso, David Francisco

Facultad de Ingeniería Industrial. Escuela Profesional de Ingeniería Mecatrónica. UNP

Resumen
En este artículo científico, presentamos el diseño y desarrollo de una mano robótica controlada
mediante la plataforma Arduino. El objetivo principal de este estudio es crear una mano artificial
que imite los movimientos y la funcionalidad de una mano humana, brindando una solución
versátil y de bajo costo para aplicaciones en el campo de la robótica y la asistencia médica. El
diseño se centra en la integración de actuadores, sensores y la plataforma Arduino para lograr
un control preciso y fluido de la mano robótica. Se describen los componentes utilizados, como
servomotores y sensores de flexión, junto con su configuración y conexión con la placa Arduino.
La programación se basa en un enfoque de control por retroalimentación, permitiendo que la
mano robótica pueda adaptarse a diversas tareas y seguir comandos sencillos de manera
eficiente. Este artículo contribuye al campo de la robótica al presentar un enfoque práctico y
accesible para la creación de una mano robótica funcional utilizando la plataforma Arduino. Los
resultados demuestran la viabilidad de esta solución en varias aplicaciones y proporcionan una
base para futuras investigaciones en el desarrollo de sistemas robóticos más avanzados y
especializados.
Palabras clave: Mano robótica, Arduino, Control por realimentación, Sensores de flexión,
Servomotores.

Abstract
In this scientific article, we present the design and development of a robotic hand controlled
through the Arduino platform. The primary objective of this study is to create an artificial hand
that mimics the movements and functionality of a human hand, offering a versatile and cost-
effective solution for applications in the fields of robotics and medical assistance. The design
revolves around the integration of actuators, sensors, and the Arduino platform to achieve precise
and seamless control of the robotic hand. The utilized components, such as servomotors and flex
sensors, are detailed, along with their configuration and connection to the Arduino board. The
programming is based on a feedback control approach, enabling the robotic hand to adapt to
various tasks and respond to simple commands efficiently. This article contributes to the robotics
field by presenting a practical and accessible approach to creating a functional robotic hand
using the Arduino platform. The results demonstrate the feasibility of this solution in multiple
applications and provide a foundation for future research in the advancement of more
sophisticated and specialized robotic systems.
Keywords: Robotic hand, Arduino, Feedback control, Flex sensors, Servo motors.
I. INTRODUCCIÓN II. ESQUEMA DEL PROYECTO
La creciente intersección entre la robótica y El proyecto planteado es una mano robótica
la tecnología ha impulsado avances cuyos dedos se mueven por medio de
significativos en el desarrollo de sistemas servomotores SG90, que a su vez son
mecatrónicos innovadores. En este contexto, controlados por un Arduino UNO y por
la presente investigación se centra en el sensores de flexión.
"Diseño y Desarrollo de una Mano Robótica
Controlada con Arduino", con el objetivo de El esquema eléctrico planteado es el
crear una solución funcional y accesible que siguiente:
simule los movimientos y la versatilidad de
una mano humana.
La necesidad de prótesis y dispositivos
robóticos que puedan imitar las capacidades
motoras y funcionales de las extremidades
humanas ha dado lugar a investigaciones
interdisciplinarias en ingeniería,
biomecánica y ciencias médicas. El Para una mejor apreciación, revisar el Anexo
propósito esencial de esta investigación es N° 01.
abordar este desafío al emplear la plataforma Los materiales que se emplearán para
Arduino para diseñar y desarrollar una mano realizar el proyecto son:
robótica que ofrezca una alternativa
asequible y efectiva en el campo de la • Arduino UNO
robótica y la asistencia médica. • 5 servomotores SG90
La integración de actuadores, sensores y la • 2 baterías de 9V
programación adaptable de Arduino es • Cables de conexión
fundamental para lograr un control preciso y • 5 capacitores de 1uF
natural de la mano robótica. A través de la • 10 resistencias de 10kΩ
implementación de servomotores y sensores El diagrama de flujo que describe el
de flexión, esta investigación busca no solo funcionamiento del sistema se presenta a
emular los movimientos de una mano continuación:
humana, sino también permitir una
interacción fluida y versátil en una variedad
de aplicaciones.
En el siguiente artículo, detallaremos la
metodología utilizada en el diseño y la
construcción de la mano robótica, así como
la programación y los algoritmos de control
implementados para lograr su funcionalidad.
Para la realización de la presente
investigación se ha establecido 5 procesos:
1. Esquema del proyecto Para una mejor apreciación, revisar el Anexo
2. Modelado matemático N° 02.
3. Diagrama de bloques
4. Simulación en Matlab
5. Elaboración del proyecto III. MODELADO MATEMÁTICO DEL
6. Programación del código SERVOMOTOR
7. Funcionamiento del proyecto
Se plantea realizar el modelado matemático
de los servomotores, considerando que son
motores DC cuya entrada es el voltaje y la
salida es la posición angular.
Los elementos más importantes de un motor 𝑉(𝑠) = 𝑅𝐼(𝑠) + 𝐾𝑎 𝜔(𝑠)
DC vienen representados por la siguiente
figura que muestra el interior de la armadura 𝑉(𝑠) − 𝐾𝑎 𝜔(𝑠)
𝐼(𝑠) = … (3)
del servomotor: 𝑅
Ahora se procede a realizar el análisis de la
parte mecánica:

∑𝑇 = 𝐽 ∝

𝑑𝜔(𝑡)
𝑇𝑚 (𝑡) − 𝑇𝐵 = 𝐽
𝑑𝑡
Donde: Donde Tb es una fuerza de fricción:
• v: Voltaje de entrada [V] 𝑇𝐵 = 𝐵𝜔(𝑡)
• i(t): Corriente de la armadura
𝑑𝜔(𝑡)
• R: Resistencia de la armadura [Ω] 𝑇𝑚 (𝑡) − 𝐵𝜔(𝑡) = 𝐽
• L: Inductancia de la armadura [H] 𝑑𝑡
• ea: Fuerza contra electromotriz [V] Además, el valor del par mecánico Tm:
• J: Momento de inercia
• B: Coeficiente de fricción viscosa 𝑇𝑚 = 𝐾𝑚 𝑖(𝑡)
[N.m.s] Entonces, obtenemos:
• Tm: Torque del motor [N.m]
• Wt: Velocidad angular del motor 𝑑𝜔(𝑡)
𝐾𝑚 𝑖(𝑡) − 𝐵𝜔(𝑡) = 𝐽
[rad.s] 𝑑𝑡
Se empieza por realizar el análisis de la parte 𝑑𝜔(𝑡)
eléctrica. Se aplica la ley de mallas: 𝐾𝑚 𝑖(𝑡) = 𝐽 + 𝐵𝜔(𝑡)
𝑑𝑡
𝑣(𝑡) = 𝑉𝑅 + 𝑉𝐿 + 𝐸𝑎 (𝑡) Se aplica transformada de Laplace:
𝑑𝑖(𝑡) 𝐾𝑚 𝐼(𝑠) = 𝐽𝑠𝜔(𝑠) + 𝜔(𝑠)
𝑣(𝑡) = 𝑅𝑖(𝑡) + 𝐿 + 𝐸𝑎 (𝑡)
𝑑𝑡
𝐾𝑚 𝐼(𝑠) = [𝐽𝑠 + 𝐵]𝜔(𝑠)
𝐽𝑠 + 𝐵
En términos de ingeniería, siempre se busca 𝐼(𝑠) = 𝜔(𝑠) … (4)
𝐾𝑚
el modelo más simplificado posible, por ello
para este caso se toma en cuenta que cuando Igualamos (3) y (4)
el valor de la resistencia es mucho mayor a
𝑉(𝑠) − 𝐾𝑎 𝜔(𝑠) 𝐽𝑠 + 𝐵
la inductancia (R >> L), como suele pasar, se = 𝜔(𝑠)
puede despreciar el valor de L. 𝑅 𝐾𝑚

Por lo tanto, se obtiene: 𝐾𝑚 [𝑉(𝑠) − 𝐾𝑎 𝜔(𝑠) ] = 𝑅[𝐽𝑠 + 𝐵]𝜔(𝑠)

𝑣(𝑡) = 𝑅𝑖(𝑡) + 𝐸𝑎 (𝑡) … (1) 𝐾𝑚 𝑉(𝑠) − 𝐾𝑚 𝐾𝑎 𝜔(𝑠) = 𝑅[𝐽𝑠 + 𝐵]𝜔(𝑠)


También es necesario indicar que la fuerza 𝐾𝑚 𝑉(𝑠) = 𝑅[𝐽𝑠 + 𝐵]𝜔(𝑠) + 𝐾𝑚 𝐾𝑎 𝜔(𝑠)
contra electromotriz es proporcional a la
velocidad angular, por lo tanto: 𝐾𝑚 𝑉(𝑠) = [𝑅(𝐽𝑠 + 𝐵) + 𝐾𝑚 𝐾𝑎 ]𝜔(𝑠)

𝐸𝑎 (𝑡) = 𝐾𝑎 𝜔(𝑡) … (2) 𝜔(𝑠) 𝐾𝑚


=
𝑉(𝑠) 𝑅(𝐽𝑠 + 𝐵) + 𝐾𝑚 𝐾𝑎
Reemplazamos (2) en (1):
𝜔(𝑠) 𝐾𝑚
𝑣(𝑡) = 𝑅𝑖(𝑡) + 𝐾𝑎 𝜔(𝑡) =
𝑉(𝑠) 𝑅𝐽𝑠 + 𝑅𝐵 + 𝐾𝑚 𝐾𝑎
Se aplica transformada de Laplace:
De esta forma se obtuvo la función de Aplicando transformada de Laplace:
transferencia Velocidad angula – Voltaje. Sin
embargo, lo que necesitamos en la función 𝐸𝑎 (𝑠) = 𝐾𝑎 𝜔(𝑠)
de transferencia Posición – Voltaje, 𝑇𝑚 = 𝐾𝑚 𝐼(𝑠)
integrando la ecuación:
𝑅𝐼(𝑠) = 𝑉(𝑠) − 𝐸𝑎 (𝑡)
𝜃(𝑡) = ∫ 𝜔(𝑡)
𝑇𝑚 (𝑠) − 𝐵𝜔(𝑠) = 𝐽𝑠𝜔(𝑠)

ℒ[𝜃(𝑡) ] = ℒ [∫ 𝜔(𝑡) ] Se traslada cada ecuación a digrama de


bloques:
1
𝜃(𝑠) = 𝜔(𝑠) 𝐸𝑎 (𝑠) = 𝐾𝑎 𝜔(𝑠)
𝑠
𝑠 𝜃(𝑠) = 𝜔(𝑠) ω(s) Ea(s)
Km
𝑠 𝜃(𝑠) 𝐾𝑚
=
𝑉(𝑠) 𝑅𝐽𝑠 + 𝑅𝐵 + 𝐾𝑚 𝐾𝑎
𝜃(𝑠) 1 𝑇𝑚 = 𝐾𝑚 𝐼(𝑠)
𝐾𝑚
= ∗
𝑉(𝑠) 𝑠 𝑅𝐽𝑠 + 𝑅𝐵 + 𝐾𝑚 𝐾𝑎 I(s) Tm(s)
Kt
𝜃(𝑠) 𝐾𝑚
= 2
𝑉(𝑠) 𝑅𝐽𝑠 + (𝑅𝐵 + 𝐾𝑚 𝐾𝑎 )𝑠

Lo que resta es reemplazar los valores del 𝑅𝐼(𝑠) = 𝑉(𝑠) − 𝐸𝑎 (𝑡)


servomotor SG90.
V(s) + 1 I(s)
• Km = Ka = 0,2452
- 𝑅
• J = 0,01
• R = 4,7
• B = 0,1
Km
Reemplazando los valores se obtiene:
𝜃(𝑠) 0.2452
=
𝑉(𝑠) (4,7)(0,01)𝑠 2 + [(4,7)(0,1) + (0.2452)(0.2452)]𝑠
𝑇𝑚 (𝑠) − 𝐵𝜔(𝑠) = 𝐽𝑠𝜔(𝑠)

Tm(s) + 1 ω(s)
𝜽(𝒔) 𝟎. 𝟐𝟒𝟓𝟐 𝐽𝑠
= -
𝑽(𝒔) 𝟎. 𝟎𝟒𝟕𝒔𝟐 + 𝟎. 𝟓𝟑𝟎𝟏𝒔

B
IV. DIAGRAMA DE BLOQUES DEL Uniendo los diagramas se obtiene el
SERRVOMOTOR siguiente diagrama de bloques:

Se emplean 4 ecuaciones obtenidas durante


el modelado: V(s) 1 I(s) Tm(s) 1 ω(s)
Kt
𝐸𝑎 (𝑡) = 𝐾𝑎 𝜔(𝑡) + 𝑅 𝐽𝑠
-
+ -
𝑇𝑚 = 𝐾𝑚 𝑖(𝑡)
B
𝑣(𝑡) = 𝑅𝑖(𝑡) + 𝐸𝑎 (𝑡)
Km
𝑑𝜔(𝑡)
𝑇𝑚 (𝑡) − 𝐵𝜔(𝑡) =𝐽
𝑑𝑡
La salida del diagrama de bloques obtenido
es la velocidad angular, necesitamos obtener
1
como salida la posición angular. 𝐾𝑝 + (𝐾𝑑 )(𝑠) + (𝐾𝑖 ) ( )
𝑠
Para ello, agregamos un bloque integrador.
𝐾𝑖
𝐾𝑝 + 𝐾𝑑 𝑠 +
𝑠
V(s 1 I(s) Tm(s 1 ω(s 1 θ(s
) +
Kt ) 𝐾𝑑 𝑠2 + 𝐾𝑝 𝑠 + 𝐾𝑖
𝑅 𝐽𝑠 ) )
- 𝑠
+ - 𝑠
B

K V(s) θ(s)
𝐾𝑑 𝑠 2 + 𝐾𝑝 𝑠 + 𝐾𝑖 0.2452
m
+ 𝑠 0.047𝑠 2 + 0.5301𝑠
-
Este diagrama representa la armadura del
servomotor, su versión reducida sería:

V(s) θ(s) V(s) θ(s)


𝐾𝑚 0.2452(𝐾𝑑 𝑠 2 + 𝐾𝑝 𝑠 + 𝐾𝑖 )
2
𝑅𝐽𝑠 + (𝑅𝐵 + 𝐾𝑚 𝐾𝑎 )𝑠 + 0.047𝑠 3 + 0.5301𝑠 2
-

0.2452(𝐾𝑑 𝑠2 + 𝐾𝑝 𝑠 + 𝐾𝑖 ) 𝑎
Con los valores de servomotor SG90 =
obtenemos: 0.047𝑠3 + 0.5301𝑠2 𝑏
𝑎 𝑎
𝜃(𝑠) 𝑏 𝑎
V(s) 0.2452 θ(s) = 𝑎 = 𝑏 =
𝑉(𝑠) 1 + 𝑏+𝑎 𝑎+𝑏
0.047𝑠2 + 0.5301𝑠 𝑏 𝑏
𝑎 + 𝑏 = 0.2452(𝐾𝑑 𝑠 2 + 𝐾𝑝 𝑠 + 𝐾𝑖 ) + 0,047𝑠 3
+ 0,5301𝑠 2
Considerando la inclusión de un controlador
PID, debemos tener en cuenta la influencia 𝑎 + 𝑏 = 0,047𝑠 3 + (0.2452𝐾𝑑 + 0.5301)𝑠 2
del factor proporcional (Kp), derivativo (Kd) + 0.2452𝐾𝑝 𝑠 + 0.2452𝐾𝑖
e integral (Ki) en el sistema.

Kp 0.2452(𝐾𝑑 𝑠 2 + 𝐾𝑝 𝑠 + 𝐾𝑖 )
0,047𝑠 3 + (0.2452𝐾𝑑 + 0.5301)𝑠 2 + 0.2452𝐾𝑝 𝑠 + 0.2452𝐾𝑖
V(s) + θ(s)
+
Kd s Planta
+
- +
De esta forma, obtenemos la función de
1 transferencia con realimentación (FT):
Ki
𝑠 0.2452𝐾𝑑 𝑠 2 + 0.2452𝐾𝑝 𝑠 + 0.2452𝐾𝑖
0,047𝑠 3 + (0.2452𝐾 2
𝑑 + 0.5301)𝑠 + 0.2452𝐾𝑝 𝑠 + 0.2452𝐾𝑖

Así pues, hemos encontrado que la función


Se procede a realizar la reducción del
diagrama de bloques. V(s) θ(s)
FT
Kp
+ de transferencia de la posición angular en
+ base al voltaje de entrada se rige por dicha
Kd s
función que también incluye la aplicación de
+
un controlador PID cuyos factores Kp, Ki y
1 Kd influyen en la respuesta del sistema.
Ki
𝑠
V. SIMULACIÓN DEL SERVOMOTOR 𝜃(𝑠) = 𝑉(𝑠) ∗ 𝐹𝑇
Para simular el sistema en el software Esta función luego se grafica e incluye el
Matlab se realiza el siguiente procedimiento. setpoint de estabilidad que vendría a ser el
valor de entrada.
Primero, se crean los vectores con el
numerador y denominador de la función de La función “step(graf,t)” grafica la señal de
transferencia base: salida, indicando que la señal de entrada del
𝜃(𝑠) sistema será del tipo escalón. Además, en sus
0.2452
= parámetros está indicada la función a
𝑉(𝑠) 0.047𝑠2 + 0.5301𝑠 graficar y los saltos del eje del tiempo.
Seguidamente, la función “axis([0 3 0 7])”
permite indicar los límites de los ejes. Para
este caso se ha establecido que el eje
horizontal tiene un rango de 0 a 3, mientras
que el eje vertical tiene un rango de 0 a 7.
Para finalizar, la variable “title()” permite
Además, se declara la entrada de 5V que establecer un título para la gráfica.
requieren el sistema del servomotor para
funcionar. El objetivo de realizar esta simulación es
encontrar los valores adecuados de Kp, Ki y
Luego, se procede a insertar los valores de Kd que permitan al sistema producir una
los factores Kp, Ki y Kd. respuesta rápida y precisa.
La primera simulación se realizó con valores
de:
𝐾𝑝 = 10 𝐾𝑖 = 1 𝐾𝑑 = 1
Posteriormente, se programa el cálculo de la
función de transferencia que incluye los
factores Kp, Ki y Kd, además de la
realimentación.

De esta forma queda registrado en el


programa la función de transferencia con
realimentación:
0.2452𝐾𝑑 𝑠 2 + 0.2452𝐾𝑝 𝑠 + 0.2452𝐾𝑖
0,047𝑠3 + (0.2452𝐾𝑑 + 0.5301)𝑠2 + 0.2452𝐾𝑝 𝑠 + 0.2452𝐾𝑖

Finalmente, se ordena elaborar la gráfica de


respuesta.
La gráfica obtenida de la salida muestra un
ligero sobreimpulso al momento de
estabilizarse.
Una respuesta más aproximada a la deseada
se obtiene con los siguientes parámetros:
En la variable ‘t’ se guarda el salto de eje del 𝐾𝑝 = 200 𝐾𝑖 = 1 𝐾𝑑 = 1
tiempo.
La variable “graf” guarda la función que
representa la salida del sistema, que se
obtiene de:
VI. ELABORACIÓN DEL PROYECTO
La elaboración del presente proyecto se
estructuró en 4 partes.
Fabricación de la mano
Para fabricar la mano robótica se intentó una
opción casera fabricada con tecnopor, nylon
y guantes. En el tecnopor se hicieron los
moldes de la mano y dedos, separándolos
por falanges. A cada falange se le realizó un
corte diagonal en sus extremos para que el
dedo tuviera la capacidad de doblarse.
Con estos valores obtenemos una señal de
Para aumentar la resistencia de la mano, se
salida con un sobreimpulso demasiado
forro cada pieza con engrudo y papel
elevado. Al probar con los valores de:
periódico, se dejó secar y se repitió el
𝐾𝑝 = 100 𝐾𝑖 = 1 𝐾𝑑 = 1 proceso un par de veces más. Luego, se
unieron las piezas.

Se obtiene la misma velocidad de reacción,


pero con menos sobreimpulso. Debido a que Para unir las falanges de cada dedo, se pasó
la señal de salida alcanza de forma natural su un hilo nylon por el centro de cada falange,
punto de estabilidad, no es necesario se estiró hacia la mano y se ató un extremos
modificar el valor de Ki, solo resta ajustar el a un servomotor por cada dedo. Esto
valor de Kd para regular las oscilaciones del permitirá que, al girar el servomotor, jalé del
sistema antes de estabilizarse. hilo, y a su vez jalará del dedo provocando
El resultado que más se aproxima a lo ideal que se doble.
se obtiene con los valores: Para permitir que los dedos regresen a su
𝐾𝑝 = 500 𝐾𝑖 = 1 𝐾𝑑 = 300 posición original, en el dorso de cada dedo,
en la unión de cada falange, se colocaron 3
trozos de liga, de tal forma que cuando los
servomotores dejen de aplicar fuerza, las
ligas actúen como resorte y los dedos
vuelvan a su posición original.
En este punto es necesario aclarar que con la
mano casera realizada se realizaron pruebas
con el circuito terminado, sin embargo, era
complicada de manipular debido a que les
faltaba estabilidad a los dedos, lo que
provocaba que se torcieran y se atascaran.
Por ello, como solución se decidió utilizar
una mano impresa en 3D prestada, con la que
se realizaron las pruebas finales.
En cada rectángulo se colocará dos cable
para circuitos, un cable en cada rectángulo
de aluminio. Ambos cables serán los pines
del sensor de flexión. Luego, se procede a
sellar los sensores con cinta de embalaje.

Para finalizar, se unen a un guante (el que va


Fabricación de los sensores caseros a usar el operario) utilizando cinta aislante.
Se debe asegurar que los sensores estén lo
Para la realización del proyecto es necesario más rectos posibles y que estén bien sujetos
el uso de sensores de flexión. El sensor de al guante.
flexión comercial puede detectar la flexión
de un material en una dirección, básicamente
es una resistencia que cambia su valor en
función del nivel de flexión. Sin embargo,
sensor comercial tiene costes altos.

Debido a su alto coste, en el presente


proyecto se ha optado por elaborar y utilizar
sensores de flexión caseros. Dichos sensores Armado del circuito
se elaborarán con hojas bond, grafito,
Siguiendo el esquema eléctrico presentado,
aluminio y cables.
se procede a ensamblar el circuito en un
La fabricación es bastante sencilla, se toma protoboard para realizar las pruebas.
un rectángulo de hoja bond, la mitad se
En primer lugar, se armó las mallas de
rellena de grafito (lápiz) y en la otra mitad se
protección para los sensores. Estas mallas
colocan dos rectángulos de papel aluminio.
también actuarán como un filtro pasabajas
que eliminará la mayor parte del ruido al
estabilizar la frecuencia de la señal de
entrada y mejorará la señal recibida de los
sensores.
Las 5 mallas se armaron en un protoboard y Finalmente, el circuito ensamblado en
se unieron a sus respectivos sensores, así protoboard para pruebas resulta así:
también al respetivo pin del Arduino UNO
que le correspondía a cada una.

Luego, se procede a conectar los


servomotores y las entradas de los sensores.

VII. PROGRAMACIÓN DEL


PROYECTO
Para la realización del proyecto se
emplearon 3 códigos. El primero es para la
calibración y prueba de los servomotores,
mientras que el segundo es para la
calibración y prueba de los sensores.
Finalmente, el tercer código permite el
control de los servomotores usando los
sensores de flexión.
Código de calibración de servomotores
Se empieza declarando los servomotores

A través de prueba y error, variando los


Para un mejor orden, se ordenan los valores mientras se realizaban las pruebas, se
componentes y se traslada a un solo determinó los límites máximo y mínimo del
protoboard. rango de movimiento que ofrece los
servomotores.
Una vez definidos los límites de los Una vez definidos los límites de los
servomotores, se crea una ciclo simple que sensores, se establece el rango de lectura de
mueve cada uno de los servo, esto se realiza la señal de entrada. Posteriormente se
con la finalidad de comprobar que todos los procede a realizar una conversión del rango
servos funcionen adecuadamente. de la señal de entrada a un rango de 0° a
180°.

Código del control de la mano


En el código final del proyecto, se inicia con
la declaración de los pines en los que irán
conectados los sensores de cada dedo.
Código de calibración de sensores También se inicializa la posición de las
lecturas en 0.
Las pruebas de los sensores se realizaron
sensor por sensor, así que solo fue necesario
declarar una entrada.

Al igual que con los servomotores, se aplica


el método de prueba y error para determinar
los límites máximo y mínimo de la señal de
entrada que ofrecen los sensores cuando se
encuentran estirados y flexionados Además, se declaran los servomotores que
respectivamente. moverán cada dedo.

Posteriormente, se indican los límites de los


servomotores que se registraron durante su
calibración, así también, se colocan los
servomotores en su posición inicial.
VIII. RESULTADOS
El diseño y desarrollo de la mano robótica
controlada con Arduino se materializó en un
sistema funcional que demostró la capacidad
de emular movimientos y acciones propios
de una mano humana. Los componentes
clave utilizados en el sistema, incluidos los
servomotores y los sensores de flexión,
permitieron lograr un control preciso y una
respuesta fluida en diversas aplicaciones.
En términos de movilidad y destreza, la
mano robótica fue capaz de realizar una
gama la flexión y extensión de los dedos.
La integración de sensores de flexión en los
dedos permitió una retroalimentación
sensorial crucial para el control. Estos
Para el funcionamiento del proyecto, se sensores detectaron la flexión de los dedos,
empieza por leer la señal de entrada que lo que permitió al sistema adaptarse a las
ofrecen los sensores. acciones del usuario y ajustar la posición y
la fuerza de los servomotores en
consecuencia.
Las primeras pruebas de funcionamiento se
realizaron solo con los sensores, de forma
individual:

Luego, se procede a transformar el valor de


entrada a uno equivalente considerando la
conversión a un rango de 0° a 180° mediante
la función ‘map( )’

Inmediatamente después de la conversión, se


emite la orden a los servos para colocarse en
la posición indicada mediante la función
‘myServo.write( )’.
IX. CONCLUSIONES
La investigación presentada ha demostrado
la viabilidad y el potencial de diseñar y
desarrollar una mano robótica controlada
con la plataforma Arduino. A través de la
integración cuidadosa de actuadores,
sensores y programación adaptable, se logró
crear una mano robótica funcional capaz de
imitar los movimientos y la versatilidad de
una mano humana.
La implementación de servomotores y
sensores de flexión permitió un control
preciso y fluido de la mano robótica, lo que
abre un abanico de posibilidades en términos
de aplicaciones prácticas. La capacidad de la
mano para adaptarse a diversas tareas y
seguir comandos simples mediante el control
Luego de comprobar el correcto por retroalimentación subraya su potencial
funcionamiento de cada sensor con su tanto en la rehabilitación médica como en la
respectivo servomotor, se procedió a armar interacción humano-robot.
el proyecto y realizar las pruebas finales con
el guante: Los sensores de flexión permitieron
establecer un control en base a la variación
de su resistencia debido a la presión que
implica flexionarlo. Hay opciones
comerciales de precio elevado, pero también
hay opciones de armado casero más
económico. Aunque la opción casera resultó
útil y funcional en el proyecto, se
recomienda evaluar el uso de un sensor de
flexión comercial para una mayor precisión
en el control y una señal de entrada más
limpia.
La utilidad de esta investigación se extiende
a la comunidad de la robótica y la ingeniería
biomédica, proporcionando una alternativa
de bajo costo y accesible para la creación de
manos robóticas funcionales. Además, la
aplicación de la plataforma Arduino facilita
el acceso a esta tecnología, fomentando la
innovación y la experimentación.
Para concluir, este estudio contribuye
significativamente al avance de la robótica y
la ingeniería mecatrónica al ofrecer una
solución práctica y prometedora para la
creación de manos robóticas controladas con
Arduino. Con resultados tangibles y
aplicaciones tangibles, se allana el camino
para futuras innovaciones que transformarán
la manera en que interactuamos con la
tecnología robótica en diversos contextos.
ANEXOS
ANEXO N° 01: ESQUEMA ELÉCTRICO DEL PROYECTO
ANEXO N° 02: DIAGRAMA DE FLUJO DEL PROYECTO

Potrebbero piacerti anche