Makecourse USF: Máquina de dulces Arduino: 4 pasos

Makecourse USF: Máquina de dulces Arduino: 4 pasos

Tabla de contenido:

Anonim

Este Instructable se creó para cumplir con los requisitos del proyecto de Makecourse en la University of South Florida (www.makecourse.com)

Esta es una máquina simple de Arduino Run Candy que utiliza un motor paso a paso con dos botones y cuatro piezas impresas en 3D. En este Instructable, se proporcionarán todos los archivos, así como un proceso paso a paso que explica cómo construir, programar y presentar la máquina de dulces para que funcione a su máximo potencial.

** NOTA: No se vaya en el automóvil, derretirá el PLA y distorsionará la impresión si está caliente

Suministros:

Paso 1: Imprime las piezas 3D

El funcionamiento de la máquina de dulces es que los dulces se canalizan a un cilindro corto dentro de la máquina. Este cilindro tiene cuatro orificios que llevan el caramelo al frente y se despachan por el frente. Este cilindro tiene una varilla corta conectada al motor paso a paso.

Lo primero que querrás hacer es imprimir las cuatro piezas de plástico de la máquina de dulces. La máquina de dulces tiene cuatro partes básicas; La base (donde se distribuye el caramelo; representado en amarillo), la parte media (donde se aloja el motor; representado en oro), la parte superior (donde el caramelo se canaliza hacia la máquina; representado en púrpura), y una corta cilindro (lo que está conectado al servomotor que dispensa el caramelo; dentro de la máquina).

Si desea diseñar su propia máquina de dulces, no dude en hacer la suya propia. Utilicé Autodesk Inventor 2014 para diseñar mis piezas. Pero es posible que tenga un motor paso a paso más grande que no se ajuste a mi diseño. Es posible que desee utilizar un caramelo más grande que yo (M & M's)

Utilicé epoxi plástico para unir las piezas y conecté el servo al cilindro con pegamento caliente y funcionó bien.

Paso 2: Configuración del circuito

La imagen de arriba es una forma sencilla de configurar el circuito para la máquina de dulces. El motor paso a paso está enchufado en el módulo del motor. Desde aquí, conecte las entradas de alimentación y conexión a tierra a la alimentación y conexión a tierra en la tabla de pan. Conecte respectivamente los pines digitales 8-11 en el módulo del motor. Después de esto, realice una configuración básica de dos botones y conéctelos a los pines digitales 2 y 3. Finalmente, tome dos cables para enchufar la tabla de pan en el suelo y la alimentación. Esta es una configuración simple, si sigue el diagrama debería estar bien. Por supuesto, usted puede jugar con la configuración del circuito para adaptarse mejor a su diseño.

** Tengo dos botones para un avance y retroceso en caso de que el caramelo se atasque en la máquina.

Paso 3: Código

// Robert Core // Usando dos botones para controlar la dirección del motor paso a paso int button_1 = 2; // El botón 1 está conectado al puerto digital 2 int button_2 = 3; // El botón 2 está conectado al puerto digital 3 int motorPin1 = 8; // El pin 1 del motor está enchufado en el puerto digital 8 int motorPin2 = 9; // El pin 2 del motor está enchufado en el puerto digital 9 int motorPin3 = 10; // El pin 3 del motor está enchufado en el puerto digital 10 int motorPin4 = 11; // El pin 4 del motor está enchufado en el puerto digital 11 int motor_Speed ​​= 3; // Indica qué tan rápido es el motor paso a paso int motor_Step; int val1 = 0; int val2 = 0; void setup () {// valores de entrada y salida de los pines pinMode (button_1, INPUT); pinMode (button_2, INPUT); pinMode (motorPin1, SALIDA); pinMode (motorPin2, SALIDA); pinMode (motorPin3, SALIDA); pinMode (motorPin4, SALIDA); } void loop () {val1 = digitalRead (button_1); // si se presiona el botón 1, el motor irá en el sentido de las agujas del reloj si (val1 == HIGH) {digitalWrite (motorPin1, HIGH); // El pin del motor está en digitalWrite (motorPin2, LOW); // El pin del motor está apagado digitalWrite (motorPin3, LOW); // El pin del motor está apagado digitalWrite (motorPin4, LOW); // El pin del motor está apagado (motor_Speed); digitalWrite (motorPin1, LOW); // El pin del motor está apagado digitalWrite (motorPin2, HIGH); // El pin del motor está en digitalWrite (motorPin3, LOW); // El pin del motor está apagado digitalWrite (motorPin4, LOW); // Pin del motor está apagado el retraso (motor_Speed); digitalWrite (motorPin1, LOW); // El pin del motor está apagado digitalWrite (motorPin2, LOW); // El pin del motor está apagado digitalWrite (motorPin3, HIGH); // El pin del motor está en digitalWrite (motorPin4, LOW); // Pin del motor está apagado el retraso (motor_Speed); digitalWrite (motorPin1, LOW); // El pin del motor está apagado digitalWrite (motorPin2, LOW); // El pin del motor está apagado digitalWrite (motorPin3, LOW); // El pin del motor está apagado digitalWrite (motorPin4, HIGH); // Pin del motor está en retraso (motor_Speed); } val2 = digitalRead (button_2); // si se presiona el botón 2, el motor irá en sentido antihorario si (val2 == HIGH) {digitalWrite (motorPin4, HIGH); // El pin del motor está en digitalWrite (motorPin3, LOW); // Motor el pin está apagado digitalWrite (motorPin2, LOW); // el pin del motor está apagado digitalWrite (motorPin1, LOW); // el pin del motor está apagado con retardo (motor_Speed); digitalWrite (motorPin4, LOW); // El pin del motor está apagado digitalWrite (motorPin3, HIGH); // El pin del motor está en digitalWrite (motorPin2, LOW); // El pin del motor está apagado digitalWrite (motorPin1, LOW); // Pin del motor está apagado el retraso (motor_Speed); digitalWrite (motorPin4, LOW); // El pin del motor está apagado digitalWrite (motorPin3, LOW); // El pin del motor está apagado digitalWrite (motorPin2, HIGH); // El pin del motor está en digitalWrite (motorPin1, LOW); // Pin del motor está apagado el retraso (motor_Speed); digitalWrite (motorPin4, LOW); // El pin del motor está apagado digitalWrite (motorPin3, LOW); // El pin del motor está apagado digitalWrite (motorPin2, LOW); // El pin del motor está apagado digitalWrite (motorPin1, HIGH); // Pin del motor está en retraso (motor_Speed); }}

Arriba está el código que usé para la máquina de dulces. Es un control básico del motor paso a paso de dos botones. En secuencia, enciende uno de los pines del motor mientras el resto está apagado. Luego, el siguiente pin motor continúa mientras el resto está apagado y así sucesivamente. El botón 1 (val 1) está en una dirección (motorpin 1,2,3,4) mientras que el botón 2 (val 2) está en la otra dirección (motorpin 4,3,2,1). El retraso es el tiempo entre cada paso que esperará el Arduino. Cuanto menor sea el número, más rápido. Descubrí que un retraso de 3 es lo más rápido que puede ir el paso a paso.

Paso 4: Producto terminado

Así es como se ve mi producto final.Cementé las tres piezas juntas y luego las cimenté en la parte superior de una caja Arduino que alberga el Arduino, así como la tabla de pan. Perforé dos agujeros para los botones y los pegué contra la pared de la caja. En la parte posterior, hice un orificio para el conector USB para poder alimentar el Arduino con una fuente de alimentación recargable. Cuando presiona el botón rojo, el cilindro gira y dispensa el caramelo por la ranura en la parte inferior.

Gracias por revisar mi Intractable y espero que se diviertan construyendo una máquina de dulces:)