Proyecto Arduino: La máquina más inútil de la historia: 6 pasos

Proyecto Arduino: La máquina más inútil de la historia: 6 pasos

Tabla de contenido:

Anonim

Quería entrar en los proyectos de Arduino e introducir a mis hijos a la robótica utilizando Arduino. Así que pensé en construir un proyecto simple que hiciera uso de un Arduino Uno y un servo. Vi un excelente post en Instructables sobre La máquina más inútil y me inspiré para crear una versión con Arduino.

Fue una experiencia de construcción muy satisfactoria con mis hijos y aprendí mucho sobre la programación del Arduino.

¿Como funciona?

El Arduino "escucha" el estado del interruptor y activa el servo cuando el interruptor está activado.

En el estado OFF, el Arduino envía el servo a la posición de reinicio (tapa de la caja cerrada). Cuando un usuario pone el interruptor en ON, el Arduino envía una señal al servo y acciona un dedo para empujar el interruptor al estado OFF.

Suministros:

Paso 1: Lista de piezas

Lista de partes.

Necesitará:

- joyero de madera (puede obtenerlos en su tienda de artesanía local por menos de $ 5)

- Arduino UNO

- Laptop (uso un Macbook Pro)

- resistencia de 10k ohmios

- interruptor SPDT pequeño

- servo motor

- cables

- batería de 9v

- palitos de helados

- pegamento de madera

- Unas varillas de madera de 0.5 "x 0.5"

- cable coaxial antiguo

- 2 piezas de bisagras pequeñas (aproximadamente el mismo tamaño de las bisagras que viene con la caja)

Herramientas:

- Herramienta Dremel.

- Sierra

- destornillador

alicates

- pelacables

- soldador, soldadura de plomo

- voltímetro

tablero de pan

- cinta eléctrica

Esquema:

Revisa el esquema para el cableado de los componentes. Utilicé la aplicación Fritzing para Mac para diseñar mis componentes.

Yo recomiendo conectar tu circuito primero con una tabla de pan. Verifique la calibración de su servo y juegue con el código para lograr la rotación o posición deseada de sus brazos de servo. Esto puede variar, por lo que necesita modificar el código para lograr el movimiento correcto.

Paso 2: Programando el Arduino

Descarga el IDE de Arduino para tu computadora y ejecútalo. Yo uso una Mac.

Conecte el Arduino UNO a la Mac mediante un cable USB. Para obtener más información, visite:

A continuación se muestra el código que utilicé para programar el Arduino. Modifiqué el código "Barrido" por Barragan.

Para hacerlo más interesante, aleatorizo ​​la velocidad cuando el dedo se retira en la caja.

========== CÓDIGO A CONTINUACIÓN ========

// Barrer

// por BARRAGAN

// Este código de ejemplo está en el dominio público.

#incluir

const int buttonPin = 2;

int buttonState = 0;

Servo myservo; // crear un objeto servo para controlar un servo

// se pueden crear un máximo de ocho objetos servo

int pos; // variable para almacenar la posición del servo

long timeDelay;

configuración del vacío ()

{

pinMode (buttonPin, INPUT);

myservo.attach (9); // une el servo en el pin 9 al objeto servo

}

bucle de vacío ()

{

buttonState = digitalRead (buttonPin); // Leer la posición del botón

if (buttonState == HIGH) {

para (pos = myservo.read (); pos> = 20; pos - = 1) {// va de 90 grados a 20 grados en 1 paso

myservo.write (pos); // Dile al servo que vaya a la posición en la variable 'ONpos'

TimeDelay = aleatorio (15, 30);

retraso (15); // aleatorizar el tiempo de espera para que el servo alcance la posición

}

}

else {

TimeDelay = aleatorio (1, 4);

para (pos = myservo.read (); pos <= 90; pos + = timeDelay) {// va de 20 grados a 90 grados en 1 paso

myservo.write (pos); // Dígale al servo que vaya a la posición en la variable 'OFFpos'

retraso (15); // aleatorizar el tiempo de espera para que el servo alcance la posición

}

}

}

Paso 3: Preparar la Caja

Preparar la caja.

El diseño que queremos es que las tapas se abran desde la parte superior de la caja. Para hacer esto, tendríamos que cortar la tapa por la mitad y luego volver a colocar las bisagras en el lado izquierdo y derecho de la caja.

1. Retire el pestillo metálico de la parte frontal de la tapa y la caja.

2. Retire las bisagras de la parte posterior.

3. Dibuje una línea a través de la tapa para indicar dónde se realizará el corte. Tenga en cuenta que la línea en el lado de la tapa está inclinada, de modo que cuando la parte superior se abre, la tapa no se atasca con la otra.

4. Corte la tapa y alise los bordes con una lima.

5. Haga muescas a los lados de la caja donde se reubicarán las bisagras. Alise con un archivo y coloque las tapas en cada extremo.

6. Fije las bisagras a la tapa y la caja. Tenga en cuenta que necesita un par extra de bisagras ya que la caja solo viene con dos (necesita 4 bisagras en total).

Paso 4: Crear la carcasa del servo y el dedo

Cree la carcasa para el servo que accionará el "dedo" que apaga el interruptor.

1. Mida las dimensiones del servo y construya una carcasa a su alrededor con la varilla de madera de 0.5 "x 0.5". Cortar la madera y asegurar las piezas. Lo reforcé con un clavo y luego lo pegué.

2. Coloque el servo en la carcasa y colóquelo en la tapa donde se colocará el interruptor SPDT.

3. Taladre un agujero en la tapa y asegure el interruptor. Coloque la carcasa del servo debajo y alinéela con las palancas del servo.

4. Crea el "dedo" usando palitos de paleta. Antes de crear el dedo, me burlé de él dibujando el dedo en un pedazo de papel, recortándolo y superponiéndolo en la palanca del servo. Simule la rotación de la palanca del servidor con el dedo adjunto para ver cómo el dedo se mueve alrededor para apagar el interruptor. Una vez que obtenga el tamaño, el ángulo y el grosor adecuados, cubra el papel con el palito de paleta. Puedes agregar tantas capas de palitos de paleta como puedas para crear el grosor correcto para que cuando el dedo gire, pueda golpear el interruptor. Cree orificios en el extremo servo del dedo donde puede colocar el dedo en la palanca del servo.

5. Conecte el dedo a la palanca del servo usando un cable de cobre tomado de la mitad de un cable coaxial. Pueden ser bastante fuertes, por lo que necesitarás usar un par de alicates para cortarlo y doblarlo. Asegure los cables de cobre soldando el otro lado para "bloquear" el dedo a la palanca. Tenga cuidado de no derretir la palanca del servo.

6. Fije el alojamiento del servo debajo de la tapa con el interruptor aplicando pegamento para madera. Gire el dedo para asegurarse de que gire alrededor de la tapa y golpee bien la palanca del interruptor mientras el pegamento aún está húmedo. Una vez que haya encontrado la posición correcta, use una abrazadera para asegurar la carcasa del servo a la tapa mientras se seca el pegamento.

Paso 5: Cableado y conexión de la fuente de alimentación

Conecta los interruptores y el servo al Arduino. Consulte el diagrama de cableado en el paso 1.

Tenga en cuenta que soldé la resistencia de 10k ohmios directamente a los cables. No es necesario crear una PCB para este simple circuito.

Mueva el Arduino hacia un lado para que cuando el dedo gire, no interfiera.

Conecte la fuente de alimentación de 9V al Arduino. Recuerde desmontar la batería cuando no esté en uso o de lo contrario se agotará la batería.

Paso 6: Probando la máquina más inútil

Mi hijo probando el proyecto terminado.

La reacción de mi hija Kayla.

3 personas hicieron este proyecto!

  • IsaiahR24 lo hizo!

  • WillH84 lo hizo!

  • Eliolopes lo hizo!

¿Hiciste este proyecto? ¡Compártelo con nosotros!

Recomendaciones

  • Mash Up Arduino Code Samples

  • Prototipo de ornitóptero de código abierto. Arduino accionado y control remoto.

  • Clase de internet de las cosas

  • Concurso de fandom

  • Concurso Arduino 2019

  • Concurso de Colores del Arcoiris

11 discusiones

0

genulm

Hace 5 años en Introducción

Mi esposa me envió un video de un sitio llamado Gag burro que tenía estos. Tu trabajo es genial. Gracias por publicar el paso a paso. Estoy haciendo un tema Halloween de Alicia en el País de las Maravillas, sería genial colocarlo en el porche delantero y ver cuántos de los pequeños fantasmas y duendes presionan el interruptor.

0

epicnoobpwn

Hace 5 años en el paso 6

Juguete perfecto para los niños!

0

IrishSnow35

Hace 5 años en el paso 6

Jaja Ella es como "¡QUIERO HACERLO!" Los niños pequeños son geniales

0

Frogz79

hace 1 año

Me encanta la reacción de tus hijas:)

0

Numbstar

hace 3 años

Hola, Sé muy poco acerca de los servos … ¿Funcionará algo como esto? http: //www.ebay.ca/itm/Micro-Servo-Motor-RC-toy-Ro …

¡Gracias!

0

thecrazylol

Hace 4 años en Introducción

Oye, También modifiqué su código, así que ahora también tiene un servo de puerta y puede agregar movimientos, al igual que abrir la puerta y luego cerrarla, luego volver a abrirla, apagarla y volver a la caja.;)

// Barrer

// por BARRAGAN

// Este código de ejemplo está en el dominio público.

#incluir

const int buttonPin = 2;

int buttonState = 0;

Servo Handservo; // crear un objeto servo para controlar un servo

Servo doorservo; // se pueden crear un máximo de ocho objetos servo

int pos; // variable para almacenar la posición del servo

long timeDelay;

configuración del vacío ()

{

pinMode (buttonPin, INPUT);

handservo.attach (9); // une el servo en el pin 9 al objeto servo

doorservo.attach (6);

}

bucle de vacío ()

{

buttonState = digitalRead (buttonPin); // Leer la posición del botón

if (buttonState == HIGH) {

if (doorservo.read () == 11) {

doorservo.write (50);

retraso (500);

handservo.write (11);

}

if (doorservo.read () == 50) {

doorservo.write (11);

retraso (500);

handservo.write (11);

}

if (doorservo.read () == 11) {

doorservo.write (60);

retraso (500);

handservo.write (11);

}

if (doorservo.read () == 60) {

handservo.write (100);

retraso (1);

doorservo.write (61);

retraso (1);

}

}

if (buttonState == LOW) {

handservo.write (11);

doorservo.write (11);

}

}

3 respuestas 0

! KnexMaster! thecrazylol

Responder hace 3 años.

¿Cómo cableaste los servos? Soy nuevo en Arduino y me encanta el otro tutorial aquí donde la puerta y los dedos actúan de manera discreta, pero no tengo los otros componentes para conectar un circuito de rebote.

0

thecrazylol ! KnexMaster!

Responder hace 3 años.

Y luego conecte el doorervo al pin digital 6 y el hanservo al pin digital 9.

library.isr.ist.utl.pt/docs/roswiki/attachments/rosserial_arduino(2f)Tutorials(2f)Servo(20)Controller/arduino_servo.png

0

! KnexMaster! thecrazylol

Responder hace 3 años.

Oh ok La respuesta fue mirarme a la cara jajaja. ¡Gracias!

0

LupaWulfe98

Hace 3 años en el paso 2

¡Muchas gracias por publicar esto! He estado buscando un robot inútil controlado por Arduino !! Definitivamente quiero construir esto pronto.

0

jon gucci

Hace 5 años en Introducción

¿Tuviste que modificar el servo para una rotación continua?