Protesis fabricadas por los propios usuarios


Un estadounidense llamado Paul McCarthy  tubo la gran desdicha de ver  como su hijo nacía sin dedos en una mano , pero no tiro la  toalla  y en un empeño por cambiar la vida a su hijo y facilitar los lógicos impedimentos que esto le suponía, decidió construirle un dispositivo que supliese la función de esa extremidad.

Con tal pensamiento, McCarthy se dispuso a seguir instrucciones y diseños de impresión en 3D del inventor Ivan Owen y gracias a una impresora 3D  ha conseguido construir una mano artificial  El nuevo  dispositivo le ha llevaodpo  al padre dos años desarrollarlo  para  adaptarlo y a las necesidades concretas de su  hijo .

El coste de los materiales  no llega a los 3,71 euros algo que nos hace cuestionar bastante a la industría que hay detrás de pues una prótesis típica, puede  costar alrededor de 30.000 $ ( !!22.251 euros!!).

Así, a través de la tecnología 3D McCarthy, elaboró tras dos años de trabajo un dispositivo de formato y funciones similares a una mano y que ahora su hijo incorpora, permitiéndole llevar una vida más fácil.

 

En un reportaje reciente para las noticias de la cadena CBS el niño afirmó que este cambio en su día a día “fue increíble” y contó cómo ahora puede realizar muchas más actividades como pintar o montar en bicicleta  que no podría hacer si la ayuda de esta fantástica prótesis.

Pero no solo  McCarthy creo su propia prótesis ,hay miles de personas con el mismo animo de superación y espíritu de ayuda a  los demás como  el argentino  Fernando Morales compró una impresora 3d para fabricar y donar prótesis ortopédicas,

Fernando tiene un taller mecánico y compró una impresora 3D para fabricar sus propios repuestos.
Contactó con un grupo de Buenos Aires (Darwin Research) que se dedica a hacer prótesis ortopédicas y se le ocurrió hacer lo mismo en Alvear, principalmente manos.
La primera prueba fue una mano para un niño de 7 años y como hay algunas personas que le ayudaron a solventar los costos, piensa entregarlas totalmente gratis a quienes lo requieran.( )

 

Buscando en la  red  hay muchísimos ejemplos mas (Rodrigo Perez Weiss – Creadores de la prótesis en 3D,Gino Tubaro – Creadores de la prótesis en 3D y un largo etcétera de personas valientes  que  están haciendo sin duda una gran labor en pro de  tantas personas que han tenido esa gran escollo en su vida)

Cómo reparar un Arduino inaccesible


¿Tiene un Arduino bricked (ladrillo ), es decir  una placa  Arduino que no acepta subirle ningun código ? O, tal vez usted escribió su propio firmware y quiere subirlo a su Arduino? O, tal vez lo que desea es aprender más sobre el funcionamiento interno de Arduino, AVR, y microcontroladores en general. Bueno, está de suerte! Este tutorial le enseñará lo que es un gestor de arranque es, por qué se necesita para instalar / reinstalar, y repasar el proceso de hacerlo.

¿Qué es un gestor de arranque?

AVR Atmel son grandes pequeños circuitos integrados, pero pueden ser un poco difícil de programar. Usted necesita un programador especial y archivos  .hex y no es muy amigable para los principiantes. El Arduino ha hecho en gran medida acabar con estos problemas. Han puesto un archivo .hex en sus fichas AVR que permite programar el tablero sobre el puerto serie, es decir, todo lo que necesita para programar su Arduino con un cable USB.

El gestor de arranque es básicamente un archivo .hex que se ejecuta cuando se enciende en el tablero. Es muy similar a la BIOS que se ejecuta en su PC, pero hace dos cosas. En primer lugar, mira a su alrededor para ver si el equipo está tratando de programarlo. Si lo es, se toma el programa de la computadora y lo carga en la memoria de circuitos integrados (en una ubicación específica para no sobreescribir el gestor de arranque). Por eso, cuando intenta cargar código, el Arduino IDE restablece el chip. Esto, básicamente, convierte la IC y vuelva a encenderla de nuevo para el gestor de arranque puede empezar a correr de nuevo. Si el equipo no está tratando de cargar código, dice el chip para ejecutar el código que ya está almacenada en la memoria. Una vez que se localiza y se ejecuta el programa, el Arduino hace bucles continuamente a través del programa y lo hace siempre y cuando la placa esta alimentada.

¿Por qué instalar un gestor de arranque

Si usted está construyendo su propio Arduino, o la necesidad de reemplazar el IC, usted tendrá que instalar el gestor de arranque. Usted también puede tener un mal gestor de arranque (aunque esto es muy raro) y tendrá que reinstalar el gestor de arranque. También hay casos en los que usted ha puesto su tablero en un entorno extraño y volver a instalar el gestor de arranque y conseguir de nuevo a la configuración de fábrica es la forma más fácil de arreglar. Hemos visto juntas donde la gente ha desactivado el puerto serie lo que significa que no hay forma de cargar código para la junta, si bien puede haber otras maneras de solucionar esto, volver a instalar el gestor de arranque es probablemente la más rápida y fácil. Como he dicho, tener un mal gestor de arranque es realmente muy raro. Si usted tiene una nueva junta directiva que no está aceptando código de 99,9% de las veces no es el gestor de arranque, pero por el 1% de las veces que sea, esta guía le ayudará a solucionar ese problema.

Selección de un programador

Vamos a hablar de 2 diferentes tipos de programadores que puede utilizar para instalar o reinstalar gestores de arranque.

Opción 1: Dedicado programadores

Para un programador rápida fácil le recomendamos que consulte en el AVR bolsillo Programmer (sólo Windows).

programador de bolsillo

O bien, puede utilizar el funcionario MKII programador de Atmel AVR.

AVR MKII

El AVR bolsillo Programmer o la mayoría de las opciones más baratas van a funcionar bien para la mayoría de las aplicaciones, pero pueden tener problemas con algunas tablas, los específicamente con mucha memoria, como las placas basadas Atmega2560.

Opción 2: Uso de la Arduino como un programador

La otra opción es agarrar un Arduino Uno (o Duemilanove). Si usted entra en el Arduino IDE verá un boceto ejemplollamado ‘Arduino como ISP.’ Si subes este código a su Arduino, será básicamente actuar como un programador AVR. Esto no es muy recomendable para la producción de placas o tableros con mucha memoria, pero, en caso de apuro, funciona bastante bien. También a partir de este escrito el código sólo funciona en los tablones de ATmega328. Tal vez algún día va a trabajar en el Leonardo o Due, pero todavía no.

Conexión del programador

In-Circuit Serial Programming (ICSP)

Es muy raro para programar ICs antes de que se sueldan a una PCB. En cambio, la mayoría de los microcontroladores tienen lo que se llama una programación en sistema (ISP) cabecea. En particular, algunos fabricantes de IC, como Atmel y Microchip, tienen un método ISP especializado para la programación de sus circuitos integrados. Esto se refiere como en el circuito de programación de serie (ICSP placas compatibles) La mayoría de Arduino Arduino y tendrán un pin header 2×3 ICSP en ellos. Algunos incluso pueden tener más de una función de cómo muchos ICs viven en el PCB. Se desata tres de los SPI pasadores (MISO, MOSI, SCK) y energía, la tierra, y restablecer. Estos son los pines que necesitará para conectar el programador con el fin de volver a actualizar el firmware de su tablero.

UNO ISP

Aquí tenemos la Arduino Uno R3. Tiene dos cabeceras ICSP: uno para el ATmega16U2 y otro para los ATmega328.Para volver a actualizar el gestor de arranque en este tablero, utilizaría sólo la cabecera ICSP para el ATmega328.

En algunas tablas más pequeñas puede que no vea este conector, pero los pasadores debe estallado en otros lugares. Ya sea que esté utilizando un IC SMD o DIP IC, los pines ISP deben ser accesibles de una forma u otra.Algunas tarjetas solo pueden tener puntos de prueba para la cabecera ISP. Si este es el caso, es posible que desee considerar la obtención de un adaptador de Pogo ISP. Este kit le permite realizar temporalmente una buena relación con los puntos de prueba de ensayo con el fin de reprogramar su IC.

texto alternativo

Kit adaptador de Pogo ISP montado completamente. Puede conectar cualquiera de los programadores que hemos mencionado en el apartado anterior de este foro.

Si usted está teniendo problemas para encontrar los pines ICSP en tu placa Arduino en particular, puede consultareste sitio web para pinouts detalladas de la mayoría de los circuitos integrados relacionados con Arduino y algo más.

Una vez que haya localizado los seis pines ICSP en su junta directiva, es el momento de conectar el programador a la junta. Se puede utilizar un cable de programación para conectar los dos, o, si usted no tiene un cable, puedes utilizar algunos cables de puente-hombre a mujer.

Si está utilizando un programador como el MKII o el Pocket programador, su configuración debe ser algo como esto:

texto alternativo

Haga clic para ampliar la imagen.

O, si usted está utilizando el Arduino como su programador, debería tener este aspecto:

texto alternativo

Haga clic para ampliar la imagen.

Aquí hay una tabla para ayudar a aclarar qué conexiones van a donde.

Arduino como ISP AVR programador ISP Cabecera ATmega328 ATmega32U4
Vcc / 5V 5V Pin 2 Vcc Vcc
GND GND Pin 6 GND GND
MOSI / D11 MOSI Pin 4 D11 D16
MISO / D12 MISO Pin 1 D12 D14
SCK / D13 SCK Pin 3 D13 D15
D10 Reiniciar Pin 5 Reiniciar Reiniciar

Código Carga – Easy Way

La forma más fácil de cargar el gestor de arranque implica utilizar el Arduino IDE. Abre tu IDE seleccionar la tarjeta que desea programar. A continuación, seleccione el programador (si está utilizando el Arduino como ISP también tendrá que seleccionar el puerto COM que el Arduino como ISP está conectado a). A continuación, seleccione BurnBootloader. Esto se llevará a la junta que ha seleccionado y buscar el gestor de arranque asociado en el archivo board.txt. A continuación, encontrará el gestor de arranque en la carpeta del gestor de arranque e instalarlo. Esto sólo funciona si la tarjeta se ha instalado correctamente en el IDE y usted tiene el gestor de arranque correcto.

Si por alguna razón usted desea utilizar un gestor de arranque que no está instalado en el Arduino IDE, visite la sección de nido. Sin embargo, es probable que sea más fácil sólo tiene que instalar el gestor de arranque desde el Arduino IDE. Para aquellos que tienen curiosidad acerca de la configuración, tales como trozos de fusibles, no tengas miedo. Arduino se encarga de todos los detalles sucios para usted cuando usted se quema gestores de arranque a través de él.

texto alternativo

Código Carga – Duro Camino

La manera más dura es para aquellas personas que quieran utilizar la línea de comandos. Este método puede ser más preferible que va a modificar y recompilar y no quiero tener que mantener la actualización de la IDE, pero por lo demás es bastante innecesario. Una vez más usted tendrá que obtener el programador, y enganche todo. En este ejemplo estamos utilizando avrdude en Windows.

Hay dos pasos en este proceso. El primer paso consiste en el establecimiento de los fusebits. Fusebits son la parte del chip AVR que determinan cosas como si se está utilizando un cristal externo o si desea que la detección de color marrón a cabo. Los comandos que aparecen a continuación son para el Arduino Uno utilizando un ATMega328, es probable que funcione en algunos otros consejos similares, como el Duemilanove, pero asegúrese de que usted sabe lo que está haciendo antes de jugar con fusebits (NOTA: estos fusebits no funcionarán en un 3.3V / 8MHz bordo).Todos los bits fusibles necesarios se enumeran en el archivo boards.txt para diferentes juntas, pero de nuevo, si usted tiene un archivo boards.txt instalar sólo tiene que utilizar de la manera fácil.

Arduino como ISP:avrdude -P comport -b 19200 -c avrisp -p m328p -v -e -U efuse:w:0x05:m -U hfuse:w:0xD6:m -U lfuse:w:0xFF:m

AVR bolsillo Programador:avrdude -b 19200 -c usbtiny -p m328p -v -e -U efuse:w:0x05:m -U hfuse:w:0xD6:m -U lfuse:w:0xFF:m

El segundo paso es en realidad cargando el programa.

Arduino como ISP:avrdude -P comport -b 19200 -c avrisp -p m328p -v -e -U flash:w:hexfilename.hex -U lock:w:0x0F:m programador de bolsillo AVR: avrdude -b19200 -c usbtiny -p m328p -v -e -U flash:w:hexfilename.hex -U lock:w:0x0F:m

Una última poco de información. Como dijimos antes, un gestor de arranque es esencialmentey un archivo .hex. Por lo tanto, puede utilizar este método para cargar y código que desea sus circuitos integrados.

Recursos y Más Allá

Para obtener más información sobre RAV, bootloaders, y el parpadeo de firmware a otros consejos, prueba estos otros grandes tutoriales.

También puede consultar nuestra Guía de Tiny AVR programador Conexión para aprender más acerca de la posibilidad de subir código a los chips AVR sin usar el IDE de Arduino.

 

 

Fuente   aqui

Error Cannot run program “{runtime.tools.avr-gcc.path}\bin\avr-g++” (in directory “.”): compilando con Arduino


Existe un  error persistente   y  en ocasiones dificil de  solucionar con el Ide de Arduino  al intentar  cargar ‘Blink’  ( o  cualquier ejemplo ) , fallando y   apareciendo el siguiente mensaje de error:

 

Cannot run program “{runtime.tools.avr-gcc.path}/bin/avr-g++”: CreateProcess error=2, The system cannot find the file specified

(es decir traducido: no se puede ejecutar el programa “{runtime.tools.avr-gcc.path} / bin / avr-g ++”: error CreateProcess = 2, el sistema no puede encontrar el archivo especificado)

 

 

Por supuesto antes de continuar   para solucionar el problema  le recomendamos   desinstale todo el sw de  Arduino   e incluso elimine el directorio completo /Archivos de Programa  x86/Arduino/   lógicamente haciendo una copia en otro directorio todos los  proyectos personales que haya creado con el ide de Arduino.

Si el error persiste hay personas que recomiendan descargar la versión v1.0.5 arduino y 1.0.6 del ide anterior que está bajo  desarrollo en http://arduino.cc/en/Main/OldSoftwareReleases

Pero   probablemente persista error (halamos de  la versión 1.6.4 y 1.6.5 … )

Una posible pista del motivo puede ser probando el  software de Arduino de otro perfil de usuario (en el mismo PC) :si todo va bien  el error estará en el  perfil del usuario.

La solución consiste en comprobar si tiene roaming pues si  tenemos itinerancia tendremos  problemas.

Para ello miraremos  el fichero “preferences.txt”  :uno estará en el directorio de instalación original   y el otro en  en “C: \ Users \ \ AppData \ Roaming \ Arduino”.de modo que el IDE utilice siempre el que está en el directorio de roaming(este es un comportamiento de Windows).
La solución es muy sencilla : basta eliminar toda la carpeta Arduino en el Directorio de la itinerancia y todo funcionara bien.
roaming

Si persiste el error  después de una actualización  de Arduino 1.0.5 a 1.6.5 se puede mirar  en  https://github.com/arduino/Arduino/issues/2982 y https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5-3rd-party-Hardware-specification para   ver   una solución algo compleja (es una terrible solución pero suele funcionar )

Estos son los pasos:

  • get http://brew.sh/ si no lo tiene
  • Instalar el compilador AVR:$ Brew install Caskroom / barril / crosspack-avr
  • Instale avrdude (AVR Uploader?)$ Brew install avrdude
  • Cerrar Arduino App /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/platform.txt Open (asumiendo que su aplicación Arduino está en la carpeta Aplicaciones)
  • encontrar “{runtime.tools.avr-gcc.path}” y reemplazarlo con “/ usr / local / CrossPack-AVR”
  • encontrar “{runtime.tools.avrdude.path}” y reemplazarlo con “/ usr / local / CrossPack-AVR”

 

Fuente aqui