Tabla de contenido:
- Paso 1: Teoría
- Paso 2: base de datos
- Paso 3: configurar Apache
- Paso 4: Configurar PHP
- Paso 5: diseño de la máquina
- Paso 6: Fabricación de la máquina
- Paso 7: Código Arduino
- Paso 8: Programa Python
- Paso 9: uso del selector de piezas
Video: Máquina de selección de piezas CNC: 9 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
Si eres un fabricante serio como yo, lo más probable es que tengas innumerables resistencias, condensadores y varios otros componentes electrónicos por ahí. Pero hay un problema importante: ¿cómo se hace un seguimiento de qué o cuántos de algo tiene? Para este problema, creé una máquina CNC que obtiene información de una base de datos MySQL que luego va y recupera el artículo que se solicitó. Además del back-end de la base de datos, creé una página web de front-end que permite a los usuarios iniciar sesión y luego crear categorías de partes, agregar nuevas partes y cambiar las cantidades de partes. De esta manera, se puede contabilizar cada artículo, al igual que un sistema de gestión de existencias.
Componentes:
- Arduino UNO y Genuino UNO
- Tornillos de máquina: 8 mm, 3 mm, 4 mm
- Canal N MOSFET
- Diodo rectificador 1N4001
- Motor paso a paso NEMA 17 x2
- Driver DRV8825 para motores paso a paso x2
- Condensador 100 µF x2
- DFRobot Servo Pinza
- DFRobot Correa de distribución x2
- DFRobot 5MM Polea de distribución x2
- Rodamiento lineal DFRobot 6mmx12mm x2
- Rodamiento de bolas DFRobot 8mmx12mm
Paso 1: Teoría
La base de este sistema es realizar un seguimiento del inventario. Por ejemplo, si alguien compra 20 placas Arduino Uno, podría agregar fácilmente esa cantidad a una tabla de base de datos. La categoría sería "Arduino", nombre de "Uno", y una cantidad de 20. Para varias personas, el propietario de esa parte sería el nombre de usuario de la persona que lo agregó. La pieza también incluiría datos sobre su ubicación en una cuadrícula. Siempre que cambia la cantidad de la pieza, la máquina CNC selecciona esa pieza y se la da al usuario.
Paso 2: base de datos
Necesitaba una base de datos ubicua a la que pudiera acceder tanto Python como PHP. También tenía que ser fácil de usar con mucho soporte, haciendo de MySQL el servidor de base de datos perfecto. Comencé descargando el instalador de mysql de https://dev.mysql.com/downloads/windows/installer/ y luego lo ejecuté. Elegí instalar el servidor (por supuesto), y también el banco de trabajo, el shell y las utilidades. Cuando elija un nombre de usuario y contraseña, asegúrese de recordarlos, ya que se necesitan esas mismas credenciales en todos los archivos PHP y el script Python. Después de iniciar el servidor, habilítelo para que se ejecute como un proceso en segundo plano para que siempre esté activo. A partir de ahora, todo debe estar escrito y en el mismo orden exacto en que lo tengo. A continuación, cree una nueva base de datos (esquema) llamada "componentes". Luego agregue las siguientes tablas: "categorías", "partes" y "usuarios". En la tabla de categorías agregue las siguientes columnas en este orden exacto: "id" -int (11), PK, AI; "nombre" -varchar (45); "propietario" - varchar (45).
En la tabla de partes agregue las siguientes columnas en este orden exacto: "id" -int (11), AI, PK; "categoría" -varchar (45); "nombre" -varchar (45); "cantidad" -int (11); "propietario" -varchar (45); "ubicaciónX" -int (11); "ubicaciónY" -int (11);
En la tabla de usuarios agregue las siguientes columnas en este orden exacto: "id" -int (11), AI, PK; "nombre de usuario" -varchar (45); "contraseña" -varchar (128);
Paso 3: configurar Apache
Las páginas web que he creado utilizan HTML, CSS, Javascript y PHP. Comience descargando la última versión de apache desde https://www.apachelounge.com/download/ y descomprímalo, moviendo la carpeta al directorio C: \. A continuación, descargue PHP desde https://windows.php.net/download#php-7.2 y asegúrese de que sea la versión Thread Safe. Descomprímalo, cámbiele el nombre a "PHP" y muévalo al directorio C: \. Luego vaya a C: / Apache24 / conf / httpd.conf y edítelo. Agregue las siguientes líneas justo debajo de la sección:
LoadModule php7_module C: /PHP/php7apache2_4.dll
DirectoryIndex index.html index.php
Aplicación AddHandler / x-httpd-php.php
PHPIniDir "C: / PHP"
Luego pruebe su servidor ejecutando httpd.exe ubicado en la carpeta bin. Dirígete a "localhost /" en tu navegador y mira si aparece la página de hola mundo. Si es así, ¡hurra! Ahora tiene un servidor web local.
Paso 4: Configurar PHP
Para configurar MySQL para PHP se deben hacer varias cosas. Primero, cambie el nombre de "php.ini-recommended" a "php.ini" y luego ábralo en el bloc de notas. Dirígete a la sección de extensiones y agrega o descomenta "extension = php_mysqli.dll" que permitirá que PHP se comunique con el servidor MySQL. Ahora reinicie httpd.exe y cree un nuevo archivo llamado "phptest.php" y colóquelo en el archivo. Ahora vaya a localhost / phptest.php y vea si aparece la información de su navegador.
Paso 5: diseño de la máquina
Comencé creando algunas piezas básicas en Fusion 360: una varilla de 6 mm, un rodamiento lineal y un motor paso a paso. Luego extendí dos varillas para formar el eje y, y también puse una correa de distribución alrededor del motor paso a paso y el cojinete. También agregué un eje x. Luego comencé a imprimir en 3D varias piezas y también enrute dos paneles laterales con CNC.
Paso 6: Fabricación de la máquina
Terminé pasando por múltiples iteraciones de cada parte, así que si alguna es diferente, es por eso. Comencé lijando cada parte y luego perforando cada orificio en las partes impresas en 3D. Luego coloqué cojinetes lineales en los orificios y pasé las varillas de 6 mm a través de ellos. También monté los motores paso a paso en sus respectivas ubicaciones después de conectar las poleas a sus ejes. La correa de distribución se enroscó alrededor de cada uno de los dos lados de ambos ejes. Finalmente me di cuenta de que la pinza sería demasiado engorrosa, así que opté por un electroimán. También tuve ayuda para construirlo, en forma de gato.
Paso 7: Código Arduino
Mi base para esta máquina fue GRBL. El inicio del código enumera varios parámetros, como distancia por rotación, compensaciones y extensiones. Usé la biblioteca BasicStepperDriver para controlar los controladores del motor paso a paso DRV8825. Los controladores paso a paso están configurados para usar 1/32 micropasos, lo que aumenta la resolución. Siempre que la máquina "arranca", pasa por una secuencia de inicio en la que cada eje avanza hasta llegar a un interruptor de límite. Luego se mueve basado en el desplazamiento a una ubicación establecida y establece la ubicación en 0, 0. Ahora, cada vez que recibe un comando de movimiento a través de serie, se mueve a esa ubicación de la cuadrícula.
Paso 8: Programa Python
Elegí usar Flask como un servidor web que recibiría solicitudes GET del sitio web principal. Las solicitudes consisten en el nombre y la categoría de la pieza. Después de que Flask lo maneja, los datos se analizan y luego se consulta al servidor MySQL para averiguar la ubicación de la pieza. Luego, el script de Python envía un comando al Arduino, especificando dónde está la parte.
Paso 9: uso del selector de piezas
He proporcionado los archivos del sitio web en mi repositorio de github: https://github.com/having11/cnc_part_picker_webpages Reemplace los parámetros que faltan en los archivos PHP para su servidor MySQL específico. Coloque los archivos en la carpeta htdocs de la carpeta Apache. Simplemente ejecute el script de Python y luego, cuando se cambie la cantidad de la pieza, la máquina irá a esa ubicación y la obtendrá. Encuentre los archivos de impresión 3D aquí y los archivos de la página web aquí.
Recomendado:
Contador Geiger en funcionamiento con piezas mínimas: 4 pasos (con imágenes)
Contador Geiger de trabajo con piezas mínimas: aquí está, que yo sepa, el contador Geiger más simple que puede construir. Este usa un tubo Geiger SMB-20 de fabricación rusa, impulsado por un circuito elevador de alto voltaje robado de un matamoscas electrónico. Detecta partículas beta y gam
¡Haz una cometa LED con piezas recicladas !: 11 pasos (con imágenes)
¡Haga una cometa LED con partes recicladas !: Hola, espero que todos estén sanos y salvos durante esta pandemia. Bueno, quedándome en casa me di cuenta de que tenía algunos circuitos electrónicos viejos y sin usar y adaptadores móviles defectuosos. Siendo un entusiasta de la electrónica y un ávido fanático de volar cometas, me preguntaba, wo
Selección de un motor paso a paso y un controlador para un proyecto de pantalla de sombra automatizado Arduino: 12 pasos (con imágenes)
Selección de un motor paso a paso y un controlador para un proyecto de pantalla de sombra automatizada Arduino: en este Instructable, seguiré los pasos que seguí para seleccionar un motor paso a paso y un controlador para un proyecto de pantalla de sombra automatizada prototipo. Las pantallas de sombra son los populares y económicos modelos de manivela Coolaroo, y quería reemplazar t
Comprobador de batería con temperatura y selección de batería: 23 pasos (con imágenes)
Comprobador de batería con temperatura y selección de batería: probador de capacidad de batería.Con este dispositivo puede verificar la capacidad de la batería 18650, ácido y otros (la batería más grande que probé es una batería de ácido de 6v 4,2A). El resultado de la prueba está en miliamperios / hora. Creo este dispositivo porque lo necesito para comprobar
Caja de selección de AV: 4 pasos (con imágenes)
Caja de selección de AV: tengo un reproductor de DVD, un video VHS y una cámara de video mini-DV. Grabo el mini-DV en mi PC, también estoy grabando VHS a digital de manera similar. A veces tomo audio-video del DVD a la PC. Solía alimentar video compuesto a la gráfica de mi PC