Академический Документы
Профессиональный Документы
Культура Документы
Si bien los lenguajes de programación han ido evolucionando al igual que los
autómatas o robots, su uso para prótesis es algo relativamente nuevo, pues éstos
se llevaban a cabo en su mayoría por procesos mecánicos, como nos dice la
autora Leidy, “Las prótesis de mano mecánicas son dispositivos que se usan con
la función de cierre o apertura a voluntad, controlados por medio de un arnés que
se encuentra sujeto alrededor de los hombros, parte del pecho y del brazo”. Solo
pueden ser utilizados para el agarre de objetos relativamente grandes y redondos
debido a la poca precisión del mecanismo. El uso de prótesis eléctricas es algo
sumamente más complicado, pues utilizan motores eléctricos en los dispositivos
terminales, muñeca y codo, con una batería recargable. Es posible controlarlas de
varias formas: servo control, un botón pulsador o un interruptor con arnés. Su uso
combinado con el control de la programación ha revolucionado el campo de las
prótesis electrónicas, y en la actualidad existen diversos estudios avanzados que
utilizan las ondas cerebrales para controlar los componentes de las prótesis, e
incluso pueden recibir señales de vuelta al cerebro por medio de sensores y así
poder volver a sentir con éstas extremidades artificiales. ( M. Pérez, 2011)
Programa principal:
//Definimos los sensores y los servos, al igual que los pines de cada entrada.
void setup()
dedo1.attach(servoPin1); //Pulgar
dedo2.attach(servoPin2); //Índice
dedo3.attach(servoPin3); //Corazón
dedo4.attach(servoPin4); //Anular
dedo5.attach(servoPin5); //Meñique
pinMode(servoPin1, OUTPUT);
pinMode(servoPin2, OUTPUT);
pinMode(servoPin3, OUTPUT);
pinMode(servoPin4, OUTPUT);
pinMode(servoPin5, OUTPUT);
pinMode(flexPin1, INPUT);
pinMode(flexPin2, INPUT);
pinMode(flexPin3, INPUT);
pinMode(flexPin4, INPUT);
pinMode(flexPin5, INPUT);
void loop()
// Definimos las variables 'pos' como nos interese, de forma proporcional a los
datos que recibamos de los flexores de tensión
(input).
Más tarde éstos han sido ajustados mediante prueba y error, dependiendo
principalmente de cómo posicionemos las barras flexoras.
dedo1.write(pos1);
dedo2.write(pos2);
dedo3.write(pos3);
dedo4.write(pos4);
dedo5.write(pos5);
Este programa únicamente fue empleado para la colocación de todos los servos
en la misma posición, de forma que, a la hora de realizar el montaje de los discos,
podamos saber el ángulo en que se encontraban.
#include <Servo.h>
Servo servoMotor;
void setup() {
Serial.begin(9600);
servoMotor.attach(5);
}
void loop() {
// Desplazamos a la posición 0º
servoMotor.write(0);
// Esperamos 1 segundo
delay(1000);
void setup() {
pinMode(flexPin1, INPUT);
pinMode(flexPin2, INPUT);
pinMode(flexPin3, INPUT);
pinMode(flexPin4, INPUT);
pinMode(flexPin5, INPUT);
Serial.begin(9600);
}
void loop() {
Serial.print(flex1);
Serial.print(" ");
Serial.print(flex2);
Serial.print(" ");
Serial.print(flex3);
Serial.print(" ");
Serial.print(flex4);
Serial.print(" ");
Serial.println(flex5);
//Pausa
delay(100);