f Proyecto: Mano robotica ~ Ingenieria a nivel industrial

Visita mi canal de youtube

lunes, 17 de julio de 2017

Proyecto: Mano robotica


Introduccion
El objetivo del proyecto era crear una mano robótica que se controla mediante la detección de las contracciones musculares en el brazo del usuario y replicar los movimientos de la mano robótica.

Los electrodos se colocarán en múltiples áreas en el brazo del usuario y detectarán las diferencias de tensión de los músculos a medida que se contraen. La señal será alimentada en un circuito que amplifica y filtra la señal. La señal resultante será entonces enviada al microcontrolador PIC32 el cual analizará las lecturas. Un algoritmo luego decide qué dedos deben ser movidos y utiliza servos unidos a cada dedo de la mano para mover los dedos.


Diseño de alto nivel
Fundamentos y Fuentes de Idea del Proyecto
La inspiración para el proyecto vino de un interés en las señales biológicas que se activan en nuestros cuerpos y cómo controlan diversas partes del cuerpo. Queríamos entender mejor las señales enviadas a los nervios y los músculos de nuestros cuerpos y cómo podemos captar estas señales. Actualmente, se hace mucha investigación sobre interfaces neuronales entre seres humanos y máquinas, así que pensamos que un proyecto interesante y aplicable sería controlar una mano robótica simplemente usando impulsos nerviosos. A medida que la mano de una persona se mueve, los diversos músculos del brazo se contraen. Queríamos analizar las señales enviadas a los músculos del brazo y replicar los movimientos de la mano en una mano robótica.

Estructura lógica y método de configuración
Para leer las contracciones musculares en el brazo, se utilizaron técnicas electromiográficas de superficie (EMG). Los electrodos se colocaron en dos áreas en la parte inferior del brazo para leer las señales eléctricas. Estos lugares fueron elegidos por estimaciones empíricas, ya que produjeron las mayores contracciones musculares cuando los dedos fueron presionados. Dado que los electrodos se colocan en la superficie de la piel, la intensidad de la señal es muy débil (~ 2mV en el mejor de los casos) y ruidosa.

Para mejorar la señal, la señal se alimentó en un amplificador de instrumentación, seguido por un filtro de paso alto, un amplificador diferencial, y finalmente un filtro de paso bajo. Las se~nales amplificadas y filtradas se alimentaron a continuación en convertidores analógicos a digitales en el microcontrolador PIC32. Si se cumplían ciertas condiciones, se determinaba que un dedo estaba presionado y los servos tiraban una cuerda unida a un dedo de la mano robótica para contraerla.


Para el diseño del software, la estructura lógica de alto nivel para el flujo del programa viene dada por lo siguiente:






Estructura lógica para la implementación del software
Como indica el diagrama de flujo anterior, leemos el valor de entrada, realizamos algún procesamiento y detección basado en la entrada y movemos el actuador (servo) basado en el algoritmo de detección. Esto completa la descripción de software y hardware de alto nivel.

Compensaciones de hardware y software

Dado que las neuronas generalmente disparan entre 0-500 Hz, se usó una velocidad de muestreo de 500 Hz para el ADC. Esto significaba que nuevas lecturas de señal venían una vez cada 1/500 de segundo y el software tendría que procesar y estar listo para un nuevo valor dentro de ese tiempo. Dado que 500 Hz es una velocidad de muestreo relativamente pequeña, tanto los componentes de hardware como los de software fueron capaces de procesar con éxito dentro de ese tiempo.

Para optimizar aún más el proyecto, tratamos de equilibrar los aspectos de hardware y software. Para ello, hemos añadido un desplazamiento móvil averager dentro de software que básicamente actúa como un crudo filtro de paso bajo, ya que suaviza la señal y corta las frecuencias más altas. Esto produjo una lectura de señal más constante y constante en lugar de la señal de oscilación rápida que entra directamente en el ADC desde los electrodos. También hicimos un tradeoff de diseño utilizando un corte para que el filtro de paso alto fuera alrededor de 72 Hz, de modo que tuvimos una mejor eliminación del ruido de línea de 60 Hz, a expensas de perder algunos datos de señal a estas frecuencias.

También hicimos un tradeoff de diseño utilizando un corte para que el filtro de paso alto fuera alrededor de 72 Hz, de modo que tuvimos una mejor eliminación del ruido de línea de 60 Hz, a expensas de perder algunos datos de señal a estas frecuencias.
Relación de diseño de prject a IEEE disponible, ISO, ANSI, DIN, y otras normas.

No se utilizaron normas de IEEE, ISO, ANSI o DIN.

Patentes existentes, derechos de autor y marcas comerciales relevantes para el proyecto.

Ningunas patentes, derechos de autor, o marcas registradas son relevantes al proyecto pues todos los circuitos y software fueron diseñados por nosotros.

Diseño del programa / hardware
DISEÑO DE SOFTWARE

ADC

El ADC tiene dos funciones: muestreo y conversión. La tasa de muestreo para el ADC se establece utilizando un divisor de reloj y cambiando el tiempo de espera de muestra para el ADC. Todo esto se controla en la configuración inicial del ADC. El ADC está configurado para auto muestra y convertir. También analizamos dos valores de entrada analógica (AN2 y AN3), a partir de dos electrodos diferentes. Los resultados de conversión se colocan en el buffer ADC 0 y el buffer 1. El reloj ADC es de alrededor de 588 kHz.

Sin embargo, no obtenemos muestras a 588 kHz, ya que la mayoría de las señales EMG tienen un rango de frecuencias de 5-150 Hz. Por lo tanto, utilizamos Timer2 ISR para leer valores de buffer ADC a una velocidad de muestreo predeterminada. Hemos experimentado con diferentes tasas de muestreo y se encontró que 500 Hz era lo suficientemente bueno para la señal de no tener ningún aliasing. Para hacer esto, fijamos el prescaler a 16, y cargamos el temporizador con un valor de 50.000. La mayor parte del filtrado se realiza en el ISR. Las configuraciones configuradas para los periféricos involucrados se resumen en el siguiente diagrama:




ADC, OC, & Timer Configurations
Avergonzante

El propósito del averager es suavizar las lecturas ADC entrantes para producir una señal más consistente. Dado que las señales de nuestro cuerpo contienen muchas oscilaciones, la lectura de entrada al ADC también contiene muchas oscilaciones. Mediante el uso de un medidor de ventana deslizante, se promedia la lectura de la señal más reciente con las últimas 127 lecturas para producir una señal con menos variaciones.

El averager realiza un seguimiento de las últimas 127 lecturas ADC usando una matriz 127x2 llamada input_history. La primera columna de la matriz corresponde al par de electrodos 1 y la segunda columna corresponde al par de electrodos 2. La fila corresponde a la enésima lectura anterior. Cada vez que un nuevo voltaje es leído por el ADC, el ISR llama a la función averager para determinar el promedio de las lecturas anteriores más la nueva lectura. Lo hace añadiendo todos los elementos en una columna de la matriz y luego agrega la lectura ADC más reciente. A continuación, divide la suma por 128 y establece el resultado como la salida del filtro, que se envía de nuevo a la función de umbral para ser analizado.

Para actualizar la matriz input_history, la función averager establece el elemento j-1 de la matriz en el jth elemento y establece el 0º elemento en la lectura ADC más reciente.




LEFT: Flowchart for the averager implementation
RIGHT: Flowchart for updating history values

Detección de Región (Umbral)

Usamos dos electrodos para detectar 5 dedos. Cada entrada de electrodo tiene un rango ADC de 0-1024. Así podemos representar el espacio de entrada total como un espacio cuadrado 2D de tamaño 1024x1024. A continuación, empíricamente medir las regiones de bloque que cada dedo puede corresponder a. A pesar de que las fuerzas relativas de los diferentes dedos siguen siendo las mismas en diferentes personas o entornos, las magnitudes en sí eran personas y dependientes del entorno.

El ruido juega un papel en la determinación de las regiones en el espacio 2D para diferentes dedos. Para reducir al mínimo el ruido, nos cercioramos de que los alambres fueran trenzados juntos firmemente; No había fuente de alimentación directa desde una toma de corriente de CA; Y estábamos en un ambiente de poca luz lejos de la influencia de la frecuencia de 120Hz de los bulbos fluorescentes antedichos. Aunque no pudimos eliminar completamente el ruido, intentamos minimizarlo tanto como pudimos. A continuación, hicimos estimaciones empíricas para diferentes regiones de los dedos, mirando los valores de lectura ADC en PuTTy. Las regiones resultantes para diferentes dedos se ven en el siguiente diagrama:



inger Regions based on Electrode Inputs
Hemos comprobado la adición de consistencia en estas regiones umbral para activar un movimiento de los dedos. Hemos creado una variable de matriz llamada cambios que mantiene un registro del número de veces que se han encontrado las entradas ADC en cualquiera de las regiones de los dedos. También creamos una variable de array llamada finger_state, que se establece en 1 si se presiona un dedo en particular. En nuestro programa actual, lo limitamos de tal manera que sólo se puede presionar un dedo a la vez, ya que la detección múltiple de dedos requeriría más electrodos y más complejidad.

Si este número de cambios cruza un umbral superior para el dedo, marcamos ese dedo como presionado. De manera similar, para medir si un dedo en particular es liberado, decrementamos la variable de cambios para un dedo si estaba fuera de la región del dedo. Si este valor va por debajo de un umbral inferior, identificamos al dedo como liberado. Esto se ve sólo una aplicación de histéresis para la entrada de dedo, por lo que el dedo no fluctúa rápidamente hacia arriba y hacia abajo debido a las fluctuaciones aleatorias del ruido.

Elegimos mover sólo un dedo a la vez. Esto se hace utilizando limitando sólo el estado de un dedo para ser presionado en un momento dado. Esto se hace para que la complejidad de nuestro proyecto se reduzca. Si se va a implementar mucho movimiento de los dedos, tendríamos que usar más electrodos y encontrar formas innovadoras de mover las regiones para la combinación de dedos.

El diagrama de flujo para la identificación e histéresis de la región del dedo se muestra a continuación:





Region Identification & Hysteresis flowchart
Movimiento Servo

Para controlar los dedos de la mano robótica, los servos conectados a la cuerda tiran manualmente de los dedos hacia abajo cuando los servos giran 180 grados. Para controlar los servos, las ondas PWM enviadas al servo determinan a qué ángulo se asocia el servo. Por ejemplo, cuando la señal es alta durante 0,54 ms, el servo está a 0 grados. Cuando la señal es alta durante 2,5 ms, el servo apunta a 180 grados.

Dado que los servos operativos requieren una onda PWM de 50 Hz y el ciclo de reloj PIC32 es de 40 MHz, o 4010 ^ 6 ticks por segundo, 4010 ^ 6/50 = 800.000 ticks por período. Como 800.000 sobrecargas del temporizador, se utilizó un prescaler de 16. Por lo tanto, 800.000 / 16 = 50.000 ticks / período con un prescaler de 16. Se encontró que para obtener los servos para apuntar a 0 grados, 1.350 de las 50.000 garrapatas deben ser altos. Para que los servos apunten a 180 grados, 6.250 garrapatas tendrían que elevarse de un total de 50.000. Cargar la función PWM del PIC32 con el número de garrapatas que necesitan ser altos durante un período nos permitió salir con éxito las ondas PWM y controlar el ángulo al que estaban apuntando los servos.

Servo Lock

Cada servo tiene un tiempo finito para girar 180 grados. Estimamos empíricamente que este valor es de 600 ms. Tuvimos que asegurarnos de que ningún otro servo se movía cuando otro servo de dedo se movía, y asegúrese de no cambiar el estado de un dedo en particular a menos que haya pasado 600 ms. Ambas condiciones se cumplieron mediante la implementación de una variable denominada lock_motor. Inicialmente lock_motor se pone a 0 cuando no se está moviendo ningún servo de dedo. Si hay un cambio de estado y si no hay otro servo en movimiento, ajustamos lock_motor al dígito actual del dedo y nos aseguramos de que ningún otro dedo se mueva a menos que este servo de dedo restablezca el valor de lock_motor de nuevo a 0. Esto no se hace por lo menos 600 ms. Así, mediante la introducción de esta variable, nos aseguramos de que dos servos de dedo no se mueven al mismo tiempo. El diagrama de flujo para esta implementación se da a continuación:




FINGER SERVO MOVEMENT: Flowchart for making sure only one finger servo moved at a given time
Diseño de la mano

La mano en sí fue pedido pre-fabricados de Amazon: 4m Robotic Hand Kit. Cada dedo está unido a un pedazo de línea de pesca que, cuando se tira, hace que el dedo se contraiga. Adjuntamos un tablero en la base de los cinco servomotores montados en él, uno para cada dedo. Los cables que tiraban de cada dedo se unieron a un servo. Para mover un dedo los servos giran 180 grados, tirando del alambre y llevando los dedos de extendido a contraído.


                                                         Hand and servo motor setup



Electrodos

Con el fin de diferenciar las señales entre los diferentes dedos, se utilizaron dos conjuntos de dos electrodos en el antebrazo, todos referenciados a la misma tierra. Para ambos conjuntos, los dos electrodos se colocaron alrededor de un cuarto a media pulgada de distancia y se fijan al brazo del usuario con cinta adhesiva o almohadillas de pegado de espuma.





Electrode placement markings. The ground electrode was placed on the wrist.
When a muscle receives a signal from the nervous system, it triggers an action potential in the muscle cell, essentially just a voltage difference across the cell membrane. An attenuated version of these voltage differences can be measured on the surface of the skin, after passing through the dielectric medium of veins, body fat, and skin. The action potentials occur at varying frequencies depending on the strength of contraction of the muscle.
The Silver Chloride (AgCl) electrode consists of a silver electrode. A conductive gel containing Chloride ions is applied to the electrodes before they are attached to the skin. When a muscle in the vicinity of an electrode fires an action potential, it can be detected as a current of chloride ions on the skin. The chloride ions bind to a Silver atom and “knock off” an electron (the reverse reaction happens as well). The electron can then travel through a wire connected to the electrode as a normal current.

A Silver Chloride electrode
Para obtener una buena señal, los electrodos tuvieron que colocarse sobre el vientre del músculo que se está leyendo. Si los electrodos se colocan cerca de los tendones, la señal será inconsistente y no reflejará con exactitud la actividad del músculo. Además, hay varios músculos en el antebrazo muy cerca uno del otro. Esto hace que sea difícil aislar una señal de sólo un músculo. Con el fin de diferenciar entre las diferentes entradas generadas por diferentes dedos, se midió el mismo grupo de músculos en dos lugares diferentes. La actividad variable entre estas dos entradas nos permitió discriminar entre las señales generadas por la contracción de diferentes dedos.

Instrumentación Amplificador y filtro de paso de filtros de diseño

La señal detectable en la superficie de la piel debería estar teóricamente alrededor de 2 mV, pero se encontró que era significativamente menor en la práctica que alrededor de 10 uV. Con el fin de leer esta señal, hemos diseñado un amplificador de instrumentación. Debido a que la resistencia de un cuerpo humano es bastante alta, del orden de Megaohms, la impedancia de entrada del amplificador necesitaba ser significativamente mayor. El diseño del amplificador de instrumentación se caracteriza por una impedancia de entrada extremadamente alta, un bajo nivel de ruido y un alto rechazo de modo común. Esto fue ideal para nuestros propósitos ya que combatir el ruido fue nuestro desafío más importante durante este proyecto. El diseño básico del amplificador de instrumentación se derivó del esquema en Instrumentación Médica: Aplicación y Diseño, aunque cambiamos los valores de resistencia y condensador específicos. El amplificador que construimos contiene dos amplificadores op de entrada junto con un amplificador diferencial de dos etapas. La ganancia de la primera etapa fue de 25, y la ganancia de la segunda etapa fue de 214, con una ganancia total de 5350. El amplificador contiene filtros de paso alto y de paso bajo, que están destinados a reducir la señal recibida a los rangos de frecuencia que fueron Relevante para nosotros. El filtro de paso bajo tiene una frecuencia de corte de ~ 1500Hz, y el filtro de paso alto tiene un corte de 72Hz. El objetivo era eliminar el ruido de línea de 60Hz.





Esquema de simulación del amplificador de instrumentación. (Nota: los amplificadores operativos reales utilizados en el circuito fueron LF353, no LM358.Lamentablemente, el software de diseño no tiene estos como una opción.Sin embargo, los resultados fueron buenas estimaciones del diseño real)
El circuito final contenía dos de estos amplificadores, uno para cada uno de los dos conjuntos de electrodos. Al ejecutar la simulación del circuito, se vio que la salida del osciloscopio era:




Oscilloscope output: The input amplitude is 20 uV, and the output amplitude is 160 mV approximately. We see that we at least have a good enough gain to measure, as the ADC resolution is 3.3/1024 = 3.2 mV.
The bandpass filter is seen in the diagram below:


Bode Plot Viewer: The plot shows a bandpass filter that has a peak gain of 80.561 dB at around 265 Hz.
Enfoques fallidos

Filtro de Butterworth

El averager móvil todavía no era bastante constante para alisar las fluctuaciones. Así que tratamos de utilizar un filtro de paso bajo butterworth para suavizar las fluctuaciones de alta frecuencia mediante el uso de coeficientes tan pequeños como sea posible. Sin embargo, encontramos que el filtro que queríamos implementar todavía no eliminó los niveles de ruido que queríamos. Si remediamos lo anterior usando una frecuencia de corte baja y un filtro de polo alto, enfrentamos el problema de tener un tiempo de subida lento para la señal filtrada. Por lo tanto, abandonamos el enfoque anterior.

Red Neural

La red neuronal fue muy prometedora inicialmente. Hemos sido capaces de predecir dedos individuales con buenas probabilidades en ciertos casos. Sin embargo, el EMG superficial es una medida tan dependiente del ruido, que la red tiene que ser entrenada cada vez que la persona o el medio ambiente es cambiado. Incluso con este ser un obstáculo que se puede superar, es necesario que haya más capas ocultas en la red para obtener mayor precisión con más datos de entrenamiento. Con una sola capa de 20 nodos, usamos 500 nosotros. El tiempo de cálculo aumenta exponencialmente con más capas. Esto se puede remediar mediante el uso de memoria flash externa, pero hemos abandonado esa decisión por nuestras limitaciones presupuestarias.

Diferencial OpAmp

Antes de usar el diseño del amplificador de instrumentación, intentamos hacer un simple amplificador diferencial de dos etapas. Esto era algo suficiente, pero bastante ruidoso. La impedancia del amplificador fue del mismo orden de magnitud que la del usuario. Esto hizo que el amplificador fuera muy pobre.

Aislar cada dedo en función de la ubicación del músculo

El plan original para discriminar entre los diferentes insumos de los dedos fue localizar el músculo responsable de la contracción de cada dedo y adjuntar un conjunto de electrodos a la misma. Esto resultó demasiado difícil ya que los músculos en el antebrazo están muy juntos y algunos están enterrados debajo de otros.
Resultados
Rangos de entrada de dedo

Para un entorno libre de ruido, encontramos los diferentes rangos de dedos en el 2D generados por las 2 entradas de electrodo (1024x1024) para ser:



Range of voltages each finger on both sets of electrodes

Bandpass Filter & Gain Circuit




Hardware circuit layout used

Finger Movement Capture




Isolating each of the five fingers

El ADC interno de 10 bits se utilizó en nuestro diseño. Esto tiene 1024 valores con el valor más alto correspondiente a 3,3 V. Así, la resolución del ADC es de 3,2 mV. Además, dado que el ADC no está calibrado con precisión, este rango se redujo y por lo tanto teníamos un rango de voltaje más bajo para trabajar. Sin embargo, esto no era una limitación seria, ya que nuestras señales de entrada eran del orden de unos pocos cientos de mVs.

El filtro de promedio móvil utilizó variables de fix16 para que el tiempo de cálculo se pueda guardar en comparación con la aritmética de coma flotante.

Sincronización

Se utilizó un ISR de temporizador para leer los valores del tampón ADC a una velocidad fija de 500 Hz. Dado que el filtrado se realizó en cada lectura de buffer ADC, tuvimos que asegurarnos de que el tiempo de cálculo era menor que 1/500 s = 2 ms. Utilizamos otro temporizador para medir el tiempo de ejecución de todo el filtro y el algoritmo de detección de la región. Encontramos que incluso si una sola red neuronal de la capa oculta de 20 neuronas se implementó, el tiempo de cálculo no superó los 500 us. Por lo tanto, tenemos un exceso de tiempo suficiente para usar en el ISR id necesario. Vemos que esta restricción de tiempo se cumple.

Ancho de banda

Las señales EMG de superficie tienen un ancho de banda de 5-500 Hz. Sin embargo, las señales más prominentes están dentro de 5-150 Hz, con sólo unas pocas señales raramente excediendo este rango. Nuestro diseño de hardware al menos acomoda una parte importante de esta gama de frecuencias. Además, la frecuencia de muestreo es de 500 Hz, lo que da una frecuencia de Nyquist de 250 Hz. Las frecuencias más prominentes están todavía dentro de este rango. Esta restricción de ancho de banda se cumplió.
Fuentes de ruido

Las fuentes de ruido son los principales factores de disuasión en el uso de EMG de superficie. Intentamos estudiar tantas fuentes de ruido como podamos y eliminar fuentes cuando podamos, sin utilizar medidas extremas.

Una de las fuentes de ruido más dominantes es el ruido de línea de 60 Hz. Hemos eliminado esto utilizando fuentes de alimentación aisladas. El ruido de línea de 60 Hz también se puede introducir en el cuerpo cuando hay enchufes de alimentación en las proximidades. Así se remedió parcialmente usando el filtro de paso alto con un corte a 72 Hz. Otra fuente de ruido es de las bombillas fluorescentes. Parpadean dos veces la frecuencia de la línea, y todos los armónicos impares de este ruido pueden ser inducidos en el cuerpo humano. Hemos intentado reducir esto tratando de hacer mediciones en lugares que no están directamente bajo las bombillas fluorescentes.

Otra fuente de ruido que hemos observado es la interferencia de otros músculos en la proximidad. No sólo los músculos de la mano, sino los músculos del pecho y así sucesivamente. Esto se puede reducir estirando la mano lejos del cuerpo como sea posible. Se debe tomar precaución para asegurarse de que las dos polaridades dentro de un par de electrodos no se toquen. Esto crearía una picadura desagradable y también causaría una corriente de fuga que oscurecería la señal del electrodo.

El acoplamiento magnético que se induce en los alambres de fuentes externas también debe ser considerado. Cualquier bucle de alambre que lleva la corriente tiene una inductancia asociada. Esto causa acoplamiento de campo magnético que induce una cierta corriente de ruido en el circuito. Esto se reduce mediante la torsión de los cables juntos y asegurarse de que la longitud de los cables no es demasiado largo. Esto asegura que la inductancia de los cables es mínima y, por lo tanto, el acoplamiento magnético es mínimo.
Consideraciones de seguridad en el diseño

Con el fin de reforzar la seguridad, hemos diseñado todo el circuito para estar completamente aislado de cualquier toma 110V. Teóricamente, si hubiera habido un camino a tierra 110V en alguna parte en el circuito y el sujeto de prueba estuviera de alguna manera tocar el alambre caliente de un enchufe, podría ser herido seriamente o ser matado.

Otro posible problema podría surgir si el circuito estuviera conectado a dos salidas diferentes con motivos diferentes. Si el sujeto de prueba está conectado a algún equipo eléctrico desde un tomacorriente y algún otro equipo de otro enchufe que se hace referencia a un terreno diferente, esto podría causar que haya un voltaje entre el sujeto de prueba. Si el voltaje es lo suficientemente grande, o si el corazón del sujeto es lo suficientemente débil, esto podría causar que el marcapasos del corazón se vuelva irregular, lo que lleva a un paro cardiaco.

El aislamiento de todo el circuito elimina estos problemas. Para probar el circuito con seguridad escribimos un programa simple para un arduino que se utilizará como un osciloscopio, ya que conectar el circuito a un osciloscopio normal habría creado un camino a tierra. Pudimos entonces utilizar un ordenador portátil que funciona con la energía de la batería (aislada del suelo) para medir señales.

Un problema secundario que descubrimos fue que el gel conductor que aplicamos a los electrodos ocasionalmente entraría entre los electrodos y crearía un cortocircuito, llevando al usuario a sentir una leve sensación de hormigueo. Con el fin de eliminar esta cuestión, aplicamos el gel más juiciosamente y nos aseguramos de que el espacio entre los electrodos estaba limpio y seco en todo momento.

Usabilidad

El proyecto tiene implicaciones para una serie de diferentes funciones posibles. Los amputados podrían utilizar un dispositivo similar para recuperar la funcionalidad de una extremidad perdida. Además, la entrada podría ser medida y analizada localmente y transmitida a un dispositivo remoto que respondería en consecuencia. Esto podría tener aplicaciones con respecto a realizar cirugías o tecnología posiblemente militar.

En su forma actual, todo lo que se requiere para cualquier usuario es un brazo con músculos intactos del antebrazo. El dispositivo debe ser calibrado para cada usuario. La configuración es completamente no invasiva, por lo que es una opción atractiva y simple para todos los usuarios.
Conclusiones
Nuestro diseño cumplió con nuestras expectativas y objetivos establecidos al inicio del proyecto. Nuestro objetivo era utilizar únicamente entradas de electrodos para imitar en una mano robótica los movimientos de nuestra propia mano. Al final del proyecto, pudimos aislar las señales de cada dedo y mover los cinco dedos independientemente uno de otro en la mano robótica. A juzgar por el diseño de nuestros circuitos, fuimos capaces de proporcionar suficiente ganancia en el circuito amplificador para convertir la señal de unos pocos μV en amplitud a uno que es unos pocos voltios grande y legible por el ADC. También tuvimos bastante éxito en la filtración de ruido no deseado para que la señal que recibimos fue más precisa.

Podríamos potencialmente añadir funcionalidad adicional a la mano, como la capacidad de detectar múltiples dedos que se presiona al mismo tiempo. Otra forma de mejorar el proyecto sería mejorar la capacidad de respuesta de los dedos y hacer que se muevan con poco retraso en comparación con nuestra propia mano. Esto puede significar jugar con los umbrales y los valores de incremento / decremento para que los dedos se muevan más rápidamente.

¿Cómo se ajustó su diseño a las normas aplicables?

Ninguna norma es aplicable a nuestro diseño.

Consideraciones sobre la propiedad intelectual

Dado que todas las partes de nuestro proyecto fueron diseñadas por nosotros, no usamos ninguna otra fuente de propiedad intelectual. En cuanto a considerar la obtención de derechos de propiedad intelectual, no nos importa compartir nuestros diseños y código con el público.
Oportunidades potenciales

Creemos que si mejoramos nuestro proyecto y agregamos capacidades más avanzadas, puede haber oportunidades de patente o oportunidades de publicación para nuestro proyecto. Por ejemplo, utilizando una mano robótica más robusta y personalizada con capacidades de agarre o mejorando las capacidades de umbrales de algoritmos para adaptarse a los usuarios de forma más rápida y precisa.

Consideraciones éticas

A lo largo del proyecto, desde el diseño del circuito hasta la escritura del software, seguimos todos los aspectos enumerados en el Código de Ética del IEEE. Nos aseguramos de que el producto era seguro y no causaría ningún daño al usuario. Como utilizamos electrodos que hacen contacto directo con el usuario, nos aseguramos de que todos los procedimientos tomados serían seguros. Esto significaba usar un solo terreno común, asegurándose de que los electrodos múltiples estuvieran separados y no en cortocircuito, y usando baterías 9V autónomas. Para analizar las formas de onda, entendimos que usar un osciloscopio externo sería peligroso ya que no compartía un terreno común con nuestro circuito. Para eludir esto, usamos un script de osciloscopio ejecutando un Arduino que comparte un terreno común con nuestro circuito.

Todos los resultados y diseños listados en el informe y utilizados durante la demostración del proyecto fueron auténticos y no se tomaron de otros lugares. Todos los datos recogidos y todos los gráficos simulados se basaron en nuestros propios diseños de proyectos y están de acuerdo con el Código de Ética de IEEE. A lo largo del proyecto no se tomaron sobornos y no hubo formas de discriminación basadas en la raza, la religión, el género, la discapacidad, la edad, el origen nacional, la orientación sexual, la identidad de género o la expresión de género.







0 comentarios:

Publicar un comentario