¿Cómo hacer un zapato con cordones automáticos usando Arduino?

¿Cómo hacer un zapato con cordones automáticos usando Arduino?

En la era moderna, los científicos e ingenieros están tratando de automatizar todo. Significa que todo funcionará por sí solo sin ningún esfuerzo humano. Se identificó un problema muy común en la sociedad: algunas personas tienen problemas para atarse los cordones de los zapatos por sí mismas. Estas personas incluyen discapacitados, personas con dolor de espalda, niños y ciegos hasta cierto punto. Por lo tanto, se debe buscar una solución para que estas personas no vean esto como un problema.

Imagen tomada de Instructables



En este proyecto, vamos a realizar un espectáculo de Cordones Automáticos que atará sus cordones automáticamente sin ningún esfuerzo humano. Lo hará con la ayuda de una placa de microcontrolador, un sensor de protección del motor y un servomotor, tan pronto como se coloque el pie dentro del zapato.



¿Cómo AutoLace tu programa usando Arduino?

Ahora, como conocemos el resumen del proyecto, comencemos a recopilar más información y veamos el procedimiento de cómo hacer este zapato AutoLace usando Arduino.

Paso 1: recopilación de los componentes

El mejor enfoque para iniciar cualquier proyecto es hacer una lista de componentes y hacer un breve estudio de estos componentes porque nadie querrá quedarse en medio de un proyecto solo porque falta un componente. A continuación se muestra una lista de componentes que vamos a utilizar en este proyecto:



  • Arduino Uno
  • Escudo del motor
  • Servo Motor
  • Fuerza
  • LED
  • Resistencia de 1k ohmios
  • Zapato
  • Tira de metal
  • Bridas de plástico
  • 1/8
  • Cables de puente
  • Batería

Paso 2: estudiar los componentes

Ahora que conocemos el resumen de nuestro proyecto y también tenemos una lista completa de todos los componentes, avancemos un paso y revisemos un breve estudio de los componentes que vamos a utilizar.

Seeeduino v4.2 es una de las mejores placas compatibles con Arduino del mundo que se basa en el microcontrolador Atmega 328 MCU. porque es fácil de usar, más estable y se ve mejor que muchas otras placas. Está basado en el gestor de arranque Arduino. tiene un ATMEGA16U2 como convertidor de UART a USB debido a que se puede utilizar como chip FTDI. se conecta a la computadora mediante un cable micro USB que generalmente se denomina cable de Android. También se puede utilizar un conector de CC para alimentar la placa. la potencia de entrada debe ser de 7 V a 15 V.

Tablero Seeeduino



Escudo del motor Arduino le permite controlar sin esfuerzo la dirección y la velocidad del motor utilizando un Arduino. Al permitirle simplemente direccionar los pines de Arduino, facilita la conducción de cualquier motor en su empresa. Además, le permite tener la opción de controlar un motor con una fuente de alimentación diferente de hasta 12v. Lo mejor de todo es que el escudo es muy fácil de encontrar. Por todas estas razones, el Arduino Motor Shield es un poco interesante para tener en su arsenal para la creación rápida de prototipos y la experimentación general.

Escudo del motor

Resistencias de sensor de fuerza (FSR) son sensores de presión muy simples y fáciles de usar. La obstrucción de un FSR depende del peso que se aplica al territorio de detección. Cuanto más peso apliques, menor será la oposición. El rango de obstrucción es bastante grande:> 10 MΩ (sin peso) a ~ 200 Ω (peso máximo). La mayoría de los FSR pueden detectar potencias en el rango de 100 ga 10 kg. Un FSR consta de dos capas y un adhesivo espaciador. Las capas conductoras están aisladas por un espacio de aire delgado cuando no se aplica peso. Una de las películas contiene dos trazos que van desde la cola hasta la región de detección (la parte redonda). Estos rastros se entrelazan, sin embargo, no entran en contacto. La otra película está cubierta con tinta de plomo. Cuando presiona el sensor, la tinta corta los dos trazos junto con una oposición que depende del peso.

Sensor de fuerza

A Servo Motor  es un actuador rotatorio o lineal que se puede controlar y mover en incrementos exactos. Estos motores son diferentes de los motores de CC. Estos motores permiten el control preciso del movimiento angular o rotatorio. Este motor está acoplado a un sensor que envía información sobre su movimiento.

Servo Moto

Paso 3: Principio de funcionamiento

El principio de funcionamiento de este proyecto es muy simple. Se utilizará un sensor de fuerza para detectar si el pie se coloca en el show o no. Si detecta el pie, enviará una señal a la placa Arduino que moverá un servomotor con la ayuda de un Arduino Motor Shield. Este servomotor se moverá de tal manera que tirará de todos los cordones a la vez. De ahí que se anudan automáticamente todos los cordones del zapato.

Paso 4: Montaje de los componentes

Ahora que conocemos la idea principal y el principio de funcionamiento de este proyecto, demos un paso adelante y comencemos a ensamblar todo para hacer un espectáculo que se proyectará automáticamente. Para hacer un producto final, siga los pasos que se indican a continuación:

  1. En primer lugar, recorta una pequeña placa de metal para que quede fijada en la parte posterior del espectáculo. Utilice un sintético para que se fije permanentemente y no se afloje. Asegúrese de dejar un espacio entre la placa de metal y el espectáculo porque pasaremos algunas bridas por ese espacio.
  2. Ahora tome dos servomotores y fíjelos a la placa de metal con pegamento caliente. Ahora para hacerlos fijos permanentemente, use bridas alrededor de ellos para que estos servomotores no se muevan más tarde. Una vez que los servomotores estén en marcha, corte el cable adicional que queda.
  3. Ahora monte una caja de batería debajo de los motores de modo que el interruptor de encendido esté hacia afuera.
  4. Ahora coloque la placa Arduino en los motores. Antes de conectar el protector del motor con el Arduino, es necesario agregar algunas cosas al circuito.
  5. Tome un LED y suelde una resistencia a su pata positiva y suelde un trozo corto de cable a la pata negativa y la otra pata de la resistencia. Luego, conecte este ensamblaje al Arduino y empújelo a uno de los enchufes de cordones de zapatos no utilizados.
  6. Ahora toma un Sensor de fuerza y colóquelo en sus zapatos donde descansará su talón. No se recomienda soldar las clavijas del sensor de fuerza porque el calor del soldador puede derretir el plástico del sensor. Así que es mejor si lo pega o lo pega con cinta adhesiva.
  7. Finalmente use una brida para atar todos los cordones al servomotor, de modo que cuando el motor gire, tire de todos los cordones a la vez.

Asegúrese de que el cable positivo del LED esté conectado al pin 2 de Arduino. El Vcc y el pin de tierra del sensor de fuerza se conectarán a los 5V y a tierra del Arduino y el pin IN del sensor de fuerza se conectará al pin A0 de la placa Arduino. Por último, conecte las clavijas del servomotor al blindaje del motor con cuidado para no realizar una conexión incorrecta.

Paso 5: Empezando con Arduino

Si no está familiarizado con Arduino IDE antes, no se preocupe porque a continuación, puede ver pasos claros para grabar código en la placa del microcontrolador usando Arduino IDE. Puede descargar la última versión de Arduino IDE desde aquí y siga los pasos que se mencionan a continuación:

  1. Cuando la placa Arduino esté conectada a su PC, abra 'Panel de control' y haga clic en 'Hardware y sonido'. Luego haga clic en 'Dispositivos e impresoras'. Busque el nombre del puerto al que está conectada su placa Arduino. En mi caso es “COM14” pero puede ser diferente en tu PC.

    Encontrar puerto

  2. Tendremos que incluir una biblioteca para usar Servo Motor. La biblioteca se adjunta a continuación en el enlace de descarga junto con el código. Ir Sketch> Incluir biblioteca> Agregar biblioteca .ZIP.

    Incluir biblioteca

  3. Ahora abra el IDE de Arduino. Desde Herramientas, configure la placa Arduino en Arduino / Genuino UNO.

    Tablero de ajuste

  4. Desde el mismo menú de Herramientas, configure el número de puerto que vio en el panel de control.

    Puerto de configuración

  5. Descargue el código adjunto a continuación y cópielo en su IDE. Para cargar el código, haga clic en el botón de carga.

    Subir

Puede descargar el código por haciendo clic aquí.

Paso 6: Código

El código está bastante bien comentado y se explica por sí mismo. Pero aún así, el código se explica brevemente a continuación.

1. Al principio, se incluye una biblioteca especial para que el servomotor se pueda integrar con la placa del microcontrolador y programar a través de ella. Se crean dos objetos para ser utilizados con el servomotor. Se inicializan algunos pines o Arduino que se conectarán al driver del motor y también se declaran algunas variables que guardarán algunos valores temporales que luego serán usados ​​en el programa principal.

#include // incluye biblioteca para conectar el servomotor con la placa del microcontrolador Servo myservo; // crea servo objec 1 Servo myservo2; // crea el objeto servo 2 int forcePin = 0; // pin analógico 0 conectado al sensor de fuerza int ledPin = 2; // pin digital 2 conectado al LED int switchPin = 19; // establece el interruptor de desbloqueo en el pin analógico 5 int valF; // valor del sensor de fuerza int valS; // valor de switch int thresHold = 500; // define el umbral de presión del sensor de fuerza int servoUnlock = 0; // establece el servo principal en la posición neutral no atada (0 grados) int servoLock = 180; // establece el servo principal en la posición entrelazada (180 grados) int servoUnlock2 = 180; // establece el servo auxiliar en la posición neutral no atada (0 grados) int servoLock2 = 0; // establece el servo auxiliar en la posición atada (180 grados)

2. configuración vacía () es una función que se ejecuta solo una vez al inicio cuando se enciende el microcontrolador o se presiona el botón de habilitación. En esta función, los pines del Arduino se inicializan para ser utilizados como INPUT o OUTPUT. Los objetos que se crearon para el servomotor antes, se están utilizando para conectar el servomotor al pin específico de la placa Arduino y el servo se mueve a la condición inicial sin atar. La velocidad en baudios también se configura en esta función. La tasa de baudios es la velocidad en bits por segundo a la que el microcontrolador se comunica con los dispositivos externos conectados.

void setup () {Serial.begin // establecer la velocidad en baudios del microcontrolador pinMode (ledPin, OUTPUT); // el pin digital 2 se emite para LED pinMode (switchPin, INPUT); // El pin 5 analógico es la entrada para el conmutador myservo.attach (9); // conecta los servos a los pines 9 myservo2.attach (10); // conecta los servos a los pines 10 myservo.write (servoUnlock); // mueve el servo 1 a posiciones sin atar myservo2.write (servoUnlock2); // mueve el servo 2 a posiciones sin atar}

3. bucle vacío () es una función que se ejecuta repetidamente en un bucle. Primero, el sensor de fuerza lee un valor analógico. Luego espera a que el valor del sensor de fuerza pase un valor de umbral. Esperará a que el pie se asiente completamente en su lugar y colocará ambos servos en una posición de bloqueo. Si se presionan los interruptores, el servo se configurará para desbloquear y esperará hasta que el LED brille siete veces.

bucle vacío () {valF = analogRead (forcePin); // leer el valor del sensor de fuerza valS = digitalRead (switchPin); // lee el valor del interruptor if (valF> = thresHold) {// espera que el sensor de fuerza iguale o pase el umbral de presión y luego: delay (1000); // espera a que el pie se asiente en su lugar en el zapato myservo2.write (servoLock2); // establece el servo auxiliar en el retardo de posición bloqueada (1000); // espera un segundo myservo.write (servoLock); // establece el servo principal en la posición bloqueada delay (1000); // espera un segundo digitalWrite (ledPin, HIGH); // enciende el LED hasta que se desbloquea el servo. Elimine esta línea para ahorrar batería. } if (valS == HIGH) {// espera a que se presione el interruptor, y luego: myservo2.write (servoUnlock2); // desbloquea el retardo del servo auxiliar (1000); // espera dos segundos myservo.write (servoUnlock); // desbloquea el retardo del servo principal (500); // espere, luego parpadee el LED 7 veces digitalWrite (ledPin, LOW); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); retraso (200); digitalWrite (ledPin, ALTO); retraso (200); digitalWrite (ledPin, BAJO); // apaga el LED delay (1000); }}

Así que este fue todo el procedimiento para hacer un espectáculo que automáticamente ata sus cordones por sí mismo con la ayuda de un servomotor, un microcontrolador y un protector de motor. Ahora que conoce todo este procedimiento, disfrute haciendo su AutoLacing Show en su hogar.