Mostrando entradas con la etiqueta Arduino. Mostrar todas las entradas
Mostrando entradas con la etiqueta Arduino. Mostrar todas las entradas

RepRap Arduino Mega Polulu Shield

 Ramp 1.4 - Ramp 1.5 - Ramp 1.6


RepRap Arduino Mega Polulu Shield, o RAMPS, es una placa que sirve como interfaz entre Arduino Mega, la computadora controladora, y los dispositivos electrónicos en una impresora RepRap 3D. La computadora extrae información de archivos que contienen datos sobre el objeto que desea imprimir y la traduce en eventos digitales, como suministrar un voltaje a un pin específico.

Se necesitan muchos pines para encender y apagar o para decirle a la impresora qué hacer. Desafortunadamente, la Mega no tiene suficiente potencia para operar el hardware de la impresora.

Ahí es donde entra la placa RAMPS. Organiza y amplifica la información proveniente del Mega para que se dirijan correctamente a los canales correctos. La placa RAMPS se inserta directamente en la placa Arduino Mega

Por ejemplo, si el carro del extremo caliente necesita moverse un paso hacia la izquierda, la placa RAMP enruta las señales del Mega al motor paso a paso del eje X a través de los pines y cables apropiados.

Ramp 1.4
Fig. 1 Ramp 1.4

RAMPS 1.4 surgió de años de desarrollo por el proyecto RepRap. Satisface la necesidad de una sola placa controladora que use los controladores paso a paso Arduino Mega y Pololu para administrar todas las funciones de una impresora 3D.

En el espíritu de RepRap, fue originalmente diseñado para permitir la producción doméstica. Pronto, se volvió demasiado sofisticado y el diseño cambió para favorecer a los tableros comerciales.

El diseño básico de la placa comenzó con RAMPS 1.2 y continuó hasta (al menos) 1.7. Sin embargo, la versión más popular se ha mantenido 1.4 (con orificios pasantes o componentes de montaje superficie)

Como funciona Firmware Marlin

 Marlin Software impersion 3dSoftware Marlin


Marlin es un firmware de código abierto para la familia RepRap de prototipos rápidos de replicación, conocidos popularmente como "impresoras 3D". Se derivó de Sprinter y grbl , y se convirtió en un proyecto de código abierto independiente el 12 de agosto de 2011 con su lanzamiento de Github . Marlin tiene licencia bajo la GPLv3 y es gratuita para todas las aplicaciones.

Desde el principio, Marlin fue construido por y para entusiastas de RepRap para ser un controlador de impresora sencillo, confiable y adaptable que "simplemente funciona". Como testimonio de su calidad, Marlin es utilizado por varias impresoras 3D comerciales respetadas. Ultimaker, Printrbot, AlephObjects (Lulzbot) y Prusa Research son solo algunos de los proveedores que envían una variante de Marlin. Marlin también es capaz de manejar CNC y grabadores láser.

Una clave para la popularidad de Marlin es que se ejecuta en el bajo costo de 8 bits de Atmel AVR microcontroladores - Marlin 2.x ha añadido soporte para las placas de 32 bits. Estos chips están en el centro de la popular plataforma Arduino / Genuino de código abierto . Las plataformas de referencia para Marlin es un Arduino Mega2560 con RAMPS 1.4 y Re-Arm with Ramps 1.4.

Como producto comunitario, Marlin pretende ser adaptable a la mayor cantidad posible de tableros y configuraciones. Queremos que sea configurable, personalizable, extensible y económico tanto para aficionados como para vendedores. Una compilación de Marlin puede ser muy pequeña, para usar en una impresora sin cabeza con solo hardware modesto. Las características se habilitan según sea necesario para adaptar Marlin a los componentes agregados.

Principales características
Código G con todas las funciones con más de 150 comandos
Conjunto completo de movimientos de código G, que incluye líneas, arcos y curvas Bézier
Sistema de movimiento inteligente con anticipación, movimiento basado en interrupciones, aceleración lineal
Soporte para cinemática cartesiana, Delta, SCARA y Core / H-Bot
Control de calentador PID de circuito cerrado con autoajuste, protección térmica, corte de seguridad
Soporte para hasta 5 extrusoras más una cama de impresión calentada
Controlador LCD UI con más de 30 traducciones de idiomas
Impresión basada en host y tarjeta SD con inicio automático
Compensación de nivelación de lecho: con o sin sonda de lecho
Avance lineal para extrusión basada en presión
Soporte para extrusión volumétrica
Soporte para mezcla y extrusoras múltiples (Cyclops, Chimera, Diamond)
Soporte para sensores de ancho de filamento / ancho
Temporizador de trabajos de impresión y contador de impresión

¿Cómo funciona Marlin?

Marlin Firmware se ejecuta en la placa principal de la impresora 3D, gestionando todas las actividades en tiempo real de la máquina. Coordina los calentadores, los pasos, los sensores, las luces, la pantalla LCD, los botones y todo lo demás involucrado en el proceso de impresión 3D.

Marlin implementa un proceso de fabricación aditiva llamado Fused Deposition Modeling (FDM) , también conocido como Fused Filament Fabrication (FFF) . En este proceso, un motor empuja el filamento de plástico a través de una boquilla caliente que funde y extruye el material mientras la boquilla se mueve bajo el control de la computadora. Después de varios minutos (o muchas horas) de colocar capas delgadas de plástico, el resultado es un objeto físico.

El lenguaje de control para Marlin es un derivado del G-código . Los comandos del código G le dicen a una máquina que haga cosas simples como "configurar el calentador 1 a 180 °" o "moverse a XY a la velocidad F." Para imprimir un modelo con Marlin, debe convertirse al código G usando un programa llamado un "rebanador". Dado que cada impresora es diferente, no encontrará archivos de código G para descargar; tendrás que cortarlos tú mismo.

A medida que Marlin recibe comandos de movimiento, los agrega a una cola de movimiento que se ejecutará en el orden recibido. La "interrupción paso a paso" procesa la cola, convirtiendo movimientos lineales en pulsos electrónicos sincronizados con precisión a los motores paso a paso. Incluso a velocidades modestas, Marlin necesita generar miles de pulsos paso a paso por segundo. (p. ej., 80 pasos por mm * 50 mm / s = ¡4000 pasos por segundo!) Dado que la velocidad de la CPU limita la rapidez con que se puede mover la máquina, ¡siempre estamos buscando nuevas formas de optimizar la interrupción gradual!

Los calentadores y sensores se administran en una segunda interrupción que se ejecuta a una velocidad mucho más lenta, mientras que el bucle principal maneja el procesamiento de comandos, la actualización de la pantalla y los eventos del controlador. Por razones de seguridad, Marlin se reiniciará si la CPU se sobrecarga demasiado para leer los sensores.

Imprimir cosas

Modelado

Si bien Marlin solo imprime el código G, la mayoría de las cortadoras solo cortan archivos STL.

Independientemente de lo que use para su cadena de herramientas CAD , siempre que pueda exportar un modelo sólido, una máquina de cortar puede "cortarlo" en código G, y el firmware de Marlin hará todo lo posible para imprimir el resultado final.

Antes de que Marlin pueda soñar con imprimir, primero necesitará un modelo 3D . Puede descargar modelos o crear los suyos propios con uno de los muchos programas CAD gratuitos, como FreeCAD , OpenSCAD , Tinkercad , Autodesk Fusion 360 , SketchUp , etc.

Se necesita un alto grado de conocimiento para modelar objetos complejos como un cráneo T-Rex , pero otros objetos pueden ser bastante simples de modelar . Para obtener ideas y probar cosas, explore sitios como Thingiverse y YouMagine e imprima cosas por diversión.

Rebanar

Los rebanadores preparan un modelo 3D sólido dividiéndolo en rodajas finas (capas). En el proceso, genera el código G que le dice a la impresora en minucioso detalle cómo reproducir el modelo. Hay muchas cortadoras para elegir, que incluyen:
Cura .
Slic3r .
PrusaSlicer ( anteriormente Slic3r Prusa Edition ) El nuevo Kid en el bloque basado en Slic3r.
Simplify3D es una oferta comercial.

Impresión

Marlin puede controlarse completamente desde un host o en modo independiente desde una tarjeta SD. Incluso sin un controlador LCD, se puede iniciar una impresión SD independiente desde un host, por lo que su computadora puede liberarse de la impresora.

El software host está disponible para varias plataformas, incluidos sistemas de escritorio, Raspberry Pi y tabletas Android. Cualquier dispositivo con un puerto USB y terminal serie puede actuar técnicamente como un host, pero tendrá una mejor experiencia de impresión utilizando un software host diseñado específicamente para impresoras 3D. Las selecciones actuales incluyen:
Pronterface es un host de código abierto de Kliment.
Repetier Host es un host de código cerrado de Repetier Software.
OctoPrint es un host de código abierto para Raspberry Pi de Gina Häußge .
Cura es un host de código abierto de Ultimaker. (ADVERTENCIA: ya no puede seleccionar manualmente el puerto y la velocidad com, su impresora debe ser detectada automáticamente por Cura)
Simplify3D incluye un host y un segmentador de datos.

Muchas impresoras 3D se envían con una versión personalizada de Repetier o Cura. Si bien esto ayuda a asociar la marca de la impresora con un software complementario, estas versiones generalmente son obsoletas y reciben pocas actualizaciones. En su lugar, le recomendamos que descargue la última versión genérica de su software host preferido.

Pruebas de Detección Capacitiva con Arduino.

 Pruebas de detección capacitiva con arduino. 


Estos sensores capacitivos que pueden detectar contacto o proximidad del cuerpo humano, hasta unos 5 cm, funcionan en los pines de arduino gracias a la biblioteca capacitivesensor. Estos pines, a los cuales irá los sensores, se le conecta una resistencia de alto valor, alrededor de 5 Megaohmios, que a su vez se pondrá a su extremo cualquier lámina de cobre, papel de aluminio, papel o incluso cartón y los extremos de cada resistencia a un pin común.

  Si se desea realizar alguna pieza no conductora, se tendría que pintar con pintura conductora, o bien, envolver con material conductor.

Proyecto de un Xilófono con Arduino. (Sensores Táctiles).

Construcción de un Xilófono con Arduino.


1. Breve Descripción.

    Bajo pedido para un proyecto de arte interactivo, me pidieron la construcción de un Xilófono digital.
    Tras un estudio detallado, el proyecto se dividiría en cuatro partes:
  1. Circuitería de los sensores de entrada en el dispositivo, en este caso teclado de notas.
  2. Arduino Nano. Se programará para recibir los datos de entrada y lanzar la nota MIDI correspondiente.
  3. Tarjeta MicroSD para Arduino. Almacenamiento de archivos .WAV.    
  4. Etapa de potencia de audio con Altavoz de salida


2. Reproducir Sonidos .WAV en Arduino.

    En principio simplemente hice una prueba sencilla del amplificador y la tarjeta MicroSD con Arduino Nano. En el Video1 puedes ver esta prueba.
La tarjeta MicroSD está comprobada con una de 4 GB, con otra mayor puedes tener problemas de reconocimiento.


Video1: Pruebas del amplificador de audio y de MicroSD 


    He utilizado un amplificador de audio que tenía almacenado en casa, pero puedes utilizar cualquier formato. Puedes hacer un circuito amplificador con transistores, integrados o como en mi caso , extraerlo íntegramente de cualquier aparato reproductor. En este caso debes de alimentarlo e insertar el audio a la entrada correspondiente.
    Ejemplo de conexión de tarjeta MicroSD a Arduino Nano:

Circuito Conexionado MicroSD con Arduino
Fig.1 Circuito Conexionado MicroSD con Arduino

3 Conexionado:

12 ------------------> MISO
11 ------------------> MOSI
13 ------------------> SCK
10 ------------------> CS
 9 ------------------> Speaker
 GND ---------------> GND 
 5V ------------------> VCC

    Se puede observar en la fig.1 el conexionado simple de la tarjeta con Arduino y el Altavoz directamente sin Amplificación de Audio.
    Podemos poner 8 salidas tanto analógicas como digitales y reproducir archivos WAV de manera táctil.

Video2 Reprodución de efectos y sonidos .Wav

    Aquí se puede ver los módulos compuestos del arduino nano, amplificador y altavoz. Está montado en una caja realizada con impresora 3d.

4 Creación de teclas con pintura conductora sensibles al tácto.

    Viendo el elevado precio que tiene la pintura conductora, opté por un truco que se usa y realmente va perfectamente. Se trata de utilizar esmalte de uñas saturado con polvo de grafito. Se mezcla bien y luego se pinta la pieza. Evidentemente se usa para materiales no conductores. No lo he probado, pero posiblemente pueda funcionar con esmalte de color, aunque creo que bajará su eficacia o directamente no funcione. Cuestión de probarlo.
    El polvo de grafito se encuentra fácilmente en tiendas especializadas o ferreterías. ( es usado por los cerrajeros).
    Una vez tenemos las teclas o piezas táctiles se conecta a cada borna de entrada del Arduino como vemos en la fig2.


Fig2 Esquema conexión teclas táctiles con Arduino
Fig.2 Conexionado de teclas táctiles con Arduino.


Las resistencias deben ser de alto valor, de alrededor de 5 a 10 Mega ohmios, incluso más.
Una vez conectado pasaremos al sketch de Arduino y probaremos el funcionamiento de teclado y su correspondiente sonido.



Video3 Pruebas realizadas mediante pintura conductora casera.

     Va perfectamente esta pintura!!. Se utilizará para pintar cada tecla y al tacto sonará una nota o audio pregrabado en la MicroSD.


Video4 Presentación de pasos del proyecto


Video5 Acabado final del proyecto.

DFPlayer.

Finalmente todo el trabajo electrónico queda expresado en el trabajo artístico hecho por la autora del proyecto. Una satisfacción poder ayudar! 😊